From 6c26c393438bee0563e9d800bf0857d806c500f3 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 3 Jun 2026 11:11:58 +0000 Subject: [PATCH 1/3] Update dependency typescript to v6 --- javascript/package-lock.json | 8 ++++---- javascript/package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/javascript/package-lock.json b/javascript/package-lock.json index d38ebe51..9a786e8d 100644 --- a/javascript/package-lock.json +++ b/javascript/package-lock.json @@ -32,7 +32,7 @@ "globby": "^16.0.0", "mocha": "^11.0.0", "ts-node": "^10.9.1", - "typescript": "5.9.3" + "typescript": "6.0.3" }, "peerDependencies": { "@cucumber/messages": "*" @@ -1885,9 +1885,9 @@ } }, "node_modules/typescript": { - "version": "5.9.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "dev": true, "license": "Apache-2.0", "bin": { diff --git a/javascript/package.json b/javascript/package.json index 0a965509..94aec288 100644 --- a/javascript/package.json +++ b/javascript/package.json @@ -47,6 +47,6 @@ "globby": "^16.0.0", "mocha": "^11.0.0", "ts-node": "^10.9.1", - "typescript": "5.9.3" + "typescript": "6.0.3" } } From 8b54e8da0c53f65af3416f6e0bfb30d5c87dc539 Mon Sep 17 00:00:00 2001 From: David Goss Date: Wed, 3 Jun 2026 19:19:13 +0100 Subject: [PATCH 2/3] Adopt standard cucumber tsconfig for TypeScript 6 TS 6 no longer auto-includes @types/* from node_modules, so the mocha globals (describe/it) went missing. Adopt the standard cucumber config from javascript-core: explicit types array, es2024 lib/target, NodeNext resolution, and an emit-only rootDir/outDir split into tsconfig.build.json (TS 6 requires an explicit rootDir to avoid emit ambiguity). Dropped the unused dom lib and the sinon/sinon-chai types this project doesn't use. --- javascript/tsconfig.build.json | 6 +++++- javascript/tsconfig.json | 11 +++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/javascript/tsconfig.build.json b/javascript/tsconfig.build.json index 74cb3c9a..851de8ae 100644 --- a/javascript/tsconfig.build.json +++ b/javascript/tsconfig.build.json @@ -1,5 +1,9 @@ { "extends": "./tsconfig.json", "include": ["src"], - "exclude": ["src/**/*.spec.*"] + "exclude": ["src/**/*.spec.*"], + "compilerOptions": { + "rootDir": "src", + "outDir": "dist" + } } diff --git a/javascript/tsconfig.json b/javascript/tsconfig.json index b2f1a3ad..26339602 100644 --- a/javascript/tsconfig.json +++ b/javascript/tsconfig.json @@ -2,10 +2,13 @@ "extends": "@tsconfig/recommended/tsconfig.json", "include": ["src"], "compilerOptions": { - "lib": ["dom", "es2023"], - "target": "es2022", + "lib": ["es2024"], + "target": "es2024", + "module": "NodeNext", + "moduleResolution": "NodeNext", + "types": ["node", "mocha", "chai"], "declaration": true, - "outDir": "dist", - "inlineSourceMap": true + "inlineSourceMap": true, + "inlineSources": true } } From 25d969a93dae7d54cb0ac29a44ea3f28cf1e8d58 Mon Sep 17 00:00:00 2001 From: David Goss Date: Wed, 3 Jun 2026 19:19:21 +0100 Subject: [PATCH 3/3] Resync lockfile, pin @types/node, build with tsc -p Resync package-lock.json under TypeScript 6. Pin @types/node directly to the v22 support baseline (TS 6 stopped pulling transitive @types/*, and v22 matches our minimum supported Node). Switch the build scripts from tsc --build to tsc -p since there are no project references or composite builds here. --- javascript/package-lock.json | 16 ++++++++-------- javascript/package.json | 6 +++--- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/javascript/package-lock.json b/javascript/package-lock.json index 9a786e8d..e7ee771e 100644 --- a/javascript/package-lock.json +++ b/javascript/package-lock.json @@ -25,7 +25,7 @@ "@types/chai-xml": "^0.3.6", "@types/luxon": "^3.4.2", "@types/mocha": "^10.0.6", - "@types/node": "24.12.4", + "@types/node": "^22", "chai": "^6.0.0", "chai-almost": "^1.0.1", "chai-xml": "^0.4.1", @@ -461,13 +461,13 @@ "license": "MIT" }, "node_modules/@types/node": { - "version": "24.12.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-24.12.4.tgz", - "integrity": "sha512-GUUEShf+PBCGW2KaXwcIt3Yk+e3pkKwWKb9GSyM9WQVE+ep2jzmHdGsHzu4wgcZy5fN9FBdVzjpBQsYlpfpgLA==", + "version": "22.19.19", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.19.tgz", + "integrity": "sha512-dyh/xO2Fh5bYrfWaaqGrRQQGkNdmYw6AmaAUvYeUMNTWQtvb796ikLdmTchRmOlOiIJ1TDXfWgVx1QkUlQ6Hew==", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~7.16.0" + "undici-types": "~6.21.0" } }, "node_modules/acorn": { @@ -1899,9 +1899,9 @@ } }, "node_modules/undici-types": { - "version": "7.16.0", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", - "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "version": "6.21.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz", + "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==", "dev": true, "license": "MIT" }, diff --git a/javascript/package.json b/javascript/package.json index 94aec288..509c58ba 100644 --- a/javascript/package.json +++ b/javascript/package.json @@ -13,12 +13,12 @@ "author": "David Goss", "license": "MIT", "scripts": { - "build": "tsc --build tsconfig.build.json", + "build": "tsc -p tsconfig.build.json", "clean": "rm -rf dist", "fix": "biome check --fix --error-on-warnings", "lint": "biome check --error-on-warnings", "test": "mocha \"src/**/*.spec.ts\"", - "prepublishOnly": "tsc --build tsconfig.build.json" + "prepublishOnly": "npm run build" }, "dependencies": { "@cucumber/query": "^15.0.1", @@ -40,7 +40,7 @@ "@types/chai-xml": "^0.3.6", "@types/luxon": "^3.4.2", "@types/mocha": "^10.0.6", - "@types/node": "24.12.4", + "@types/node": "^22", "chai": "^6.0.0", "chai-almost": "^1.0.1", "chai-xml": "^0.4.1",