Contributing to this project

  1. All potential contributors must read the Contributor Code of Conduct and follow it
  2. Fork the repository on GitHub or GitLab
  3. Create a new branch, e.g., git checkout -b bug/12345
  4. Fix the bug and add tests (if applicable)
  5. Add yourself to the AUTHORS.rst
  6. Commit it. While writing your commit message, follow these rules:
    • Keep the subject line under 50 characters
    • Use an imperative verb to start the commit
    • Use an empty line between the subject and the message
    • Describe the why in detail in the message portion of the commit
    • Wrap the lines of the message at 72 characters
    • Add the appropriate “Closes #12345” syntax to autoclose the issue it fixed
    • See Example Commit Message below
  7. Push it to your fork
  8. Create either a request for us to merge your contribution

After this last step, it is possible that we may leave feedback in the form of review comments. When addressing these comments, you can follow two strategies:

  • Amend/rebase your changes into an existing commit
  • Create a new commit and push it to your branch

This project is not opinionated about which approach you should prefer. We only ask that you are aware of the following:

  • Neither GitHub nor GitLab notifies us that you have pushed new changes. A friendly ping is welcome
  • If you continue to use the same branch that you created the request from, both GitHub and GitLab will update the request on the website. You do not need to create a new request for the new changes.

Contributor Code of Conduct

As contributors and maintainers of this project, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities.

We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, or religion.

Examples of unacceptable behavior by participants include the use of sexual language or imagery, derogatory comments or personal attacks, trolling, public or private harassment, insults, or other unprofessional conduct.

Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct. Project maintainers who do not follow the Code of Conduct may be removed from the project team.

Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by opening an issue or contacting one or more of the project maintainers.

This Code of Conduct is adapted from the Contributor Covenant, version 1.0.0, available at

Example Commit Message

Allow users to use the frob when uploading data

When uploading data with FooBar, users may need to use the frob method
to ensure that pieces of data are not munged.

Closes #1234567