TypeScript 7 wurde diese Woche mit einem vollständigen Rewrite in Go veröffentlicht, wodurch die Kompilierungszeit für VS Code von 17,5 Sekunden auf unter 1,3 Sekunden gesenkt und der Speicherverbrauch in großen Projekten um bis zu 26 % reduziert wurde. Der Geschwindigkeitsschub lässt das alltägliche Codieren unmittelbar erscheinen, und die Ersparnisse summieren sich über den gesamten Stack hinweg zu Stunden an Entwicklerzeit.

Warum ein Rewrite in Go wichtig ist

Microsoft hat den Compiler in Go neu geschrieben und damit die langjährige JavaScript/Node-Implementierung ersetzt. Die ursprüngliche Codebasis stieß mit wachsenden Projekten an ihre Grenzen – das Parsen und Type-Checking verlangsamte CI-Runner mit begrenzter CPU und RAM. Durch den Wechsel zu einer kompilierten Sprache mit integrierter Nebenläufigkeit (Concurrency) führt die neue Engine Parsing und Type-Checking parallel aus, was die Wartezeit auf den ersten Fehler drastisch verkürzt.

Performance-Gewinne in der Praxis

Erste Benchmarks einiger bedeutender Codebases verdeutlichen die Auswirkungen:

  • VS Code: 11,9-mal schnellere Kompilierung, 18 % geringerer Speicherverbrauch.
  • Sentry, Bluesky, Playwright, Tldraw: Beschleunigungen von 7,7- bis 8,9-fach.
  • Bluesky verzeichnet zudem einen Rückgang des Speicherverbrauchs um 26 %.

Entwickler, die mehrmals täglich „run“ oder „watch“ ausführen, bemerken ein flüssigeres Editieren und eine geringere CI-Last.

Neue Flags bieten mehr Kontrolle

Der Rewrite wird mit Kommandozeilenoptionen ausgeliefert, mit denen Teams ein Gleichgewicht zwischen Geschwindigkeit und Speicherverbrauch finden können:

  • --checkers und --builders starten Parsing- und Type-Checking-Worker parallel und nutzen so Multicore-CPUs optimal aus.
  • --singleThreaded erzwingt die Ausführung aller Aufgaben in einem einzigen Thread, was das Debugging reproduzierbar macht, falls eine Race Condition auftritt.
  • Die separate Skalierung von Type-Checking-Workern gegenüber Builder-Workern ermöglicht es CI-Pipelines, genau die Ressourcen zuzuweisen, die für jede Phase benötigt werden.
  • Der überarbeitete --watch-Modus verwendet einen auf Go basierenden Port von Parcel, wodurch das kostspielige Polling massiver node_modules-Verzeichnisse entfällt und die Erkennung von Dateiänderungen leichtgewichtig bleibt.

Wer profitiert und wer könnte zögern

Front-End-Frameworks, die stark auf TypeScript setzen – wie Next.js und Nuxt –, profitieren von schnelleren Rebuilds und kürzeren Feedback-Zyklen. IDEs wie VS Code und Cursor reagieren schneller, was Entwickler dazu ermutigt, länger im Editor zu bleiben, anstatt zu Terminal-Builds zu wechseln.

Worauf man als Nächstes achten sollte

  • Die Adoptionsraten bei großen Open-Source-Projekten und Enterprise-Monorepos.
  • Community-Feedback zur Stabilität und etwaigen versteckten Performance-Einbußen.
  • Microsoft-Updates, die Compiler-Funktionen hinzufügen, um Kompilierungszeiten weiter zu senken oder die Fehlerdiagnose zu verbessern.