Con Node.js 26 la Temporal API smette di essere una funzionalità sperimentale: l’interfaccia moderna per la gestione di date e fusi orari in JavaScript è ora attiva di default. Il rilascio, datato 5 maggio, segna la nuova versione major dell’ambiente di esecuzione JavaScript più usato sui server, e include anche aggiornamenti significativi al motore V8 e al client HTTP Undici.
Temporal, la fine dei guai con le date in JavaScript
Chiunque abbia scritto codice JavaScript per qualcosa di non banale conosce le difficoltà legate all’oggetto Date, l’interfaccia storica del linguaggio per la gestione di date e orari. Mesi che partono da zero, interpretazione delle stringhe poco coerente, fusi orari da gestire a mano, aritmetica sui giorni piena di insidie: per anni gli sviluppatori si sono affidati a librerie esterne come Moment.js, date-fns o Day.js per aggirare questi problemi.
// affiliato ▸ Webdock · VPS ultra-veloci scontate del 20% · Vedi i piani →
Temporal è la risposta ufficiale del comitato di standardizzazione di JavaScript. Si tratta di un’interfaccia moderna che separa concetti diversi in tipi distinti: Temporal.PlainDate per le date di calendario, Temporal.ZonedDateTime per i momenti con fuso orario, Temporal.Duration per gli intervalli di tempo, e così via. Gli oggetti sono immutabili e i fusi orari vanno dichiarati esplicitamente, scelte progettuali che riducono drasticamente le possibilità di errore.
Con Node.js 26 la funzionalità è abilitata senza bisogno di opzioni sperimentali. Per chi sviluppa applicazioni che gestiscono scadenze, calendari, registrazioni di eventi o logiche basate su date e orari, è un cambiamento sostanziale: come riporta NodeSource, molte dipendenze esterne possono ora essere rimosse a favore delle funzioni integrate.
V8 14.6 e Undici 8 sotto al cofano
Il motore JavaScript V8 sale alla versione 14.6.202.33, allineata a Chromium 134. Tra le aggiunte minori figurano Map.prototype.getOrInsert() e Iterator.concat(), due piccole utilità che semplificano operazioni comuni su mappe e iteratori.
Anche Undici, il client HTTP che alimenta la funzione fetch integrata in Node.js, fa il salto alla versione 8.0.2. Per chi sviluppa applicazioni che fanno molte richieste verso servizi esterni, vale la pena testare bene il comportamento prima di portare il codice in produzione.
Diverse interfacce obsolete vanno definitivamente in pensione
Node.js 26 chiude un ciclo di deprecazioni cominciato anni fa. Sparisce del tutto http.Server.prototype.writeHeader(), sostituito da writeHead(), così come i vecchi moduli interni _stream_readable, _stream_writable e gli altri della stessa famiglia. Viene rimossa anche l’opzione --experimental-transform-types, mentre module.register() viene segnalato come deprecato a tempo di esecuzione.
Per chi compila Node.js dai sorgenti cambiano anche i requisiti: serve GCC 13.2 e il supporto a Python 3.9 viene eliminato.
Da “Current” a LTS in ottobre
Come da tradizione, Node.js 26 resta in stato “Current” per i prossimi sei mesi. Il passaggio a versione con supporto a lungo termine è previsto per ottobre 2026. Fino a quel momento, la maggior parte degli ambienti di produzione farà bene a restare sulle versioni LTS attualmente supportate, mentre Node.js 26 è una scelta ragionevole per chi mantiene librerie o vuole anticipare i test di compatibilità.


Mastodon
Telegram
Bluesky