mirror of
https://github.com/gosticks/iota.lib.java.git
synced 2025-10-16 11:45:37 +00:00
61 lines
2.3 KiB
Plaintext
61 lines
2.3 KiB
Plaintext
== Contributing
|
|
|
|
*Thank you for your interest in contributing to this project!*
|
|
|
|
We welcome all contributions and we'd like to help you send your first contribution to us.
|
|
For that, this is what we recommend:
|
|
|
|
1. Look into the existing issues (or create a new one)
|
|
1. Discuss the possible solution
|
|
1. Code!
|
|
1. Test
|
|
1. Send a PR
|
|
|
|
=== Look
|
|
|
|
Take a look at the existing issues: perhaps there's one already related to the feature you want
|
|
to contribute! Otherwise, open a new one, describing the problem and your suggestion for the solution.
|
|
For bugs, it would be wonderful if you add a way to reproduce the issue.
|
|
|
|
=== Discuss
|
|
|
|
Usually, opening an issue is enough to get a feedback. If you prefer, join us on Slack, under
|
|
the `#developers` channel.
|
|
|
|
=== Code
|
|
|
|
Once you feel comfortable that the issue has been discussed and a general approach is agreed upon,
|
|
it's time to start coding.
|
|
|
|
First, fork this repository into your own namespace, clone it and add this repository as `upstream`:
|
|
|
|
```bash
|
|
git clone git@github.com:YOUR_USERNAME/iota.lib.java.git
|
|
git remote add upstream git@github.com:iotaledger/iota.lib.java.git
|
|
```
|
|
|
|
Then, create a new local branch based off of `master`, like this:
|
|
|
|
```bash
|
|
git fetch upstream
|
|
git rebase upstream/master
|
|
git checkout -b MyTopicBranch
|
|
```
|
|
|
|
Run a sanity check build with `mvn clean install`. It should complete successfully without errors
|
|
or test failures.
|
|
|
|
If everything worked, then do your changes as desired. Once you are done, run a local build with
|
|
`mvn clean install` to make sure nothing is broken. Ideally, your code should include tests for
|
|
the bugs you are fixing or for features you are adding. If you don't know how to test, it's OK to
|
|
open the PR with a title saying "[wip]" (for Work in Progress). We can guide you on how to write tests.
|
|
|
|
=== Send
|
|
|
|
Once your code is ready for a review or if you want feedback, send your branch as a pull request on
|
|
GitHub. If your branch is not ready to be merged for some reason, add "[wip]" to the title. It is
|
|
expected that all PRs are passing the continuous integration test.
|
|
|
|
During this process, someone will take a look at your contributions and make comments, ask questions
|
|
and suggest different approaches. Even though the reviewer strives to be polite, don't take a
|
|
possible criticism personally. After all, we'd really love to get your contribution! |