Node.js 26.9.0 опубликован 16 сентября 2026 года в ветке Current. Релиз добавил поддержку Web Workers, встроенный модуль node:bench, включил node:ffi по умолчанию в сборках с FFI и расширил криптографические, сетевые и файловые API. Платформа получает больше возможностей, которые раньше требовали отдельных библиотек, специальных обвязок или нестандартных решений.

Web Workers переносят знакомую браузерную модель параллельного выполнения в Node.js
Самая заметная часть Node.js 26.9.0 — поддержка Web Workers. Команда Node.js реализовала API, определённый HTML Standard, поверх существующей инфраструктуры worker_threads. В результате серверный JavaScript получает ещё один способ запускать изолированную работу в отдельном потоке с моделью, знакомой разработчикам браузерных приложений.
В официальном pull request разработчики уточняют, что реализация следует веб-стандарту настолько близко, насколько позволяет архитектура Node.js. При этом среда остаётся серверной: у неё нет document, а относительные URL на главном потоке разрешаются от текущего рабочего каталога. Для файловых workers код проходит через загрузчики CommonJS и ESM.
Функция пока относится к экспериментальным. Это особенно заметно по списку различий с браузерами: часть событий WorkerGlobalScope отсутствует, а обработка ошибок опирается на внутреннюю модель worker_threads.
Для проектов, которые одновременно работают с браузерным и серверным JavaScript, это сокращает разрыв между двумя средами. Один и тот же подход к Worker API становится применим в большем числе сценариев, хотя поведение Node.js всё ещё имеет собственные ограничения.
Официальные изменения перечислены в release notes Node.js 26.9.0.
node:ffi теперь доступен по умолчанию в сборках с поддержкой FFI
В Node.js 26.9.0 модуль node:ffi включён по умолчанию там, где сама сборка Node.js содержит поддержку FFI. FFI, или Foreign Function Interface, позволяет JavaScript-коду обращаться к функциям нативных библиотек без отдельного Node-API-аддона для каждого вызова.
Раньше модуль требовал экспериментального флага. Теперь --experimental-ffi сохранён как совместимый пустой флаг, а отключение выполняется через --no-experimental-ffi. Статус самого API при этом остаётся экспериментальным, и Node.js продолжает выводить предупреждение при первом подключении модуля.
Изменение делает FFI заметно ближе к повседневной среде выполнения. У разработчика появляется прямой путь к системным библиотекам, C API и нативным компонентам, когда такой интерфейс уже доступен в операционной системе или стороннем пакете.
Экспериментальный статус здесь имеет практическое значение: форма API и детали поведения ещё могут меняться до стабилизации.
Встроенный node:bench даёт Node.js собственный каркас для микробенчмарков
Ещё одно крупное добавление — экспериментальный модуль node:bench. Его архитектура построена по образцу node:test: в платформе появляется собственный минимальный каркас для измерения производительности и CLI-режим node --bench.
Авторы описывают node:bench как базовый набор примитивов, на котором смогут работать встроенные инструменты Node.js и более специализированные решения. В модуле уже предусмотрены bench, suite, отдельный runner и репортёры.
Параллельно perf_hooks получил API Histogram.meanCI для расчёта доверительного интервала среднего значения. Гистограммы также можно экспортировать и импортировать через CBOR — компактный бинарный формат сериализации. Вместе эти изменения делают измерения производительности более воспроизводимыми и удобными для автоматизированной обработки.
Для экосистемы Node.js здесь появляется единая точка отсчёта. Простые тесты скорости можно описывать средствами самой платформы, а внешние инструменты получают встроенные примитивы, на которых можно строить более сложные сценарии.
Crypto получил универсальный MAC API и поддержку алгоритмов OpenSSL providers
Криптографический модуль в Node.js 26.9.0 расширился новым универсальным MAC API. MAC, или код аутентификации сообщения, используется для проверки целостности данных и подтверждения того, что сообщение сформировано стороной, владеющей секретным ключом.
Новые функции createMac() и getMacs() работают поверх OpenSSL EVP_MAC. Через единый интерфейс доступны несколько классов алгоритмов, включая HMAC, CMAC, GMAC, Poly1305, SipHash и KMAC — конкретный набор зависит от доступных OpenSSL providers.
Node.js также научился обнаруживать шифры и хеши, предоставляемые подключёнными OpenSSL providers. Для окружений с собственными криптографическими провайдерами это расширяет набор алгоритмов, который рантайм способен видеть через стандартный node:crypto.
В том же релизе есть исправления для RSA, ECDH, JWK и FIPS-режима. Они дополняют новую функциональность и показывают, что криптографический слой в ветке 26.x сейчас развивается сразу по нескольким направлениям.
VFS подключился к CommonJS и ESM, а DTLS появился как экспериментальный сетевой API
Виртуальная файловая система Node.js теперь интегрирована с загрузчиками CommonJS и ESM. При активном экспериментальном VFS модули могут разрешаться и загружаться из смонтированного виртуального пространства через привычные механизмы require и import.
Интеграция охватывает чтение файлов, определение формата модулей, работу с package.json, разрешение путей и очистку кэшей после размонтирования. Тесты этой подсистемы по-прежнему запускаются с --experimental-vfs, поэтому VFS остаётся частью активно развивающегося API.
В сетевом стеке появился экспериментальный DTLS API. DTLS переносит свойства TLS на датаграммы и работает поверх UDP; такой транспорт встречается, например, в WebRTC и CoAP. Реализация Node.js опирается на встроенную поддержку DTLS в OpenSSL. Авторы прямо указывают, что текущий вариант предназначен для экспериментов и обратной связи и пока не рассматривается как готовый производственный API.
Node.js 26.9.0 одновременно расширяет несколько низкоуровневых областей: загрузку модулей, доступ к нативному коду, криптографию и защищённые UDP-соединения. Это делает ветку Current площадкой, где будущие системные возможности Node.js проходят обкатку до перехода в более стабильную фазу.
Node.js 26 остаётся Current до запланированного перехода в LTS
На 17 сентября 2026 года Node.js 26.9.0 — актуальный релиз ветки Current. По официальному графику Release Working Group, серия 26.x должна перейти в Active LTS 28 октября 2026 года.
До этой даты ветка Current продолжает получать функциональные изменения, включая экспериментальные API. Именно поэтому в 26.9.0 рядом с уже доступным по умолчанию node:ffi находятся node:bench, VFS и DTLS, которым ещё предстоит пройти дальнейшую проверку интерфейсов и совместимости.
Релиз 26.9.0 показывает направление подготовки Node.js 26 к LTS: платформа расширяет совместимость с веб-стандартами, усиливает встроенные инструменты измерения и открывает больше низкоуровневых возможностей. Вопрос к октябрю остаётся конкретным: какие из нынешних экспериментальных интерфейсов успеют закрепить API и поведение до начала LTS-фазы.