互联网造车量产前夜:智能汽车冲击功能汽车?
![]() | This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
A Contributor License Agreement (CLA) defines the terms under which intellectual property has been contributed to a company/project, typically software under an open source license.
Rationale
[edit]CLAs can be used to enable vendors to easily pursue legal resolution in the case of copyright disputes,[1] or to relicense products to which contributions have been received from third parties.[2] CLAs are important especially for corporate open source projects under a copyleft license, since without a CLA the contribution would restrict the guardian as well.
The purpose of a CLA is to ensure that the guardian of a project's outputs has the necessary ownership or grants of rights over all contributions to allow them to distribute under the chosen license, often by granting an irrevocable license to allow the project maintainer to use the contribution; if copyright is actually transferred, the agreement is more normally known as a Copyright Transfer Agreement. CLAs also have roles in raising awareness of IPR issues within a project.[3]
Relicensing controversy
[edit]When a CLA requires a contributor to assign unrestricted republishing rights to the project, contributed code can be relicensed at the discretion of the project, even when the CLA does not assign copyright to the project. Prominent open source advocates regard CLAs as dangerous to open source rights.[4]
Examples
[edit]In 2019 MongoDB used these rights granted by its CLA to achieve a move to a non-open-source license.[5]
In January 2021, the Elasticsearch project used such rights to move the project to a non-open-source license [6] arguing Amazon had been "misleading and confusing the community".
[...] Our license change is aimed at preventing companies from taking our Elasticsearch and Kibana products and providing them directly as a service without collaborating with us.
Our license change comes after years of what we believe to be Amazon/AWS misleading and confusing the community - enough is enough.
We’ve tried every avenue available including going through the courts, but with AWS’s ongoing behavior, we have decided to change our license so that we can focus on building products and innovating rather than litigating [...] [7]
Drew DeVault, a lead developer with a number of open source projects such as Sway, regards this move as a loophole. Both these projects were licensed under a copyleft license, which uses copyright to protect contributions, yet the CLA negates the usefulness of copyright in achieving this protection:
Elasticsearch belongs to its 1,573 contributors, who retain their copyright, and granted Elastic a license to distribute their work without restriction. This is the loophole which Elastic exploited when they decided that Elasticsearch would no longer be open source [...][8]
CLAs which restrict relicensing
[edit]Project Harmony
[edit]Project Harmony was established by Canonical in 2010 to optionally avoid the problems discussed above. It provides a CLA template-builder. Based on choices made, the CLA will allow the contributor to keep copyright and assign rights to the project (as above) but with various restrictions on relicensing: using the template requires choosing one of the mutually-exclusive options, which range in restrictiveness.[9] A real-world example is the Ubuntu project. The CLA leaves copyright with the contributor and allows the project to relicense the code but with a restriction based on the license the contribution was made under:
2.3 Outbound License Based on the grant of rights in Sections 2.1 and 2.2, if We include Your Contribution in a Material, We may license the Contribution under any license, including copyleft, permissive, commercial, or proprietary licenses. As a condition on the exercise of this right, We agree to also license the Contribution under the terms of the license or licenses which We are using for the Material on the Submission Date.[10]
Fedora
[edit]The Fedora Project formerly required contributors to sign a CLA, either as an organization or as an individual.[11] However, this was retired in 2011[12] and instead contributors must agree to the Fedora Project Contributor Agreement, which is not a license agreement and does not include assignment of copyright.
Users
[edit]Companies and projects that use CLAs include:
- .NET Foundation[13]
- Apache Software Foundation[14]
- Canonical Ltd[15]
- Clojure[16]
- Cloud Native Computing Foundation[17]
- CyanogenMod[18]
- Diaspora[19]
- Digia/Qt Project[20]
- Discourse[21]
- Django[22]
- Dojo Toolkit[23]
- eBay Software Foundation, LLC[24][25] Subsidiary of eBay
- Eclipse[26]
- Elastic[27]
- Facebook[28]
- Go[29]
- Google[30]
- HashiCorp[31]
- Home Assistant[32]
- InfluxDB[33]
- Joomla[34]
- jQuery[35]
- Kubernetes[36]
- OpenBMC[37]
- Python[38]
- Meteor[39]
- Microsoft[40]
- MuseScore[41]
- OpenMediaVault[42]
- OpenStack[43]
- Puppet[44]
- Salesforce[45]
- Sangoma[46]
- TiddlyWiki[47]
- TLDR Pages[48]
- W3C[49]
- Zend Technologies for Zend Framework (1.x series only)
KDE
[edit]KDE uses Free Software Foundation Europe's Fiduciary Licence Agreement[50] of which (FLA-1.2) states in section 3.3:
FSFE shall only exercise the granted rights and licences in accordance with the principles of Free Software as defined by the Free Software Foundations. FSFE guarantees to use the rights and licences transferred in strict accordance with the regulations imposed by Free Software licences, including, but not limited to, the GNU General Public Licence (GPL) or the GNU Lesser General Public Licence (LGPL) respectively. In the event FSFE violates the principles of Free Software, all granted rights and licences shall automatically return to the Beneficiary and the licences granted hereunder shall be terminated and expire.[51]
However, it is optional and every contributor is allowed not to assign their copyright to KDE e.V.
See also
[edit]References
[edit]- ^ "Licenses". www.apache.org.
- ^ "Contributing FAQ". mysql.com. Archived from the original on 2025-08-14. Retrieved 2025-08-14.
- ^ "Contributor Licence Agreements". Oss-watch.ac.uk. Retrieved 2025-08-14.
- ^ comments, 28 Feb 2019 Richard FontanaFeed 291up 2. "Why CLAs aren't good for open source". Opensource.com. Retrieved 2025-08-14.
{{cite web}}
: CS1 maint: numeric names: authors list (link) - ^ Corbet, Jonathan (2025-08-14). "Making the GPL more scary". LWN.net. Retrieved 2025-08-14.
- ^ "Upcoming licensing changes to Elasticsearch and Kibana". www.elastic.co. 2025-08-14. Archived from the original on 2025-08-14. Retrieved 2025-08-14.
- ^ "Amazon: NOT OK - why we had to change Elastic licensing". www.elastic.co. 2025-08-14. Archived from the original on 2025-08-14. Retrieved 2025-08-14.
- ^ DeVault, Drew (2025-08-14). "Elasticsearch does not belong to Elastic". drewdevault.com. Retrieved 2025-08-14.
- ^ "Guide to the CAs | Harmony Agreements". harmonyagreements.org. Retrieved 2025-08-14.
- ^ "Contributor agreement form | Contributors". Ubuntu. Retrieved 2025-08-14.
- ^ "Legal:Licenses/CLA - Fedora Project Wiki". fedoraproject.org. Retrieved 2025-08-14.
- ^ "Meeting:Board meeting 2025-08-14 - Fedora Project Wiki". fedoraproject.org. Retrieved 2025-08-14.
- ^ "Contribution License Agreement". .NET Foundation.org. Retrieved 2025-08-14.
- ^ "Licenses". Apache.org. Retrieved 2025-08-14.
- ^ "Canonical contributor license agreement". Canonical Ubuntu. Retrieved 2025-08-14.
- ^ "Clojure - Contributor Agreement".
- ^ "CNCF Linux Foundation ID CLA signing FAQ". Retrieved 2025-08-14.
- ^ "Individual Contributor License Grant". CyanogenMod. Archived from the original on 2025-08-14.
- ^ "diaspora/diaspora · GitHub". Github.com. Retrieved 2025-08-14.
- ^ "Legal Aspects". Qt Project. Retrieved 2025-08-14.
- ^ "CLA assistant".
- ^ "Contributor License Agreements | Django". Djangoproject.com. Retrieved 2025-08-14.
- ^ "CLA". The Dojo Foundation. Retrieved 2025-08-14.
- ^ "SeLion : Individual Contributor License Agreement (CLA)". Retrieved 2025-08-14.
- ^ "LIST OF SUBSIDIARIES AS OF DECEMBER 31, 2014". Retrieved 2025-08-14.
- ^ "Eclipse Foundation Contributor License Agreement". Eclipse.org. 2025-08-14. Retrieved 2025-08-14.
- ^ "Contributor Agreement Elastic". elastic.co.
- ^ "Contributing to Facebook Projects". facebook.com. Retrieved 2025-08-14.
- ^ "CONTRIBUTORS - The Go Programming Language". Golang.org. Retrieved 2025-08-14.
- ^ "Google Individual Contributor License Agreement, v1.1". Google Inc. Retrieved 2025-08-14.
- ^ Hashicorp. ""Contributor License Agreement"". Hashicorp: Infrastructure Enables Innovation. Retrieved 2025-08-14.
- ^ Schoutsen, Paulus (2025-08-14). "Home Assistant Governance [updated]". Home Assistant. Retrieved 2025-08-14.
- ^ "InfluxDB Contributor License Agreement". Retrieved 25 August 2014.
- ^ "Contribute". Developer.joomla.org. Retrieved 2025-08-14.
- ^ jQuery Foundation - jquery.org. "jQuery Foundation Contributor License Agreement | Contribute to jQuery". Contribute.jquery.org. Retrieved 2025-08-14.
- ^ Cloud Native Computing Foundation. "Kubernetes CLA". CNCF. Retrieved 2025-08-14.
- ^ GitHub - openbmc/docs, openbmc, 2025-08-14, retrieved 2025-08-14
- ^ "Contributing to the PSF". Python Software Foundation.
- ^ "Contributing to Meteor". Contribute.meteor.com. Retrieved 2025-08-14.
- ^ "Contributing to Microsoft Visual Studio Code". Microsoft. Retrieved 2025-08-14.
- ^ "Contributor License Agreement | MuseScore". musescore.org. Retrieved 2025-08-14.
- ^ "Contributor Agreement". OpenMediaVault. Retrieved 2025-08-14.
- ^ "OpenStack Contributors License Agreement". OpenStack. Retrieved 2025-08-14.
- ^ "Puppet Contributor License Agreement". Retrieved 2025-08-14.
- ^ "Salesforce Contributor License Agreement". Archived from the original on 2025-08-14. Retrieved 2025-08-14.
- ^ "CONTRIBUTOR LICENSE AGREEMENT". www.sangoma.com. 2025-08-14. Archived from the original on 2025-08-14. Retrieved 2025-08-14.
- ^ "License". TiddlyWiki. 19 December 2022.
- ^ "TLDR-pages/TLDR". GitHub. 26 February 2022.
- ^ "W3C Community Contributor License Agreement (CLA)". Community and Business Groups. W3C. Retrieved 2025-08-14.
- ^ "FSFE welcomes KDE's adoption of the Fiduciary Licence Agreement (FLA)". 2025-08-14.
- ^ "Fiduciary Licence Agreement (Version 1.2)" (PDF). Retrieved 2025-08-14.
External links
[edit]- Contributor Licence Agreements from OSS Watch
- ContributorAgreements.org
- CLA assistant — enables contributors to sign CLAs from within a pull request