From 976fcc0a36de20b1df3484a10d03647fb2715602 Mon Sep 17 00:00:00 2001 From: "Michael X. Grey" Date: Thu, 19 Dec 2024 21:51:33 +0800 Subject: [PATCH 1/4] Patch dependencies whose latest versions are no longer compatible with 1.75 Signed-off-by: Michael X. Grey --- .github/workflows/ci_linux.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/ci_linux.yaml b/.github/workflows/ci_linux.yaml index d0fb30ba..1cfc35dc 100644 --- a/.github/workflows/ci_linux.yaml +++ b/.github/workflows/ci_linux.yaml @@ -28,6 +28,14 @@ jobs: - name: Setup rust run: rustup default ${{ matrix.rust-version }} + # As new versions of our dependencies come out, they might depend on newer + # versions of the Rust compiler. When that happens, we'll use this step to + # lock down the dependency to a version that is known to be compatible with + # compiler version 1.75. + - name: Patch dependencies + if: ${{ matrix.rust-version == 1.75 }} + run: cargo add home@=0.5.9 + - name: Build default features run: cargo build --workspace - name: Test default features From ccc13aab05a6fc28429ba06c2d95a54fcca7279c Mon Sep 17 00:00:00 2001 From: "Michael X. Grey" Date: Tue, 7 Jan 2025 15:13:51 +0000 Subject: [PATCH 2/4] Move 1.75-related patch operations into a reusable script Signed-off-by: Michael X. Grey --- .github/workflows/ci_linux.yaml | 2 +- scripts/patch-versions-msrv-1_75.sh | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 scripts/patch-versions-msrv-1_75.sh diff --git a/.github/workflows/ci_linux.yaml b/.github/workflows/ci_linux.yaml index 1cfc35dc..116de865 100644 --- a/.github/workflows/ci_linux.yaml +++ b/.github/workflows/ci_linux.yaml @@ -34,7 +34,7 @@ jobs: # compiler version 1.75. - name: Patch dependencies if: ${{ matrix.rust-version == 1.75 }} - run: cargo add home@=0.5.9 + run: ./scripts/patch-versions-msrv-1_75.sh - name: Build default features run: cargo build --workspace diff --git a/scripts/patch-versions-msrv-1_75.sh b/scripts/patch-versions-msrv-1_75.sh new file mode 100644 index 00000000..292036de --- /dev/null +++ b/scripts/patch-versions-msrv-1_75.sh @@ -0,0 +1,4 @@ +# This script is useful for forcing dependencies to be compatible with Rust v1.75 +# Run this script in the root directory of the package. + +cargo add home@=0.5.9 From f78b37495e904c347a09a9c2fd490cdda308d8b2 Mon Sep 17 00:00:00 2001 From: "Michael X. Grey" Date: Wed, 8 Jan 2025 04:23:14 +0000 Subject: [PATCH 3/4] Allow execution of patch script Signed-off-by: Michael X. Grey --- scripts/patch-versions-msrv-1_75.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 scripts/patch-versions-msrv-1_75.sh diff --git a/scripts/patch-versions-msrv-1_75.sh b/scripts/patch-versions-msrv-1_75.sh old mode 100644 new mode 100755 From fb880dc0e0079d8b428b826bfdf2fa0e3b6b3738 Mon Sep 17 00:00:00 2001 From: "Michael X. Grey" Date: Wed, 8 Jan 2025 04:35:38 +0000 Subject: [PATCH 4/4] Remove --ignore-rust-version Signed-off-by: Michael X. Grey --- .github/workflows/ci_linux.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/ci_linux.yaml b/.github/workflows/ci_linux.yaml index cd096a7b..116de865 100644 --- a/.github/workflows/ci_linux.yaml +++ b/.github/workflows/ci_linux.yaml @@ -37,18 +37,18 @@ jobs: run: ./scripts/patch-versions-msrv-1_75.sh - name: Build default features - run: cargo build --workspace --ignore-rust-version + run: cargo build --workspace - name: Test default features - run: cargo test --workspace --ignore-rust-version + run: cargo test --workspace - name: Test diagram - run: cargo test --workspace -F=diagram --ignore-rust-version + run: cargo test --workspace -F=diagram - name: Build single_threaded_async - run: cargo build --features single_threaded_async --ignore-rust-version + run: cargo build --features single_threaded_async - name: Test single_threaded_async - run: cargo test --features single_threaded_async --ignore-rust-version + run: cargo test --features single_threaded_async - name: Build docs - run: cargo doc --ignore-rust-version + run: cargo doc