• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Contributing to Paho
2
3Thanks for your interest in this project!
4
5You can contribute bugfixes and new features by sending pull requests through GitHub.
6
7## Legal
8
9In order for your contribution to be accepted, it must comply with the Eclipse Foundation IP policy.
10
11Please read the [Eclipse Foundation policy on accepting contributions via Git](http://wiki.eclipse.org/Development_Resources/Contributing_via_Git).
12
131. Sign the [Eclipse ECA](http://www.eclipse.org/legal/ECA.php)
14  1. Register for an Eclipse Foundation User ID. You can register [here](https://dev.eclipse.org/site_login/createaccount.php).
15  2. Log into the [Eclipse projects forge](https://www.eclipse.org/contribute/cla), and click on 'Eclipse Contributor Agreement'.
162. Go to your [account settings](https://dev.eclipse.org/site_login/myaccount.php#open_tab_accountsettings) and add your GitHub username to your account.
173. Make sure that you _sign-off_ your Git commits in the following format:
18  ``` Signed-off-by: Alex Smith <alexsmith@nowhere.com> ``` This is usually at the bottom of the commit message. You can automate this by adding the '-s' flag when you make the commits. e.g.   ```git commit -s -m "Adding a cool feature"```
194. Ensure that the email address that you make your commits with is the same one you used to sign up to the Eclipse Foundation website with.
20
21## Contributing a change
22
231. [Fork the repository on GitHub](https://github.com/eclipse/paho.mqtt.embedded-c/fork)
242. Clone the forked repository onto your computer: ``` git clone https://github.com/<your username>/paho.mqtt.embedded-c.git ```
253. Create a new branch from the latest ```develop``` branch with ```git checkout -b YOUR_BRANCH_NAME origin/develop```
264. Make your changes
275. If developing a new feature, make sure to include JUnit tests.
286. Ensure that all new and existing tests pass.
297. Commit the changes into the branch: ``` git commit -s ``` Make sure that your commit message is meaningful and describes your changes correctly.
308. If you have a lot of commits for the change, squash them into a single / few commits.
319. Push the changes in your branch to your forked repository.
3210. Finally, go to [https://github.com/eclipse/paho.mqtt.embedded-c](https://github.com/eclipse/paho.mqtt.embedded-c) and create a pull request from your "YOUR_BRANCH_NAME" branch to the ```develop``` one to request review and merge of the commits in your pushed branch.
33
34
35What happens next depends on the content of the patch. If it is 100% authored
36by the contributor and is less than 1000 lines (and meets the needs of the
37project), then it can be pulled into the main repository. If not, more steps
38are required. These are detailed in the
39[legal process poster](http://www.eclipse.org/legal/EclipseLegalProcessPoster.pdf).
40
41
42
43## Developer resources:
44
45
46Information regarding source code management, builds, coding standards, and more.
47
48- [https://projects.eclipse.org/projects/iot.paho/developer](https://projects.eclipse.org/projects/iot.paho/developer)
49
50Contact:
51--------
52
53Contact the project developers via the project's development
54[mailing list](https://dev.eclipse.org/mailman/listinfo/paho-dev).
55
56Search for bugs:
57----------------
58
59This project uses GitHub Issues here: [github.com/eclipse/paho.mqtt.embedded-c/issues](https://github.com/eclipse/paho.mqtt.embedded-c/issues) to track ongoing development and issues.
60
61Create a new bug:
62-----------------
63
64Be sure to search for existing bugs before you create another one. Remember that contributions are always welcome!
65
66- [Create new Paho bug](https://github.com/eclipse/paho.mqtt.embedded-c/issues)
67