Skip to content

Commit 17a87c3

Browse files
committed
fix: override module and moduleResolution for mocha test scripts
ts-node with module:nodenext treats .ts files as ESM, causing "Cannot require() ES Module" errors. Override both module and moduleResolution to commonjs/node for test execution. Assisted-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 7eb223d commit 17a87c3

23 files changed

Lines changed: 126 additions & 155 deletions

File tree

packages/browser-logs/package.json

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"name": "@web/browser-logs",
3+
"type": "module",
34
"version": "0.4.1",
45
"publishConfig": {
56
"access": "public"
@@ -17,22 +18,20 @@
1718
"exports": {
1819
".": {
1920
"types": "./index.d.ts",
20-
"import": "./index.mjs",
21-
"require": "./dist/index.js"
21+
"default": "./dist/index.js"
2222
}
2323
},
2424
"engines": {
25-
"node": ">=18.0.0"
25+
"node": ">=24.0.0"
2626
},
2727
"scripts": {
2828
"build": "tsc",
29-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --reporter dot",
30-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --watch --watch-files src,test"
29+
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --reporter dot",
30+
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --watch --watch-files src,test"
3131
},
3232
"files": [
3333
"*.d.ts",
3434
"*.js",
35-
"*.mjs",
3635
"dist",
3736
"src"
3837
],

packages/dev-server-core/package.json

Lines changed: 14 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"name": "@web/dev-server-core",
3+
"type": "module",
34
"version": "0.7.5",
45
"publishConfig": {
56
"access": "public"
@@ -17,36 +18,33 @@
1718
"exports": {
1819
".": {
1920
"types": "./index.d.ts",
20-
"import": "./index.mjs",
21-
"require": "./dist/index.js"
21+
"default": "./dist/index.js"
2222
},
2323
"./dist/dom5": {
2424
"types": "./dist/dom5/index.d.ts",
25-
"require": "./dist/dom5/index.js"
25+
"default": "./dist/dom5/index.js"
2626
},
2727
"./test-helpers": {
2828
"types": "./test-helpers.d.ts",
29-
"import": "./test-helpers.mjs",
30-
"require": "./dist/test-helpers.js"
29+
"default": "./dist/test-helpers.js"
3130
}
3231
},
3332
"engines": {
34-
"node": ">=18.0.0"
33+
"node": ">=24.0.0"
3534
},
3635
"scripts": {
3736
"build": "tsc",
3837
"start:demo": "node demo/basic/start-server.js",
3938
"start:event-stream": "node demo/event-stream/start-server.js",
4039
"start:http2": "node demo/http2/start-server.js",
4140
"start:import-asset": "node demo/import-asset/start-server.js",
42-
"test": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --exit --reporter dot",
43-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --watch --watch-files src,test"
41+
"test": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --exit --reporter dot",
42+
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.{ts,js,mjs,cjs}\" --require ts-node/register --watch --watch-files src,test"
4443
},
4544
"files": [
4645
".self-signed-dev-server-ssl.cert",
4746
".self-signed-dev-server-ssl.key",
4847
"*.d.ts",
49-
"*.mjs",
5048
"dist",
5149
"src"
5250
],
@@ -58,30 +56,29 @@
5856
"core"
5957
],
6058
"dependencies": {
61-
"@types/koa": "^2.11.6",
62-
"@types/ws": "^7.4.0",
59+
"@types/koa": "^3.0.1",
60+
"@types/ws": "^8.5.13",
6361
"@web/parse5-utils": "^2.1.0",
6462
"chokidar": "^4.0.1",
6563
"clone": "^2.1.2",
6664
"es-module-lexer": "^1.0.0",
6765
"get-stream": "^6.0.0",
6866
"is-stream": "^2.0.0",
6967
"isbinaryfile": "^5.0.0",
70-
"koa": "^2.16.1",
68+
"koa": "^3.1.1",
7169
"koa-etag": "^4.0.0",
7270
"koa-send": "^5.0.1",
7371
"koa-static": "^5.0.0",
7472
"lru-cache": "^8.0.4",
7573
"mime-types": "^2.1.27",
76-
"parse5": "^6.0.1",
74+
"parse5": "^7.0.0 || ^8.0.0",
7775
"picomatch": "^2.2.2",
78-
"ws": "^7.5.10"
76+
"ws": "^8.18.3"
7977
},
8078
"devDependencies": {
8179
"@types/clone": "^2.1.0",
82-
"@types/koa-etag": "^3.0.0",
83-
"@types/koa-static": "^4.0.1",
84-
"@types/parse5": "^6.0.1",
80+
"@types/koa-etag": "^3.0.4",
81+
"@types/koa-static": "^4.0.4",
8582
"abort-controller": "^3.0.0",
8683
"express": "^4.21.2",
8784
"nanoid": "^3.1.25",

packages/dev-server-esbuild/package.json

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"name": "@web/dev-server-esbuild",
3+
"type": "module",
34
"version": "1.0.5",
45
"publishConfig": {
56
"access": "public"
@@ -17,24 +18,22 @@
1718
"exports": {
1819
".": {
1920
"types": "./index.d.ts",
20-
"import": "./index.mjs",
21-
"require": "./dist/index.js"
21+
"default": "./dist/index.js"
2222
}
2323
},
2424
"engines": {
25-
"node": ">=18.0.0"
25+
"node": ">=24.0.0"
2626
},
2727
"scripts": {
2828
"build": "tsc",
2929
"start:demo:jsx": "es-dev-server --config demo/jsx/server.config.js",
3030
"start:demo:ts": "es-dev-server --config demo/ts/server.config.js",
31-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --reporter dot",
32-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
31+
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --reporter dot",
32+
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
3333
},
3434
"files": [
3535
"*.d.ts",
3636
"*.js",
37-
"*.mjs",
3837
"dist",
3938
"src"
4039
],
@@ -53,8 +52,8 @@
5352
"dependencies": {
5453
"@mdn/browser-compat-data": "^4.0.0",
5554
"@web/dev-server-core": "^0.7.4",
56-
"esbuild": "^0.27.0",
57-
"parse5": "^6.0.1",
55+
"esbuild": "^0.25.0",
56+
"parse5": "^7.0.0 || ^8.0.0",
5857
"ua-parser-js": "^1.0.33"
5958
},
6059
"devDependencies": {

packages/dev-server-hmr/package.json

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"name": "@web/dev-server-hmr",
3+
"type": "module",
34
"version": "0.4.1",
45
"publishConfig": {
56
"access": "public"
@@ -17,24 +18,22 @@
1718
"exports": {
1819
".": {
1920
"types": "./index.d.ts",
20-
"import": "./index.mjs",
21-
"require": "./dist/index.js"
21+
"default": "./dist/index.js"
2222
}
2323
},
2424
"engines": {
25-
"node": ">=18.0.0"
25+
"node": ">=24.0.0"
2626
},
2727
"scripts": {
2828
"build": "tsc",
2929
"start:lit-html": "wds --config demo/lit-html/server.config.mjs",
3030
"start:vanilla": "wds --config demo/vanilla/server.config.mjs",
31-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --reporter dot",
32-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
31+
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --reporter dot",
32+
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
3333
},
3434
"files": [
3535
"*.d.ts",
3636
"*.js",
37-
"*.mjs",
3837
"dist",
3938
"scripts",
4039
"src"

packages/dev-server-import-maps/package.json

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"name": "@web/dev-server-import-maps",
3+
"type": "module",
34
"version": "0.2.1",
45
"publishConfig": {
56
"access": "public"
@@ -17,23 +18,21 @@
1718
"exports": {
1819
".": {
1920
"types": "./index.d.ts",
20-
"import": "./index.mjs",
21-
"require": "./dist/index.js"
21+
"default": "./dist/index.js"
2222
}
2323
},
2424
"engines": {
25-
"node": ">=18.0.0"
25+
"node": ">=24.0.0"
2626
},
2727
"scripts": {
2828
"build": "tsc",
29-
"test": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register",
29+
"test": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register",
3030
"test:browser": "node ../test-runner/dist/bin.js test-browser/test/**/*.test.{js,html} --config test-browser/web-test-runner.config.mjs",
31-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
31+
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
3232
},
3333
"files": [
3434
"*.d.ts",
3535
"*.js",
36-
"*.mjs",
3736
"dist",
3837
"src"
3938
],
@@ -51,10 +50,9 @@
5150
],
5251
"dependencies": {
5352
"@import-maps/resolve": "^1.0.1",
54-
"@types/parse5": "^6.0.1",
5553
"@web/dev-server-core": "^0.7.2",
5654
"@web/parse5-utils": "^2.1.0",
57-
"parse5": "^6.0.1",
55+
"parse5": "^7.0.0 || ^8.0.0",
5856
"picomatch": "^2.2.2"
5957
},
6058
"devDependencies": {

packages/dev-server-legacy/package.json

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"name": "@web/dev-server-legacy",
3+
"type": "module",
34
"version": "2.1.1",
45
"publishConfig": {
56
"access": "public"
@@ -17,23 +18,21 @@
1718
"exports": {
1819
".": {
1920
"types": "./index.d.ts",
20-
"import": "./index.mjs",
21-
"require": "./dist/index.js"
21+
"default": "./dist/index.js"
2222
}
2323
},
2424
"engines": {
25-
"node": ">=18.0.0"
25+
"node": ">=24.0.0"
2626
},
2727
"scripts": {
2828
"build": "tsc",
2929
"start": "wds --open --config demo/server.config.mjs",
30-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --reporter dot",
31-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
30+
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --reporter dot",
31+
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
3232
},
3333
"files": [
3434
"*.d.ts",
3535
"*.js",
36-
"*.mjs",
3736
"dist",
3837
"src"
3938
],
@@ -64,7 +63,7 @@
6463
"browserslist": "^4.16.0",
6564
"browserslist-useragent": "^4.0.0",
6665
"caniuse-api": "^3.0.0",
67-
"parse5": "^6.0.1",
66+
"parse5": "^7.0.0 || ^8.0.0",
6867
"valid-url": "^1.0.9"
6968
},
7069
"devDependencies": {

packages/dev-server-rollup/package.json

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"name": "@web/dev-server-rollup",
3+
"type": "module",
34
"version": "0.6.4",
45
"publishConfig": {
56
"access": "public"
@@ -17,21 +18,19 @@
1718
"exports": {
1819
".": {
1920
"types": "./index.d.ts",
20-
"import": "./index.mjs",
21-
"require": "./dist/index.js"
21+
"default": "./dist/index.js"
2222
}
2323
},
2424
"engines": {
25-
"node": ">=18.0.0"
25+
"node": ">=24.0.0"
2626
},
2727
"scripts": {
28-
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/node/**/*.test.ts\" --require ts-node/register --exit --reporter dot",
29-
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"moduleResolution\":\"node\"}' mocha \"test/node/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
28+
"test:node": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/node/**/*.test.ts\" --require ts-node/register --exit --reporter dot",
29+
"test:watch": "TS_NODE_COMPILER_OPTIONS='{\"module\":\"commonjs\",\"moduleResolution\":\"node\"}' mocha \"test/node/**/*.test.ts\" --require ts-node/register --watch --watch-files src,test"
3030
},
3131
"files": [
3232
"*.d.ts",
3333
"*.js",
34-
"*.mjs",
3534
"dist",
3635
"src"
3736
],
@@ -50,8 +49,8 @@
5049
"dependencies": {
5150
"@rollup/plugin-node-resolve": "^15.0.1",
5251
"@web/dev-server-core": "^0.7.2",
53-
"nanocolors": "^0.2.1",
54-
"parse5": "^6.0.1",
52+
"nanocolors": "^0.2.13",
53+
"parse5": "^7.0.0 || ^8.0.0",
5554
"rollup": "^4.4.0",
5655
"whatwg-url": "^14.0.0"
5756
},
@@ -61,12 +60,10 @@
6160
"@rollup/plugin-babel": "^6.0.4",
6261
"@rollup/plugin-commonjs": "25.0.7",
6362
"@rollup/plugin-replace": "^5.0.5",
64-
"@types/parse5": "^6.0.1",
6563
"@types/whatwg-url": "^11.0.0",
6664
"@web/test-runner-chrome": "^0.18.0",
6765
"@web/test-runner-core": "^0.13.0",
6866
"chai": "^4.2.0",
69-
"mocha": "^10.8.2",
7067
"postcss": "^8.4.31",
7168
"rollup-plugin-postcss": "^4.0.2"
7269
}

0 commit comments

Comments
 (0)