Files
orca/config/scripts
Merge Sim 9cf6ba9cd7 fix(repo): check every file out with LF so shipped scripts still run on Windows
Git for Windows defaults to core.autocrlf=true, so a stock Windows clone
rewrote the working tree on checkout. That is not cosmetic: Orca ships
executable shell scripts straight out of this repo, and a \r on the shebang
line stops them running — `resources/linux/bin/orca-ide` dies with
`env: bash\r: No such file or directory` (exit 127) instead of executing.
The same reaches `resources/darwin/bin/orca`, the deb/rpm maintainer scripts
and .husky/pre-commit. 122 of the 130 tracked shebang files had no protection.

Replace the nine ad-hoc eol=lf pins with one repo-wide `* text=auto eol=lf`.
`text=auto` leaves the binary decision to Git and the index was already
LF-only, so this changes zero index blobs: `git add --renormalize .` across
all 20,050 tracked files stages nothing.

Add config/scripts/check-line-ending-policy.mjs to `pnpm lint`. For every
tracked file the OS has to exec (leading `#!` or the executable bit) it
asserts the committed blob has no CRLF and that `git check-attr eol` resolves
to `lf` — two independent failure modes, neither implying the other. The
population is derived from content rather than hand-listed, because a curated
list would have had to name 122 files today and would silently miss the 123rd.

Whether resources/win32/bin/orca.cmd should be pinned to CRLF is left
undecided; it changes a shipped byte. .gitattributes carries the one-line
follow-up as a comment.

Refs STA-4307
2026-08-29 19:38:55 -07:00
..
2026-05-15 05:44:25 -04:00