Re: Artistic and LGPL compatibility in jar files
On Dec 13, 2009, at 2:24 AM, Anthony W. Youngman wrote:
> In message <[🔎] F4CCEC28-FE42-4AF3-B0C0-C832A6B0DE1D@dalkescientific.com>, Andrew Dalke <email@example.com> writes
>>> I'm always wary of explicitly relicencing. The GPL doesn't permit it, and by doing so you are taking away user rights.
>> Well, the GPL does allow relicensing to newer versions of the GPL...
> IT DOESN'T, ACTUALLY !!!
> Read what the GPL says, CAREFULLY.
I didn't realize this was such a hot point to need the use of capital letters.
Pretend I said "LGPL" instead of "GPL". In that case I can talk about relicensing, yes, since the LGPL explicitly allows relicensing to the GPL:
> 7: LGPLv2.1 gives you permission to relicense the code under any version of the GPL since GPLv2. If you can switch the LGPLed code in this case to using an appropriate version of the GPL instead (as noted in the table), you can make this combination.
LGPL is, after all, the Lesser GPL. In v3 the LGPL is specifically designed to give additional permissions than those of the GPL. You talked about how relicensing takes away "user rights" but in that case relicensing from LGPL to GPL is more taking away "user permissions", yes?
Still, the LGPL is designed to be relicensed to the GPL. What about something which doesn't have a built-in relicensing?
Pretend I had said "GFDL" instead of "GPL", in which case this quote from Stallman is highly relevant:
> The relicensing option in GFDL 1.3 is fully consistent with
> the spirit and purpose of the GFDL.
Stallman used the term 'relicense' several times in that open letter, and as a highly-visible response to the accusations of misdeeds during the GFDL/CC-BY-SA change, where 1.3 has an explicit section titled "RELICENSING" while 1.2 did not. He cannot have used it by mistake or as a poor word choice.
Does that relicensing take away any user rights which are part of the spirit and purpose of the GFDL? (It does obviously take away the right to revert the license to 1.2, but is that an important right?)
> Let's say I write a load of code, and release it with a notice saying "this code is licenced as 'GPL version 2 or later' ".
The FSF suggests that you should write it thusly:
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
Compare to the suggested text for the GFDL
Copyright (c) YEAR YOUR NAME.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.2
or any later version published by the Free Software Foundation;
with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
Texts. A copy of the license is included in the section entitled "GNU
Free Documentation License".
If changing from GFDL 1.2 to GFDL 1.3 to CC-BY-SA is called a relicense by the FSF and by Stallman, and allowed under the GFDL 1.2, then I hope you can see why I did not spot the subtle difference in these texts which means I should not call switching from GPLv2 to GPLv3 a relicense.
I looked again. I still don't see the difference. Could you point it out?
> What this give YOU is the right to redistribute the code according to the terms of the GPL v3. BUT - READ THE GPL - the people to whom you give the code get their licence from ME, NOT YOU. And I granted the licence as "v2 or later".
> So, AT NO POINT WHATSOEVER, does my code become v3, whatever you say or do. If you modify my code and licence your stuff as v3, the resulting work then becomes v3-only because the licence of the work as a whole is the subset of the individual licences - here v3 - but my code still remains v2+.
That interpretation is not consistent with the license upgrade path from GFDL 1.2->GFDL 1.3->CC-BY-SA. The 1.3 license clearly says a "Massive Multiauthor Collaboration Site" can relicense simply by republishing the site during the given time period. It does not require any changes to the content of the site in order to allow the relicense.
I understand that some people feel Stallman and the FSF were wrong in doing this, but I again think I can excused for considering the change from v2 to v3 as a relicense.
Even if you say that the GPL is different in this matter than the GFDL, can I not simply change the COPYING file because that alone is a modification to your code? Perhaps also changing the README to say "Now under GPLv3 - w00t!", in order to add creative input? That would be consistent with statements like:
> To relicense to GPLv3 in principle is just a global
> substitution, and exchanging the license text in COPYING. We should
> also make sure we have the FSF's address right everywhere. Finally,
> there is a small number of files that either have no permissions
> notice or lack the "or later" clause, and we need to decide what to do
> about that.
In any case, the Artistic License 2.0 - which is the main topic here - clearly means to allow relicensing so long as the new license preserves user rights, and in a form which is compatible with the GPL:
> (c) allow anyone who receives a copy of the Modified Version to make the Source form of the Modified Version available to others under
> (i) the Original License or
> (ii) a license that permits the licensee to freely copy, modify and redistribute the Modified Version using the same licensing terms that apply to the copy that the licensee received, and requires that the Source form of the Modified Version, and of any works derived from it, be made freely available in that license fees are prohibited but Distributor Fees are allowed.
The question I have is if the copyright owner's stated requirements under (ii) allow relicensing under the LGPL. It seems the answer is *no*, because if I ship a proprietary application which includes JUMBO/CML under the LGPL (making the application a derived work), then the LGPL allows me to charge license fees for the application as a whole, while the GPL would not. ("For example, you may not impose a license fee" from GPLv3.)