Date de sortie : 9 septembre 2024
Documentation officielle : Announcing TypeScript 5.6
TypeScript 5.6 attrape une catégorie de bugs courants : les conditions qui s’évaluent toujours de la même façon. Les méthodes d’itérateurs ECMAScript arrivent aussi, avec map(), filter() et take() directement sur les générateurs.
Les nouveautés principales
Vérifications nullish et truthy interdites
TypeScript détecte maintenant les expressions conditionnelles suspectes qui s’évaluent toujours au même résultat :
// Erreur ! Un regex en condition est toujours truthy
if (/regex/) {
// ...
}
// Erreur ! Problème de précédence d'opérateur
if (x === "a" || "b") {
// Vous vouliez probablement : x === "a" || x === "b"
}
Méthodes d’itérateurs ECMAScript
Support pour les méthodes map(), filter(), take() sur les générateurs et collections :
function* naturals() {
let n = 0;
while (true) yield n++;
}
// Chaîner directement sur un générateur
const result = naturals()
.filter(n => n % 2 === 0)
.take(5)
.toArray();
// [0, 2, 4, 6, 8]
Identifiants de module arbitraires
Support des identifiants de chaîne arbitraires dans les imports/exports, pour l’interopérabilité avec WebAssembly et la génération de code :
// Export avec un identifiant arbitraire
export { myFunc as "wasm:my-function" };
Nouvelles options de compilation
Plusieurs options utiles pour les gros projets :
- --noUncheckedSideEffectImports : vérifie les imports à effet de bord (import "./setup")
- --noCheck : saute la vérification de types (utile en CI pour séparer build et check)
- --stopOnBuildErrors : arrête le build incrémental en cas d’erreur
- --strictBuiltinIteratorReturn : typage strict des valeurs de retour d’itérateurs
Résolution de modules améliorée
TypeScript respecte maintenant les extensions .mts/.cts et le champ type de package.json dans node_modules, pour un meilleur alignement avec le comportement réel de Node.js.
Autres améliorations
- Diagnostics priorisés par région dans l’éditeur
- Filtrage des auto-imports par patterns d’exclusion
- Caractères de commit granulaires pour l’autocomplétion
Échanger avec un expert TypeScript
Nous revenons vers vous sous 24h.
Chez Makersquad, nous accompagnons nos clients dans le développement d’applications robustes et maintenables grâce à TypeScript. Que ce soit pour structurer un nouveau projet, migrer un codebase existant ou améliorer la qualité et la sécurité de votre application, notre équipe met son expertise TypeScript à votre service.
À retenir
TypeScript 5.6 est une release qui attrape des bugs. Les vérifications de conditions suspectes vont probablement surprendre quelques développeurs, mais c’est exactement le genre d’erreurs que le compilateur devrait signaler. Les méthodes d’itérateurs ouvrent la voie à un style plus fonctionnel.