npm erreicht den Meilenstein von 1 Million Paketen! Was können wir daraus lernen?
4. Juni 2019
0 Min. Lesezeit
Der 4. Juni ist ein historisches Datum. Nicht nur hat unser eigener Liran Tal an diesem Tag Geburtstag (Mazal Tov, Liran!), sondern es wurde auch das millionste Paket in die npm-Registry aufgenommen. npm ist ein Paketmanager für JavaScript-Pakete. Das Herzstück von npm ist die öffentliche Registry, in der JavaScript-Pakete bereitgestellt werden, auf die der npm-Client zugreifen kann, um JavaScript-Anwendungen zu erstellen.

Wenn Sie npm verwenden und erfahren möchten, wie Sie es sicherer nutzen können, lesen Sie unbedingt unseren npm-Sicherheits-Spickzettel mit zehn bewährten Methoden für die sichere Nutzung von npm.
Eine kurze Geschichte von npm – einschließlich Sicherheitsvorfällen
Januar 2010: npm wurde von Isaac Z. Schlueter entwickelt und in JavaScript geschrieben.
März 2016: Das beliebte JavaScript-Paket left-pad wurde aufgrund eines Namensstreits aus dem npm-Repository entfernt. Nachdem dies in der JavaScript-Welt für große Unruhe gesorgt hatte, wurde die Richtlinie zur Entfernung von Paketen verschärft.
Juli 2018: Eine schädliche Version des Pakets eslint-scope wurde veröffentlicht und legte die npm-Zugangsdaten der Nutzer gegenüber dem Angreifer offen.
November 2018: Das schädliche Paket flatmap-stream wurde auf npm veröffentlicht und als Abhängigkeit zum beliebten Paket event-stream hinzugefügt. Das Paket zielte auf Copay, die Bitcoin-Wallet, ab.
4. Juni 2019: npm nimmt das millionste Paket auf.
Die zehn beliebtesten npm-Pakete
Auf der npm-Website sind die zehn beliebtesten Pakete aufgeführt. Nachfolgend finden Sie diese mit Informationen zu Schwachstellen. Interessanterweise gab es beim Paket request 17 Typosquatting-Versuche.
Paket | Schwachstellen |
|---|---|
3 Schwachstellen (1 davon mit hohem Schweregrad) | |
1 Schwachstelle (17 Typosquatting-Versuche) | |
0 Schwachstellen (1 Typosquatting-Versuch) | |
2 Schwachstellen (1 davon mit hohem Schweregrad) | |
1 Schwachstelle | |
0 Schwachstellen | |
3 Schwachstellen | |
1 Schwachstelle | |
0 Schwachstellen | |
0 Schwachstellen |
Wenn wir Beliebtheit anhand der Gesamtzahl der Downloads bewerten, sehen wir, welche Bibliotheken häufig als direkte und indirekte Abhängigkeiten verwendet werden:
Paket | Downloads |
|---|---|
debug | >40 Millionen Downloads pro Woche |
kind-of | >34 Millionen Downloads pro Woche |
supports-color | >34 Millionen Downloads pro Woche |
readable-stream | >31 Millionen Downloads pro Woche |
source-map | >30 Millionen Downloads pro Woche |
yargs | >27 Millionen Downloads pro Woche |
camelcase | >26 Millionen Downloads pro Woche |
minimist | >25 Millionen Downloads pro Woche |
strip-ansi | >25 Millionen Downloads pro Woche |
chalk | >25 Millionen Downloads pro Woche |
Von den oben genannten zehn Paketen wies nur debug eine Sicherheitsschwachstelle auf.
npm in Zahlen
Das Ausmaß der Beliebtheit und des Wachstums von npm ist enorm. Das zeigt diese Grafik mit der Anzahl der Pakete, die in den letzten Jahren aufgenommen wurden. Tatsächlich ist die Plattform seit Januar 2017 in etwas mehr als zwei Jahren um 250 % gewachsen.

Auch von Monat zu Monat ist das Wachstum der npm-Nutzung sichtbar, wie die Zahl der Pakete zeigt, die 2019 jeden Monat heruntergeladen wurden.

Hier sind weitere npm-Statistiken:
1 Million aufgenommene Pakete (+ alle, die seit dem Verfassen dieses Beitrags hinzugekommen sind!)
10,9 Milliarden Downloads in der vergangenen Woche
46,9 Milliarden Downloads im vergangenen Monat
Das beliebteste Paket ist
debugmit mehr als 40 Millionen Downloads pro WocheDas am 1000. häufigsten heruntergeladene Paket ist merge-stream mit etwa 3,5 Millionen Downloads pro Woche
250.000 Pakete wurden 2018 zu npm hinzugefügt
110.000 Pakete wurden 2019 bislang zu npm hinzugefügt
144.000 Downloads des npm-Pakets der Snyk CLI pro Woche!
41 Pakete gehören Snyk – juhu!
Der GitHub-Nutzer dominykas und ein Kollege von NearForm stellten einige Statistiken in einem GitHub-Issue bereit. Sie entstanden im Rahmen der Arbeit der Arbeitsgruppe zur Paketpflege bei der Node.js Foundation. Ihre Daten zeigen, wie stark sich die allgemeine Paketpflege zwischen den Autoren unterscheidet.
Perzentil | Letzter Commit | Letzte Veröffentlichung |
|---|---|---|
10 % | vor 4 Tagen | vor 11 Tagen |
20 % | vor 5 Tagen | vor 37 Tagen |
30 % | vor 19 Tagen | vor 88 Tagen |
40 % | vor 57 Tagen | vor 157 Tagen |
50 % | vor 119 Tagen | vor 246 Tagen |
60 % | vor 194 Tagen | vor 369 Tagen |
70 % | vor 328 Tagen | vor 559 Tagen |
80 % | vor 563 Tagen | vor 777 Tagen |
90 % | vor 887 Tagen | vor 1098 Tagen |
95 % | vor 1194 Tagen | vor 1372 Tagen |
100 % | vor 2201 Tagen | vor 2792 Tagen |
Zusammenfassung
Wir möchten npm dazu gratulieren, das größte Open-Source-Sprachpaket-Repository zu betreiben und zu pflegen. Unser Glückwunsch gilt auch den großartigen Maintainerinnen und Maintainer sowie Entwicklerinnen und Entwicklern der Community, die das Ökosystem voranbringen und zu diesem bedeutenden Erfolg beigetragen haben. Wenn Sie Open-Source-Pakete verwenden, sollten Sie unbedingt Versionen nutzen, die keine bekannten Schwachstellen enthalten. Mit der branchenführenden Snyk Vulnerability Database können Sie Ihre Anwendungen ganz einfach kostenlos testen. Probieren Sie es jetzt aus und sehen Sie sofort die Scan-Ergebnisse.
Testen Sie noch heute Ihre JavaScript-App mit einem kostenlosen Snyk-Konto.
Starten Sie mit Capture the Flag
Erfahren Sie in unserem virtuellen On-Demand-Workshop für Einsteiger, wie Sie Capture-the-Flag-Herausforderungen lösen.
