This guide documents the steps to release a new version of TensorZero .
TensorZero follows CalVer for versioning.
The format is YYYY.MM.PATCH
(e.g. 2025.01.0
, 2025.01.1
).
Important
Make sure to update every instance of the version in the codebase.
The version is referenced in multiple places, including the client's pyproject.toml
and the gateway's status.rs
.
From clients/python
, run:
uv build
uv publish --token $PYPI_TOKEN
Before building the Docker container for the first time, you need to set up your container builder:
docker buildx create \
--name container-builder \
--driver docker-container \
--use \
--bootstrap
Every time you want to build the Docker container, you need to run:
DOCKER_BUILDKIT=1 docker buildx build \
--platform linux/amd64,linux/arm64 \
-t tensorzero/gateway:latest \
-t tensorzero/gateway:XXXX.XX.X \
-f Dockerfile \
--attest type=provenance,mode=max \
--attest type=sbom \
--push \
.
Important
Make sure to replace the XXXX.XX.X
placeholder with the actual version of the Docker container you are building.
Make sure to merge every PR with the merge-on-release
label.
Note
The documentation is currently stored in a separate repository. We're planning to make those files open source in the near future.
Make sure to tag a release in the GitHub repository.