Aller au contenu

Le média des artisans du web mercredi 19 août 2026

Back-end

Node.js 26 active la Temporal API par défaut

Node.js 26 active Temporal par défaut, passe à V8 14.6 et ajoute crypto.randomUUIDv7(). Les apports réels pour un back-end JavaScript, et le calendrier de migration vers la LTS d'octobre.

Node.js 26 : la Temporal API par défaut, enfin la fin de l'enfer des dates en JS

Node.js 26 est disponible en version Current depuis le 5 mai 2026, avec un passage en LTS programmé pour octobre. Une ligne du journal des modifications domine toutes les autres : la Temporal API est désormais activée par défaut. Après une décennie de contournements autour de l’objet Date, l’écosystème JavaScript dispose enfin d’une gestion du temps conçue pour la production.

Temporal par défaut : le changement structurant

Manipuler des fuseaux horaires, des durées ou des dates immuables avec Date reste l’une des sources d’erreurs les plus documentées de JavaScript : mutabilité, arithmétique implicite, dépendance à la locale du serveur. Temporal répond point par point à ces défauts avec des objets immuables, des fuseaux explicites et une arithmétique de dates déterministe.

// Fuseau explicite, objet immuable, arithmétique prévisible
const maintenant = Temporal.Now.zonedDateTimeISO("Europe/Paris");
const demain = maintenant.add({ days: 1 });

L’activation par défaut supprime le drapeau expérimental qui bridait l’adoption : le code écrit aujourd’hui avec Temporal fonctionnera sans configuration particulière sur les runtimes de demain.

Les autres apports de la version

NouveautéPortée pratique
V8 14.6Méthodes upsert sur Map et WeakMap, Iterator.concat()
req.signalUn AbortSignal exposé sur http.IncomingMessage, pour annuler proprement une requête interrompue
crypto.randomUUIDv7()Identifiants ordonnés dans le temps, adaptés aux clés primaires de base de données

Ces trois entrées relèvent de la plomberie, mais elles ont un effet concret sur les dépendances : l’UUID v7 et l’AbortSignal natifs rendent inutiles plusieurs paquets npm couramment installés pour ces seuls usages.

Une version d’exécution se juge moins à ses annonces qu’au nombre de dépendances qu’elle permet de retirer.

Calendrier de migration

Node 26 porte le statut Current, et non LTS. La distinction n’est pas cosmétique : les modules natifs, les images Docker officielles et les fournisseurs d’hébergement s’alignent généralement sur les versions LTS. La pratique établie dans l’écosystème consiste à valider une version Current en intégration continue et sur les environnements non critiques, puis à basculer la production au passage en LTS.

Repère de calendrier : Node.js 26 passe en LTS en octobre 2026. Node.js 24 reste maintenu jusqu’en avril 2028, ce qui laisse une fenêtre de migration confortable.

Ce qu’il faut retenir

Node.js 26 n’est pas une version spectaculaire, mais Temporal activée par défaut clôt un chantier ouvert depuis 2017 au TC39. Pour les applications qui manipulent des créneaux, des récurrences ou des fuseaux multiples, c’est la première fois qu’une réponse native et complète existe.

Sur les serveurs que j’administre, la règle reste inchangée : Current en intégration continue et sur les projets internes dès maintenant, production à l’automne. Ce n’est pas de la prudence de principe — ce sont les modules natifs qui dictent le rythme, et ils suivent les LTS. — Simon Janvier

Pour aller plus loin

Les notes de version complètes sont publiées sur le blog officiel de Node.js.

À lire aussi sur Mail Studio

En vidéo

Partager LinkedIn Bluesky Hacker News E-mail

À lire aussi