Skip to content

Comments

ci: add conventional commits changelog generation and commit linting#641

Merged
bnusunny merged 1 commit intomainfrom
ci/conventional-changelog
Feb 18, 2026
Merged

ci: add conventional commits changelog generation and commit linting#641
bnusunny merged 1 commit intomainfrom
ci/conventional-changelog

Conversation

@bnusunny
Copy link
Contributor

Summary

Add automated changelog generation and commit message linting to enforce consistent commit conventions.

Changes

Changelog Generation (cliff.toml + .github/workflows/changelog.yaml)

  • Uses git-cliff to auto-generate CHANGELOG.md from conventional commits
  • Triggers on version tag push (v*) or manual dispatch with a version input
  • Groups commits into sections: Features, Bug Fixes, Performance, Documentation, Examples, Dependencies, Maintenance, etc.
  • Catches non-conventional commits (e.g. Dependabot Bump ...) under Dependencies/Other
  • Commits updated CHANGELOG.md back to main and populates GitHub Release notes

Commit Linting (commitlint.config.js + .github/workflows/commitlint.yaml)

  • Enforces Conventional Commits on PRs to main
  • Allowed types: feat, fix, docs, example, examples, chore, refactor, perf, test, ci, revert
  • Max header length: 120 characters
  • Subject case: relaxed (to match existing commit style)

Testing

  • Workflow files validated for correct YAML syntax
  • commitlint config uses standard @commitlint/config-conventional as base

- Add git-cliff config (cliff.toml) for changelog generation from conventional commits
- Add GitHub Actions workflow to generate CHANGELOG.md on tag push or manual trigger
- Add commitlint config enforcing conventional commit format on PRs
- Add commitlint GitHub Actions workflow for PR validation

Supported commit types: feat, fix, docs, example, examples, chore, refactor, perf, test, ci, revert
@bnusunny bnusunny force-pushed the ci/conventional-changelog branch from 0884fc0 to fa62b45 Compare February 18, 2026 01:36
@bnusunny bnusunny merged commit 40e78a9 into main Feb 18, 2026
26 checks passed
@bnusunny bnusunny deleted the ci/conventional-changelog branch February 18, 2026 22:12
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.

2 participants