From 9cf0f967e99d3e016b25d28ee2f21203b81963a1 Mon Sep 17 00:00:00 2001 From: Ben Williams Date: Mon, 10 Aug 2026 12:14:54 -0700 Subject: [PATCH 1/2] Update GitHub Actions runtimes to Node 24 --- .github/workflows/ci.yml | 22 +++++++++++----------- .github/workflows/publish.yml | 8 ++++---- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1413d0a..17c9542 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,10 +24,10 @@ jobs: submodules: true - name: Setup pnpm - uses: pnpm/action-setup@v4 + uses: pnpm/action-setup@v6 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v5 with: node-version: ${{ matrix.node }} cache: pnpm @@ -59,10 +59,10 @@ jobs: submodules: true - name: Setup pnpm - uses: pnpm/action-setup@v4 + uses: pnpm/action-setup@v6 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v5 with: node-version: ${{ matrix.node }} cache: pnpm @@ -86,7 +86,7 @@ jobs: - name: Upload prebuilds artifact if: matrix.node == 24 - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v6 with: name: prebuild-${{ matrix.os }} path: prebuilds-${{ matrix.os }}.tar.gz @@ -142,7 +142,7 @@ jobs: - name: Upload musl artifact if: matrix.node == 24 - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v6 with: name: prebuild-musl-linux-${{ matrix.architecture }}-node${{ matrix.node }} path: prebuilds-linux-${{ matrix.architecture }}-musl-node${{ matrix.node }}.tar.gz @@ -157,7 +157,7 @@ jobs: submodules: true - name: Build on OpenBSD - uses: cross-platform-actions/action@v0.30.0 + uses: cross-platform-actions/action@v1.4.0 env: ELECTRON_SKIP_BINARY_DOWNLOAD: "1" with: @@ -182,7 +182,7 @@ jobs: run: tar -czf prebuilds-openbsd-x64.tar.gz -C prebuilds . - name: Upload OpenBSD artifact - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v6 with: name: prebuild-openbsd-x64 path: prebuilds-openbsd-x64.tar.gz @@ -198,10 +198,10 @@ jobs: submodules: true - name: Setup pnpm - uses: pnpm/action-setup@v4 + uses: pnpm/action-setup@v6 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v5 with: node-version: 24 cache: pnpm @@ -217,7 +217,7 @@ jobs: # This mirrors the prebuild artifact assembly performed before npm publish. - name: Download N-API prebuild artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v7 with: pattern: prebuild-* merge-multiple: true diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index b6fed5e..8973473 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -49,7 +49,7 @@ jobs: - name: Setup Node.js if: steps.revision.outputs.is_current == 'true' - uses: actions/setup-node@v4 + uses: actions/setup-node@v5 with: node-version: 24 @@ -93,10 +93,10 @@ jobs: submodules: true - name: Setup pnpm - uses: pnpm/action-setup@v4 + uses: pnpm/action-setup@v6 - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v5 with: node-version: 24 cache: pnpm @@ -111,7 +111,7 @@ jobs: run: rm -rf build - name: Download N-API prebuild artifacts - uses: actions/download-artifact@v4 + uses: actions/download-artifact@v7 with: pattern: prebuild-* merge-multiple: true From 3057d4edd5648887d52d29f7f89ea50e2175926c Mon Sep 17 00:00:00 2001 From: Ben Williams Date: Mon, 10 Aug 2026 12:21:19 -0700 Subject: [PATCH 2/2] Use custom shell for OpenBSD build --- .github/workflows/ci.yml | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 17c9542..eb6cadc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -156,7 +156,7 @@ jobs: with: submodules: true - - name: Build on OpenBSD + - name: Start OpenBSD VM uses: cross-platform-actions/action@v1.4.0 env: ELECTRON_SKIP_BINARY_DOWNLOAD: "1" @@ -165,18 +165,21 @@ jobs: version: "7.8" architecture: x86-64 environment_variables: ELECTRON_SKIP_BINARY_DOWNLOAD - run: | - set -euo pipefail - export ELECTRON_SKIP_BINARY_DOWNLOAD=1 - sudo pkg_add node npm - sudo npm install --global corepack@0.35.0 - sudo corepack enable - pnpm install --frozen-lockfile - # vite-plus does not ship an OpenBSD binding. Quality checks and - # package builds run in the platform-native jobs above; this job - # verifies the OpenBSD prebuild itself. - pnpm prebuild - LIBOPUS_TEST_NATIVE=1 node src/tests/test.js + + - name: Build on OpenBSD + shell: cpa.sh {0} + run: | + set -euo pipefail + export ELECTRON_SKIP_BINARY_DOWNLOAD=1 + sudo pkg_add node npm + sudo npm install --global corepack@0.35.0 + sudo corepack enable + pnpm install --frozen-lockfile + # vite-plus does not ship an OpenBSD binding. Quality checks and + # package builds run in the platform-native jobs above; this job + # verifies the OpenBSD prebuild itself. + pnpm prebuild + LIBOPUS_TEST_NATIVE=1 node src/tests/test.js - name: Archive OpenBSD prebuilds run: tar -czf prebuilds-openbsd-x64.tar.gz -C prebuilds .