From 560e183a23aa6315d13081da352453e3a501e89e Mon Sep 17 00:00:00 2001 From: Brian Thorne Date: Thu, 11 Jun 2026 16:02:19 +1200 Subject: [PATCH] ci: bump GitHub Actions to Node 24 runtimes GitHub forces Node.js 20 actions to run on Node 24 from June 16th 2026 and removes Node 20 from runners in September 2026. Bump all pinned actions to their current majors, which run on node24 natively: - actions/checkout v4 -> v6 (credential persistence change is irrelevant here; no workflow pushes via git after checkout) - actions/setup-python v5 -> v6 - actions/upload-artifact v4 -> v7 - actions/download-artifact v4 -> v8 (both usages download by name with an explicit path, so the v5 by-id path change and v8 direct-download behavior do not apply) - actions/setup-node v4 -> v6 - actions/github-script v7 -> v9 (script only uses the injected github/context objects, unaffected by the ESM breaking changes) - actions/cache v3 -> v5 - cloudflare/wrangler-action v3 -> v4 (default wrangler version change does not apply; both usages pin wranglerVersion explicitly) Swatinem/rust-cache@v2 and rust-lang/crates-io-auth-action@v1 already resolve to node24 releases on their floating major tags, and dtolnay/rust-toolchain is a composite action. --- .github/workflows/ci.yaml | 6 +++--- .github/workflows/docs-preview.yml | 10 +++++----- .github/workflows/docs.yml | 10 +++++----- .github/workflows/release.yml | 18 +++++++++--------- 4 files changed, 22 insertions(+), 22 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 76d2e637..93c51d6c 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -13,7 +13,7 @@ jobs: name: Rust format, lint, and test runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 # NOTE: When updating the biome version, also update reflectapi/src/codegen/typescript.rs - uses: biomejs/setup-biome@v2 with: @@ -34,7 +34,7 @@ jobs: name: Python runtime tests runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - uses: astral-sh/setup-uv@v3 - name: Run tests working-directory: reflectapi-python-runtime @@ -49,7 +49,7 @@ jobs: name: Python codegen smoke test runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - uses: dtolnay/rust-toolchain@stable - uses: Swatinem/rust-cache@v2 - uses: astral-sh/setup-uv@v3 diff --git a/.github/workflows/docs-preview.yml b/.github/workflows/docs-preview.yml index 776f7eef..0093723c 100644 --- a/.github/workflows/docs-preview.yml +++ b/.github/workflows/docs-preview.yml @@ -10,15 +10,15 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Install Rust uses: dtolnay/rust-toolchain@stable - name: Install Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 - name: Cache Rust dependencies - uses: actions/cache@v3 + uses: actions/cache@v5 with: path: | ~/.cargo/registry @@ -41,7 +41,7 @@ jobs: mdbook build - name: Deploy to Cloudflare Workers - uses: cloudflare/wrangler-action@v3 + uses: cloudflare/wrangler-action@v4 with: apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} @@ -50,7 +50,7 @@ jobs: workingDirectory: docs - name: Update PR comment with preview URL - uses: actions/github-script@v7 + uses: actions/github-script@v9 if: github.event_name == 'pull_request' with: script: | diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index cff585b9..8dc15f7b 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -12,12 +12,12 @@ jobs: name: Test Documentation Examples runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Install Rust uses: dtolnay/rust-toolchain@stable - name: Cache dependencies - uses: actions/cache@v3 + uses: actions/cache@v5 with: path: | ~/.cargo/registry @@ -58,13 +58,13 @@ jobs: if: github.ref == 'refs/heads/main' steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Install Rust uses: dtolnay/rust-toolchain@stable - name: Cache Rust dependencies - uses: actions/cache@v3 + uses: actions/cache@v5 with: path: | ~/.cargo/registry @@ -87,7 +87,7 @@ jobs: mdbook build - name: Deploy to Cloudflare Workers - uses: cloudflare/wrangler-action@v3 + uses: cloudflare/wrangler-action@v4 with: apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 98a4d68d..3954f452 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -30,8 +30,8 @@ jobs: name: Verify version consistency runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 with: python-version: "3.12" - name: Tag matches all package versions @@ -119,7 +119,7 @@ jobs: permissions: id-token: write steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - uses: dtolnay/rust-toolchain@stable - uses: rust-lang/crates-io-auth-action@v1 @@ -164,8 +164,8 @@ jobs: needs: [version-check] runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: actions/setup-python@v5 + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 with: python-version: "3.12" - name: Build sdist + wheel @@ -173,7 +173,7 @@ jobs: run: | python -m pip install --upgrade build python -m build - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@v7 with: name: python-runtime-dist path: reflectapi-python-runtime/dist/* @@ -190,7 +190,7 @@ jobs: permissions: id-token: write steps: - - uses: actions/download-artifact@v4 + - uses: actions/download-artifact@v8 with: name: python-runtime-dist path: dist/ @@ -204,8 +204,8 @@ jobs: needs: [publish-crates, publish-pypi] runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 - - uses: actions/download-artifact@v4 + - uses: actions/checkout@v6 + - uses: actions/download-artifact@v8 with: name: python-runtime-dist path: dist/