TypeScript 5.7 veröffentlicht: Was hat sich geändert und warum ist das wichtig
Das Microsoft-Team hat offiziell TypeScript 5.7 vorgestellt – ein weiteres großes Update der beliebten Programmiersprache mit Typisierung. Die neue Version enthält Dutzende von Fehlerbehebungen, Optimierungen und lang erwartete Funktionen, die die Entwicklung vereinfachen und den Code noch sicherer machen. Lassen Sie uns die wichtigsten Änderungen durchgehen.
Verbesserte Prüfung von Verzweigungen mit never
Eine der wichtigsten Neuerungen ist eine intelligentere Analyse unerreichbarer Verzweigungen. Bisher hat TypeScript nicht immer korrekt erkannt, dass Code nach dem Aufruf einer Funktion mit dem Rückgabetyp never nicht ausgeführt wird. Jetzt verfolgt der Compiler solche Fälle genauer, was die Anzahl falscher Fehler reduziert und das Schreiben saubererer Konstrukte ermöglicht:
- Falsche Warnungen über „unerreichbaren Code“ werden vermieden.
- Die Arbeit mit Ausnahmen und Endlosschleifen wurde verbessert.
- Korrekteres Verhalten bei Verwendung von
assertNever.
Neues Compilierungsziel: --target ESNext
Die Unterstützung für das Flag --target ESNext wurde hinzugefügt. Jetzt können Sie Code für die neueste Version von ECMAScript kompilieren, ohne eine bestimmte Nummer angeben zu müssen (z. B. ES2023). Dies ist besonders nützlich in Projekten, bei denen die Kompatibilität mit den neuesten JavaScript-Engine-Funktionen wichtig ist. Es ist geplant, dass ESNext mit jeder neuen TypeScript-Version automatisch aktualisiert wird.
Hilfstypen: Verbesserungen und neue Funktionen
In TypeScript 5.7 wurden die integrierten Hilfsfunktionen für die Arbeit mit Typen erweitert:
- NoInfer – ein neuer Alias, der TypeScript verbietet, den Typ automatisch aus dem übergebenen Argument abzuleiten. Hilft, unerwartete Verengungen bei Überladungen zu vermeiden.
- Die Arbeit von
OmitundPickmit bedingten Typen und Mapping wurde verbessert. - Eine strengere Prüfung für
readonly-Arrays im Kontext des Spread-Operators wurde hinzugefügt.
Optimierung der Compiler-Leistung
Die Entwickler haben ernsthafte Arbeit an der Geschwindigkeit der inkrementellen Kompilierung geleistet. Laut Teamangaben hat sich die Build-Zeit in großen Monorepos (z. B. mit Tausenden von Dateien) um 10–15 % verkürzt. Dies wurde ermöglicht durch:
- Caching der Typprüfungsergebnisse für unveränderte Module.
- Verbesserten Algorithmus zur Pfadauflösung (module resolution).
- Optimierung der Arbeit mit bedingten Typen.
Vereinfachung der Arbeit mit JSDoc und Editor-Updates
TypeScript 5.7 versteht JSDoc-Annotationen besser – jetzt werden komplexere Muster und Union-Typen unterstützt. In Editoren (VS Code, WebStorm) wurde die Autovervollständigung für Konfigurationsdateien tsconfig.json verbessert: Die Vorschläge sind genauer und die Beschreibung jedes Feldes detaillierter.
Weitere Korrekturen und Fazit
Die Version enthält auch Korrekturen für Dutzende von Fehlern im Zusammenhang mit Dekorateuren, Modulen und Typüberschneidungen. Das Update ist über npm verfügbar:
npm install -D typescript@5.7TypeScript 5.7 ist eine ausgewogene Version, die die Entwicklung komfortabler macht, ohne die Abwärtskompatibilität radikal zu brechen. Wenn Sie strenge Typisierung in Ihren Projekten verwenden, empfehlen wir ein baldiges Update.
Bleiben Sie auf dem Laufenden mit den Neuigkeiten auf PythonLib – wir machen weiter