Contributor Agreement

The OSGeo Contributor License Agreement was proposed early in the foundation history, during review it was decided that a contributor agreement is *not required*. Please review the agreement, the FAQ below and comment

These agreements forms are to be considered an example only; project wishing to set up a contributor agreement for their own use may use it as a starting point.

OSGeo -- Contributor License Agreement FAQ

What is the Contributor License Agreement?

The Contributor License Agreement (CLA) is an agreement, currently in draft form, that OSGeo proposes to use to accept in-bound contributions of code from all committers on OSGeo projects.

What is the purpose of the CLA?

The CLA has several important purposes. First, the CLA is designed to clearly define the terms under which intellectual property has been contributed to OSGeo. This ensures that OSGeo has sufficient rights to release software distributions containing your contributed code under an open source license. At the same time, the CLA preserves your rights in your individual code contributions.

Second, the CLA provides OSGeo with a means of knowing who contributed what code and under what terms. Ensuring the provenance of the code is important not only for providing appropriate credit to all contributors, but also for purposes of defending the project if it ever becomes the subject of an IP challenge.

Does the CLA require me to assign the copyright in my developments to OSGeo?

No. Unlike the contributor agreements used by some other open source projects, the CLA does not ask you to transfer ownership of the copyright in your original work to the foundation. OSGeo’s CLA, which is modeled after the contributor agreement used by the Apache Foundation and countless other projects, only asks you to grant OSGeo a license to the code contributions under your intellectual property rights. OSGeo’s intention is to release software distributions as collective works under an OSGeo copyright, while copyright for all of the individual contributions to that collective work would remain with the original author. Thus, you still own the copyright in your original work, and you are free to license it to third parties under a different license of your choice – even a proprietary royalty-bearing license, if you so desired.

Does the CLA limit what OSGeo can do with my contribution?

Yes. Although the scope of the license granted to OSGeo is broad, the CLA prohibits the foundation from using your contributions in a way that is contrary to the public benefit or inconsistent with the OSGeo Bylaws. At a minimum, this means that your contribution can only be relicensed under an open source license that has been certified by the Open Source Initiative (OSI) [1] .

Does this mean that my contribution to a GPL-licensed project can be relicensed by OSGeo under a less restrictive license like the MIT license, or vice versa?

It depends. By itself, the broad license granted to the foundation under the CLA would permit your contributions to be relicensed under any OSI-certified open source license. However, the OSGeo’s governance model gives great deference to the Project Steering Committees (PSCs) that run the foundation’s individual software projects – including deference to the open source licenses chosen for those projects – and the foundation has no intention of changing these licenses. Moreover, the OSGeo Board of Directors is currently considering some governance rules that would make it significantly more difficult for OSGeo to change the license for any given foundation software project. For example, the Board is considering adding a restriction to the OSGeo charter that would prohibit the foundation from changing a project’s open source license without first obtaining the approval of a supermajority of the Board of Directors and the relevant PSC. In this way, you can be assured that the projects to which you contribute will not change their licensing unless it is in the best interests of the project community, as determined by nearly all of the members of the Board and the affected PSC.

Why does OSGeo require such a broad license grant in the CLA?

There are a couple of reasons. First, although OSGeo does not intend to change the license applicable to any of its projects, there may be good reasons in the future to consider project relicensing – for instance, to adapt to new licensing models as they evolve and to address license incompatibility. The Mozilla Foundation’s difficult experience with relicensing the Mozilla code base to make it more GPL-compatible illustrates the benefits of having a broad license grant in the CLA.

Perhaps more importantly for OSGeo, the broad license granted by the CLA means that individual code contributions made under the CLA can be shared by different foundation projects that are otherwise governed by different and incompatible open source licenses.

What is the difference between the Individual CLA and the Corporate CLA?

The Individual CLA is what all committers will be expected to sign in their own capacity. In the Individual CLA, you represent that you have the legal authority to grant the licenses in the agreement. If you determine that you cannot make this representation because the code you develop is owned by your employer (under a “work-for-hire” arrangement, for example), then your employer would need to sign a Corporate CLA before the code can be accepted. In many jurisdictions, anything you develop on your own time with your own equipment is yours and can be contributed by you alone. It is the developer’s responsibility to ascertain whether he or she can contribute code free of encumbrance by an employer, and to obtain a Corporate CLA where necessary.

Corporate CLAs are also used where a company is granting code on an ongoing basis – for example, where a company staffs developers specifically to do development work on foundation projects.

Will I have to sign a CLA every time I contribute code?

No, the CLA covers all of your contributions beginning on the date you sign it. It also applies to all contributions made to any project managed by OSGeo, so there is no need to execute multiple CLAs for different projects. However, if you have had your employer sign a Corporate CLA and you later change jobs, you will need to consider whether your new employer should also sign a Corporate CLA.

What if I want to commit a patch or other code sent to me by someone else? Do they have to sign a CLA too?

It depends. All people with commit access to the code repository ("committers") should have a CLA on file. A small patch sent by a non-committer that fixes a bug and only impacts a few lines of code can be accepted without a CLA and added to the code repository by a committer. However, more substantial additions of code, particularly anything that adds new functionality, should not be committed without first obtaining a CLA from the author. Whether a CLA is a requirement involves some judgment by the committer, with guidance from the PSC as appropriate. Code provenance and chain of title is important to protect both you and the foundation, so in general one should err on the side of obtaining a CLA where there is doubt.

Wow, this is confusing. Where can I learn more about this stuff?

Larry Rosen, the former General Counsel of the OSI, has written an excellent overview book on open source licensing that addresses many of the issues raised by the CLA. In the spirit of open source, the online version of the book is available at no charge under the Academic Free License.