Skip to content

chore: relicense from GPL-3.0 to dual MIT OR Apache-2.0 - #13

Merged
jacderida merged 1 commit into
mainfrom
chore/relicense-mit-apache
Aug 7, 2026
Merged

chore: relicense from GPL-3.0 to dual MIT OR Apache-2.0#13
jacderida merged 1 commit into
mainfrom
chore/relicense-mit-apache

Conversation

@jacderida

@jacderida jacderida commented Aug 7, 2026

Copy link
Copy Markdown
Member

Linear issue

V2-849 (rollout) / V2-850 (the licensing decision)

Risk tier

  • T0 — docs / tooling / CI / pure UX-output. Repo CI only.
  • T1 — client-only, no network-facing behavior change. CI + prod compat smoke.
  • T2 — node/client logic with behavioral surface, no protocol/format/economics change. Dev testnet + ADR.
  • T3 — protocol / storage format / payments / routing. T2 evidence + adversarial testing.

Compatibility

  • Wire: none
  • Storage: none
  • API: none

Semver impact

  • breaking
  • feature
  • fix

Test evidence

cargo check passes and cargo fmt --all --check is 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.0 across all WithAutonomi repositories, moving off copyleft so anyone can build on the code, including in proprietary work.

LICENSE-MIT and LICENSE-APACHE added at the repo root, copyright The Autonomi Foundation S/A.

Relicensed from GPL-3.0. This repo declared GPL-3.0 in Cargo.toml while shipping no licence file, so it appeared in the "unlicensed" bucket — GitHub's licence detection reads files, not manifests.

16 source files carried the SAFE Network GPL grant in two shapes: 13 with the full five-line block, and 3 under src/merkle_payments/ with a truncated one-line variant. Both handled. Cargo.toml's homepage also still pointed at maidsafe.net; now autonomi.com.

All 13 contributors to this repo are internal, so this does not carry the third-party consent question that self_encryption does.


The reason for using MIT/Apache-2.0 and moving away from GPL 3.0 is purely allowing anyone to build anything from our code, even proprietary etc. if we are GPL we insist their projects must be GPL as well.

Bottom line, builders want 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.

Implements the licensing decision recorded on V2-850: MIT/Apache-2.0 across all
WithAutonomi repositories, moving off copyleft so anyone can build on the code
including in proprietary work.

This repo declared GPL-3.0 in Cargo.toml but shipped no LICENSE file at all, so
it appeared in the "unlicensed" bucket of V2-849. It is not - GitHub's licence
detection reads files, not manifests. This is a relicence, not a gap-fill.

- LICENSE-MIT and LICENSE-APACHE added, copyright The Autonomi Foundation S/A
- Cargo.toml license key
- Cargo.toml homepage, which still pointed at maidsafe.net
- 16 source files carried the SAFE Network GPL grant in their header. Thirteen
  had the full five-line block; three under src/merkle_payments/ had a truncated
  one-line variant. Both replaced with the dual-licence grant.

Per-file copyright attributions are 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 this change has no business
asserting. The new LICENSE files name the Foundation, per V2-850.

All 13 contributors to this repository are internal, so the relicence does not
carry the third-party consent question that self_encryption does.

Verified: cargo check passes, cargo fmt --all --check clean, no GPL reference
remains outside lockfiles.

Refs V2-849, V2-850

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@jacderida
jacderida force-pushed the chore/relicense-mit-apache branch from d24a5ca to 05f8122 Compare August 7, 2026 22:40
@jacderida jacderida changed the title chore!: relicense from GPL-3.0 to dual MIT OR Apache-2.0 chore: relicense from GPL-3.0 to dual MIT OR Apache-2.0 Aug 7, 2026
@jacderida

Copy link
Copy Markdown
Member Author

Merging this without waiting for an approving review.

The decision to move to dual MIT OR Apache-2.0 has already been confirmed and is recorded on V2-850, along with the reasoning — we want people to be able to build anything on our code, including proprietary work, which copyleft prevents. The copyright holder (The Autonomi Foundation S/A) was confirmed at the same time.

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.

@jacderida
jacderida merged commit 88e20df into main Aug 7, 2026
12 of 13 checks passed
@jacderida
jacderida deleted the chore/relicense-mit-apache branch August 7, 2026 22:51
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.

1 participant