March 6, 2026
Strict by default, drama by design
TypeScript 6.0 RC
Last stop before the big Go rewrite—excitement, side‑eye, and hair regrowth hopes
TLDR: TypeScript 6.0 RC is the final step before a faster 7.0 built on a new Go-based compiler. The community is split: excitement over speed and stricter defaults, anxiety about breaking changes and an “not ready” API—plus surprise that the compiler’s in Go and jokes about dogs vs cats in code.
TypeScript just dropped its 6.0 Release Candidate—aka the bridge release before the big 7.0 reboot built on a new compiler written in the Go language. Translation for non‑coders: they’re swapping engines for speed and multi‑threaded power, and 6.0 is the test lap. The crowd went loud. One camp is hyped for performance gains and cleaner defaults like “strict” on by default, while another clutched pearls over what breaks next and an API that’s still “not ready.”
In the comments, the vibe swung between cheers and chaos. A sober reminder: “TypeScript does not use semantic versioning,” cue confusion about what 6 vs 7 really means. The Go rewrite shocked some (“Wait, the compiler’s in Go?”), and the roadmap nerves were real, with users who integrate TypeScript worrying about API stability while applauding the team’s track record. Meanwhile, devs celebrated stricter checks catching more bugs, even if it means writing a few extra hints, and nerded out over updates to web and time standards. The meme of the day? Dogs vs cats. One user riffed on “union types,” joking their app is stuck deciding if the animal should bark or meow. Grab popcorn: the upgrade drama is just getting started. Read the announcement on the TypeScript blog.
Key Points
- •TypeScript 6.0 Release Candidate is available via npm (typescript@rc).
- •TypeScript 6.0 is the last release on the current JavaScript-based codebase and serves as a bridge to 7.0.
- •TypeScript 7.0 will use a new Go-based compiler and language service for native performance and multi-threading.
- •Type-checking for function expressions in generic calls, especially in JSX, is stricter and may require explicit type arguments.
- •Deprecation of import assertion syntax is extended to dynamic import() with assertions, and DOM types (including Temporal) are updated to current standards.