The following is a set of guidelines for contributing. We really appreciate that you are considering contributing!
Please open an Issue on GitHub with the label question
.
To report a bug, open an issue on GitHub with the label bug
using the available bug report issue template. Please ensure the issue has not already been reported.
To suggest an enhancement, please create an issue on GitHub with the label enhancement
using the available feature issue template.
- Fork the repo, create a branch, submit a PR when your changes are tested and ready for review.
- Fill in our pull request template
Note: if you’d like to implement a new feature, please consider creating a feature request issue first to start a discussion about the feature.
Please see the development guide for how to set up your local environment.
- Keep a clean, concise and meaningful git commit history on your branch, rebasing locally and squashing before submitting a PR
- Use the Conventional Commits format when writing a commit message, so that changelogs can be automatically generated
- Follow the guidelines of writing a good commit message as described here and summarised in the next few points
- In the subject line, use the present tense ("Add feature" not "Added feature")
- In the subject line, use the imperative mood ("Move cursor to..." not "Moves cursor to...")
- Limit the subject line to 72 characters or less
- Reference issues and pull requests liberally after the subject line
- Add more detailed description in the body of the git message (
git commit -a
to give you more space and time in your text editor to write a good message instead ofgit commit -am
)
- Java code should conform to the Google Java Style whenever possible.
- The make target
java-checkstyle
should pass without errors. - Where feasible, include unit tests.
- Python code should conform to the PEP-8 style guidelines whenever possible.
- Where feasible, include unit tests.