TypeScript 6.0 : en attendant la 7.0

Par:
francoistonic

mar, 24/03/2026 - 09:06

TypeScript 6.0 est une version d'attente pourrait-on dire. La révolution attendue sera la version 7 avec l'injection du langage Go au coeur du projet. La v6 est la dernière version majeure JavaScript avant TypeScript basé sur Go. Cette version fait le lien entre les 5.9 et la 7.0. Elle est là pour préparer la rupture à venir, sachant que les équipes affirment que la v7 est très proche d'être finalisée. 

Malgré tout, TypeScript 6 n'est pas qu'une version intermédiaire. Depuis la phase bêta, la v6 a ajusté le type-checking sur l'expression de fonctions dans les appels génériques, des syntaxes d'import assert ont été déclarées obsolètes. Et enfin, les types DOM se basent sur les derniers standard web, notamment Temporal API. 

Quelques nouveautés et évolutions de la v6 :

- moins de sensibilité au contexte pour les fonctions : le langage tente de résoudre les problèmes quand les paramètres passés n'ont pas de types explicites en sortie (fonction callIt). Des erreurs pouvaient apparaître. La v6 prend en compte la sensibilité d'une fonction au contexte. Si une fonction n'est jamais utilisée, il n'est pas considérée comme sensible. 

- subpath imports démarrent avec #/. Il s'agit d'un ajout de Node.js (subpaths imports starting with #/). Les paquets utilisent simplement le préfixe #/ pour les importations de sous-chemins sans ajout d'un segment de chemin supplémentaire

- combiner --moduleResolution bundler avec --module commonjs

- flag --stableTypeOrdering : ce flag sera très utile pour les migrations vers la future v7

- support de l'option es2025 pour target et lib : il s'agit d'une nouveauté du standard JavaScript

- nouveaux types pour Temporal. Rappelons que Temporal API est la nouvelle API pour gérer les dates et les heures !

let yesterday = Temporal.Now.instant().subtract({
    hours: 24,
});
let tomorrow = Temporal.Now.instant().add({
    hours: 24,
});
console.log(`Yesterday: ${yesterday}`);
console.log(`Tomorrow: ${tomorrow}`);

- nouveaux types pour les méthodes upsert

- ajout de dom.iterable et dom.asynciterable dans la lib dom

L'équipe précise que TypeScript conserve une stricte compatibilité avec la 5.9. Attention : la v6 introduit des casses de code. Par exemple : le type devient de plus en plus stricte, la cible es5 est dépréciée. Lisez bien la note de version. 

Note de version : https://devblogs.microsoft.com/typescript/announcing-typescript-6-0/