Microsoft has shipped TypeScript 7.0.2, delivering a complete native Go rewrite of the compiler that benchmarks show cuts build times by 8x to 12x on major codebases like VS Code and Sentry. The release deliberately excludes a public programmatic API to avoid breaking the ecosystem, so tooling maintainers and plugin authors will need to stick with @typescript/typescript6 until version 7.1 arrives in roughly three months. Alongside the speed gains, Microsoft removed long-deprecated configuration flags, shifted strict and noUncheckedSideEffectImports to true by default, and rebuilt the file watcher using a Go port of @parcel/watcher. Real-world adoption during the preview phase already reports massive CI savings, though embedded editor tooling like Svelte and Angular will have to wait for the upcoming API before leveraging the native compiler.
TypeScript 7.0.2 ships the first stable native rewrite of the compiler, but the ecosystem still needs to wait a month for its public API.
Microsoft published TypeScript 7.0.2 on npm and GitHub today after a month of RC testing. The release isn't a new version of the JavaScript-based compiler you've known for 15 years. It's Corsa, a complete rewrite in Go that delivers roughly 8x to 12x faster builds on large codebases. If you've ever watched type-checking crawl across a monorepo, you'll appreciate the raw speed. But there's a catch.
Keep in mind that you can't actually import TypeScript 7 programmatically just yet. Microsoft deliberately left the public API out of this release, pointing developers to @typescript/typescript6 for side-by-side use. The new typescript package just ships the tsc binary and the language server. Webpack, typescript-eslint, and basically anything that calls ts.createProgram() will need to wait until 7.1. Microsoft says the new programmatic surface should land in three to four months. It's a deliberate pacing choice, not a bug. The team spent a year porting the compiler. They're not risking breakage for a holiday launch.
The Performance Numbers
The benchmarks are, frankly, staggering. On VS Code's own codebase, TS 7 trims build time from 125.7 seconds down to 10.6 seconds. Sentry clocks a 9x jump. Bluesky and Playwright land right around 8.7x. Memory use drops across the board, too. VS Code sheds nearly a gigabyte. tldraw cuts 150 megabytes. The compiler now uses shared-memory multithreading in Go, with --checkers N letting you dial up to eight parallel type-checking workers. Crank it to eight, and VS Code hits a 16.7x speedup.
Here's where things get interesting. Microsoft's TypeScript team spent the better part of a year just porting the AST and type checker. Go doesn't come with a garbage collector that plays nicely with a compiler's memory pressure, so they had to rethink how the type checker holds references. It's the kind of plumbing work that rarely makes a changelog, but it's why the memory numbers drop so cleanly. Slack reportedly killed 40% of merge queue time with the preview. PowerBI called the editor experience "life-saving" enough to adopt it before VS Code even supported the rename feature.
The Catch: No Public API Yet
Editor integration works, though with caveats. VS Code gets a dedicated preview extension that auto-enables the new language server. WebStorm and other LSP-capable editors should pick it up automatically. But tools that embed TypeScript into their own compilers—Vue, Svelte, Astro, MDX—can't leverage 7.0 yet. They're still locked to the legacy JS compiler until the new API ships. Angular's template type-checking hits the same wall. Microsoft is coordinating directly with those maintainers. The long wait is over for the binary, at least.
If you're migrating, brace yourself for some hard errors. The target: es5, moduleResolution: node, and module: amd/umd flags are now actual build failures. Same with baseUrl, alwaysStrict: false, and asserts imports. The defaults have shifted too. strict is now true by default. So is noUncheckedSideEffectImports. module defaults to esnext, and rootDir now points to ./ instead of inheriting from your include paths. Inner source directories will need explicit configuration.
However, at the same time, the watch mode got a full rebuild on a Go port of @parcel/watcher, which finally fixes the cross-platform file-watching headaches that used to plague Windows and macOS. Template literal inference also gets a Unicode pass now, correctly treating emojis as single code points instead of splitting them into surrogate pairs. Next, the tsc binary runs via npx, and it won't have a Node dependency at runtime. Not cheap. That's after a year of development, but the math is solid.
It's a rather ambitious compiler for what it actually ships. No new language features. Just raw speed and a lot of configuration cleanup. Though the design and small runtime footprint do help it somewhat. However, at the same time, the lack of upgradability for embedded tooling hurts the initial launch. You'll want to pin your dev dependency, verify your CI runs, and wait a month for @typescript/typescript6 to fully decompose before chasing 7.1.
Head here to the GitHub download.
