Die Frage klingt harmlos: Wie lange dauert die Umstellung auf TypeScript 7? Du siehst dir die Codebasis an, überschlägst die Dateien, nennst eine Zahl. Nur steht die Zeile, die deinen Termin verschiebt, gar nicht im Quelltext.
Die Inventur beginnt bei den Werkzeugen
TypeScript 7.0 liefert keine programmatische Compiler-API mit; sie ist für
7.1 vorgesehen — vorgesehen, nicht datiert. Alles, was den Syntaxbaum liest,
wartet noch: typbezogene Lint-Regeln und Werkzeuge für Vue, Svelte oder Astro.
Prüf einfach, ob das Werkzeug typescript als Abhängigkeit führt; --force
hilft dir nicht, die API entsteht dadurch nicht.
Diese Liste gehört an den Anfang der Inventur: Ein blockiertes Werkzeug verschiebt deine Migration, ein Codeproblem tut das nicht.
Die Zusage gilt nur unter Bedingungen
Verhaltensgleichheit ist zugesagt, aber der entscheidende Satz steht in einem
Klammerzusatz: Code, der unter 6.0 sauber übersetzt — mit eingeschaltetem
stableTypeOrdering und ohne gesetztes ignoreDeprecations —, übersetzt unter
7.0 identisch. Überspringst du die Bedingungen, hast du die Zusage nicht.
Arbeitest du sie ab, ist der Compilerwechsel danach der kleinste Schritt.
Rechne mit einem Nebeneffekt: stableTypeOrdering kostet bis zu 25 Prozent
Prüfzeit. Es ist für die Übergangszeit gedacht und fliegt danach wieder raus.
Beide Compiler dürfen gleichzeitig laufen
Der Parallelbetrieb ist offiziell vorgesehen: zwei Aliasse in der
package.json, tsc läuft nativ, deine Werkzeuge lesen weiter die alte API. So
vergleichst du beide Fassungen an derselben Codebasis, statt in einem Sprung
umzustellen. Abgenommen ist die Migration erst ohne den Alias.
Mehr dazu im Seminar
Wie eine Inventur aussieht, die den Termin trägt, zeigt das Modul Migration auf TypeScript 7 aus dem Seminar Modern TypeScript 7 — mit Video und Kapitelübersicht.