From 2ea8ec45e08cee84ed5ad06192c13edcf6316dc1 Mon Sep 17 00:00:00 2001 From: Oliver Cieliszak Date: Thu, 13 Aug 2026 10:29:24 -0700 Subject: [PATCH] fix(gh-7): use POSIX character class in release.yml sed PR #2 converted this same expression from the GNU-only \s shorthand to the POSIX [[:space:]] class, but it only touched install.sh, so release.yml kept the original form. Not a live bug - that line only runs on ubuntu-latest, where GNU sed handles the shorthand fine, and v0.9.2 through v0.11.0 all passed the version check. The cost is that BSD sed does not fail loudly on it: it silently declines to substitute and passes the whole line through, so reproducing the release gate locally on macOS reports a bogus MISMATCH. That happened for real while cutting v0.11.0. The repo now speaks one dialect of this expression instead of two. Closes #7 Co-Authored-By: Claude Opus 5 (1M context) --- .github/workflows/release.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index f28d8fd..90efdfa 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -16,7 +16,10 @@ jobs: - name: Verify tag matches distro.toml version run: | - TOML_VERSION="$(grep '^version' distro.toml | sed -E 's/^[^=]+=\s*"([^"]+)".*/\1/')" + # Uses the POSIX [[:space:]] class rather than the GNU-only shorthand, + # so this check can be reproduced locally on macOS (BSD sed) too. + # Keeps one dialect across the repo - matches install.sh (see #2). + TOML_VERSION="$(grep '^version' distro.toml | sed -E 's/^[^=]+=[[:space:]]*"([^"]+)".*/\1/')" TAG_VERSION="${GITHUB_REF_NAME#v}" if [[ "$TAG_VERSION" != "$TOML_VERSION" ]]; then echo "ERROR: tag ${GITHUB_REF_NAME} does not match distro.toml version ${TOML_VERSION}"