Skip to content

Latest commit

 

History

History
66 lines (47 loc) · 2.28 KB

CONTRIBUTING.md

File metadata and controls

66 lines (47 loc) · 2.28 KB

How to contribute

Everyone is free to contribute on this project.

There are two ways to contribute:

  • Submit an issue.
  • Submit a pull request.

Submitting an issue

Before creating an issue please make sure that it was not already reported.

When?

  • You encountered an issue.
  • You have a change proposal.
  • You have a feature request.

How?

  1. Go to the Issues tab and click on the New issue button.
  2. Title should be a small sentence describing the request.
  3. The comment should contains as much information as possible
    • Actual behavior (including the version you used)
    • Expected behavior
    • Steps to reproduce

Submitting a pull request

When?

  • You fixed an issue.
  • You changed something.
  • You added a new feature.

How?

Code

  1. Create a new branch based on develop branch.
  2. Fetch all dev dependencies.
    • Install required python modules using pip: python -m pip install .[testing]
  3. Ensure tests are ok by running them using pytest.
  4. Add your changes.
  5. Follow Black code formatting.
    • Install pre-commit python module using pip: python -m pip install pre-commit
    • To add the pre-commit hook, after the installation run: pre-commit install
  6. Add at least one pytest test case.
    • Unless it is an internal refactoring request or a documentation update.
  7. Increment version number and add related changelog entry.
    • Unless it is a documentation update.
Changelog entry

Once the changelog entry is added, please don't forget to also add the link to the proper tag at the end of the changelog.

Enter pull request

  1. Go to the Pull requests tab and click on the New pull request button.
  2. base should always be set to develop and it should be compared to your branch.
  3. Title should be a small sentence describing the request.
  4. The comment should contains as much information as possible
    • Actual behavior (before the new code)
    • Expected behavior (with the new code)
    • Steps to reproduce (with and without the new code to see the difference)