The current scheme may be getting too complex to be desirable or
workable, but anyway it moves the definition of "Essential Patent
Claims" to section 0, generalizes it so that it can apply to upstream
licenses You receive and downstream licenses You grant. The first
paragraph of what was GNU GPLv3 sec. 11 is deleted as unnecessary, and
a provision is added making clear that granting the same sort of
patent license is required if "You" Distribute a Derivative Work. This
structure is a bit like what was used in the second discussion draft
of GNU GPLv3. But a simpler, more elegant approach would be
preferable.
This is quite awkwardly worded and a different approach may be needed
altogether but the idea here is ultimately to find a way to reword the
patent license grant so that it is from "Us".
This commit adds a section based closely on the ingenious first
sentence of section 5 of the Apache License 2.0, which essentially
says it is a copyright license condition that upstream contributions
are licensed by default under the license you received. It thus
codifies the customary "inbound=outbound" rule of FLOSS projects and
arguably renders unnecessary separate CLAs or the like (or at least
defeats some of the arguments asserted in their favor).
There is something awkward here that will have to be fixed
somehow. The problem essentially has to do with precisely defining who
"We" are, given the "explicit licensor" architecture of the current
draft. It may be helpful to think about how the issue is treated in
practice in Apache License contexts.
RMS has said (in at least one public address he gave in 2006) that he
added GNU GPLv2 section 7 (the original liberty-or-death clause) to
clarify an issue that he believed to be already a consequence of the
existing provisions of the license. I believe he must have meant the
"no further restrictions" clause, which was present in GNU GPLv1.
Joining these historically separate provisions in one section will
make it easier to reason about possible further changes.
Previous commits allow this significant simplification of what is now
sec. 3 (corresponding to sec. 4 of GNU GPLv3). "As you receive it" and
"in any medium" seem (at least now, given previous changes) redundant.
The affirmative requirement to publish an "appropriate copyright
notice" is deleted. This makes Copyleft.next conform with typical GNU
GPL practice in the real world. If someone receives source code from
upstream, and does not modify it, they will in nearly all cases *not*
bother to publish an "appropriate copyright notice" on the source code
that is not already present (in other words, licensees do generally
preserve copyright notices, but they don't fix upstream "failures" to
place copyright notices, and for good reason. It is typically going to
be difficult for the downstream licensee to figure out what the
"appropriate copyright notice" should be for an unmodified upstream
work, and it is unreasonable to expect the licensee to do such work.
One wonders whether this requirement is a holdover from the era before
US entry into Berne.
The requirement added in GNU GPLv3 to keep intact not only basic kinds
of legal notices but also any allowed additional requirements was
deleted in this commit. I now think my deletion (made a day or so
before writing this commit message) was in error, but the solution may
be to revise the definition of "Legal Notices".
To my recollection, "price" was substituted for "fee" in the course of
GNU GPLv3 drafting because of a concern that some mistakenly believed
the position of the FSF to be that one could charge for "services" but
not "sell copies" (potentially without providing services). This was
so despite language in GNU GPLv2 and draft GNU GPLv3 stating
otherwise, and despite such guidance from the FSF as
http://www.gnu.org/philosophy/selling.html.
At this point, given the changes made and the degree to which the FSF
has clarified this point (and the degree to which the right to
commercialize is understood to be fundamental to FLOSS licensing), it
seems safe to revert to using "fee". (The changes made in the previous
commit call for use of one verb for both the "sale" of a copy and the
provision of a for-pay service.)
This commit rewrites the basic permissions section in a more
conventional legal manner (modeled to some degree on the CC 3.0
license grant language), and incorporates the clarifications given in
the "verbatim copies" section.
Unlike the GNU licenses, the license grant now explicitly refers to
public display and public performance rights. In some (possibly rare
for software) cases, specific mention of these rights could
conceivably be advantageous.
Splits automatic licensing provision into two sections, including a
new "No Further Restrictions" section. The liberty-or-death provision
is moved up to follow immediately the no-further-restrictions section
to which it is closely related.
Subsection 5c is modified such that this copyleft clause fails to
apply if the licensor licenses a Covered Work under Proprietary Terms
(currently undefined).
The availability of proprietary relicensing (Bradley Kuhn's term) for
licensors of a GNU GPL-licensed work with copyright ownership
consolidated in one entity is arguably a significant flaw in the GNU
GPL. It has been assumed to be unavoidable as a consequence of the GNU
GPL being a copyright license. I have spoken previously about the
reputational harm to strong copyleft caused by proprietary relicensing
business models and the social harm that results from overreaching
interpretations of the GNU GPL that such business models have encouraged.
Restored a definition of "License" (with the intent of disambiguating
from uses of lower-case verb/noun "license").
One notable change is restoring the term "derivative work" (used, as
is well known, in GNU GPLv2, but abandoned in GNU GPLv3), but as a
defined term and with initial capitalization. The scope is intended to
be the same as "work based on the Program" in the GNU GPL and the way
in which I believe the drafters of GNU GPLv2 intended "derivative
work" to be understood. The definition is largely based on the
modify/based-on definition of GNU GPLv3 but greater clarity is
attempted; thus it replaces "Modified Version" of previous
Copyleft.next commits. (Therefore, uses of "Modified Version" in
section 5 have been replaced with "Derivative Work".)
The earliest discussion draft of GNU GPLv3 used "derivative work"
similarly to GNU GPLv2. The later avoidance of that term was a result
of substantial criticism of the GNU GPLv2 definition asserted by US
lawyers, criticism which had begun years before the GNU GPLv3 drafting
process. I believe I understand, today, the main thrust of that
criticism, but I have addressed it here in a way which I believe
fulfills the intent of RMS. In particular, the definition adds an
"avoidance of doubt" clause that makes clear that "Derivative Work"
could well be broader (or even narrower) in scope than "derivative
work" under US law. This was the intended effect of the reformulated
modify/based-on definitions in GNU GPLv3.
Another interesting change is that the "Aggregate" clause at the end
of section 5 (a more complex descendant of the simpler "mere
aggregation" clause of GNU GPLv2) is deleted, and instead a definition
of "Mere Aggregate" is defined and then included as an additional
carveout to the "Derivative Work" definition. (In the GNU GPL,
mere-aggregation/"Aggregate" was always, in a sense, a
for-the-avoidance-of-doubt limit on the definition of
derivative-work/work-based-on-the-Program/modified-version; making
"Mere Aggregate" a definition which then reduces the definitional
scope of "Derivative Work" makes this all clearer.) I have not carried
over what is sometimes called (by me) the "Larry Rosen clause" of the
GNU GPLv3 Aggregate paragraph (as it was a late change in response to
a late provocative interpretive statement by Mr. Rosen), as I do not
believe it adds any clarity to the definition. The feature of the GNU
GPLv3 Aggregate paragraph that is substantively different from the GNU
GPLv2 "mere aggregation" clause is what I believe is an effort to deal
with the possibility of denials of GNU GPL rights through restrictive
compilation licenses. The way this is worded in GNU GPLv3 can be
improved upon and I have tried to do that here in the "Mere Aggregate"
definition.
Another change is a positive definition of "Distribute", preceding the
existing negative definitions.
This commit deletes the words "or other readily accessible means"
following "publicly available network server". In this context, it is
difficult to imagine any practical means more readily accessible than
a public network server.
Added explicit definition of "Licensor", adapted from CC 3.0, though
it isn't used yet. I antiticipate that such a definition may prove
useful in future changes. This commit also effectively reverts an
earlier change which had deleted a clarification that the licensee
("You") can be an individual or an organization ("entity" is used
now).
The historical necessity of the deleted clarification is
recogized. However, today this issue seems to be sufficiently well
understood and is explained quite well in the FSF's GNU licenses FAQ:
http://www.gnu.org/licenses/gpl-faq.html#CanIUseGPLToolsForNF
There is no need for it to be in the license; it states an obvious truism.
Since "any price" includes a price of zero, it is unnecessary to
explicitly state "no price". Moreover, the historical concern here
related to residual doubts about commercialization of free software;
thus if there is anything that needs to be said here it is that there
is no upper bound on charges for distribution.
In GNU GPLv3, the only explicit statement that granted licenses are
royalty-free occurs by way of an example given to the "no further
restrictions" rule. This is unsatisfactory in appearing not to bind
the original licensor (cf. the way the patent license grant of GNU
GPLv3 is formulated).
GNU GPLv2 indicates that distributed works based on the Program must
be licensed "at no charge to all third parties", and the warranty
disclaimer is prepended with a statement that "the Program is licensed
free of charge". These features were removed from GNU GPLv3, I believe
primarily to remove any doubt about the right to charge any fee for
distribution of copies (see also the second paragraph of GNU GPLv3
section 4).
In this commit, we delete the "no further restrictions" example and
add language to the "basic permissions" section clarifying that all
license are granted royalty-free.
The deleted provision, introduced in GNU GPLv3, states:
Corresponding Source distributed in accord with this section must be
in a format that is publicly documented (and with an implementation
available to the public as Source Code), and must require no special
password or key for unpacking, reading or copying.
This is unnecessary to state, since Corresponding Source distributed
in some other format would not meet the underlying definition of
Source Code. In the interest of advancing textual economy, it is
deleted in this commit.
GNU GPLv3 added a Corresponding Source compliance option focused
specifically on BitTorrent (though it was drafted generally as "peer
to peer transmission"), in response to a stet comment. This was much
noted as an important advance of GNU GPLv3 over GNU GPLv2.
But in reality, the value of this addition is rather
questionable. Compliance using BitTorrent or the like under GNU GPLv3
proceeds as it has done under GNU GPLv2; it is probably typically not
strictly in compliance with the clause set forth in GNU GPLv3. Thus,
viewed legalistically, we had noncompliance before and we have
noncompliance now, and in both cases no licensors bother to enforce
against this course of conduct. So, in the interest of advancing
textual economy, we should delete this clause.
Clarified clause stating distribution does not include pure network
services interaction.
Migrated 'contractor' clause of GNU GPLv3 section 2 (which had been
requested particularly by counsel for securities/financial services
industry interests during GNU GPLv3 drafting) to section 0 so that it
becomes a second explicit variety of non-distribution. A substantive
change was made here: the GNU GPLv3 version suggests that the
contractee-conveyor must comply fully with normal GNU GPLv3 conveying
requirements as to the portions of the work given to the
contractor/outsourced data center that are not copyrighted by the
conveyor.
This seems to me to be unlikely to be complied with in practice, and
perhaps relatively burdensome. Since, in a sense, the rationale for
the GNU GPLv3 provision in its section 2 was (roughly) that
contractors and outsourced data centers are reasonably treated like
employees, perhaps it should be easier for licensees to transfer works
to contractors and data centers without worrying about ordinary
distribution-triggered compliance. The policy issue needs to be
explored further, but for the time being I am proceeding with this
change.
The explicit prohibition on sublicensing is removed. As noted in GNU
GPLv3, the automatic licensing provision would seem to make
sublicensing superfluous. German lawyers Till Jaeger and Axel Metzger
argued during GNU GPLv3 drafting that GNU GPLv2 was undesirably
unclear in seeming to allow sublicensing by negative implication but
having the automatic licensing feature that would seem to be designed
to preclude sublicensing.
I recall being quite impressed with the force of this formal analysis
in 2006, but I now see it as one or two extra lines of text in the GNU
GPL that don't have to be there. GNU GPLv2 has hardly suffered in any
practical way as a result of this formal puzzle concerning
sublicensing. Even if sublicensing seems inconsistent with automatic
licensing, what is the real harm if some GNU GPL transaction is
structured as an act of sublicensing? An explicit prohibition on
sublicensing seems to unnecessarily intensify a tone of
restrictiveness.
The first two paragraphs of the Additional Terms section, discussing
additional permissions, are deleted in this commit in the interests of
advancing textual economy. Everything here seems to be an obvious
consequence of copyright law. GNU GPLv2 has not suffered through
absence of such an explicit framework; indeed the deleted material is
largely an effort to codify FSF practice and interpretation under GNU
GPLv2.
In addition to the stylistic changes, the "Standard Interface"
definition is removed as it is no longer used, and the modify/Modified
Version definition is made clearer. Sections 0 and 1 are both
definitional and so they have been consolidated into one section.