Contribute to an Eclipse Open Source Project

The hard parts of contributing to an Eclipse open source project are the same hard parts that you’ll have with any open source project.

You need to find an open source project to contribute to, identify and connect with the communication channels, learn enough about the code base to make informed decisions, and determine where your expertise is best applied. Communication is the key. You need to communicate with the open source project team. They’re the ones who will help you understand the project’s goals, and areas of current focus. They’re also the ones that you need to accept your contribution. For a hard working open source project team, making your initial contributions align with their current plan is one of the best ways to get their attention and help.

Eclipse open source projects are required to conform to evolving community standards with regard to documentation. Look for a CONTRIBUTING (or README) file in the root of every repository (e.g., Eclipse Mosquitto). The CONTRIBUTING file contains information that you need in order to know how to best interact with the open source project team, build their code, and make contributions.

All Eclipse open source project repositories are hosted on GitHub, Gerrit, or GitLab. So after you’ve identified project repositories, cloned them, and have authored and tested your contributions, you use the contribution process for the specific host technology. For example, many Eclipse open source projects have repositories on GitHub; for these projects, you’d make the same kind of pull request that you’d make for any other.

Everything that I’ve described so far is exactly the same thing that you’d have to do for any open source project. Here’s where the Eclipse Foundation’s process comes in (note that this is captured in our Eclipse Foundation Project Handbook).

We care about intellectual property (IP) management. We really care. Really care. Frankly, every open source project really should care about IP management; open source projects hosted at the Eclipse Foundation have the benefit of a dedicated IP team to help our project teams manage their IP.

All Eclipse contributors must sign the Eclipse Contributor Agreement (ECA), asserting that they have authored the content that they’re contributing and that they have the necessary rights to contribute that content under the terms of the project license. The heart of the Eclipse Foundations’s ECA is the Linux Foundation’s Developer Certificate of Origin. Our implementation is a click-through electronic agreement that you need to sign before an Eclipse committer can accept your contribution.

Finally, the credentials on your commit need to match those that you used to sign the ECA, and you need to “sign-off” each commit using those same credentials, further asserting that you understand and agree to the terms of the ECA.

So… contribute to an Eclipse open source project. Do it. Do it today. Committers are standing by (actually, they’re very busy, but still want to hear from you).