-
Notifications
You must be signed in to change notification settings - Fork 944
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Replace MarchingSquaresJS in turf-isolines and turf-isobands to eliminate license ambiguities #2723
Comments
Thanks for pointing this out @alynn-coefficient. It wasn't something I was familiar with. Looking at the license packaged with marchingsquares, it includes the following paragraph:
And then further down restates this a different way:
That reads to me (admittedly not a lawyer) like marchingsquares is specifically excusing third party projects from having to also be bound by the GPL. Would you interpret that a different way? |
Haven't heard back on this so will close. If anyone has a counterpoint or more detail on actions we need to take please reopen. Appreciate the effort put in to making sure Turf is doing the right thing. |
I don't really have a solution or know much about license stuff, but just voicing my concern that our client is very strict about licenses in our apps and this issue is preventing us from updating from turf 6 to 7. The issue being that we are not allowed to use packages that use "AGPL" license. |
@smallsaucepan the AGPL forbids modifying the license text, so an additional clause by MarchingSquaresJS cannot be accepted. Modification of the license text is limited in scope, see section 7. As it stands MarchingSquaresJS is still bound by the terms of the AGPL, therefore so is turf-isolines. Please arrange a different license or use a different library. As it stands we consider Turfjs to be AGPL. |
Thanks for running through that @nicorikken. From our point of view we've taken the license on in good faith, and are adhering to the intent of the author. Unfortunately for everyone, they chose to express that intent with a license that is at best ambiguous. In hindsight the LGPL (for example) might have achieved the same outcome with fewer steps, and fewer unintended consequences. What's undeniable is that no one seems very fond of the AGPL, and it's likely holding people back from adopting Turf. And adopting Turf is something we very much want to support. With that in mind, we are going to make it a priority to replace the MarchingSquaresJS code with something that can be inarguably published under Turf's existing MIT license. If that can't be done in a timely manner, we'll consider more drastic action such as temporarily removing the isolines and isobands modules from Turf until it can be. That seems to be the most balanced path forward for the project, our users, and the community. I'll reopen this issue, and reframe it as an effort to remove confusingly licensed code that's presenting a barrier to Turf adoption. |
turf-isolines
and turf-isolines
licenses are incorrect
Version: 7.1.0
turf-isolines
depends onmarchingsquares
, which is licensed under the GNU Affero General Public License. As a derivative work,turf-isolines
itself must be compatibly licensed under the GPL or AGPL by the terms of themarchingsquares
license – currently it purports to be under the MIT license.Either it should be relicensed under GPL or AGPL, or the dependency on
marchingsquares
should be removed and replaced by something permissively licensed.The same applies to
turf-isobands
.The text was updated successfully, but these errors were encountered: