This is my understanding about how software licenses work in most jurisdictions — I add this, because it might help to clearify things:
- When I attach a license to a program, the license governs my copyright.
- 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.
- 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:
- 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.
- 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.
- 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?