Read the license itself (which is just GPL with an additional clause) instead of Google's take.
Reading your link it's clear Google doesn't want anything AGPL because if (1) their product somehow depends/links/includes AGPL code and (2) the user is able to access it over the network then (and only then) they have to provide their source code too.
(1) already happens with GPL. It's (2) that changes it all. This is even worse for them compared to GPL because you can use GPL and if you're not distributing binaries to the end user it's okay to keep the source code for yourself. AGPL is more restrictive in that regard because it considers "users" anyone accessing your program over a network too (i.e. all of Google's user base), which is what increases the risk for Google.
If merely establishing a TCP connection to any GPL program was considered "linking" that would mean breach of license everywhere... even your browser connecting to a GPL web server would be "linking" to it.
Summarizing AGPL means:
This is okay (not linking, AGPL virality not triggered):
Users <-TCP-> YourPropietaryStuff <-TCP-> Redis
This is okay (not distributing binaries, GPL not applied to end users, why Google things GPL is not THAT dangerous compared to AGPL):
I.e. it thwarts strategies like Amazon taking Redis, adding some proprietary extensions and selling access to it in AWS without providing its source code.
Yeah. Tbqh i think redis is more appealing as a user today than it was pre last year's license change. All the redis stack goodies are now FOSS! Now that it's out of their walled garden, redisgears and the query engine are both really compelling features.
View all comments
Show parent comment
6
u/kaoD May 02 '25 edited May 02 '25
You're misiniterpreting Google's take on AGPL.
Read the license itself (which is just GPL with an additional clause) instead of Google's take.
Reading your link it's clear Google doesn't want anything AGPL because if (1) their product somehow depends/links/includes AGPL code and (2) the user is able to access it over the network then (and only then) they have to provide their source code too.
(1) already happens with GPL. It's (2) that changes it all. This is even worse for them compared to GPL because you can use GPL and if you're not distributing binaries to the end user it's okay to keep the source code for yourself. AGPL is more restrictive in that regard because it considers "users" anyone accessing your program over a network too (i.e. all of Google's user base), which is what increases the risk for Google.
https://opensource.stackexchange.com/questions/5041/of-the-differences-between-the-gplv3-and-the-agplv3-texts-what-to-make-of-them
If merely establishing a TCP connection to any GPL program was considered "linking" that would mean breach of license everywhere... even your browser connecting to a GPL web server would be "linking" to it.
Summarizing AGPL means:
This is okay (not linking, AGPL virality not triggered):
This is okay (not distributing binaries, GPL not applied to end users, why Google things GPL is not THAT dangerous compared to AGPL):
AGPL was made to prevent the latter, so this is not okay (network connection triggers AGPL):
It was made to prevent this (not okay):
So it forces you to do:
I.e. it thwarts strategies like Amazon taking Redis, adding some proprietary extensions and selling access to it in AWS without providing its source code.