From 06f769c01717484b4cfbb98785ad5e32d1515d41 Mon Sep 17 00:00:00 2001 From: Paul Valladares <85648028+dreyfus92@users.noreply.github.com> Date: Tue, 23 Jun 2026 14:33:04 -0600 Subject: [PATCH 1/3] feat(preferred): add tsc to replacements --- docs/modules/tsc.md | 30 ++++++++++++++++++++++++++++++ manifests/preferred.json | 11 +++++++++++ 2 files changed, 41 insertions(+) create mode 100644 docs/modules/tsc.md diff --git a/docs/modules/tsc.md b/docs/modules/tsc.md new file mode 100644 index 00000000..a8d39643 --- /dev/null +++ b/docs/modules/tsc.md @@ -0,0 +1,30 @@ +--- +description: Modern alternatives to the tsc package for the TypeScript compiler +--- + +# Replacements for `tsc` + +The npm package [`tsc`](https://www.npmjs.com/package/tsc) is **not** the TypeScript compiler — it is a [deprecated](https://www.npmjs.com/package/tsc) stub that prints _"This is not the tsc command you are looking for"_ when run. + +## `typescript` + +The [`typescript`](https://www.npmjs.com/package/typescript) package is the official compiler and provides the real `tsc` binary via `node_modules/.bin`. Replace `tsc` in your dependencies: + +```json +{ + "devDependencies": { + "tsc": "^2.0.4", // [!code --] + "typescript": "^5.9.0" // [!code ++] + } +} +``` + +Existing `"build": "tsc"` scripts work unchanged once `typescript` is installed. For `npx` or global installs, use `typescript` — not `tsc`: + +```bash +npx tsc --init # [!code --] +npx --package typescript tsc --init # [!code ++] + +npm install -g tsc # [!code --] +npm install -g typescript # [!code ++] +``` diff --git a/manifests/preferred.json b/manifests/preferred.json index 1860d349..5b22fac2 100644 --- a/manifests/preferred.json +++ b/manifests/preferred.json @@ -2642,6 +2642,12 @@ "replacements": ["neotraverse"], "url": {"type": "e18e", "id": "traverse"} }, + "tsc": { + "type": "module", + "moduleName": "tsc", + "replacements": ["typescript"], + "url": {"type": "e18e", "id": "tsc"} + }, "tsup": { "type": "module", "moduleName": "tsup", @@ -3489,6 +3495,11 @@ "type": "documented", "replacementModule": "tsdown" }, + "typescript": { + "id": "typescript", + "type": "documented", + "replacementModule": "typescript" + }, "unicode-segmenter": { "id": "unicode-segmenter", "type": "documented", From 701c04a66df79e40e00a3f42d741fc96295a6ff2 Mon Sep 17 00:00:00 2001 From: Paul Valladares <85648028+dreyfus92@users.noreply.github.com> Date: Tue, 23 Jun 2026 14:42:29 -0600 Subject: [PATCH 2/3] apply suggestions from @gameroman's review --- docs/modules/tsc.md | 4 ++-- manifests/preferred.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/modules/tsc.md b/docs/modules/tsc.md index a8d39643..7e6d5dde 100644 --- a/docs/modules/tsc.md +++ b/docs/modules/tsc.md @@ -4,11 +4,11 @@ description: Modern alternatives to the tsc package for the TypeScript compiler # Replacements for `tsc` -The npm package [`tsc`](https://www.npmjs.com/package/tsc) is **not** the TypeScript compiler — it is a [deprecated](https://www.npmjs.com/package/tsc) stub that prints _"This is not the tsc command you are looking for"_ when run. +The npm package [`tsc`](https://github.com/basarat/tsc) is **not** the TypeScript compiler — it is a deprecated stub that prints _"This is not the tsc command you are looking for"_ when run. ## `typescript` -The [`typescript`](https://www.npmjs.com/package/typescript) package is the official compiler and provides the real `tsc` binary via `node_modules/.bin`. Replace `tsc` in your dependencies: +The [`typescript`](https://github.com/microsoft/TypeScript) package is the official compiler and provides the real `tsc` binary via `node_modules/.bin`. Replace `tsc` in your dependencies: ```json { diff --git a/manifests/preferred.json b/manifests/preferred.json index 5b22fac2..97a431cc 100644 --- a/manifests/preferred.json +++ b/manifests/preferred.json @@ -2643,7 +2643,7 @@ "url": {"type": "e18e", "id": "traverse"} }, "tsc": { - "type": "module", + "type": "removal", "moduleName": "tsc", "replacements": ["typescript"], "url": {"type": "e18e", "id": "tsc"} From cef52ab2275e09cc9afa85c20bce4a9fef02ec47 Mon Sep 17 00:00:00 2001 From: Paul Valladares <85648028+dreyfus92@users.noreply.github.com> Date: Tue, 23 Jun 2026 14:46:01 -0600 Subject: [PATCH 3/3] fix(preferred): update tsc entry to reflect correct module and removal details --- manifests/preferred.json | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/manifests/preferred.json b/manifests/preferred.json index 97a431cc..35724786 100644 --- a/manifests/preferred.json +++ b/manifests/preferred.json @@ -2643,9 +2643,9 @@ "url": {"type": "e18e", "id": "traverse"} }, "tsc": { - "type": "removal", + "type": "module", "moduleName": "tsc", - "replacements": ["typescript"], + "replacements": ["tsc"], "url": {"type": "e18e", "id": "tsc"} }, "tsup": { @@ -3490,16 +3490,17 @@ "type": "documented", "replacementModule": "ts-graphviz" }, + "tsc": { + "id": "tsc", + "type": "removal", + "url": {"type": "e18e", "id": "tsc"}, + "description": "The `tsc` npm package is not the TypeScript compiler. Remove it and install `typescript` instead." + }, "tsdown": { "id": "tsdown", "type": "documented", "replacementModule": "tsdown" }, - "typescript": { - "id": "typescript", - "type": "documented", - "replacementModule": "typescript" - }, "unicode-segmenter": { "id": "unicode-segmenter", "type": "documented",