Node.jsЩо нового в Node.js 26.11
Реліз Node.js 26.11 додає прапорець --process-timeout, стабілізує process.ref/unref, розширює API buffer, http та perf_hooks, а також перейменовує класи в модулі sqlite.
Реліз від 7 жовтня 2026 · оновлено 9 листопада 2026
Головне
- Новий прапорець запуску --process-timeout=N
- Стабілізація методів process.ref() та process.unref()
- Нові методи Buffer.stringLength() та isLatin1 у модулі buffer
- Функції валідації isValidHeaderName() та isValidHeaderValue() у http
- Нові методи та покращення в perf_hooks, зокрема histogram.diff() і histogram.snapshot()
- Перейменування класів DatabaseSync та StatementSync у модулі sqlite
Коротко
Випуск Node.js 26.11 приносить стабілізацію методів керування життєвим циклом процесу process.ref() та process.unref(), а також додає прапорець запуску --process-timeout=N. Оновлення розширює можливості модулів buffer, http, http2 та perf_hooks новими утилітами, перейменовує класи в sqlite і підвищує рівень підтримки Alpine Linux до tier 2. Одночасно випущений патч 26.11.1 відкотив зміни, пов'язані з редизайном збірки документації.
Нові можливості
Процес та CLI
- Прапорець
--process-timeout=N: додано параметр командного рядка для обмеження часу виконання процесу. - Стабілізація
process.ref()таprocess.unref(): API переведено в статус стабільних. - Виведення розміру та кількості в heap profile: у вихідні дані профілювання купи додано показники розміру (
size) та кількості (count). - Дозволи для вбудованих середовищ (embedders): з'явилася можливість звільняти зв'язані біндінги (linked bindings) від addon-дозволів у моделі безпеки.
Буфери та рядки
Buffer.stringLength(): додано новий метод для визначення довжини рядка.isLatin1: у модуліbufferреалізовано нову перевіркуisLatin1.
Мережеві протоколи
- Валідація HTTP-заголовків: у модуль
httpдодано допоміжні функціїisValidHeaderName()таisValidHeaderValue(). - Опція
connectionWindowSize: модульhttp2отримав параметрconnectionWindowSizeдля налаштування розміру вікна з'єднання.
Метрики та продуктивність (perf_hooks)
histogram.diff()таhistogram.snapshot(): додано методи створення знімків та обчислення різниці гістограм.- Запис нульових значень:
RecordableHistogramтепер підтримує запис значення0. - Посилення валідації CBOR: додано суворішу перевірку під час імпорту гістограм у форматі CBOR.
- Точність
monitorEventLoopDelay(): виправлено обрізання роздільної здатності таймера затримки event loop.
Робота з базою даних
- Зміни в модулі
sqlite: перейменовано класиDatabaseSyncтаStatementSync.
Документація та підтримка платформ
- Alpine Linux: статус підтримки операційної системи в документації підвищено до tier 2.
Виправлення та покращення
- Оновлення залежностей: OpenSSL оновлено до 3.5.9, npm — до 11.20.0, undici — до 8.11.2, zlib — до 1.3.2.1-motley-456ae73, LIEF — до 1.0.0, histogram — до 0.12.0, часові пояси — до 2026e, а кореневі сертифікати NSS — до версії 3.129.
- Файлова система (
fs):cpSyncзберігає часові мітки пропущених файлів; виправлено безкінечні повторні спробиmkdirіз параметромrecursiveпри помилціENOENT; виправлено аварійне завершення роботи через дескриптор із від'ємним нулем (-0); забезпечено коректне закриття файлових потоків ізfd 0. - HTTP: оптимізовано роботу сервера (усунуто перехід об'єктів відповідей у dictionary mode, кешовано зворотні виклики парсера, прибрано виклики
toLowerCaseна гарячому шляху та зменшено виділення пам'яті на запит); нормалізовано шляхи для запитівCONNECT. - FFI (
node:ffi): дозволено безпечні цілі числа для 64-бітних аргументів; вилучено перевірки дозволів ізdlcloseтаdlsym; додано перевірку діапазонів вказівників в оптимізованих викликах; усунуто помилку use-after-free уPrepareFunction. - Криптографія (
crypto): покращено продуктивність синхронної генерації випадкових чисел; виправлено помилку експорту raw-ключів при невідповідному типі; реалізовано обробку лімітів ітерацій уPBKDF2. - Відкат у версії 26.11.1: ревертовано зміни
build, doc: move to redesign, керування докладністю збіркиdoc-kitта супутнє оновлення інструментів у/tools/doc.
Огляд підготовлено автоматично за офіційними release notes за допомогою ШІ та перевірено на відповідність джерелу. Точні формулювання дивіться в оригіналі. Як ми працюємо