Contribute
==========

Please fork the repository, and send pull requests with new features or bug
fixes, but respect the following guidelines:

- Read `how to properly contribute to open source projects on GitHub
  <contribute>`_.
- Understand the `branching model <branching>`_.
- Use a topic branch based on the ``develop`` branch to easily amend a pull
  request later, if necessary.
- Write `good commit messages <commits>`_.
- Squash commits on the topic branch before opening a pull request.
- Respect :pep:`8` (use pep8_ to check your coding style compliance).
- Add unit tests if possible (refer to the :doc:`testsuite documentation
  <tests/index>`).
- Add API documentation in docstrings.
- Open a `pull request`_.
  that relates to but one subject with a clear title and description in
  grammatically correct, complete sentences.

Complying to these guidelines greatly increase the change of getting your pull
request merged.  You will be asked to improve your changeset if your pull
request breaks any of the above guidelines.

If you intend to make larger changes, especially if these changes break the ABI,
please ask on the mailing list first.


.. _pep8: http://pypi.python.org/pypi/pep8/
.. _contribute: http://gun.io/blog/how-to-github-fork-branch-and-pull-request/
.. _branching: http://nvie.com/posts/a-successful-git-branching-model/
.. _commits: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
.. _pull request: https://help.github.com/articles/using-pull-requests
