@napi-rs/cli 3.0.0-alpha.4 → 3.0.0-alpha.40
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.
- package/cli.mjs +0 -0
- package/dist/api/artifacts.js +32 -8
- package/dist/api/artifacts.js.map +1 -0
- package/dist/api/build.d.ts +1 -1
- package/dist/api/build.js +231 -30
- package/dist/api/build.js.map +1 -0
- package/dist/api/create-npm-dirs.js +46 -8
- package/dist/api/create-npm-dirs.js.map +1 -0
- package/dist/api/new.js +47 -20
- package/dist/api/new.js.map +1 -0
- package/dist/api/pre-publish.js +10 -7
- package/dist/api/pre-publish.js.map +1 -0
- package/dist/api/rename.js +10 -1
- package/dist/api/rename.js.map +1 -0
- package/dist/api/templates/.gitignore.d.ts +1 -1
- package/dist/api/templates/.gitignore.js +2 -0
- package/dist/api/templates/.gitignore.js.map +1 -0
- package/dist/api/templates/.npmignore.js +1 -0
- package/dist/api/templates/.npmignore.js.map +1 -0
- package/dist/api/templates/build.rs.js +1 -0
- package/dist/api/templates/build.rs.js.map +1 -0
- package/dist/api/templates/cargo.toml.js +1 -0
- package/dist/api/templates/cargo.toml.js.map +1 -0
- package/dist/api/templates/ci-template.d.ts +2 -1
- package/dist/api/templates/ci-template.js +150 -152
- package/dist/api/templates/ci-template.js.map +1 -0
- package/dist/api/templates/ci.yml.d.ts +2 -1
- package/dist/api/templates/ci.yml.js +19 -4
- package/dist/api/templates/ci.yml.js.map +1 -0
- package/dist/api/templates/index.js +1 -0
- package/dist/api/templates/index.js.map +1 -0
- package/dist/api/templates/js-binding.d.ts +1 -1
- package/dist/api/templates/js-binding.js +111 -13
- package/dist/api/templates/js-binding.js.map +1 -0
- package/dist/api/templates/lib.rs.js +2 -4
- package/dist/api/templates/lib.rs.js.map +1 -0
- package/dist/api/templates/load-wasi-template.d.ts +2 -0
- package/dist/api/templates/load-wasi-template.js +143 -0
- package/dist/api/templates/load-wasi-template.js.map +1 -0
- package/dist/api/templates/package.json.d.ts +9 -2
- package/dist/api/templates/package.json.js +53 -28
- package/dist/api/templates/package.json.js.map +1 -0
- package/dist/api/templates/wasi-worker-template.d.ts +2 -0
- package/dist/api/templates/wasi-worker-template.js +93 -0
- package/dist/api/templates/wasi-worker-template.js.map +1 -0
- package/dist/api/universalize.js +6 -5
- package/dist/api/universalize.js.map +1 -0
- package/dist/api/version.js +3 -2
- package/dist/api/version.js.map +1 -0
- package/dist/cli.js +1 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/artifacts.js +4 -4
- package/dist/commands/artifacts.js.map +1 -0
- package/dist/commands/build.js +2 -1
- package/dist/commands/build.js.map +1 -0
- package/dist/commands/create-npm-dirs.js +1 -0
- package/dist/commands/create-npm-dirs.js.map +1 -0
- package/dist/commands/help.js +2 -2
- package/dist/commands/help.js.map +1 -0
- package/dist/commands/new.js +15 -7
- package/dist/commands/new.js.map +1 -0
- package/dist/commands/pre-publish.js +1 -0
- package/dist/commands/pre-publish.js.map +1 -0
- package/dist/commands/rename.js +1 -0
- package/dist/commands/rename.js.map +1 -0
- package/dist/commands/universalize.js +1 -0
- package/dist/commands/universalize.js.map +1 -0
- package/dist/commands/version.js +1 -0
- package/dist/commands/version.js.map +1 -0
- package/dist/def/artifacts.d.ts +21 -1
- package/dist/def/artifacts.js +12 -4
- package/dist/def/artifacts.js.map +1 -0
- package/dist/def/build.d.ts +20 -2
- package/dist/def/build.js +16 -4
- package/dist/def/build.js.map +1 -0
- package/dist/def/create-npm-dirs.d.ts +10 -0
- package/dist/def/create-npm-dirs.js +6 -2
- package/dist/def/create-npm-dirs.js.map +1 -0
- package/dist/def/new.d.ts +24 -6
- package/dist/def/new.js +13 -3
- package/dist/def/new.js.map +1 -0
- package/dist/def/pre-publish.d.ts +10 -0
- package/dist/def/pre-publish.js +9 -5
- package/dist/def/pre-publish.js.map +1 -0
- package/dist/def/rename.d.ts +11 -1
- package/dist/def/rename.js +7 -3
- package/dist/def/rename.js.map +1 -0
- package/dist/def/universalize.d.ts +10 -0
- package/dist/def/universalize.js +6 -2
- package/dist/def/universalize.js.map +1 -0
- package/dist/def/version.d.ts +10 -0
- package/dist/def/version.js +6 -2
- package/dist/def/version.js.map +1 -0
- package/dist/index.cjs +5977 -8003
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/utils/__tests__/config.spec.d.ts +1 -0
- package/dist/utils/__tests__/config.spec.js +63 -0
- package/dist/utils/__tests__/config.spec.js.map +1 -0
- package/dist/utils/__tests__/target.spec.js +1 -0
- package/dist/utils/__tests__/target.spec.js.map +1 -0
- package/dist/utils/__tests__/typegen.spec.js +9 -4
- package/dist/utils/__tests__/typegen.spec.js.map +1 -0
- package/dist/utils/__tests__/version.spec.js +1 -0
- package/dist/utils/__tests__/version.spec.js.map +1 -0
- package/dist/utils/cargo.js +2 -1
- package/dist/utils/cargo.js.map +1 -0
- package/dist/utils/ci.js +1 -0
- package/dist/utils/ci.js.map +1 -0
- package/dist/utils/config.d.ts +25 -5
- package/dist/utils/config.js +39 -6
- package/dist/utils/config.js.map +1 -0
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/log.js +1 -0
- package/dist/utils/log.js.map +1 -0
- package/dist/utils/metadata.js +3 -2
- package/dist/utils/metadata.js.map +1 -0
- package/dist/utils/misc.d.ts +1 -1
- package/dist/utils/misc.js +4 -3
- package/dist/utils/misc.js.map +1 -0
- package/dist/utils/target.d.ts +9 -5
- package/dist/utils/target.js +16 -1
- package/dist/utils/target.js.map +1 -0
- package/dist/utils/typegen.d.ts +4 -1
- package/dist/utils/typegen.js +27 -6
- package/dist/utils/typegen.js.map +1 -0
- package/dist/utils/version.d.ts +2 -1
- package/dist/utils/version.js +13 -10
- package/dist/utils/version.js.map +1 -0
- package/package.json +50 -16
- package/src/api/artifacts.ts +85 -10
- package/src/api/build.ts +381 -32
- package/src/api/create-npm-dirs.ts +56 -8
- package/src/api/new.ts +69 -33
- package/src/api/pre-publish.ts +21 -12
- package/src/api/rename.ts +10 -1
- package/src/api/templates/.gitignore.ts +1 -0
- package/src/api/templates/ci-template.ts +151 -152
- package/src/api/templates/ci.yml.ts +19 -4
- package/src/api/templates/js-binding.ts +114 -13
- package/src/api/templates/lib.rs.ts +1 -4
- package/src/api/templates/load-wasi-template.ts +150 -0
- package/src/api/templates/package.json.ts +74 -27
- package/src/api/templates/wasi-worker-template.ts +93 -0
- package/src/api/universalize.ts +8 -5
- package/src/api/version.ts +5 -2
- package/src/commands/artifacts.ts +2 -2
- package/src/commands/build.ts +1 -1
- package/src/commands/new.ts +14 -8
- package/src/def/artifacts.ts +22 -3
- package/src/def/build.ts +32 -4
- package/src/def/create-npm-dirs.ts +9 -0
- package/src/def/new.ts +28 -3
- package/src/def/pre-publish.ts +12 -3
- package/src/def/rename.ts +11 -2
- package/src/def/universalize.ts +9 -0
- package/src/def/version.ts +9 -0
- package/src/index.ts +2 -0
- package/src/utils/__tests__/__snapshots__/config.spec.ts.md +97 -0
- package/src/utils/__tests__/__snapshots__/config.spec.ts.snap +0 -0
- package/src/utils/__tests__/__snapshots__/target.spec.ts.md +7 -0
- package/src/utils/__tests__/__snapshots__/target.spec.ts.snap +0 -0
- package/src/utils/__tests__/__snapshots__/typegen.spec.ts.md +555 -0
- package/src/utils/__tests__/__snapshots__/typegen.spec.ts.snap +0 -0
- package/src/utils/__tests__/__snapshots__/version.spec.ts.md +9 -8
- package/src/utils/__tests__/__snapshots__/version.spec.ts.snap +0 -0
- package/src/utils/__tests__/config.spec.ts +81 -0
- package/src/utils/__tests__/typegen.spec.ts +19 -4
- package/src/utils/cargo.ts +1 -1
- package/src/utils/config.ts +85 -9
- package/src/utils/metadata.ts +2 -2
- package/src/utils/misc.ts +11 -3
- package/src/utils/target.ts +23 -7
- package/src/utils/typegen.ts +30 -5
- package/src/utils/version.ts +11 -9
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
export const YAML = () => `
|
|
1
|
+
export const YAML = (packageManager) => `
|
|
2
2
|
name: CI
|
|
3
3
|
|
|
4
4
|
env:
|
|
5
5
|
DEBUG: 'napi:*'
|
|
6
6
|
MACOSX_DEPLOYMENT_TARGET: '10.13'
|
|
7
7
|
|
|
8
|
+
permissions:
|
|
9
|
+
contents: write
|
|
10
|
+
id-token: write
|
|
11
|
+
|
|
8
12
|
on:
|
|
9
13
|
push:
|
|
10
14
|
branches:
|
|
@@ -28,97 +32,66 @@ jobs:
|
|
|
28
32
|
settings:
|
|
29
33
|
- host: macos-latest
|
|
30
34
|
target: 'x86_64-apple-darwin'
|
|
31
|
-
build:
|
|
32
|
-
yarn build --platform
|
|
33
|
-
strip -x *.node
|
|
35
|
+
build: ${packageManager} build --platform
|
|
34
36
|
- host: windows-latest
|
|
35
|
-
build:
|
|
37
|
+
build: ${packageManager} build --platform
|
|
36
38
|
target: 'x86_64-pc-windows-msvc'
|
|
37
39
|
- host: windows-latest
|
|
38
40
|
build: |
|
|
39
|
-
|
|
40
|
-
|
|
41
|
+
${packageManager} build --platform --target i686-pc-windows-msvc
|
|
42
|
+
${packageManager} test
|
|
41
43
|
target: 'i686-pc-windows-msvc'
|
|
42
44
|
- host: ubuntu-latest
|
|
43
45
|
target: 'x86_64-unknown-linux-gnu'
|
|
44
|
-
|
|
45
|
-
build: >-
|
|
46
|
-
set -e &&\n
|
|
47
|
-
yarn build --platform --target x86_64-unknown-linux-gnu &&\n
|
|
48
|
-
strip *.node
|
|
46
|
+
build: ${packageManager} build --platform --target x86_64-unknown-linux-gnu --use-napi-cross
|
|
49
47
|
- host: ubuntu-latest
|
|
50
48
|
target: 'x86_64-unknown-linux-musl'
|
|
51
|
-
|
|
52
|
-
build: >-
|
|
53
|
-
set -e &&
|
|
54
|
-
yarn build --platform &&
|
|
55
|
-
strip *.node
|
|
49
|
+
build: ${packageManager} build --platform --target x86_64-unknown-linux-musl -x
|
|
56
50
|
- host: macos-latest
|
|
57
51
|
target: 'aarch64-apple-darwin'
|
|
58
|
-
build:
|
|
59
|
-
yarn build --platform --target aarch64-apple-darwin
|
|
60
|
-
strip -x *.node
|
|
52
|
+
build: ${packageManager} build --platform --target aarch64-apple-darwin
|
|
61
53
|
- host: ubuntu-latest
|
|
62
54
|
target: 'aarch64-unknown-linux-gnu'
|
|
63
|
-
|
|
64
|
-
build: >-
|
|
65
|
-
set -e &&\n
|
|
66
|
-
yarn build --platform --target aarch64-unknown-linux-gnu &&\n
|
|
67
|
-
aarch64-unknown-linux-gnu-strip *.node
|
|
55
|
+
build: ${packageManager} build --platform --target aarch64-unknown-linux-gnu --use-napi-cross
|
|
68
56
|
- host: ubuntu-latest
|
|
69
57
|
target: 'armv7-unknown-linux-gnueabihf'
|
|
70
|
-
|
|
71
|
-
sudo apt-get update
|
|
72
|
-
sudo apt-get install gcc-arm-linux-gnueabihf -y
|
|
73
|
-
build: |
|
|
74
|
-
yarn build --platform --target armv7-unknown-linux-gnueabihf --cross-compile
|
|
75
|
-
arm-linux-gnueabihf-strip *.node
|
|
58
|
+
build: ${packageManager} build --platform --target armv7-unknown-linux-gnueabihf --use-napi-cross
|
|
76
59
|
- host: ubuntu-latest
|
|
77
60
|
target: 'aarch64-linux-android'
|
|
78
|
-
build:
|
|
79
|
-
yarn build --platform --target aarch64-linux-android
|
|
80
|
-
\${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip *.node
|
|
61
|
+
build: ${packageManager} build --platform --target aarch64-linux-android
|
|
81
62
|
- host: ubuntu-latest
|
|
82
63
|
target: 'armv7-linux-androideabi'
|
|
83
|
-
build:
|
|
84
|
-
yarn build --platform --target armv7-linux-androideabi
|
|
85
|
-
\${ANDROID_NDK_LATEST_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-strip *.node
|
|
64
|
+
build: ${packageManager} build --platform --target armv7-linux-androideabi
|
|
86
65
|
- host: ubuntu-latest
|
|
87
66
|
target: 'aarch64-unknown-linux-musl'
|
|
88
|
-
|
|
89
|
-
build: >-
|
|
90
|
-
set -e &&\n
|
|
91
|
-
rustup target add aarch64-unknown-linux-musl &&\n
|
|
92
|
-
yarn build --platform --target aarch64-unknown-linux-musl &&\n
|
|
93
|
-
/aarch64-linux-musl-cross/bin/aarch64-linux-musl-strip *.node
|
|
67
|
+
build: ${packageManager} build --platform --target aarch64-unknown-linux-musl -x
|
|
94
68
|
- host: windows-latest
|
|
95
69
|
target: 'aarch64-pc-windows-msvc'
|
|
96
|
-
build:
|
|
70
|
+
build: ${packageManager} build --platform --target aarch64-pc-windows-msvc
|
|
97
71
|
- host: ubuntu-latest
|
|
98
72
|
target: 'riscv64gc-unknown-linux-gnu'
|
|
99
73
|
setup: |
|
|
100
74
|
sudo apt-get update
|
|
101
75
|
sudo apt-get install gcc-riscv64-linux-gnu -y
|
|
102
|
-
build:
|
|
103
|
-
|
|
104
|
-
|
|
76
|
+
build: ${packageManager} build --platform --target riscv64gc-unknown-linux-gnu
|
|
77
|
+
- host: ubuntu-latest
|
|
78
|
+
target: 'wasm32-wasi-preview1-threads'
|
|
79
|
+
build: ${packageManager} build --platform --target wasm32-wasi-preview1-threads
|
|
105
80
|
|
|
106
|
-
name: stable - \${{ matrix.settings.target }} - node@
|
|
81
|
+
name: stable - \${{ matrix.settings.target }} - node@20
|
|
107
82
|
runs-on: \${{ matrix.settings.host }}
|
|
108
83
|
|
|
109
84
|
steps:
|
|
110
|
-
- uses: actions/checkout@
|
|
85
|
+
- uses: actions/checkout@v4
|
|
111
86
|
|
|
112
87
|
- name: Setup node
|
|
113
|
-
uses: actions/setup-node@
|
|
114
|
-
if: \${{ !matrix.settings.docker }}
|
|
88
|
+
uses: actions/setup-node@v4
|
|
115
89
|
with:
|
|
116
|
-
node-version:
|
|
117
|
-
cache:
|
|
90
|
+
node-version: 20
|
|
91
|
+
cache: ${packageManager}
|
|
118
92
|
|
|
119
93
|
- name: Install
|
|
120
94
|
uses: dtolnay/rust-toolchain@stable
|
|
121
|
-
if: \${{ !matrix.settings.docker }}
|
|
122
95
|
with:
|
|
123
96
|
toolchain: stable
|
|
124
97
|
targets: \${{ matrix.settings.target }}
|
|
@@ -130,14 +103,15 @@ jobs:
|
|
|
130
103
|
~/.cargo/registry/index/
|
|
131
104
|
~/.cargo/registry/cache/
|
|
132
105
|
~/.cargo/git/db/
|
|
106
|
+
~/.napi-rs
|
|
133
107
|
.cargo-cache
|
|
134
108
|
target/
|
|
135
109
|
key: \${{ matrix.settings.target }}-cargo-\${{ matrix.settings.host }}
|
|
136
110
|
|
|
137
111
|
- uses: goto-bus-stop/setup-zig@v2
|
|
138
|
-
if: \${{ matrix.settings.target
|
|
112
|
+
if: \${{ contains(matrix.settings.target, 'musl') }}
|
|
139
113
|
with:
|
|
140
|
-
version: 0.
|
|
114
|
+
version: 0.11.0
|
|
141
115
|
|
|
142
116
|
- name: Setup toolchain
|
|
143
117
|
run: \${{ matrix.settings.setup }}
|
|
@@ -150,82 +124,80 @@ jobs:
|
|
|
150
124
|
shell: bash
|
|
151
125
|
|
|
152
126
|
- name: 'Install dependencies'
|
|
153
|
-
run:
|
|
127
|
+
run: ${packageManager} install
|
|
154
128
|
|
|
155
129
|
- name: Setup node x86
|
|
156
|
-
uses: actions/setup-node@
|
|
130
|
+
uses: actions/setup-node@v4
|
|
157
131
|
if: matrix.settings.target == 'i686-pc-windows-msvc'
|
|
158
132
|
with:
|
|
159
|
-
node-version:
|
|
160
|
-
cache: yarn
|
|
133
|
+
node-version: 20
|
|
161
134
|
architecture: x86
|
|
162
135
|
|
|
163
|
-
- name: Build in docker
|
|
164
|
-
uses: addnab/docker-run-action@v3
|
|
165
|
-
if: \${{ matrix.settings.docker }}
|
|
166
|
-
with:
|
|
167
|
-
image: \${{ matrix.settings.docker }}
|
|
168
|
-
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
|
|
169
|
-
run: \${{ matrix.settings.build }}
|
|
170
|
-
|
|
171
136
|
- name: 'Build'
|
|
172
137
|
run: \${{ matrix.settings.build }}
|
|
173
|
-
if: \${{ !matrix.settings.docker }}
|
|
174
138
|
shell: bash
|
|
175
139
|
|
|
176
140
|
- name: Upload artifact
|
|
177
|
-
uses: actions/upload-artifact@
|
|
141
|
+
uses: actions/upload-artifact@v4
|
|
142
|
+
if: matrix.settings.target != 'wasm32-wasi-preview1-threads'
|
|
178
143
|
with:
|
|
179
144
|
name: bindings-\${{ matrix.settings.target }}
|
|
180
145
|
path: "*.node"
|
|
181
146
|
if-no-files-found: error
|
|
182
147
|
|
|
148
|
+
- name: Upload artifact
|
|
149
|
+
uses: actions/upload-artifact@v4
|
|
150
|
+
if: matrix.settings.target == 'wasm32-wasi-preview1-threads'
|
|
151
|
+
with:
|
|
152
|
+
name: bindings-\${{ matrix.settings.target }}
|
|
153
|
+
path: "*.wasm"
|
|
154
|
+
if-no-files-found: error
|
|
155
|
+
|
|
183
156
|
build-freebsd:
|
|
184
157
|
runs-on: macos-12
|
|
185
158
|
name: Build FreeBSD
|
|
186
159
|
steps:
|
|
187
|
-
- uses: actions/checkout@
|
|
160
|
+
- uses: actions/checkout@v4
|
|
188
161
|
- name: Build
|
|
189
162
|
id: build
|
|
190
|
-
uses:
|
|
163
|
+
uses: cross-platform-actions/action@v0.21.1
|
|
164
|
+
timeout-minutes: 30
|
|
191
165
|
env:
|
|
192
166
|
DEBUG: 'napi:*'
|
|
193
|
-
RUSTUP_HOME: /usr/local/rustup
|
|
194
|
-
CARGO_HOME: /usr/local/cargo
|
|
195
167
|
RUSTUP_IO_THREADS: 1
|
|
196
168
|
with:
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
169
|
+
operating_system: freebsd
|
|
170
|
+
version: '13.2'
|
|
171
|
+
memory: 8G
|
|
172
|
+
cpu_count: 3
|
|
173
|
+
environment_variables: 'DEBUG RUSTUP_IO_THREADS'
|
|
174
|
+
shell: bash
|
|
175
|
+
run: |
|
|
176
|
+
sudo pkg install -y -f curl node libnghttp2 npm
|
|
177
|
+
sudo npm install -g ${packageManager} --ignore-scripts
|
|
204
178
|
curl https://sh.rustup.rs -sSf --output rustup.sh
|
|
205
|
-
sh rustup.sh -y --profile minimal --default-toolchain
|
|
206
|
-
|
|
179
|
+
sh rustup.sh -y --profile minimal --default-toolchain stable
|
|
180
|
+
source "$HOME/.cargo/env"
|
|
207
181
|
echo "~~~~ rustc --version ~~~~"
|
|
208
182
|
rustc --version
|
|
209
183
|
echo "~~~~ node -v ~~~~"
|
|
210
184
|
node -v
|
|
211
185
|
echo "~~~~ yarn --version ~~~~"
|
|
212
186
|
yarn --version
|
|
213
|
-
run: |
|
|
214
|
-
export PATH="/usr/local/cargo/bin:$PATH"
|
|
215
187
|
pwd
|
|
216
188
|
ls -lah
|
|
217
189
|
whoami
|
|
218
190
|
env
|
|
219
191
|
freebsd-version
|
|
220
|
-
|
|
221
|
-
|
|
192
|
+
${packageManager} install
|
|
193
|
+
${packageManager} build
|
|
222
194
|
strip -x *.node
|
|
223
195
|
yarn test
|
|
224
196
|
rm -rf node_modules
|
|
225
197
|
rm -rf target
|
|
226
198
|
rm -rf .yarn/cache
|
|
227
199
|
- name: Upload artifact
|
|
228
|
-
uses: actions/upload-artifact@
|
|
200
|
+
uses: actions/upload-artifact@v4
|
|
229
201
|
with:
|
|
230
202
|
name: bindings-freebsd
|
|
231
203
|
path: "*.node"
|
|
@@ -243,23 +215,23 @@ jobs:
|
|
|
243
215
|
target: 'x86_64-apple-darwin'
|
|
244
216
|
- host: windows-latest
|
|
245
217
|
target: 'x86_64-pc-windows-msvc'
|
|
246
|
-
node: ['
|
|
218
|
+
node: ['18', '20']
|
|
247
219
|
runs-on: \${{ matrix.settings.host }}
|
|
248
220
|
|
|
249
221
|
steps:
|
|
250
|
-
- uses: actions/checkout@
|
|
222
|
+
- uses: actions/checkout@v4
|
|
251
223
|
|
|
252
224
|
- name: Setup node
|
|
253
|
-
uses: actions/setup-node@
|
|
225
|
+
uses: actions/setup-node@v4
|
|
254
226
|
with:
|
|
255
227
|
node-version: \${{ matrix.node }}
|
|
256
|
-
cache: '
|
|
228
|
+
cache: '${packageManager}'
|
|
257
229
|
|
|
258
230
|
- name: 'Install dependencies'
|
|
259
|
-
run:
|
|
231
|
+
run: ${packageManager} install
|
|
260
232
|
|
|
261
233
|
- name: Download artifacts
|
|
262
|
-
uses: actions/download-artifact@
|
|
234
|
+
uses: actions/download-artifact@v4
|
|
263
235
|
with:
|
|
264
236
|
name: bindings-\${{ matrix.settings.target }}
|
|
265
237
|
path: .
|
|
@@ -269,7 +241,7 @@ jobs:
|
|
|
269
241
|
shell: bash
|
|
270
242
|
|
|
271
243
|
- name: Test bindings
|
|
272
|
-
run:
|
|
244
|
+
run: ${packageManager} test
|
|
273
245
|
|
|
274
246
|
test-linux-x64-gnu-binding:
|
|
275
247
|
name: Test bindings on Linux-x64-gnu - node@\${{ matrix.node }}
|
|
@@ -278,23 +250,23 @@ jobs:
|
|
|
278
250
|
strategy:
|
|
279
251
|
fail-fast: false
|
|
280
252
|
matrix:
|
|
281
|
-
node: ['
|
|
253
|
+
node: ['18', '20']
|
|
282
254
|
runs-on: ubuntu-latest
|
|
283
255
|
|
|
284
256
|
steps:
|
|
285
|
-
- uses: actions/checkout@
|
|
257
|
+
- uses: actions/checkout@v4
|
|
286
258
|
|
|
287
259
|
- name: Setup node
|
|
288
|
-
uses: actions/setup-node@
|
|
260
|
+
uses: actions/setup-node@v4
|
|
289
261
|
with:
|
|
290
262
|
node-version: \${{ matrix.node }}
|
|
291
|
-
cache: '
|
|
263
|
+
cache: '${packageManager}'
|
|
292
264
|
|
|
293
265
|
- name: 'Install dependencies'
|
|
294
|
-
run:
|
|
266
|
+
run: ${packageManager} install
|
|
295
267
|
|
|
296
268
|
- name: Download artifacts
|
|
297
|
-
uses: actions/download-artifact@
|
|
269
|
+
uses: actions/download-artifact@v4
|
|
298
270
|
with:
|
|
299
271
|
name: bindings-x86_64-unknown-linux-gnu
|
|
300
272
|
path: .
|
|
@@ -313,14 +285,14 @@ jobs:
|
|
|
313
285
|
strategy:
|
|
314
286
|
fail-fast: false
|
|
315
287
|
matrix:
|
|
316
|
-
node: ['
|
|
288
|
+
node: ['18', '20']
|
|
317
289
|
runs-on: ubuntu-latest
|
|
318
290
|
|
|
319
291
|
steps:
|
|
320
|
-
- uses: actions/checkout@
|
|
292
|
+
- uses: actions/checkout@v4
|
|
321
293
|
|
|
322
294
|
- name: Setup node
|
|
323
|
-
uses: actions/setup-node@
|
|
295
|
+
uses: actions/setup-node@v4
|
|
324
296
|
with:
|
|
325
297
|
node-version: \${{ matrix.node }}
|
|
326
298
|
cache: 'yarn'
|
|
@@ -328,10 +300,10 @@ jobs:
|
|
|
328
300
|
- name: 'Install dependencies'
|
|
329
301
|
run: |
|
|
330
302
|
yarn config set supportedArchitectures.libc "musl"
|
|
331
|
-
|
|
303
|
+
${packageManager} install
|
|
332
304
|
|
|
333
305
|
- name: Download artifacts
|
|
334
|
-
uses: actions/download-artifact@
|
|
306
|
+
uses: actions/download-artifact@v4
|
|
335
307
|
with:
|
|
336
308
|
name: bindings-x86_64-unknown-linux-musl
|
|
337
309
|
path: .
|
|
@@ -350,14 +322,14 @@ jobs:
|
|
|
350
322
|
strategy:
|
|
351
323
|
fail-fast: false
|
|
352
324
|
matrix:
|
|
353
|
-
node: ['
|
|
325
|
+
node: ['20']
|
|
354
326
|
runs-on: ubuntu-latest
|
|
355
327
|
|
|
356
328
|
steps:
|
|
357
|
-
- uses: actions/checkout@
|
|
329
|
+
- uses: actions/checkout@v4
|
|
358
330
|
|
|
359
331
|
- name: Download artifacts
|
|
360
|
-
uses: actions/download-artifact@
|
|
332
|
+
uses: actions/download-artifact@v4
|
|
361
333
|
with:
|
|
362
334
|
name: bindings-aarch64-unknown-linux-gnu
|
|
363
335
|
path: .
|
|
@@ -370,10 +342,10 @@ jobs:
|
|
|
370
342
|
run: |
|
|
371
343
|
yarn config set supportedArchitectures.cpu "arm64"
|
|
372
344
|
yarn config set supportedArchitectures.libc "glibc"
|
|
373
|
-
|
|
345
|
+
${packageManager} install
|
|
374
346
|
|
|
375
347
|
- name: Set up QEMU
|
|
376
|
-
uses: docker/setup-qemu-action@
|
|
348
|
+
uses: docker/setup-qemu-action@v3
|
|
377
349
|
with:
|
|
378
350
|
platforms: arm64
|
|
379
351
|
- run: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
|
|
@@ -383,23 +355,24 @@ jobs:
|
|
|
383
355
|
with:
|
|
384
356
|
image: node:\${{ matrix.node }}-slim
|
|
385
357
|
options: --platform linux/arm64 -v \${{ github.workspace }}:/build -w /build
|
|
386
|
-
run:
|
|
387
|
-
set -e
|
|
388
|
-
yarn test
|
|
389
|
-
ls -la
|
|
358
|
+
run: yarn test
|
|
390
359
|
|
|
391
360
|
test-linux-aarch64-musl-binding:
|
|
392
361
|
name: Test bindings on aarch64-unknown-linux-musl - node@\${{ matrix.node }}
|
|
393
362
|
needs:
|
|
394
363
|
- build
|
|
364
|
+
strategy:
|
|
365
|
+
fail-fast: false
|
|
366
|
+
matrix:
|
|
367
|
+
node: ['18', '20']
|
|
395
368
|
|
|
396
369
|
runs-on: ubuntu-latest
|
|
397
370
|
|
|
398
371
|
steps:
|
|
399
|
-
- uses: actions/checkout@
|
|
372
|
+
- uses: actions/checkout@v4
|
|
400
373
|
|
|
401
374
|
- name: Download artifacts
|
|
402
|
-
uses: actions/download-artifact@
|
|
375
|
+
uses: actions/download-artifact@v4
|
|
403
376
|
with:
|
|
404
377
|
name: bindings-aarch64-unknown-linux-musl
|
|
405
378
|
path: .
|
|
@@ -412,10 +385,10 @@ jobs:
|
|
|
412
385
|
run: |
|
|
413
386
|
yarn config set supportedArchitectures.cpu "arm64"
|
|
414
387
|
yarn config set supportedArchitectures.libc "musl"
|
|
415
|
-
|
|
388
|
+
${packageManager} install
|
|
416
389
|
|
|
417
390
|
- name: Set up QEMU
|
|
418
|
-
uses: docker/setup-qemu-action@
|
|
391
|
+
uses: docker/setup-qemu-action@v3
|
|
419
392
|
with:
|
|
420
393
|
platforms: arm64
|
|
421
394
|
- run: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
|
|
@@ -423,11 +396,9 @@ jobs:
|
|
|
423
396
|
- name: Setup and run tests
|
|
424
397
|
uses: addnab/docker-run-action@v3
|
|
425
398
|
with:
|
|
426
|
-
image: node
|
|
399
|
+
image: node:\${{ matrix.node }}-alpine
|
|
427
400
|
options: --platform linux/arm64 -v \${{ github.workspace }}:/build -w /build
|
|
428
|
-
run:
|
|
429
|
-
set -e
|
|
430
|
-
yarn test
|
|
401
|
+
run: yarn test
|
|
431
402
|
|
|
432
403
|
test-linux-arm-gnueabihf-binding:
|
|
433
404
|
name: Test bindings on armv7-unknown-linux-gnueabihf - node@\${{ matrix.node }}
|
|
@@ -436,14 +407,14 @@ jobs:
|
|
|
436
407
|
strategy:
|
|
437
408
|
fail-fast: false
|
|
438
409
|
matrix:
|
|
439
|
-
node: ['
|
|
410
|
+
node: ['18', '20']
|
|
440
411
|
runs-on: ubuntu-latest
|
|
441
412
|
|
|
442
413
|
steps:
|
|
443
|
-
- uses: actions/checkout@
|
|
414
|
+
- uses: actions/checkout@v4
|
|
444
415
|
|
|
445
416
|
- name: Download artifacts
|
|
446
|
-
uses: actions/download-artifact@
|
|
417
|
+
uses: actions/download-artifact@v4
|
|
447
418
|
with:
|
|
448
419
|
name: bindings-armv7-unknown-linux-gnueabihf
|
|
449
420
|
path: .
|
|
@@ -455,10 +426,10 @@ jobs:
|
|
|
455
426
|
- name: Install dependencies
|
|
456
427
|
run: |
|
|
457
428
|
yarn config set supportedArchitectures.cpu "arm"
|
|
458
|
-
|
|
429
|
+
${packageManager} install
|
|
459
430
|
|
|
460
431
|
- name: Set up QEMU
|
|
461
|
-
uses: docker/setup-qemu-action@
|
|
432
|
+
uses: docker/setup-qemu-action@v3
|
|
462
433
|
with:
|
|
463
434
|
platforms: arm
|
|
464
435
|
- run: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
|
|
@@ -468,10 +439,7 @@ jobs:
|
|
|
468
439
|
with:
|
|
469
440
|
image: node:\${{ matrix.node }}-bullseye-slim
|
|
470
441
|
options: --platform linux/arm/v7 -v \${{ github.workspace }}:/build -w /build
|
|
471
|
-
run:
|
|
472
|
-
set -e
|
|
473
|
-
yarn test
|
|
474
|
-
ls -la
|
|
442
|
+
run: ${packageManager} test
|
|
475
443
|
|
|
476
444
|
universal-macOS:
|
|
477
445
|
name: Build universal macOS binary
|
|
@@ -480,38 +448,67 @@ jobs:
|
|
|
480
448
|
runs-on: macos-latest
|
|
481
449
|
|
|
482
450
|
steps:
|
|
483
|
-
- uses: actions/checkout@
|
|
451
|
+
- uses: actions/checkout@v4
|
|
484
452
|
|
|
485
453
|
- name: Setup node
|
|
486
|
-
uses: actions/setup-node@
|
|
454
|
+
uses: actions/setup-node@v4
|
|
487
455
|
with:
|
|
488
|
-
node-version:
|
|
489
|
-
cache:
|
|
456
|
+
node-version: 20
|
|
457
|
+
cache: ${packageManager}
|
|
490
458
|
|
|
491
459
|
- name: 'Install dependencies'
|
|
492
|
-
run:
|
|
460
|
+
run: ${packageManager} install
|
|
493
461
|
|
|
494
462
|
- name: Download macOS x64 artifact
|
|
495
|
-
uses: actions/download-artifact@
|
|
463
|
+
uses: actions/download-artifact@v4
|
|
496
464
|
with:
|
|
497
465
|
name: bindings-x86_64-apple-darwin
|
|
498
466
|
path: .
|
|
499
467
|
- name: Download macOS arm64 artifact
|
|
500
|
-
uses: actions/download-artifact@
|
|
468
|
+
uses: actions/download-artifact@v4
|
|
501
469
|
with:
|
|
502
470
|
name: bindings-aarch64-apple-darwin
|
|
503
471
|
path: .
|
|
504
472
|
|
|
505
473
|
- name: Combine binaries
|
|
506
|
-
run:
|
|
474
|
+
run: ${packageManager} napi universalize
|
|
507
475
|
|
|
508
476
|
- name: Upload artifact
|
|
509
|
-
uses: actions/upload-artifact@
|
|
477
|
+
uses: actions/upload-artifact@v4
|
|
510
478
|
with:
|
|
511
479
|
name: bindings-universal-apple-darwin
|
|
512
480
|
path: "*.node"
|
|
513
481
|
if-no-files-found: error
|
|
514
482
|
|
|
483
|
+
test-wasi-nodejs:
|
|
484
|
+
name: Test bindings on wasi - node@\${{ matrix.node }}
|
|
485
|
+
needs:
|
|
486
|
+
- build
|
|
487
|
+
strategy:
|
|
488
|
+
fail-fast: false
|
|
489
|
+
matrix:
|
|
490
|
+
node: ['18', '20']
|
|
491
|
+
runs-on: ubuntu-latest
|
|
492
|
+
steps:
|
|
493
|
+
- uses: actions/checkout@v4
|
|
494
|
+
- name: Download artifacts
|
|
495
|
+
uses: actions/download-artifact@v4
|
|
496
|
+
with:
|
|
497
|
+
name: bindings-wasm32-wasi-preview1-threads
|
|
498
|
+
path: .
|
|
499
|
+
- name: List packages
|
|
500
|
+
run: ls -R .
|
|
501
|
+
- uses: actions/setup-node@v4
|
|
502
|
+
with:
|
|
503
|
+
node-version: \${{ matrix.node }}
|
|
504
|
+
cache: ${packageManager}
|
|
505
|
+
- name: 'Install dependencies'
|
|
506
|
+
run: ${packageManager} install
|
|
507
|
+
- name: Test
|
|
508
|
+
run: ${packageManager} test
|
|
509
|
+
env:
|
|
510
|
+
NAPI_RS_FORCE_WASI: true
|
|
511
|
+
|
|
515
512
|
publish:
|
|
516
513
|
name: Publish
|
|
517
514
|
runs-on: ubuntu-latest
|
|
@@ -522,22 +519,24 @@ jobs:
|
|
|
522
519
|
- test-linux-arm-gnueabihf-binding
|
|
523
520
|
- test-macOS-windows-binding
|
|
524
521
|
- test-linux-aarch64-musl-binding
|
|
522
|
+
- test-wasi-nodejs
|
|
525
523
|
- build-freebsd
|
|
526
524
|
|
|
527
525
|
steps:
|
|
528
|
-
- uses: actions/checkout@
|
|
526
|
+
- uses: actions/checkout@v4
|
|
529
527
|
|
|
530
528
|
- name: Setup node
|
|
531
|
-
uses: actions/setup-node@
|
|
529
|
+
uses: actions/setup-node@v4
|
|
532
530
|
with:
|
|
533
|
-
node-version:
|
|
534
|
-
cache: '
|
|
531
|
+
node-version: 20
|
|
532
|
+
cache: '${packageManager}'
|
|
533
|
+
registry-url: 'https://registry.npmjs.org'
|
|
535
534
|
|
|
536
535
|
- name: 'Install dependencies'
|
|
537
|
-
run:
|
|
536
|
+
run: ${packageManager} install
|
|
538
537
|
|
|
539
538
|
- name: Download all artifacts
|
|
540
|
-
uses: actions/download-artifact@
|
|
539
|
+
uses: actions/download-artifact@v4
|
|
541
540
|
with:
|
|
542
541
|
path: artifacts
|
|
543
542
|
|
|
@@ -552,16 +551,15 @@ jobs:
|
|
|
552
551
|
run: |
|
|
553
552
|
if git log -1 --pretty=%B | grep "^[0-9]\\+\\.[0-9]\\+\\.[0-9]\\+$";
|
|
554
553
|
then
|
|
555
|
-
|
|
556
|
-
npm publish --access public
|
|
554
|
+
npm publish --access public --provenance
|
|
557
555
|
elif git log -1 --pretty=%B | grep "^[0-9]\\+\\.[0-9]\\+\\.[0-9]\\+";
|
|
558
556
|
then
|
|
559
|
-
|
|
560
|
-
npm publish --tag next --access public
|
|
557
|
+
npm publish --tag next --access public --provenance
|
|
561
558
|
else
|
|
562
559
|
echo "Not a release, skipping publish"
|
|
563
560
|
fi
|
|
564
561
|
env:
|
|
565
562
|
GITHUB_TOKEN: \${{ secrets.GITHUB_TOKEN }}
|
|
566
|
-
|
|
563
|
+
NODE_AUTH_TOKEN: \${{ secrets.NPM_TOKEN }}
|
|
567
564
|
`;
|
|
565
|
+
//# sourceMappingURL=ci-template.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ci-template.js","sourceRoot":"","sources":["../../../src/api/templates/ci-template.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,cAAuC,EAAE,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAkC5C,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;;;;;;qBAMd,cAAc;;;qBAGd,cAAc;;;;;;;;;;;;mBAYhB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;eAoClB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kCAkDK,cAAc;;;;;;;;;;;;;;;cAelC,cAAc;cACd,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAmCR,cAAc;;;eAGnB,cAAc;;;;;;;;;;;;;eAad,cAAc;;;;;;;;;;;;;;;;;;;oBAmBT,cAAc;;;eAGnB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAqCjB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA0Cd,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YA2Cd,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAyCd,cAAc;;;;;;;;;;;;;iBAaT,cAAc;;;;;;;;;;;;;;;mBAeZ,cAAc;;;eAGlB,cAAc;;;;;;;;;;;;;;eAcd,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBA8BV,cAAc;;eAElB,cAAc;;eAEd,cAAc;;;;;;;;;;;;;;;;;;;;;;;;oBAwBT,cAAc;;;;eAInB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4B5B,CAAA"}
|
|
@@ -1 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
import { type SupportedPackageManager } from '../../utils/index.js';
|
|
2
|
+
export declare const createGithubActionsCIYml: (targets: string[], packageManager: SupportedPackageManager) => string;
|