Skip to main content

npm erreicht den Meilenstein von 1 Million Paketen! Was können wir daraus lernen?

NPM blog

4. Juni 2019

0 Min. Lesezeit
Wombat neben einem Teller mit Mais und bunten, verpackten Geburtstagsgeschenken im Freien

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.

Screenshot der npm-Startseite mit Paketsuche, beliebten Bibliotheken, Kategorien zum Entdecken und Statistiken, die 1.000.000 Pakete hervorheben.

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.

Liniendiagramm zur Gesamtzahl der indexierten npm-Pakete: Anstieg von 400.000 im Januar 2017 auf 1.000.000 im Juni 2019.

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

Liniendiagramm mit steigenden npm-Paket-Downloads von 37 Milliarden im Januar auf 50 Milliarden im Mai 2019 und einem leichten Rückgang im April.

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 debug mit mehr als 40 Millionen Downloads pro Woche

  • Das 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.