17% скидка на размещение рекламы на площадках devby — до 20 ноября. Клац!
Support us

Facebook запустил пакетный менеджер для JavaScript

21 комментарий
Facebook запустил пакетный менеджер для JavaScript

Компания Facebook представила новый пакетный менеджер Yarn, ориентированный на управление зависимостями в проектах на языке JavaScript. Yarn разработан совместно с инженерами из компаний Exponent, Google и Tilde, и вобрал в себя опыт и лучшие идеи менеджеров зависимостей Bundler, Cargo и npm, пишет OpenNews.

Читать далее

Иллюстрация: Facebook

Исходный код распространяются под лицензией BSD. Сборки подготовлены для macOS, Windows и Linux.

Yarn позиционируется как замена npm, обеспечивающая более высокий уровень производительности, надёжности и безопасности. Основными причинами создания нового пакетного менеджера стала невозможность избавления npm от ряда проблем без его кардинальной переработки. В частности, речь идёт о медленной работе и архитектурных проблемах с безопасностью, связанных с автоматическим выполнением кода из пакетов.

Иллюстрация: Facebook

Для достижения высокой производительности в Yarn применена техника кэширования всех загруженных пакетов. Для ускорения также применяется распараллеливание операций, что позволяет существенно сократить время установки пакетов. Надёжность обеспечивает применение файлов-блокировок. За поддержание безопасности в Yarn отвечает проверка целостности каждого установленного пакета по контрольным суммам.

Основные возможности:

  • Режим работы в offline: если пакет устанавливался ранее, то его повторная установка может быть осуществлена без наличия сетевого соединения;
  • Идентичность зависимостей: на любых системах, независимо от порядка установки, будет установлен точно такой же набор зависимостей;
  • Оптимизация сетевого взаимодействия: применяются эффективные алгоритмы группировки пакетов в очередь и обеспечения максимальной пропускной способности при загрузке данных;
  • Стойкость к проблемам в сети: сбой выполнения одного запроса не приводит к прерыванию установки, в случае проблем запрос будет повторён;
  • Возможность комбинирования реестров: можно устанавливать любые пакеты из репозиториев npm и Bower;
  • Плоский режим: для избежания появления дубликатов в Yarn предусмотрен анализ заменяемости версий зависимостей - при несовпадении версии, определяется возможность использования уже установленной версии;
  • Возможность создания фильтров лицензий, допускающих для установки только модули с заданными лицензиями;
  • Наличие стабильного JavaScript API и абстрактной модели журналирования для упрощения интеграции с различными сборочными инструментариями;
  • Минималистичный интерфейс командной строки
Читайте также
Reuters: Meta зарабатывает до 10% дохода на рекламе мошенников
Reuters: Meta зарабатывает до 10% дохода на рекламе мошенников
Reuters: Meta зарабатывает до 10% дохода на рекламе мошенников
5 комментариев
В России русифицировали JavaScript
В России русифицировали JavaScript
В России русифицировали JavaScript
7 комментариев
В США Марк Цукерберг подал в суд на Марка Цукерберга
В США Марк Цукерберг подал в суд на Марка Цукерберга
В США Марк Цукерберг подал в суд на Марка Цукерберга
1 комментарий
«Кремниевая долина превратилась в маскулинное стадо» — бывший пиарщик Meta
«Кремниевая долина превратилась в маскулинное стадо» — бывший пиарщик Meta
«Кремниевая долина превратилась в маскулинное стадо» — бывший пиарщик Meta
1 комментарий

Хотите сообщить важную новость? Пишите в Telegram-бот

Главные события и полезные ссылки в нашем Telegram-канале

Обсуждение
Комментируйте без ограничений

Релоцировались? Теперь вы можете комментировать без верификации аккаунта.

Комментариев пока нет.