We recently published a number of updates to our licensing materials. While we generally post individual announcements for these types of important changes, there were so many in such a short span that we needed to combine them all in one place. We recently added two licenses to our list of Various Licenses and Comments about Them, updated our article on License Compatibility and Relicensing, and added a new entry to the Frequently Asked Questions about the GNU Licenses. What follows is a brief rundown on those changes, and how you can learn more about free software licensing.

Commons Clause

We added the Commons Clause to our list of nonfree licenses. Not a stand-alone license in and of itself, it is meant to be added to an existing free license to prevent using the work commercially, rendering the work nonfree. It's particularly nasty given that the name, and the fact that it is attached to pre-existing free licenses, may make it seem as if the work is still free software.

If a previously existing project that was under a free license adds the Commons Clause, users should work to fork that program and continue using it under the free license. If it isn't worth forking, users should simply avoid the package. We are glad to see that in the case of Redis modules using the Commons Clause, people are stepping up to maintain free versions.

The Fraunhofer FDK AAC license

We recently added the Fraunhofer FDK AAC license to our list of licenses. This is a free license, incompatible with any version of the GNU General Public License (GNU GPL), but also contains a potential trap. While Fraunhofer provides a copyright license here, they explicitly decline to grant any patent license. In fact, they direct users to contact them to obtain a patent license. Users should act with caution in determining whether they feel comfortable using works under this license.

License Compatibility

In September, we added a new section to our article on License Compatibility and Relicensing, addressing combinations of code. This new section helps you to simplify the picture when dealing with a project that combines code under multiple compatible licenses. If complying with one license necessarily means compliance with the other, then you can reduce the question of complying with both in the following manner:

"[Y]ou start with a list of all the pertinent licenses. Then you can delete from the list any license which is subsumed by another in the list.

We say that license A subsumes license B when compliance with license A implies compliance with license B."

The updated section then goes on to list various examples of this in action. The list may be expanded in the future to cover more cases.

Translated Code

Finally, there is a new addition to our Frequently Asked Questions about the GNU Licenses, with an entry explaining what the GNU GPL says about translating code into another programming language. In short, since copyright law treats a translation as a modified version of a work, translating a program into another programming language has the same consequences as creating a modified version.

How to learn more

These updates touch upon quite a few different resources that we make available, but that's only the start of the materials we provide that can help you to understand free software licensing. For an overview of the resources available, visit us at https://www.fsf.org/licensing, or if you have questions, you can ask the Compliance Lab directly by emailing licensing@fsf.org. The Compliance Lab is our resource on free software licensing, providing materials and expertise to free software users and developers everywhere. Here's what you can do to help keep this vital program going strong: