NEWS
NPM spinnt!
-
npm i -g npm ````das sollte 2x ausgeführt werden… `
Sehe immer noch keinen Grund, warum das 2x ausgeführt werden sollte… Bei mir hats bisher immer mit 1x funktioniert.
-
Führe ich diesen Befehl jedoch aus, wird mir mit
npm -v
wieder die alte Version 5.5.1 angezeigt … `
Ist die Installation denn auch erfolgreich durchgelaufen oder gabs Fehler? Npm musst du in der Regel mit````
sudo npm i -g npm -
Warum 2x kann ich dir auch nicht sagen.
Ich weiß nur das ich es bei mir machen musste.
-
Ich habe alles ausprobiert.
Im Pfad /usr/lib/node_modules/npm den kompletten Ordner gelöscht und dann neu installiert.
node -v ergibt: v6.13.1
npm -v ergibt: 5.5.1
Ich geb's auf.
-
Bei mir lief es ohne Probleme, nur ein Klick unter Adapter-Updates.
System: Ubuntu Server
npm version 3.10.10
node version 6.13.1
Update Admin 3.3.1 -> 3.3.3
-
Ich habe alles ausprobiert.
Im Pfad /usr/lib/node_modules/npm den kompletten Ordner gelöscht und dann neu installiert.
node -v ergibt: v6.13.1
npm -v ergibt: 5.5.1
Ich geb's auf. `
Laut deiner abfrage liegt die benutze NPM Version auch hier:
> spuckt /usr/local/bin/npm aus.
-
Laut deiner abfrage liegt die benutze NPM Version auch hier:
> spuckt /usr/local/bin/npm aus.
`Und hier liegt sie nicht richtig? Ich habe nichts geändert …
-
Ich habe die auf allen Installationen hier:
root@pi-iobroker:/dev# which npm /usr/bin/npm
-
Ich habe die auf allen Installationen hier:
root@pi-iobroker:/dev# which npm /usr/bin/npm ```` `
Ja das mag ein Grund sein. Jedoch funktioniert ioBroker ja auch wenn npm in einem anderen Pfad liegt … Die Meldung dass 5.7.1 verlangt wird - aber trotz Upgrade nicht auf 5.7.1 gehoben wird, habe ich ja nur, wenn ich auf Aktualisieren gehe. Wenn ich einen Adapter neu installiere, anstatt ihn über die Admin-Oberfläche zu aktualisieren, wird er anstandslos installiert ...
iobroker 2018-03-15 16:09:05.451 error !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! iobroker 2018-03-15 16:09:05.451 error You need to make sure to repeat this step after installing an update to NodeJS and/or npm iobroker 2018-03-15 16:09:05.451 error use "npm install -g npm@>=5.7.1" to install a supported version of npm 5! iobroker 2018-03-15 16:09:05.451 error Please use "npm install -g npm@4" to downgrade npm to 4.x or iobroker 2018-03-15 16:09:05.451 error !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!NPM 5 is only supported starting with version 5.7.1!
Ich denke der neue Admin-Adapter und der js-controller hatten in letzter Zeit ziemlich viel Updates erfahren und Software ist immer in Bewegung.
-
Seit ein paar Tagen mosert ioBroker wegen der npm-Version herum. Nun klappt die Aktualisierung von z.B. des Admin-Adapters nicht mehr. Muss dann jedes mal den Adapter mit:
cd /opt/iobroker iobroker stop admin npm install iobroker.admin iobroker upload admin iobroker start admin
neu installieren um weiter arbeiten zu können. Dabei wird mir folgendes angezeigt:
Update available 5.5.1 → 5.7.1 Run npm i -g npm to update
Führe ich diesen Befehl jedoch aus, wird mir mit````
npm -vJemand eine Idee wie man ioBroker wieder zur zufriedenstellenden Mitarbeit überreden kann? `
ioBroker spinnt nicht.
Wenn dein npm nicht geht auf DEINEM System, wieso ioBroker schuld ist?
Wenn du kein Strom an dein Gerät anschließt, ist dann auch ioBroker spinnt?
-
Wenn man schreibt
npm i npm@latest -g
Dann sollte Meldung kommen, wo das installiert wurde.
Was ist das?
-
Die Meldung dass 5.7.1 verlangt wird - aber trotz Upgrade nicht auf 5.7.1 gehoben wird, habe ich ja nur, wenn ich auf Aktualisieren gehe. `
Ein nicht funktioniendes NPM-Update hat rein gar nichts mit ioBroker zu tun. NPM wird für die Installation und Updates verwendet.Auf NPM selbst hat ioBroker keinen Einfluss. Neuerdings überprüft ioBroker nur, ob es mit einer nicht unterstützten Version von npm installiert werden soll und bricht dann die Installation hab. Andernfalls könntest du dir unter Umständen deine komplette ioBroker-Installation zerschießen.
-
Wenn man schreibt
npm i npm@latest -g
Dann sollte Meldung kommen, wo das installiert wurde.
Was ist das? `
/usr/bin/npx -> /usr/lib/node_modules/npm/bin/npx-cli.js /usr/bin/npm -> /usr/lib/node_modules/npm/bin/npm-cli.js + npm@5.7.1 added 367 packages, removed 100 packages and updated 166 packages in 56.734s root@iobroker:~#
Naja ich bin schon daran interessiert, dass ioBroker zum besten System heranwächst … Auch wenn das heissen muss, dass ioBroker auch dann noch reibungslos funktioniert, wenn npm in einem anderen Pfad liegt. Es gibt doch unzählige Linux-Software, die mal hier, mal dort installiert liegt, in der einen Distribution hier, in der anderen dort. Es wird ein Symlink gesetzt und es funktioniert trotzdem.
ioBroker funktioniert ja erst seit ein paar Tagen nicht mehr, also muss bei ioBroker sich doch etwas geändert haben. Das ist auch kein Angriff gegen euch "verantwortliche" Programmierer. Nur wenn ich so etwas in einem Forum "melde" kann auch die Ursache gefunden werden und vielleicht auch andere davon profitieren.
-
Neuerdings überprüft ioBroker nur, ob es mit einer nicht unterstützten Version von npm installiert werden soll und bricht dann die Installation hab. Andernfalls könntest du dir unter Umständen deine komplette ioBroker-Installation zerschießen. `
Vielleicht liegt da der Hund begraben? Prüfroutine verfeinern? Denn anscheinend wird ja 5.7.1 installiert (Siehe oben), aber nur nicht erkannt - evtl. weil nur in einem möglichen Pfad abgefragt wird - ich kenne mich da allerdings mit meinen rudimentären Kenntnissen nicht aus …
-
Was passiert bei
/usr/bin/npm -v
?
-
Was passiert bei
/usr/bin/npm -v
? `
root@iobroker:~# /usr/bin/npm -v 5.7.1 root@iobroker:~#
:roll: Reines Abfrageproblem?
-
:roll: Reines Abfrageproblem? `
ioBroker verwendet einfach das npm, das in der PATH-Environment-Variable eingetragen ist. Das liegt bei dir in /usr/local/bin/npm und wird auch ausgeführt, wenn du npm auf der Kommandozeile eingibst. Woher ioBroker erfahren soll, dass eine andere Version in /usr/bin/ liegt weiß ich ehrlich gesagt nicht. Genauso wenig, warum du zwei npm Versionen parallel hast, wovon eine in PATH steht und die andere durch ein npm install aktualisiert wird.Naja, lass uns das ganze mal reparieren… Du willst ja schließlich auch bei manueller Eingabe von npm die korrekte Version ausführen.
Führe mal
npm get prefix
aus. Sofern das /usr/bin ausgibt, kannst du npm einfach aus dem Ordner /usr/local/bin löschen (nicht den ganzen Ordner!)
Ansonsten musst du zuerst
npm set prefix /usr/bin
ausführen.
-
Naja, lass uns das ganze mal reparieren… Du willst ja schließlich auch bei manueller Eingabe von npm die korrekte Version ausführen.
Führe mal
npm get prefix
aus. Sofern das /usr/bin ausgibt, kannst du npm einfach aus dem Ordner /usr/local/bin löschen (nicht den ganzen Ordner!)
Ansonsten musst du zuerst
npm set prefix /usr/bin
ausführen. `
Hallo AlCalzone, hat so nicht funktioniert aber Deine Grundidee hat mich inspiriert
Habe die beiden npm-Ordner:
/usr/local/lib/node_modules/npm
/usr/lib/node_modules/npm
händisch entfernt:
root@iobroker:~# rm -r /usr/lib/node_modules/npm root@iobroker:~# rm -r /usr/local/lib/node_modules/npm
und dann mit:
sudo apt-get --purge remove node sudo apt-get --purge remove nodejs sudo apt-get autoremove sudo reboot curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash - sudo apt-get install -y build-essential libavahi-compat-libdnssd-dev libudev-dev nodejs reboot
abgeschlossen.
Jetzt wird ausgespuckt:
root@iobroker:~# node -v v6.13.1 root@iobroker:~# nodejs -v v6.13.1 root@iobroker:~# npm -v 3.10.10 root@iobroker:~#
So soll es dann glaube ich auch sein?
-
das sieht gut aus… wobei ich die npm -v von Version 3 auf 4 installiert hätte:
npm install -g npm@4
-
das sieht gut aus… wobei ich die npm -v von Version 3 auf 4 installiert hätte:
npm install -g npm@4 ```` `
Habe mich an die aktuelle Anleitung hier gehalten. Bringt die 4 Vorteile?