This is a Jazzband project. By contributing you agree to abide by the Contributor Code of Conduct and follow the guidelines.
Thank you for taking the time to contribute to django-taggit.
Follow these guidelines to speed up the process.
Before opening a new issue, look if somebody else has already started working on the same issue in the GitHub issues and pull requests.
Once you have forked this repository to your own GitHub account, install your own fork in your development environment:
git clone git@github.com:<your_fork>/django-taggit.git
cd django-taggit
python setup.py develop
django-taggit uses tox to run tests:
tox
Check that your changes are not breaking the style conventions with:
tox -e black,flake8,isort
If you introduce new features or change existing documented behavior, please remember to update the documentation.
The documentation is located in the docs
directory of the repository.
To do work on the docs, proceed with the following steps:
pip install sphinx
sphinx-build -n -W docs docs/_build
Even when the change is minor, a changelog line is helpful to both describe
the intent of the change, and to give a heads up to people upgrading. You can
add a line in the (Unreleased)
section of CHANGELOG.rst
, along with
any more detailed explanations for more complicated changes.
It is now time to push your changes to GitHub and open a pull request!
These steps need to happen by a release maintainer.
To make a release, the following needs to happen:
- Make sure that
setup.cfg
is set up properly w/r/t Python and Django requirements - Make sure the documentation (
docs/index.rst
) also describes the right Python/Django versions - Bump the version number in
taggit/__init__.py
- Update the changelog (making sure to add the (Unreleased) section to the top)
- Get those changes onto the
master
branch - Tag the commit with the version number
- CI should then upload a release to be verified through Jazzband