POT icon indicating copy to clipboard operation
POT copied to clipboard

Upstream Licencing conflict with GPL: POT and CVXOPT

Open SarahG-579462 opened this issue 1 year ago • 2 comments

Describe the bug

POT uses MIT, but has a requirement for CVXOPT, which uses GPLv3 (Likely because it uses GLPK). This means that any upstream code cannot use an incompatible license with GPL (e.g. Apache).

Additional context

This arose in the context of exploring the possibility of having POT as a requirement for xclim. We can't downgrade our licenses due to branding issues, so as a result we cannot use POT without licensing violations.

https://opensource.stackexchange.com/questions/1640/if-im-using-a-gpl-3-library-in-my-project-can-i-license-my-project-under-mit-l (specifically: this answer suggests that until the CVXOPT is imported, POT is MIT, but after that, it is GPLv3. )

SarahG-579462 avatar May 13 '24 20:05 SarahG-579462

An option for fixing this might be making CVXOPT an optional requirement. It already seems to be optional in the codebase, given the try-catch on the import, but it is not in requirements.txt

SarahG-579462 avatar May 13 '24 20:05 SarahG-579462

CVXOPTis already a optional requirement and run perfectly without it (albeit slower on some functions), it is in the requirement.txt but we are pkaning on making a requiremenat_all.txt with all optional dependencies. Optional depenencies are imported only if available so you can instal POT without CVXOPT and remain full MIT

rflamary avatar May 14 '24 06:05 rflamary

This Issue is solved by #627 so I'm closing it

rflamary avatar Jun 24 '24 15:06 rflamary