Free Software Foundation rides to defend AGPLv3 against Neo4j license add-ons
FOSS bods file amicus brief in hope of preserving core GNU tenet of freedom forever
The Free Software Foundation (FSF) on Monday backed a lone developer's brave effort to overturn a pivotal court ruling that threatens to undermine the AGPLv3 – the foundation's GNU Affero General Public License, version 3.
At stake is the future of not just the AGPLv3, but the FSF's widely used GNU Public License it is largely based on, and the software covered by those agreements. A core tenet of the GPL series is that free software remains free forever, and this is woven into the licenses' fine print. This ongoing legal battle is a matter of whether people can alter those licenses and redistribute code as they see fit in a non-free way, or if they must stick to the terms of an agreement that says the terms cannot be changed.
History
As we reported last week, database maker Neo4j received a partial summary judgment in 2021 for claims of trademark and copyright infringement against defendant John Mark Suhy and his two companies PureThink and iGov. The database biz and its Swedish subsidiary sued Suhy in November 2018 for offering customers a forked version of Neo4j Enterprise Edition (EE), which in version 3.4, released in May 2018, had been offered under both a paid-for commercial license called the Neo4j Sweden Software License (NSSL) and for free under the open source AGPLv3 license.
With the release of version 3.5, Neo4j's software was offered only under the NSSL, which combined the AGPLv3 with the so-called Commons Clause. The Commons Clause prohibits commercial resale or support services. Crucially, the AGPLv3 at the core of the NSSL includes language that says any restrictions or requirements added to the license are removable. Adding the Commons Clause to the AGPLv3 is arguably at odds with the AGPLv3. The base license allows added-on terms to be stripped.
Suhy, who had forked the Neo4j software and released it as ONgDB prior to that licensing change, updated ONgDB to version 3.5 of Neo4j and made it available for free under the AGPLv3. He did so based on his view that the underlying license, the AGPLv3, allowed him to do that, to file off the Common Cause part of the NSSL and continue making the software available under the base AGPLv3 open source license.
By doing so, his rival firms and others cost Neo4j millions of dollars, as enterprise customers chose the more affordable open source option, leading to the 2018 legal fight. It's important to understand that Suhy's companies sold support services for ONgDB, which is allowed under the AGPLv3, but not under the NSSL.
The California district court judge who initially heard the case ruled in favor of Neo4j, finding that the database maker could offer its software under whatever terms it chose, despite the contrary language in the AGPLv3.
Companies can re-license GPL code under different terms by removing certain passages so it's clear the code is not offered under the GPL – the license has to be called something else. The issue in this case is that the NSSL included the AGPLv3 verbatim alongside the Commons Clause, making a single license out of two that cannot be reconciled.
- How's that open source licensing coming along? That well, huh?
- Do we really need another non-open source available license?
- The battle between open source and 'sort of' open source is as old as software
- Open Source world's Bruce Perens emits draft Post-Open Zero Cost License
Last September, Suhy, facing more than $600,000 in penalties and interest, appealed to the US Court of Appeals for the Ninth Circuit to have the California district court's decision reconsidered.
If the Ninth Circuit upholds the ruling, it's likely to create a binding precedent that would limit one of the major freedoms that AGPLv3 and other GPL licenses aim to protect – the ability to remove restrictions added to GPL licensed code.
And now
The FSF had been working on an amicus brief [PDF] in support of Suhy last week when The Register inquired about the matter though declined to say on the record that it planned to intervene.
On Monday, the FSF asked the court for permission to file its brief, citing Neo4j's effort to have a similar brief from the Software Freedom Conservancy (SFC), another open source advocacy group, disallowed.
... to set the record straight regarding the FSF and its intent in drafting the GNU licenses – to ensure the protection of software freedom
"As our amicus brief explains, the FSF previously pushed Neo4j to correct their abuse of the AGPL," said Zoë Kooyman, executive director of the FSF, in a statement.
"Their misstatements and baseless arguments in their opposition have now compelled the FSF to step in again, to set the record straight regarding the FSF and its intent in drafting the GNU licenses – to ensure the protection of software freedom."
The FSF notes that it sent a cease-and-desist letter to Neo4j in November 2023 in an effort to have the company remove references to the AGPLv3 from its files. And Neo4j subsequently complied, which the FSF takes as an implicit concession to the correctness of its position about the Commons Clause.
The intervention of the FSF may help the SFC arguments get heard.
As Neo4j notes in its filing [PDF] last week to disallow the SFC brief, the district court excluded the opinion offered by SFC policy fellow Bradley Kuhn about how he believed the FSF would interpret the NSSL – the AGPLv3 and Commons Clause mashup – in part because it was inadmissible hearsay.
In its filing with the court, the FSF challenges the argument that neither the SFC nor the FSF can speak to the purpose of the AGPLv3.
"Appellees [Neo4j and its subsidiary] next imply that any discussion of the FSF’s intent in drafting the AGPL amounts to speculation and hearsay because neither the SFC nor FSF are the licensor or a party to the actual license at issue," the FSF argues.
"Appellees completely ignore the fact that the FSF is both the drafter and the licensor of the AGPL, which the appellees themselves concede forms the basis for the NSSL – Neo4j’s license for its Neo4j Enterprise Edition software."
Kooyman said, "The GNU licenses were designed to empower users and we will continue to make sure this is understood."
We have asked Neo4j for any comment on the case and the FSF's show of support for Suhy. ®