Please read this if you intend to contribute to the project.
- Get a github account if you don't have one already
- Submit a github issue if there isn't one already.
- Clearly describe the bug or feature
- Provide exact reproducable steps to reproduce the issue if its a bug
- Include the versions of all components
- Fork the repository on github
- Create a new branch for your changes
- Make your changes
- Make sure you include tests
- Make sure the test suite passes after your changes
- Commit your changes into that branch
- Use descriptive and meaningful commit messages
- If you have a lot of commits squash them into a single commit
- Push your changes to your branch in your forked repository