Radcliffe, who serves as general counsel to the Open Source Initiative, the body that reviews and approves proposals for new open source licenses, says criticism of the new giveback provision pushed the GPLv3 writers toward a less restrictive requirement, one already under consideration known as the Affero provision. Instead of an open-ended definition of Web services, the Affero requirement refers only to GPL code used to build a Web service that, if requested, will automatically download its source code as part of the application. Successor programs, including those used to build other Web services, would need to make their revised code available for automatic download as well.
Black Duck's Levin, who served on one of the GPLv3 review committees, says Google doesn't need to make its current source code available because its software infrastructure was built before GPLv3. But in the future, if it uses GPLv3 code that includes the automated source code download function, Google would have to duplicate that function--and incorporate its modifications to the source code--in systems that underlie its future network services.
If all this seems confusing to you, you're not alone. The Christian Science Monitor wants to contribute to the development of the open source code that it uses, but CTO Barbounist says he also will be careful in how he brings GPLv3 code in-house. "We don't want to inadvertently trigger the giveback provision," he says. And at this point, he can't answer "the in-depth questions of when it kicks in."
Eben Moglen, who is helping craft GPLv3, wrote a treatise on intellectual property in 2003 called "The dotCommunist Manifest" | |
An overall concern in this debate is how open source developers and users will reconcile two versions of the GPL. It seems clear that Torvalds' Linux kernel will stay under GPLv2. On the other hand, the third-best-known piece of GPL software, the Samba file sharing system, will move to GPLv3 as soon as it's available, says lead developer Jeremy Allison. It's important to maintain unity behind the GPL, he says.
License compatibility always has been problematic in the open source software industry. For instance, using products that combine the Linux operating system, under GPLv2, and code such as the Tomcat Java Servlet engine from the Apache Software Foundation, brings about a clash between the Apache license, which allows proprietary code, and the GPL, which doesn't.
GPLv3 will add rules about what users should do when there's code from more than one license in a GPL program, Torvalds says. But he expects confusion as users are able to create code combinations with an almost endless variety of restrictions. "When you combine two different versions, you get a third version, namely the least permissive reading of either of the ones you combine," he says.
Torvalds' refusal to accept GPLv3 has given others pause, but ultimately it will be up to the developers and users to decide which version will predominate. "We're holding off in order to see how the market responds," says Kaz Arno, VP of community relations for MySQL AG, supplier of the MySQL database. If MySQL customers like the provisions of GPLv3, company officials will embrace it; if there's ongoing controversy and dispute, they might stick to GPLv2 indefinitely, Arno says.
Business users will end up having to track which parts of their open source portfolios are on version 2.0 and which have moved to GPLv3. "The GPL is important to the extent it supports a supply of quality software coming at us," says Michael Prince, CTO at Burlington Coat Factory. "It influences the software that we buy when that software has open source components embedded in it."
Having deliberately missed the March deadline, there's no firm date yet for the completed version of GPLv3. But most users aren't in a hurry. Rather than squabble over GPLv3 later, the Christian Science Monitor's Barbounist says, "it's in the best interest of the community to work these issues out now."
Photo courtesy of Joe Zeff