For Approval: GPLv3

Chris Travers chris at metatrontech.com
Fri Aug 31 01:37:23 UTC 2007


Wilson, Andrew wrote:
>
>
> No.  Chris, it appears you haven't grokked the basic nature of
> sec. 7 additional permissions in v3.  They are additional permissions
> which are granted by an original licensor (presumably the copyright
> holder) on top of the terms and conditions of GPLv3.  There
> is, ipso facto, a "public license" involved.
>   

Then pardon me for being confused here,  I am trying to understand how 
the following sections actually go together:

Section 2 (final sentence):
'Sublicensing is not allowed; section 10 makes it unnecessary.'

In other words, downstream users get their license from *me* for my 
code, not from other GPL licensors.  CHanging what you can do with *my* 
code is not allowed.  Seems pretty simple.  This language has been there 
since draft 1.

Section 7 (Portion of Paragraph 1): 
"Additional permissions that are applicable to the entire Program shall 
be treated as though they were included in this License, to the extent 
that they are valid under applicable law. If additional permissions 
apply only to part of the Program, that part may be used separately 
under those permissions, but the entire Program remains governed by this 
License without regard to the additional permissions."

The above two quotes suggest to me that if I add any permissions to the 
work as a whole, they cannot be removed simply by saying so.

"When you convey a copy of a covered work, you may at your option remove 
any additional permissions from that copy, or from any part of it. "

Now, you may be right.  However, if you are, then it is a problem with 
the GPL3, in the sense that it does not do what it was intended to do.  
However, at least the language is contradictory and confusing.  At any 
rate, your interpretation seems to be at odds with the process that the 
GPL3 went through to get to this point.  Of particular interest are 
drafts 1 and 2 and the accompanying rationale documents.  I bring this 
up because I can't find any other way to reconcile these contraditions 
in the GPL3.  Looking to the earlier drafts, the changes, and the stated 
rationale at least lets me know what the authors were thinking (whether 
or not that is a defensible interpretation).

The GPL3 Draft 1 stated:
"When others modify the work, if they modify your parts of it, they may 
release such parts of their versions under this License without 
additional permissions, by including notice to that effect, or by 
deleting the notice that gives specific permissions in addition to this 
License. Then any broader permissions granted by your terms which are 
not granted by this License will not apply to their modifications, or to 
the modified versions of your parts resulting from their modifications.
[X]
ratiodoc: Requires a downstream user of a covered work to preserve the 
non-GPL terms covering the added parts just as they must preserve the 
GPL, as long as any substantial portion of those parts is present...[+] 
<javascript:showFull('311')>
"

The Rationale Document stated:
"Section 7 first explicitly allows added parts covered by terms with 
additional permissions to be combined with GPL'd code. This codifies our 
existing practice of regarding such licensing terms as compatible with 
the GPL. A downstream user of a combined GPL'd work who modifies such an 
added part may remove the additional permissions, in which case the 
broader permissions no longer apply to the modified version, and only 
the terms of the GPL apply to it."

This clearly states that the GPL3 allows for additional modifications 
granted with all the encumbrances of the GPL3 with appropriate extra 
terms.  It is entirely clear and unambiguous and poses no conflict with 
a prohibition against sublicensing.

The second draft changed this to:
"   When you convey a copy of a covered work, you may at your
option remove any additional permissions from that copy, or from
any part of it.[71] Some additional permissions require their own
removal in certain cases when you modify the work."

Footnote 71 states:   "We no longer formally require removal of an 
additional permission to be by one who modifies."  There is no further 
documentation as to why this change was made.  THe public comments do 
not suggest such a debate over the original wording.

The rationale document for draft 2 thus provides at least a suggestion 
that this change was not intended to change the goal of the license:  to 
allow code with additional permissions to be encumbered by copyrights 
for code under the GPL3 with the additional conditions enumerated in 
section 7.

> Additional permissions may not be granted by a downstream distributee
> whose
> only license to the code is GPL.

But absent sublicensing, you can't remove the permissions that the 
author originally gave to his/her original elements.  The goal in Draft 
1 was clearly to allow for modifications which would add the exact 
restrictions of the GPL3 to *those modifications.*  This goal was never 
changed.  If this license doesn't match this goal, then it is a problem 
with the license.

>   On the other hand, any downstream
> distributee may remove any or all sec. 7 additional permissions and
> distribute
> (whoops, I mean "convey") under bare GPLv3.  Read sec. 7, 2nd para:
> 	
> 	"When you convey a copy of a covered work, you may at your 
>        option remove any additional permissions from that copy, 
>        or from any part of it."
>   

My concern is that this phrase can be read many different ways, such as 
to allow essentially sublicensing (as you seem to suggest), as to 
provide notice that new contributions will encumber the document to the 
exact terms of the GPL3 + section 7 allowed restrictions, or possibly to 
reach in and affect the rights of other copyright owners.

The intent of the GPL3 is clear in the initial rationale document.  
Nothing in later rationale documents contradicts this intent as regards 
additional permissions.  If the license can be read so many different 
ways outside its original intent, that represents a real risk for those 
who use the license, or at least that is my opinion.

Having said this though, many of my original concerns have been removed 
in debating this license.  I have been trying to understand exactly:

1)  What a license purports to allow or not
2)  What the legal mechanism is involved.   The reason is that I will 
*not* commit a project to a license until I understand how to discuss it 
with lawyers.

Again getting back to a hypothetical example:  I create a program with a 
bunch of cool features.  I apply the GPL plus a bunch of other 
permissions to that code, and give a copy to an associate for review.  
He fixes bugs in a couple bugs in one file, but removes my additional 
permissions from all my code (including unaltered areas).  He then 
publishes the code online.

I haven't released to the public yet.  Who does the license to the come 
from and what does it include?

If this isn't sublicensing then the license comes from *me* and the 
permission removal has *no effect* on unaltered portions and might even 
be false advertising.  If it is sublicensing, then it comes from the 
publisher and is as stated in the license.  However, because *I* have 
never given any other license, it can't come from me and fail to include 
all permissions I gave.

Perhaps you can see where my confusion is now.  Yes, I fail to grok the 
license but it is because it seems that the license is extremely 
complicated and difficult to resolve all conflicts of wording.

IANAL, etc.

Best Wishes,
Chris Travers
-------------- next part --------------
A non-text attachment was scrubbed...
Name: chris.vcf
Type: text/x-vcard
Size: 171 bytes
Desc: not available
URL: <http://lists.opensource.org/pipermail/license-discuss_lists.opensource.org/attachments/20070830/16122b8d/attachment.vcf>


More information about the License-discuss mailing list