Skip to content
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

Licensing to use galvani in other projects #51

Closed
petermattia opened this issue Sep 28, 2020 · 5 comments
Closed

Licensing to use galvani in other projects #51

petermattia opened this issue Sep 28, 2020 · 5 comments
Assignees

Comments

@petermattia
Copy link
Contributor

Since galvani is primarily designed to solve an "upstream" issue in electrochemical data analysis, I think galvani is especially powerful when combined with other electrochemical data analysis packages. Unfortunately, the GPL-3.0 copyleft license is restrictive, which limits its utility for these contexts. See this issue as an example.

Would the original authors consider releasing this code with a more permissive license such as MIT? There is some discussion of the legal issues involved on SO, see here as an example. Thanks!

@chatcannon
Copy link
Collaborator

I deliberately chose a copyleft licence so that my code could not be used in derivative works without those works also being free software. If GPL-3 is a problem then I might consider relicensing to another copyleft licence e.g. GPL-2+ or CeCILL, but I will not make this software available under a permissive licence.

@chatcannon chatcannon self-assigned this Sep 29, 2020
@petermattia
Copy link
Contributor Author

Hi Chris, understood. I wasn't sure if a copyleft license was a deliberate choice. I'll close this ticket.

@bcolsen
Copy link
Contributor

bcolsen commented Sep 29, 2020

Sorry for the long post. TLDR; Consider the LGPL?

I will preface this with that I totally love copyleft and what it's done to keep software going in the open source direction and respect the decision here by @chatcannon.

However I also see the problem that Impedance(I use this package) and many other python modules can't use it as a dependency given their MIT licensing.

In this case I don't see the copyleft licence here for a python module is going to help make more GPL software in the world. Neither Arbin nor Biologic are going to open source, though that would be great. It just seems that more people won't use the program and try to reverse engineer it themselves(like Impedance is trying to do). Having less users will of course decrease the amount of participation and contribution.

One interesting solution to this problem is the LGPL. I am not a lawyer, but it seems to allow other modules to use the code as a dependency without requiring that module to change their license. This does allow the makers of proprietary software to use the software, but they can't fork galvani as proprietary software and any changes they make to galvani must be under the LGPL.

By my reading the LGPL protects galvani from becoming proprietary but doesn't encourage the use of the GPL by others, but might allow more people to use it and should allow impedance.py have it as a dependency(though it seem they don't want another dependency?)

Again no pressure here. I just wanted to offer the LGPL as it's a good fit for libraries/modules and can/could help others in the community with license struggles.

@petermattia
Copy link
Contributor Author

Thanks @bcolsen! I wasn't aware of LGPL, but it seems like a great compromise to me. I do agree that it would fracture the community if the impedance.py team were to create their own solution to the problems that galvani already nicely solves. That said, I respect @chatcannon's decision on this either way.

@chatcannon
Copy link
Collaborator

Nothing in the GPL prevents you from distributing a Python file that says:

# This file "impedance.py" is released under the MIT License

...

import galvani

...

What it might help prevent is someone taking the resulting code and building a proprietary closed-source application out of it. I consider this to be a good thing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants