Skip to content

fix: subject-case rule rejects non-Latin (Cyrillic) lowercase subjects after update to v20.4.0 #4620

@unktir

Description

@unktir

Steps to Reproduce

1. Update commitlint packages from `20.3.1` to `20.4.0`:
  - `@commitlint/cli`
  - `@commitlint/config-conventional`
  - `@commitlint/types`
2. Use the default `@commitlint/config-conventional` configuration.
3. Run a commit with a Cyrillic lowercase subject, for example:

git commit -m "chore(deps): обновлены все зависимости"

4. Observe that the commit is rejected with a `subject-case` error.
5. Add a single Latin lowercase character at the beginning of the subject:

git commit -m "chore(deps): t обновлены все зависимости"

6. Observe that the commit now passes successfully.

Current Behavior

Commitlint rejects commit messages whose subject is written entirely in Cyrillic, even though it is fully lowercase:

✖ subject must not be sentence-case, start-case, pascal-case, upper-case [subject-case]

This happens despite the subject clearly being lowercase in the original language.

Expected Behavior

Commitlint should correctly detect lowercase subjects written in non-Latin scripts (e.g. Cyrillic) and accept them when they are not sentence-case, start-case, pascal-case, or upper-case.

At minimum, behavior should remain consistent with versions prior to 20.4.0, where the same commit message was accepted.

Affected packages

  • cli
  • core
  • prompt
  • config-angular

Possible Solution

No response

Context

This issue breaks existing workflows for teams writing commit messages in non-English languages.

After upgrading to 20.4.0, previously valid commit messages started failing commit hooks, forcing developers either to:

  • Modify commit message content unnaturally (e.g. prefixing with Latin characters)
  • Disable or override the subject-case rule

commitlint --version

@commitlint/cli@20.4.0

git --version

v2.52.0

node --version

v22.22.0

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions