Yarn (менеджер пакетів)
![]() | |
Тип | Менеджер пакетів |
---|---|
Розробник | Meta Platforms |
Перший випуск | 18 червня, 2016[1] |
Стабільний випуск | 3.2.0 / 21 лютого, 2022[2] |
Платформа | Cross-platform |
Операційна система | кросплатформова програма |
Мова програмування | JavaScript |
Ліцензія | BSD 2-Clause "Simplified" License |
Репозиторій | https://github.com/yarnpkg |
Вебсайт | yarnpkg.com |
Yarn — один із основних менеджерів пакетів JavaScript [3] [4], розроблений у 2016 році компанією Facebook (нині Meta) для середовища виконання Node.js JavaScript . Альтернатива менеджеру пакунків npm, Yarn була створена в результаті співпраці Facebook, Exponent (тепер Expo.dev), Google і Tilde (компанія, яка розробила Ember.js), щоб вирішити проблеми узгодженості, безпеки та продуктивності з великими кодовими базами. [5]
Користувачі можуть писати власні плагіни для Yarn.
Обмеження Yarn дозволяють користувачам застосовувати правила для своїх залежностей або полів маніфесту в робочих областях із обмеженою областю.
Завантажені пакети кешуються та зберігаються як один файл.
Plug'n'Play дозволяє користувачам запускати проекти Node без папки node_modules
, визначаючи спосіб або розташування для вирішення файлів пакетів залежностей за допомогою файлу керування Plug-n-Play. Ця функція спрямована на виправлення погано структурованої архітектури node_modules
і, як наслідок, швидшого запуску програми Node.js.
Плагіни можуть додавати нові резолвери, фетчери, зв’язувачі, команди, а також можуть реєструватися для деяких подій або бути інтегрованими один з одним. Більшість функцій Yarn реалізовано за допомогою плагінів, у тому числі yarn add
і yarn install
, які також є попередньо встановленими плагінами.
Користувачі можуть визначати, який протокол використовуватиметься для вирішення певних пакетів. Наприклад, протокол git використовується для завантаження загальнодоступного пакета зі сховища Git, а протокол patch використовується для створення виправленої копії оригінального пакета.
Release Workflow автоматично оновлює відносні пакети серед робочих областей monorepos під час оновлення кореневих пакетів.
Робочі області дозволяють кільком проектам працювати разом в одному сховищі та автоматично застосовувати зміни до інших родичів, коли вихідний код змінено, дозволяючи інсталювати кілька пакетів за один прохід, виконавши команду встановлення лише один раз.
Zero-Installs вирішує потреби інсталяції пакунків, коли пакети потрібно інсталювати, коли коди просто завантажуються на локальний комп’ютер.
- Yarn може встановлювати пакети з локального кешу. [6]
- Пряжа міцно зв’язує версії пакунку.
- Yarn використовує контрольну суму для забезпечення цілісності даних, тоді як npm використовує SHA-512 для перевірки цілісності даних завантажених пакетів. [7]
- Yarn встановлює пакунки паралельно, тоді як npm встановлює по одному пакунку.
Щоб встановити Yarn:
npm install -g yarn
Щоб встановити пакет з Yarn: [8]
yarn назва_пакета --dev
- ↑ Earliest releases of yarn. GitHub. Процитовано 18 червня 2016.
- ↑ Yarn Berry. GitHub. 21 квітня 2022.
- ↑ Package management basics. MDN. 28 вересня 2022.
- ↑ 5 best JavaScript Package Managers. Dunebook.com. 5 лютого 2022.
- ↑ Yarn: A new package manager for JavaScript. Engineering at Meta (амер.). 11 жовтня 2016. Процитовано 22 листопада 2021.
- ↑ Package Manager – NPM and Yarn Explained with Examples. Sitepoint. 21 вересня 2021.
- ↑ How To Install and Use the Yarn Package Manager for Node.js. DigitalOcean. 10 серпня 2021.
- ↑ Yarn vs npm: Everything You Need to Know. CodeSweetly. 4 лютого 2023.