Skip to content

feat: generate CHANGELOG.md and release notes from commits via git-cliff#3

Merged
cs50victor merged 1 commit into
mainfrom
feat/changelog-git-cliff
May 30, 2026
Merged

feat: generate CHANGELOG.md and release notes from commits via git-cliff#3
cs50victor merged 1 commit into
mainfrom
feat/changelog-git-cliff

Conversation

@cs50victor

Copy link
Copy Markdown
Owner
  • Adds CHANGELOG.md (Keep a Changelog style) generated from Conventional Commits with git-cliff; replaces the prior GitHub auto-generated release notes
  • cliff.toml config: groups feat/fix/perf/refactor/docs into sections, links PRs, and skips internal ci/chore/style/test commits (the user-facing approach uv and ruff take)
  • scripts/release.sh: one command to bump the version, regenerate the changelog, commit, and tag (mirrors uv/ruff scripts/release.sh)
  • release.yml: new read-only changelog job runs git-cliff and feeds --latest notes into the GitHub Release body; tag-driven flow otherwise unchanged
  • No emojis in the changelog; header kept minimal

Why not rooster (what uv/ruff use): it is Python and PR-label-based, needing a label on every PR. git-cliff fits a solo Rust repo that already uses Conventional Commits.

Validation: generated CHANGELOG.md from real history (0.1.0 + unreleased); actionlint clean on release.yml; shellcheck clean on release.sh

@cs50victor cs50victor merged commit 341e058 into main May 30, 2026
1 check passed
@cs50victor cs50victor deleted the feat/changelog-git-cliff branch May 30, 2026 19:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant