Nicht für Kaffee geeignet: npm gab Fehlermeldung "I'm a teapot" aus

„I’m a teapot“: Error 418 von npm ausgegeben
Keine Kommentare

„I’m a teapot“– viele Nutzer bekamen gestern von npm diese berühmte Fehlermeldung angezeigt. Nichts ging mehr, mehr Informationen gab es aber auch nicht. Was war da los? Und was hat das alles mit einer Teekanne zu tun?

Die Installation von Packages via npm war nicht möglich – diese Fehlerbeschreibung reichte ein AWS-Mitarbeiter gestern auf GitHub ein. Am AWS-Server-Standort Frankfurt trete auf allen Servern der gleiche Fehler auf, wenn npm install ausgeführt werde, so lautete die ursprüngliche Problembeschreibung in der GitHub-Issue. Statt die gewünschten Packages zu installieren, gab npm nämlich folgende Fehlermeldung aus:

npm ERR! code E418 npm ERR! 418 I'm a teapot: commander@~2.3.0

Oder auf Deutsch: „Ich bin eine Teekanne“! Aussagekräftiger wurde es nicht, wie der GitHub-Issue zu entnehmen ist. Im Logfile fand sich kein Hinweis auf die Fehlerursache, dafür fanden sich auf GitHub, Twitter, Reddit und anderen Plattformen aber mehr ebenfalls betroffene Entwickler, denen die gleiche Fehlermeldung angezeigt wurde. Bereits in den ersten Antworten auf die GitHub-Issue wurde berichtet, dass das Problem auch auf Azure auftrete und sich auch nicht auf Europa eingrenzen ließ. Neben AWS Europa meldete sich auch ein Entwickler mit Servern in Japan auf GitHub zu Wort. Es folgten Berichte über den Fehler auf lokalen Rechnern unter Windows, VMs mit Linux und im Kontext jedes erdenklichen Pakets, das über npm bezogen werden kann.

„I’m a teapot“ bei npm

Schnell wurde auch Kritik an der Fehlermeldung laut: Was genau möchte npm dem Entwickler damit sagen; was soll man mit der Botschaft anfangen können, dass der Fehler eine Teekanne ist? GitHub-Nutzer William Grant brachte schließlich Licht ins Dunkel und extrahierte den zugrunde liegenden Code hinter dem Teekannen-Fehler: {"error":"got unknown host (registry.npmjs.org:443)"}. Auch fiel ihm eine Gemeinsamkeit in den Fehlerberichten auf: Wer über den Fehler berichtet, nutzte einen Proxy:

„Looks like some npm clients are appending the port to the Host header, but only when going through a proxy, and that’s confusing the registry:
$ wget –header=’Host: registry.npmjs.org:443′ https://registry.npmjs.org/
–2018-05-29 01:22:08– https://registry.npmjs.org/
Resolving registry.npmjs.org (registry.npmjs.org)… 104.18.95.96, 104.18.97.96, 104.18.94.96, …
Connecting to registry.npmjs.org (registry.npmjs.org)|104.18.95.96|:443… connected.
HTTP request sent, awaiting response… 418 I’m a teapot
2018-05-29 01:22:08 ERROR 418: I’m a teapot.“

Basierend auf dieser Analyse konnte der Fehler durch das npm-Team schnell behoben werden. Die Arbeit via npm mit Proxy ist nun wieder möglich.

Die Geschichte der Teekanne 418

Aber was macht eigentlich eine Teekanne in der Fehlermeldung? Die Fehlermeldung stellt keineswegs eine Erfindung eines kreativen Entwicklers bei npm dar, sondern ist eine Implementierung des Hyper Text Coffee Pot Control Protocol, das 1998 von Larry Mansiter als Aprilscherz definiert wurde. Zu diesem Protokoll existiert allerdings tatsächlich ein RFC Specification, in der die Semantik und der Inhalt des 418-Fehlermeldung beschrieben sind.

Erst im vergangenen Jahr stieß Mark Nottingham im Kontext von Node.js eine Diskussion um die Verwendung des Fehlercodes an und sprach sich dafür aus, die Code-Nummer für einen echten http-Status-Code frei zu geben. Infolge dessen gründete sich eine Initiative zur Rettung der Fehlermeldung: Unter dem Namen „The Save 418 Movement. We are the teapots.“ konnten die Fans des Status 418 am Ende sogar Mark Nottingham von ihrem Anliegen überzeugen konnte. Und so blieb es bei der Teekanne in Node.js und npm.

Ein wichtiges Argument in der Debatte war, dass die Befürworter der 418-Meldung mit dem Teapot den Humor dahinter schätzen und Freude daran haben, über derartige Meldungen im Netz zu stolpern. Ob diese Meinung jedoch alle teilen, die gestern vom entsprechend markierten Bug betroffen waren, ist eher fraglich, wenn man einmal die entsprechende Reddit-Diskussion betrachtet oder auf Twitter nach Reaktionen sucht.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -