Вышла Node.js 25

В середине октября 2025 года состоялся релиз JavaScript‑платформы Node.js 25. Платформа Node.js может быть использована как для серверного сопровождения работы веб‑приложений, так и для создания обычных клиентских и серверных сетевых программ. Предыдущий мажорный выпуск проекта Node.js 24.0 с длительным сроком поддержки (LTS) вышел в мае 2025 года. Релиз Node.js 23 случился в октябре 2024 года. В апреле 2024 года вышла Node.js 22.

Проект Node.js 25.0 отнесён к промежуточным веткам, сопровождение которых осуществляется в течение 7 месяцев (до июня 2026 года). Поддержка Node.js 24.x будет осуществляться до 30 апреля 2028 года. Сопровождение LTS‑ветки Node.js 22.x продлится до апреля 2027 года, а LTS‑ветки 20.x — до апреля 2026 года. Сопровождение LTS‑ветки 18.x прекращено 30 апреля 2025 года. Поддержка промежуточной ветки Node.js 23.x прекращена 1 июня 2025 года.

Для расширения функциональности приложений для Node.js подготовлена коллекция модулей, в которой можно найти модули с реализацией серверов и клиентов HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, модули для интеграции с различными web‑фреймворками, обработчики WebSocket и Ajax, коннекторы к СУБД (MySQL, PostgreSQL, SQLite, MongoDB), шаблонизаторы, CSS‑движки, реализации криптоалгоритмов и систем авторизации (OAuth), XML‑парсеры.

По информации OpenNET, основные улучшения и доработки в Node.js 25.0:

движок V8 обновлён до версии 14.1, применяемой в Chromium 141. Из улучшений по сравнению с прошлым выпуском Node.js отмечено значительной повышение производительности метода JSON.stringify, оптимизация WebAssembly и JIT, реализация методов для преобразования между Uint8Array и данными в формате base64 или шестнадцатеричным представлением;

в механизм Permission Model, позволяющий ограничить доступ к определённым ресурсам в процессе исполнения, добавлена опция «—allow-net» для обеспечения сетевого доступа (если не указана опция «—allow-net», запуск Node.js в режиме «—permission» будет выводить ошибку ERR_ACCESS_DENIED при попытке выполнения сетевых операций);

включён по умолчанию совместимый с браузерами API Web Storage, предназначенный для постоянного (класс localStorage) или временного (класс sessionStorage) хранения данных в формате ключ/значение. Убрана метка экспериментальной разработки с API Web Storage;

в категорию глобально доступных (можно использовать без явного импорта) переведён класс ErrorEvent, предоставляющий совместимый с браузерами интерфейс для обработки событий с информацией об ошибках;

для WebAssembly включена поддержка API JSPI (JavaScript Promise Integration), позволяющего обращаться к асинхронным Web API из последовательно выполняемого кода, скомпилированного в WebAssembly;

добавлена опция «NODE_COMPILE_CACHE_RELATIVE_PATH» для переносимой работы с кэшем скомпилированных объектов. В данном режиме хэши для идентификации объектов вычисляются с использованием относительных путей к файлам, что позволяет перемещать и встраивать содержимое каталога с кодом вместе с кэшем;

добавлена возможность профилирования нагрузки на CPU;

пакетный менеджер NPM обновлён до версии 11.6.2;

добавлена поддержка Python 3.14;

в качестве минимально поддерживаемых версий заявлены Clang 19 и Xcode 16.4;

прекращена поддержка объекта SlowBuffer, ранее объявленного устаревшим из-за потенциальных проблем с безопасностью. Вместо SlowBuffer следует использовать метод Buffer.allocUnsafeSlow().

Источник: habr.com

0 0 голоса
Рейтинг новости
1
0
Подписаться
Уведомить о
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии