Environment
-----------
 - mise is used to pin the Python version (see .mise.toml)
 - Install mise: https://mise.jdx.dev/getting-started.html
 - Then activate the environment:

    mise install
    mise activate

Testing
---------
 - Use make for setup and running tests:

    make setup
    make test

 - Or use pip manually:

    pip install -r requirements-dev.txt
    pip install -e .
    python -m unittest discover tests

Linting
---------
    make lint

CI
---------
 - ci.yml: runs tests across the Python version matrix on push/PR
 - publish.yml: publishes to PyPI on tagged releases

Release
---------
 - bump version and release to pypi

    make release-check
    VERSION='M.m.p' make release

 - create release in GitHub

    open https://github.com/sibson/redbeat/tags
