From 7bec135517e732d2f482eb248207636f6932dc57 Mon Sep 17 00:00:00 2001 From: Jake Bailey <5341706+jakebailey@users.noreply.github.com> Date: Thu, 15 Oct 2026 20:03:55 -0700 Subject: [PATCH 1/2] Allow CRLF line endings in release workflow whitespace checks Herebyfile.mjs uses CRLF line endings, which a fresh runner's default whitespace policy rejects when the release version is changed. Local Git settings can hide this failure even when validation succeeds. Apply the repository's CRLF-aware whitespace policy explicitly in the release workflows while retaining checks for actual trailing spaces. --- .github/workflows/new-release-branch.yaml | 2 +- .github/workflows/set-version.yaml | 2 +- .github/workflows/sync-branch.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/new-release-branch.yaml b/.github/workflows/new-release-branch.yaml index 834655bf8998e..0fa8d256b4efb 100644 --- a/.github/workflows/new-release-branch.yaml +++ b/.github/workflows/new-release-branch.yaml @@ -95,7 +95,7 @@ jobs: PACKAGE_VERSION: ${{ inputs.package_version }} run: | set -euo pipefail - git diff --check + git -c core.whitespace=cr-at-eol diff --check mapfile -t changedFiles < <(git diff --name-only) expectedFiles=("Herebyfile.mjs" "tsc/internal/core/version.go") if [ "${changedFiles[*]}" != "${expectedFiles[*]}" ]; then diff --git a/.github/workflows/set-version.yaml b/.github/workflows/set-version.yaml index b7328a178120c..3c9da4aa9c4cc 100644 --- a/.github/workflows/set-version.yaml +++ b/.github/workflows/set-version.yaml @@ -110,7 +110,7 @@ jobs: PACKAGE_VERSION: ${{ inputs.package_version }} run: | set -euo pipefail - git diff --check + git -c core.whitespace=cr-at-eol diff --check mapfile -t changedFiles < <(git diff --name-only) expectedFiles=("Herebyfile.mjs" "tsc/internal/core/version.go") for changedFile in "${changedFiles[@]}"; do diff --git a/.github/workflows/sync-branch.yaml b/.github/workflows/sync-branch.yaml index fd7e5583a1292..bcf61894ab7b4 100644 --- a/.github/workflows/sync-branch.yaml +++ b/.github/workflows/sync-branch.yaml @@ -109,7 +109,7 @@ jobs: - name: Verify clean merge run: | set -euo pipefail - git diff --check + git -c core.whitespace=cr-at-eol diff --check if ! git diff --quiet || ! git diff --cached --quiet; then echo "Validation modified the worktree; refusing to push the merge." >&2 git status --short From 7d1e1e4456b1554f84da61b3d0786ae7b18685a5 Mon Sep 17 00:00:00 2001 From: Jake Bailey <5341706+jakebailey@users.noreply.github.com> Date: Thu, 15 Oct 2026 20:06:19 -0700 Subject: [PATCH 2/2] Match CI change checks in release workflows Release automation already limits changes to the release configuration, and validation handles formatting. An additional whitespace check is redundant and rejects the CRLF line endings used by Herebyfile.mjs. Rely on the existing file allowlists and clean-tree checks, consistent with CI, instead of maintaining a separate whitespace policy. --- .github/workflows/new-release-branch.yaml | 1 - .github/workflows/set-version.yaml | 1 - .github/workflows/sync-branch.yaml | 1 - 3 files changed, 3 deletions(-) diff --git a/.github/workflows/new-release-branch.yaml b/.github/workflows/new-release-branch.yaml index 0fa8d256b4efb..7fa9e2b3b81ff 100644 --- a/.github/workflows/new-release-branch.yaml +++ b/.github/workflows/new-release-branch.yaml @@ -95,7 +95,6 @@ jobs: PACKAGE_VERSION: ${{ inputs.package_version }} run: | set -euo pipefail - git -c core.whitespace=cr-at-eol diff --check mapfile -t changedFiles < <(git diff --name-only) expectedFiles=("Herebyfile.mjs" "tsc/internal/core/version.go") if [ "${changedFiles[*]}" != "${expectedFiles[*]}" ]; then diff --git a/.github/workflows/set-version.yaml b/.github/workflows/set-version.yaml index 3c9da4aa9c4cc..dbf2e235b3e60 100644 --- a/.github/workflows/set-version.yaml +++ b/.github/workflows/set-version.yaml @@ -110,7 +110,6 @@ jobs: PACKAGE_VERSION: ${{ inputs.package_version }} run: | set -euo pipefail - git -c core.whitespace=cr-at-eol diff --check mapfile -t changedFiles < <(git diff --name-only) expectedFiles=("Herebyfile.mjs" "tsc/internal/core/version.go") for changedFile in "${changedFiles[@]}"; do diff --git a/.github/workflows/sync-branch.yaml b/.github/workflows/sync-branch.yaml index bcf61894ab7b4..ec726a91f227e 100644 --- a/.github/workflows/sync-branch.yaml +++ b/.github/workflows/sync-branch.yaml @@ -109,7 +109,6 @@ jobs: - name: Verify clean merge run: | set -euo pipefail - git -c core.whitespace=cr-at-eol diff --check if ! git diff --quiet || ! git diff --cached --quiet; then echo "Validation modified the worktree; refusing to push the merge." >&2 git status --short