Redis on Flash with IBM POWER compared to standard systems

Why Redis Labs’ Modules are AGPL

Yiftach Shoolman by Yiftach Shoolman

Redis Labs’ Modules are released under the GNU Affero General Public License​ (AGPL)​. This Free Software Foundation license is fairly new, and thus I wanted to ​explain why we chose this license.

Our goal with using AGPL is to ​add the concept of copyleft ​for ​enhanced Redis functionality.

The core Redis Open Source Project is based on the three clause BSD license, which allows unlimited redistribution for any purpose as long as its’ copyright notices and the license disclaimers of warranty are maintained. We wanted to keep our modules open source, so that everyone can freely use them, enhance them and fix issues. On the other hand, we are a commercial entity that invests a lot of time, effort and money developing these modules and verifying they can work under extreme deployment conditions. Therefore, we wanted to make sure no one else can resell them for commercial purposes.

With GPL, copyleft was associated with the concept of distribution of software. The problem is that nowadays, distribution of software is rare: things tend to run in the cloud. AGPL fixes this “loophole” in GPL by saying that if you use the software over a network, you are bound by the copyleft. Other than that, the license is virtually the same as GPL v3. In other words, if you modify a Redis Labs Module source code, the goal is that you have to contribute those modifications back to the community.

Note however that it is NOT required that applications using Redis Labs’ Modules be published. The copyleft applies only to the modules programs. Your application, even though it talks to the module, is a separate program and can use the module unrestricted.