TypeScript 7.0 Beta Ships, Go Compiler Compiles VS Code in 7.5 Seconds
The Go-native `tsgo` compiler is now in public beta. On the 1.5M-line VS Code codebase: 7.5s vs 77.8s for the JS compiler. Language service startup drops from 9.6s to 1.2s. Memory use cut roughly in half.
The TypeScript team released the public beta of TypeScript 7.0, confirming the
performance numbers first teased at the April 22 announcement. The Go-based
tsgo CLI is now installable as @typescript/native-preview@beta, and the
benchmarks are real.
Real-world numbers
| Metric | tsc 6.0 (JS) | tsgo 7.0 (Go) | Improvement |
|---|---|---|---|
| VS Code compilation | 77.8s | 7.5s | ~10x |
| Language service startup | 9.6s | 1.2s | ~8x |
| Memory (large projects) | ~4.5GB | ~2.2GB | ~50% less |
The compiler uses shared-memory multi-threading, Go's goroutine scheduler distributes type-checking work across all available cores. The old JavaScript compiler was single-threaded.
What you need to do
TypeScript 6.0 was the bridge release. Before upgrading to 7.0, ensure:
types: ["node"], explicit types array (6.0 changed the default to[], which breaks global type resolution)rootDir: "./src", explicit root directory (6.0 defaulted to config directory)ignoreDeprecations: "6.0", suppress warnings for features removed in 7.0: ES5 target,moduleResolution node/classic,baseUrl,outFile, AMD/UMD/SystemJS, import assertion syntaxstrict: true, now the default for new projects in 6.0+
Test before you commit
npm install -D @typescript/native-preview@beta
npx tsgo --noEmit
Run tsgo in CI alongside tsc to catch issues before the stable release.
The Go compiler is stricter about some edge cases, particularly with generic
type inference chains.
The bottom line
The 10x isn't marketing, it's reproducible on any large TypeScript codebase.
The migration path is straightforward if you've already done the TypeScript 6.0
config changes. Test with tsgo now; TypeScript 7.0 stable is expected within
months.