Skip to content

Commit 0406155

Browse files
committed
Migrate build/test tooling to Vite + Vitest (build/test only)
Rollup -> Vite, Mocha/Chai -> Vitest, flat eslint.config.js, CI workflow. Deliberately does NOT adopt the feat/esm-migration workerpool/threadman rewrite: our WorkerSlot threadman + batch-affine MSM module wiring in threadman.js/threadman_thread.js and the web-worker dependency are kept as-is. The Vite browser build reproduces the old rollup config exactly: bakes the worker thread function in as a string literal, strips the node-only web-worker import, and keeps wasmbuilder/wasmcurves external (lazy). Tests converted in place (chai->vitest imports, before/after-> beforeAll/afterAll, mocha timeout API dropped for the global testTimeout), preserving our GLV/GLS/batching/chunked-reader coverage and the SES lockdown harness (run as a child process). Node build.cjs + browser ESM verified; 67 tests pass incl. SES. Browser Vitest project is intentionally omitted: it needs the threadman platform split from feat/esm-migration, which is out of scope here.
1 parent ef6460f commit 0406155

20 files changed

Lines changed: 11068 additions & 14169 deletions

.github/workflows/ci.yml

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,27 @@
11
name: Continuous Integration
2-
on:
3-
push:
4-
branches:
5-
- master
6-
pull_request:
2+
on: [push, pull_request]
73

84
jobs:
95
test:
106
name: Test
11-
runs-on: ${{ matrix.os }}
12-
13-
strategy:
14-
fail-fast: false
15-
matrix:
16-
os: [ubuntu-latest, macos-latest, windows-latest]
17-
node-version: [lts/*, lts/-1, lts/-2]
7+
timeout-minutes: 15
8+
runs-on: ubuntu-latest
189

1910
steps:
2011
- name: Checkout project
21-
uses: actions/checkout@v2
12+
uses: actions/checkout@v6
2213

2314
- name: Setup Node.js
24-
uses: actions/setup-node@v3
15+
uses: actions/setup-node@v6
2516
with:
26-
node-version: ${{ matrix.node-version }}
27-
check-latest: true
28-
cache: 'npm'
17+
node-version: "lts/*"
18+
cache: "npm"
2919

3020
- name: Install dependencies
3121
run: npm ci
3222

23+
- name: Install Playwright dependencies
24+
run: npx playwright install --with-deps chromium
25+
3326
- name: Run tests
3427
run: npm test

0 commit comments

Comments
 (0)