Laut den Betreuern des Yarn-Projekts widerspricht die Installation von Yarn über npm den Projektzielen , kann Probleme verursachen und ist im Allgemeinen schlechter als plattformspezifische Installationsmethoden.
Vorteile der empfohlenen plattformspezifischen Installation:
Die Garn-Teams betrachten npm als unsicher und unzuverlässig. Aus dem Abschnitt "Installation über npm" auf der Seite "Installation" von Yarn :
Hinweis: Die Installation von Garn über npm wird im Allgemeinen nicht empfohlen. Die Installation von Yarn mit npm ist nicht deterministisch, das Paket ist nicht signiert und die einzige durchgeführte Integritätsprüfung ist ein grundlegender SHA1-Hash, der ein Sicherheitsrisiko bei der Installation systemweiter Apps darstellt.
Aus diesen Gründen wird dringend empfohlen, Yarn über die für Ihr Betriebssystem am besten geeignete Installationsmethode zu installieren.
Das Ausführen von Yarn, einem separaten Paketmanager-Dienstprogramm, über npm kann zu Edge-Case-Problemen führen (siehe Ausgabe 2072 ).
- Durch die Installation über einen Systempaket-Manager wird Yarn von npm entkoppelt, sodass Sie Yarn ohne npm ausführen können
- Der Systempaket-Manager wird normalerweise regelmäßig ausgeführt und hält Yarn auf dem neuesten Stand
- Die Installation von Garn über npm ist langsam
Vorteile für npm install -g yarn
:
- Schnell und einfach (
npm install -g yarn
)
- Kann in jeder npm-Umgebung durchgeführt werden (plattformunabhängig)
- Bekanntes Paradigma und Prozess für Node.js Entwickler
- Kann leicht aktualisiert werden (
npm update -g yarn
)
- Ein Garn Update - Befehl vorhanden ist (
yarn self-update
) , aber es scheint zu sein gebrochen
- Keine Abhängigkeit von Systempaketmanagern
- Kann verschiedene Versionen von Yarn für verschiedene Projekte oder verschiedene Versionen von Node.js über verwenden
nvm
Die Argumente des Systempaketmanagers für die empfohlene Installation fallen in der Regel zusammen, wenn auf Windows verwiesen wird, wo es keinen offiziellen Paketmanager gibt (es sei denn, Sie zählen Windows Update). Außerdem sind Windows-Paketmanager wie Chocolatey häufig nicht für automatische Updates konfiguriert.
Ich bin mir nicht sicher, ob ich der Entscheidung des Garn-Teams in dieser Hinsicht voll und ganz zustimme, aber sie machen einige faire Punkte. Das Yarn-Projekt ist noch jung und wenn es ein Ersatz für npm werden soll, wäre es nicht sinnvoll, npm als Hauptinstallateur zu fördern.
Unabhängig davon scheinen Installationen über npm in den meisten Fällen vorerst einwandfrei zu funktionieren.
Quellen: