From 80f73800fe6dbf08b7bf33f90bc55adc887280ca Mon Sep 17 00:00:00 2001 From: garrytan Date: Sat, 31 Oct 2026 20:21:38 +0000 Subject: [PATCH] changelog: fragment for the bash 3.2 launch probe fix (#3601) Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com> --- changelog.d/gsta207-c.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 changelog.d/gsta207-c.md diff --git a/changelog.d/gsta207-c.md b/changelog.d/gsta207-c.md new file mode 100644 index 000000000..b9885c70b --- /dev/null +++ b/changelog.d/gsta207-c.md @@ -0,0 +1,5 @@ +**`gstack-doctor` finds the launch probe again on macOS's built-in bash (#3601).** macOS ships bash 3.2 as `/bin/bash`. Bash 3.2 ends a `$( )` at the `)` of a `case` pattern that has no leading `(`. So `bin/gstack-launch-probe.sh` failed to parse there, and the doctor reported the probe as missing. Thanks to @bokeeeey, who reported it in #3601 and proposed the fix in #3602. + +### Fixed +- **`bin/gstack-launch-probe.sh`** writes the pattern with its POSIX leading `(`, which every bash version accepts. +- **A new test scans every tracked shell script** for a `case` pattern without a leading `(` inside `$( )` or `<( )`, so Linux CI catches this before it reaches a Mac. The probe test also parses the file with `/bin/bash`, which is bash 3.2 on a macOS runner.