Un nouveau projet open source nommé tsz ambitionne de proposer une alternative plus rapide au compilateur TypeScript standard (tsc). Développé en Rust, tsz se présente comme un vérificateur de types, un émetteur de code JavaScript et un service de langage, avec l'objectif de se rapprocher progressivement de la compatibilité totale avec tsc tout en offrant un gain de performance notable.

Des performances accrues démontrées par des benchmarks

Les premiers résultats de performance, présentés par les développeurs du projet, montrent des améliorations significatives. Sur un ensemble de 49 cas de test micro-benchmarks, tsz a réalisé l'ensemble des opérations en trois secondes, contre sept secondes pour un outil concurrent désigné sous le nom de tsgo. Cela représente un facteur de vitesse de 2,21 fois supérieur pour tsz. Les détails complets des benchmarks, incluant les temps par projet et des cas micro ciblés, sont disponibles sur la page dédiée du site officiel.

Un niveau de compatibilité en évolution

Le projet précise que tsz n'est pas encore un remplacement direct de tsc. Une page de compatibilité suit l'état d'avancement pour quatre grands domaines : la vérification de types, l'émission de code JavaScript, l'émission de déclarations et le comportement de l'éditeur. Les développeurs invitent la communauté à consulter ces informations pour connaître le niveau actuel de prise en charge.

Un projet open source sous licence Apache-2.0

Le code source de tsz est disponible sur GitHub sous licence Apache-2.0, et un playground en ligne permet de tester l'outil sans installation. Ce projet s'inscrit dans une tendance plus large visant à réécrire des outils de la chaîne de compilation JavaScript en langages système comme Rust, afin d'améliorer les performances. Des initiatives similaires, comme le projet Oxidizer pour le compilateur Rust, ou encore les outils basés sur Rust pour l'écosystème JavaScript (par exemple, des linters ou des bundlers), montrent un intérêt croissant pour cette approche.