Yarn
Repozitář https://github.com/yarnpkg | |
Vývojář | |
---|---|
První vydání | 18. červen 2016 |
Aktuální verze | 3.2.0 (21. únor 2022) |
Platforma | víceplatformní |
Vyvíjeno v | JavaScript |
Typ softwaru | Správce balíčků |
Licence | 2-bodová BSD licence |
Web | https://yarnpkg.com/ |
Některá data mohou pocházet z datové položky. |
Yarn je balíčkovací systém vyvinutý v roce 2016 společností Facebook pro běhové prostředí programovacího jazyka JavaScript Node.js jako alternativa k npm. Mezi přednosti tohoto balíčkovacího systému patří rychlost, konzistence, stabilita, a bezpečnost. Tento nástroj byl vyvinut společným úsilím společností Facebook (nyní Meta), Exponent, a Google a Tilde s cílem vyřešit potíže s konzistencí, bezpečností a výkonem u velkých databázích kódu poté, co se s těmito problémy setkali vývojáři Facebooku[1].
Vlastnosti
Yarn nabízí funkci plug-in, která rozšiřuje základní funkce a umožňuje vytvářet lepší a propracovanější pracovní postupy.
Nástroj Yarn obsahuje pluginy, které jsou k dispozici ve výchozím nastavení. Uživatelé si také mohou vytvářet vlastní pluginy.
Constrains
Yarn obsahuje funkci Constrains[pozn. 1], která umožňuje automaticky nastavit pravidla pro balíčky závislostí nebo manifest nastavení projektu, nastavená pravidla se poté projeví v rámci celých pracovních prostorů. Tato funkce je dostupná pouze při instalaci nástroje Yarn Berry, dá se zpřístupnit spuštěním příkazu yarn plugin import constraints
Offline vyrovnávací paměť
Tato funkce umožňuje nástroji Yarn ukládat dříve stažené balíčky závislostí a urychlit další stahování stejných balíčků závislostí, a je důležitou součástí funkce Zero-Installs. Také neukládá pro každý balíček více než jeden soubor, což umožňuje snadné uložení v repozitáři.
Plug'n'Play
Funkce Plug'n'Play umožňuje spouštět projekty vyžadující technologii Node bez složky node_modules
Tato funkce definuje vhodný způsob umístění balíčků závislostí pomocí řídicího souboru Plug-n-Play, což způsobí rychlejší spouštění aplikací vyžadující Node.js. Cílem této funkce je opravit špatně uspořádanou architekturu node_modules
Pluginy
Pluginy jsou doplňky umožňující uživatelům rozšířit funkce nástroje Yarn o nové resolvery, fetchery, linkery a příkazy. Mohou se také registrovat ke konkrétním událostem nebo se vzájemně ovlivňovat. Většina podprogramů Yarnu je implementována prostřednictvím pluginů, včetně yarn add
a yarn install
Protokoly
Funkce Protokoly umožňuje uživatelům určit, který protokol se použije k získání provázaných balíčků (závislostí). Například protokol git lze použít ke stažení veřejně přístupného balíčku z gitového repozitáře, protokol patch[pozn. 2] se používá k vytvoření opravené kopie původního balíčku
Release Workflow
Funkce Release Workflow při aktualizaci kořenového balíčku automaticky aktualizuje i navazující závislosti mezi pracovními prostory monorepos. Tato funkce je dostupná pouze při instalaci nástroje Yarn Berry, dá se zpřístupnit spuštěním příkazu yarn plugin import version
Workspaces
Funkce Workspaces[pozn. 3] umožňuje spuštění více projektů v jednom repozitáři a při úpravě zdrojového kódu automaticky použít udělané změny na další navázané balíčky. Tato funkce umožňuje nainstalovat více balíčků spuštěním příkazu yarn install
pouze jednou, všechny balíčky zadané v tomto příkazu se nainstalují společně.
Zero-Installs
Funkce Zero-Installs usnadňuje používání softwarových balíčků při spouštění kódu staženého z repozitáře.
Výhody
- Nástroj Yarn umožňuje instalovat balíčky z místní vyrovnávací paměti
- Yarn pevně váže verze balíčků
- Yarn umožňuje instalaci více balíčků najednou (souběžná instalace).
- Komunita uživatelů kolem nástroje Yarn je aktivní a oblíbená[2]
- Yarn používá k zajištění integrity dat kontrolní součet, zatímco nástroj npm používá ke kontrole integrity dat stažených balíčků algoritmus SHA-512.
- Yarn instaluje balíčky souběžně, zatímco npm jednotlivě. Nástroj npm je tak v některých případech pomalejší než Yarn.[3]
Zveřejnění balíčků
Vývojáři mohou sdílet své vlastní balíčky s ostatními vývojáři tak, že tyto balíčky zveřejní v registru npm, který slouží ke globální distribuci doplňkových balíčků.[4] Ke zveřejňování balíčků v registru npm je potřebná registrace.
Pro zveřejňování balíčků z příkazového řádku lze využít příkaz:
yarn login
Napsaný a otestovaný kód balíčku lze poté zapsat do registru npm.
Softwarový balíček lze zveřejnit pomocí příkazu:
yarn publish
Vytvoření repozitáře pro komponenty není povinné.[5]
Poznámky
Reference
V tomto článku byl použit překlad textu z článku Yarn (správca balíkov) na slovenské Wikipedii.
- ↑ Yarn: A new package manager for JavaScript [online]. Engineering at Meta [cit. 2022-05-24]. Dostupné online.
- ↑ Yarn vs NPM: Why and how to migrate from NPM to Yarn [online]. [cit. 2022-05-24]. Dostupné online.
- ↑ Choosing Between NPM and Yarn [online]. [cit. 2022-05-24]. Dostupné online.
- ↑ Documentation - Publishing a Package [online]. yarnpkg [cit. 2022-05-24]. Dostupné online.
- ↑ Publish React components as an npm package [online]. [cit. 2022-05-24]. Dostupné online.
Média použitá na této stránce
Autor: yarnpkg, Licence: CC BY 4.0
A full version of the logo used by Yarn package manager which contains a stylized emblem of a kitten