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

Create LICENSE #10

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Create LICENSE #10

wants to merge 1 commit into from

Conversation

MitchTalmadge
Copy link

Add LGPLv3 license to match setup.py

I chose LGPLv3 because it allows users of your library to embed it within their proprietary apps without having to make their apps open source, but still requires them to make any changes to your code open source.

Add LGPLv3 license to match setup.py
@MitchTalmadge MitchTalmadge mentioned this pull request Mar 24, 2019
@saxbophone
Copy link

Not a lawyer, but having done my own research in the past, it appears that: LGPL-3.0 only allows embedding of such a licensed work within proprietary software if it is possible/feasible for the user to swap out the LGPLv3-licensed dependency with an alternative without modifying the proprietary software.

A minor point really, though it might affect the feasibility of it being used in proprietary software. It is for these reasons for instance that I prefer using MPL-2.0 in these cases, as I share your desire to have my open-sourced stuff be usable in both proprietary and open-source works, but place a responsibility on users that modifications are shared back. MPL-2.0 expresses this intent without the extra requirement that the dependency be 'swappable' in that sense.

The difference between the two licenses are rather subtle, and it's also worth noting that the whole premise of the conditions of the LGPL license exemptions are more appropriate for C-family language works. I hope you find this information useful!

@MitchTalmadge
Copy link
Author

That's a really good point that I didn't know about, thanks! The author specified GPL in the setup.py but maybe they would be more interested in using MPL-2.0?

@saxbophone
Copy link

You're very welcome!

The author specified GPL in the setup.py but maybe they would be more interested in using MPL-2.0?

Ah, gotcha. Apologies, did not realise that you're not the project author...

In that case, probably as they have listed GPL as their intention, best to stick to that then. I misunderstood what was being achieved by this PR and thought it was the choice of a license that was to be made.

If the author's reasons for choosing for GPL are those that we have discussed, they may wish to consider MPL instead but that is a choice that only the author (original copyright holder) can exercise.

@kootenpv
Copy link
Owner

Hey guys, I am certainly also not aware of all the licensing options. I don't think it is possible to relicense just like that (in case people have assumed from setup.py the license)? But indeed, thanks for giving the lesson; MPL-2.0 does add that benefit.

@saxbophone
Copy link

If you are the copyright holder, it's up to you how you license your work —I think the only catch is that you can't retrospectively revoke open-source licenses for previous versions, but I think you could easily publish an updated version with a different license, or even license with two different licenses if you wanted to. Also, if others have previously contributed to the project whilst it was under a given license, you will need their permission to relicense it, unless you have a copyright-grant agreement with them (such that they assign copyright to their contributions to you).

@saxbophone
Copy link

By the way, I'm not trying to push you to change license, just earlier it was mentioned about use in proprietary software and I wanted to point out the pros and cons of the two licenses. For instance, MPL-2.0 is a less strict copyleft license than LPGL-3.0 and so hence offers less open-source protections.

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

Successfully merging this pull request may close these issues.

3 participants