@napi-rs/cli 3.0.0-alpha.9 → 3.0.0-alpha.90

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/cli.mjs +1 -1
  2. package/dist/api/__tests__/new.spec.d.ts +1 -0
  3. package/dist/api/__tests__/new.spec.js +283 -0
  4. package/dist/api/__tests__/new.spec.js.map +1 -0
  5. package/dist/api/artifacts.js +28 -7
  6. package/dist/api/artifacts.js.map +1 -1
  7. package/dist/api/build.d.ts +1 -1
  8. package/dist/api/build.js +324 -115
  9. package/dist/api/build.js.map +1 -1
  10. package/dist/api/create-npm-dirs.js +46 -9
  11. package/dist/api/create-npm-dirs.js.map +1 -1
  12. package/dist/api/new.js +312 -107
  13. package/dist/api/new.js.map +1 -1
  14. package/dist/api/pre-publish.js +9 -7
  15. package/dist/api/pre-publish.js.map +1 -1
  16. package/dist/api/rename.js +74 -12
  17. package/dist/api/rename.js.map +1 -1
  18. package/dist/api/templates/cargo.toml.js +1 -0
  19. package/dist/api/templates/cargo.toml.js.map +1 -1
  20. package/dist/api/templates/ci-template.d.ts +3 -1
  21. package/dist/api/templates/ci-template.js +140 -125
  22. package/dist/api/templates/ci-template.js.map +1 -1
  23. package/dist/api/templates/ci.yml.d.ts +3 -1
  24. package/dist/api/templates/ci.yml.js +21 -5
  25. package/dist/api/templates/ci.yml.js.map +1 -1
  26. package/dist/api/templates/js-binding.d.ts +1 -0
  27. package/dist/api/templates/js-binding.js +142 -222
  28. package/dist/api/templates/js-binding.js.map +1 -1
  29. package/dist/api/templates/load-wasi-template.d.ts +2 -0
  30. package/dist/api/templates/load-wasi-template.js +168 -0
  31. package/dist/api/templates/load-wasi-template.js.map +1 -0
  32. package/dist/api/templates/package.json.d.ts +9 -2
  33. package/dist/api/templates/package.json.js +26 -4
  34. package/dist/api/templates/package.json.js.map +1 -1
  35. package/dist/api/templates/wasi-worker-template.d.ts +2 -0
  36. package/dist/api/templates/wasi-worker-template.js +122 -0
  37. package/dist/api/templates/wasi-worker-template.js.map +1 -0
  38. package/dist/api/universalize.js +5 -5
  39. package/dist/api/universalize.js.map +1 -1
  40. package/dist/api/version.js +2 -2
  41. package/dist/api/version.js.map +1 -1
  42. package/dist/commands/artifacts.js +2 -2
  43. package/dist/commands/artifacts.js.map +1 -1
  44. package/dist/commands/build.js +1 -1
  45. package/dist/commands/build.js.map +1 -1
  46. package/dist/commands/new.js +34 -34
  47. package/dist/commands/new.js.map +1 -1
  48. package/dist/def/artifacts.d.ts +21 -1
  49. package/dist/def/artifacts.js +10 -2
  50. package/dist/def/artifacts.js.map +1 -1
  51. package/dist/def/build.d.ts +149 -4
  52. package/dist/def/build.js +26 -4
  53. package/dist/def/build.js.map +1 -1
  54. package/dist/def/create-npm-dirs.d.ts +10 -0
  55. package/dist/def/create-npm-dirs.js +4 -0
  56. package/dist/def/create-npm-dirs.js.map +1 -1
  57. package/dist/def/new.d.ts +25 -7
  58. package/dist/def/new.js +11 -1
  59. package/dist/def/new.js.map +1 -1
  60. package/dist/def/pre-publish.d.ts +12 -2
  61. package/dist/def/pre-publish.js +7 -3
  62. package/dist/def/pre-publish.js.map +1 -1
  63. package/dist/def/rename.d.ts +16 -6
  64. package/dist/def/rename.js +5 -1
  65. package/dist/def/rename.js.map +1 -1
  66. package/dist/def/universalize.d.ts +10 -0
  67. package/dist/def/universalize.js +4 -0
  68. package/dist/def/universalize.js.map +1 -1
  69. package/dist/def/version.d.ts +10 -0
  70. package/dist/def/version.js +4 -0
  71. package/dist/def/version.js.map +1 -1
  72. package/dist/index.cjs +8743 -14849
  73. package/dist/utils/__tests__/config.spec.d.ts +1 -0
  74. package/dist/utils/__tests__/config.spec.js +63 -0
  75. package/dist/utils/__tests__/config.spec.js.map +1 -0
  76. package/dist/utils/cargo.js +2 -2
  77. package/dist/utils/cargo.js.map +1 -1
  78. package/dist/utils/config.d.ts +48 -4
  79. package/dist/utils/config.js +36 -4
  80. package/dist/utils/config.js.map +1 -1
  81. package/dist/utils/index.d.ts +1 -1
  82. package/dist/utils/index.js +1 -1
  83. package/dist/utils/index.js.map +1 -1
  84. package/dist/utils/log.js +1 -1
  85. package/dist/utils/log.js.map +1 -1
  86. package/dist/utils/metadata.d.ts +13 -1
  87. package/dist/utils/metadata.js +31 -11
  88. package/dist/utils/metadata.js.map +1 -1
  89. package/dist/utils/misc.d.ts +3 -3
  90. package/dist/utils/misc.js +13 -11
  91. package/dist/utils/misc.js.map +1 -1
  92. package/dist/utils/read-config.d.ts +7 -0
  93. package/dist/utils/read-config.js +8 -0
  94. package/dist/utils/read-config.js.map +1 -0
  95. package/dist/utils/target.d.ts +7 -5
  96. package/dist/utils/target.js +17 -3
  97. package/dist/utils/target.js.map +1 -1
  98. package/dist/utils/typegen.d.ts +1 -1
  99. package/dist/utils/typegen.js +63 -32
  100. package/dist/utils/typegen.js.map +1 -1
  101. package/dist/utils/version.d.ts +2 -1
  102. package/dist/utils/version.js +10 -8
  103. package/dist/utils/version.js.map +1 -1
  104. package/package.json +34 -32
  105. package/src/api/__tests__/new.spec.ts +429 -0
  106. package/src/api/artifacts.ts +81 -9
  107. package/src/api/build.ts +498 -149
  108. package/src/api/create-npm-dirs.ts +57 -9
  109. package/src/api/new.ts +389 -122
  110. package/src/api/pre-publish.ts +13 -7
  111. package/src/api/rename.ts +103 -17
  112. package/src/api/templates/cargo.toml.ts +1 -0
  113. package/src/api/templates/ci-template.ts +150 -125
  114. package/src/api/templates/ci.yml.ts +27 -6
  115. package/src/api/templates/js-binding.ts +148 -220
  116. package/src/api/templates/load-wasi-template.ts +182 -0
  117. package/src/api/templates/package.json.ts +47 -5
  118. package/src/api/templates/wasi-worker-template.ts +122 -0
  119. package/src/api/universalize.ts +13 -8
  120. package/src/api/version.ts +5 -2
  121. package/src/commands/artifacts.ts +2 -2
  122. package/src/commands/build.ts +1 -1
  123. package/src/commands/new.ts +46 -45
  124. package/src/def/artifacts.ts +22 -3
  125. package/src/def/build.ts +55 -8
  126. package/src/def/create-npm-dirs.ts +9 -0
  127. package/src/def/new.ts +28 -3
  128. package/src/def/pre-publish.ts +12 -3
  129. package/src/def/rename.ts +11 -2
  130. package/src/def/universalize.ts +9 -0
  131. package/src/def/version.ts +9 -0
  132. package/src/utils/__tests__/__fixtures__/napi_type_def +130 -130
  133. package/src/utils/__tests__/__snapshots__/config.spec.ts.md +97 -0
  134. package/src/utils/__tests__/__snapshots__/config.spec.ts.snap +0 -0
  135. package/src/utils/__tests__/__snapshots__/target.spec.ts.md +28 -0
  136. package/src/utils/__tests__/__snapshots__/target.spec.ts.snap +0 -0
  137. package/src/utils/__tests__/__snapshots__/typegen.spec.ts.md +316 -332
  138. package/src/utils/__tests__/__snapshots__/typegen.spec.ts.snap +0 -0
  139. package/src/utils/__tests__/__snapshots__/version.spec.ts.md +8 -7
  140. package/src/utils/__tests__/__snapshots__/version.spec.ts.snap +0 -0
  141. package/src/utils/__tests__/config.spec.ts +81 -0
  142. package/src/utils/cargo.ts +2 -2
  143. package/src/utils/config.ts +110 -9
  144. package/src/utils/index.ts +1 -1
  145. package/src/utils/log.ts +1 -1
  146. package/src/utils/metadata.ts +52 -14
  147. package/src/utils/misc.ts +21 -12
  148. package/src/utils/read-config.ts +20 -0
  149. package/src/utils/target.ts +22 -4
  150. package/src/utils/typegen.ts +87 -52
  151. package/src/utils/version.ts +10 -8
  152. package/dist/api/load-wasi-template.d.ts +0 -1
  153. package/dist/api/load-wasi-template.js +0 -64
  154. package/dist/api/load-wasi-template.js.map +0 -1
  155. package/dist/api/wasi-worker-template.d.ts +0 -1
  156. package/dist/api/wasi-worker-template.js +0 -53
  157. package/dist/api/wasi-worker-template.js.map +0 -1
  158. package/dist/utils/ci.d.ts +0 -11
  159. package/dist/utils/ci.js +0 -96
  160. package/dist/utils/ci.js.map +0 -1
  161. package/src/api/load-wasi-template.ts +0 -66
  162. package/src/api/wasi-worker-template.ts +0 -52
  163. package/src/utils/ci.ts +0 -111
@@ -1,4 +1,4 @@
1
- export const YAML = () => `
1
+ export const YAML = (packageManager, wasiTargetName) => `
2
2
  name: CI
3
3
 
4
4
  env:
@@ -32,82 +32,68 @@ jobs:
32
32
  settings:
33
33
  - host: macos-latest
34
34
  target: 'x86_64-apple-darwin'
35
- build: |
36
- yarn build --platform
37
- strip -x *.node
35
+ build: ${packageManager} build --platform --target x86_64-apple-darwin
38
36
  - host: windows-latest
39
- build: yarn build --platform
37
+ build: ${packageManager} build --platform
40
38
  target: 'x86_64-pc-windows-msvc'
41
39
  - host: windows-latest
42
40
  build: |
43
- yarn build --platform --target i686-pc-windows-msvc
44
- yarn test
41
+ ${packageManager} build --platform --target i686-pc-windows-msvc
42
+ ${packageManager} test
45
43
  target: 'i686-pc-windows-msvc'
46
44
  - host: ubuntu-latest
47
45
  target: 'x86_64-unknown-linux-gnu'
48
- docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-debian
49
- build: >-
50
- set -e &&\n
51
- yarn build --platform --target x86_64-unknown-linux-gnu &&\n
52
- strip *.node
46
+ build: ${packageManager} build --platform --target x86_64-unknown-linux-gnu --use-napi-cross
53
47
  - host: ubuntu-latest
54
48
  target: 'x86_64-unknown-linux-musl'
55
- docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine
56
- build: >-
57
- set -e &&
58
- yarn build --platform &&
59
- strip *.node
49
+ build: ${packageManager} build --platform --target x86_64-unknown-linux-musl -x
60
50
  - host: macos-latest
61
51
  target: 'aarch64-apple-darwin'
62
- build: |
63
- yarn build --platform --target aarch64-apple-darwin
64
- strip -x *.node
52
+ build: ${packageManager} build --platform --target aarch64-apple-darwin
65
53
  - host: ubuntu-latest
66
54
  target: 'aarch64-unknown-linux-gnu'
67
- docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-debian-aarch64
68
- build: >-
69
- set -e &&\n
70
- yarn build --platform --target aarch64-unknown-linux-gnu &&\n
71
- aarch64-unknown-linux-gnu-strip *.node
55
+ build: ${packageManager} build --platform --target aarch64-unknown-linux-gnu --use-napi-cross
72
56
  - host: ubuntu-latest
73
57
  target: 'armv7-unknown-linux-gnueabihf'
74
- setup: |
75
- sudo apt-get update
76
- sudo apt-get install gcc-arm-linux-gnueabihf -y
77
- build: |
78
- yarn build --platform --target armv7-unknown-linux-gnueabihf --cross-compile
79
- arm-linux-gnueabihf-strip *.node
58
+ build: ${packageManager} build --platform --target armv7-unknown-linux-gnueabihf --use-napi-cross
59
+ - host: ubuntu-latest
60
+ target: 'armv7-unknown-linux-musleabihf'
61
+ build: ${packageManager} build --platform --target armv7-unknown-linux-musleabihf -x
80
62
  - host: ubuntu-latest
81
63
  target: 'aarch64-linux-android'
82
- build: |
83
- yarn build --platform --target aarch64-linux-android
84
- \${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip *.node
64
+ build: ${packageManager} build --platform --target aarch64-linux-android
85
65
  - host: ubuntu-latest
86
66
  target: 'armv7-linux-androideabi'
87
- build: |
88
- yarn build --platform --target armv7-linux-androideabi
89
- \${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip *.node
67
+ build: ${packageManager} build --platform --target armv7-linux-androideabi
90
68
  - host: ubuntu-latest
91
69
  target: 'aarch64-unknown-linux-musl'
92
- docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine
93
- build: >-
94
- set -e &&\n
95
- rustup target add aarch64-unknown-linux-musl &&\n
96
- yarn build --platform --target aarch64-unknown-linux-musl &&\n
97
- /aarch64-linux-musl-cross/bin/aarch64-linux-musl-strip *.node
70
+ build: ${packageManager} build --platform --target aarch64-unknown-linux-musl -x
98
71
  - host: windows-latest
99
72
  target: 'aarch64-pc-windows-msvc'
100
- build: yarn build --platform --target aarch64-pc-windows-msvc
73
+ build: ${packageManager} build --platform --target aarch64-pc-windows-msvc
101
74
  - host: ubuntu-latest
102
75
  target: 'riscv64gc-unknown-linux-gnu'
103
76
  setup: |
104
77
  sudo apt-get update
105
78
  sudo apt-get install gcc-riscv64-linux-gnu -y
106
- build: |
107
- yarn build --platform --target riscv64gc-unknown-linux-gnu
108
- riscv64-linux-gnu-strip *.node
79
+ build: ${packageManager} build --platform --target riscv64gc-unknown-linux-gnu
80
+ - host: ubuntu-latest
81
+ target: 'powerpc64le-unknown-linux-gnu'
82
+ setup: |
83
+ sudo apt-get update
84
+ sudo apt-get install gcc-powerpc64le-linux-gnu -y
85
+ build: ${packageManager} build --platform --target powerpc64le-unknown-linux-gnu
86
+ - host: ubuntu-latest
87
+ target: 's390x-unknown-linux-gnu'
88
+ setup: |
89
+ sudo apt-get update
90
+ sudo apt-get install gcc-s390x-linux-gnu -y
91
+ build: ${packageManager} build --platform --target s390x-unknown-linux-gnu
92
+ - host: ubuntu-latest
93
+ target: '${wasiTargetName}'
94
+ build: ${packageManager} build --platform --target ${wasiTargetName}
109
95
 
110
- name: stable - \${{ matrix.settings.target }} - node@18
96
+ name: stable - \${{ matrix.settings.target }} - node@20
111
97
  runs-on: \${{ matrix.settings.host }}
112
98
 
113
99
  steps:
@@ -115,33 +101,40 @@ jobs:
115
101
 
116
102
  - name: Setup node
117
103
  uses: actions/setup-node@v4
118
- if: \${{ !matrix.settings.docker }}
119
104
  with:
120
- node-version: 18
121
- cache: yarn
105
+ node-version: 20
106
+ cache: ${packageManager}
122
107
 
123
108
  - name: Install
124
109
  uses: dtolnay/rust-toolchain@stable
125
- if: \${{ !matrix.settings.docker }}
126
110
  with:
127
111
  toolchain: stable
128
112
  targets: \${{ matrix.settings.target }}
129
113
 
130
114
  - name: Cache cargo
131
- uses: actions/cache@v3
115
+ uses: actions/cache@v4
132
116
  with:
133
117
  path: |
134
118
  ~/.cargo/registry/index/
135
119
  ~/.cargo/registry/cache/
136
120
  ~/.cargo/git/db/
121
+ ~/.napi-rs
137
122
  .cargo-cache
138
123
  target/
139
124
  key: \${{ matrix.settings.target }}-cargo-\${{ matrix.settings.host }}
140
125
 
141
126
  - uses: goto-bus-stop/setup-zig@v2
142
- if: \${{ matrix.settings.target == 'armv7-unknown-linux-gnueabihf' }}
127
+ if: \${{ contains(matrix.settings.target, 'musl') }}
128
+ with:
129
+ version: 0.13.0
130
+
131
+ - name: Install cargo-zigbuild
132
+ uses: taiki-e/install-action@v2
133
+ if: \${{ contains(matrix.settings.target, 'musl') }}
134
+ env:
135
+ GITHUB_TOKEN: \${{ github.token }}
143
136
  with:
144
- version: 0.11.0
137
+ tool: cargo-zigbuild
145
138
 
146
139
  - name: Setup toolchain
147
140
  run: \${{ matrix.settings.setup }}
@@ -154,57 +147,56 @@ jobs:
154
147
  shell: bash
155
148
 
156
149
  - name: 'Install dependencies'
157
- run: yarn install
150
+ run: ${packageManager} install
158
151
 
159
152
  - name: Setup node x86
160
153
  uses: actions/setup-node@v4
161
154
  if: matrix.settings.target == 'i686-pc-windows-msvc'
162
155
  with:
163
- node-version: 18
164
- cache: yarn
156
+ node-version: 20
165
157
  architecture: x86
166
158
 
167
- - name: Build in docker
168
- uses: addnab/docker-run-action@v3
169
- if: \${{ matrix.settings.docker }}
170
- with:
171
- image: \${{ matrix.settings.docker }}
172
- options: --user 0:0 -v \${{ github.workspace }}/.cargo-cache/git/db:/usr/local/cargo/git/db -v \${{ github.workspace }}/.cargo/registry/cache:/usr/local/cargo/registry/cache -v \${{ github.workspace }}/.cargo/registry/index:/usr/local/cargo/registry/index -v \${{ github.workspace }}:/build -w /build
173
- run: \${{ matrix.settings.build }}
174
-
175
159
  - name: 'Build'
176
160
  run: \${{ matrix.settings.build }}
177
- if: \${{ !matrix.settings.docker }}
178
161
  shell: bash
179
162
 
180
163
  - name: Upload artifact
181
- uses: actions/upload-artifact@v3
164
+ uses: actions/upload-artifact@v4
165
+ if: matrix.settings.target != '${wasiTargetName}'
182
166
  with:
183
167
  name: bindings-\${{ matrix.settings.target }}
184
168
  path: "*.node"
185
169
  if-no-files-found: error
186
170
 
171
+ - name: Upload artifact
172
+ uses: actions/upload-artifact@v4
173
+ if: matrix.settings.target == '${wasiTargetName}'
174
+ with:
175
+ name: bindings-\${{ matrix.settings.target }}
176
+ path: "*.wasm"
177
+ if-no-files-found: error
178
+
187
179
  build-freebsd:
188
- runs-on: macos-12
180
+ runs-on: ubuntu-latest
189
181
  name: Build FreeBSD
190
182
  steps:
191
183
  - uses: actions/checkout@v4
192
184
  - name: Build
193
185
  id: build
194
- uses: cross-platform-actions/action@v0.21.0
186
+ uses: cross-platform-actions/action@v0.25.0
195
187
  env:
196
188
  DEBUG: 'napi:*'
197
189
  RUSTUP_IO_THREADS: 1
198
190
  with:
199
191
  operating_system: freebsd
200
- version: '13.2'
201
- memory: 13G
192
+ version: '14.1'
193
+ memory: 8G
202
194
  cpu_count: 3
203
195
  environment_variables: 'DEBUG RUSTUP_IO_THREADS'
204
196
  shell: bash
205
- prepare: |
197
+ run: |
206
198
  sudo pkg install -y -f curl node libnghttp2 npm
207
- sudo npm install -g yarn --ignore-scripts
199
+ sudo npm install -g ${packageManager} --ignore-scripts
208
200
  curl https://sh.rustup.rs -sSf --output rustup.sh
209
201
  sh rustup.sh -y --profile minimal --default-toolchain stable
210
202
  source "$HOME/.cargo/env"
@@ -219,15 +211,15 @@ jobs:
219
211
  whoami
220
212
  env
221
213
  freebsd-version
222
- yarn install
223
- yarn build
214
+ ${packageManager} install
215
+ ${packageManager} build
224
216
  strip -x *.node
225
217
  yarn test
226
218
  rm -rf node_modules
227
219
  rm -rf target
228
220
  rm -rf .yarn/cache
229
221
  - name: Upload artifact
230
- uses: actions/upload-artifact@v3
222
+ uses: actions/upload-artifact@v4
231
223
  with:
232
224
  name: bindings-freebsd
233
225
  path: "*.node"
@@ -243,9 +235,13 @@ jobs:
243
235
  settings:
244
236
  - host: macos-latest
245
237
  target: 'x86_64-apple-darwin'
238
+ architecture: x64
239
+ - host: macos-latest
240
+ target: 'aarch64-apple-darwin'
241
+ architecture: arm64
246
242
  - host: windows-latest
247
243
  target: 'x86_64-pc-windows-msvc'
248
- node: ['16', '18']
244
+ architecture: x64
249
245
  node: ['18', '20']
250
246
  runs-on: \${{ matrix.settings.host }}
251
247
 
@@ -256,13 +252,14 @@ jobs:
256
252
  uses: actions/setup-node@v4
257
253
  with:
258
254
  node-version: \${{ matrix.node }}
259
- cache: 'yarn'
255
+ cache: '${packageManager}'
256
+ architecture: \${{ matrix.settings.architecture }}
260
257
 
261
258
  - name: 'Install dependencies'
262
- run: yarn install
259
+ run: ${packageManager} install
263
260
 
264
261
  - name: Download artifacts
265
- uses: actions/download-artifact@v3
262
+ uses: actions/download-artifact@v4
266
263
  with:
267
264
  name: bindings-\${{ matrix.settings.target }}
268
265
  path: .
@@ -272,7 +269,7 @@ jobs:
272
269
  shell: bash
273
270
 
274
271
  - name: Test bindings
275
- run: yarn test
272
+ run: ${packageManager} run test
276
273
 
277
274
  test-linux-x64-gnu-binding:
278
275
  name: Test bindings on Linux-x64-gnu - node@\${{ matrix.node }}
@@ -281,7 +278,6 @@ jobs:
281
278
  strategy:
282
279
  fail-fast: false
283
280
  matrix:
284
- node: ['16', '18']
285
281
  node: ['18', '20']
286
282
  runs-on: ubuntu-latest
287
283
 
@@ -292,13 +288,13 @@ jobs:
292
288
  uses: actions/setup-node@v4
293
289
  with:
294
290
  node-version: \${{ matrix.node }}
295
- cache: 'yarn'
291
+ cache: '${packageManager}'
296
292
 
297
293
  - name: 'Install dependencies'
298
- run: yarn install
294
+ run: ${packageManager} install
299
295
 
300
296
  - name: Download artifacts
301
- uses: actions/download-artifact@v3
297
+ uses: actions/download-artifact@v4
302
298
  with:
303
299
  name: bindings-x86_64-unknown-linux-gnu
304
300
  path: .
@@ -308,7 +304,7 @@ jobs:
308
304
  shell: bash
309
305
 
310
306
  - name: Test bindings
311
- run: docker run --rm -v $(pwd):/build -w /build node:\${{ matrix.node }}-slim yarn test
307
+ run: docker run --rm -v $(pwd):/build -w /build node:\${{ matrix.node }}-slim ${packageManager} run test
312
308
 
313
309
  test-linux-x64-musl-binding:
314
310
  name: Test bindings on x86_64-unknown-linux-musl - node@\${{ matrix.node }}
@@ -317,7 +313,6 @@ jobs:
317
313
  strategy:
318
314
  fail-fast: false
319
315
  matrix:
320
- node: ['16', '18']
321
316
  node: ['18', '20']
322
317
  runs-on: ubuntu-latest
323
318
 
@@ -328,15 +323,15 @@ jobs:
328
323
  uses: actions/setup-node@v4
329
324
  with:
330
325
  node-version: \${{ matrix.node }}
331
- cache: 'yarn'
326
+ cache: '${packageManager}'
332
327
 
333
328
  - name: 'Install dependencies'
334
329
  run: |
335
330
  yarn config set supportedArchitectures.libc "musl"
336
- yarn install
331
+ ${packageManager} install
337
332
 
338
333
  - name: Download artifacts
339
- uses: actions/download-artifact@v3
334
+ uses: actions/download-artifact@v4
340
335
  with:
341
336
  name: bindings-x86_64-unknown-linux-musl
342
337
  path: .
@@ -346,7 +341,7 @@ jobs:
346
341
  shell: bash
347
342
 
348
343
  - name: Test bindings
349
- run: docker run --rm -v $(pwd):/build -w /build node:\${{ matrix.node }}-alpine yarn test
344
+ run: docker run --rm -v $(pwd):/build -w /build node:\${{ matrix.node }}-alpine ${packageManager} run test
350
345
 
351
346
  test-linux-aarch64-gnu-binding:
352
347
  name: Test bindings on aarch64-unknown-linux-gnu - node@\${{ matrix.node }}
@@ -355,15 +350,14 @@ jobs:
355
350
  strategy:
356
351
  fail-fast: false
357
352
  matrix:
358
- node: ['16', '18']
359
- node: ['18', '20']
353
+ node: ['20']
360
354
  runs-on: ubuntu-latest
361
355
 
362
356
  steps:
363
357
  - uses: actions/checkout@v4
364
358
 
365
359
  - name: Download artifacts
366
- uses: actions/download-artifact@v3
360
+ uses: actions/download-artifact@v4
367
361
  with:
368
362
  name: bindings-aarch64-unknown-linux-gnu
369
363
  path: .
@@ -376,7 +370,7 @@ jobs:
376
370
  run: |
377
371
  yarn config set supportedArchitectures.cpu "arm64"
378
372
  yarn config set supportedArchitectures.libc "glibc"
379
- yarn install
373
+ ${packageManager} install
380
374
 
381
375
  - name: Set up QEMU
382
376
  uses: docker/setup-qemu-action@v3
@@ -389,10 +383,7 @@ jobs:
389
383
  with:
390
384
  image: node:\${{ matrix.node }}-slim
391
385
  options: --platform linux/arm64 -v \${{ github.workspace }}:/build -w /build
392
- run: |
393
- set -e
394
- yarn test
395
- ls -la
386
+ run: ${packageManager} run test
396
387
 
397
388
  test-linux-aarch64-musl-binding:
398
389
  name: Test bindings on aarch64-unknown-linux-musl - node@\${{ matrix.node }}
@@ -401,7 +392,7 @@ jobs:
401
392
  strategy:
402
393
  fail-fast: false
403
394
  matrix:
404
- node: ['16', '18']
395
+ node: ['18', '20']
405
396
 
406
397
  runs-on: ubuntu-latest
407
398
 
@@ -409,7 +400,7 @@ jobs:
409
400
  - uses: actions/checkout@v4
410
401
 
411
402
  - name: Download artifacts
412
- uses: actions/download-artifact@v3
403
+ uses: actions/download-artifact@v4
413
404
  with:
414
405
  name: bindings-aarch64-unknown-linux-musl
415
406
  path: .
@@ -422,7 +413,7 @@ jobs:
422
413
  run: |
423
414
  yarn config set supportedArchitectures.cpu "arm64"
424
415
  yarn config set supportedArchitectures.libc "musl"
425
- yarn install
416
+ ${packageManager} install
426
417
 
427
418
  - name: Set up QEMU
428
419
  uses: docker/setup-qemu-action@v3
@@ -435,9 +426,7 @@ jobs:
435
426
  with:
436
427
  image: node:\${{ matrix.node }}-alpine
437
428
  options: --platform linux/arm64 -v \${{ github.workspace }}:/build -w /build
438
- run: |
439
- set -e
440
- yarn test
429
+ run: ${packageManager} run test
441
430
 
442
431
  test-linux-arm-gnueabihf-binding:
443
432
  name: Test bindings on armv7-unknown-linux-gnueabihf - node@\${{ matrix.node }}
@@ -446,7 +435,6 @@ jobs:
446
435
  strategy:
447
436
  fail-fast: false
448
437
  matrix:
449
- node: ['16', '18']
450
438
  node: ['18', '20']
451
439
  runs-on: ubuntu-latest
452
440
 
@@ -454,7 +442,7 @@ jobs:
454
442
  - uses: actions/checkout@v4
455
443
 
456
444
  - name: Download artifacts
457
- uses: actions/download-artifact@v3
445
+ uses: actions/download-artifact@v4
458
446
  with:
459
447
  name: bindings-armv7-unknown-linux-gnueabihf
460
448
  path: .
@@ -466,7 +454,7 @@ jobs:
466
454
  - name: Install dependencies
467
455
  run: |
468
456
  yarn config set supportedArchitectures.cpu "arm"
469
- yarn install
457
+ ${packageManager} install
470
458
 
471
459
  - name: Set up QEMU
472
460
  uses: docker/setup-qemu-action@v3
@@ -479,10 +467,7 @@ jobs:
479
467
  with:
480
468
  image: node:\${{ matrix.node }}-bullseye-slim
481
469
  options: --platform linux/arm/v7 -v \${{ github.workspace }}:/build -w /build
482
- run: |
483
- set -e
484
- yarn test
485
- ls -la
470
+ run: ${packageManager} test
486
471
 
487
472
  universal-macOS:
488
473
  name: Build universal macOS binary
@@ -496,33 +481,62 @@ jobs:
496
481
  - name: Setup node
497
482
  uses: actions/setup-node@v4
498
483
  with:
499
- node-version: 18
500
- cache: yarn
484
+ node-version: 20
485
+ cache: ${packageManager}
501
486
 
502
487
  - name: 'Install dependencies'
503
- run: yarn install
488
+ run: ${packageManager} install
504
489
 
505
490
  - name: Download macOS x64 artifact
506
- uses: actions/download-artifact@v3
491
+ uses: actions/download-artifact@v4
507
492
  with:
508
493
  name: bindings-x86_64-apple-darwin
509
494
  path: .
510
495
  - name: Download macOS arm64 artifact
511
- uses: actions/download-artifact@v3
496
+ uses: actions/download-artifact@v4
512
497
  with:
513
498
  name: bindings-aarch64-apple-darwin
514
499
  path: .
515
500
 
516
501
  - name: Combine binaries
517
- run: yarn napi universalize
502
+ run: ${packageManager} napi universalize
518
503
 
519
504
  - name: Upload artifact
520
- uses: actions/upload-artifact@v3
505
+ uses: actions/upload-artifact@v4
521
506
  with:
522
507
  name: bindings-universal-apple-darwin
523
508
  path: "*.node"
524
509
  if-no-files-found: error
525
510
 
511
+ test-wasi-nodejs:
512
+ name: Test bindings on wasi - node@\${{ matrix.node }}
513
+ needs:
514
+ - build
515
+ strategy:
516
+ fail-fast: false
517
+ matrix:
518
+ node: ['18', '20']
519
+ runs-on: ubuntu-latest
520
+ steps:
521
+ - uses: actions/checkout@v4
522
+ - name: Download artifacts
523
+ uses: actions/download-artifact@v4
524
+ with:
525
+ name: bindings-${wasiTargetName}
526
+ path: .
527
+ - name: List packages
528
+ run: ls -R .
529
+ - uses: actions/setup-node@v4
530
+ with:
531
+ node-version: \${{ matrix.node }}
532
+ cache: ${packageManager}
533
+ - name: 'Install dependencies'
534
+ run: ${packageManager} install
535
+ - name: Test
536
+ run: ${packageManager} test
537
+ env:
538
+ NAPI_RS_FORCE_WASI: true
539
+
526
540
  publish:
527
541
  name: Publish
528
542
  runs-on: ubuntu-latest
@@ -533,6 +547,7 @@ jobs:
533
547
  - test-linux-arm-gnueabihf-binding
534
548
  - test-macOS-windows-binding
535
549
  - test-linux-aarch64-musl-binding
550
+ - test-wasi-nodejs
536
551
  - build-freebsd
537
552
 
538
553
  steps:
@@ -541,20 +556,20 @@ jobs:
541
556
  - name: Setup node
542
557
  uses: actions/setup-node@v4
543
558
  with:
544
- node-version: 18
545
- cache: 'yarn'
559
+ node-version: 20
560
+ cache: '${packageManager}'
546
561
  registry-url: 'https://registry.npmjs.org'
547
562
 
548
563
  - name: 'Install dependencies'
549
- run: yarn install
564
+ run: ${packageManager} install
550
565
 
551
566
  - name: Download all artifacts
552
- uses: actions/download-artifact@v3
567
+ uses: actions/download-artifact@v4
553
568
  with:
554
569
  path: artifacts
555
570
 
556
571
  - name: Move artifacts
557
- run: yarn artifacts
572
+ run: ${packageManager} artifacts
558
573
 
559
574
  - name: List packages
560
575
  run: ls -R ./npm
@@ -1 +1 @@
1
- {"version":3,"file":"ci-template.js","sourceRoot":"","sources":["../../../src/api/templates/ci-template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgkBzB,CAAA"}
1
+ {"version":3,"file":"ci-template.js","sourceRoot":"","sources":["../../../src/api/templates/ci-template.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,IAAI,GAAG,CAClB,cAAuC,EACvC,cAA8B,EAC9B,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAkCgB,cAAc;;qBAEd,cAAc;;;;gBAInB,cAAc;gBACd,cAAc;;;;qBAIT,cAAc;;;qBAGd,cAAc;;;qBAGd,cAAc;;;qBAGd,cAAc;;;qBAGd,cAAc;;;qBAGd,cAAc;;;qBAGd,cAAc;;;qBAGd,cAAc;;;qBAGd,cAAc;;;qBAGd,cAAc;;;;;;qBAMd,cAAc;;;;;;qBAMd,cAAc;;;;;;qBAMd,cAAc;;uBAEZ,cAAc;qBAChB,cAAc,8BAA8B,cAAc;;;;;;;;;;;;mBAY5D,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eA4ClB,cAAc;;;;;;;;;;;;;;;yCAeY,cAAc;;;;;;;;yCAQd,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;kCA0BrB,cAAc;;;;;;;;;;;;;;;cAelC,cAAc;cACd,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAwCR,cAAc;;;;eAInB,cAAc;;;;;;;;;;;;;eAad,cAAc;;;;;;;;;;;;;;;;;;;oBAmBT,cAAc;;;eAGnB,cAAc;;;;;;;;;;;;;wFAa2D,cAAc;;;;;;;;;;;;;;;;;;;oBAmBlF,cAAc;;;;;YAKtB,cAAc;;;;;;;;;;;;;0FAagE,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA6B5F,cAAc;;;;;;;;;;;;;iBAaT,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA8BnB,cAAc;;;;;;;;;;;;;iBAaT,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA4BnB,cAAc;;;;;;;;;;;;;iBAaT,cAAc;;;;;;;;;;;;;;;mBAeZ,cAAc;;;eAGlB,cAAc;;;;;;;;;;;;;;eAcd,cAAc;;;;;;;;;;;;;;;;;;;;;;;2BAuBF,cAAc;;;;;;;mBAOtB,cAAc;;eAElB,cAAc;;eAEd,cAAc;;;;;;;;;;;;;;;;;;;;;;;;oBAwBT,cAAc;;;;eAInB,cAAc;;;;;;;;eAQd,cAAc;;;;;;;;;;;;;;;;;;;;CAoB5B,CAAA"}
@@ -1 +1,3 @@
1
- export declare const createGithubActionsCIYml: (targets: string[]) => string;
1
+ import { type SupportedPackageManager } from '../../utils/index.js';
2
+ import { type WasiTargetName } from './ci-template.js';
3
+ export declare const createGithubActionsCIYml: (targets: string[], packageManager: SupportedPackageManager, wasiTargetName: WasiTargetName) => string;
@@ -8,8 +8,9 @@ const TEST_LINUX_X64_MUSL = 'test-linux-x64-musl-binding';
8
8
  const TEST_LINUX_AARCH64_GNU = 'test-linux-aarch64-gnu-binding';
9
9
  const TEST_LINUX_AARCH64_MUSL = 'test-linux-aarch64-musl-binding';
10
10
  const TEST_LINUX_ARM_GNUEABIHF = 'test-linux-arm-gnueabihf-binding';
11
+ const TEST_WASI = 'test-wasi-nodejs';
11
12
  const UNIVERSAL_MACOS = 'universal-macOS';
12
- export const createGithubActionsCIYml = (targets) => {
13
+ export const createGithubActionsCIYml = (targets, packageManager, wasiTargetName) => {
13
14
  const allTargets = new Set(targets.flatMap((t) => {
14
15
  const platform = parseTriple(t);
15
16
  if (platform.arch === 'universal') {
@@ -18,7 +19,7 @@ export const createGithubActionsCIYml = (targets) => {
18
19
  }
19
20
  return [t];
20
21
  }));
21
- const fullTemplate = load(YAML());
22
+ const fullTemplate = load(YAML(packageManager, wasiTargetName));
22
23
  const requiredSteps = [];
23
24
  const enableWindowsX86 = allTargets.has('x86_64-pc-windows-msvc');
24
25
  const enableMacOSX86 = allTargets.has('x86_64-apple-darwin');
@@ -29,6 +30,9 @@ export const createGithubActionsCIYml = (targets) => {
29
30
  const enableLinuxArm7 = allTargets.has('armv7-unknown-linux-gnueabihf');
30
31
  const enableFreeBSD = allTargets.has('x86_64-unknown-freebsd');
31
32
  const enableMacOSUni = allTargets.has('universal-apple-darwin');
33
+ const enableWasi = allTargets.has('wasm32-wasi-preview1-threads') ||
34
+ allTargets.has('wasm32-wasip1-threads') ||
35
+ allTargets.has('wasm32-wasip2');
32
36
  fullTemplate.jobs.build.strategy.matrix.settings =
33
37
  fullTemplate.jobs.build.strategy.matrix.settings.filter(({ target }) => allTargets.has(target));
34
38
  if (!fullTemplate.jobs.build.strategy.matrix.settings.length) {
@@ -91,9 +95,21 @@ export const createGithubActionsCIYml = (targets) => {
91
95
  else {
92
96
  requiredSteps.push(UNIVERSAL_MACOS);
93
97
  }
98
+ if (!enableWasi) {
99
+ delete fullTemplate.jobs[TEST_WASI];
100
+ }
101
+ else {
102
+ requiredSteps.push(TEST_WASI);
103
+ }
94
104
  fullTemplate.jobs.publish.needs = requiredSteps;
95
- return dump(fullTemplate, {
96
- lineWidth: 1000,
97
- });
105
+ try {
106
+ return dump(fullTemplate, {
107
+ lineWidth: 1000,
108
+ });
109
+ }
110
+ catch (err) {
111
+ console.info(fullTemplate);
112
+ throw err;
113
+ }
98
114
  };
99
115
  //# sourceMappingURL=ci.yml.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ci.yml.js","sourceRoot":"","sources":["../../../src/api/templates/ci.yml.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ci.yml.js","sourceRoot":"","sources":["../../../src/api/templates/ci.yml.ts"],"names":[],"mappings":"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"}