Skip to content

Commit 590bfe0

Browse files
committed
fix: add Node 24 build and CI support
Update prebuild targets and NAN so Node 24 installs are supported, and expand GitHub Actions to validate Node 24 across platforms.
1 parent 25f25c9 commit 590bfe0

5 files changed

Lines changed: 24 additions & 40 deletions

File tree

.github/workflows/prebuild.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ jobs:
99
- name: Setup node
1010
uses: actions/setup-node@v4
1111
with:
12-
node-version: 20
12+
node-version: 24
1313
- run: npm install --ignore-scripts
1414
- run: npm run prebuild
1515
env:
@@ -30,7 +30,7 @@ jobs:
3030
- name: Setup node
3131
uses: actions/setup-node@v4
3232
with:
33-
node-version: 20
33+
node-version: 24
3434
- run: npm install --ignore-scripts
3535
- run: npm run prebuild-linux-x64
3636
- run: npm run prebuild-linux-arm64-glibc
@@ -48,7 +48,7 @@ jobs:
4848
- name: Setup node
4949
uses: actions/setup-node@v4
5050
with:
51-
node-version: 20
51+
node-version: 24
5252
- run: npm install --ignore-scripts
5353
- run: npm run prebuild
5454
- run: tar --create --verbose --file=prebuild-windows.tar -C prebuilds .

.github/workflows/test.yml

Lines changed: 7 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,17 @@
11
name: Test
22
on: [push]
33
jobs:
4-
test-macos:
5-
runs-on: macos-11
4+
test:
5+
runs-on: ${{ matrix.os }}
6+
strategy:
7+
matrix:
8+
os: [macos-11, ubuntu-20.04, windows-2019]
9+
node-version: [20, 24]
610
steps:
711
- uses: actions/checkout@v4
812
- name: Setup node
913
uses: actions/setup-node@v4
1014
with:
11-
node-version: 20
12-
- run: npm install
13-
- run: npm test
14-
test-linux:
15-
runs-on: ubuntu-20.04
16-
steps:
17-
- uses: actions/checkout@v4
18-
- name: Setup node
19-
uses: actions/setup-node@v4
20-
with:
21-
node-version: 20
22-
- run: npm install
23-
- run: npm test
24-
test-windows:
25-
runs-on: windows-2019
26-
steps:
27-
- uses: actions/checkout@v4
28-
- name: Setup node
29-
uses: actions/setup-node@v4
30-
with:
31-
node-version: 20
15+
node-version: ${{ matrix.node-version }}
3216
- run: npm install
3317
- run: npm test

package-lock.json

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,18 +33,18 @@
3333
"scripts": {
3434
"install": "node-gyp-build",
3535
"recompile": "node-gyp build",
36-
"before-publish": "prebuildify-ci download && prebuildify -t 20.0.0 -t 18.0.0 -t 17.1.0 -t 16.13.0 -t 15.5.0 -t 14.17.6 -t 12.22.7 -t electron@15.2.0",
37-
"prebuild": "prebuildify -t 20.0.0 -t 18.0.0 -t 17.1.0 -t 16.13.0 -t 15.5.0 -t 14.17.6 -t 12.22.7 -t electron@15.2.0",
38-
"prebuild-linux-x64": "prebuildify-cross -i centos7-devtoolset7 -i alpine -t 20.0.0 -t 18.0.0 -t 17.1.0 -t 16.13.0 -t 15.5.0 -t 14.17.6 -t 12.22.7 -t electron@15.2.0",
39-
"prebuild-linux-arm64-glibc": "prebuildify-cross --tag-libc -i linux-arm64-lts -t 20.0.0 -t 18.0.0 -t 17.1.0 -t 16.13.0 -t 15.5.0 -t 14.17.6 -t 12.22.7 -t electron@15.2.0",
40-
"prebuild-linux-arm64-musl": "prebuildify-cross --libc musl --tag-libc -i linux-arm64-musl -t 20.0.0 -t 18.0.0 -t 17.1.0 -t 16.13.0 -t 15.5.0 -t 14.17.6 -t 12.22.7 -t electron@15.2.0",
36+
"before-publish": "prebuildify-ci download && prebuildify -t 24.0.0 -t 22.0.0 -t 20.0.0 -t 18.0.0 -t 17.1.0 -t 16.13.0 -t 15.5.0 -t 14.17.6 -t 12.22.7 -t electron@15.2.0",
37+
"prebuild": "prebuildify -t 24.0.0 -t 22.0.0 -t 20.0.0 -t 18.0.0 -t 17.1.0 -t 16.13.0 -t 15.5.0 -t 14.17.6 -t 12.22.7 -t electron@15.2.0",
38+
"prebuild-linux-x64": "prebuildify-cross -i centos7-devtoolset7 -i alpine -t 24.0.0 -t 22.0.0 -t 20.0.0 -t 18.0.0 -t 17.1.0 -t 16.13.0 -t 15.5.0 -t 14.17.6 -t 12.22.7 -t electron@15.2.0",
39+
"prebuild-linux-arm64-glibc": "prebuildify-cross --tag-libc -i linux-arm64-lts -t 24.0.0 -t 22.0.0 -t 20.0.0 -t 18.0.0 -t 17.1.0 -t 16.13.0 -t 15.5.0 -t 14.17.6 -t 12.22.7 -t electron@15.2.0",
40+
"prebuild-linux-arm64-musl": "prebuildify-cross --libc musl --tag-libc -i linux-arm64-musl -t 24.0.0 -t 22.0.0 -t 20.0.0 -t 18.0.0 -t 17.1.0 -t 16.13.0 -t 15.5.0 -t 14.17.6 -t 12.22.7 -t electron@15.2.0",
4141
"test": "mocha test/**.test.js --recursive",
4242
"benchmark": "node ./benchmark/index.js"
4343
},
4444
"gypfile": true,
4545
"dependencies": {
4646
"msgpackr": "^1.11.0",
47-
"nan": "^2.19.0",
47+
"nan": "^2.25.0",
4848
"node-gyp-build": "^4.8.1"
4949
},
5050
"devDependencies": {

yarn.lock

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2486,10 +2486,10 @@ msgpackr@^1.11.0:
24862486
optionalDependencies:
24872487
msgpackr-extract "^3.0.2"
24882488

2489-
nan@^2.19.0:
2490-
version "2.19.0"
2491-
resolved "https://registry.npmjs.org/nan/-/nan-2.19.0.tgz"
2492-
integrity sha512-nO1xXxfh/RWNxfd/XPfbIfFk5vgLsAxUR9y5O0cHMJu/AW9U95JLXqthYHjEp+8gQ5p96K9jUp8nbVOxCdRbtw==
2489+
nan@^2.25.0:
2490+
version "2.25.0"
2491+
resolved "https://registry.npmjs.org/nan/-/nan-2.25.0.tgz"
2492+
integrity sha512-0M90Ag7Xn5KMLLZ7zliPWP3rT90P6PN+IzVFS0VqmnPktBk3700xUVv8Ikm9EUaUE5SDWdp/BIxdENzVznpm1g==
24932493

24942494
negotiator@^0.6.3:
24952495
version "0.6.4"

0 commit comments

Comments
 (0)