Skip to content

Latest commit

 

History

History
53 lines (34 loc) · 2.15 KB

contributing.md

File metadata and controls

53 lines (34 loc) · 2.15 KB

Contributing

Create an issue

Create an issue describing the motivation for your changes. Are you fixing a bug? Improving documentation? Optimizing some slow code?

Pull Requests without associated Issues may still be accepted, if the motivation is obvious. However, this will help speed up code review if there's any uncertainty.

Change the code

Create a fork and make your code changes. Fix code formatting and run the unit tests with:

./validate.sh

Add tests

All pull requests must have 90% coverage in the changed code. Check the code coverage with:

./scripts/coverage.sh --html

Bugfixes should include a regression test which prevents that bug from being re-introduced in the future.

Update Documentation

Documentation for the project is stored in the docs directory. If your feature requires docs updates, those updates must be submitted in the same Pull Request as the code changes.

Open a Pull Request

When you're ready, submit a Pull Request against the master branch of our GitHub repository.

Pull Requests will be vetted through Travis CI. To reproduce these same tests locally, do:

./validate.sh --nofmt --cov

If the tests pass locally, but fail on your PR, update your fork with the latest code from master.

Note: We also have some known intermittent failures. If the tests still fail after pulling master, don't worry about it. We'll re-run them when we review your PR.