Пару дней назад вышла 19 версия платформы Node.js, а текущей LTS становится версия 18. А что нового в 19-й версии?

Новый параметр --watch

Добавили новый параметр --watch (пока экспериментально). Пример: node --watch foo.js. Запуск сценария с параметром --watch обеспечит автоматический перезапуск при внесении изменений в код. Это удобно на этапе разработки и отладки. Похожую функциональность предоставляет пакет nodemon. Протестировать параметр --watch можно не только в 19.0.0, но и в самой свежей 18.11.0.

KeepAlive по умолчанию для HTTP (S)/1.1

Начиная с 19-й версии keepAlive включён по умолчанию. Таким образом, любое исходящее HTTP-соединение будет использовать HTTP 1.1 c заголовком Keep-Alive. Таймаут для закрытия соединения по умолчанию установлен в 5 секунд. Включение keep-alive может улучшить пропускную способность за счёт переиспользования соединений для следующих запросов.

Стабильное WebCrypto API

WebCrypto API стало стабильным (кроме алгоритмов: Ed25519, Ed448, X25519, and X448). Чтобы воспользоваться WebCrypto API подключите модуль globalThis.crypto или require('node:crypto').webcrypto. Документация к модулю и спецификация.

Удалён параметр --experimental-specifier-resolution

Аналогичная функциональность достигается за счёт использования пользовательских загрузчиков.

Поддержка DTrace/SystemTap/ETW

Поддержка DTrace/SystemTap/ETW удалена в 19.0.0. Основная причина: отсутствие необходимых ресурсов команды разработки Node.js. Детали и обсуждения в ишье.

V8 обновлён до 10.7

В 19-ю версию завезли обновлённый V8. В этой версии движка добавлена поддержка обновлённого Intl.NumberFormat (V3). Подробней про Intl.NumberFormat V3 можно почитать здесь.

Полный чейнджлог.

Телеграм автора

Ещё о Node.js