2019-04-01 10:29:14 -07:00
Contributing to Eclipse Mraa (libmraa) {#contributing }
2014-05-29 14:51:38 +01:00
======================
2025-10-11 21:00:58 +02:00
Eclipse Mraa is an open source project and we are actively looking for people to help
2014-05-29 14:51:38 +01:00
with:
2015-02-27 16:51:26 +00:00
- Writing platform supports for all types of boards running linux
- People to extend the functionality, API with useful functions
- Anything we haven't thought about :) Ideas always welcome!
2014-05-29 14:51:38 +01:00
2020-10-15 15:25:07 -07:00
The accepted method to contribute is to fork the project on Github and open
pull requests with your changes. You can open issues if you find any bugs/have
2016-10-19 10:46:41 +01:00
questions. If you want to work on a large feature then we suggest you file an
2020-10-15 15:25:07 -07:00
issue first so we can avoid disappointments come merging time!
2014-05-29 14:51:38 +01:00
2014-12-18 22:39:34 +00:00
Basic rules
-----------
2014-10-29 13:14:46 +00:00
- Your code must build
- Commits must be named <file/module>: Some decent description
- Try not to break master. In any commit.
- Try to split commits up logically, you will be asked to rebase them if they
are not.
2015-03-23 14:39:12 +00:00
- Try to stick to the established coding style regardless of your personal
feeling for it! Use clang-format (3.6+ required)
2014-12-15 16:22:16 +00:00
2015-06-01 15:17:05 +01:00
Coding Style
------------
Coding style for all code is defined by clang-format, have a look at it. Avoid
2025-10-11 21:00:58 +02:00
styling fixes as they make history difficult to read. JavaScript & Java can
2015-06-01 15:17:05 +01:00
also be parsed through the clang-format, it complains but seems to do an ok
job. Few exceptions to coding styles:
2025-10-11 21:00:58 +02:00
- All Python code is indented by 2 spaces
- CMakeLists files are 2 space indented and a space is required before all
brackets so `endif ()` and `if ()` and `command ()` . Also use lowercase for
everything but variables. CMake is case insensitive but this isn't the wild
2015-06-01 15:17:05 +01:00
wild west ;-)
Use common sense and don't be afraid to challenge something if it doesn't make sense!
2016-10-19 10:46:41 +01:00
Author Rules
------------
If you create a file, then add yourself as the Author at the top. If you did a
2025-10-11 21:00:58 +02:00
large contribution to it (or if you want to ;-)), then feel free to add yourself
2016-10-19 10:46:41 +01:00
to the contributors list in that file. You can also add your own copyright
statement to the file but cannot add a license of your own. If you're borrowing
code that comes from a project with another license, make sure to explicitly
note this in your PR.
2019-04-01 10:29:14 -07:00
Eclipse Contributor Agreement
2014-12-18 22:39:34 +00:00
------------
2014-12-15 16:22:16 +00:00
2025-10-11 21:00:58 +02:00
Your contribution cannot be accepted unless you have a signed [ECA - Eclipse Foundation Contributor Agreement ](https://www.eclipse.org/legal/eca/ ) in place.
2014-12-15 16:22:16 +00:00
2019-04-01 10:29:14 -07:00
Here is the checklist for contributions to be _ acceptable _ :
2014-12-15 16:22:16 +00:00
2025-10-11 21:00:58 +02:00
1. [Create an account at Eclipse ](https://accounts.eclipse.org/user/register ).
2019-04-01 10:29:14 -07:00
2. Add your GitHub user name in your account settings.
2025-10-11 21:00:58 +02:00
3. [Log in to the projects forge ](https://www.eclipse.org/contribute/cla/ ) and sign the ["Eclipse ECA" ](https://accounts.eclipse.org/user/eca ).
2019-04-01 10:29:14 -07:00
5. Ensure that you use the _ same _ email address as your Eclipse account in commits.
6. Include the appropriate copyright notice and license at the top of each file.
2014-12-15 16:22:16 +00:00
2025-10-11 21:00:58 +02:00
Your signing of the ECA will be verified by a Github Check called 'eclipsefdn/eca'
that checks the email address that authored your commits has signed the
2019-04-01 10:29:14 -07:00
ECA. **Note ** : This service is case-sensitive, so ensure the email that signed
2025-10-11 21:00:58 +02:00
the ECA and that authored your commits is the same, down to the case.
2015-01-16 14:01:43 +00:00
Where to find us
----------------
Hop onto the freenode network on IRC and join #mraa . Please be patient as we're
not always online.