Skip to content

Release Process

The project follows Semantic Versioning:

  • MAJOR: breaking public API changes
  • MINOR: backward-compatible features
  • PATCH: backward-compatible fixes

Before a release:

uv run ruff check .
uv run mypy
uv run pytest
uv build
uv run mkdocs build --strict

Update:

  • CHANGELOG.md
  • pyproject.toml version
  • src/rag/_version.py

Publishing should happen from a GitHub Release through the Publish workflow using PyPI trusted publishing.