build: migrate to TypeScript 7.0#9575
Conversation
Switch the toolchain from the tsgo native-preview to the TypeScript 7.0 RC, which ships the native (Go) compiler as the standard `typescript` package with the standard `tsc` binary. - Replace `@typescript/native-preview` + `typescript@6` with `typescript@7.0.1-rc`. - Add `@typescript/typescript6` (exposes `tsc6`) for side-by-side TS6 fallback/comparison during the RC period. - Convert all `tsgo` build/check-types scripts to `tsc` across every package. - Refresh workaround comments referencing the native compiler. Verified: `pnpm check-types` passes across all 17 packages; lockfile in sync with `--frozen-lockfile`. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Code Review
This pull request replaces the tsgo compiler tool with the standard TypeScript compiler (tsc) across all packages, updating the build and type-checking scripts accordingly. Additionally, it upgrades the main typescript dependency to 7.0.1-rc and introduces @typescript/typescript6 to replace @typescript/native-preview. Comments referencing tsgo workarounds have also been updated to reference tsc. There are no review comments to address, and I have no additional feedback to provide.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ced0bbaf59
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| "semver": "^7.7.3", | ||
| "ts-node": "^11.0.0-beta.1", | ||
| "typescript": "^6.0.1-rc", | ||
| "typescript": "7.0.2", |
There was a problem hiding this comment.
Keep TypeScript API consumers on the TS6 alias
When any existing ts-node-based script runs (for example each package's check-readme calls scripts/check_readme.ts, which imports typescript and uses createProgram), Node now resolves that import to typescript@7.0.2. TypeScript 7.0 only provides the native CLI and does not ship the stable compiler API that ts-node and check_readme.ts need; the TS6 API is installed as @typescript/typescript6, but tools that import the peer name typescript will never see it. This makes docs/readme/spec-download scripts fail even though tsc itself works; alias typescript to @typescript/typescript6 and install the TS7 package under a separate alias for its tsc binary.
Useful? React with 👍 / 👎.
Summary
Migrates the toolchain from the
tsgonative-preview to the TypeScript 7.0 RC, which ships the native (Go) compiler as the standardtypescriptpackage with the standardtscbinary (no moretsgo).Changes
@typescript/native-preview+typescript@6withtypescript@7.0.2.@typescript/typescript6(exposes thetsc6binary) for side-by-side TS6 fallback/comparison during the RC period.tsgo→tscinbuild/build:watch/check-typesscripts across every package.#2212, StrictEventEmitter overload cast).Verification
pnpm check-typespasses across all 17 workspace packages (exit 0, no type errors).pnpm install --frozen-lockfilepasses — lockfile is in sync.tsgo/@typescript/native-previewreferences in the repo.tsconfig.common.jsonwas already compatible with TS7 (explicittarget: es2023,module/moduleResolution: nodenext, explicitstrictandtypes, nobaseUrl) — no config changes needed.Notes
tsc6is installed but not yet wired into any script — kept for manual TS6↔TS7 comparison compatibility issues if encountered.AI disclosure
Reviewed and committed with assistance from Claude Code.
🤖 Generated with Claude Code