
JavaScript platforma Node.js je objavio Verzija 26, veliko izdanje, označava novi korak u evoluciji okruženja dizajniranog za pokretanje JavaScript koda izvan preglednika. Ovo je nova grana struja, koji dolazi s jasnim fokusom na modernizaciju standardnog API-ja i pripremu ekosustava za nekoliko godina podrške.
Ovo novo izdanje Čvor.js 26.0.0 Sada je dostupan za preuzimanje sa službene web stranice i namijenjen je programerima i timovima koji žele što prije započeti testiranje novih značajki. Iako se trenutno smatra aktivnom razvojnom verzijom, projekt je već definirao vremenski okvir za prelazak na dugoročnu granu podrške, što je posebno važno za tvrtke koje se oslanjaju na stabilne i predvidljive cikluse.
Kalendar izdanja Node.js-a i ciklus podrške 26
Ogranak 26 je uključen u verzije dugoročna podrškaAli to će učiniti u dvije faze: otprilike šest mjeseci funkcionirat će kao strujaS novim značajkama i prilagodbama, prijeći će na LTS status u listopadu nakon razdoblja stabilizacije koda. Nakon što prijelaz bude završen, serija 26.x održavat će se do svibnja 2029., uz sigurnosne zakrpe i ispravke grešaka.
Paralelno s timom platforme, održavaju se i druge grane s različitim datumima završetka životnog ciklusa, što pomaže u planiranju migracija u velikim projektima. Obitelj Node.js 24.x, također s proširenom podrškom, nastavit će primati ažuriranja do travnja 2028., dok je kraj grane 22.x planiran za travanj 2027. Nasuprot tome, linija LTS 20.x već je ukinuta iz održavanja, a međuverzija 25.x prestat će biti podržana početkom lipnja, što će timove potaknuti da prijeđu na novije serije.
Temporal API: novi način rada s datumima i vremenima
Najvidljivija promjena za one koji programiraju svakodnevno je zadana aktivacija Privremeni API, skup tipova i metoda koji nudi modernu alternativu veteranskom objektu DateOvaj API ima za cilj pojednostaviti upravljanje datumima i vremenima, područje koje je povijesno generiralo pogreške zbog vremenskih zona, promjena ljetnog računanja vremena i transformacija između formata.
Pomoću Temporala, vrijeme se može predstaviti na različite načine ovisno o specifičnim potrebama projekta. Na primjer, aplikacije mogu obrađivati datume i vremena bez povezivanja s određenom vremenskom zonom koristeći tipove kao što su Privremeni.ObičniDatum, Privremeno.Obično vrijeme y Privremeno.ObičniDatumVrijeme, korisno za fiksne rasporede, rezervacije ili registracije gdje je važna samo lokalna vrijednost.
Kada kontekst zahtijeva uzimanje u obzir vremenskih zona, API nudi Vremenski.ZoniraniDatumVrijemeOvo povezuje datum i vrijeme s određenom vremenskom zonom kako bi se osigurali točni izračuni prilikom putovanja između regija ili prilikom primjene pravila vremenskih zona. Osim toga, za pohranu i usporedbu apsolutnih vremena uvedeno je sljedeće: Privremeno.Trenutno, što predstavlja vremensku točku kao broj nanosekundi od 1. siječnja 1970., što je praktično za distribuirane sustave ili revizije.
Osim tipova podataka, API izravno uključuje pretvorbu, formatiranje i vremenske aritmetičke operacije, omogućujući vam dodavanje ili oduzimanje točaka, promjenu vremenskih zona i generiranje čitljivog izlaza bez oslanjanja na vanjske biblioteke. Činjenica da Privremeno je omogućeno prema zadanim postavkama Node.js 26 olakšava njegovo postupno usvajanje u projektima kojima je potrebno pouzdano upravljanje kalendarom, od financijskih aplikacija do logističkih usluga.
Ažuriranje V8 motora i nove JavaScript mogućnosti
Još jedan ključni element ovog izdanja je skok u izvršnom mehanizmu. V8 na verziju 14.6, istu liniju koja se koristi u Chromiumu 146. Ovo ažuriranje ne donosi samo poboljšanja performansi, već i dodatne jezične značajke i interne optimizacije koje utječu na vrijeme odziva aplikacije.
Među novim značajkama koje izravno koriste programerima je mogućnost kombinirati više iteratora u jedno koristeći metodu Iterator.concat()Ova mogućnost pojednostavljuje manipulaciju nizovima podataka iz različitih izvora bez potrebe za stvaranjem međustruktura, što je korisno pri obradi tokova na poslužiteljima koji obrađuju velike količine informacija.
Motor također uključuje specifikaciju uznemiriti za kolekcije Map y WeakMap U JavaScriptu, ova funkcionalnost olakšava rad s parovima ključ/vrijednost jer vam omogućuje umetanje ili ažuriranje unosa u jednoj operaciji, smanjujući količinu potrebnog koda i minimizirajući potencijalne uvjete utrke u istodobnim okruženjima.
Undici 8 i poboljšanja HTTP klijenta
Što se tiče mrežne komunikacije, Node.js 26 ažurira službeni HTTP klijent. undici do serije 8.x. Točnije, razni izvori unutar projekta ukazuju na usvajanje verzije 8.0.2, koja predstavlja korak naprijed u stabilnosti, performansama i kompatibilnosti s trenutnim potrebama web API-ja.
Ovo ažuriranje klijenta posebno je relevantno za usluge implementirane na infrastrukturi, gdje je interakcija s mikroservisima, platformama trećih strana i internim sustavima stalna. Nova grana undici uključuje poboljšanja u upravljanju trajnim vezama, ažuriranu podršku za HTTP/1.1 i HTTP/2 te optimizacije potrošnje resursa, što zajedno smanjuje latenciju i omogućuje bolje korištenje dostupnog hardvera.
Promjene u kompatibilnosti i zahtjevima za izradu
Prelazak na Node.js 26 također dolazi s prilagodbama okruženja za izgradnju i pridruženih alata. Izgradnja ove verzije iz izvornog koda zahtijeva, kao što minimalno, GCC 13.2Ovaj potez usklađuje projekt s novijim kompajlerima i osigurava dostupnost modernih optimizacija na binarnoj razini. Ova promjena može zahtijevati ažuriranja u okruženjima kontinuirane integracije ili izradu poslužitelja koji još uvijek koriste starije verzije alata.
Paralelno, nova grana prestaje podržavati Python 3.9 u svom alatnom lancu, što znači da će konfiguracije koje su ovisile o toj verziji morati migrirati na novija izdanja jezika. Ova odluka dio je šireg napora za uklanjanje naslijeđenih ovisnosti i održavanje temelja projekta na softveru koji i dalje prima sigurnosna ažuriranja.
Zastarjeli i umirovljeni API-ji u Node.js 26
Uz nove značajke, razvojni tim je uveo niz promjena kompatibilnosti koje bi trebalo pregledati prije migracije produkcijskih projekata. Jedna od istaknutih točaka je povlačenje metode http.Server.prototype.writeHeader(), tradicionalno se koristi za slanje HTTP zaglavlja s poslužitelja. Počevši od ove verzije, službena preporuka je korištenje http.Server.prototype.writeHead(), što ostaje podržana ruta.
Nadalje, ova verzija označava kraj ciklusa za DEP0182, vezano uz modul cryptokao dio rutinskog procesa čišćenja starih ili problematičnih API-ja. Zastarijevanje module.register()Ova promjena će utjecati na one koji rade s naprednijim ili prilagođenijim sustavima za učitavanje modula, što će prisiliti na pregled potencijalnih upotreba ove funkcionalnosti.
Nova grana također uklanja opciju pokretanja --experimental-transform-typesOva značajka, koja je bila dio eksperimentalnog skupa značajki, uklonjena je. Njeno uklanjanje ukazuje na to da tim preferira konsolidaciju podrške za transformacije tipova putem drugih sredstava ili u kasnijim fazama životnog ciklusa jezika i platforme, smanjujući broj eksperimentalnih zastavica.
Sveukupno, izdanje Node.js 26 predstavlja značajno ažuriranje ekosustava: jača vremenski zasnovanu osnovu modernim API-jem, ažurira V8 engine, poboljšava HTTP klijent i napreduje u čišćenju naslijeđenih sučelja. S podrškom koja se proteže do 2029. i jasno definiranim planom, nova verzija se oblikuje kao solidna opcija za one koji traže dugoročnu stabilnost bez žrtvovanja najnovijih mogućnosti platforme.