Skip to content

Changelog Generation

brel changelog computes the next release version (using the same rules as brel next-version) and hands changelog generation to one of two providers. If changelog generation is disabled, or no releasable commits exist, it exits successfully without touching any files.

Configuration lives under [release_pr.changelog]:

[release_pr.changelog]
enabled = true # default
provider = "git-cliff" # default; or "changelogen"
output_file = "CHANGELOG.md" # default

When changelog generation is enabled, brel release-pr stages output_file in the release commit whenever that file exists — so the changelog update ships inside the release PR.

brel runs:

Terminal window
git-cliff --config cliff.toml --unreleased --tag <rendered-tag> --prepend <output_file>
  • Requires the git-cliff binary. The workflow generated by brel init installs it (via taiki-e/install-action@git-cliff on GitHub, cargo install git-cliff elsewhere).
  • Keep a cliff.toml in your repository to customize grouping, formatting, and filtering — brel does not create or manage it.
[release_pr.changelog]
enabled = false

With changelogs disabled, brel changelog is a no-op and brel release-pr skips staging the output file.