Skip to content

Commit 00d88e0

Browse files
committed
ci: remove old versions and add Node 24
1 parent a8d7c0e commit 00d88e0

File tree

3 files changed

+12
-272
lines changed

3 files changed

+12
-272
lines changed

.github/workflows/build.yml

Lines changed: 6 additions & 119 deletions
Original file line numberDiff line numberDiff line change
@@ -9,44 +9,14 @@ on:
99
branches:
1010
- '**'
1111
jobs:
12-
build_x86_64_legacy_nodejs:
13-
name: Build x86_64 (legacy Node.js)
14-
runs-on: ${{ matrix.os }}
15-
strategy:
16-
fail-fast: false
17-
matrix:
18-
os: [macos-13, ubuntu-22.04, ubuntu-24.04, windows-2019]
19-
node: [12, 13, 14, 15, 16, 17, 19]
20-
steps:
21-
- name: Checkout repository
22-
uses: actions/checkout@v4
23-
with:
24-
submodules: true
25-
26-
- name: Install Node v${{ matrix.node }}
27-
uses: actions/setup-node@v3
28-
with:
29-
node-version: ${{ matrix.node }}
30-
31-
- name: Setup python
32-
uses: actions/setup-python@v4
33-
with:
34-
python-version: '3.8'
35-
36-
- name: Install dependencies
37-
run: npm install --build-from-source
38-
39-
- name: Package prebuild
40-
run: npm run build
41-
4212
build_x86_64:
4313
name: Build x86_64
4414
runs-on: ${{ matrix.os }}
4515
strategy:
4616
fail-fast: false
4717
matrix:
4818
os: [macos-13, ubuntu-22.04, ubuntu-24.04, windows-2022]
49-
node: [18, 20, 21, 22]
19+
node: [18, 20, 22, 24]
5020
steps:
5121
- name: Checkout repository
5222
uses: actions/checkout@v4
@@ -72,7 +42,7 @@ jobs:
7242
strategy:
7343
fail-fast: false
7444
matrix:
75-
node: [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
45+
node: [18, 20, 22, 24]
7646
steps:
7747
- name: Setup env with Node v${{ matrix.node }}
7848
run: |
@@ -84,47 +54,19 @@ jobs:
8454
with:
8555
submodules: true
8656

87-
- name: Install dependencies
88-
run: npm install --unsafe-perm --build-from-source
89-
90-
- name: Package prebuild
91-
run: npm run build
92-
93-
build_aarch64_legacy_nodejs_linux:
94-
name: Prebuild aarch64 Linux (legacy Node.js)
95-
runs-on: ${{ matrix.os }}
96-
strategy:
97-
fail-fast: false
98-
matrix:
99-
os: [ubuntu-22.04]
100-
node: [12, 13, 14, 15, 16, 17, 19]
101-
steps:
102-
- name: Checkout repository
103-
uses: actions/checkout@v4
104-
with:
105-
submodules: true
106-
107-
- name: Install Node v${{ matrix.node }}
108-
uses: actions/setup-node@v3
109-
with:
110-
node-version: ${{ matrix.node }}
111-
11257
- name: Install dependencies
11358
run: npm install --build-from-source
11459

11560
- name: Package prebuild
116-
run: |
117-
sudo apt update -y && sudo apt install -y gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
118-
CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ npx node-pre-gyp --target_arch=arm64 configure build package
61+
run: npm run build
11962

12063
build_aarch64_linux:
12164
name: Prebuild aarch64 Linux
122-
runs-on: ${{ matrix.os }}
65+
runs-on: ubuntu-24.04
12366
strategy:
12467
fail-fast: false
12568
matrix:
126-
os: [ubuntu-22.04]
127-
node: [18, 20, 21, 22]
69+
node: [18, 20, 22, 24]
12870
steps:
12971
- name: Checkout repository
13072
uses: actions/checkout@v4
@@ -144,61 +86,6 @@ jobs:
14486
sudo apt update -y && sudo apt install -y gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
14587
CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ npx node-pre-gyp --target_arch=arm64 configure build package
14688
147-
build_aarch64_legacy_nodejs_mac:
148-
name: Prebuild aarch64 macOS (legacy Node.js)
149-
runs-on: ${{ matrix.os }}
150-
strategy:
151-
fail-fast: false
152-
matrix:
153-
os: [macos-14]
154-
node: [16, 17, 19]
155-
steps:
156-
- name: Checkout repository
157-
uses: actions/checkout@v4
158-
with:
159-
submodules: true
160-
161-
- name: Install Node v${{ matrix.node }}
162-
uses: actions/setup-node@v3
163-
with:
164-
node-version: ${{ matrix.node }}
165-
166-
- name: Setup python
167-
uses: actions/setup-python@v4
168-
with:
169-
python-version: '3.8'
170-
171-
- name: Install dependencies
172-
run: npm install --build-from-source
173-
174-
- name: Package prebuild
175-
run: npm run build
176-
177-
build_aarch64_mac:
178-
name: Prebuild aarch64 macOS
179-
runs-on: ${{ matrix.os }}
180-
strategy:
181-
fail-fast: false
182-
matrix:
183-
os: [macos-14]
184-
node: [18, 20, 21, 22]
185-
steps:
186-
- name: Checkout repository
187-
uses: actions/checkout@v4
188-
with:
189-
submodules: true
190-
191-
- name: Install Node v${{ matrix.node }}
192-
uses: actions/setup-node@v3
193-
with:
194-
node-version: ${{ matrix.node }}
195-
196-
- name: Install dependencies
197-
run: npm install --build-from-source
198-
199-
- name: Package prebuild
200-
run: npm run build
201-
20289
build_musl_aarch64:
20390
name: Prebuild aarch64 (musl)
20491
runs-on: ubuntu-latest
@@ -207,7 +94,7 @@ jobs:
20794
strategy:
20895
fail-fast: false
20996
matrix:
210-
node: [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
97+
node: [18, 20, 22, 24]
21198
steps:
21299
- name: Setup env with Node v${{ matrix.node }}
213100
run: |

.github/workflows/release.yml

Lines changed: 6 additions & 147 deletions
Original file line numberDiff line numberDiff line change
@@ -3,51 +3,14 @@ on:
33
release:
44
types: [published]
55
jobs:
6-
build_x86_64_legacy_nodejs:
7-
name: Prebuild x86_64 (legacy Node.js)
8-
runs-on: ${{ matrix.os }}
9-
strategy:
10-
fail-fast: false
11-
matrix:
12-
os: [macos-13, ubuntu-22.04, ubuntu-24.04, windows-2019]
13-
node: [12, 13, 14, 15, 16, 17, 19]
14-
steps:
15-
- name: Checkout repository
16-
uses: actions/checkout@v4
17-
with:
18-
submodules: true
19-
20-
- name: Install Node v${{ matrix.node }}
21-
uses: actions/setup-node@v3
22-
with:
23-
node-version: ${{ matrix.node }}
24-
25-
- name: Setup python
26-
uses: actions/setup-python@v4
27-
with:
28-
python-version: '3.8'
29-
30-
- name: Install dependencies
31-
run: npm install --build-from-source
32-
33-
- name: Package prebuild
34-
run: npm run build
35-
36-
- name: Upload prebuild asset
37-
uses: icrawl/action-artifact@v2
38-
env:
39-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
40-
with:
41-
path: 'build/stage/**/*.tar.gz'
42-
436
build_x86_64:
447
name: Prebuild x86_64
458
runs-on: ${{ matrix.os }}
469
strategy:
4710
fail-fast: false
4811
matrix:
4912
os: [macos-13, ubuntu-22.04, ubuntu-24.04, windows-2022]
50-
node: [18, 20, 21, 22]
13+
node: [18, 20, 22, 24]
5114
steps:
5215
- name: Checkout repository
5316
uses: actions/checkout@v4
@@ -80,7 +43,7 @@ jobs:
8043
strategy:
8144
fail-fast: false
8245
matrix:
83-
node: [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
46+
node: [18, 20, 22, 24]
8447
steps:
8548
- name: Setup env with Node v${{ matrix.node }}
8649
run: |
@@ -92,45 +55,11 @@ jobs:
9255
with:
9356
submodules: true
9457

95-
- name: Install dependencies
96-
run: npm install --unsafe-perm --build-from-source
97-
98-
- name: Package prebuild
99-
run: npm run build
100-
101-
- name: Upload prebuild asset
102-
uses: icrawl/action-artifact@v2
103-
env:
104-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
105-
with:
106-
path: 'build/stage/**/*.tar.gz'
107-
108-
build_aarch64_legacy_nodejs_linux:
109-
name: Prebuild aarch64 Linux (legacy Node.js)
110-
runs-on: ${{ matrix.os }}
111-
strategy:
112-
fail-fast: false
113-
matrix:
114-
os: [ubuntu-22.04]
115-
node: [12, 13, 14, 15, 16, 17, 19]
116-
steps:
117-
- name: Checkout repository
118-
uses: actions/checkout@v4
119-
with:
120-
submodules: true
121-
122-
- name: Install Node v${{ matrix.node }}
123-
uses: actions/setup-node@v3
124-
with:
125-
node-version: ${{ matrix.node }}
126-
12758
- name: Install dependencies
12859
run: npm install --build-from-source
12960

13061
- name: Package prebuild
131-
run: |
132-
sudo apt update -y && sudo apt install -y gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
133-
CC=aarch64-linux-gnu-gcc CXX=aarch64-linux-gnu-g++ npx node-pre-gyp --target_arch=arm64 configure build package
62+
run: npm run build
13463

13564
- name: Upload prebuild asset
13665
uses: icrawl/action-artifact@v2
@@ -141,12 +70,11 @@ jobs:
14170

14271
build_aarch64_linux:
14372
name: Prebuild aarch64 Linux
144-
runs-on: ${{ matrix.os }}
73+
runs-on: ubuntu-24.04
14574
strategy:
14675
fail-fast: false
14776
matrix:
148-
os: [ubuntu-22.04]
149-
node: [18, 20, 21, 22]
77+
node: [18, 20, 22, 24]
15078
steps:
15179
- name: Checkout repository
15280
uses: actions/checkout@v4
@@ -173,75 +101,6 @@ jobs:
173101
with:
174102
path: 'build/stage/**/*.tar.gz'
175103

176-
build_aarch64_legacy_nodejs_mac:
177-
name: Prebuild aarch64 macOS (legacy Node.js)
178-
runs-on: ${{ matrix.os }}
179-
strategy:
180-
fail-fast: false
181-
matrix:
182-
os: [macos-14]
183-
node: [16, 17, 19]
184-
steps:
185-
- name: Checkout repository
186-
uses: actions/checkout@v4
187-
with:
188-
submodules: true
189-
190-
- name: Install Node v${{ matrix.node }}
191-
uses: actions/setup-node@v3
192-
with:
193-
node-version: ${{ matrix.node }}
194-
195-
- name: Setup python
196-
uses: actions/setup-python@v4
197-
with:
198-
python-version: '3.8'
199-
200-
- name: Install dependencies
201-
run: npm install --build-from-source
202-
203-
- name: Package prebuild
204-
run: npm run build
205-
206-
- name: Upload prebuild asset
207-
uses: icrawl/action-artifact@v2
208-
env:
209-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
210-
with:
211-
path: 'build/stage/**/*.tar.gz'
212-
213-
build_aarch64_mac:
214-
name: Prebuild aarch64 macOS
215-
runs-on: ${{ matrix.os }}
216-
strategy:
217-
fail-fast: false
218-
matrix:
219-
os: [macos-14]
220-
node: [18, 20, 21, 22]
221-
steps:
222-
- name: Checkout repository
223-
uses: actions/checkout@v4
224-
with:
225-
submodules: true
226-
227-
- name: Install Node v${{ matrix.node }}
228-
uses: actions/setup-node@v3
229-
with:
230-
node-version: ${{ matrix.node }}
231-
232-
- name: Install dependencies
233-
run: npm install --build-from-source
234-
235-
- name: Package prebuild
236-
run: npm run build
237-
238-
- name: Upload prebuild asset
239-
uses: icrawl/action-artifact@v2
240-
env:
241-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
242-
with:
243-
path: 'build/stage/**/*.tar.gz'
244-
245104
build_musl_aarch64:
246105
name: Prebuild aarch64 (musl)
247106
runs-on: ubuntu-latest
@@ -250,7 +109,7 @@ jobs:
250109
strategy:
251110
fail-fast: false
252111
matrix:
253-
node: [12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]
112+
node: [18, 20, 22, 24]
254113
steps:
255114
- name: Setup env with Node v${{ matrix.node }}
256115
run: |

binding.gyp

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,6 @@
3636
],
3737
"include_dirs": ["<!@(node -p \"require('node-addon-api').include\")"],
3838
"sources": ["src/node-opus.cc"],
39-
# gyp inside node v16 uses -rpath=$ORIGIN/ instead of -rpath=$ORIGIN/lib.target/
40-
# which fixes a longstanding descreptancy between platforms as documented at https://github.com/nodejs/node-gyp/issues/2233
41-
# This allows tests to pass for older, still buggy and inconsistent versions of node-gyp (and will be duplicative for npm >= 7 which bundles node-gyp >= v0.6.0)
42-
'ldflags': [
43-
"-Wl,-rpath=\$$ORIGIN/"
44-
],
4539
},
4640
],
4741
}

0 commit comments

Comments
 (0)