Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( ErrChangelog = errors.New("changelog generation failed") ErrRelease = errors.New("release tagging failed") )
Functions ¶
func Changelog ¶
func Changelog() error
Changelog generates a draft changelog section for the next release from the Conventional Commit history and prepends it to 'CHANGELOG.md', using git-cliff and the repo's 'cliff.toml'.
The output is a *draft*: review and curate it into user-facing notes before releasing. See docs/developer/how-to/releasing.md.
git-cliff must be installed and on PATH; this target does not install it. The same target runs locally and in CI (CI just installs git-cliff first), so there is a single changelog flow.
func Release ¶
func Release() error
Release creates the release tag from CHANGELOG.md. It reads the version from the top `## [X.Y.Z]` heading and creates a matching annotated git tag (vX.Y.Z) on HEAD, so the tag and the changelog can never disagree. It does not push: pushing the tag is the point of no return for a release, so that stays an explicit step (manual locally, or a dedicated CI step).
It is idempotent: if the changelog version is already tagged it does nothing, so it is safe to trigger on every merge to 'main' and only tags when the changelog carries a new version. Run it after the changelog PR has merged (see docs/developer/how-to/releasing.md).
Types ¶
This section is empty.