From ca95875475cc8ef5af289876a64ae46141461d14 Mon Sep 17 00:00:00 2001 From: Peter Samarin Date: Tue, 5 May 2026 15:37:22 +0200 Subject: [PATCH] chore(ts): add root project references for editor tooling Split shared compiler options into tsconfig.base.json so the root tsconfig.json can describe the workspace project graph. This lets TypeScript language servers resolve references across package boundaries while keeping package builds on the same compiler settings. --- package.json | 2 +- packages/bug-detectors/tsconfig.json | 2 +- packages/core/tsconfig.json | 2 +- packages/fuzzer/tsconfig.json | 2 +- packages/hooking/tsconfig.json | 2 +- packages/instrumentor/tsconfig.json | 2 +- packages/jest-runner/tsconfig.json | 2 +- tsconfig.base.json | 19 +++++++++++++++++++ tsconfig.json | 26 ++++++++++---------------- 9 files changed, 36 insertions(+), 23 deletions(-) create mode 100644 tsconfig.base.json diff --git a/package.json b/package.json index d4e1fd6eb..b2fbe8384 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,7 @@ }, "scripts": { "prepare": "husky || true", - "build": "tsc -b tsconfig.build.json", + "build": "tsc -b tsconfig.json", "clean": "rimraf -g **/node_modules **/tests/**/package-lock.json **/examples/**/package-lock.json **/dist **/coverage packages/fuzzer/build packages/fuzzer/prebuilds", "compile:watch": "tsc -b tsconfig.build.json --incremental --pretty --watch", "test": "run-script-os", diff --git a/packages/bug-detectors/tsconfig.json b/packages/bug-detectors/tsconfig.json index c24aa69e3..7e03f1750 100644 --- a/packages/bug-detectors/tsconfig.json +++ b/packages/bug-detectors/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "rootDir": ".", "outDir": "dist" diff --git a/packages/core/tsconfig.json b/packages/core/tsconfig.json index 783e7e5c4..e06fd9a36 100644 --- a/packages/core/tsconfig.json +++ b/packages/core/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "rootDir": ".", "outDir": "dist" diff --git a/packages/fuzzer/tsconfig.json b/packages/fuzzer/tsconfig.json index 8ef3f91ff..efa12d4c6 100644 --- a/packages/fuzzer/tsconfig.json +++ b/packages/fuzzer/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "rootDir": ".", "outDir": "dist" diff --git a/packages/hooking/tsconfig.json b/packages/hooking/tsconfig.json index 3cfb84e21..54b6b8b94 100644 --- a/packages/hooking/tsconfig.json +++ b/packages/hooking/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "rootDir": ".", "outDir": "dist" diff --git a/packages/instrumentor/tsconfig.json b/packages/instrumentor/tsconfig.json index 42fbf50f3..f9496c6c8 100644 --- a/packages/instrumentor/tsconfig.json +++ b/packages/instrumentor/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "rootDir": ".", "outDir": "dist" diff --git a/packages/jest-runner/tsconfig.json b/packages/jest-runner/tsconfig.json index 64d5c4d7a..280fd6161 100644 --- a/packages/jest-runner/tsconfig.json +++ b/packages/jest-runner/tsconfig.json @@ -1,5 +1,5 @@ { - "extends": "../../tsconfig.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "rootDir": ".", "outDir": "dist" diff --git a/tsconfig.base.json b/tsconfig.base.json new file mode 100644 index 000000000..18ec2b6ad --- /dev/null +++ b/tsconfig.base.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "target": "ES2020", + "module": "NodeNext", + "baseUrl": "./", + "allowJs": true, + "checkJs": true, + "outDir": "./dist", + "esModuleInterop": true, + "forceConsistentCasingInFileNames": true, + "strict": true, + "skipLibCheck": true, + "declaration": true, + "declarationMap": true, + "composite": true, + "alwaysStrict": true, + "sourceMap": true + } +} diff --git a/tsconfig.json b/tsconfig.json index 87a9097fd..b209decf6 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,18 +1,12 @@ { - "compilerOptions": { - "target": "ES2020", - "module": "NodeNext", - "baseUrl": "./", - "allowJs": true, - "checkJs": true, - "outDir": "./dist", - "esModuleInterop": true, - "forceConsistentCasingInFileNames": true, - "strict": true, - "skipLibCheck": true, - "declaration": true, - "composite": true, - "alwaysStrict": true, - "sourceMap": true - } + "extends": "./tsconfig.base.json", + "files": [], + "references": [ + { "path": "packages/bug-detectors" }, + { "path": "packages/core" }, + { "path": "packages/fuzzer" }, + { "path": "packages/hooking" }, + { "path": "packages/instrumentor" }, + { "path": "packages/jest-runner" } + ] }