[License-discuss] What's wrong with the AGPL?

Matt Wilson msw at linux.com
Thu Jun 13 23:48:29 UTC 2024


On Thu, Jun 13, 2024 at 3:36 PM Dirk Riehle <dirk at riehle.org> wrote:
>
> Hello everyone,
>
> I wrote this email three times and discarded it; I simply don't know how
> to ask.
>
> Final try. If I believe various representatives (on Twitter and
> elsewhere) of companies like AWS, they believe they can use AGPL

First, I think it's important to recognize that when I post things
on Twitter from my personal account, I'm doing so in an individual
capacity. I try to make it clear when I am representing my employer
through social media channels (this is rare) and when I'm speaking
only for myself (this is the default case).

The same applies to this reply on license-discuss@ from my personal email.

> licensed code and the copyleft effect is wholly contained/doesn't affect
> their tech stack at all. Those who pushed source-available seem to
> agree; the SSPL was an attempt to a better copyleft license in the eyes
> of their creators, irrespective of this list's conclusion that it was a
> discriminatory license.

Indeed, the lack of a "viral" effect for the copyleft obligations of
AGPLv3 licensed programs to "infect" obviously independent creative works
of software is not only a common position of many who offer software
as a service, but also of producers of software who adopted AGPLv3 in
the past.

The design of AGPLv3--like GPLv3 and GPLv2 before it--is to grant the
recipient of a copy of software all the necessary permissions so they
may fully enjoy the Four Freedoms [0] and use the program in any way they
wish, which includes offering the software as a service. The thing that
is different about AGPLv3 is an additional obligation to provide the
complete corresponding source code to modified versions of the program
that are made available over a network to the user(s) of the software.

The blog post that MongoDB published on the matter is no longer
on their website, but it's still in the Internet Archive. [1]

They wrote:
   MongoDB is released under the GNU Affero General Public License.
   This Free Software Foundation license is fairly new, and thus
   we wanted to talk about how this license differs from GPL.

   Our goal with using AGPL is to preserve the concept of copyleft
   with MongoDB.  With traditional GPL, copyleft was associate
   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.

   To say this another way: if you modify the core database 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 mongo
   be published.  The copyleft applies only to the mongod and mongos
   database programs.  This is why Mongo DB drivers are all licensed
   under an Apache license.  You application, even though it talks to
   the database, is a separate program and “work”.
(the typos in the original have been preserved)

My interpretation of their historical position is this: the APLv3 applies
to the "core database source code", and not to anything that is a separate
"work". To make it abundantly clear that AGPLv3 obligations do not propagate
to other works, like applications that connect to the database, they
published Apache v2 licensed drivers. My personal position is that this
is not strictly necessary, but it's nice to have that clarity from the
producer of a AGPLv3 licensed program.

> Why is that? I look at the definition of "modified code" in the AGPL
> license texts and to me it seems to do the trick (copyleft effect). I
> find the explanation of conveyance to users less clear i.e. how the
> traditional distribution is defined.
>
> Is there any recognized published statement that explains whether the
> AGPL achieves a network copyleft effect as intended or not? And if the
> conclusion is that it doesn't what's the alternative if you want this
> effect?

I think that there are many examples that show that the AGPLv3 works
as intended. Modified versions of AGPLv3 licensed program have been made
available over a network without complete corresponding source code. The
authors of those programs reminded license violators of their obligations,
and at least some made changes to get back into compliance.

In my personal view, the narrative that AGPLv3 is defective is a flawed one.
AGPLv3 is apparantly functional for its purpose: to give clear permission to
offer FOSS as a service (one among many useful purposes), as long as you
fulfill the obligations (importantly, to provide the complete corresponding
source for a modified version to those who can access the program over
the network).

Some software producers may have adopted AGPLv3 to offer the software they made
freely available in a "freemium" business model with the expectation that
large corporate users, Managed Service Providers, Application Service Providers,
hosting companies, or Cloud Service Providers would elect to use alternative
proprietary license terms under a commercial agreement than rely on the
permissions that the AGPLv3 gives everyone without discrimination.
When it became
apparent that companies are willing to comply with FOSS license terms, including
network copyleft obligations, so they could enjoy irrevocable Software Freedom
AGPLv3 naturally had to be abandoned. The author(s) of software who maintain
unencumbered access to exert the exclusive rights for creative works of software
have the right to change their license terms as they see fit. That doesn't
mean that the terms are defective for others' purposes.

The fact that some very large cloud providers offered AGPLv3 software as a
service and published their modified version not only to users of their service,
but to the public via GitHub [2], should be a demonstration of what is
right about AGPLv3, not what is wrong.

> Thanks for bearing with me.
>
> Dirk

[0] https://en.wikipedia.org/wiki/The_Free_Software_Definition
[1] https://web.archive.org/web/20180619012723/https://www.mongodb.com/blog/post/the-agpl
[2] https://github.com/Tencent/CMONGO



More information about the License-discuss mailing list