Skip to content

Changelog Generation

Overview

Automated changelog generation from conventional commit messages.

Contents

  • conventional_commits.md - Commit message format specification
  • changelog_config.yml - Configuration for changelog generators
  • changelog_template.md - Template for manual changelog entries
  • release_notes_template.md - User-facing release notes template

Quick Start

Write Conventional Commits

# Feature
git commit -m "feat(reverb): add shimmer reverb algorithm"

# Bug fix
git commit -m "fix(buffer): prevent overflow in circular buffer"

# Breaking change
git commit -m "feat(api)!: change AudioBuffer to use std::span

BREAKING CHANGE: AudioBuffer API changed from raw pointers to std::span.
See migration guide for details."

Generate Changelog

Using git-cliff:

git cliff --config changelog_config.yml --output CHANGELOG.md

Using conventional-changelog:

conventional-changelog -p angular -i CHANGELOG.md -s

Commit Types

Type Changelog Section Version Bump
feat Added MINOR
fix Fixed PATCH
perf Performance PATCH
docs Documentation -
BREAKING CHANGE Breaking Changes MAJOR

See conventional_commits.md for complete guide.

Validation

Install pre-commit hook:

cp hooks/commit-msg .git/hooks/
chmod +x .git/hooks/commit-msg

  • ../03_13_00_versioning_strategy/ - Version numbering rules
  • ../03_13_05_release_validation/ - Pre-release checklist