diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 34a4815485e9d..e4c452a763356 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -144,10 +144,7 @@ jobs: if: steps.filter.outputs.src == 'true' run: | rustup target add wasm32-wasip1-threads - pnpm napi build --target wasm32-wasip1-threads --cwd ./napi/playground - pnpm napi build --target wasm32-wasip1-threads --cwd ./napi/parser - pnpm napi build --target wasm32-wasip1-threads --cwd ./napi/transform - pnpm napi build --target wasm32-wasip1-threads --cwd ./napi/minify + pnpm run build-wasm-dev git diff --exit-code # Must commit everything - name: Test wasi in browser if: steps.filter.outputs.src == 'true' @@ -156,6 +153,7 @@ jobs: rm -rf *.wasm pnpm exec playwright install chromium pnpm run build-wasi + pnpm run build-wasm-dev pnpm run build-npm-dir pnpm run test-browser pnpm build-browser-bundle --npmDir npm-dir diff --git a/.gitignore b/.gitignore index 1431f01ea418f..f76250d2d57a4 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,7 @@ target/ /tasks/compat_data/node_modules/ /tasks/compat_data/compat-table/ /tasks/e2e/node_modules/ +/plugins/node_modules/ /tasks/e2e/tests/nestjs/node_modules/ /npm/*/node_modules /napi/*/npm-dir diff --git a/apps/oxfmt/package.json b/apps/oxfmt/package.json index 8911f56c5d266..54b993e47bef0 100644 --- a/apps/oxfmt/package.json +++ b/apps/oxfmt/package.json @@ -21,6 +21,8 @@ "tinypool": "2.0.0" }, "devDependencies": { + "@arethetypeswrong/core": "catalog:", + "@napi-rs/cli": "catalog:", "@types/node": "catalog:", "execa": "^9.6.0", "tsdown": "catalog:", diff --git a/apps/oxfmt/tsdown.config.ts b/apps/oxfmt/tsdown.config.ts index 3f8446e5b5a41..e405246d9d297 100644 --- a/apps/oxfmt/tsdown.config.ts +++ b/apps/oxfmt/tsdown.config.ts @@ -7,6 +7,7 @@ export default defineConfig({ platform: "node", target: "node20", dts: true, + attw: { profile: "esm-only" }, clean: true, outDir: "dist", shims: false, diff --git a/apps/oxlint/package.json b/apps/oxlint/package.json index 35a2e586e9aa5..54c570abc2bd8 100644 --- a/apps/oxlint/package.json +++ b/apps/oxlint/package.json @@ -23,6 +23,8 @@ "conformance": "node ./conformance/src/index.ts" }, "devDependencies": { + "@arethetypeswrong/core": "catalog:", + "@napi-rs/cli": "catalog:", "@types/esquery": "^1.5.4", "@types/estree": "^1.0.8", "@types/json-schema": "^7.0.15", @@ -30,7 +32,7 @@ "@typescript-eslint/scope-manager": "8.48.1", "ajv": "^6.12.6", "cross-env": "catalog:", - "eslint": "^9.36.0", + "eslint": "catalog:", "esquery": "^1.6.0", "execa": "^9.6.0", "jiti": "^2.6.0", diff --git a/napi/minify/package.json b/napi/minify/package.json index f00ec9b2db965..b51f56b6a64be 100644 --- a/napi/minify/package.json +++ b/napi/minify/package.json @@ -33,10 +33,14 @@ "build": "pnpm run build-dev --features allocator --release", "postbuild": "publint", "postbuild-dev": "node scripts/patch.js", + "build-wasm": "pnpm run build-wasm-dev --release", + "build-wasm-dev": "pnpm run build-dev --target wasm32-wasip1-threads", "test": "tsc && vitest run --dir ./test" }, "devDependencies": { + "@napi-rs/cli": "catalog:", "@types/node": "catalog:", + "publint": "catalog:", "typescript": "catalog:", "vitest": "catalog:" }, diff --git a/napi/parser/package.json b/napi/parser/package.json index a3d4005e2ca91..ee84ff9f8932c 100644 --- a/napi/parser/package.json +++ b/napi/parser/package.json @@ -56,7 +56,9 @@ "build": "pnpm run build-dev --features allocator --release", "postbuild": "publint", "postbuild-dev": "node scripts/patch.js", - "build-wasi": "pnpm run build-dev --release --target wasm32-wasip1-threads", + "build-wasi": "napi build --target wasm32-wasip1-threads", + "build-wasm": "pnpm run build-wasm-dev --release", + "build-wasm-dev": "pnpm run build-dev --target wasm32-wasip1-threads", "build-npm-dir": "rm -rf npm-dir && napi create-npm-dirs --npm-dir npm-dir && pnpm napi artifacts --npm-dir npm-dir --output-dir src-js", "build-browser-bundle": "node scripts/build-browser-bundle.js", "test": "tsc && pnpm run test-node run", @@ -69,6 +71,7 @@ }, "devDependencies": { "@codspeed/vitest-plugin": "^5.0.0", + "@napi-rs/cli": "catalog:", "@napi-rs/wasm-runtime": "catalog:", "@types/node": "catalog:", "@typescript-eslint/visitor-keys": "^8.44.0", @@ -76,6 +79,7 @@ "@vitest/browser-playwright": "4.0.15", "esbuild": "^0.27.0", "playwright": "^1.51.0", + "publint": "catalog:", "tinypool": "^2.0.0", "typescript": "catalog:", "vitest": "catalog:" diff --git a/napi/playground/package.json b/napi/playground/package.json index a8cdfc8643e7a..323c933002178 100644 --- a/napi/playground/package.json +++ b/napi/playground/package.json @@ -14,14 +14,18 @@ }, "scripts": { "build-test": "echo 'Skipped because there are no tests.'", - "build-dev": "pnpm run build:napi && node scripts/patch.js", - "build": "pnpm run build:napi --release && node scripts/patch.js", - "build:napi": "napi build --platform --esm --target wasm32-wasip1-threads", + "build-dev": "pnpm run build-wasm-dev && node scripts/patch.js", + "build": "pnpm run build-wasm-dev --release && node scripts/patch.js", + "build-wasm-dev": "napi build --platform --esm --target wasm32-wasip1-threads", "postbuild": "publint" }, "dependencies": { "@napi-rs/wasm-runtime": "catalog:" }, + "devDependencies": { + "@napi-rs/cli": "catalog:", + "publint": "catalog:" + }, "napi": { "binaryName": "playground", "packageName": "@oxc-playground/binding", diff --git a/napi/transform/package.json b/napi/transform/package.json index ced596cb7e706..2a3bc7ffb8318 100644 --- a/napi/transform/package.json +++ b/napi/transform/package.json @@ -33,10 +33,14 @@ "build": "pnpm run build-dev --features allocator --release", "postbuild": "publint", "postbuild-dev": "node scripts/patch.js", + "build-wasm": "pnpm run build-wasm-dev --release", + "build-wasm-dev": "pnpm run build-dev --target wasm32-wasip1-threads", "test": "tsc && vitest run --dir ./test" }, "devDependencies": { + "@napi-rs/cli": "catalog:", "@types/node": "catalog:", + "publint": "catalog:", "typescript": "catalog:", "vitest": "catalog:" }, diff --git a/oxlintrc.json b/oxlintrc.json index 57664580a0ad2..e51381c9543cc 100644 --- a/oxlintrc.json +++ b/oxlintrc.json @@ -12,7 +12,7 @@ "promise", "vitest" ], - "jsPlugins": ["./oxlint-plugin.mts"], + "jsPlugins": ["./plugins/oxlint-plugin.mts"], "categories": { "correctness": "error", "perf": "error" diff --git a/package.json b/package.json index 750f38b706ce1..fcc16cab52469 100644 --- a/package.json +++ b/package.json @@ -5,21 +5,15 @@ "build": "pnpm --workspace-concurrency=1 --filter \"./napi/*\" --filter \"./apps/*\" build", "build-dev": "pnpm --workspace-concurrency=1 --filter \"./napi/*\" --filter \"./apps/*\" build-dev", "build-test": "pnpm --workspace-concurrency=1 --filter \"./napi/*\" --filter \"./apps/*\" build-test", + "build-wasm-dev": "pnpm --workspace-concurrency=1 --filter \"./napi/*\" build-wasm-dev", "test": "pnpm --workspace-concurrency=1 --filter \"./napi/*\" --filter \"./apps/*\" test", "fmt": "oxfmt -c oxfmtrc.jsonc", "lint": "oxlint -c oxlintrc.json --deny-warnings --type-aware --type-check --report-unused-disable-directives" }, "devDependencies": { - "@arethetypeswrong/core": "0.18.2", - "@napi-rs/cli": "catalog:", - "emnapi": "1.7.1", - "eslint": "^9.39.2", "oxfmt": "^0.18.0", "oxlint": "^1.33.0", - "oxlint-tsgolint": "0.9.1", - "publint": "catalog:", - "typescript": "catalog:", - "vitest": "catalog:" + "oxlint-tsgolint": "0.9.1" }, "packageManager": "pnpm@10.24.0" } diff --git a/oxlint-plugin.mts b/plugins/oxlint-plugin.mts similarity index 100% rename from oxlint-plugin.mts rename to plugins/oxlint-plugin.mts diff --git a/plugins/package.json b/plugins/package.json new file mode 100644 index 0000000000000..75a83ad1b3b39 --- /dev/null +++ b/plugins/package.json @@ -0,0 +1,6 @@ +{ + "name": "plugins", + "devDependencies": { + "eslint": "catalog:" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ca59122d425cd..5734c48274d86 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,6 +6,9 @@ settings: catalogs: default: + '@arethetypeswrong/core': + specifier: 0.18.2 + version: 0.18.2 '@napi-rs/cli': specifier: 3.5.0 version: 3.5.0 @@ -18,6 +21,9 @@ catalogs: cross-env: specifier: ^10.1.0 version: 10.1.0 + eslint: + specifier: 9.36.0 + version: 9.36.0 publint: specifier: 0.3.15 version: 0.3.15 @@ -43,18 +49,6 @@ importers: .: devDependencies: - '@arethetypeswrong/core': - specifier: 0.18.2 - version: 0.18.2 - '@napi-rs/cli': - specifier: 'catalog:' - version: 3.5.0(@emnapi/runtime@1.7.1)(@types/node@25.0.2) - emnapi: - specifier: 1.7.1 - version: 1.7.1 - eslint: - specifier: ^9.39.2 - version: 9.39.2(jiti@2.6.1) oxfmt: specifier: ^0.18.0 version: 0.18.0 @@ -64,15 +58,6 @@ importers: oxlint-tsgolint: specifier: 0.9.1 version: 0.9.1 - publint: - specifier: 'catalog:' - version: 0.3.15 - typescript: - specifier: 'catalog:' - version: 5.9.3 - vitest: - specifier: 'catalog:' - version: 4.0.15(@types/node@25.0.2)(@vitest/browser-playwright@4.0.15)(happy-dom@20.0.11)(jiti@2.6.1)(terser@5.44.1) apps/oxfmt: dependencies: @@ -83,6 +68,12 @@ importers: specifier: 2.0.0 version: 2.0.0 devDependencies: + '@arethetypeswrong/core': + specifier: 'catalog:' + version: 0.18.2 + '@napi-rs/cli': + specifier: 'catalog:' + version: 3.5.0(@emnapi/runtime@1.7.1)(@types/node@24.1.0) '@types/node': specifier: 'catalog:' version: 24.1.0 @@ -101,6 +92,12 @@ importers: apps/oxlint: devDependencies: + '@arethetypeswrong/core': + specifier: 'catalog:' + version: 0.18.2 + '@napi-rs/cli': + specifier: 'catalog:' + version: 3.5.0(@emnapi/runtime@1.7.1)(@types/node@25.0.2) '@types/esquery': specifier: ^1.5.4 version: 1.5.4 @@ -123,8 +120,8 @@ importers: specifier: 'catalog:' version: 10.1.0 eslint: - specifier: ^9.36.0 - version: 9.39.2(jiti@2.6.1) + specifier: 'catalog:' + version: 9.36.0(jiti@2.6.1) esquery: specifier: ^1.6.0 version: 1.6.0 @@ -198,9 +195,15 @@ importers: napi/minify: devDependencies: + '@napi-rs/cli': + specifier: 'catalog:' + version: 3.5.0(@emnapi/runtime@1.7.1)(@types/node@24.1.0) '@types/node': specifier: 'catalog:' version: 24.1.0 + publint: + specifier: 'catalog:' + version: 0.3.15 typescript: specifier: 'catalog:' version: 5.9.3 @@ -217,6 +220,9 @@ importers: '@codspeed/vitest-plugin': specifier: ^5.0.0 version: 5.0.1(tinybench@2.9.0)(vite@7.3.0(@types/node@24.1.0)(jiti@2.6.1)(terser@5.44.1))(vitest@4.0.15) + '@napi-rs/cli': + specifier: 'catalog:' + version: 3.5.0(@emnapi/runtime@1.7.1)(@types/node@24.1.0) '@napi-rs/wasm-runtime': specifier: 'catalog:' version: 1.1.0 @@ -238,6 +244,9 @@ importers: playwright: specifier: ^1.51.0 version: 1.57.0 + publint: + specifier: 'catalog:' + version: 0.3.15 tinypool: specifier: ^2.0.0 version: 2.0.0 @@ -253,12 +262,25 @@ importers: '@napi-rs/wasm-runtime': specifier: 'catalog:' version: 1.1.0 + devDependencies: + '@napi-rs/cli': + specifier: 'catalog:' + version: 3.5.0(@emnapi/runtime@1.7.1)(@types/node@25.0.2) + publint: + specifier: 'catalog:' + version: 0.3.15 napi/transform: devDependencies: + '@napi-rs/cli': + specifier: 'catalog:' + version: 3.5.0(@emnapi/runtime@1.7.1)(@types/node@24.1.0) '@types/node': specifier: 'catalog:' version: 24.1.0 + publint: + specifier: 'catalog:' + version: 0.3.15 typescript: specifier: 'catalog:' version: 5.9.3 @@ -278,6 +300,12 @@ importers: npm/runtime: {} + plugins: + devDependencies: + eslint: + specifier: 'catalog:' + version: 9.36.0(jiti@2.6.1) + tasks/compat_data: devDependencies: degit: @@ -408,10 +436,6 @@ importers: version: 1.7.1 tasks/transform_conformance: - dependencies: - '@babel/plugin-transform-typescript': - specifier: ^7.26.3 - version: 7.28.5(@babel/core@7.28.5) devDependencies: '@babel/core': specifier: ^7.26.0 @@ -452,12 +476,18 @@ importers: '@babel/plugin-transform-private-property-in-object': specifier: ^7.25.9 version: 7.27.1(@babel/core@7.28.5) + '@babel/plugin-transform-typescript': + specifier: ^7.26.3 + version: 7.28.5(@babel/core@7.28.5) '@oxc-project/runtime': specifier: link:../../npm/runtime version: link:../../npm/runtime reflect-metadata: specifier: ^0.2.2 version: 0.2.2 + vitest: + specifier: 'catalog:' + version: 4.0.15(@types/node@25.0.2)(@vitest/browser-playwright@4.0.15)(happy-dom@20.0.11)(jiti@2.6.1)(terser@5.44.1) packages: @@ -970,28 +1000,28 @@ packages: resolution: {integrity: sha512-aw1gNayWpdI/jSYVgzN5pL0cfzU02GT3NBpeT/DXbx1/1x7ZKxFPd9bwrzygx/qiwIQiJ1sw/zD8qY/kRvlGHA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/config-helpers@0.4.2': - resolution: {integrity: sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==} + '@eslint/config-helpers@0.3.1': + resolution: {integrity: sha512-xR93k9WhrDYpXHORXpxVL5oHj3Era7wo6k/Wd8/IsQNnZUTzkGS29lyn3nAT05v6ltUuTFVCCYDEGfy2Or/sPA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/core@0.17.0': - resolution: {integrity: sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==} + '@eslint/core@0.15.2': + resolution: {integrity: sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/eslintrc@3.3.3': resolution: {integrity: sha512-Kr+LPIUVKz2qkx1HAMH8q1q6azbqBAsXJUxBl/ODDuVPX45Z9DfwB8tPjTi6nNZ8BuM3nbJxC5zCAg5elnBUTQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/js@9.39.2': - resolution: {integrity: sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA==} + '@eslint/js@9.36.0': + resolution: {integrity: sha512-uhCbYtYynH30iZErszX78U+nR3pJU3RHGQ57NXy5QupD4SBVwDeU8TNBy+MjMngc1UyIW9noKqsRqfjQTBU2dw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/object-schema@2.1.7': resolution: {integrity: sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/plugin-kit@0.4.1': - resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} + '@eslint/plugin-kit@0.3.5': + resolution: {integrity: sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@humanfs/core@0.19.1': @@ -3557,8 +3587,8 @@ packages: resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - eslint@9.39.2: - resolution: {integrity: sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==} + eslint@9.36.0: + resolution: {integrity: sha512-hB4FIzXovouYzwzECDcUkJ4OcfOEkXTv2zRY6B9bkwjx/cprAq0uvm1nl7zvQ0/TsUk0zQiN4uPfJpB9m+rPMQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -6099,9 +6129,9 @@ snapshots: '@esbuild/win32-x64@0.27.1': optional: true - '@eslint-community/eslint-utils@4.9.0(eslint@9.39.2(jiti@2.6.1))': + '@eslint-community/eslint-utils@4.9.0(eslint@9.36.0(jiti@2.6.1))': dependencies: - eslint: 9.39.2(jiti@2.6.1) + eslint: 9.36.0(jiti@2.6.1) eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} @@ -6114,11 +6144,9 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/config-helpers@0.4.2': - dependencies: - '@eslint/core': 0.17.0 + '@eslint/config-helpers@0.3.1': {} - '@eslint/core@0.17.0': + '@eslint/core@0.15.2': dependencies: '@types/json-schema': 7.0.15 @@ -6136,13 +6164,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/js@9.39.2': {} + '@eslint/js@9.36.0': {} '@eslint/object-schema@2.1.7': {} - '@eslint/plugin-kit@0.4.1': + '@eslint/plugin-kit@0.3.5': dependencies: - '@eslint/core': 0.17.0 + '@eslint/core': 0.15.2 levn: 0.4.1 '@humanfs/core@0.19.1': {} @@ -6158,6 +6186,15 @@ snapshots: '@inquirer/ansi@2.0.2': {} + '@inquirer/checkbox@5.0.3(@types/node@24.1.0)': + dependencies: + '@inquirer/ansi': 2.0.2 + '@inquirer/core': 11.1.0(@types/node@24.1.0) + '@inquirer/figures': 2.0.2 + '@inquirer/type': 4.0.2(@types/node@24.1.0) + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/checkbox@5.0.3(@types/node@25.0.2)': dependencies: '@inquirer/ansi': 2.0.2 @@ -6167,6 +6204,13 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/confirm@6.0.3(@types/node@24.1.0)': + dependencies: + '@inquirer/core': 11.1.0(@types/node@24.1.0) + '@inquirer/type': 4.0.2(@types/node@24.1.0) + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/confirm@6.0.3(@types/node@25.0.2)': dependencies: '@inquirer/core': 11.1.0(@types/node@25.0.2) @@ -6174,6 +6218,18 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/core@11.1.0(@types/node@24.1.0)': + dependencies: + '@inquirer/ansi': 2.0.2 + '@inquirer/figures': 2.0.2 + '@inquirer/type': 4.0.2(@types/node@24.1.0) + cli-width: 4.1.0 + mute-stream: 3.0.0 + signal-exit: 4.1.0 + wrap-ansi: 9.0.2 + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/core@11.1.0(@types/node@25.0.2)': dependencies: '@inquirer/ansi': 2.0.2 @@ -6186,6 +6242,14 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/editor@5.0.3(@types/node@24.1.0)': + dependencies: + '@inquirer/core': 11.1.0(@types/node@24.1.0) + '@inquirer/external-editor': 2.0.2(@types/node@24.1.0) + '@inquirer/type': 4.0.2(@types/node@24.1.0) + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/editor@5.0.3(@types/node@25.0.2)': dependencies: '@inquirer/core': 11.1.0(@types/node@25.0.2) @@ -6194,6 +6258,13 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/expand@5.0.3(@types/node@24.1.0)': + dependencies: + '@inquirer/core': 11.1.0(@types/node@24.1.0) + '@inquirer/type': 4.0.2(@types/node@24.1.0) + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/expand@5.0.3(@types/node@25.0.2)': dependencies: '@inquirer/core': 11.1.0(@types/node@25.0.2) @@ -6201,6 +6272,13 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/external-editor@2.0.2(@types/node@24.1.0)': + dependencies: + chardet: 2.1.1 + iconv-lite: 0.7.1 + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/external-editor@2.0.2(@types/node@25.0.2)': dependencies: chardet: 2.1.1 @@ -6210,6 +6288,13 @@ snapshots: '@inquirer/figures@2.0.2': {} + '@inquirer/input@5.0.3(@types/node@24.1.0)': + dependencies: + '@inquirer/core': 11.1.0(@types/node@24.1.0) + '@inquirer/type': 4.0.2(@types/node@24.1.0) + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/input@5.0.3(@types/node@25.0.2)': dependencies: '@inquirer/core': 11.1.0(@types/node@25.0.2) @@ -6217,6 +6302,13 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/number@4.0.3(@types/node@24.1.0)': + dependencies: + '@inquirer/core': 11.1.0(@types/node@24.1.0) + '@inquirer/type': 4.0.2(@types/node@24.1.0) + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/number@4.0.3(@types/node@25.0.2)': dependencies: '@inquirer/core': 11.1.0(@types/node@25.0.2) @@ -6224,6 +6316,14 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/password@5.0.3(@types/node@24.1.0)': + dependencies: + '@inquirer/ansi': 2.0.2 + '@inquirer/core': 11.1.0(@types/node@24.1.0) + '@inquirer/type': 4.0.2(@types/node@24.1.0) + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/password@5.0.3(@types/node@25.0.2)': dependencies: '@inquirer/ansi': 2.0.2 @@ -6232,6 +6332,21 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/prompts@8.1.0(@types/node@24.1.0)': + dependencies: + '@inquirer/checkbox': 5.0.3(@types/node@24.1.0) + '@inquirer/confirm': 6.0.3(@types/node@24.1.0) + '@inquirer/editor': 5.0.3(@types/node@24.1.0) + '@inquirer/expand': 5.0.3(@types/node@24.1.0) + '@inquirer/input': 5.0.3(@types/node@24.1.0) + '@inquirer/number': 4.0.3(@types/node@24.1.0) + '@inquirer/password': 5.0.3(@types/node@24.1.0) + '@inquirer/rawlist': 5.1.0(@types/node@24.1.0) + '@inquirer/search': 4.0.3(@types/node@24.1.0) + '@inquirer/select': 5.0.3(@types/node@24.1.0) + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/prompts@8.1.0(@types/node@25.0.2)': dependencies: '@inquirer/checkbox': 5.0.3(@types/node@25.0.2) @@ -6247,6 +6362,13 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/rawlist@5.1.0(@types/node@24.1.0)': + dependencies: + '@inquirer/core': 11.1.0(@types/node@24.1.0) + '@inquirer/type': 4.0.2(@types/node@24.1.0) + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/rawlist@5.1.0(@types/node@25.0.2)': dependencies: '@inquirer/core': 11.1.0(@types/node@25.0.2) @@ -6254,6 +6376,14 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/search@4.0.3(@types/node@24.1.0)': + dependencies: + '@inquirer/core': 11.1.0(@types/node@24.1.0) + '@inquirer/figures': 2.0.2 + '@inquirer/type': 4.0.2(@types/node@24.1.0) + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/search@4.0.3(@types/node@25.0.2)': dependencies: '@inquirer/core': 11.1.0(@types/node@25.0.2) @@ -6262,6 +6392,15 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/select@5.0.3(@types/node@24.1.0)': + dependencies: + '@inquirer/ansi': 2.0.2 + '@inquirer/core': 11.1.0(@types/node@24.1.0) + '@inquirer/figures': 2.0.2 + '@inquirer/type': 4.0.2(@types/node@24.1.0) + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/select@5.0.3(@types/node@25.0.2)': dependencies: '@inquirer/ansi': 2.0.2 @@ -6271,6 +6410,10 @@ snapshots: optionalDependencies: '@types/node': 25.0.2 + '@inquirer/type@4.0.2(@types/node@24.1.0)': + optionalDependencies: + '@types/node': 24.1.0 + '@inquirer/type@4.0.2(@types/node@25.0.2)': optionalDependencies: '@types/node': 25.0.2 @@ -6358,6 +6501,37 @@ snapshots: '@lukeed/csprng@1.1.0': {} + '@napi-rs/cli@3.5.0(@emnapi/runtime@1.7.1)(@types/node@24.1.0)': + dependencies: + '@inquirer/prompts': 8.1.0(@types/node@24.1.0) + '@napi-rs/cross-toolchain': 1.0.3 + '@napi-rs/wasm-tools': 1.0.1 + '@octokit/rest': 22.0.1 + clipanion: 4.0.0-rc.4(typanion@3.14.0) + colorette: 2.0.20 + emnapi: 1.7.1 + es-toolkit: 1.43.0 + js-yaml: 4.1.1 + obug: 2.1.1 + semver: 7.7.3 + typanion: 3.14.0 + optionalDependencies: + '@emnapi/runtime': 1.7.1 + transitivePeerDependencies: + - '@napi-rs/cross-toolchain-arm64-target-aarch64' + - '@napi-rs/cross-toolchain-arm64-target-armv7' + - '@napi-rs/cross-toolchain-arm64-target-ppc64le' + - '@napi-rs/cross-toolchain-arm64-target-s390x' + - '@napi-rs/cross-toolchain-arm64-target-x86_64' + - '@napi-rs/cross-toolchain-x64-target-aarch64' + - '@napi-rs/cross-toolchain-x64-target-armv7' + - '@napi-rs/cross-toolchain-x64-target-ppc64le' + - '@napi-rs/cross-toolchain-x64-target-s390x' + - '@napi-rs/cross-toolchain-x64-target-x86_64' + - '@types/node' + - node-addon-api + - supports-color + '@napi-rs/cli@3.5.0(@emnapi/runtime@1.7.1)(@types/node@25.0.2)': dependencies: '@inquirer/prompts': 8.1.0(@types/node@25.0.2) @@ -8672,20 +8846,21 @@ snapshots: eslint-visitor-keys@4.2.1: {} - eslint@9.39.2(jiti@2.6.1): + eslint@9.36.0(jiti@2.6.1): dependencies: - '@eslint-community/eslint-utils': 4.9.0(eslint@9.39.2(jiti@2.6.1)) + '@eslint-community/eslint-utils': 4.9.0(eslint@9.36.0(jiti@2.6.1)) '@eslint-community/regexpp': 4.12.2 '@eslint/config-array': 0.21.1 - '@eslint/config-helpers': 0.4.2 - '@eslint/core': 0.17.0 + '@eslint/config-helpers': 0.3.1 + '@eslint/core': 0.15.2 '@eslint/eslintrc': 3.3.3 - '@eslint/js': 9.39.2 - '@eslint/plugin-kit': 0.4.1 + '@eslint/js': 9.36.0 + '@eslint/plugin-kit': 0.3.5 '@humanfs/node': 0.16.7 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.3 '@types/estree': 1.0.8 + '@types/json-schema': 7.0.15 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 9105102bda12c..4e27a00f4b305 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -4,16 +4,19 @@ packages: - wasm/* - npm/* - editors/* + - plugins/ - tasks/e2e - tasks/transform_conformance - tasks/compat_data - tasks/mcp catalog: + "@arethetypeswrong/core": 0.18.2 "@napi-rs/cli": 3.5.0 "@napi-rs/wasm-runtime": 1.1.0 "@types/node": 24.1.0 cross-env: ^10.1.0 + eslint: 9.36.0 publint: 0.3.15 rolldown: 1.0.0-beta.54 tsdown: 0.18.0 diff --git a/tasks/transform_conformance/package.json b/tasks/transform_conformance/package.json index 4a4eef3e43c4f..d895e2bef37f0 100644 --- a/tasks/transform_conformance/package.json +++ b/tasks/transform_conformance/package.json @@ -5,9 +5,6 @@ "scripts": { "vitest": "vitest" }, - "dependencies": { - "@babel/plugin-transform-typescript": "^7.26.3" - }, "devDependencies": { "@babel/core": "^7.26.0", "@babel/plugin-external-helpers": "^7.25.9", @@ -22,7 +19,9 @@ "@babel/plugin-transform-optional-chaining": "^7.25.9", "@babel/plugin-transform-private-methods": "^7.25.9", "@babel/plugin-transform-private-property-in-object": "^7.25.9", + "@babel/plugin-transform-typescript": "^7.26.3", "@oxc-project/runtime": "link:../../npm/runtime", - "reflect-metadata": "^0.2.2" + "reflect-metadata": "^0.2.2", + "vitest": "catalog:" } }