NullHub uses CalVer with the format YYYY.M.D (e.g., v2026.3.12).
Pushing a tag matching v* to main triggers the Release workflow, which builds binaries for all supported platforms and publishes a GitHub Release.
-
Checkout and update
maingit checkout main git pull origin main
-
Create a release branch
git checkout -b release/vYYYY.M.D
-
Bump the version in
build.zig.zonUpdate the
.versionfield to match today's date:- .version = "2026.3.11", + .version = "2026.3.12",
-
Commit the version bump
git add build.zig.zon git commit -m "vYYYY.M.D" -
Push the branch and create a PR
git push origin release/vYYYY.M.D gh pr create --title "vYYYY.M.D" --body "Version bump for vYYYY.M.D release."
-
Merge the PR (or get it reviewed and merged)
-
Tag the release on
maingit checkout main git pull origin main git tag vYYYY.M.D git push origin vYYYY.M.D
The tag push triggers CI, which builds and publishes the release automatically.
- The tag must be pushed to
main— tagging a feature branch won't produce a release. - If multiple releases happen on the same day, append a patch number (e.g.,
v2026.3.12.1), though this should be rare. - NullClaw follows the same versioning and release process. Both repos should be released together with matching version numbers.