Node.js 26 prichádza s Temporal API a kľúčovými vylepšeniami platformy

  • Node.js 26 sa vydáva ako aktuálna verzia a prechod na LTS je naplánovaný na október s podporou do roku 2029.
  • Rozhranie Temporal API je predvolene aktivované, čo modernizuje spracovanie dátumov a časov v jazyku JavaScript v porovnaní s rozhraniom Date.
  • Engine V8 je aktualizovaný na verziu 14.6 a klient undici HTTP je obnovený na vetvu 8.x (8.0.2).
  • Táto verzia zavádza zmeny kompatibility: nové požiadavky na kompiláciu, zastarané funkcie a odstránenie starých API.

Node.js 26.0.0

Platforma JavaScript Node.js uvoľnil Verzia 26, hlavné vydanie, predstavuje nový krok vo vývoji prostredia určeného na spúšťanie kódu JavaScript mimo prehliadača. Toto je nová vetva prúd, ktorý sa jasne zameriava na modernizáciu štandardného API a prípravu ekosystému na niekoľkoročnú podporu.

Toto nové vydanie Node.js 26.0.0 Teraz je k dispozícii na stiahnutie z oficiálnej webovej stránky a je určená pre vývojárov a tímy, ktoré chcú čo najskôr začať testovať nové funkcie. Hoci sa v súčasnosti považuje za aktívnu vývojovú verziu, projekt už definoval časový harmonogram prechodu na dlhodobú podpornú vetvu, čo je obzvlášť dôležité pre spoločnosti, ktoré sa spoliehajú na stabilné a predvídateľné cykly.

Kalendár vydaní Node.js a cyklus podpory 26

Vetva 26 je začlenená do verzií dlhodobá podporaUrobí sa tak však v dvoch fázach: približne šesť mesiacov bude fungovať ako prúdPo prijatí nových funkcií a úprav prejde v októbri po období stabilizácie kódu na stav LTS. Po dokončení prechodu bude séria 26.x udržiavaná do mája 2029 s bezpečnostnými záplatami a opravami chýb.

Súbežne tím platformy spravuje aj ďalšie pobočky s rôznymi dátumami ukončenia životnosti, čo pomáha plánovať migrácie vo veľkých projektoch. Node.js 24.x, tiež s rozšírenou podporou, bude naďalej dostávať aktualizácie do apríla 2028, zatiaľ čo vetva 22.x by mala skončiť v apríli 2027. Naproti tomu linka LTS 20.x už bola vyradená z údržby a prechodná verzia 25.x prestane byť podporovaná začiatkom júna, čo tímy prinúti prejsť na novšie série.

Temporal API: nový spôsob práce s dátumami a časmi

Najviditeľnejšou zmenou pre tých, ktorí programujú denne, je predvolená aktivácia Dočasné API, sada typov a metód, ktorá ponúka modernú alternatívu k objektu veterána DateCieľom tohto rozhrania API je zjednodušiť správu dátumov a časov, čo je oblasť, ktorá historicky generovala chyby v dôsledku časových pásiem, zmien letného času a transformácií medzi formátmi.

Pomocou funkcie Temporal je možné čas reprezentovať rôznymi spôsobmi v závislosti od špecifických potrieb projektu. Napríklad aplikácie dokážu spracovať dátumy a časy bez toho, aby ich priraďovali ku konkrétnemu časovému pásmu, a to pomocou typov ako Dočasný.ObyčajnýDátum, Dočasný.PlanýČas y Dočasné.ObyčajnýDátumČas, užitočné pre pevné harmonogramy, rezervácie alebo registrácie, kde záleží iba na lokálnej hodnote.

Keď kontext vyžaduje zohľadnenie časových pásiem, API ponúka Časový.Zónový.Dátum.ČasToto prepojuje dátum a čas s konkrétnym časovým pásmom, aby sa zabezpečili presné výpočty pri cestovaní medzi regiónmi alebo pri uplatňovaní pravidiel časových pásiem. Okrem toho sa na ukladanie a porovnávanie absolútnych časov zavádza nasledovné: Dočasné.Okamžité, čo predstavuje časový bod ako počet nanosekúnd od 1. januára 1970, čo je praktické pre distribuované systémy alebo audity.

Okrem dátových typov API priamo zahŕňa konverziu, formátovanie a časové aritmetické operácie, čo vám umožňuje pridávať alebo odčítavať bodky, meniť časové pásma a generovať čitateľný výstup bez spoliehania sa na externé knižnice. Skutočnosť, že Dočasné nastavenie je štandardne povolené Node.js 26 uľahčuje jeho postupné zavádzanie v projektoch, ktoré vyžadujú spoľahlivú správu kalendárov, od finančných aplikácií až po logistické služby.

Aktualizácia motora V8 a nové funkcie JavaScriptu

Ďalším kľúčovým prvkom tejto verzie je skok v oblasti vykonávacieho enginu. V8 na verziu 14.6, rovnaký riadok, aký sa používa v prehliadači Chromium 146. Táto aktualizácia prináša nielen vylepšenia výkonu, ale aj ďalšie jazykové funkcie a interné optimalizácie, ktoré ovplyvňujú čas odozvy aplikácií.

Medzi nové funkcie, ktoré priamo prospievajú vývojárom, patrí možnosť kombinovať viacero iterátorov do jedného pomocou metódy Iterator.concat()Táto funkcia zjednodušuje manipuláciu s dátovými sekvenciami z rôznych zdrojov bez nutnosti vytvárať medziľahlé štruktúry, čo je užitočné pri spracovaní tokov na serveroch, ktoré spracovávajú veľké objemy informácií.

Motor tiež zahŕňa špecifikáciu upsert pre zbierky Map y WeakMap V jazyku JavaScript. Vďaka tejto funkcii je práca s pármi kľúč/hodnota jednoduchšia, pretože je možné vkladať alebo aktualizovať položky v rámci jednej operácie, čím sa znižuje množstvo potrebného kódu a minimalizujú sa potenciálne podmienky pretekania v súbežných prostrediach.

Undici 8 a vylepšenia HTTP klienta

Pokiaľ ide o sieťovú komunikáciu, Node.js 26 aktualizuje oficiálneho HTTP klienta. jedenásť k sérii 8.x. Konkrétne, rôzne zdroje v rámci projektu naznačujú prijatie verzie 8.0.2, ktorá predstavuje krok vpred v oblasti stability, výkonu a kompatibility so súčasnými potrebami webových API.

Táto aktualizácia klienta je obzvlášť relevantná pre služby nasadené v infraštruktúre, kde je interakcia s mikroslužbami, platformami tretích strán a internými systémami neustála. Nová vetva undici obsahuje vylepšenia v správe perzistentných pripojení, aktualizovanú podporu pre HTTP/1.1 a HTTP/2 a optimalizácie spotreby zdrojov, ktoré spoločne znižujú latenciu a lepšie využívajú dostupný hardvér.

Zmeny v kompatibilite a požiadavkách na zostavenie

Prechod na Node.js 26 prináša aj úpravy prostredia pre zostavovanie a súvisiacich nástrojov. Zostavenie tejto verzie zo zdrojového kódu vyžaduje, ako napríklad minimálne, GCC 13.2Tento krok zosúlaďuje projekt s novšími kompilátormi a zabezpečuje dostupnosť moderných optimalizácií na binárnej úrovni. Táto zmena môže vyžadovať aktualizácie v prostrediach kontinuálnej integrácie alebo zostavovacie servery, ktoré stále používajú staršie verzie nástrojov.

Súbežne nová vetva prestane podporovať Python 3.9 v jeho nástrojovom reťazci, čo znamená, že konfigurácie, ktoré záviseli od tejto verzie, budú musieť migrovať na novšie vydania jazyka. Toto rozhodnutie je súčasťou širšieho úsilia o odstránenie starších závislostí a zachovanie základov projektu na softvéri, ktorý naďalej dostáva bezpečnostné aktualizácie.

Zastarané verzie a ukončené API v Node.js 26

Spolu s novými funkciami vývojový tím zaviedol sériu zmien kompatibility, ktoré by sa mali skontrolovať pred migráciou produkčných projektov. Jedným z zdôraznených bodov je stiahnutie metódy http.Server.prototype.writeHeader(), tradične používaný na odosielanie HTTP hlavičiek zo servera. Počnúc touto verziou je oficiálnym odporúčaním používať http.Server.prototype.writeHead(), ktorá zostáva podporovanou trasou.

Okrem toho táto verzia označuje koniec cyklu pre DEP 0182, súvisiace s modulom cryptoako súčasť rutinného procesu čistenia starých alebo problematických API. Zastaranie module.register()Táto zmena ovplyvní tých, ktorí pracujú s pokročilejšími alebo prispôsobenými systémami na načítavanie modulov, a vynúti si prehodnotenie potenciálnych využití tejto funkcie.

Nová vetva tiež odstraňuje možnosť bootovania --experimental-transform-typesTáto funkcia, ktorá bola súčasťou experimentálnej sady funkcií, bola odstránená. Jej odstránenie naznačuje, že tím uprednostňuje konsolidáciu podpory pre transformácie typov inými prostriedkami alebo v neskorších fázach životného cyklu jazyka a platformy, čím sa zníži počet experimentálnych príznakov.

Celkovo predstavuje vydanie Node.js 26 významnú aktualizáciu ekosystému: posilňuje časovo založený základ moderným API, aktualizuje engine V8, vylepšuje HTTP klienta a dosahuje pokrok v čistení starších rozhraní. S podporou predĺženou do roku 2029 a jasne definovaným plánom sa nová verzia formuje ako solídna voľba pre tých, ktorí hľadajú dlhodobú stabilitu bez toho, aby obetovali najnovšie funkcie platformy.


Pridať ako preferovaný zdroj