Some checks failed
Release / semantic-release (push) Successful in 24s
tests / Unit tests (Linux, Python 3.11) (push) Failing after 5m18s
Release / build-windows (push) Has been cancelled
Release / build-macos (arm64, macos-latest) (push) Has been cancelled
Release / build-macos (x64, macos-15-intel) (push) Has been cancelled
Release / release-main (push) Has been cancelled
Release / release-develop (push) Has been cancelled
Release / build-linux (push) Has been cancelled
Windows checkouts with autocrlf=true inject CR into docker/*.sh, so inside the Linux container `set -euxo pipefail` is read as `pipefail\r` and bash aborts with "set: pipefail: invalid option name", failing setup-melo.sh and the whole image build. .gitattributes already pinned .bat/.cmd/.ps1 to CRLF but never pinned .sh, leaving all nine container scripts exposed. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
16 lines
731 B
Plaintext
16 lines
731 B
Plaintext
# Windows .bat files: cmd.exe needs CRLF for `call :label` to find labels at
|
|
# end of file. autocrlf=true on Windows clones happens to do the right thing,
|
|
# but a Linux clone (or any tool that bypasses autocrlf) would otherwise see
|
|
# LF and silently break label resolution. Pin the working-tree EOL.
|
|
*.bat text eol=crlf
|
|
*.cmd text eol=crlf
|
|
|
|
# PowerShell is more forgiving but the same logic applies.
|
|
*.ps1 text eol=crlf
|
|
|
|
# Shell scripts run inside the Linux container; they MUST stay LF even when
|
|
# checked out on Windows. autocrlf=true would otherwise inject CR and break
|
|
# `set -o pipefail`, shebangs, and heredocs (e.g. docker/setup-melo.sh failing
|
|
# the image build with "set: pipefail: invalid option name").
|
|
*.sh text eol=lf
|