Changelog Gen
Release notes from the only honest source: the commit history itself.
Commands
python3 scripts/changelog_gen.py # since last tag
python3 scripts/changelog_gen.py --since-tag v1.2.0
python3 scripts/changelog_gen.py --since HEAD~20 --json
python3 scripts/changelog_gen.py --out CHANGELOG.md
Sections (conventional-commit mapping)
| Type | Section |
|---|---|
feat |
Added |
fix, revert |
Fixed |
refactor, perf, style |
Changed |
docs |
Documentation |
test, chore, build, ci |
Internal |
Scope annotations preserved: feat(api): add tokens -> "add tokens (api)".
Non-conventional commits land in Other — visible, not silently dropped.
Pairs with
git-master (the history this reads), repo-audit (the repo hygiene gate
that would flag a missing changelog workflow).