4

This is my understanding about how software licenses work in most jurisdictions — I add this, because it might help to clearify things:

  1. When I attach a license to a program, the license governs my copyright.
  2. You can only change the license in case you are compliant with the current license terms or all the copyright-holders agree to change it.
  3. Because the license governs my copyright it also governs how license updates work.
    • In case nothing is specified in the license on how license updates work — copyright law does apply.
    • In case it is specified how license updates work the license entirely governs how license updates work. For example oversimplified when my license says you can do whatever you want with that code even attach another license, then what is stated in there counts and copyright law is superseded by the license.

Quotation from the GPLv3:

  1. Revised Versions of this License.

The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.

Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation.

If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program.

Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version.

Question:

  1. Does that mean that when you specify GPLv3 or any later version that anybody who receives the code may add a later version that may not be necessarily compliant with the current version? I mean since from my current understanding the license governs the copyright (see point 3 above) and the license is unclear at that point, I ask my self this question.
  2. Does that mean that when you specify an explicit GPL version number without having the "or any later version" that implicitly anybody who receives the code cannot add another GPL version that is not compliant with the current version?
  • 1
    A minor nitpick - the license governs your customer's use of your product, your copyright gives you the right to license. Your license does not govern your copyright since you can sell/give away your product under many different licenses. You can for example sell/give away both a proprietary and GPLv3 versions of exactly the same product – slebetman Jan 8 at 2:11
6
  1. Does that mean that when you specify GPLv3 or any later version that anybody who receives the code may add a later version that may not be necessarily compliant with the current version?

Yes, if you indicate your license as "GPL version X or any later version" then recipients may operate under the requirements of GPL version X or any higher-numbered version, despite the fact that versions of the GPL are incompatible with one another (and future versions may be as well). This is explicit in the license text you quote:

If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation.

It is true, generally, that a downstream recipient may not change the license terms. However, the licensor has explicitly allows the licensee to remain in compliance with the grant when following different terms, per the GPL's language "you have the option of following the terms and conditions... of any later version". To be clear, this isn't a change of the licensor's terms; rather, it is an option within the licensor's original terms that always existed.


  1. Does that mean that when you specify an explicit GPL version number without having the "or any later version" that implicitly anybody who receives the code cannot add another GPL version that is not compliant with the current version?

Indeed, the quoted section above is a conditional statement. If the licensor chooses not to meet the condition when licensing the software (i.e., they choose not to "specif[y] that a certain numbered version of the GNU General Public License “or any later version” applies to it") then the associated permissions under that conditional are not in effect.

  • Is how "conditional statements" work something that is included in some legal text that governs software licensing laws or is this just basic understanding and that is assumed everybody agrees upon :)? – Ini Jan 7 at 14:06
  • 2
    @Ini Nope, I'm just referring to the linguistic concept of conditionals :) The GPLv3 has many, such as "This alternative is allowed... only if you received the object code with such an offer" and "If the place to copy the object code is a network server, the Corresponding Source may be on a different server," among others. If some condition is met, then some requirements or permissions apply (otherwise, they do not). – apsillers Jan 7 at 14:54
2
  1. If you specify "GNU GPL v3" without "or later" then that is the only license other people can distribute the code under. That's why Linux is still licensed under version 2.

  2. If you specify "GNU GPL v3 or later" then you are multi-licensing your code. The two licenses do not have to be compatible, and based on previous license updates, will usually be at most one-way compatible. Only do this if you trust the organisation not to publish a new license which goes against the spirit of the current license. You can always republish it if they release a new version in the future.

  • You reversed the points (1. and 2.). Can you add some references if possible eg. about the multi-licensing stuff? You can only republish easily in case you hold all copyright. You can also specify a proxy, then trust requirements would be mitigated. – Ini Jan 7 at 13:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.