Releasing Marionette
Marionette releases are source tags. Prepare the release commit completely before creating the tag so package consumers, documentation, and CI all refer to the same tree.
Release Candidate
- Set
build.zig.zonto the intended version. - Change the changelog heading to
vX.Y.Z - Unreleasedand summarize every user-visible change since the previous tag. - Point README and documentation install commands at
vX.Y.Z. - Run formatting and
git diff --check. - Run the Debug, ReleaseSafe, and ReleaseFast test and validation matrix.
- Push the release commit and require green CI and Pages builds.
Do not create the tag while any advertised validation or supported-platform job is failing.
Publish
After the release commit is green:
- Replace
Unreleasedin the changelog heading with the release date. - Commit and push that date-only change, then require green CI again.
- Create an annotated
vX.Y.Ztag at the dated release commit. - Push the tag promptly. Between the release-commit push and the tag push,
the install commands published from
mainpoint at a tag that does not exist yet, so keep that window short and do not pause the release between these steps. - Create a GitHub Release from the tag using the changelog section as the release notes.
- Verify the documented
zig fetchcommand from a clean temporary consumer.