Serena v2: Returning the Application to the GPL #1986
opcode81
announced in
Announcements
Replies: 1 comment
|
@AmirF194 @TyceHerrman @xormania since you have been the most active external contributors in recent months, we would like to get your feedback on this! Please let us know what you think. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Serena v2 will introduce substantial changes to the project. As part of that work, we are also reconsidering the terms under which Serena is distributed.
Starting with v2, we plan to license the Serena application under the GNU General Public License (GPL).
SolidLSP, the language server library that provides the basis for Serena's free code intelligence backend, will remain licensed under the MIT License.
Why we are making this change
Serena originally started as a GPL-licensed project. During the first months of the project, we changed the license to MIT in response to requests from parts of the community. In retrospect, we believe that was the wrong decision.
The MIT License is a good fit for a reusable library such as SolidLSP, where broad adoption and integration are important. SolidLSP will therefore remain MIT-licensed. For Serena itself, our goals are different.
We want the best version of Serena to remain free. The GPL gives users the freedom to use, study, modify, and redistribute Serena, while requiring distributed derivative versions of the application to preserve those same freedoms. This is the principle of copyleft, and it has served projects such as Linux and many other free software applications well for decades. We believe it is the right model for Serena.
What changes
With Serena v2:
Existing versions remain MIT-licensed
This change is not retroactive. All Serena versions and commits released under the MIT License remain available under the MIT License. The rights granted under those releases remain valid.
The repository will document the exact commit at which the Serena application transitions from MIT to GPL. Anyone who received an MIT-licensed version of Serena can therefore continue using that version under MIT.
Serena v2 and subsequent versions of the application will be distributed under the GPL.
Why make the change now?
Serena v2 will involve substantial changes to the application and its architecture. That makes v2 the natural point to establish the licensing model we believe is appropriate for the project's long-term future. Rather than changing the terms later, after another generation of Serena has developed under MIT, we want the licensing model for v2 to be clear from the beginning.
Contributions to Serena
Alongside the GPL transition, we intend to introduce a contributor license agreement (CLA) for contributions to the Serena application.
Contributors will continue to own the copyright in their contributions. The CLA will grant the Serena maintainers sufficient rights to use, modify, distribute, sublicense, and relicense contributed code.
The purpose is to preserve the maintainers' ability to evolve Serena's licensing and distribution model in the future without having to obtain permission retroactively from every individual contributor. This does not change the public license of Serena v2: the application will be GPL-licensed.
We will publish the CLA terms before requiring contributors to accept them.
Why GPL for Serena, but MIT for SolidLSP?
The distinction is intentional.
SolidLSP is a reusable library. We want it to be broadly useful as infrastructure for language-server integrations and code-intelligence tooling, including in projects with very different licensing models. MIT is well suited to that goal.
Serena, however, is the application built on top of that foundation. For Serena itself, we want improvements to distributed versions of the application to remain available to the community under the same freedoms.
Permissive licensing allows someone to take an open-source application, improve it, redistribute the improved version, and keep those improvements proprietary. For SolidLSP, we are comfortable with that tradeoff. For Serena, we are not. That is why we believe MIT for SolidLSP and GPL for Serena is the right balance.
A return, rather than a departure
For Serena, the GPL is not a new direction. It is a return to the license under which the project originally began, now with considerably more experience about what we want Serena to become.
We appreciate that licensing choices involve tradeoffs and that not everyone will prefer the same model. Our goal is to make those choices explicit, predictable, and aligned with the long-term interests of Serena and its community.
Above all:
We want the best version of Serena to remain free.
All reactions