Let us make contribution easy, collaborative and fun.
To make a contribution, follow these steps:
- Fork and clone this repository
- Do the changes on your fork with dedicated feature branch
feature/f1
- If you modified the code (new feature or bug-fix), please add tests for it
- Include proper documentation / docstring and examples to run the feature
- Check the linting
- Ensure that all tests pass
- Submit a pull request
For more details about pull requests, please read GitHub's guides.
We use poetry
as our package manager. You can install poetry by following the instructions here.
Please DO NOT use pip or conda to install the dependencies. Instead, use poetry:
poetry install --all-extras
or
poetry install --with dev
#activate
poetry shell
To ensure our standards, make sure to install pre-commit before starting to contribute.
pre-commit install
We use ruff
to lint our code. You can run the linter by running the following command:
make lint
Make sure that the linter does not report any errors or warnings before submitting a pull request.
We use black
to reformat the code by running the following command:
make format
We use pytest
to test our code. You can run the tests by running the following command:
poetry run pytest
Make sure that all tests pass before submitting a pull request.
At the moment, the release process is manual. We try to make frequent releases. Usually, we release a new version when we have a new feature or bugfix. A developer with admin rights to the repository will create a new release on GitHub, and then publish the new version to PyPI.