Contributions are welcome. Before you submit a pull request, please read the instructions below for setting up your environment.
In addition to the code style linters PyMunin3 uses towncrier for changelog management.
pip install -r requirements.txt
This will install the linters and towncrier.
PyMunin follows Black code style. In addition selected tests from pre-commit-hooks are carried out. See the .pre-commit-config.yml
for details.
For code quality we use Flake8. To allow configuration of Flake8 in pyproject.toml
we make use of FlakeHeaven.
In order to keep track of changes and provide an up to date changelog with every release, PyMunin3 uses towncrier. So every PR should carry a changelog entry, that will be merged into CHANGELOG.rst
upon release.
It's recommended to work on a branch in your fork. To create the required file run:
towncrier create --edit FILENAME
where FILENAME is of the form name.type. Type must be one of the defined types in pyproject.toml
[tool.towncrier] table. Most commonly it's one of bugfix or feature. Name is arbitrary, but it's best to use the issue/PR number for it to avoid conflicts.
In the file add a short description and reference any issues. These will be transformed into URLs. You can preview your entry with towncrier --draft
.