Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Channels ▼
RSS

Open Source

The Controversy Over GPL 3


Stallman and Moglen see that loophole as an injustice to the free software community, and they want to close it. Language in early drafts of GPLv3 to the effect that Web service providers would be subject to the giveback requirement "was a cause of much unhappiness in corporations that use GPL code," says Mark Radcliffe, digital rights attorney in the Silicon Valley office of DLA Piper. That's because, "in effect, Google gets open sourced," says Doug Levin, CEO of Black Duck Software, which inspects open source code for potential intellectual property violations. And not only Google. When you define a Web service as a GPL distribution, the likely subject of the giveback requirement "is just as much Merrill Lynch or Citibank as Google," says the CTO of an open source software company who asked not to be identified--an indication of how sensitive this topic is in the community.

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"

Eben Moglen, who is helping craft GPLv3, wrote a treatise on intellectual property in 2003 called "The dotCommunist Manifest"
CLASH OF THE LICENSES
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


Related Reading


More Insights






Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

 
Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.