Yarn (менеджер пакетов)
![]() | |
Разработчик(и) | Различный |
---|---|
Первоначальный выпуск | 18 июня 2016 г [1] |
Стабильная версия | 4.2.2 [2] ![]() |
Репозиторий | |
Написано в | TypeScript , JavaScript |
Платформа | Кросс-платформенный |
Тип | Менеджер пакетов |
Лицензия | Лицензия BSD, 2 пункта |
Веб-сайт | пряжаpkg |
Yarn — один из основных JavaScript менеджеров пакетов , [3] [4] разработан в 2016 году Себастьяном Маккензи из Meta (ранее Facebook) для Node.js. JavaScript среды выполнения Альтернатива менеджеру пакетов npm , Yarn был создан в результате сотрудничества Facebook (теперь Meta ), Expond (теперь Expo.dev), Google и Tilde (компании, стоящей за Ember.js ) для решения проблем согласованности, безопасности и производительности. с большими кодовыми базами. [5]
Функциональность [ править ]
Пользователи могут писать свои собственные плагины для Yarn.
Ограничения [ править ]
Ограничения Yarn позволяют пользователям применять правила для своих зависимостей или полей манифеста в рабочих областях с ограниченной областью действия.
Автономный кэш [ править ]
Загруженные пакеты кэшируются и сохраняются в виде одного файла.
Plug'n'Play [ править ]
Plug'n'Play позволяет пользователям запускать проекты Node без node_modules
папка, определяющая способ или местоположение для разрешения файлов пакета зависимостей с помощью файла управления Plug-n-Play. Эта функция предназначена для исправления плохо структурированного node_modules
архитектуру, что приводит к ускорению запуска приложений Node.js.
Плагины [ править ]
Плагины могут добавлять новые преобразователи, сборщики, компоновщики, команды, а также могут регистрироваться на некоторые события или интегрироваться друг с другом. Большинство функций Yarn реализованы через плагины, в том числе yarn add
и yarn install
, которые также являются предустановленными плагинами.
Протоколы [ править ]
Пользователи могут определить, какой протокол будет использоваться для разрешения определенных пакетов, например, протокол git используется для загрузки общедоступного пакета из репозитория Git, а протокол исправлений используется для создания исправленной копии исходного пакета.
Рабочий процесс выпуска [ править ]
Release Workflow автоматически обновляет относительные пакеты в рабочих областях монорепозитория при обновлении корневых пакетов.
Рабочие места [ править ]
Рабочие области позволяют нескольким проектам работать вместе в одном репозитории и автоматически применять изменения к другим родственникам при изменении исходного кода, что позволяет устанавливать несколько пакетов за один проход, запуская команду установки только один раз.
Нулевые установки [ править ]
Нулевая установка решает необходимость установки пакетов, когда пакеты необходимо установить, когда коды только что загружены на локальный компьютер.
Сравнение с npm [ править ]
- Yarn может устанавливать пакеты из локального кеша. [6]
- Yarn сильно связывает версии пакета.
- Yarn использует контрольную сумму для обеспечения целостности данных, а npm использует SHA-512 для проверки целостности данных загруженных пакетов. [7]
- Yarn устанавливает пакеты параллельно, а npm — по одному пакету за раз.
Синтаксис [ править ]
Чтобы установить пряжу:
npm install -g yarn
Чтобы установить пакет с пряжей: [8]
yarn add package-name
Чтобы установить пакет с Yarn для целей разработки и тестирования:
yarn add package-name --dev
NB: в первых версиях было:
yarn install package-name --save-dev
См. также [ править ]
Ссылки [ править ]
- ^ «Самые ранние выпуски пряжи» . Гитхаб . Проверено 18 июня 2016 г.
- ^ «Выпуск 4.2.2» . 8 мая 2024 г. Проверено 28 мая 2024 г.
- ^ «Основы управления пакетами» . МДН . 28 сентября 2022 г.
- ^ «5 лучших менеджеров пакетов JavaScript» . Dunebook.com . 05.02.2022.
- ^ «Yarn: новый менеджер пакетов для JavaScript» . Инженерное дело в Мете . 11 октября 2016 г. Проверено 22 ноября 2021 г.
- ^ «Менеджер пакетов — NPM и Yarn, объясненные примерами» . Сайтпойнт . 21 сентября 2021 г.
- ^ «Как установить и использовать менеджер пакетов Yarn для Node.js» . Цифровой Океан . 10 августа 2021 г.
- ^ «Пряжа против npm: все, что вам нужно знать» . КодСвитли . 04.02.2023.