citusdata / django-multitenant

Python/Django support for distributed multi-tenant databases like Postgres+Citus
MIT License
712 stars 117 forks source link

Remove all AGPL code (blocker for usage) and use MIT license only #85

Closed jacek99 closed 4 years ago

jacek99 commented 4 years ago

The usage of AGPL viral licensed code in some of this implementation and it viral nature makes it impossible to use django-multitenant in a commercial application.

Please remove all AGPL code that was copied from other projects and provide a clean room equivalent implementation, all 100% under MIT license.

jacek99 commented 4 years ago

Our legal & architecture team explicitly prohibited us from integrating django-multitenant in any way due to the license. Even though we're an Azure shop and could easily use Hyperscale PgSQL on Azure.

jacek99 commented 4 years ago

hi any updates on this?

florianmartens commented 4 years ago

@jacek99

Is this really true? I thought AGPL license just means that you have to open-source adjusted versions of the library. So if you work with the library and decide to enhance it somehow, you have to make the code public under a AGPL license as well.

I shouldn't have implications for your commercial use. Or does it mean, that I have to then publish my entire app when I use the code?

jacek99 commented 4 years ago

AGPL is a viral license, just like GPL. If you have any AGPL code in your library, then by definition that entire library needs to be AGPL. And then any library that uses this is bound by AGPL as well due to its viral nature.

Our legal team has put AGPL on the banned list, together with the GPL license.

Only the LGPL (Lesser GPL) is a non-viral variant.

jacek99 commented 4 years ago

RIght from Wikipedia:

https://en.wikipedia.org/wiki/Affero_General_Public_License

Both versions of the Affero GPL were designed to close a perceived application service provider (ASP) loophole in the ordinary GPL, where, by using but not distributing the software, the copyleft provisions are not triggered. Each version differs from the version of the GNU GPL on which it is based in having an added provision addressing use of software over a computer network. This provision requires that the full source code be made available to any network user of the AGPL-licensed work, typically a web application.

louiseGrandjonc commented 4 years ago

Hi @jacek99

We have a PR created to change the licence. Initially this library was based on another one with the AGPL licence, which is why we had this one. As we removed almost every line from this dependency, we did a cleanup of the last elements. It's being reviewed by our legal team to make sure we can indeed change to MIT licence.

mlech-reef commented 4 years ago

Hi @louiseGrandjonc,

Are you going to create a release after the PR is merged?

mlech-reef commented 4 years ago

I see the #60 is open since September 2019. When can we expect to be merged and released? This AGPL license is preventing us from using your library too.

louiseGrandjonc commented 4 years ago

We will release when it's merged. We expect to be able to merge it in the next couple weeks if we get approval from our legal team.

jacek99 commented 4 years ago

thank you for addressing this, much appreciated

louiseGrandjonc commented 4 years ago

Hi everyone,

the new version 2.2.3 was released with the MIT licence. I hope it solves your issue!

florianmartens commented 4 years ago

Fantastic!!!

mlech-reef commented 4 years ago

Great! Thank you