Contributing¶
Pull Requests¶
- Limit each pull request to one idea only.
- Pull requests branches will be squashed and rebased on top of
master. - Always add tests and docs for your code.
- No contribution is too small! Please submit as many fixes for typos and grammar bloopers as you can!
- Make sure your changes pass the CI checks.
- Once you've addressed review feedback, make sure to bump the pull request with a short note.
Developer Setup¶
A few nuggets of information about the project:
- This is a Python project.
- Depenedencies are managed with uv. Install the project with
uv sync. - Tests can be run with
uv run pytest. - Docs can be built with
uv run mkdocs build(or, rebuilt continuously with a development server withmkdocs serve). - Linting and formatting should be done with
ruff. That is,
uv run ruff checkanduv run ruff format, respectively.
Releasing¶
-
Bump the version in the
pyproject.toml. -
Create a git tag for that version, prefixing the version with a
vcharacter:git tag -a "v1.2.3" -m "Release v1.2.3" -
Push the tag to GitHub and let the CI workflow do the rest:
git pushNote
The
vversion prefix signals to the CI script that this push should also be published to PyPI.