Non-GPL code in CVS and distributed with module

TR - May 12, 2009 - 21:22
Project:Userplane Chat Integration
Version:5.x-1.0
Component:Code
Category:bug report
Priority:critical
Assigned:Unassigned
Status:active
Issue tags:Legal
Description

flashobject.js, distributed as part of this module, contains the license:

FlashObject is (c) 2006 Geoff Stearns and is released under the MIT License: http://www.opensource.org/licenses/mit-license.php

This violates Drupal licensing terms. You are NOT allowed to put this non-GPL code into the CVS repository, and you are NOT allowed to distribute it as part of your module. Please remove it immediately.

#1

Gerhard Killesreiter - June 21, 2009 - 18:58

Software that is licensed under MIT license can be relicensed onder the GPL.

The question I am more interested in is whether the code should not rather be downloaded from the original source...

#2

TR - June 22, 2009 - 00:40

According to the Drupal CVS Usage Policy http://drupal.org/node/103704, which is a summary of the more detailed document at http://cvs.drupal.org/viewvc.py/drupal/contributions/TERMS.txt?view=markup :

All content submitted to the repository is automatically assumed to be licensed under the GNU/GPL. Any content that is not licensed under the GNU/GPL should not be added to the repository and when found it will be removed by the owner.

If the MIT license is fine for inclusion in the repository, then the terms of service should say that explicitly - module writers should not be making that assumption on their own.

#3

Crell - June 23, 2009 - 21:34

Anything distributed FROM Drupal's CVS repository is distributed under GPLv2-and-later. Checking in something that cannot be distributed under GPLv2-and-later creates a license violation and is forbidden.

MIT licensed code can be relicensed under the GPL, however, we discourage redistributing 3rd party code through Drupal's CVS anyway for a variety of reasons, mostly relating to it almost certainly creating a fork of the 3rd party code which is rarely desirable.

#4

dman - June 23, 2009 - 23:09
Priority:critical» normal
Status:active» by design

If you read the license referred to in that text - you can see that it is liberal enough to allow re licensing or dual licensing. As are many other liberal licenses such as do-as-thou-wilt, no-rights-reserved, and BSD.
This should be self-evident from reading and understanding the text of the licenses in question.

MIT Licence is compatible with GPL
GPL and multi-licensing

- it could indeed be helpful to explicitly clarify this compatibility on the doc page.
- it is recommended to avoid branching or forking external code inside Drupal project distributions, but surely it is harmless and convenient to redistribute unmodified libraries that have been provided as bundles for that purpose. There is a difference.

This is exactly the situation with Drupals bundling of JQuery!
(although looking at it, I would have thought that distributing a 'minified'/compiled version of jquery without the source would be a GPL problem?)

#5

TR - June 30, 2009 - 23:27
Priority:normal» critical
Status:by design» active

Whether the code *may* be re-licensed under GPL is not the question, and for the purpose of this issue it doesn't really matter what the answer is.

The problem is that the inclusion of non-GPL code in the CVS repository is specifically forbidden by the Drupal license for use of the repository. The code I cited in the original post is not licensed under GPL, therefore it's not allowed. Period. If someone wants to re-license it under GPL, and if that's possible, then it would be allowed in the repository. Until then, it's not.

If the CVS repository license is allowed to be subject to individual interpretation of very specific provisions of the license (i.e. the exclusion of all non-GPL code), I don't see how it can be legally enforceable. If the license doesn't mean what it says then the license needs to change.

dman:
Your argument about jQuery holds no water, because if you read the license referred to in that text you will see jQuery *is* licensed under GPL, therefore *is* allowed to be in the repository:

jQuery is currently available for use in all personal or commercial projects under both MIT and GPL licenses.

Crell:
I found a relevant discussion in the Drupal Legal group at http://groups.drupal.org/node/14734. In that thread, you say:

Software that can be relicensed under the GPL may be included in Drupal's CVS repository if and only if an exception is made for it by the infrastructure team.

Your statement in #3 seems to say something different. I'll take your opinion as the last word on this issue. However, if MIT licensed code is allowed in the repository I really think the license needs to say that because now it says the opposite.

#6

Crell - July 1, 2009 - 02:49

I don't think my statements are inconsistent. It is legal under copyright law to relicense MIT code under the GPL, which is a prerequisite for checking it into Drupal's CVS repository. There is an additional requirement that applies to any 3rd party code, GPL or otherwise, that it must get an exception from the infrastructure team based on whether or not it is reasonable to have people download the 3rd party library from elsewhere instead to avoid creating a fork.

The first requirement is met by the MIT license. The second requirement has not been addressed yet. See killes' comment in #1, which has not yet been answered.

Either way, I would agree that the copyright statement in the file needs to change if the code remains in Drupal's CVS repository.

#7

Crell - September 16, 2009 - 22:45

Has there been any action on this issue?

 
 

Drupal is a registered trademark of Dries Buytaert.