# What changed in commitlint

> 11 changes in commitlint 21 from its official release notes, upgrade guides and advisories: 1 breaking. Each one cited. Sources checked 2026-10-28. HTML: https://unstale.sh/npm/commitlint/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## commitlint 21

### Breaking changes

- Note keywords now require a colon after them when parsing commit messages. (21.2.2) — [release notes](https://github.com/conventional-changelog/commitlint/releases/tag/v21.2.2)

### Performance

- TypeScript configs are loaded directly with jiti, improving config-loading performance. (21.2.4) — [release notes](https://github.com/conventional-changelog/commitlint/releases/tag/v21.2.4)

### Behavior and default changes

- Scopes are now read from the Nx project graph. (21.2.3) — [release notes](https://github.com/conventional-changelog/commitlint/releases/tag/v21.2.3)
- Dynamic await support is detected on Node major versions above 20. (21.2.3) — [release notes](https://github.com/conventional-changelog/commitlint/releases/tag/v21.2.3)
- Packages are now resolved from TypeScript configs. (21.2.2) — [release notes](https://github.com/conventional-changelog/commitlint/releases/tag/v21.2.2)
- Extending configurations now supports Yarn Plug'n'Play. (21.2.2) — [release notes](https://github.com/conventional-changelog/commitlint/releases/tag/v21.2.2)

### Fixes and other changes

- Config file arrays are replaced with seed arrays when loading configuration. (21.2.4) — [release notes](https://github.com/conventional-changelog/commitlint/releases/tag/v21.2.4)
- Corrected the rule configuration type. (21.2.3) — [release notes](https://github.com/conventional-changelog/commitlint/releases/tag/v21.2.3)
- Case rule failure messages now report the case that matched. (21.2.3) — [release notes](https://github.com/conventional-changelog/commitlint/releases/tag/v21.2.3)
- Trailing whitespace is trimmed from the message handed to ignore matchers. (21.2.3) — [release notes](https://github.com/conventional-changelog/commitlint/releases/tag/v21.2.3)
- The parser factory is now run for scoped conventional-changelog presets. (21.2.3) — [release notes](https://github.com/conventional-changelog/commitlint/releases/tag/v21.2.3)
