Contributions are always very much appreciated. However, to make sure the process of accepting patches goes smoothly for everyone (especially for the maintainer), you should try to follow these few simple guidelines when you contribute:
- Fork the repository.
- Create a new branch based on the
masterbranch (git checkout -b your_branch master). - Do your modifications on that branch.
- Be sure your modifications include:
- Don't break anything (
make) - Proper unit/functional tests (
make test) - Documentation updates if required (
make doc) - Regenerate preprocessed headers (
tools/pph.sh) - Update/check style using (
make check) - Verify performance (
make benchmarks)
- Commit your changes. Your commit message should reflect your changes.
- Push the changes to your fork (
git push origin your_branch). - Rebase if necessary to avoid broken commits (
git rebase -i origin/master). - Open a pull request against SML's
masterbranch. I will do my best to respond in a timely manner. I might discuss your patch and suggest some modifications, or I might amend your patch myself and ask you for feedback. You will always be given proper credit.