Add a CI check that no two paths collide on case-insensitive filesystems

Open Beginner friendly
#11,493 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
72/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
bun, github-actions, typescript

Research direction

Read .github/workflows/validate.yml and inspect the existing bun validate checks to find where a path collision check belongs. Add a check that fails when paths or directories collide after lowercasing and prints both paths; done when validation catches the example collision and passes for unique paths.

Written by the indexing model from the issue text.

Description

The usual shape: two directories in the same place that differ only in case, e.g. .../qwen/ and .../Qwen/. On macOS (APFS is case-insensitive by default) they merge into one directory, and git status then reports the contents as a rename/move. On Linux both exist. Downstream (Nixpkgs), this sometimes hash mismatch issue since the source tree isn't the same between Linux and macOS.

Could we extend bun validate (already run by .github/workflows/validate.yml) with a check that every path plus every directory is unique when lowercased, failing with both offending paths printed.

Dominant language
TypeScript
Stars
7.5k
Forks
2k
Avg merge
40m
Merged PRs (30d)
916

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from anomalyco/models.dev

All issues in anomalyco/models.dev

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.