NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #3215 most downloaded on npm
Lint your commit messages
Last release 15 days ago
19 Sep 2026
Release timing varies
gaps range from 8 days to 5 months
Nearly every release is documented
notes for 58 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
9 years old
95 releases · first in 2017
fix(types): correct breaking-change-exclamation-mark rule config type by @lazerg in #4954
Full Changelog: v21.2.2...v21.2.3
One column per quarter.
parse: require colon after note keywords (conventional-commits-parser 7.1.2) ( #4927 ) ( b83c515 ), closes conventional-changelog/conventional-changel
Full Changelog: v21.2.1...v21.2.2
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
feat(resolve-extends): resolve pure-ESM presets (conventional-changelog v7/v9/v10) by @escapedcat in #4859
Full Changelog: v21.1.0...v21.2.0
fix: remove duplicate es-toolkit@1.47.1 keys from lockfile by @escapedcat in #4833
Full Changelog: v21.0.2...v21.1.0
fix: emit actionable error when --edit cannot find COMMIT_EDITMSG ( #589 ) by @escapedcat in #4755
Full Changelog: v21.0.1...v21.0.2
fix(load): only resolve relative formatter paths by @escapedcat in #4761
Full Changelog: v21.0.0...v21.0.1
widen cz-commitlint inquirer peer dep to support v9-v12 #4554 (#4682) (341f0c4)
chore!: minimum node version v22 (#4679) (ac2b3f4), closes #4679
Co-authored-by: Claude Opus 4.6 (1M context) noreply@anthropic.com
Note: Version bump only for package @commitlint/is-ignored
Co-authored-by: Claude Opus 4.6 (1M context) noreply@anthropic.com
Note: Version bump only for package @commitlint/is-ignored
Heads-up: --legacy-output is a transitional escape hatch. It will be removed in a future major release. Plan to migrate your parsers / snapshots to th
Heads-up: --legacy-output is a transitional escape hatch. It will be removed in a future major release. Plan to migrate your parsers / snapshots to the new format during the v21 lifecycle.
Full Changelog: v20.5.3...v21.0.0
feat(cz-commitlint): add exclamation mark support for breaking changes by @mrt181 in https://github.com/conventional-changelog/commitlint/pull/4655
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v20.4.4...v20.5.0
fix(types): allow context parameter in QualifiedRuleConfig functions by @Br1an67 in https://github.com/conventional-changelog/commitlint/pull/4636
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v20.4.3...v20.4.4
fix: npx usage #613 by @escapedcat in https://github.com/conventional-changelog/commitlint/pull/4630
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v20.4.2...v20.4.3
revert: replace all lodash string methods with kasi #4602 by @escapedcat in https://github.com/conventional-changelog/commitlint/pull/4621
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v20.4.0...v20.4.1
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
feat: upgrade conventional commit packages #4082 by @escapedcat in https://github.com/conventional-changelog/commitlint/pull/4597
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v20.3.1...v20.4.0
fix(types): add scope-delimiter-style types by @what1s1ove in https://github.com/conventional-changelog/commitlint/pull/4592
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v20.3.0...v20.3.1
update dependency tar-fs to v3.1.1 [security] (#4550) (273a43e)
feat(rules)!: make body-max-line-length ignore lines with URLs (#4486) (2f37a88), closes #4486
body-max-line-length will be ignoredNote: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
escapedcat committed Jan 8, 2026
Configuration menu
View commit details
Copy full SHA for be3a280
Browse repository at this point
Copy the full SHA
be3a280 View commit details
Browse the repository at this point in the history
Loading
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
feat(lint): update ESLint configuration to use Vitest and remove Jest by @alsmadi99 in https://github.com/conventional-changelog/commitlint/pull/4542
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v20.1.0...v20.2.0
feat(rules)!: make body-max-line-length ignore lines with URLs (#4486) (2f37a88), closes #4486 by @aspiers
body-max-line-length will be ignoredFull Changelog: https://github.com/conventional-changelog/commitlint/compare/v19.9.1...v20.0.0
perf(rules): optimize header-trim by @felipecrs in https://github.com/conventional-changelog/commitlint/pull/4363
husky init to husky install by @Stautvis in https://github.com/conventional-changelog/commitlint/pull/4356Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v19.8.0...v19.8.1
fix(config-lerna-scopes): remove deprecated @lerna/project dependency by @janbiasi in https://github.com/conventional-changelog/commitlint/pull/4284
node: prefix to bypass require.cache call for builtins by @Fdawgs in https://github.com/conventional-changelog/commitlint/pull/4302'use strict' directives by @Fdawgs in https://github.com/conventional-changelog/commitlint/pull/4301Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v19.7.1...v19.8.0
fix(config-nx-scopes): fix for projects without explicit targets by @gperdomor in https://github.com/conventional-changelog/commitlint/pull/4261
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v19.7.0...v19.7.1
feat: support using delimiter in scope-enum by @colinaaa in https://github.com/conventional-changelog/commitlint/pull/4161
scope-enum by @colinaaa in https://github.com/conventional-changelog/commitlint/pull/4161Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v19.5.0...v19.6.0
feat(cli): use special errorCode for missing rules/config #4142 by @escapedcat in https://github.com/conventional-changelog/commitlint/pull/4143
execa with tinyexec and Node's child_process.spawnSync by @ziebam in https://github.com/conventional-changelog/commitlint/pull/4134Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v19.4.1...v19.5.0
fix(is-ignored): ignore "amend!" commits by @chalkygames123 in https://github.com/conventional-changelog/commitlint/pull/4024
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v19.2.1...v19.2.2
fix: mark @types/conventional-commits-parser as dep for @commitlint/types by @JounQin in https://github.com/conventional-changelog/commitlint/pull/394
@types/conventional-commits-parser as dep for @commitlint/types by @JounQin in https://github.com/conventional-changelog/commitlint/pull/3944Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v19.0.2...v19.0.3
Note: Version bump only for package @commitlint/is-ignored
migrate to pure ESM
feat: migrate to pure ESM
chore: update snapshot
fix: load parserPreset with another await
test: migrate to vitest
test: remove no replacement --runInBand test-ci script
chore: fix code reviews
refactor(load): rewrite resolve logic
fix(config-nx-scopes): fix syntax error
feat(resolve-extends): add resolveFrom and loadParserPreset
feat(load): use resolveFrom and loadParserPreset from resolve-extends
test: include only @commitlint/* packages src in coverage
test: explicit import vitest utilities
test: remove @jest/globals from dependencies
fix(resolve-extends): resolveFrom output should be platform aware
test: restore NO_COLOR to test script
chore: fix linting issues
fix: should use fileURLToPath instead of pathname for Windows compatibility
Apply suggestions from code review
fix: should reuse cli instead call yargs()
feat(cli): set terminalWidth as wrap to avoid work break on help
Update .eslintrc.cjs
feat: migrate @commitlint/config-conventional to pure ESM
feat!: migrate to pure ESM (#3850) (3423735), closes #3850 by @JounQin Thanks to @marcalexiei and @knocte for the review and feedback
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v18.6.2...v19.0.0# 19.0.0 (2024-02-27)
Features
Docs
update dependency semver to v7.6.0
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v18.6.0...v18.6.1
feat(rules): add header-trim rule by @marcalexiei in https://github.com/conventional-changelog/commitlint/pull/3871
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v18.5.1...v18.6.0
Fix subject-full-stop false positive when using ellipsis by @Mersho in https://github.com/conventional-changelog/commitlint/pull/3839
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v18.4.3...v18.4.4
@types/node dependency (#3801) (7b3f8b3)fix: update dependency read-pkg to v9.0.1 by @renovate in https://github.com/conventional-changelog/commitlint/pull/3777
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v18.4.2...v18.4.3
Fix/3768: Consider ESM when selecting cosmiconfig loaders by @joberstein in https://github.com/conventional-changelog/commitlint/pull/3776
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v18.4.1...v18.4.2
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
drop node v14 and v16 support
chore: remove unused types
docs: prepare node update and new release
chore!: minimum TS version v5
drop TS v4 support
ci: remove node v14/16 checks
chore: adjust node types to minimal supported version
chore!: further major versions of other deps
upgrade conventional-changelog-conventionalcommits, conventional-commits-parser, conventional-changelog-atom,
docs: simplify releases and remove roadmap
bump cosmiconfig version and conditionally support mjs config by @joberstein
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v18.3.0...v18.4.0
update dependency read-pkg to v8
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v18.0.0...v18.1.0
chore!: minimum node version v18 (#3644) (5b4aeaf), closes #3644
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.8.1...v18.0.0
updated some deps to support latest TS version https://github.com/conventional-changelog/commitlint/pull/3700
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.8.0...v17.8.1
Note: Version bump only for package @commitlint/root
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
chore(container): add pullrequest event to container build workflow trigger
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.7.2...v17.8.0
load: use cosmiconfig-typescript-loader v5 to remove ts-node dependency for @commitlint/load
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.6.7...v17.7.0
docs: fix grammar in sentence by @jschepke in https://github.com/conventional-changelog/commitlint/pull/3625
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.6.6...v17.6.7
build(deps): bump semver from 7.5.0 to 7.5.2 by @dependabot in https://github.com/conventional-changelog/commitlint/pull/3620
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.6.5...v17.6.6
add named export to @commitlint/parse
config-lerna-scopes: add missing dependency
parse: allow setting fieldPattern in parserOpts
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.4.3...v17.4.4
load: fixes a bug when a ts commitlint config is compiled twice
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.4.1...v17.4.2
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
stop truncating the body in presence of dashes
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.3.0...v17.4.0
update dependency cosmiconfig-typescript-loader to v4.1.0
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.1.2...v17.2.0
update dependency cosmiconfig-typescript-loader to v3
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.0.3...v17.1.0
update dependency cosmiconfig-typescript-loader to v2.0.2
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v17.0.2...v17.0.3
Note: Version bump only for package @commitlint/is-ignored
drop node v12 support
chore: rename circleci windows job
node version is not defned by the name anyways (i think)
update dependency yargs to v17.5.1
drop node v12 support
chore: rename circleci windows job
Migrate @nrwl/tao to nx following 13.9.0 release by @fguitton in https://github.com/conventional-changelog/commitlint/pull/3135
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v16.3.0...v17.0.0
rules: footer-leading-blank should work with body comments
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v16.2.3...v16.2.4
update dependency cosmiconfig-typescript-loader to v1.0.5
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v16.2.0...v16.2.1
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
is-ignored: ignore merge tag commit messages
Full Changelog: https://github.com/conventional-changelog/commitlint/compare/v15.0.0...v16.0.0
prompt: correct import kind in prompt package
Co-authored-by: Renovate Bot bot@renovateapp.com Co-authored-by: escapedcat github@htmlcss.de
test(config-lerna-scopes): reuse npm bootstrap to simplify tests
test(config-lerna-scopes): reuse npm bootstrap to simplify tests
test: fix issue after merge
test: one more fix after merge
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Renovate Bot bot@renovateapp.com Co-authored-by: escapedcat github@htmlcss.de
Big thanks to @armano2 ❤️
support multiple scopes and multiple cases & fix sentence-case is not consistent with commitlint/cli (#2806) (2c71a7e), closes #2806 #2782
parse: enforce secure version of conventional-commits-parser
conventional-commits-parser (#2776) (a351801)cz-commitlint: fix minor formatting issues
COMMIT_EDIT_MSG (#2618) (5badf6d), closes #2351update dependency chalk to v4.1.1
add subject-exclamation-mark rule to improve error messages (#2593) (be701bd)
chore!: remove node 10 support (#2596) (4db4ba1), closes #2596
Nothing published for this version
update dependency fs-extra to v10
rules: fix subject-full-stop rule config value type
update dependency read-pkg to v6
next)Nothing published for this version
update dependency conventional-commits-parser to v3.2.1
Rule | AsyncRule | SyncRule as rule value type in Plugin (#2146) (75b67b8)extends field should be resolved from left to right (#2070) (c0a86f5)extends resolution is changed from right-to-left to left-to-rightupdate dependency @types/fs-extra to ^9.0.1 (#2088) (cb1028e)
refactor!: drop support for lerna v2 (59667b3)
also remove node 13 because we do not support experimental versions
Co-authored-by: Cedric van Putten me@bycedric.com
Co-authored-by: Cedric van Putten me@bycedric.com
Note: Version bump only for package @commitlint/is-ignored
Note: Version bump only for package @commitlint/is-ignored
also remove node 13 because we do not support experimental versions
Co-authored-by: Cedric van Putten me@bycedric.com
Co-authored-by: Cedric van Putten me@bycedric.com
remove unnecessary react babel transforms
extends field should be resolved from left to right (#2070) (c0a86f5)extends resolution is changed from right-to-left to left-to-rightYour coding agent can read these notes before it upgrades. Set up the MCP server →