vs.

AGPLv2 vs. AGPLv3

What's the Difference?

AGPLv2 and AGPLv3 are both versions of the Affero General Public License, a copyleft license designed to ensure that users of a software program have access to the source code and any modifications made to it. However, AGPLv3 includes additional provisions that address issues such as software patents, compatibility with other licenses, and the use of software over a network. AGPLv3 also clarifies certain language and updates the license to be more in line with current legal standards. Overall, AGPLv3 is considered to be a more comprehensive and updated version of the license compared to AGPLv2.

Comparison

AttributeAGPLv2AGPLv3
LicensingStrong copyleftStrong copyleft
Compatibility with GPLCompatibleCompatible
Network useRequires complete corresponding source code for network useRequires complete corresponding source code for network use
Derived worksMust provide complete corresponding source code for derived worksMust provide complete corresponding source code for derived works
Patent retaliation clauseNot includedIncluded

Further Detail

Introduction

The GNU Affero General Public License (AGPL) is a copyleft license designed to ensure that users who interact with software over a network have access to the source code of that software. The AGPLv2 and AGPLv3 are two versions of this license, each with its own set of attributes and provisions. In this article, we will compare the key differences between AGPLv2 and AGPLv3 to help developers and organizations make informed decisions about which version to use for their projects.

Scope of Application

One of the main differences between AGPLv2 and AGPLv3 is the scope of their application. AGPLv2 applies to software that is distributed over a network, while AGPLv3 extends this requirement to cover software that is modified and run on a network. This means that under AGPLv3, even if the software is not distributed to users, but is instead modified and run on a server, the source code must still be made available to those who interact with it over the network.

Compatibility

Another important consideration when choosing between AGPLv2 and AGPLv3 is compatibility with other licenses. AGPLv2 is not compatible with the GNU General Public License (GPL) version 2, which means that code licensed under AGPLv2 cannot be combined with code licensed under GPL version 2. On the other hand, AGPLv3 is compatible with GPL version 3, allowing developers to combine code from projects licensed under these two licenses.

Patent Protection

AGPLv3 includes a provision that offers patent protection to users of the software. This provision states that if a user sues someone for patent infringement related to the software, their rights to use the software under the AGPLv3 license will be terminated. This clause is not present in AGPLv2, which means that users of software licensed under AGPLv2 do not have the same level of protection against patent lawsuits.

Additional Permissions

AGPLv3 includes additional permissions that are not present in AGPLv2. These additional permissions clarify certain aspects of the license and provide more flexibility to developers. For example, AGPLv3 includes a provision that allows developers to convey a work based on the software under a different license, as long as the original work remains available under the AGPLv3 license. This additional flexibility can be beneficial for developers who want to use AGPLv3 in their projects.

Termination of License

AGPLv3 includes a provision that allows the license to be terminated if the licensee fails to comply with the terms of the license. This termination clause is not present in AGPLv2, which means that users of software licensed under AGPLv2 do not risk losing their rights to use the software if they fail to comply with the license terms. The inclusion of a termination clause in AGPLv3 adds an additional layer of enforcement to ensure compliance with the license terms.

Conclusion

In conclusion, the choice between AGPLv2 and AGPLv3 depends on the specific needs and requirements of the project. AGPLv3 offers additional protections and flexibility compared to AGPLv2, such as patent protection, compatibility with GPL version 3, and additional permissions. However, AGPLv2 may be more suitable for projects that do not require these additional provisions and are compatible with the limitations of AGPLv2. Ultimately, developers and organizations should carefully consider the differences between AGPLv2 and AGPLv3 to determine which version best suits their needs.

Comparisons may contain inaccurate information about people, places, or facts. Please report any issues.