From c97ef4e62be7723a5eb078db07cd96a6f9c7e981 Mon Sep 17 00:00:00 2001 From: Eliah Kagan Date: Mon, 12 Jan 2026 12:39:39 -0500 Subject: [PATCH 1/2] Delist `libz-rs-sys` from "pure" builds' `*-sys` allowlist Because we no longer depend on it since bc2f339 (#2370). For context on the associated TODO this completes and removes, see: - https://github.com/rust-lang/flate2-rs/pull/520 (superseded) - https://github.com/rust-lang/flate2-rs/pull/524 - https://github.com/rust-lang/flate2-rs/pull/525 --- .github/workflows/ci.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c145ac947a3..fcc04ba1a4e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -132,9 +132,8 @@ jobs: ! GREP_COLORS='ms=30;48;5;214' grep --color=always -Ex -C 1000000 -e "$pattern" tree.txt continue-on-error: true - name: Check for unrecognized *-sys dependencies - # TODO: remove `libz-rs|` once https://github.com/rust-lang/flate2-rs/pull/520 is merged. run: | - ! grep -qP '(? Date: Mon, 12 Jan 2026 12:54:54 -0500 Subject: [PATCH 2/2] Add missing `shell: bash` comments as well as a conceptual comment - Add missing comments on step-level `shell: bash` that were introduced without them in #2340. - Add a conceptual comment where step-level `shell: bash` is intentionally omitted for the main nextest step of the `test-fast` jobs. These changes are as discussed in #2340 comments, in particular: https://github.com/GitoxideLabs/gitoxide/pull/2340#issuecomment-3712001807 --- .github/workflows/ci.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fcc04ba1a4e..ba8d9610fef 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -258,7 +258,7 @@ jobs: with: persist-credentials: false - name: Install Rust - shell: bash + shell: bash # Use `bash` on all OSes, for `set -e` behavior. run: | rustup update stable rustup default stable @@ -274,6 +274,12 @@ jobs: - name: Test (nextest) env: GIX_TEST_CREATE_ARCHIVES_EVEN_ON_CI: '1' + # We deliberately let this step use different shells on different OSes, each the runner + # default: `bash` on Ubuntu and macOS, but `pwsh` on Windows. `bash` on Windows runners + # would use a modified ("Git Bash") environment that is in some ways nicer for our tests, + # due to being more in line with some Unix-oriented assumptions. So we need to verify that + # the test suite is compatible with being run even outside that environment, including that + # `gix-testtools` is still able to run fixture scripts with the `bash` shell as intended. run: | # zizmor: ignore[template-injection] cargo nextest run --workspace --no-fail-fast -- ${{ matrix.test-args }} - name: Check that tracked archives are up to date @@ -319,7 +325,7 @@ jobs: with: persist-credentials: false - name: Install Rust - shell: bash + shell: bash # Use `bash` (not `pwsh`), for `set -e` behavior. run: | rustup update stable rustup default stable @@ -434,7 +440,7 @@ jobs: with: persist-credentials: false - name: Install Rust - shell: bash + shell: bash # Use `bash` (not `pwsh`), for `$` expansion and `set -e` behavior. run: | rustup update stable rustup default stable