TypeScript 6.0 ships as the last JavaScript-based release
TX_019Engineering

TypeScript 6.0 ships as the last JavaScript-based release

TypeScript 6.0 landed March 23 with strict mode on by default, ESM as default module, and ES5 deprecated. Microsoft has confirmed 6.0 is the final JavaScript-based release before the Go-native 7.0 compiler ships.

TypeScript 6.0 shipped on March 23. The release is positioned as a transition release — the last one written in JavaScript before TypeScript 7.0, the Go-native rewrite [TypeScript 6.0 release notes].

── What shipped ──

The breaking changes are deliberate.

  • strict is now true by default. New projects start fully strict. Opt-out is explicit.
  • module defaults to esnext. ESM is the assumed default; CommonJS becomes the legacy path.
  • target: es5 is deprecated. ES2015 is now the lowest supported target. Projects on ES5 must migrate or use an external compiler.
  • #/-prefixed subpath imports (a recent Node.js capability) are supported under nodenext and bundler resolution.
  • --moduleResolution bundler + --module commonjs is now a valid combination.

A new --stableTypeOrdering flag lets you preview 7.0's type-ordering behaviour [Microsoft blog].

── Why it matters ──

Two things at once.

For migration: 6.0 is the bridge. The breaking changes — strict default, ES5 deprecation, ESM default — are the same direction 7.0 will continue. Upgrading to 6.0 now de-risks the 7.0 jump.

For the ecosystem: 7.0 is the bigger story. Microsoft is rebuilding the TypeScript compiler and language service in Go to take advantage of native code performance and shared-memory multi-threading. The promise is materially faster typecheck and IDE responsiveness on large codebases.

For developers, the pragmatic move is to migrate to 6.0 in the next quarter, fix the strict-default fallout, and treat the 7.0 jump as mechanical when it ships.

── Editor's take ──

The Go-rewrite is the most consequential decision in TypeScript's history. JavaScript-based tooling rewriting itself in Go (Esbuild, Bun's transpiler, Turbopack's parser) has been the dominant performance-engineering story of the last three years. Microsoft going the same way concedes the architectural argument. Node-on-Node tooling is yesterday's bet.

adjacent broadcasts
operator_channel
[ comments_offline · provider_not_configured ]
transmission_log

// newsletter_offline · provider_not_configured