4343 - uses : davidB/rust-cargo-make@v1
4444 - uses : actions/setup-node@v4
4545 with :
46- node-version : 22
46+ node-version : 24
4747 - name : Enable corepack (yarn)
48- run : corepack enable
48+ run : npm install -g corepack --force && corepack enable
4949 - name : cargo make test-js
5050 run : cargo make test-js
5151
@@ -127,7 +127,7 @@ jobs:
127127 - host : ' ["windows-latest"]'
128128 target : aarch64-pc-windows-msvc
129129 build : yarn build --target aarch64-pc-windows-msvc
130- name : stable - ${{ matrix.settings.target }} - node@22
130+ name : stable - ${{ matrix.settings.target }} - node@24
131131 runs-on : ${{ fromJSON(matrix.settings.host) }}
132132 defaults :
133133 run :
@@ -138,10 +138,10 @@ jobs:
138138 uses : actions/setup-node@v4
139139 if : ${{ !matrix.settings.docker }}
140140 with :
141- node-version : 22
141+ node-version : 24
142142 - name : Enable corepack (yarn)
143143 if : ${{ !matrix.settings.docker }}
144- run : corepack enable
144+ run : npm install -g corepack --force && corepack enable
145145 shell : bash
146146 - name : Install
147147 uses : dtolnay/rust-toolchain@stable
@@ -178,7 +178,7 @@ jobs:
178178 uses : actions/setup-node@v4
179179 if : matrix.settings.target == 'i686-pc-windows-msvc'
180180 with :
181- node-version : 22
181+ node-version : 24
182182 architecture : x86
183183 - name : Build in docker
184184 uses : addnab/docker-run-action@v3
@@ -212,8 +212,8 @@ jobs:
212212 - host : ' ["windows-latest"]'
213213 target : x86_64-pc-windows-msvc
214214 node :
215- - ' 22 '
216- - ' 20 '
215+ - ' 24 '
216+ - ' 26 '
217217 runs-on : ${{ fromJSON(matrix.settings.host) }}
218218 defaults :
219219 run :
@@ -226,7 +226,7 @@ jobs:
226226 node-version : ${{ matrix.node }}
227227 architecture : x64
228228 - name : Enable corepack (yarn)
229- run : corepack enable
229+ run : npm install -g corepack --force && corepack enable
230230 shell : bash
231231 - name : Install dependencies
232232 run : yarn install
@@ -248,8 +248,8 @@ jobs:
248248 fail-fast : false
249249 matrix :
250250 node :
251- - ' 22 '
252- - ' 20 '
251+ - ' 24 '
252+ - ' 26 '
253253 runs-on : [self-hosted, linux, X64]
254254 defaults :
255255 run :
@@ -261,7 +261,7 @@ jobs:
261261 with :
262262 node-version : ${{ matrix.node }}
263263 - name : Enable corepack (yarn)
264- run : corepack enable
264+ run : npm install -g corepack --force && corepack enable
265265 shell : bash
266266 - name : Install dependencies
267267 run : yarn install
@@ -279,7 +279,7 @@ jobs:
279279 # variant of the multi-arch manifest. Without --platform, Docker
280280 # reuses whichever variant is cached and `process.arch` reports arm64,
281281 # so napi loads the wrong native binding.
282- run : docker run --rm --platform linux/amd64 -v $(pwd):/build -w /build node:${{ matrix.node }}-slim yarn test
282+ run : docker run --rm --platform linux/amd64 -v $(pwd):/build -w /build node:${{ matrix.node }}-slim sh -c "npm install -g corepack --force && corepack enable && yarn test"
283283 test-linux-x64-musl-binding :
284284 name : Test bindings on x86_64-unknown-linux-musl - node@${{ matrix.node }}
285285 needs :
@@ -288,8 +288,8 @@ jobs:
288288 fail-fast : false
289289 matrix :
290290 node :
291- - ' 22 '
292- - ' 20 '
291+ - ' 24 '
292+ - ' 26 '
293293 runs-on : [self-hosted, linux, X64]
294294 defaults :
295295 run :
@@ -301,7 +301,7 @@ jobs:
301301 with :
302302 node-version : ${{ matrix.node }}
303303 - name : Enable corepack (yarn)
304- run : corepack enable
304+ run : npm install -g corepack --force && corepack enable
305305 shell : bash
306306 - name : Install dependencies
307307 run : |
@@ -317,7 +317,7 @@ jobs:
317317 shell : bash
318318 - name : Test bindings
319319 # Force amd64 for the same reason as the gnu variant above.
320- run : docker run --rm --platform linux/amd64 -v $(pwd):/build -w /build node:${{ matrix.node }}-alpine yarn test
320+ run : docker run --rm --platform linux/amd64 -v $(pwd):/build -w /build node:${{ matrix.node }}-alpine sh -c "npm install -g corepack --force && corepack enable && yarn test"
321321 test-linux-aarch64-gnu-binding :
322322 name : Test bindings on aarch64-unknown-linux-gnu - node@${{ matrix.node }}
323323 needs :
@@ -326,8 +326,8 @@ jobs:
326326 fail-fast : false
327327 matrix :
328328 node :
329- - ' 22 '
330- - ' 20 '
329+ - ' 24 '
330+ - ' 26 '
331331 runs-on : [self-hosted, linux, X64]
332332 defaults :
333333 run :
@@ -339,7 +339,7 @@ jobs:
339339 with :
340340 node-version : ${{ matrix.node }}
341341 - name : Enable corepack (yarn)
342- run : corepack enable
342+ run : npm install -g corepack --force && corepack enable
343343 shell : bash
344344 - name : Download artifacts
345345 uses : actions/download-artifact@v4
@@ -366,6 +366,8 @@ jobs:
366366 options : ' --platform linux/arm64 -v ${{ github.workspace }}/iroh-js:/build -w /build'
367367 run : |
368368 set -e
369+ npm install -g corepack --force
370+ corepack enable
369371 yarn test
370372 ls -la
371373 test-linux-aarch64-musl-binding :
@@ -376,8 +378,8 @@ jobs:
376378 fail-fast : false
377379 matrix :
378380 node :
379- - ' 22 '
380- - ' 20 '
381+ - ' 24 '
382+ - ' 26 '
381383 runs-on : [self-hosted, linux, X64]
382384 defaults :
383385 run :
@@ -389,7 +391,7 @@ jobs:
389391 with :
390392 node-version : ${{ matrix.node }}
391393 - name : Enable corepack (yarn)
392- run : corepack enable
394+ run : npm install -g corepack --force && corepack enable
393395 shell : bash
394396 - name : Download artifacts
395397 uses : actions/download-artifact@v4
@@ -416,6 +418,8 @@ jobs:
416418 options : ' --platform linux/arm64 -v ${{ github.workspace }}/iroh-js:/build -w /build'
417419 run : |
418420 set -e
421+ npm install -g corepack --force
422+ corepack enable
419423 yarn test
420424 test-linux-arm-gnueabihf-binding :
421425 name : Test bindings on armv7-unknown-linux-gnueabihf - node@${{ matrix.node }}
@@ -424,9 +428,10 @@ jobs:
424428 strategy :
425429 fail-fast : false
426430 matrix :
431+ # Last node with a published linux/arm/v7 docker image is 22; node 24+
432+ # only ship amd64/arm64 multi-arch manifests for node:*-bullseye-slim.
427433 node :
428434 - ' 22'
429- - ' 20'
430435 runs-on : [self-hosted, linux, X64]
431436 defaults :
432437 run :
@@ -438,7 +443,7 @@ jobs:
438443 with :
439444 node-version : ${{ matrix.node }}
440445 - name : Enable corepack (yarn)
441- run : corepack enable
446+ run : npm install -g corepack --force && corepack enable
442447 shell : bash
443448 - name : Download artifacts
444449 uses : actions/download-artifact@v4
0 commit comments