I don't think it's fair to characterize a third-party developer's efforts to compensate for a noticeably lacking feature in mysql as "Row-level locking is available in mysql", especially when the mysql documentation still goes out of its way to justify the reliance on table locks in the platform.
The bottom line is, mysql lacks row-level locking. It's not in the product. Moreover, the mysql developers defend this omission and claim it was a conscious decision which they attempt to justify in the documentation.
I'm pleased that the innodb folks have seen fit to try to overcome this liability in mysql, but let's not get carried away by describing it as a native feature.
Re:Don't care about FreeBSD 5?
on
Torvalds Tells All
·
· Score: 3, Insightful
It's perceived as "cocky" because it's just another way of saying: "I'm the only one capable of coming up with good ideas."
Re:Microsoft vs. Linux Marketshare
on
Torvalds Tells All
·
· Score: 4, Insightful
It's not great unless you're willing to assume that every great idea and innovative feature that will ever be invented in the future will only come from your own developers.
While I think that ryanf's comments and quotes from Sun Tsu elsewhere in this thread completely miss the point, Linus' head-in-the-sand attitude to the many great and exciting developments that are taking place in other operating systems is a shortcoming not a feature.
There are people in this world who are at least as clever as Linus and they will continue to come up with new and useful ideas and refinements to operating system design. Pretending that these innovations aren't useful to you is not the best way to improve your kernel.
"The media is always accurate, except when they're talking about things I know."
It's always a source of amazement to me how many people are capable of maintaining this perspective towards the media. I always try to think back to every single teeth-grinding, knee-gripping instance of media inaccuracy in a tech story whenever I'm exposed to a story on a subject on a topic which is unfamiliar to me.
A sysadmin who routinely logs in as root would lose points with me during an interview. Such behavior indicates to me that they have little experience working in a shared-admin environment or with large installations.
It doesn't take much before you outgrow root logins and graduate to the land of su and sudo. The sooner you realize that root's shell should be/bin/csh or/bin/sh as a deterrent to frequent use, the better off you'll be.
Re:Moral (as determined by /. readership):
on
The Joys of HDTV
·
· Score: 1
It is impossible to take something "out of the public domain" as you are describing. Once something has been placed into the public domain that is permanent and it will always be available to everyone equally.
Code covered by the GPL isn't "in the public domain" since it has restrictions placed on its use.
The GPL does not say "GPL code should be freely available always, even when it is being used by the private sector." -- what it actually says is "If you wish to use this code to your benefit, you must also use this same license for your code." Do you see the difference there?
Funny how you assume everyone shares your definition of "everyone". In your world, apparantly the set "everyone" consists solely of "people releasing their code under the GPL".
GPL'd code is available and can be used by people who are willing to also use the GPL for the code they produce.
BSD licensed code or public domain code is available and can be used by everyone.
Surely you can see the huge difference in those two scenarios.
"Public domain" makes it available only to the first generation of people that touch it. It allows corporations to turn it into "Proprietary Software", which in effect means that the from that point on, the software is no longer "freely available to all".
The problem here is that the "it" you're talking about no longer exists at that second generation. If a developer takes public domain code and uses it as a foundation of or a component of their own work then I don't understand how you can expect to have a claim to free access to the work they did. Any value that a developer is able to add to or extract from a piece of public domain code should be theirs to license as they see fit. He who does the work (or funds the work) should have the freedom to set the license. The GPL eliminates this freedom by requiring GPL on both derivative works and work which incorporate even small portions of GPL'd code into their codebase.
Public domain is, and always remains public domain and "freely available to all". There's no way to remove something from the public domain.
I want publicly funded software to remain publicly available and free to all. I don't want Microsoft or any other corporate entity to swallow it and never let it see the light of day again.
Please explain how using code makes it unavailable.
I do not believe that we, the people, our government, should be obliged to give anything for free to corporations.
I have no idea what your mini-rant on coporations has to do with this. GPL code is equally inaccessable to anyone who wishes to do non-GPL development. That can mean a multi-billion dollar corporation and it can also mean me in my bedroom trying to develop software as a sole proprietorship. Hell, it can even refer to a non-profit organization or an open source developer like the Apache Foundation.
I think your distaste for corporations is clouding your judgement on this issue.
Because both apache and openbsd are released under licenses which are less-restrictive and incompatible with the GPL.
For either of these two projects to incorporate GPL'd code into their code they would have to change the licensing on their entire projects to the more restrictive GPL license.
What if I wanted to take a 20 line function out of that piece of government-funded code and utilize it inside my two million lines of closed-source application?
The reality is that no company could build a successful business by making minor changes to GPL'd applications and trying to sell that as a closed-source product? The amount of money you can charge for changes to an open source codebase are directly proportional to the value added by your changes.
It's unfair to try to depict commercial use of open source code in this light. The reality of the situation is that most commercial use of public domain or similarly open source code resembles Microsoft's use of the BSD TCP/IP code, or Apple's use of FreeBSD's userland. Rather than cosmetic changes to a full product it's the utilization of a shared toolbox of lower-level routines and libraries.
The fallacy of this argument is that it implies that incorporating public code into a commercial product somehow makes the original code no longer free.
Public domain code remains free no matter what gets done with it.
The GPL doesn't do at all what you claim. What the GPL does is require that new code written by others be released as GPL code. It does nothing to protect the original code, since that code needs no such protection.
If the researcher feels strongly enough that they don't want to make their code available to everyone equally then they should back up that preference by finding a way of funding the research that doesn't involve my wallet.
If I'm paying for it, I expect to be able to use it.
There is one major example or government funding GPL'ed code: NSA Secure Linux.
While I agree that NSA Secure Linux is one of the more eggregious examples of the Government developing code which isn't released as public domain information, there are plenty of other cases as well.
How would you consider Squid, which is GPL'd code whose development is funded entirely by the National Science Foundation? Granted, the farther away from the OS you get the less distasteful it is, but the issue still stands that public funds have payed for substantial development which is inaccessable to much of the public.
Ballmer's point is that the GPL is not a "free" license in this sense. What if the government-funded TCP/IP development had been released under a license which prevented its use in any product which wasn't released as GPL'd code?
The GPL restricts how code can be used, and government code should be provided without restrictions.
This has nothing to do with "corporations" or their legal status. Let's not blur the issue. This is about how everyone's money is being used to develop code that not everyone can use.
If we're all going to pay for it, we should all be able to use it.
If you accept the incorrect usage of "open source" to mean "GPL'd code" then this statement makes perfect sense.
I presume that what Ballmer meant to say was "The only thing we have a problem with is when the government funds GPL'd work. Government funding should be for work that is available to everybody."
This is an understandable viewpoint. GPL'd code is not accessable to everybody. It is only accessable to developers who are willing to release their code under the GPL license which excludes large portions of the community. Government-funded GPL code is inaccessable to the Apache Foundation, it's inaccessable to the OpenBSD developers, and it's inaccessable to any commercial developers who are working on closed-source products.
If tax dollars are funding a project, then the results of that development should be available to everyone and not just people who use one particular license. This is the rationale behind the laws which prevent the government from enjoying a copyright on the data it produces.
Government code should be public domain, not placed under a restrictive license like the GPL.
I think that this is a lot more similar to what Jobs did with the original NeXT cube: sell the hardware with a CD-ROM (which was exceedingly rare at the time) and no floppy drive (which was the standard distribution media at the time.
I can vividly recall boggling at the lack of a floppy drive when the NeXT was announced, it seemed like such a bad decision at the time. Now I realize that it was exactly the right decision only about two years too early.
This seems the same way. Is there anyone that doesn't think that in 10 years we'll look upon the CRT as a quaint relic and wonder how we ever coped with their size, weight, and power consumption? The LCD will eventually displace the CRT, and Jobs is following his pattern of adopting early at the expense of, well, the expense of the system.
Once again he's trailblazing in the face of product maturity. It's not a bad decision, it's just really aggressively-timed. Let's hope it doesn't affect adoption of the platform like NeXT's design decisions did.
Preventing Apple from being able to choose how they license the code they produce doesn't protect the community at all. It just places a roadblock in front of community code that prevents large segments of the community from being able to use it.
I as a developer choose to give my code away under an open source license such as the BSD license. I love having the freedom to do so. When I give my code away, I hope that as many people as possible will be able to benefit from it. It's my gift to the community.
This is quite unlike developers who give their code away under the GPL license, which is in effect saying that they only wish to share with and provide value to other developers who agree with them philosophically. Code shared under the GPL is only accessable to other developers who are using the GPL. From a code re-use perspective, this is a less desireable situation than a less restrictive license.
GPL'd code benefits the GPL community. BSD licensed'd code benefits the entire software development community. Two very different goals and effects.
As a contributor to FreeBSD, I have no objection at all with Apple's use of FreeBSD code to build MacOs X. Apple users will gain the benefit of a very mature and well-tested userland. Had there not been an open source alternative, or had there only been a GPL'd codebase then I'm sure Apple would have been forced to re-invent the wheel that the FreeBSD developers have already built. The end result for Apple users would have been a longer development cycle for OSX, less tested and possibly less robust code.
Apple has put a great deal of time, money, and effort into OSX and I don't feel that I have any right to force them to choose how they can license that code, which is theirs, just by virtue of my having shared my code. I'm just as glad that the BSD licensed FreeBSD code has been useful to Apple as I am that it has been useful to people who have incorporated it into GPL'd codebases. (I'd also note that if someone takes FreeBSD code and GPL'd it, it's just as inaccessable to me as a commercial developer as it would be had they used it in a closed-source license)
It's not sharing if you place signifigant restrictions on the code's use, as the GPL does. The GPL is just another license in this respect.
Yes, this can be bad for society because sending Company Y to hell deprives the marketplace of any subsequent innovations that it may have contributed to the state of the art.
A thriving, successful Company Y that is able to build its reputation on the success of its previous innovations is well-positioned to continue to push the state of the art and can be expected to (or at least, stands a good chance to) develop and distributed more innovate products in the future.
Quarterdeck is an ideal example of this -- had Quarterdeck not been starved out of existence by Microsoft, their DesqView/X product may have gained traction and been widely used. It was a phenominal product which could have accelerated mainstream acceptance of Unix as a consumer platform by many years. However, we'll never know what good effects may have come from a robust DesqView/X platform supported by a viable company.
Had, as the original poster stipulated, QEMM been demolished and Quarterdeck (Your Company Y) been sent to hell by an opensource alternative, the effects would have been the same. It would still have resulted in the death-by-starvation of DesqView/X.
Open souce development has proven to be a very efficient way of stimulating the devlopment of useful and robust code. It has not, however, proven itself to be at all useful at driving innovation and progress. Open source, as it exists today, is mainly a great tool for replicating the innovations we see being developed in the commercial marketplace.
Left with only opensource development, after all the Company Y's have "gone to hell", I suspect we'd see much slower and less beneficial progress.
Linux is not a bad thing, in and of itself, but if Linux displaces the alternatives then it is bad for the marketplace and bad for society.
Don't forget that an integral aspect of freedom is choice, and destroying commercial software removes an important and necessary choice. If our only choice is for "Free" software, then we're not free at all.
I hav no idea what you just said. What are you talking about?
In this example, the code which my tax dollars are paying for (NSA Linux) is not being released into the public domain. It's being released as GPL'd code, as required by the GPL on the Linux kernel.
This means that my tax dollars are paying to develop code which is inaccessable to me and anyone else who wishes to use a license other than the GPL.
Where do you get the idea that public domain code is only accessable to a few corporations and isn't exportable?
Re: Follow this thought all the way out...
on
MS VP Speech Online
·
· Score: 1
That's exactly my point. How do we reconcile the fact that the government cannot copyright works (and as a result, cannot legally release GPL licensed code -- since government IP is public domain by law) with the fact that the NSA is developing and releasing GPL'd code in its NSA Linux distribution?
It seems to me that the NSA must either break the law by releasing GPL'd code (which isn't public domain) or break the GPL by taking GPL'd code and making it public domain.
Yes, but not if my taxes have paid for the government to develop GPL'd code. In that case, I as a taxpaying business would be prevented from using that code which my taxes paid for, unless I was willing to GPL any product which incorporated that code.
That's unacceptable to me. If my taxes are going to pay for the government to participate in the software industry, then I damn well better be able to use the product of what I've paid to develop. This is why government developed work should be public domain, and not under a restrictive license like the GPL.
Imagine if TCP/IP were GPL'd. We'd all still be using IPX or NetBEUI, since no commercial products would be able to support TCP/IP without GPLizing themselves.
If this is true, then how can the government legally contribute to GPL'd software? It seems to me that the GPL's restrictions are sufficient to prevent legal government involvement in development since it would require the government to break the law by producing code that is GPL'd.
The GPL does not provide a contributor with the option of releasing their modifications or additions under a less restrictive license or into the public domain. It requires all changes and derivative works to be also GPL'd, which the government cannot legally do if they are compelled to release to the public domain.
If my conclusion is wrong, what aspect of the GPL or the restrictions on government IP production am I missing?
I don't think it's fair to characterize a third-party developer's efforts to compensate for a noticeably lacking feature in mysql as "Row-level locking is available in mysql", especially when the mysql documentation still goes out of its way to justify the reliance on table locks in the platform.
The bottom line is, mysql lacks row-level locking. It's not in the product. Moreover, the mysql developers defend this omission and claim it was a conscious decision which they attempt to justify in the documentation.
I'm pleased that the innodb folks have seen fit to try to overcome this liability in mysql, but let's not get carried away by describing it as a native feature.
It's perceived as "cocky" because it's just another way of saying: "I'm the only one capable of coming up with good ideas."
It's not great unless you're willing to assume that every great idea and innovative feature that will ever be invented in the future will only come from your own developers.
While I think that ryanf's comments and quotes from Sun Tsu elsewhere in this thread completely miss the point, Linus' head-in-the-sand attitude to the many great and exciting developments that are taking place in other operating systems is a shortcoming not a feature.
There are people in this world who are at least as clever as Linus and they will continue to come up with new and useful ideas and refinements to operating system design. Pretending that these innovations aren't useful to you is not the best way to improve your kernel.
"The media is always accurate, except when they're talking about things I know."
It's always a source of amazement to me how many people are capable of maintaining this perspective towards the media. I always try to think back to every single teeth-grinding, knee-gripping instance of media inaccuracy in a tech story whenever I'm exposed to a story on a subject on a topic which is unfamiliar to me.
A sysadmin who routinely logs in as root would lose points with me during an interview. Such behavior indicates to me that they have little experience working in a shared-admin environment or with large installations.
/bin/csh or /bin/sh as a deterrent to frequent use, the better off you'll be.
It doesn't take much before you outgrow root logins and graduate to the land of su and sudo. The sooner you realize that root's shell should be
"A fool and his money are some party"
Code covered by the GPL isn't "in the public domain" since it has restrictions placed on its use.
The GPL does not say "GPL code should be freely available always, even when it is being used by the private sector." -- what it actually says is "If you wish to use this code to your benefit, you must also use this same license for your code." Do you see the difference there?
How do you explain XFree86, then? It sure seems to be popular with the users and it's never been touched by the GPL.
Funny how you assume everyone shares your definition of "everyone". In your world, apparantly the set "everyone" consists solely of "people releasing their code under the GPL". GPL'd code is available and can be used by people who are willing to also use the GPL for the code they produce. BSD licensed code or public domain code is available and can be used by everyone. Surely you can see the huge difference in those two scenarios.
The problem here is that the "it" you're talking about no longer exists at that second generation. If a developer takes public domain code and uses it as a foundation of or a component of their own work then I don't understand how you can expect to have a claim to free access to the work they did. Any value that a developer is able to add to or extract from a piece of public domain code should be theirs to license as they see fit. He who does the work (or funds the work) should have the freedom to set the license. The GPL eliminates this freedom by requiring GPL on both derivative works and work which incorporate even small portions of GPL'd code into their codebase.
Public domain is, and always remains public domain and "freely available to all". There's no way to remove something from the public domain.
I want publicly funded software to remain publicly available and free to all. I don't want Microsoft or any other corporate entity to swallow it and never let it see the light of day again.
Please explain how using code makes it unavailable.
I do not believe that we, the people, our government, should be obliged to give anything for free to corporations.
I have no idea what your mini-rant on coporations has to do with this. GPL code is equally inaccessable to anyone who wishes to do non-GPL development. That can mean a multi-billion dollar corporation and it can also mean me in my bedroom trying to develop software as a sole proprietorship. Hell, it can even refer to a non-profit organization or an open source developer like the Apache Foundation.
I think your distaste for corporations is clouding your judgement on this issue.
Because both apache and openbsd are released under licenses which are less-restrictive and incompatible with the GPL.
For either of these two projects to incorporate GPL'd code into their code they would have to change the licensing on their entire projects to the more restrictive GPL license.
What if I wanted to take a 20 line function out of that piece of government-funded code and utilize it inside my two million lines of closed-source application?
The reality is that no company could build a successful business by making minor changes to GPL'd applications and trying to sell that as a closed-source product? The amount of money you can charge for changes to an open source codebase are directly proportional to the value added by your changes.
It's unfair to try to depict commercial use of open source code in this light. The reality of the situation is that most commercial use of public domain or similarly open source code resembles Microsoft's use of the BSD TCP/IP code, or Apple's use of FreeBSD's userland. Rather than cosmetic changes to a full product it's the utilization of a shared toolbox of lower-level routines and libraries.
The fallacy of this argument is that it implies that incorporating public code into a commercial product somehow makes the original code no longer free. Public domain code remains free no matter what gets done with it. The GPL doesn't do at all what you claim. What the GPL does is require that new code written by others be released as GPL code. It does nothing to protect the original code, since that code needs no such protection.
If the researcher feels strongly enough that they don't want to make their code available to everyone equally then they should back up that preference by finding a way of funding the research that doesn't involve my wallet.
If I'm paying for it, I expect to be able to use it.
There is one major example or government funding GPL'ed code: NSA Secure Linux. While I agree that NSA Secure Linux is one of the more eggregious examples of the Government developing code which isn't released as public domain information, there are plenty of other cases as well. How would you consider Squid, which is GPL'd code whose development is funded entirely by the National Science Foundation? Granted, the farther away from the OS you get the less distasteful it is, but the issue still stands that public funds have payed for substantial development which is inaccessable to much of the public.
Hey, that's a really interesting aspect of the disucssion which I hadn't considered. Thanks.
I'm not sure what I think about that.
Ballmer's point is that the GPL is not a "free" license in this sense. What if the government-funded TCP/IP development had been released under a license which prevented its use in any product which wasn't released as GPL'd code?
The GPL restricts how code can be used, and government code should be provided without restrictions.
This has nothing to do with "corporations" or their legal status. Let's not blur the issue. This is about how everyone's money is being used to develop code that not everyone can use.
If we're all going to pay for it, we should all be able to use it.
If you accept the incorrect usage of "open source" to mean "GPL'd code" then this statement makes perfect sense.
I presume that what Ballmer meant to say was "The only thing we have a problem with is when the government funds GPL'd work. Government funding should be for work that is available to everybody."
This is an understandable viewpoint. GPL'd code is not accessable to everybody. It is only accessable to developers who are willing to release their code under the GPL license which excludes large portions of the community. Government-funded GPL code is inaccessable to the Apache Foundation, it's inaccessable to the OpenBSD developers, and it's inaccessable to any commercial developers who are working on closed-source products.
If tax dollars are funding a project, then the results of that development should be available to everyone and not just people who use one particular license. This is the rationale behind the laws which prevent the government from enjoying a copyright on the data it produces.
Government code should be public domain, not placed under a restrictive license like the GPL.
I think that this is a lot more similar to what Jobs did with the original NeXT cube: sell the hardware with a CD-ROM (which was exceedingly rare at the time) and no floppy drive (which was the standard distribution media at the time.
I can vividly recall boggling at the lack of a floppy drive when the NeXT was announced, it seemed like such a bad decision at the time. Now I realize that it was exactly the right decision only about two years too early.
This seems the same way. Is there anyone that doesn't think that in 10 years we'll look upon the CRT as a quaint relic and wonder how we ever coped with their size, weight, and power consumption? The LCD will eventually displace the CRT, and Jobs is following his pattern of adopting early at the expense of, well, the expense of the system.
Once again he's trailblazing in the face of product maturity. It's not a bad decision, it's just really aggressively-timed. Let's hope it doesn't affect adoption of the platform like NeXT's design decisions did.
Preventing Apple from being able to choose how they license the code they produce doesn't protect the community at all. It just places a roadblock in front of community code that prevents large segments of the community from being able to use it.
I as a developer choose to give my code away under an open source license such as the BSD license. I love having the freedom to do so. When I give my code away, I hope that as many people as possible will be able to benefit from it. It's my gift to the community.
This is quite unlike developers who give their code away under the GPL license, which is in effect saying that they only wish to share with and provide value to other developers who agree with them philosophically. Code shared under the GPL is only accessable to other developers who are using the GPL. From a code re-use perspective, this is a less desireable situation than a less restrictive license.
GPL'd code benefits the GPL community. BSD licensed'd code benefits the entire software development community. Two very different goals and effects.
As a contributor to FreeBSD, I have no objection at all with Apple's use of FreeBSD code to build MacOs X. Apple users will gain the benefit of a very mature and well-tested userland. Had there not been an open source alternative, or had there only been a GPL'd codebase then I'm sure Apple would have been forced to re-invent the wheel that the FreeBSD developers have already built. The end result for Apple users would have been a longer development cycle for OSX, less tested and possibly less robust code.
Apple has put a great deal of time, money, and effort into OSX and I don't feel that I have any right to force them to choose how they can license that code, which is theirs, just by virtue of my having shared my code. I'm just as glad that the BSD licensed FreeBSD code has been useful to Apple as I am that it has been useful to people who have incorporated it into GPL'd codebases. (I'd also note that if someone takes FreeBSD code and GPL'd it, it's just as inaccessable to me as a commercial developer as it would be had they used it in a closed-source license)
It's not sharing if you place signifigant restrictions on the code's use, as the GPL does. The GPL is just another license in this respect.
Yes, this can be bad for society because sending Company Y to hell deprives the marketplace of any subsequent innovations that it may have contributed to the state of the art.
A thriving, successful Company Y that is able to build its reputation on the success of its previous innovations is well-positioned to continue to push the state of the art and can be expected to (or at least, stands a good chance to) develop and distributed more innovate products in the future.
Quarterdeck is an ideal example of this -- had Quarterdeck not been starved out of existence by Microsoft, their DesqView/X product may have gained traction and been widely used. It was a phenominal product which could have accelerated mainstream acceptance of Unix as a consumer platform by many years. However, we'll never know what good effects may have come from a robust DesqView/X platform supported by a viable company.
Had, as the original poster stipulated, QEMM been demolished and Quarterdeck (Your Company Y) been sent to hell by an opensource alternative, the effects would have been the same. It would still have resulted in the death-by-starvation of DesqView/X.
Open souce development has proven to be a very efficient way of stimulating the devlopment of useful and robust code. It has not, however, proven itself to be at all useful at driving innovation and progress. Open source, as it exists today, is mainly a great tool for replicating the innovations we see being developed in the commercial marketplace.
Left with only opensource development, after all the Company Y's have "gone to hell", I suspect we'd see much slower and less beneficial progress.
Linux is not a bad thing, in and of itself, but if Linux displaces the alternatives then it is bad for the marketplace and bad for society.
Don't forget that an integral aspect of freedom is choice, and destroying commercial software removes an important and necessary choice. If our only choice is for "Free" software, then we're not free at all.
I hav no idea what you just said. What are you talking about?
In this example, the code which my tax dollars are paying for (NSA Linux) is not being released into the public domain. It's being released as GPL'd code, as required by the GPL on the Linux kernel.
This means that my tax dollars are paying to develop code which is inaccessable to me and anyone else who wishes to use a license other than the GPL.
Where do you get the idea that public domain code is only accessable to a few corporations and isn't exportable?
That's exactly my point. How do we reconcile the fact that the government cannot copyright works (and as a result, cannot legally release GPL licensed code -- since government IP is public domain by law) with the fact that the NSA is developing and releasing GPL'd code in its NSA Linux distribution? It seems to me that the NSA must either break the law by releasing GPL'd code (which isn't public domain) or break the GPL by taking GPL'd code and making it public domain.
Yes, but not if my taxes have paid for the government to develop GPL'd code. In that case, I as a taxpaying business would be prevented from using that code which my taxes paid for, unless I was willing to GPL any product which incorporated that code.
That's unacceptable to me. If my taxes are going to pay for the government to participate in the software industry, then I damn well better be able to use the product of what I've paid to develop. This is why government developed work should be public domain, and not under a restrictive license like the GPL.
Imagine if TCP/IP were GPL'd. We'd all still be using IPX or NetBEUI, since no commercial products would be able to support TCP/IP without GPLizing themselves.
If this is true, then how can the government legally contribute to GPL'd software? It seems to me that the GPL's restrictions are sufficient to prevent legal government involvement in development since it would require the government to break the law by producing code that is GPL'd.
The GPL does not provide a contributor with the option of releasing their modifications or additions under a less restrictive license or into the public domain. It requires all changes and derivative works to be also GPL'd, which the government cannot legally do if they are compelled to release to the public domain.
If my conclusion is wrong, what aspect of the GPL or the restrictions on government IP production am I missing?