Состоялся релиз Node.js 26.0.0, платформы для выполнения сетевых приложений на языке JavaScript. Node.js 26.0 отнесён к веткам с длительным сроком поддержки, но данный статус будет присвоен только в октябре, после проведения стабилизации. Поддержка Node.js 26.x будет осуществляться до мая 2029 года. Сопровождение прошлой LTS-ветки Node.js 24.x будет осуществляться до 30 апреля 2028 года, а позапрошлой 22.x — до 30 апреля 2027 года. Сопровождение LTS-ветки 20.x прекращено 30 апреля 2026 года, а промежуточной ветки Node.js 25.x будет прекращено 1 июня 2026 года.
Haaptverbesserungen:
- Включён по умолчанию API Temporal, предлагающий альтернативный набор методов для работы с датами и временем. API позволяет манипулировать датами с учётом и без учёта часовых поясов, конвертировать время, форматировать вывод и выполнять арифметические операции со временем. Время может задаваться в независимом от часового пояса представлении (Temporal.PlainDate, Temporal.PlainTime, Temporal.PlainDateTime), с привязкой к часовому поясу (Temporal.ZonedDateTime) и в эпохальном представлении (Temporal.Instant — число наносекунд с 1 января 1970 года).
- Движок V8 обновлён до версии 14.6, применяемой в Chromium 146. Из улучшений по сравнению с прошлым выпуском Node.js отмечена возможность объединять несколько итераторов в один с помощью метода Iterator.concat(), а также реализация спецификации «upsert» для упрощения работы с коллекциями пар ключ/значение в JavaScript-объектах Map и WeakMap.
- HTTP-клиент undici обновлён до ветки 8.x.
- Удалён метод http.Server.prototype.writeHeader(), вместо которого следует использовать http.Server.prototype.writeHead().
D'Node.js Plattform kann souwuel fir Serverhaltung vu Webapplikatiounen benotzt ginn a fir regelméisseg Client- a Servernetzprogrammer ze kreéieren. Fir d'Funktionalitéit vun Uwendungen fir Node.js auszebauen, ass eng grouss Sammlung vu Moduler virbereet ginn, an deenen Dir Moduler mat der Ëmsetzung vun HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 Server a Clienten, Moduler fir Integratioun fannt mat verschiddene Webframeworks, WebSocket an Ajax Handler, DBMS Connectoren (MySQL, PostgreSQL, SQLite, MongoDB), Templatemotoren, CSS Motoren, Implementatioune vu Kryptoalgorithmen an Autorisatiounssystemer (OAuth), XML Parser.
Fir eng grouss Zuel vu gläichzäitege Ufroen ze handhaben, benotzt Node.js en asynchrone Code-Ausféierungsmodell baséiert op net-blockéierender Eventbehandlung an der Definitioun vu Callback-Handler. Ënnerstëtzte Methode fir d'Multiplexing vu Verbindungen enthalen epoll, kqueue, /dev/poll a select. Fir Verbindungen ze multiplexen, gëtt d'libuv-Bibliothéik benotzt, déi e Superset vu libev op Unix-Systemer an IOCP op Windows ass. D'libeio-Bibliothéik gëtt benotzt fir en Thread-Pool ze erstellen, an c-ares ass integréiert fir DNS-Ufroen am net-blockéierende Modus duerchzeféieren. All Blocking-Systemuriff ginn am Thread-Pool ausgefouert an dann, wéi Signalhandler, ginn d'Resultat vun hirer Aarbecht duerch eng onbenannt Pipe zréck.
Выполнение JavaScript-кода обеспечивается через задействование разработанного компанией Google движка V8. По своей сути Node.js похож на фреймворки Perl AnyEvent, Ruby Event Machine, Python asyncio и реализацию событий в Tcl, но цикл обработки событий (event loop) в Node.js скрыт от разработчика и напоминает обработку событий в web-приложении, работающем в браузере.
Source: opennet.ru
