What is the difference between GPLv2 and GPLv3?
http://www.ifross.org/en/what-difference-between-gplv2-and-gplv3

GPLv3 of June 29, 2007 contains the basic intent of GPLv2 and is an Open Source license with a strict copyleft (→ What types of licenses are there for Open Source software, and how do they differ?) However, the language of the license text was strongly amended and is much more comprehensive in response to technical and legal changes and international license exchange.

The new license version contains a series of clauses that address questions that were not or were only insufficiently covered in version 2 of the GPL. The most important new regulations are as follows:

a) GPLv3 contains compatibility regulations that make it easier than before to combine GPL code with code that was published under different licenses (→ What is license compatibility?). This concerns in particular code under Apache license v. 2.0.

b) Regulations concerning digital rights management were inserted to keep GPL software from being changed at will because users appealed to the legal regulations to be protected by technical protective measures (such as the DMCA or copyright directive). The effectiveness in practice of the contractual regulations in the GPL has yet to be seen.

c) The GPLv3 contains an explicit patent license, according to which people who license a program under the GPL license both copyrights as well as patents to the extent that this is necessary to use the code licensed by them. A comprehensive patent license is not thereby granted. Furthermore, the new patent clause attempts to protect the user from the consequences of agreements between patent owners and licensees of the GPL that only benefit some of the licensees (corresponding to the Microsoft/Novell deal). The licensees are required to ensure that every user enjoys such advantages (patent license or release from claims), or that no one can profit from them.

d) In contrast to the GPLv2, the GPLv3 clearly states that there is no requirement to disclose the source code in an ASP use of GPL programs as long as a copy of the software is not sent to the client. If the copyleft effect is to be extended to ASP use (→ When does independently developed software have to be licensed under the GPL?), the Affero General Public License, Version 3 (AGPL) must be applied that only differs from the GPLv3 in this regard.


When is GPLv2 used, and when is GPLv3 used?
http://www.ifross.org/en/when-gplv2-used-and-when-gplv3-used
License holders can choose if they want to use version 2 or version 3 of the software if the following reference is provided:

"this program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.”


With which licenses is the GPLv3 compatible?
http://www.ifross.org/en/which-licenses-gplv3-compatible\
The GPLv3 is compatible with the following licenses (but not vice versa):

    Apache License, Version 2
    Affero General Public License, Version 3 (see sec. 13 of GPLv3)
    Lesser General Public License, Versions 2, 2.1 and 3 (LGPL)
    BSD license without the advertising clause
    CeCILL (CONTRAT DE LICENCE DE LOGICIEL LIBRE CeCILL)
    Artistic License 2.0
    Zope Public License, Version 2.0 und 2.1

Note: This means OSS under a listed license can generally be used for creating OSS under GPLv3. It does not mean OSS under the GPLv3 may be incorporated into OSS which uses one of these licenses.

If there is no reference to the license version, you can also choose between version 2 and version 3.

The licenseholder is only restricted to a specific license version by the phrases "version 2 only," or version 2” without the added phrase "any later version". This is the case with the Linux kernel that contains such a reference by Linus Torvalds in the COPYING file. Source text under "version 3 of the license or (at your option) at any later version" cannot be introduced into the Linux kernel, and conversely, code that is licensed as "version 2 only" cannot be used in projects that are already licensed under GPLv3. GPLv2 and GPLv3 are then incompatibl

Reply via email to