TypeScript 5.9 lance l’évaluation différée des modules ECMAScript

La dernière version de TypeScript propose plusieurs évolutions. Parmi elles, il y a l’évaluation différée des modules et des info-bulles extensibles.

Annoncée le 25 juillet, la version candidate (RC) de TypeScript 5.9 arrive après la bêta livrée le 8 juillet. La mise à jour introduit le support de l’évaluation différée des modules ECMAScript ainsi qu’un aperçu des info-bulles extensibles de façon à pouvoir afficher davantage de détails sur le type des variables. Parmi d’autres corrections signalées, cette itération restaure également AbortSignal.abort() dans la bibliothèque DOM. Les utilisateurs actuels de TypeScript peuvent passer à TypeScript 5.9 en exécutant la commande NPM npm install -D typescript@rc

Pour le support de l’évaluation différée des modules ECMAScript, TypeScript 5.9 utilise la récente syntaxe import defer. La fonctionnalité propose aux développeurs d’importer un module sans exécuter immédiatement le module et ses dépendances., mais aussi de mieux contrôler le moment où le travail et les effets secondaires se produisent, selon Microsoft. L’avantage majeur de la syntaxe import defer, c’est que le module ne sera évalué que lors de sa première utilisation. Cette capacité est considérée comme particulièrement utile pour le chargement conditionnel de modules dont l’initialisation est coûteuse ou spécifique à une plate-forme. Elle peut par ailleurs améliorer les performances de démarrage en reportant l’évaluation des modules pour les fonctionnalités de l’application jusqu’à ce qu’ils soient réellement nécessaires. 

Des info-bulles extensibles

De son côté, la fonctionnalité d’info-bulles extensibles, pour l’instant en mode preview, offre quant à elle un « survol extensible » ou « quick info verbosity ». Désormais, les développeurs qui utilisent un éditeur comme Visual Studio Code verront apparaître des boutons + et – à gauche de ces info-bulles. Comme l’explique Microsoft, en cliquant sur le bouton +, le développeur pourra voir plus de détail sur les types, et en cliquant sur le bouton –, il pourra revenir à la vue précédente. 

 Dans TypeScript 5.9, le serveur de langage prend également en charge une durée d’affichage configurable, que l’on peut définir dans VS Code via le paramètre js/ts.hover.maximumLength. Cette fonction résout une situation dans laquelle les info-bulles sont si longues que TypeScript les tronque pour les rendre plus lisibles. 

Autres fonctionnalités de cette version : 

-TypeScript 5.9 peut mettre en cache de nombreuses instanciations intermédiaires lorsque le travail a déjà commencé sur une instanciation de type spécifique, évitant ainsi un travail et des allocations inutiles. 

-La prise en charge de –module node20 offre aux développeurs un paramètre pour modéliser Node.js 20. « Spécifier –module node20 implique –target es2023, tandis que –module nodenext implique –target esnext», a précisé Microsoft. 

-Une commande tsc –init mise à jour et minimale permet d’obtenir un fichier tsconfig.json plus léger, qui omet désormais les paramètres commentés et leurs descriptions. 

-La version bêta de TypeScript 5.9 est arrivée près de deux mois après la sortie de TypeScript Native Previews, qui propose des versions préliminaires d’un compilateur TypeScript natif à venir, basé sur le langage Go. L’objectif est d’accélérer TypeScript et de réduire les temps de compilation et l’utilisation de la mémoire. Selon les prévisions, ce projet aboutira dans une future version TypeScript 7. 

chevron_left
chevron_right