Skip to content

Contributing

Issues and pull requests are welcome. Open an issue before a substantial public API change so the behavior can be agreed on first. The maintainer reviews and merges all pull requests.

The canonical contributor guide is CONTRIBUTING.md. Security reports should follow SECURITY.md, not a public issue.

Local checks

Install uv, then run:

uv sync --extra dev
uv run ruff check .
uv run ruff format --check .
uv run mypy src
uv run pytest

Tests in tests/test_real_redis.py run when REDIS_URL points to an isolated Redis database. The default pytest command requires 100% combined statement and branch coverage.

For the Docker Compose path:

docker compose up -d redis
docker compose run --rm backend uv run pytest
docker compose down

Documentation preview

Build the docs locally with the docs extra:

uv sync --extra dev --extra docs
uv run mkdocs serve

Open the local URL printed by MkDocs. Before opening a pull request, verify the strict build:

uv run mkdocs build --strict

Pull requests

  • Keep the change focused.
  • Add a regression test for behavior changes.
  • Update the README or docs for public API or failure-mode changes.
  • Use Conventional Commits (feat:, fix:, docs:, perf:, chore:).
  • CI must pass before merge.