Skip to content

Commit 6ceb0d0

Browse files
feat: update to iroh@1.0 (#243)
* chore: fixup bump script make sure the js version gets bumped * feat!: update to iroh 1.0 * chore: regen js bindings * ci: bump nodejs versions matching LTS and latest * fix: update jni API * fixup * fix: bump min versions for swift * ci: fixup js setups * ci: force corepack install * try to bump macos and ios more * ci: debug * ci: more corepack installs * ci: use xcode16 tag
1 parent 86b136e commit 6ceb0d0

13 files changed

Lines changed: 334 additions & 322 deletions

File tree

.github/workflows/ci_js.yml

Lines changed: 30 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,9 @@ jobs:
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

.github/workflows/ci_swift.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ jobs:
1919
swift:
2020
name: Swift - Full xcframework build + test (iOS + macOS)
2121
timeout-minutes: 60
22-
runs-on: [self-hosted, macOS, ARM64]
22+
runs-on: [self-hosted, macOS, ARM64, xcode16]
2323
steps:
2424
- uses: actions/checkout@master
2525
- uses: dtolnay/rust-toolchain@stable

.github/workflows/docs.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,11 +84,11 @@ jobs:
8484
- uses: davidB/rust-cargo-make@v1
8585
- uses: actions/setup-node@v4
8686
with:
87-
node-version: "22"
87+
node-version: "24"
8888
# Self-hosted runners don't ship yarn; corepack provides it (matches
8989
# the pattern in ci_js.yml after PR #235).
9090
- name: Enable corepack (yarn)
91-
run: corepack enable
91+
run: npm install -g corepack --force && corepack enable
9292
shell: bash
9393
- run: cargo make docs-js
9494
- uses: actions/upload-artifact@v4

.github/workflows/release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ jobs:
133133
build-and-publish-swift:
134134
name: Build & publish swift libraries
135135
timeout-minutes: 30
136-
runs-on: [self-hosted, macOS, ARM64]
136+
runs-on: [self-hosted, macOS, ARM64, xcode16]
137137
needs: create-release
138138
steps:
139139
- uses: actions/checkout@master

0 commit comments

Comments
 (0)