Новости и события » Hi-Tech » Выпуск серверной JavaScript-платформы Node.js 10 и пакетного менеджера NPM 6

Выпуск серверной JavaScript-платформы Node.js 10 и пакетного менеджера NPM 6

Как сообщает opennet.ru Анонсирован релиз Node.js 10.0.0, платформы для выполнения высокопроизводительных сетевых приложений на языке JavaScript. Node.js 10.0 относится к веткам с длительным сроком поддержки, но данный статус будет присвоен только в октябре, после проведения стабилизации. Обновления для LTS-веток выпускаются в течение 4 лет. Поддержка прошлой LTS-ветки Node.js 8.0 продлится до 2021 года, а позапрошлой LTS-ветки 6.0 до 2020 года. Поддержка промежуточной ветки Node.js 9.0 будет прекращена в июле 2018 года.

Среди улучшений в Node.js 10.0:

  • Обновление движка V8 до версии 6.6. В новой версии отмечается оптимизация производительности асинхронных операций, функций promises/async, методов работы с массивами и строками (Array.prototype.*, String.prototype.indexOf ). Более чем в 10 раз увеличена производительность операции Arrayreduce для массивов с большим числом пустот или значений с плавающей запятой. Производительность оператора instanceof возросла в 3.6 раза. Устранены некоторые узкие места с производительностью Function.prototype.bind. WeakMap и WeakSet. Сокращено потребления памяти в движке V8;
  • Переход на использование OpenSSL 1.1.0, что позволило обеспечить поддержку потокового шифра ChaCha20 и алгоритма аутентификации сообщений (MAC) Poly1305. В дальнейшем до осенней стабилизации Node.js 10 запланирован переход на ветку OpenSSL 1.1.1 для обеспечения поддержки TLS 1.3;
  • Продолжен перевод проекта на новую систему обработки ошибок, в которой каждой проблеме присвоен свой уникальный код ошибки, что позволит организовать автоматизированный разбор проблем без привязки к тексту сообщения об ошибке и выпускать обновления текстов ошибок не дожидаясь следующего значительного релиза;
  • Стабилизирован и переведен в категорию официально поддерживаемых новый API Node.js (N-API), который предоставляет средства для создания нативных дополнений к Node.js, не привязанных к JavaScript runtime и рассматриваемых как часть Node.js. N-API позволяет без перекомпиляции использовать существующее дополнение с новыми версиями Node.js и с разными JavaScript-движками (V8 и Chakra-Core);
  • Расширены средства диагностики и отладки. Добавлены новые события трассировки для точного измерения времени выполнения кода, позволяющие выявлять узкие места и провалы в производительности в пользовательском коде. В API также добавлена возможность включения и выключения трассировки во время выполнения программы;
  • Добавлен экспериментальный API fs/promises, предоставляющий вариант функций "fs", реализованный при помощи механизма promise и демонстрирующий более высокую эффективность;
  • Обеспечена поддержка новых возможностей языка JavaScript. Function.prototype.toString теперь возвращает строку с кодом функции, полостью совпадающую с тем, как функция задана в исходных текстах (все отступы и даже комментарии сохраняются);
  • Добавлены дополнительные изменения для противодействия атакам по сторонним каналам и добавлена защита от обращения к памяти вне границ области, отведенной для WebAssembly, а также доступной через массивы и строки JavaScript.

Одновременно объявлено о выходе пакетного менеджера NPM 6, в котором отмечено существенное увеличение производительности - некоторые операции стали выполняться до 17 раз быстрее. В 2-3 раза ускорено выполнение команды "npm ci". Добавлена возможность настройки webhook (уведомления об изменении пакетов) непосредственно из CLI. Реализовано автоматическое разрешение конфликтов с файлами блокировки (lockfile) и упрощено создание повторяемых сборок.

В репозитории организована проверка пакетов на наличие известных уязвимостей - при установке пакетов, содержащих неисправленные уязвимости, пользователю теперь выводится специальное предупреждение. Для проведения анализа на наличие уязвимостей в уже установленных пакетах и связанных с ними зависимостях добавлена новая команда "npm audit". Более наглядно предоставлена информация о целостности метаданных, что упрощает выявление вредоносных модификаций или повреждений в пакетах.

Audi


Магія східної кухні: особливості та традиції

Магія східної кухні: особливості та традиції

Східна кухня відома різноманіттям ароматів та смаків. Вона заснована на глибоких традиціях, історії та має особливості приготування. Звички формувалися впродовж багатьох століть під впливом різних культур та географічних особливостей. Вони присутні в кожній...

вчера 15:32

Свежие новости Украины на сегодня и последние события в мире экономики и политики, культуры и спорта, технологий, здоровья, происшествий, авто и мото

Вверх