Will Sun Use GPLv3?


Over the last few weeks, I have had a few people ask me why Sun didn't choose GPL v3 for Freeing the Java platform. "Does this mean you're siding with Linus?" they have asked me. "You must be," they have said, "because you chose 'GPL v2 only' rather than 'GPLv2 or any later version' as the license for the Java platform, preventing automatic use of GPL v3. You must be critical of it."

Those conclusions are not true at all. The answers are actually pretty straightforward, and when I discussed this matter with Richard Stallman he actually agreed we were making an acceptable choice here. I'll explain.

The GPL v3 Process

First of all, Sun has been engaged directly in the GPL v3 process since it started. My colleagues and I attended the launch conference in Cambridge, MA at the start of 2006 - I even logged the conversation with my friend and collaborator Danese Cooper of Intel. Since then, Sun has been a regular participant in discussion committee B and we continue to take a close and positive interest in the proceedings. Sun's lawyers provide assistance to Eben Moglen and other SFLC staff (who have reciprocated by providing valued input and advice to Sun's open source efforts), and we intend to stay engaged right to the conclusion of the project. I even spoke on a panel supporting it at FISL in Brazil.

My personal view is that the GPL v3 process has been extraordinary and effective so far in taking a somewhat partisan initial draft and evolving it into a solid license. The first draft of GPL v3 was a work of extreme skill, but some of the concepts and language definitely needed work. There were several places where the language was that of intent rather than of effect, and no-one doubted that revision was needed - that rapidly became evident in the comments posted to the web site as well as in the discussion committees.

With more effort and erudition, draft 2 was produced and it was clear we'd come a long way. Most of the language some considered extreme had been replaced by careful attempts to express effects in law, and we were on our way to a usable license. Still, it was clear there was distance left to travel. There's now a working draft in circulation just among the discussion committees.

Excellent work is taking place to understand how for example to neutralise the effect of software patents without unintended side-effects on the ability of community participants to defend themselves from hostile outsiders. There will be more drafts, more comments and I am personally very confident that an effective license will emerge from the end of the process next spring.

Why GPL v2 Only?

Duke candle

Actually, the very first question Richard asked me about OpenJDK was "GPL v2 or later" or "GPL v2 only"? I explained that Sun could not in good faith commit to using a license sight-unseen for such an important code-base. It's used on 4 billion devices, there are more than 5 million developers dependent on it for their living, and the risk - however slight - that the GPL v3 might prove harmful to them can't be taken. So while we are very positive about the GPL v3, committing to using it when it's not finished does not seem responsible stewardship. I hope we can use it, but I can't express that hope by committing in advance. So for now, the Java platform will be licensed under just the GPL v2.

Why Not GPL v3 Now?

The reason we did not choose to use the GPL v3 for the Java platform yet is because the GPL v3 is not ready to be used. Maybe we could have delayed the Freeing of the Java platform until the new license was ready, but we felt that was too long to wait. One strong reason was it was clear to us that migrating the Java SE code into the OpenJDK community with its new version control system was going to take a considerable time. It has to be moved from the internal, closed version control system we've used historically over to the new, open source VCS (Mercurial) that we'll be using both for the Java platform and for OpenSolaris. That's going to take some time - moving 6 million lines of code along with their audit trail with confidence is a job you can't rush. So we decided not to wait for the GPL v3 process to complete.

Why not LGPL?

Well, we preferred to follow the lead of the existing GPL Java community by using the GPL with an exception rather than using LGPL. This is actually the approach that the GPL v3 design is following. rather than having custom licenses for each purpose, the GPL v3 is designed to be used optionally with exception language that modifies its effect but remains compatible. This clever approach is how GPL v3 will hopefully be able to bridge between various other Free and Open Source projects that use different licenses.

So will you use GPL v3?

See above! We obviously can't commit to that yet - the license isn't finished. However, as things stand I would be very surprised if the final GPL v3 was not an effective tool for some of the communities Sun sustains or will initiate in the future. We are certainly not opposed to it, and it would be a huge mistake to read our use of the GPL v2 that way. Any change to the licensing of OpenJDK would naturally be made with the same caution and attention to compatibility and the affected ecosystems as characterised our previous decision.

I am frankly amazed by the criticisms some have levelled at the GPL v3 process. They seem to ignore the incredible and positive way it is evolving and just find fault with things that are already the subject of work by the diverse participants on the discussion committees and the web site. We're discussing license activation, software patents, managing DRM and all the other things that are supposedly wrong. If the critics were to step inside the process rather than throw rocks from the outside they would discover that. If Sun can participate, for goodness sake, who could possibly feel excluded?


[Trackback] Orlowsky per TheRegister ha messo per iscritto un pensiero che mi sta ronzando nella testa da quando Linus ha iniziato a sparare contro GPLv3: Linux alla fine è solo un kernel e non è l’unico kernel disponibile per completare GNU. Sun sta lavo...

Posted by ][ stefano maffulli on November 30, 2006 at 03:31 PM PST #

Balancing the arguments for and against GPLv3 has resulted in people like Linus Torvalds not supporting GPLv3. Therefore my question is - how does one balance Torvald's concerns with this? http://www.linux-watch.com/news/NS3301105877.html

Posted by Taran Rampersad on December 04, 2006 at 12:40 AM PST #

Two questions: First, you said: 'Excellent work is taking place to understand how for example to neutralise the effect of software patents' Can we assume then that Sun is no longer going to patent software? Second, you said: 'for goodness sake, who could possibly feel excluded?' But I thought comittee b is a private group that is NOT open to all the community to participate within (and publishing some meeting notes does not really count as an open transparent process) I'm sure you tell me on #1 this is your opinon not Suns, but sorry, you are posting on a Sun domain and you are a senior guy at Sun, take a position. On #2 I'm very interested to see if this is really an open process or just using the thin veneer of open-ness while only the inside IT vendors really cook up the new GPL version. Please educate.

Posted by paul on December 06, 2006 at 03:54 AM PST #

The GPL version 3 is not ready yet, so using the existing version is understood. However, why did not Sun state that it only accepts contributions under version 2 or later, in order to be able to finalize its opinion in 1-2 years, and leave the exclusive right to decide to go v2 or v2+ or v3 or v3+, without requirements to assign copyrights. I would advise Sun to make such statement ASAP not to fall into the famous Linus trap, and not to be able to use version 3 when it arrives no matter how strong will be the willing to do this.

Posted by Gregory Midger on December 06, 2006 at 09:32 AM PST #

[Trackback] Over the last few weeks, I have had a few people ask me why Sun didn't choose GPL v3 for Freeing the Java platform. "Does this mean you're siding with Linus?" they have asked me. "You must be," they have said, "because you chose 'GPL v2 only' rather th...

Posted by UNIX-WORLD NEWS on December 06, 2006 at 10:21 AM PST #

@paul: Opposing the use of software patents does not imply not filing them any more than opposing war implies having no army. Sun continues to file patents of all kinds in order to protect itself from its competitors, who have no qualms about them, and will continue to do so all the time US law creates the situation in which this is essential. Most companies involved in open source software take a similar position.

However, Sun is also keenly aware of the threat software patents present to FOSS developers and keeps doing things to help with the problem - the non-assert covenant on OpenOffice.org, the patent-sharing clauses in the CDDL and teaming with Red Hat and others to defeat the EU directive last year. I have written at length on this subject.

Concerning the GPLv3 process, the discussion committees were established by the FSF and are indeed invitation-only. However, I am certain all sorts of people received invitations, and everyone that wanted to participate at the initial conference in January was invited too. Linus's employer OSDL is represented on Committee B and I am pretty sure Linus could join Committee D any time he wanted. There are plenty of individuals and FOSS groups on the committees, it's not just for companies. The FSF has a description of the commitees.

Posted by Simon Phipps on December 06, 2006 at 12:14 PM PST #

So Sun only files patents to protect itself against competitors? Who would those competitors be, for example? Also, I'm truly interested in this discussion committee model, why not just let the community work on the draft? It seems like a 'secret club', and if a kernel (Linux) and other great open source sofware can get designed and built without special private committees, why is this format needed? I'm suspicious....

Posted by paul on December 06, 2006 at 04:20 PM PST #

It is absurd for anyone to suggest any author should release code under "GPL v2 or later", unless said author has veto authority over the future license.

It would allow other voters on the license (and likely competitors to the author), to support a license which adversely affects said work, or benefits the competitors without their input to the community.

The author should always retain the right to determine the license under which their work is published. That is the single ultimate freedom upon which all free software is based. Anything else is tyranny, not freedom.

Posted by Mark on December 07, 2006 at 10:16 AM PST #

Post a Comment:
Comments are closed for this entry.

Thoughts and pointers on digital freedoms and technology markets. With a few photos too.


« July 2016