Skip to content

no_case_conflicts

Flag paths that differ only by case (e.g. README.md + readme.md). They can’t coexist on macOS HFS+/APFS or Windows NTFS defaults, so a Linux-only dev committing both breaks checkouts for teammates.

This rule takes no kind-specific options.

Plus the common paths, level, id, and when fields. This table is generated from the JSON Schema; option types and defaults are authoritative.

A repo containing both README.md and readme.md

Section titled “A repo containing both README.md and readme.md”

The rule fires on this repository:

README.md
other.txt
readme.md
README.md
# upper
readme.md
# lower

With this .alint.yml:

version: 1
rules:
- id: no-case
kind: no_case_conflicts
paths: "**"
level: error

alint check reports:

Terminal window
--- README.md ------------------------------------------------------------------
x error no-case
case-insensitive collision: README.md (collides with: readme.md)
--- readme.md ------------------------------------------------------------------
x error no-case
case-insensitive collision: readme.md (collides with: README.md)
Summary (2 violations):
x 2 errors
0 passing * 1 failing

Filenames that stay unique when case is ignored

Section titled “Filenames that stay unique when case is ignored”

This repository is compliant:

CONTRIBUTING.md
README.md
src/
src/lib.rs
src/util.rs
CONTRIBUTING.md
# guide
README.md
# hi

With this .alint.yml:

version: 1
rules:
- id: no-case
kind: no_case_conflicts
paths: "**"
level: error

alint check reports:

Terminal window
v All 1 rule(s) passed.