chore: relicense from GPL-3.0 to dual MIT OR Apache-2.0 - #445
Conversation
Implements the licensing decision recorded on V2-850: MIT/Apache-2.0 across all WithAutonomi repositories, explicitly moving off copyleft so that anyone can build on this code, including in proprietary work. The GPL was declared in eight places plus a per-file header, so this touches more than the LICENSE file: - LICENSE (GPL-3.0 with linking exception) removed; LICENSE-MIT and LICENSE-APACHE added, copyright The Autonomi Foundation S/A - Cargo.toml, nodejs/Cargo.toml, nodejs/package.json - license key - pyproject.toml - license key and the PyPI classifier, which now advertises both MIT and Apache-2.0 - README - the License section, and the Linking Exception section, which existed only to soften GPLv3 and is meaningless under a permissive licence. Replaced with the standard dual-licence and contribution wording. - deny.toml - "GPL-3.0" dropped from the dependency allow list. Verified no dependency needs it: the only GPL-adjacent match in the tree is r-efi, which is "MIT OR Apache-2.0 OR LGPL-2.1-or-later" and resolves permissively. CI will now catch a GPL dependency arriving, which is the point of moving off it. - 17 source files carried a five-line GPL grant in their header. Replaced with the dual-licence grant. The per-file copyright attributions are deliberately left as "MaidSafe.net limited" rather than rewritten to the Foundation. Those lines record who held copyright when the code was written; changing them asserts an assignment that this change has no business asserting. The new LICENSE files name the Foundation, per the decision on V2-850. Verified: cargo check passes, cargo fmt --all --check is clean, and Cargo.toml, pyproject.toml and nodejs/package.json all parse. Refs V2-847, V2-849, V2-850 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
dad950c to
7e53efc
Compare
|
Merging this without waiting for an approving review. The decision to move to dual This PR is one of 17 applying that decision across the org. There is no code change to review: licence files, package metadata, and licence-grant comment headers only. The substantive question here was the licensing choice itself, and that has been settled off the PR rather than in it. Flagging it explicitly so the merge without a review is on the record rather than looking like an oversight. |
Linear issue
V2-849 (rollout) / V2-850 (the licensing decision)
Risk tier
Compatibility
Semver impact
Test evidence
cargo checkpasses andcargo fmt --all --checkis clean. No source logic was changed — only licence-grant comment headers and package metadata.New dependency
none
ADR
n/a
Mitigation / rollback
Revert the PR to restore the previous licence terms in the repository. Note that reverting does not retract a grant already made: anyone who took a copy while the permissive licence was published keeps those rights for that copy. This is inherent to relicensing, not to this change.
What changed
Implements the licensing decision on V2-850 —
MIT OR Apache-2.0across all WithAutonomi repositories, moving off copyleft so anyone can build on the code, including in proprietary work.LICENSE-MITandLICENSE-APACHEadded at the repo root, copyright The Autonomi Foundation S/A.Relicensed from GPL-3.0 with a linking exception. The GPL was declared in eight places plus a five-line grant in the header of 17 source files:
LICENSE,Cargo.toml,nodejs/Cargo.toml,nodejs/package.json,pyproject.toml(licence key and the PyPI classifier advertising GPLv3), the README's License and Linking Exception sections, and thedeny.tomlallow list.The Linking Exception section was removed rather than updated — it existed only to soften GPLv3, and a permissive licence already grants everything it carved out.
"GPL-3.0"was dropped fromdeny.toml's dependency allow list; verified no dependency needs it (the only GPL-adjacent entry isr-efi, which isMIT OR Apache-2.0 OR LGPL-2.1-or-laterand resolves permissively).This repository has 58 contributors and no CLA or DCO in the tree. Relicensing requires the agreement of everyone holding copyright. If all contributors were MaidSafe employees this is work-for-hire and straightforward; the list spans a decade and should be confirmed by someone who can actually answer it.
Per-file copyright attributions were left as they are throughout — they record who held copyright when the code was written. Only the licence grant text changed.