TextAttack
TextAttack copied to clipboard
MIT license is invalid - multiple GPL3 dependencies used
This package uses a small number of GPL/lGPL dependencies/sub-dependencies.
My understanding is that this means that the MIT license of this package is invalid, as GPL is a viral/copyleft license.
Packages are:
- language-tool-python
- FuzzyTM
- gensim
- num2words
According to python-license-checker:
FuzzyTM (2.0.5): ['GNU General Public License v3.0']
dependencies:
FuzzyTM << gensim << bpemb << flair << textattack
FuzzyTM << gensim << flair
gensim (4.3.0): ['LGPL-2.1-only']
dependencies:
gensim << bpemb << flair << textattack
gensim << flair
language-tool-python (2.7.1): ['GNU GPL']
dependency:
language-tool-python << textattack
num2words (0.5.12): ['GNU Library or Lesser General Public License (LGPL)']
dependency:
num2words << textattack
Gensim is released under the LGPL, which allows re-use in non-copyleft projects, so no change is required by TextAttack to conform with Gensim's licensing. (This same analysis likely applies to LGPL-licensed num2words
.)
It appears FuzzyTM
is only being pulled-in here because Gensim was declaring FuzzyTM
as a prerequisite. That declaration was in error, and has been corrected in the recently-released gensim-4.3.1
.
That leaves language-tool-python
, and while that declares a plain-GPL license, it also appers to be maintained by the primary contributor to TextAttack
, @jxmorris12. Further, it's a fork of a long-untouched predecessor project, https://github.com/myint/language-check/, which seems to be dual GPL/LGPL-licensed, and a thin wrapper around https://github.com/languagetool-org/languagetool, which is LGPL-licensed. So it's unclear if any rightsholdrs' wishes have been violated here – but choosing to mark language-tool-python
as also LGPL-licensed could help minimize any perceptions of GPL-disallowed uses.
Thanks for the information @gojomo - I can change the license to language_tool_python
to LGPL, I don't mind.