From 09064822d918e9091ab73e248aa0b81842bac5c0 Mon Sep 17 00:00:00 2001 From: Matthias Geier Date: Mon, 14 Sep 2026 09:59:08 +0200 Subject: [PATCH 1/4] CI: pin rust-toolchain --- .github/workflows/check.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 353b796..6485b67 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -32,8 +32,9 @@ jobs: node-version: 22 cache: pnpm - name: Install - uses: dtolnay/rust-toolchain@stable + uses: dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772 with: + toolchain: stable components: clippy, rustfmt - name: Install dependencies run: pnpm install @@ -108,7 +109,7 @@ jobs: node-version: 22 cache: pnpm - name: Install - uses: dtolnay/rust-toolchain@stable + uses: dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772 with: toolchain: stable targets: ${{ matrix.settings.target }} From ac6706282432be20456e7a6e3b6dd15fc9fb6ad9 Mon Sep 17 00:00:00 2001 From: Matthias Geier Date: Mon, 14 Sep 2026 10:00:01 +0200 Subject: [PATCH 2/4] CI: switch from pnpm/action-setup to pnpm/setup --- .github/workflows/build.yml | 11 ++----- .github/workflows/check.yml | 63 ++++++++++--------------------------- 2 files changed, 20 insertions(+), 54 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 29b3635..67e1cbd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -27,15 +27,10 @@ jobs: id-token: write steps: - uses: actions/checkout@v7 - - name: setup pnpm - uses: pnpm/action-setup@v6 - - name: Setup node - uses: actions/setup-node@v7 + - uses: pnpm/setup@703c52620218391530e48b9e8870d5c0082e1b9b # v2.1.0 with: - node-version: 22 - cache: pnpm - - name: Install dependencies - run: pnpm install + runtime: node@22 + cache: true - name: Download all artifacts uses: actions/download-artifact@v8 with: diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 6485b67..2dfebe3 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -24,20 +24,15 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 - - name: setup pnpm - uses: pnpm/action-setup@v6 - - name: Setup node - uses: actions/setup-node@v7 + - uses: pnpm/setup@703c52620218391530e48b9e8870d5c0082e1b9b # v2.1.0 with: - node-version: 22 - cache: pnpm + runtime: node@22 + cache: true - name: Install uses: dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772 with: toolchain: stable components: clippy, rustfmt - - name: Install dependencies - run: pnpm install - name: Oxlint run: pnpm lint - name: Prettier @@ -101,13 +96,12 @@ jobs: runs-on: ${{ matrix.settings.host }} steps: - uses: actions/checkout@v7 - - name: setup pnpm - uses: pnpm/action-setup@v6 - - name: Setup node - uses: actions/setup-node@v7 + # Installed on the host so the container does not need pnpm; the workspace is mounted + # into it, so `npm run build` finds the napi CLI in node_modules. + - uses: pnpm/setup@703c52620218391530e48b9e8870d5c0082e1b9b # v2.1.0 with: - node-version: 22 - cache: pnpm + runtime: node@22 + cache: true - name: Install uses: dtolnay/rust-toolchain@6c977a6ca4077a0ceb28ffbe03f59d46e9ac8772 with: @@ -128,10 +122,6 @@ jobs: run: ${{ matrix.settings.setup }} if: ${{ matrix.settings.setup }} shell: bash - # Installed on the host so the container does not need pnpm; the workspace is mounted - # into it, so `npm run build` finds the napi CLI in node_modules. - - name: Install dependencies - run: pnpm install # The build downloads the matching prebuilt native SDK for the target, so these steps # need network access. # The image ships Rust 1.82, which predates edition 2024. That edition is required @@ -184,28 +174,19 @@ jobs: settings: - host: windows-latest target: x86_64-pc-windows-msvc - architecture: x64 - host: macos-latest target: x86_64-apple-darwin - architecture: x64 - host: macos-latest target: aarch64-apple-darwin - architecture: arm64 node: - '22' runs-on: ${{ matrix.settings.host }} steps: - uses: actions/checkout@v7 - - name: setup pnpm - uses: pnpm/action-setup@v6 - - name: Setup node - uses: actions/setup-node@v7 + - uses: pnpm/setup@703c52620218391530e48b9e8870d5c0082e1b9b # v2.1.0 with: - node-version: ${{ matrix.node }} - cache: pnpm - architecture: ${{ matrix.settings.architecture }} - - name: Install dependencies - run: pnpm install + runtime: node@${{ matrix.node }} + cache: true - name: Download artifacts uses: actions/download-artifact@v8 with: @@ -235,13 +216,10 @@ jobs: runs-on: ${{ contains(matrix.target, 'aarch64') && 'ubuntu-24.04-arm' || 'ubuntu-latest' }} steps: - uses: actions/checkout@v7 - - name: setup pnpm - uses: pnpm/action-setup@v6 - - name: Setup node - uses: actions/setup-node@v7 + - uses: pnpm/setup@703c52620218391530e48b9e8870d5c0082e1b9b # v2.1.0 with: - node-version: ${{ matrix.node }} - cache: pnpm + runtime: node@${{ matrix.node }} + cache: true - name: Output docker params id: docker run: | @@ -254,8 +232,6 @@ jobs: " >> $GITHUB_OUTPUT echo "IMAGE=node:${{ matrix.node }}-slim" >> $GITHUB_OUTPUT echo "PNPM_STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_OUTPUT - - name: Install dependencies - run: pnpm install --force - name: Download artifacts uses: actions/download-artifact@v8 with: @@ -283,15 +259,10 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v7 - - name: setup pnpm - uses: pnpm/action-setup@v6 - - name: Setup node - uses: actions/setup-node@v7 + - uses: pnpm/setup@703c52620218391530e48b9e8870d5c0082e1b9b # v2.1.0 with: - node-version: 22 - cache: pnpm - - name: Install dependencies - run: pnpm install + runtime: node@22 + cache: true - name: Download artifacts uses: actions/download-artifact@v8 with: From c61ac12b5a95afc563b34ba1509d8232aeb0b812 Mon Sep 17 00:00:00 2001 From: Matthias Geier Date: Mon, 14 Sep 2026 10:17:22 +0200 Subject: [PATCH 3/4] Upgrade to pnpm@12.4.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 20a5519..e8a4893 100644 --- a/package.json +++ b/package.json @@ -116,5 +116,5 @@ "singleQuote": true, "arrowParens": "always" }, - "packageManager": "pnpm@11.17.0" + "packageManager": "pnpm@12.4.1" } From a8a0d52cae9190a26cbd9f82398f36796b62a9b6 Mon Sep 17 00:00:00 2001 From: Matthias Geier Date: Mon, 14 Sep 2026 10:33:38 +0200 Subject: [PATCH 4/4] Use macos-15-intel runner for testing --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 2dfebe3..0b30a19 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -174,7 +174,7 @@ jobs: settings: - host: windows-latest target: x86_64-pc-windows-msvc - - host: macos-latest + - host: macos-15-intel target: x86_64-apple-darwin - host: macos-latest target: aarch64-apple-darwin