@@ -132,9 +132,8 @@ jobs:
132132 ! GREP_COLORS='ms=30;48;5;214' grep --color=always -Ex -C 1000000 -e "$pattern" tree.txt
133133 continue-on-error : true
134134 - name : Check for unrecognized *-sys dependencies
135- # TODO: remove `libz-rs|` once https://github.com/rust-lang/flate2-rs/pull/520 is merged.
136135 run : |
137- ! grep -qP '(?<!\b(linux-raw|libz-rs| aws-lc))-sys\b' tree.txt
136+ ! grep -qP '(?<!\b(linux-raw|aws-lc))-sys\b' tree.txt
138137 - name : Wrap cc1 (and cc1plus if present) to record calls
139138 run : |
140139 set -o noclobber # Catch any collisions with existing entries in /usr/local.
@@ -259,7 +258,7 @@ jobs:
259258 with :
260259 persist-credentials : false
261260 - name : Install Rust
262- shell : bash
261+ shell : bash # Use `bash` on all OSes, for `set -e` behavior.
263262 run : |
264263 rustup update stable
265264 rustup default stable
@@ -275,6 +274,12 @@ jobs:
275274 - name : Test (nextest)
276275 env :
277276 GIX_TEST_CREATE_ARCHIVES_EVEN_ON_CI : ' 1'
277+ # We deliberately let this step use different shells on different OSes, each the runner
278+ # default: `bash` on Ubuntu and macOS, but `pwsh` on Windows. `bash` on Windows runners
279+ # would use a modified ("Git Bash") environment that is in some ways nicer for our tests,
280+ # due to being more in line with some Unix-oriented assumptions. So we need to verify that
281+ # the test suite is compatible with being run even outside that environment, including that
282+ # `gix-testtools` is still able to run fixture scripts with the `bash` shell as intended.
278283 run : | # zizmor: ignore[template-injection]
279284 cargo nextest run --workspace --no-fail-fast -- ${{ matrix.test-args }}
280285 - name : Check that tracked archives are up to date
@@ -320,7 +325,7 @@ jobs:
320325 with :
321326 persist-credentials : false
322327 - name : Install Rust
323- shell : bash
328+ shell : bash # Use `bash` (not `pwsh`), for `set -e` behavior.
324329 run : |
325330 rustup update stable
326331 rustup default stable
@@ -435,7 +440,7 @@ jobs:
435440 with :
436441 persist-credentials : false
437442 - name : Install Rust
438- shell : bash
443+ shell : bash # Use `bash` (not `pwsh`), for `$` expansion and `set -e` behavior.
439444 run : |
440445 rustup update stable
441446 rustup default stable
0 commit comments