Skip to content

Relicense Graphite under the dual MIT/Apache-2.0 license - #4208

Merged
Keavon merged 1 commit into
masterfrom
relicense
Sep 7, 2026
Merged

Relicense Graphite under the dual MIT/Apache-2.0 license#4208
Keavon merged 1 commit into
masterfrom
relicense

Conversation

@Keavon

@Keavon Keavon commented Jun 7, 2026

Copy link
Copy Markdown
Member

As of merging this PR, Graphite has moved from an Apache 2.0 license (with certain MIT dual-licensed components) to a dual-licensed pair of the Apache 2.0 and MIT licenses throughout all code in the repository (unless noted otherwise). It does not apply retroactively to all parts (the non-respondents listed below are blocking specific small selections of code). Upon this PR landing, this becomes the first commit of the dual-licensed code base.

Explanation

Hi there! Thanks for your past contributions to Graphite, the open source 2D graphics editor. We need your consent to add the MIT open source license to the project, so please take a few seconds to respond right now. This will make it possible to integrate Graphite code into Blender and fix some technicalities to make Graphite more usable across the Rust + open source ecosystems. What we need from you: please reply by copy-pasting this exact sentence if you agree:

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

We are hoping for 100% of past contributors to reply with this comment. Unanimous consent is needed, so we urge you to help us out with a timely reply.

What this means: Graphite was started with one of the two popular permissive open source licenses, Apache 2.0, but (somewhat accidentally) without the other, MIT. The Rust ecosystem typically dual-licenses code under both of these similar licenses, and we're now aiming to rectify that split. This does not change the existing Apache 2.0 license, but adds MIT (used by the Godot game engine) as an additional option, which is needed for compatibility with older licenses like GPL-2 (used by Blender). This should be a noncontroversial change, but it's a technicality we legally need your consent for in order to standardize Graphite's open source licensing situation to open it up for integration by more open source projects. Thank you for your cooperation and prior involvement with the project!

If you are one of the names below, we'd still appreciate a response with your explicit agreement (late is better than never)

Checklist

  • @0HyperCube
  • @0SlowPoke0
  • @4adex
  • @adamgerhant
  • @afrdbaig7
  • @ajjahn
  • @ajweeks
  • @akozlev
  • @akshay1992kalbhor (no agreement, #127 has no surviving copyrightable expression as of 5ee7903, #166 has no surviving copyrightable expression as of e54fedc for major parts and 29e00e4 for minor remnants, #180 has no surviving copyrightable expression as of a0c22d2, #212 has no copyrightable expression, #215 has no surviving copyrightable expression as of a0c22d2 for CloseDocument impl parts and 42c3b1f for most NewDocument impl parts and 9a9436c for last remnants of NewDocument impl parts and ccea88d for other parts)
  • @AlexandruIca
  • AlexiWolf (no agreement, deleted account, #684 has no surviving code as of 92203f3)
  • @AndreRoelofs
  • @Androxium
  • @andystopia
  • @Annonnymmousss
  • @ashishmohapatra240
  • @asyncth
  • @AustinHen (no agreement, #3222 and #3220 have no copyrightable expression)
  • @aybdee (no agreement, #1718 has no surviving code as of 93a60da)
  • @AyeTbk
  • @Ayush2k02
  • @azeemba
  • @bakayu
  • @bjorn3
  • @BKSalman
  • @bluelinden
  • @BorisBoutillier
  • @bradrn
  • @brainwo
  • @Brendonovich
  • @c-mateo
  • @caleb-ad
  • @calvintvu
  • @cauthmann
  • @celyk
  • @Chase-Percy
  • @ChrisMend19
  • @Comeza
  • @Daniel53245 (no agreement, #2619 has no copyrightable expression)
  • @daniil-loban
  • @DaraghD
  • @dchiasson
  • @dependabot[bot] (no agreement, bot account, all PRs have no copyrightable expression)
  • @derfl007
  • @dhruv-ahuja
  • @dzil123
  • @edwin0cheng
  • @elbertronnie
  • @EllenGYY
  • @eltociear
  • @eolculnamo2
  • @Ezbaze
  • @FadedBronze
  • @faisalill
  • @Firestar99
  • @FlorentCollin
  • @FuriouZz
  • @GabrielMajeri
  • @gamma0987
  • @gautamprikshit1
  • @geom3trik
  • @graylime (received agreement from this new GitHub account with same verified email address as former deleted account auto-kad, author of #954, #979, and #994, as visible in the committer information from the in-progress commits in those PRs)
  • @Gulshan1-3
  • @haikalvidya
  • @hannahli2010
  • @he1senbrg
  • @hemu
  • @henrybarreto
  • @henryksloan
  • @HWienhold
  • @hydrobeam
  • @iacore
  • @Iago-lito
  • @imor
  • @indierusty
  • @isiko
  • @jacinyan
  • @jackiechen73
  • @jafriyie1
  • @james-ryans
  • @jneem
  • @joarfish
  • @jsjgdh
  • @JustJ01
  • @Kakapio
  • @Kavin006
  • @KeatonTech
  • @Keavon
  • @Kirirou
  • @Kit-p
  • @krVatsal
  • @kythyria
  • @leonardpauli
  • @linda-zheng
  • @liunicholas6
  • @LukeFranceschini
  • @luzpaz
  • @mdonoughe
  • @meet0806
  • @mfish33
  • @milan-sedivy
  • @mobile-bungalow
  • @mohan-bee
  • @Moharum1
  • @MohdMohsin97
  • @moOsama76
  • @MotherBoardMage
  • @mTvare6
  • @MultisampledNight
  • @nat-rix (no agreement, #1159 has no surviving code as of e352c7f, #1214 has no surviving code as of 3414b32, #1250 has no surviving code as of 1875779)
  • @nico-mayora
  • @Nikita-str
  • @Nitish-bot
  • @November-6
  • @Nupsi
  • @nyurik
  • @nznznz42
  • @OllieDolan
  • @omagdy7
  • @optozorax
  • @orlp
  • @otdavies
  • @paul-fornage
  • @phimuemue
  • @pkupper
  • @PolyglotOpenstreetmap
  • @prathmesh703
  • @pratikagr
  • @protheory8
  • @psuong
  • @rahat2134
  • @RahulHi
  • @renshuncui (no agreement, #1860 has no copyrightable expression)
  • @richard-uk1
  • @Ripper53
  • @RobNadal
  • @RustyNixieTube
  • @RustyStriker
  • @RyanRothweiler
  • @Sahil-Gupta584
  • @Sahilgill24
  • @Sahra-Zhou (no agreement, #990 has no surviving code as of 8b8cac2, #1078 has no surviving code as of 9a7d7de)
  • @sakird
  • @Sambhram1 (no agreement, #3285 has no surviving copyrightable expression as of 971d1fb)
  • @seabeeberry
  • @seam0s-dev
  • @senneh
  • @shipp02
  • @ShouvikGhosh2048
  • @shyamjayakannan
  • @Sidharth-Singh10
  • @silwesterabram
  • @simonwuelker
  • @singhutsav5502
  • @skearya
  • @skoriop
  • @smarizvi110
  • @snskar
  • @SonyStone
  • @spenserblack
  • @Stargazer10101
  • @T0mstone
  • @tarunprabhu11
  • @theaniketgiri (no agreement, #3568 has no surviving copyrightable expression as of 82879c7)
  • @TheUnlocked
  • @Tiger3018
  • @tillarnold
  • @timon-schelling
  • @tlaplaca (no agreement, #1052 has no copyrightable expression)
  • @tnmkr
  • @toadkarter
  • @tomayac
  • @TrueDoctor
  • @Tumypmyp
  • @Umer-K-PersonOOO
  • @urisinger
  • @vineetpuranik
  • @wade-cheng
  • @waywardmonkeys
  • @webbiscuit
  • @xkef
  • @YohYamasaki
  • @youssefelzedy
  • @Yuxiang-Huang
  • @zeroishero
  • @zhiyuang (no agreement, #1587 and #1597 have no surviving code as of ae87be3, #1594 and #1623 have no surviving code as of 9743012, #1593 has no surviving copyrightable expression as of 1652c71, #1584 and #1598 together have no surviving copyrightable expression as of fb35dad because remaining lines constitute non-unique, minimal applications of existing patterns that mechanically implement @Keavon's specified functionality through the only idiomatic means reasonably possible, and remaining symbols are named by their most obvious and intuitive phrasing that would be independently chosen by any reasonable implementer)

gemini-code-assist[bot]

This comment was marked as resolved.

cubic-dev-ai[bot]

This comment was marked as resolved.

@Keavon

Keavon commented Jun 7, 2026

Copy link
Copy Markdown
Member Author

Hi there! Thanks for your past contributions to Graphite, the open source 2D graphics editor. We need your consent to add the MIT open source license to the project, so please take a few seconds to respond right now. This will make it possible to integrate Graphite code into Blender and fix some technicalities to make Graphite more usable across the Rust + open source ecosystems. What we need from you: please reply by copy-pasting this exact sentence if you agree:

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

We are hoping for 100% of past contributors to reply with this comment. Unanimous consent is needed, so we urge you to help us out with a timely reply.

What this means: Graphite was started with one of the two popular permissive open source licenses, Apache 2.0, but (somewhat accidentally) without the other, MIT. The Rust ecosystem typically dual-licenses code under both of these similar licenses, and we're now aiming to rectify that split. This does not change the existing Apache 2.0 license, but adds MIT (used by the Godot game engine) as an additional option, which is needed for compatibility with older licenses like GPL-2 (used by Blender). This should be a noncontroversial change, but it's a technicality we legally need your consent for in order to standardize Graphite's open source licensing situation to open it up for integration by more open source projects. Thank you for your cooperation and prior involvement with the project!

@0HyperCube @0SlowPoke0 @4adex @adamgerhant @afrdbaig7 @ajjahn @ajweeks @akozlev @akshay1992kalbhor @AlexandruIca @AndreRoelofs @Androxium @andystopia @Annonnymmousss @ashishmohapatra240 @asyncth @AustinHen @aybdee @AyeTbk @Ayush2k02

@0SlowPoke0

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

1 similar comment
@Ayush2k02

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@TrueDoctor

Copy link
Copy Markdown
Member

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

20 similar comments
@dhruv-ahuja

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@celyk

celyk commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@Chase-Percy

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@edwin0cheng

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@EllenGYY

EllenGYY commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@BKSalman

BKSalman commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@bakayu

bakayu commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@eltociear

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@Keavon

Keavon commented Jun 7, 2026

Copy link
Copy Markdown
Member Author

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@henryksloan

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@pkupper

pkupper commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@MohdMohsin97

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@adamgerhant

Copy link
Copy Markdown
Collaborator

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@akozlev

akozlev commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@skearya

skearya commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@brainwo

brainwo commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@he1senbrg

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@4adex

4adex commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@AndreRoelofs

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@jsjgdh

jsjgdh commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@zeroishero

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

1 similar comment
@Stargazer10101

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@KeatonTech

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option

1 similar comment
@jafriyie1

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option

@eolculnamo2

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@Keavon

Keavon commented Jun 17, 2026

Copy link
Copy Markdown
Member Author

Hi @haikalvidya and @zhiyuang, could you please take a second to reply with your approval for relicensing your Graphite code contributions? It should only take a few seconds but we aren't waiting on anybody else before completing it after you've both agreed to allow the MIT license to apply to the code you've authored. Please help us with this, or I'm otherwise going to have to remove your authorship by ripping out all your code contributions which would be sad :( Hoping to hear from you as soon as possible!

@haikalvidya

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@benstockil

Copy link
Copy Markdown

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

2 similar comments
@RustyNixieTube

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@devviktoria

Copy link
Copy Markdown

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@dzil123

dzil123 commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@Moharum1

Moharum1 commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@Keavon
Keavon removed the request for review from timon-schelling September 5, 2026 21:21
@Keavon
Keavon marked this pull request as draft September 6, 2026 00:01
@Keavon

Keavon commented Sep 6, 2026

Copy link
Copy Markdown
Member Author

Hey @zhiyuang, everyone who has contributed to Graphite has now agreed to this relicensing and we are still holding out hope that you will kindly respond to unblock this. I'm sure you have other things in your life that you are preoccupied with so I'd like to bother you no further, and this should only take a few seconds. A quick reply copy/pasting the following is all we need 😄:

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@VimYoung

VimYoung commented Sep 6, 2026

Copy link
Copy Markdown

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

@Keavon

Keavon commented Sep 7, 2026

Copy link
Copy Markdown
Member Author

Dear past contributors, this is a notice that your past code contribution(s) to the Graphite project have been eliminated from the present code base because we did not receive your timely consent for the MIT relicensing. No code that you own copyrights to remains in Graphite as of today. Earlier versions of the project history may still contain your Apache 2.0-only licensed contributions. If you ever see this message today or someday into the future, it is never too late to explicitly license your past contributions under the MIT license by responding with the following copy/paste:

I license my past and future contributions to Graphite under the dual MIT/Apache-2.0 license, allowing licensees to choose either at their option.

Such a response would be greatly appreciated as a means to remove any ambiguity in the past version history. Your professional courtesy in this matter, and participation with the other 94% who responded, would be taken as a kindness by this open source community. Thank you for your previous interest in making Graphite the project it is today!

@akshay1992kalbhor @AustinHen @aybdee @Daniel53245 @nat-rix @renshuncui @Sahra-Zhou @Sambhram1 @theaniketgiri @tlaplaca @zhiyuang

@Keavon
Keavon marked this pull request as ready for review September 7, 2026 06:47
@Keavon Keavon changed the title [Action required] Relicense under dual MIT/Apache-2.0 Relicense Graphite under the dual MIT/Apache-2.0 license Sep 7, 2026
@Keavon
Keavon merged commit e725f55 into master Sep 7, 2026
12 checks passed
@Keavon
Keavon deleted the relicense branch September 7, 2026 06:57
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.