-
Notifications
You must be signed in to change notification settings - Fork 116
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
Contributor request to change CXXGraph license from AGPL-3.0 to MPL2 #427
Comments
As you said I think that if someone wants to contribute he will do it, regardless of the license. So if we want to maintain a little more restriction we can use My ranking actually is the following:
We can wait @sbaldu opinion and the modify the License. |
I agree, |
So we want to Change this license? |
I think that we should. |
@sbaldu That sounds right to me. Looks like another project solved this recently: Technologicat/pyan#68 (comment) They had contributors post a message "I approve re-licensing my contributions to They also kept track with a checklist in the post, printed out the final result to a file, and checked it into the repo. |
Yep, that looks like exactly what we want. |
So we can proceed. |
Contributor request to change CXXGraph license from AGPL-3.0 to MPL2As this project has grown, we would like to change the license from a copyleft (restrictive) license to a more permissive license. After discussion, we have decided that Mozilla Public License 2.0 (MPL) is the right direction forward, due to the following reasons:
A general FAQ on MPL2 can be found here: https://www.mozilla.org/en-US/MPL/2.0/FAQ/ Why am I getting tagged?Switching from a copyleft license requires a good-faith attempt to get all contributors to sign-off on the license change. How do I agree, or disagree?To agree, simply comment in this issue (#427), the following:
To disagree, simply comment in this issue (#427), the following:
I don't care either way, what should I do?We recommend agreeing, as we believe it will increase adoption, and you as a contributor will benefit in-terms of open source contribution visibility. If you do not agree or disagree within 30 calendar days, from this Monday, May 6 2024, we will assume you have agreed. What happens if we agree/disagree?If we agree, we will take a snapshot of this webpage and check it into the repo, and swap out the license. If we disagree, who knows. Some members may try to convince a change of mind, or nothing will happen. Contributor checklist (to only be modified by either @ZigRazor @sbaldu or @nolankramer)Contributors that have agreed in a comment below, will have their handle checked here.
|
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
1 similar comment
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
5 similar comments
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
This comment was marked as resolved.
This comment was marked as resolved.
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
1 similar comment
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
4 similar comments
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0 |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
@nolankramer @sbaldu I think we can proceed. |
Maybe we can re-ping the remaining contributors? Just to be sure. |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
@nolankramer @sbaldu What we want to do? We can procede? |
I approve re-licensing my contributions to CXXGraph under the Mozilla Public License 2.0. |
Sorry for the delay here folks. Will try to get to this later today (Wednesday). Been busy. |
We are now changing our license to Mozilla Public License 2.0It has been at-least 30 days since we announced intention to change licensing with a good-faith attempt to reach all contributors before then, and therefore we will assume the remaining contributors have agreed (since we have seen no disagreement). Therefore, with a unanimous agreement, we will now change the license of CXXGraph to MPL-2.0. I will open a PR with the change, and check-in a copy of this webpage to keep history of this change. |
Addressed with #450 |
cc @ZigRazor @sbaldu
What is the general direction this project should go? OSS-copyleft? FOSS? Doesn't matter?
FWIW, I like MPL2 the most for a project like this. There doesn't seem to be a strong reason to force users to be in the copyleft camp, unless we want to strictly push the idea that this code can only be used in OSS. We can also capture commercial users and force them to publish modifications to CXXGraph.
I typically look to the Linux kernel as an good example of needing copyleft - a project that should remain free, and anything that contributes to it or modifies it (with the idea that the majority of the work will be re-used) should also be free and freely contributable. It also enforces the idea that anything combined or derived from it, therefore becoming a relied-on extension of it becomes free and modifiable. A bit like ensuring that it's easy to tinker with after getting it.
One thing I don't like about most GPL copy-left software is that it forces entities or persons to release the entirety of their own code upon distribution, even if they did not modify the original works. This is due to a "combined works" clause, which typically encompasses header inclusion or linkage. MIT/ISC avoids this mess, but misses out on modified works being public.
Typically if there is a great fix, I've found that most people will good-naturedly contribute it upstream, as maintaining the fix separately from upstream is a pain. LGPL is nice in that it allows commercial usage if there is a way to re-link against a modified version of the library (enabling users to fix issues themselves).
Currently, to my knowledge, there doesn't seem to be any license that allows commercial usage with closed-source code and only enforcing publications of modified library code (i.e. closed-source entities can keep their code stack separate, and if they make a great fix to CXXGraph, they have to publish it). See https://opensource.stackexchange.com/questions/13021/correct-license-for-header-only-library. EDIT below invalidates this belief
A "halfway" solution to the split nature of copy-left vs FOSS is dual-licensing. That is, licensing under both a GPL-like and MIT-like license, and letting the user choose based on their needs. I say "halfway", because it doesn't force entities to contribute good fixes upstream (although it's prudent for entities to do that regardless, some entities would prefer to keep their "super ultra secret magic sauce" algorithms to themselves, even if they really aren't that magic and can be easily reverse-engineered...). I've seen some projects dual-license. But more or less, it's the same as just going full-on permissive as the choice is up to the user.
If we really just don't want to care about any of this, I recommend MIT and let the winds take us where they may.
Edit
It looks like Mozilla Public License 2.0 (MPL2) might actually be the best option, as "It's a file-level weak copyleft license. Copyleft applies only to individual files." (https://opensource.stackexchange.com/questions/14122/gpl-and-linking-exceptions/14126#14126)
Which is perfect for enabling commercial users to keep their secrets, but contribute upstream in some form.
This is now my favored option for this library.
The text was updated successfully, but these errors were encountered: