Releasing¶
Version Policy¶
gp-sphinx is pre-1.0. Minor version bumps may include breaking changes.
All publishable workspace packages use a shared lockstep version. The
root gp-sphinx-workspace package stays a bootstrap package, but its
version should stay aligned with the publishable package set.
Release Process¶
uv handles virtualenv creation, package requirements, versioning, building, and publishing. There is no setup.py or requirements files.
Update
CHANGESwith release notesBump the shared version in the root
pyproject.tomland in every package underpackages/*/pyproject.tomlUpdate any exposed
__version__values so they match the shared package versionKeep first-party workspace dependencies pinned exactly to the shared version
Commit and tag with the repo-wide release format:
$ git commit -m 'build(release): Tag v0.0.1a7'
$ git tag v0.0.1a7
Push:
$ git push
$ git push --tags
GitHub Actions validates the shared version, builds all publishable packages, smoke-tests the built artifacts, and publishes them to PyPI