Yarn: Facebook veröffentlicht Alternative zu NPM

Mit Yarn soll die Abhängigkeitsverwaltung von Javascript-Code schneller und sicherer sein als mit dem Werkzeug NPM. Die Quelle der Paketverwaltung NPM, das Registry, kann aber auch mit Yarn von Facebook genutzt werden.

Artikel veröffentlicht am ,
Yarn könnte den NPM-Client als Standardwerkzeug ablösen.
Yarn könnte den NPM-Client als Standardwerkzeug ablösen. (Bild: Yarnpkg)

Der Einsatz von Javascript-Code ist bei Facebook so groß, dass das Unternehmen beim Lösen seiner eigenen Probleme schnell an einige praktische Grenzen stößt. Das sei auch bei der Verwendung von NPM geschehen, dem kanonischen Werkzeug zum Verwalten von Node.js-Modulen. Das Team bei Facebook bemängelte die "Konsistenz, Sicherheit und Leistung" von NPM und hat deshalb mit Yarn eine "schnelle, zuverlässige und sichere" Alternative zum NPM-Client erstellt, wie das Unternehmen bekanntgibt.

Stellenmarkt
  1. Vehicle Systems Architect (f/m/d)
    Aptiv Services Deutschland GmbH, Wuppertal
  2. Team Manager (m/w/d) Embedded Security
    Elektrobit Automotive GmbH, Radolfzell
Detailsuche

Wichtig herauszustellen ist dabei, dass Yarn tatsächlich nur als Alternative für das Kommandozeilenwerkzeug NPM gedacht ist. Die von und für NPM gepflegte Datenbank der verfügbaren und nutzbaren Javascript-Module, die sogenannte Registry, soll auch mit Yarn explizit weiterverwendet werden können.

Neustart mit Hilfe von Google und anderen

Facebook habe der Ankündigung zufolge besondere Probleme beim Skalieren mit NPM gehabt. So hätte das Aktualisieren besonders großer Projekte mit vielen Abhängigkeiten wie etwa Babel teilweise einen ganzen Tag gedauert. Der Kniff, sämtliche Abhängigkeiten über das hauseigene CDN zu verteilen, habe zudem erzwungen, dass die Entwickler eine Internetverbindung benötigen, um neuen Code zu erhalten und diesen zu bauen.

Darüber hinaus forciere die Umsetzung der semantischen Versionierung in NPM oft unnötige Aktualisierungen, was wiederum hohen Zeitaufwand verursachen könnte. Facebook habe bei der Erstellung von Yarn bemerkt, dass auch andere Unternehmen wie Google, Exponent oder Tilde ähnliche Probleme und Hacks für deren Lösung eingesetzt haben. Deren Erfahrungen seien ebenso in Yarn eingeflossen.

Abhängigkeitsauflösung und Cache zur Beschleunigung

Golem Karrierewelt
  1. Advanced Python – Fortgeschrittene Programmierthemen: virtueller Drei-Tage-Workshop
    23.-25.01.2023, Virtuell
  2. Automatisierung (RPA) mit Python: virtueller Zwei-Tage-Workshop
    03./04.11.2022, Virtuell
Weitere IT-Trainings

Bei der Installation neuer Pakete löse Yarn die Abhängigkeiten zunächst auf, indem die Registry rekursiv durchlaufen werde. Das soll eventuell doppelte oder sich selbst überschreibende Installationen von Paketen, wie sie bei NPM vorkommen, verhindern. Ebenso verwende Yarn einen globalen Cache für alle bereits installierten Pakete, so dass ein Paket, das bereits installiert sei und als Abhängigkeit in einem zweiten Projekt benötigt werde, kein zweites Mal heruntergeladen werden müsse.

Die tatsächlich benötigten Pakete werden dann aus dem globalen Cache in das lokale Verzeichnis node_modules kopiert. All das soll zu vorhersagbaren Ergebnissen einer Installation führen. Ebenso sei Yarn in der Lage, Aufgaben parallelisiert abzuarbeiten und dank Mutex sollen sich mehrere laufende Yarn-Instanzen nicht gegenseitig behindern können.

Yarn kann über NPM installiert werden, Pakete für Linux-Distributionen stehen ebenso bereit. Der Code des Werkzeugs steht unter einer freizügigen Lizenz auf Github bereit. Details zu Yarn finden sich auf der Webseite des Projekts. Die Betreiber von NPM begrüßen in einem kurzen Blogeintrag die Offenlegung und Vorstellung von Yarn.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


lestard 12. Okt 2016

Das stimmt, aber dafür wird hin und wieder etwas erfunden, was wirklich cool und besser...

zZz 12. Okt 2016

Da gibt es einmal ein Thema für IT-Profis, zu dem es sogar Kommentare gibt und...

Verox 12. Okt 2016

... and shoot it.

zZz 12. Okt 2016

Gestern Nacht angetestet, gefällt mir sehr gut. Hier mal Vergleichszahlen aus dem &#8221...



Aktuell auf der Startseite von Golem.de
Google Fonts
Abmahnungen an Webseitenbetreiber mit Google-Schriftarten

Nach einer Entscheidung des Landgerichts München erhalten Webseitenbetreiber mit eingebundenen Google Fonts vermehrt Abmahnungen.

Google Fonts: Abmahnungen an Webseitenbetreiber mit Google-Schriftarten
Artikel
  1. Paw Patrol: US Space Force schickt Roboterhunde auf Patrouille
    Paw Patrol
    US Space Force schickt Roboterhunde auf Patrouille

    Die US Space Force wird einen hundeähnlichen Roboter von Ghost Robotics auf Patrouille schicken, um Personalkosten zu senken.

  2. Programmiersprache: JSON-Erfinder will Javascript in Rente schicken
    Programmiersprache
    JSON-Erfinder will Javascript in Rente schicken

    Douglas Crockford, der Erfinder des Datenformats JSON und Mitentwickler von Javascript, findet, dass die Sprache in Rente geschickt werden sollte.

  3. Windows auf dem Mac: Parallels wird merklich teurer
    Windows auf dem Mac
    Parallels wird merklich teurer

    Parallels 18 bietet eine native Unterstützung für Windows 11 und eine bessere Ressourcenzuweisung. Allerdings wird die Software teurer.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Günstig wie nie: WD SSD 1TB m. Kühlkörper (PS5) 119,90€, MSI 29,5" 200 Hz 259€, LG QNED 75" 120 Hz 1.455,89€ • MindStar (XFX RX 6950 XT 999€, Gainward RTX 3070 559€) • Gigabyte Deals • Der beste Gaming-PC für 2.000€ • Apple Week bei Media Markt • be quiet! Deals [Werbung]
    •  /