MPL licensing
cubing.js is currently GPL licensed. This is a very careful choice, to encourage open-ness and community collaboration (in contrast to allowing unlimited proprietary use). However, the GPL is very prohibitive about "linking" code, which prevents or complicates usage in several cases that we would ideally like to allow.
We have discussed the MPL as a "middle ground" between the MIT and GPL licenses, which disallows private changes to the library source while still allowing private uses of the library. https://www.mozilla.org/en-US/MPL/
The main challenge with relicensing is that I would like to keep scrambler code in cubing.js, and our third-party scramblers are all GPL licensed right now. So we can't consider a full switch to MPL. As we consider the options, we are asking for all contributors to license their contributions to the project under both MPL and GPL. This allows us to keep maintaining and publishing code under the GPL, while also leaving the door open to an MPL license for all of cubing.js once we figure out what to do about the scramblers.
In order for us to accept contributions from a given user for the time being, we ask that you:
- contribute any non-trivial code changes using GitHub pull requests, and
- comment at least once in this issue (https://github.com/cubing/cubing.js/issues/208) with the following:
I hereby give permission for the cubing.js project to use my existing and future contributions under both the GNU Public License (v3 or later) and Mozilla Public License (v2.0).
List of users who have agreed to GPL and MPL contributions as mentioned above:
| Username | Link |
|---|---|
| @lgarron | https://github.com/cubing/cubing.js/issues/208#issuecomment-1229042029 |
| @anicolao | https://github.com/cubing/cubing.js/issues/208#issuecomment-1229054158 |
| @debater-coder | https://github.com/cubing/cubing.js/issues/208#issuecomment-1229382998 |
| @rokicki | https://github.com/cubing/cubing.js/issues/208#issuecomment-1229383375 |
I hereby give permission for the cubing.js project to use my existing and future contributions under both the GNU Public License (v3 or later) and Mozilla Public License (v2.0).
One additional note:
However, the GPL is very prohibitive about "linking" code, which prevents or complicates usage in several cases that we would ideally like to allow.
Another motivation to move away from the GPL is that we currently use the standard practice of "GPL v3 or later", which puts unnecessary power in the hands of the FSF for changes in interpretation or wording. The FSF has continued to support Richard Stallman even in the face of widespread condemnation of documented misconduct, and I would like to avoid placing any trust in them at all. This isn't the main motivation for a license change, but I believe it's important to recognize.
I hereby give permission for the cubing.js project to use my existing and future contributions under any license. In particular this includes both the GNU Public License (v3 or later) and Mozilla Public License (v2.0).
I hereby give permission for the cubing.js project to use my existing and future contributions under both the GNU Public License (v3 or later) and Mozilla Public License (v2.0).
I hereby give permission for the cubing.js project to use my existing and future contributions under both the GNU Public License (v3 or later) and Mozilla Public License (v2.0).
On Sat, Aug 27, 2022 at 10:57 PM debater-coder @.***> wrote:
I hereby give permission for the cubing.js project to use my existing and future contributions under both the GNU Public License (v3 or later) and Mozilla Public License (v2.0).
— Reply to this email directly, view it on GitHub https://github.com/cubing/cubing.js/issues/208#issuecomment-1229382998, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAMOLS2XQBR7NYARZH2433TV3L5TNANCNFSM57YJRD2Q . You are receiving this because you are subscribed to this thread.Message ID: @.***>
--
- https://cube20.org/ http://cube20.org/ - https://golly.sf.net/ http://golly.sf.net/ - https://experiments.cubing.net/ -
Maybe we should add a section in the README 'License' section about how we intend to move to MPL eventually. That way people (i.e proprietary users) who can't use the GPL license are not completely alienated from this project.
I hereby give permission for the cubing.js project to use my existing and future contributions under both the GNU Public License (v3 or later) and Mozilla Public License (v2.0).
The MPL license is now in the repo (along with the previous GPL license, for now), which means future contributions will automatically be MPL-licensed as well: https://docs.github.com/en/site-policy/github-terms/github-terms-of-service#6-contributions-under-repository-license
Thanks to everyone in this issue for allowing your contributions to be MPL-licensed!