Microsoft a publié une version bêta de TypeScript 4.4, dernière version prévue de son sur-ensemble strictement typée de JavaScript. En plus des améliorations de performance, cette version s’enrichit d’une capacité d’analyse du flux de contrôle des conditions d’alias. Pour accélérer la déclaration des emits, TypeScript met désormais en cache les symboles internes s’ils sont accessibles dans différents contextes, et la manière dont les types spécifiques doivent être imprimés.

Ce processus améliore les performances générales dans un code avec des types assez complexes. TypeScript 4.4 promet aussi d'autres optimisations grâce à une normalisation et un mappage des chemins et des constructions incrémentales plus rapides. Par ailleurs, la génération de cartes de source de très gros fichiers de sortie a été optimisée. TypeScript 4.4 sera généralement disponible fin août, après la publication d'une version release candidate au début du mois.

Les fonctionnalités supplémentaires

Parmi les autres prochaines fonctionnalités dans TypeScript 4.4, on peut citer :

- Concernant l'analyse du flux de contrôle des conditions d’alias, quand TypeScript voit qu'une valeur constante est testée, il procède à une vérification supplémentaire pour voir si la valeur comprend une « garde de type ». Si la garde de type opère sur une constante, une propriété readonly, ou un paramètre unmodified, alors TypeScript est capable de réduire cette valeur de propriété. Différentes conditions de garde de type sont préservées, pas seulement les vérifications de typeof.

- Désormais, les suggestions orthographiques sont émises dans les fichiers JavaScript simples. Ces propositions de corrections peuvent fournir un indice sur une potentielle erreur de code.

- TypeScript 4.4 expérimente la prise en charge du texte incrusté par l'éditeur, lequel peut afficher des informations comme les noms de paramètres en ligne dans le code.

- Les signatures d'index pour les symboles et les modèles de chaînes de caractères sont désormais autorisées.

- Un nouveau drapeau, --useUnknownInCatchVariables, change le type par défaut des variables de la clause d'accrochage de any à unknown. Un autre nouveau drapeau, --exactOptionalPropertyTypes, spécifie que les types de propriétés optionnelles doivent être interprétés exactement comme ils sont écrits.

TypeScript 4.4 arrive après la version de production TypeScript 4.3 livrée en mai. Entre autres améliorations, cette version a permis aux développeurs de spécifier des types pour la lecture et l'écriture de propriétés.

La version bêta de TypeScript 4.4 est accessible via NuGet ou via NPM : npm install typescript@beta.