Saturday, January 19, 2008

GPL Project Watch List for Week of 01/18

The GPL v3 Watch List is intended to give you a snapshot of the GPLv3/LGPLv3 adoption for January 12th through January 18th, 2007.

January 18th - Winnie The Pooh Day
Over the past week we have passed the 1.5k milestone. Within just over 6 months, 1535 projects have adopted the GPL v3, which is a growth of 56 GPL v3 projects over the last week. The growth was actually closer to 90 new GPL v3 projects, but we performed an audit on the database to clean out faulty entries. The LGPL v3 list has grown to 148 LGPL v3 projects, increasing in 5 LGPL v3 projects in a week. Lastly the GPL v2 or later count is not at 6411 GPL v2 or later projects. We are well into the new year and GPL v3 growth remains consistent at approximately 50 adoptions per month. If this adoption rate remains consistent, the overall percentage of active projects under the GPL v3 will continue to grow.






















New project conversions this week include:


  • FSVS: a complete backup/restore tool for all files in a directory tree or whole filesystems, with a subversion
    repository as the backend.
  • Nulog2: Nulog2 is a complete rewrite of Nulog the historical filtering log analysis solution from INL. Nulog2 is an application build upon Twisted, an advanced Python framework.
  • jtvmaker : a web slideshow generator and album generator that can remix photo, mp3 and lyric files.

Current Events in Open Source
Sun's acquisition of MySQL
In addition to providing a great boost to the visibility of, and commercial confidence in, free and open source software, Sun's announcement this week of its acquisition of MySQL raises some interesting points to ponder. This acquisition brings benefits to both parties. Sun receives a proven and robust open source database and MySQL will soon be available to major customers worldwide that are part of Sun's existing distribution network, along with enterprise-level support.

MySQL is a very popular database server used alongside Linux, Apache and PHP (together, "LAMP") to provide a web platform based on open source applications. How Sun intends to integrate MySQL into its current product offerings is unclear. With its OpenSolaris operating system and Java programming language, adding MySQL could give Sun a powerful Sun-branded combination to challenge the current popular LAMP configuration for hosting a web platform.

Initially there don't appear to be any licensing conflict issues if Sun were to merely bundle MySQL along with its other software products. MySQL is currently offered using a dual licensing arrangement where it is available either with a commercial license or under the GPLv2. Presumably, with the commercial license Sun will be able to do what it likes with the code as far as integration, but under the GPLv2, going beyond bundling, or "mere aggregation," and into the realm of combining MySQL code with that of another application into a single program can potentially require that the GPLv2 govern the resulting combination.

It will be interesting to watch how Sun begins to position MySQL as a product as the anticipated finalization and closing of this deal occurs sometime in the second half of this year.

References:
http://www.sun.com/
http://www.mysql.com/




GPL v3 and Commercial Dual Licenses

Our understanding of the GPL v3 is that any code released under the license cannot be closed and is difficult to combine with another license under a dual license. This makes GPL v3 code practically impossible to be under a commercial license. There are, however, projects that are under both the GPL v3 and a commercial license. The best example of this is Sugar CRM. In Sugar CRM's case, the project forked, having the open source version under the GPL v3 and having another commercial version with the additional code under their commercial license. However, all portions of code under the GPL v3 in the commercial version must remain open to abide by the terms of the license.

In light of projects like Sugar CRM that are under the GPL v3, but have a commercial side, we decided to look for other projects in our database that also had commercial aspects. We found that there were three main variations of commercial
GPL v3 projects.

  1. "Forked" - This is the Sugar CRM example, where the project releases different versions, one of which is under the GPL v3 and the other is under a commercial license. (Example: Sugar CRM)
  2. "Dual License" - There were other projects that listed themselves as dual licenses, in which case the source code is available for individual use under the GPL v3, but for enterprise use a commercial license must be purchased. In these cases, the code branch is the same, the only differences is the intended use, which determines the license type. However, even under the commercial license, the code will remain open under the GPL v3. (Example: zeromq)
  3. Support Contract - There is no potential for conflict in this case, since the code is open under the GPL v3 for free, but the developers offer a separate support contract for those who would like additional assistance with the software. (Example: Blackbird ESB)
The purpose of bringing this into view is that the GPL v3 is controversial because of its many restrictions. In the case of putting a GPL v3 project under a commercial license as well, there is high potential to violate the terms of the GPL v3. This is not to say that any of the aforementioned projects are or are not in violation of the license, since our analysis of the terms are not yet complete, but caution should be used if a project is under both the GPL v3 and a commercial license.

References:
http://www.sugarcrm.com/crm/
http://www.zeromq.org/area:licensing
http://www.blackbirdesb.org/
http://gplv3.fsf.org/


Notable Mention
Palamida actively takes submissions from visitors on updates on new GPL v3/LGPL 3 projects. We are amazed at the number of submissions we have gotten to date, but even more so, we are incredibly grateful to the almost 100 core contributors who have devoted their time and resources at helping us provide up-to-date information.



Regards,

Ernest Park
Antony Tran
Kevin Howard

2 comments:

Pieter Hintjens said...

You say that "In the case of putting a GPL v3 project under a commercial license as well, there is high potential to violate the terms of the GPL v3."

This kind of blanket statement should be backed-up with some explanation.

What is absolutely vital to any project which intends to use a dual-license model is copyright centralization.

A team cannot re-license GPLv3 code that they do not own. But they can, without the slightest risk, relicense code that they own. They can also relicense code that was originally licensed in ways that permit the relicensing.

Thus, if you look at the zeromq.org site you will see that contributors must either sign a Copyright Assignment and License (CAL), or license their contributions under the MIT license.

FastMQ Inc. owns all of the code in ØMQ and can relicense it commercially with zero risk. When we get contributions, we either become owner of these, or we are granted the right to relicense under the terms of the MIT license.

Centralized copyright ownership is an integral part of a dual GPL/Commercial licensing strategy and must be built into the free software project from the start.

Anonymous said...

Great point, Pieter. You are correct about copyright centralization being the key to using a dual license model. The most important elements that allow for copyright centralization are that contributors must either assign the copyright in their contribution over to the project or submit their contribution under a license that allows for relicensing, such as the MIT license.

Our point about the difficulty with the GPLv3 in a dual licensing model should have been clearer that the focus is on the contributions coming back into the project and that project maintainers must be vigilant about the the copyright and license terms such contributions are submitted under. This will help ensure that all contributions can be incorporated properly and also that potentially valuable contributions are not excluded from a project due to restrictive license terms.

Correspondingly, it is in the best interest of project maintainers who are considering or are using a dual licensing model to make the copyright and licensing requirements of new code submitted to the project abundantly clear to potential contributors.

Kevin Howard
Legal Research Associate
Palamida Corporation