JavaScript: npm 4 soll die interne Suchfunktion retten
Der Verzicht auf die Sortierung der Suchergebnisse soll "npm search" wieder funktionstüchtig machen. "npm scripts" erweitert den PATH von Skripten nicht mehr selbsttätig um das Nodes-Executable.
Die npm-Macher haben ein erstes Release von Version 4.0 des JavaScript-Paketmanagers veröffentlicht. npm 4 verhält sich in einigen Aspekten anders als der Vorgänger, unter anderem bei der Suchfunktion.
Die Release-Informationen bringen es überdeutlich auf den Punkt: "Sehen wir den Tatsachen ins Auge: npm search funktioniert einfach nicht mehr. Abgesehen davon, dass es von Jahr zu Jahr langsamer wurde, hat es einen Punkt erreicht, an dem die vollständigen Registry-Metadaten nicht mehr in den Speicher passen." Daher führte der Befehl zu Speicherüberlauf-Abstürzen.
Eine grundlegende Überarbeitung des Suchkommandos ist wohl bereits in Arbeit, aber als Übergangslösung zeigt npm 4 die Ergebnisse als Stream an, der die Ergebnisse der Suche und den lokalen Cache kombiniert. Da alle Resultate direkt erscheinen, fällt konsequenterweise die Sortierfunktion weg.
Fallstricke bei den Skriptpfaden
Eine weitere Änderung betrifft die Pfadverwaltung von Skripten. Der Befehl npm script setzt nicht mehr standardmäßig den Pfad des Node-Executables der PATH-Variablen des Skripts voran. Entwickler können das Einfügen jedoch manuell über --scripts-prepend-node-path aktivieren. Grund für die Änderung sei, dass einige Werkzeuge wie der Ruby Version Manager oder Virtualenv durch die automatisierte Anpassung des Pfads nicht funktionieren.
Weitere Details wie der Verzicht auf partielle Shrkinkwraps, das Entfernen des weitgehend unbekannten npat und das Ersetzen von prepublish durch prepare sind in einem Beitrag auf GitHub beschrieben. Derzeit besitzt npm 4.0.0 offiziell Pre-release-Status. Die Vorgänger npm 2 und npm 3 wandern in den Maintenance-Modus und bekommen nur noch kritische Bugfixes und Security-Updates. (rme)