From 6a8a1777566dee5c114bbc1569b5b91c5c1e6837 Mon Sep 17 00:00:00 2001 From: Toby Martin Date: Thu, 1 Oct 2026 21:35:49 +0000 Subject: [PATCH] build: bind release and CI checks to reviewed Rust 1.97.1 --- .github/workflows/ci.yml | 16 ++++++++-------- .github/workflows/managed-smb.yml | 2 +- .github/workflows/release.yml | 18 +++++++++--------- docs/operations/release/process.md | 17 +++++++++++++++++ 4 files changed, 35 insertions(+), 18 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c6715a6c..2e6165c2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,7 +24,7 @@ jobs: - uses: actions/checkout@v5 with: fetch-depth: 0 - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 with: components: rustfmt - uses: Swatinem/rust-cache@v2 @@ -52,7 +52,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 with: components: clippy - uses: Swatinem/rust-cache@v2 @@ -71,7 +71,7 @@ jobs: timeout-minutes: 25 steps: - uses: actions/checkout@v5 - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 with: components: clippy - uses: Swatinem/rust-cache@v2 @@ -98,7 +98,7 @@ jobs: timeout-minutes: 25 steps: - uses: actions/checkout@v5 - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 with: components: clippy - uses: Swatinem/rust-cache@v2 @@ -116,7 +116,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 with: components: clippy - uses: Swatinem/rust-cache@v2 @@ -131,7 +131,7 @@ jobs: timeout-minutes: 20 steps: - uses: actions/checkout@v5 - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 with: components: clippy - uses: Swatinem/rust-cache@v2 @@ -170,7 +170,7 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v5 - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 - uses: Swatinem/rust-cache@v2 - run: cargo check -p graphql-orm-ai --no-default-features --features postgres - run: cargo check -p graphql-orm-ai --no-default-features --features mssql @@ -184,7 +184,7 @@ jobs: timeout-minutes: 15 steps: - uses: actions/checkout@v5 - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 - uses: Swatinem/rust-cache@v2 - name: Run ORM parity against a test-owned disposable PostgreSQL container run: cargo test -p graphql-orm-ai --no-default-features --features postgres,provider-openai --test postgres_parity -- --test-threads=1 diff --git a/.github/workflows/managed-smb.yml b/.github/workflows/managed-smb.yml index 007b9702..7923fd70 100644 --- a/.github/workflows/managed-smb.yml +++ b/.github/workflows/managed-smb.yml @@ -16,6 +16,6 @@ jobs: timeout-minutes: 20 steps: - uses: actions/checkout@v5 - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 - uses: Swatinem/rust-cache@v2 - run: crates/graphql-orm-storage/tests/samba/run.sh diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index da05aeef..61e7f222 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -98,7 +98,7 @@ jobs: with: ref: ${{ inputs.target_ref }} fetch-depth: 0 - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 with: components: rustfmt - uses: Swatinem/rust-cache@v2 @@ -121,7 +121,7 @@ jobs: - uses: actions/checkout@v5 with: ref: ${{ inputs.target_ref }} - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 with: components: clippy - uses: Swatinem/rust-cache@v2 @@ -144,7 +144,7 @@ jobs: - uses: actions/checkout@v5 with: ref: ${{ inputs.target_ref }} - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 with: components: clippy - uses: Swatinem/rust-cache@v2 @@ -209,7 +209,7 @@ jobs: # the exhaustion; reclaiming the unused preinstalled toolchains keeps # headroom for the crate that originally filled the disk. uses: ./.github/actions/reclaim-runner-disk - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 with: components: clippy - uses: Swatinem/rust-cache@v2 @@ -232,7 +232,7 @@ jobs: - uses: actions/checkout@v5 with: ref: ${{ inputs.target_ref }} - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 - uses: Swatinem/rust-cache@v2 - run: cargo test -p graphql-orm-ai --features graphql-case-pascal --test graphql_naming --locked @@ -245,7 +245,7 @@ jobs: - uses: actions/checkout@v5 with: ref: ${{ inputs.target_ref }} - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 - uses: Swatinem/rust-cache@v2 - name: Run ORM parity against a test-owned disposable PostgreSQL container run: cargo test -p graphql-orm-ai --no-default-features --features postgres,provider-openai --test postgres_parity --locked -- --test-threads=1 @@ -259,7 +259,7 @@ jobs: - uses: actions/checkout@v5 with: ref: ${{ inputs.target_ref }} - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 - uses: Swatinem/rust-cache@v2 - name: Verify alternate AI, storage, and backup lanes run: | @@ -279,7 +279,7 @@ jobs: - uses: actions/checkout@v5 with: ref: ${{ inputs.target_ref }} - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 with: components: clippy - uses: Swatinem/rust-cache@v2 @@ -377,7 +377,7 @@ jobs: # Only the optional router artifact compiles anything in this job. if: inputs.include_router_artifact uses: ./.github/actions/reclaim-runner-disk - - uses: dtolnay/rust-toolchain@stable + - uses: dtolnay/rust-toolchain@1.97.1 - uses: Swatinem/rust-cache@v2 - name: Generate deterministic release bundle env: diff --git a/docs/operations/release/process.md b/docs/operations/release/process.md index f9f02a0d..a7bddd6b 100644 --- a/docs/operations/release/process.md +++ b/docs/operations/release/process.md @@ -59,6 +59,23 @@ sets `publish = false`, and `scripts/check-release-state.py` enforces that boundary. Registry publication would be a separate distribution project, not a side effect of this process. +## Reviewed compiler baseline + +CI and workspace release lanes select Rust **1.97.1** explicitly. The independent +router MSRV lane remains Rust **1.90.0**. Floating `stable` previously selected +Rust 1.99.0 on hosted runners while local acceptance used 1.97.1, producing +non-comparable evidence and new Clippy diagnostics in `async-trait`-generated +`must_use` attributes. The selected compiler retains all warnings-denied gates; +no lint is disabled and no test/provider/backend lane is removed. + +Changing this compiler baseline requires a separately reviewed build change and +full provider/backend validation before publication. Rust 1.99.0 ordinary ORM +and router test execution has passed, but companion Clippy compatibility remains +an open follow-up. Do not claim the pinned lane demonstrates current floating +stable Clippy support. Workflow configuration at the release source SHA records +the selected compiler; consumers may compile the Rust source themselves within +the documented package support contracts. + ## Prepare the release commit 1. Start from a clean branch based on current `main`.