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[ред. | ред. код]
Plug'n'Play дозволяє користувачам запускати проекти Node без папки node_modules
, визначаючи спосіб або розташування для вирішення файлів пакетів залежностей за допомогою файлу керування Plug-n-Play. Ця функція спрямована на виправлення погано структурованої архітектури node_modules
і, як наслідок, швидшого запуску програми Node.js.
Плагіни[ред. | ред. код]
Плагіни можуть додавати нові резолвери, фетчери, зв’язувачі, команди, а також можуть реєструватися для деяких подій або бути інтегрованими один з одним. Більшість функцій Yarn реалізовано за допомогою плагінів, у тому числі yarn add
і yarn install
, які також є попередньо встановленими плагінами.
Протоколи[ред. | ред. код]
Користувачі можуть визначати, який протокол використовуватиметься для вирішення певних пакетів. Наприклад, протокол git використовується для завантаження загальнодоступного пакета зі сховища Git, а протокол patch використовується для створення виправленої копії оригінального пакета.
Робочий процес випуску[ред. | ред. код]
Release Workflow автоматично оновлює відносні пакети серед робочих областей monorepos під час оновлення кореневих пакетів.
Робочі області (Workspaces)[ред. | ред. код]
Робочі області дозволяють кільком проектам працювати разом в одному сховищі та автоматично застосовувати зміни до інших родичів, коли вихідний код змінено, дозволяючи інсталювати кілька пакетів за один прохід, виконавши команду встановлення лише один раз.
Без встановлення (Zero-Installs)[ред. | ред. код]
Zero-Installs вирішує потреби інсталяції пакунків, коли пакети потрібно інсталювати, коли коди просто завантажуються на локальний комп’ютер.
Порівняння з npm[ред. | ред. код]
- 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.