Skip to content

Commit 68d4179

Browse files
unrealcloudermarkmssd
authored andcommitted
initial napi
rust ci format ci rust mkdir built/local install with older npm version fix more ci keep js dummy run run coverage conditionally delete `rs.ts` fix smoke `escape_leading_underscores` and `unescape_leading_underscores` format fix ts? run cargo tests ls -a revert Revert "run cargo tests" This reverts commit 57e29ad. Revert "ls -a" This reverts commit 904845a. test:napi in ci add as binary rm rs binary copy .node into lib format bins rm rust tests
1 parent 0ec4d30 commit 68d4179

File tree

15 files changed

+456
-3
lines changed

15 files changed

+456
-3
lines changed

.github/workflows/ci.yml

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ jobs:
3333
- '20'
3434
- '18'
3535
- '16'
36-
- '14'
36+
# - '14' does not support Nullish Coalescing in napi.rs
3737
bundle:
3838
- 'true'
3939
include:
@@ -56,6 +56,8 @@ jobs:
5656
node-version: ${{ matrix.node-version }}
5757
check-latest: true
5858
- run: npm ci
59+
- uses: actions-rust-lang/setup-rust-toolchain@v1
60+
- run: npm run build:napi
5961

6062
- name: Tests
6163
id: test
@@ -70,6 +72,7 @@ jobs:
7072
git diff --staged --exit-code
7173
7274
coverage:
75+
if: ${{ github.repository_owner == 'microsoft' }}
7376
runs-on:
7477
- 'self-hosted'
7578
- '1ES.Pool=TypeScript-1ES-GitHub-Large'
@@ -86,6 +89,9 @@ jobs:
8689
node-version: 'lts/*'
8790
- run: npm ci
8891

92+
- uses: actions-rust-lang/setup-rust-toolchain@v1
93+
- run: npm run build:napi
94+
8995
- name: Run tests with coverage
9096
run: npm test -- --no-lint --coverage
9197

@@ -157,6 +163,9 @@ jobs:
157163
node-version: 'lts/*'
158164
- run: npm ci
159165

166+
- uses: actions-rust-lang/setup-rust-toolchain@v1
167+
- run: npm run build:napi
168+
160169
- name: Installing browsers
161170
run: npx playwright install --with-deps
162171

@@ -173,6 +182,9 @@ jobs:
173182
node-version: 'lts/*'
174183
- run: npm ci
175184

185+
- uses: actions-rust-lang/setup-rust-toolchain@v1
186+
- run: npm run build:napi
187+
176188
- name: Build src
177189
run: npx hereby build-src
178190

@@ -193,6 +205,9 @@ jobs:
193205
194206
- run: npm ci
195207

208+
- uses: actions-rust-lang/setup-rust-toolchain@v1
209+
- run: npm run build:napi
210+
196211
- run: npx hereby lkg
197212
- run: |
198213
node ./scripts/addPackageJsonGitHead.mjs package.json
@@ -237,6 +252,8 @@ jobs:
237252
npm --version
238253
# corepack enable npm
239254
255+
- uses: actions-rust-lang/setup-rust-toolchain@v1
256+
240257
- run: |
241258
npm install -g $(jq -r '.packageManager' < package.json)
242259
npm --version
@@ -245,6 +262,10 @@ jobs:
245262
- run: npm ci
246263
working-directory: ./pr
247264

265+
# TODO: same on base once it has the command
266+
- run: npm run build:napi
267+
working-directory: ./pr
268+
248269
- run: npm ci
249270
working-directory: ./base
250271

@@ -284,6 +305,9 @@ jobs:
284305
node-version: 'lts/*'
285306
- run: npm ci
286307

308+
- uses: actions-rust-lang/setup-rust-toolchain@v1
309+
- run: npm run build:napi
310+
287311
- name: Build tsc
288312
run: npx hereby tsc
289313

@@ -303,6 +327,9 @@ jobs:
303327
node-version: 'lts/*'
304328
- run: npm ci
305329

330+
- uses: actions-rust-lang/setup-rust-toolchain@v1
331+
- run: npm run build:napi
332+
306333
- name: Remove all baselines
307334
run: rm -rf tests/baselines/reference
308335

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,3 +64,9 @@ package-lock.json
6464
.eslintcache
6565
*v8.log
6666
/lib/
67+
68+
# napi.rs
69+
src/rs.d.ts
70+
src/rs.js
71+
target/*
72+
typescript.*

Cargo.lock

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

0 commit comments

Comments
 (0)