Contributing¶
tappy should be easy to contribute to. If anything is unclear about how to contribute, please submit an issue on GitHub so that we can fix it!
How¶
Fork tappy on GitHub and submit a Pull Request when you’re ready.
The goal of tappy is to be a TAP-compliant producer and consumer. If you want to work on an issue that is outside of the TAP spec, please write up an issue first, so we can discuss the change.
Setup¶
tappy uses [uv](https://docs.astral.sh/uv/) for development.
$ git clone git@github.com:python-tap/tappy.git
$ cd tappy
$ # Edit some files and run the tests.
$ make test
The commands above show how to get a tappy clone configured. If you’ve executed those commands and the test suite passes, you should be ready to develop.
Guidelines¶
Code uses Ruff for formatting and linting. If you have pre-commit, you can add ruff hooks via pre-commit install. These hooks will run as part of CI. Changes will not be accepted unless CI passes.
Make sure your change works with unit tests.
Document your change in the
docs/releases.rst
file.For first time contributors, please add your name to
AUTHORS
so you get attribution for you effort. This is also to recognize your claim to the copyright in the project.
Release checklist¶
These are notes for my release process, so I don’t have to remember all the steps. Other contributors are free to ignore this.
Update
docs/releases.rst
.Update version in
pyproject.toml
andtap/__init__.py
.rm -rf dist && uv build
uv publish
git tag -a vX.X -m "Version X.X"
git push --tags