Node.js 26 вышел: почему Current-релиз не надо сразу тащить в production
Node.js 26 интересен Temporal API и свежим V8, но для рабочих серверов важнее понимать разницу между Current и LTS.
Node.js 26 уже вышел как Current-релиз. Для новостей это звучит громко: новая ветка, свежий V8, Temporal API по умолчанию, обновления Undici и пачка удалений/депрекаций. Но для рабочего сервера первый вопрос не "как быстро обновиться", а "зачем именно сейчас".
Current не равен LTS
Current-ветка нужна, чтобы экосистема заранее проверяла новые возможности и ломающее поведение. Это нормальная зона для экспериментов, библиотек, pet-проектов и тестовых стендов. Но если приложение крутится на VPS, принимает пользователей и зависит от чужих npm-пакетов, LTS обычно спокойнее.
Главная ошибка — обновлять production только потому, что появилась новая major-версия. В Node.js major может принести не только фичи, но и удаления старого поведения. Иногда проблема всплывает не в коде приложения, а в маленькой зависимости, которую никто давно не обновлял.
Что можно проверить уже сейчас
- прогнать тесты на Node.js 26 в CI;
- проверить предупреждения deprecation;
- отдельно проверить работу дат, таймзон и сериализации времени;
- посмотреть, не завязан ли проект на старое поведение
Date; - обновить lock-файл в отдельной ветке.
Если проект небольшой, такой тест занимает меньше часа, зато потом миграция на будущий LTS не будет сюрпризом.
Мой вывод
Node.js 26 стоит воспринимать как ранний сигнал: пора посмотреть на совместимость и технический долг. Но переносить все серверы на Current без причины я бы не стал. Для production лучше дождаться LTS-окна или иметь очень понятный выигрыш от новой версии.
Источник: Node.js 26.0.0 release.