Contributing
Setup
Create and activate the development environment:
uv sync --all-groups --extra test
source .venv/bin/activateRunning checks
Before submitting changes, run the full check suite:
uv run task checkThis runs formatting, linting, type checking, and tests. You can also run individual checks:
uv run task format_check # check formatting
uv run task lint_check # check linting
uv run task types_check # check types
uv run task tests # run testsReleasing
Releases are published to PyPI automatically via GitHub Actions when a GitHub Release is created.
Steps
- Update the
versioninpyproject.toml. - Commit the version bump and merge to
main. - Go to the repository’s Releases page.
- Click Draft a new release.
- Create a new tag matching the version (e.g.,
v0.2.0). - Add release notes describing the changes.
- Click Publish release.
The release.yml workflow will build the package and publish it to PyPI using trusted publishing.