GCC drops its copyright-assignment requirement
GCC drops its copyright-assignment requirement
Posted Jun 1, 2021 22:12 UTC (Tue) by rgmoore (✭ supporter ✭, #75)In reply to: GCC drops its copyright-assignment requirement by madscientist
Parent article: GCC drops its copyright-assignment requirement
They don't have the ability to relicense GCC.
Yes, they do, or at least they did until this. A copyright holder always has the right to change the license terms for their software. With projects like the Linux kernel, where the copyrights are held by thousands of different contributors, it's effectively impossible to change the license. But if contributors are required to assign their copyright to a central authority like a foundation or company, that single copyright holder has the right to change the licensing terms. That was a major point of requiring people to assign their copyright.
In this case, I think GCC has decided that isn't necessary, since they were never going to relicense under anything but a later version of the GPL. But some companies have a dual license scheme that takes full advantage of this. The company maintains all the copyrights, either by not accepting outside contributions or by requiring contributors to assign their copyrights, which allows them to release a GPL version and a proprietary version. They support Open Source software and let programmers get used to their software through the GPL version, but they can still make money by licensing their software to proprietary software projects.
Posted Jun 2, 2021 6:01 UTC (Wed)
by madscientist (subscriber, #16861)
[Link]
Oops I was thinking about the GCC steering committee but the parent was clearly talking about the FSF.
Posted Jun 3, 2021 11:13 UTC (Thu)
by nim-nim (subscriber, #34454)
[Link] (15 responses)
It is *not*. A license is a one time authorization to modify/copy/use software.
The copyright holder can distribute his work under as many licenses he want to as many entity as he wants, and the licenses can contradict one another, each recipient is bond by the one-time terms of the license he was distributed software under, and no other.
The genius of the GPL is that it allows and requires recipients to emit new autorizations under the copyright holder name, provided they abide by the licensing terms (think of them as free vouchers).
In the GPLx-or-later case the new authorizations can be any set of GPL versions within this range (GPLx, GPLx+z, GPLx+z or later, GPLx+z or GPLx+y and no other).
Emitting any other kind of authorization, however, needs and explicit act of the copyright holder.
Posted Jun 3, 2021 16:00 UTC (Thu)
by james (subscriber, #1325)
[Link] (13 responses)
If the copyright holder publishes that a particular work can be copied under x license, for example by "any person obtaining a copy of this software", then a recipient of that authorization may make what use they can of that license, because it is permission from the copyright holder.
That's true even if they received the software under another license.
So I don't think
As usual, IANAL.
Posted Jun 3, 2021 17:03 UTC (Thu)
by nim-nim (subscriber, #34454)
[Link] (12 responses)
>> each recipient is bond by the one-time terms of the license he was distributed software under, and no other.
> is accurate once they have received permission to use an alternative license from the copyright holder(s).
Receiving permission is exactly what a license is legal-wise. So yes you can receive a license to re-license. And you are bound by the conditions attached to the license to re-license :).
Basically, licensing is a one-time per-distribution permission, you can not avail yourself of permissions given to others, that’s why legally there is no such thing as “but it was originally licensed as X”, the only thing that counts is the license you received during your own procurement.
Posted Jun 3, 2021 17:08 UTC (Thu)
by nim-nim (subscriber, #34454)
[Link] (1 responses)
Posted Jun 3, 2021 17:12 UTC (Thu)
by nim-nim (subscriber, #34454)
[Link]
most downstream obligations when emitting new licenses.
Posted Jun 3, 2021 22:44 UTC (Thu)
by Wol (subscriber, #4433)
[Link] (8 responses)
But if the original licence grant is GPL3+, and the GPL does not give permission to relicence, then me exercising my right to choose the GPL4 does not remove my downstream's to right to choose GPL3.
Cheers,
Posted Jun 4, 2021 17:10 UTC (Fri)
by nim-nim (subscriber, #34454)
[Link] (7 responses)
Each of those *disjoint* licenses will propagate itself like a cancer, if copyleft, requiring someone that exercises one of them to pass a clone of it to the next one
Blind copy is not a neutral act for the legal system, it’s one exercise of the license, that is why the GPL bothers emitting a new grant, so no lawyer can argue the previous one was consumed by the copy.
But, the GPL3 will only propagate itself, and baring new wording not present in current GPL licenses, the GPL4 will only propagate itself too, etc.
Practically, when you are granted a set of licenses, you can choose to exercise only some of them, and those are the only ones that require you to propagate them (if they are copyleft licenses, proprietary and permissive licenses do not require propagation as-is by design).
Moreover, should you avail yourself of conditions that satisfy, say, the GPL4, but not the GPL3, you are not exercising the GPL3, and therefore you have no right to pass the GPL3 to the next recipient since the GPL3 does not authorize you to emit new GPL3 licenses unless you meet its terms.
That means that legally, in a GPL3-or-later case, should you receive something under GPL4 provisions, you can not redistribute under GPL3-or-later unless the GPL4 explicitly allows you to emit GPL3 permissions under the original author name (the or-later part works because the GPL license actually states what happens in this case).
It is actually critical legally that each license in the set stays disjoint because that’s the only thing that allows drafting licenses with different properties.
You could *theoretically* write a license that required to pass a clone of this license *and* *all* *other* *licenses* you may have been granted for a specific piece of code to the next user.
However, that is not the GPL as it is written today, and that would make a very impractical license, because those other licenses would not necessarily allow this kind of cloning in the first place, and those who do (copyleft licenses) attach conditions to the cloning, so you’d end up triggering clauses in all the other licenses you try to propagate.
And now you understand why this stuff is best left to lawyer and mixing terms from different licenses is a dangerous exercise.
Posted Jun 4, 2021 17:19 UTC (Fri)
by farnz (subscriber, #17727)
[Link] (6 responses)
The lawyers I've spoken with give different advice to you (possibly a jurisdiction difference?).
In terms of the analysis, the difference I hear is that the copyright holder is offering any third party the opportunity to accept a grant of permission directly from the copyright holder via the licence agreement on offer. As long as I have the ability to comply with the terms of the licence agreement, my permission to copy is direct from the copyright holder, and not via the person who gave me a copy.
In other words, provenance of the copy I have doesn't matter in theory, as long as I have a sufficiently complete copy to comply with all the licence terms on the copy. In practice, provenance matters because it helps demonstrate that my copy is sufficiently complete, or in the alternative, that I was an unwitting victim, not an active infringer, reducing penalties.
Posted Jun 4, 2021 18:49 UTC (Fri)
by nim-nim (subscriber, #34454)
[Link] (5 responses)
However, the only thing that *allows* and *requires* the person that gave you a copy to offer you this permission in the name of the copyright holder is the license itself.
Simply put, in the case the person that gave you a copy got its own copy by exercising the GPL4, and the GPL3 and 4 differ enough you can satisfy 4 without satisfying 3, and assuming the wording of the GPL4 is similar to the GPL3:
- this person may have no right to offer you GPL3 terms (unless the GPL4 allows him to offer GPL3 terms, and why would it that would defeat licensing hardening like the one that happened between v2 and v3). The authorization to offer you GPL3 terms in the name of the copyright holder stems from the GPL3 and the GPL3 was not exercised at the previous step
- this person has no obligation to offer you GPL3 terms (again, unless the GPL4 mandates offering GPL3 terms in that case). He may offer them or not, he did not exercise the license that obligated him to offer them
The behavior of the person that gave you a copy is 100% constrained by the license he exercised and by no other legal document.
Of course should you manage to reach a legal representative of the copyright holder he will (probably) happily offer you GPL3 terms so there is little incentive to constrain the set of licenses offered to the next recipient.
Remember, however, that there is no obligation for the original copyright holder to offer specific terms, neither to everyone nor forever, he may not like you, he may have decided since the original publication the GPL was a bad idea, that’s why the GPL3 authorizes recipients to deliver the same license in the name of the copyright holder to others regardless of what the current copyright owner opinion is.
Thus, the only way to extinguish GPLx from a GPLx-or-later case (absent changes or mixing with code under another license), is to convince the copyright holder to stop offering it, and to convince all recipients to offer it under a GPLx-or-later subset that does not contain GPLx (the copyright holder has the choice to drop all GPL versions, the recipients can only choose which versions of the or-later they want to avail themselves of).
The hypothetical case where the middle link did not satisfy enough GPL3 conditions to be allowed to offer it is a bit worrying, though I am hard pressed to imagine how anyone would be willing to offer things under the GPL3 while not complying with GPL3 conditions WRT to its own upstream. But, from a legal POW, the ability to offer is a benefit of the GPL3 and you can not avail yourself of benefits of a license without complying with it (think, authorized vendor).
You have to remember that the copyright system was designed to force recipients to ask permission from the legal representatives of the copyright owner, it does not lend itself easily to recursive license passing.
Posted Jun 7, 2021 10:17 UTC (Mon)
by farnz (subscriber, #17727)
[Link] (4 responses)
I think I see where your analysis differs from the ones I've received from lawyers in the past.
Consider a piece of code that we're sharing without modification. The copyright holder, Cheryl, has released it under a set of licences that anyone can take advantage of (4-clause BSD, GPLv2, GPLv3 or later, whatever - the key is that the licence terms on offer are on offer to anyone, not restricted to Dave); one or more of those licences permits onward copying.
Dave then chooses a licence to comply with, follows its terms (which results in a grant of permission from Cheryl to Dave under that licence), and gives Eve a copy.
Eve then wants to give me a copy. This is where I believe your analysis differs from that of the lawyers I've spoken to. In the version I've had, Eve looks at the licence terms on offer from Cheryl, selects a licence she can comply with, and can distribute to me under that licence. Eve's permission to copy is direct from Cheryl, and Dave is not involved at all - he was merely an intermediary, and is out of the picture after he's distributed to Eve.
In your analysis, Dave is the person offering permission to copy to Eve for Cheryl's code, and can thus restrict it - Eve is not getting permission directly from Cheryl to copy her code, but is getting permission from Dave who got it from Cheryl. In my jurisdiction, that sounds like quite a stretch - not least because it would mean that (for example) a store selling me a book can put extra restrictions on copying from that book without the copyright holder's consent.
Now, if Dave modifies the source, he is the copyright holder on his modifications, and can add constraints that way - but then for Dave to distribute to Eve, Dave has to ensure that it is possible for him to comply with Cheryl's licence offer while distributing her code, and Eve has to ensure that the intersection of Dave's licence offer and Cheryl's is something that she can comply with when distributing to me.
Posted Jun 7, 2021 16:56 UTC (Mon)
by Wol (subscriber, #4433)
[Link] (3 responses)
Cheers,
Posted Jun 10, 2021 18:48 UTC (Thu)
by khim (subscriber, #9252)
[Link] (2 responses)
Also: remember that FSF have already relicensed code which haven't belonged to them. I wonder how you have forgotten all about that and claim that Apache 2 is the only license which allows you to relicense code. No. It's not the only one. GFDL is another. It specifically allows you to relicense code from GFDL to CC-BY-SA in certain circumstances. Wikipedia was moved from GDFL to entirely different license, CC-BY-SA. Compare some random article in year 2008 to what we have today. GFDL is not even mentioned, you need to dig deeply to even know it was ever there and then spend a lot of efforts to recover old, GFDL-licensed version. Note that while there was note among Wikipedia editors and majority have voted for the change thousands of editors voted against it. Yet their contributions were relicensed along with others. Simply because FSF had that right. How is that different from relicensing of GCC from GPLv3+ to GPLv4+ from practical POV?
Posted Jun 10, 2021 18:55 UTC (Thu)
by farnz (subscriber, #17727)
[Link] (1 responses)
In practical terms, what matters is that the copyright holders gave Wikipedia a licence under GFDL 1.2 or any later version, and Wikipedia used section 11 of GFDL 1.3 to relicense. Had the copyright holders only offered Wikipedia a licence under GFDL 1.2 (and removed the "any later version" bit), Wikipedia's actions would be a copyright breach, and the copyright holders could pursue Wikipedia for remedies under copyright law.
It's the multi-licensing that allows Wikipedia to say "GFDL 1.3 has this clause which we will use", and that licence was agreed to by the copyright holders, even if they did not want Wikipedia to use that clause.
Posted Jun 10, 2021 19:16 UTC (Thu)
by khim (subscriber, #9252)
[Link]
Well… GCC is also licensed under “GPLv3 or later” conditions. And there are no plans to change that.
Posted Jun 7, 2021 16:27 UTC (Mon)
by Wol (subscriber, #4433)
[Link]
Exactly. The licence YOU RECEIVED was GPL2+ (let's say). So whether you comply with the terms of the text of version 2, or the text of version 3, is irrelevant. You HAVE TO PASS ON GPL2+.
Of course, by adding your own code which you licence GPL3+, you take away the PRACTICAL ABILITY of your downstream to comply with GPL2, but that still means that the original code that you haven't touched is still GPL2+.
Cheers,
Posted Jun 7, 2021 16:21 UTC (Mon)
by Wol (subscriber, #4433)
[Link]
But the only EVIDENCE of such authorisation, is the copyright holder's statement of such, and thus these new authorisations MUST be IDENTICAL to the original.
Cheers,
GCC drops its copyright-assignment requirement
> Yes, they do, or at least they did until this.
GCC drops its copyright-assignment requirement
I think you've slightly contradicted yourself there.
GCC drops its copyright-assignment requirement
Emitting any other kind of authorization, however, needs and explicit act of the copyright holder.
That bit's true. The authorization just doesn't have to come with the software, and often doesn't (think about buying extra licenses to proprietary programs, for example).
each recipient is bond by the one-time terms of the license he was distributed software under, and no other.
is accurate once they have received permission to use an alternative license from the copyright holder(s).
GCC drops its copyright-assignment requirement
GCC drops its copyright-assignment requirement
GCC drops its copyright-assignment requirement
GCC drops its copyright-assignment requirement
Wol
GCC drops its copyright-assignment requirement
GCC drops its copyright-assignment requirement
GCC drops its copyright-assignment requirement
GCC drops its copyright-assignment requirement
GCC drops its copyright-assignment requirement
Wol
GCC drops its copyright-assignment requirement
GCC drops its copyright-assignment requirement
GCC drops its copyright-assignment requirement
GCC drops its copyright-assignment requirement
Wol
GCC drops its copyright-assignment requirement
Wol
