Дапамажыце dev.by 🤍
Падтрымаць

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

Пакінуць каментарый
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 и абстрактной модели журналирования для упрощения интеграции с различными сборочными инструментариями;
  • Минималистичный интерфейс командной строки
Чытайце таксама
10 популярных курсов по изучению JavaScript для крутой веб-разработки
10 популярных курсов по изучению JavaScript для крутой веб-разработки
10 популярных курсов по изучению JavaScript для крутой веб-разработки
JavaScript и в 2022 остается одним из самых популярных языков программирования в мире. Мы собрали список курсов и сертификаций по Javascript от основ до необычных особенностей. В листинге как платные, так и бесплатные онлайн-курсы. Погнали за новыми знаниями!
2 каментарыя
Соцсеть на мели: Meta хочет больше платных функций в Facebook, WhatsApp и Instagram
Соцсеть на мели: Meta хочет больше платных функций в Facebook, WhatsApp и Instagram
Соцсеть на мели: Meta хочет больше платных функций в Facebook, WhatsApp и Instagram
1 каментарый
Meta полностью прекратит поддержку приложения Facebook Gaming
Meta полностью прекратит поддержку приложения Facebook Gaming
Meta полностью прекратит поддержку приложения Facebook Gaming
Цукерберг: сотрудники Facebook влияли на выдачу рекомендаций в ленте соцсети
Цукерберг: сотрудники Facebook влияли на выдачу рекомендаций в ленте соцсети
Цукерберг: сотрудники Facebook влияли на выдачу рекомендаций в ленте соцсети
1 каментарый

Хочаце паведаміць важную навіну? Пішыце ў Telegram-бот

Галоўныя падзеі і карысныя спасылкі ў нашым Telegram-канале

Абмеркаванне
Каментуйце без абмежаванняў

Рэлацыраваліся? Цяпер вы можаце каментаваць без верыфікацыі акаўнта.

Каментарыяў пакуль няма.