Releasing
Untie releases use annotated Git tags on the main branch. The root module and the public contrib/mygo module are versioned together.
Prepare
- Start from a clean
mainbranch synchronized withorigin/main. - Update
libraryVersioninversion.go. - Update version references in
README.md,docs/,contrib/mygo/go.mod, andexamples/mygo/go.mod. - Run the complete local gate described in
CONTRIBUTING.md. Review the changelog output locally:
npx --yes changelogithub@15.0.5 --to v0.3.0 --dry
The release notes come from one-line Conventional Commit subjects. The
changelogithub.config.mjs file disables emoji
and excludes nested module tags from root release changelogs.
Tag
Create both module tags on the same commit:
git tag -a v0.3.0 -m "v0.3.0"
git tag -a contrib/mygo/v0.3.0 -m "contrib/mygo/v0.3.0"
git push origin v0.3.0 contrib/mygo/v0.3.0The v* tag starts the release workflow. It first runs the complete reusable
CI suite, then verifies that both module tags point at the release commit and
that nested module requirements match untie.Version(). Only after those checks
pass does it publish the GitHub Release with generated changelog notes.
Do not move or reuse a published tag. Publish a new patch version instead.