NEWS
UNSOLVED Adapter update - npm ERR! Maximum call stack size exceeded
-
@MichMein Das heißt, wenn du npm aus sich selber heraus global installierst/updatest, dann landet das in /usr/local/bin und es wird nicht mehr die aus dem nodejs-Paket beigepackte Version aufgerufen. npm müsste dann immer manuell auf Stand gehalten werden. Das will man eigentlich nicht.
-
@Thomas-Braun ich habe mein npm gestern wegen der js-Controller Problematik händisch upgedatet und es sieht so aus,
pi@raspberrypi:~ $ which nodejs && nodejs -v && which node && node -v && which npm && npm -v && apt policy nodejs /usr/bin/nodejs v12.20.0 /usr/bin/node v12.20.0 /usr/bin/npm 6.14.10 nodejs: Installed: 12.20.0-1nodesource1 Candidate: 12.20.0-1nodesource1 Version table: *** 12.20.0-1nodesource1 500 500 https://deb.nodesource.com/node_12.x buster/main armhf Packages 100 /var/lib/dpkg/status 10.21.0~dfsg-1~deb10u1+rpi1 500 500 http://raspbian.raspberrypi.org/raspbian buster/main armhf Packages pi@raspberrypi:~ $
Das sieht für mich erstmal nicht falsch aus, oder?
-
@MichMein Ja, das schaut okay aus. Würde dir halt beim nächsten Upgrade von nodeJS über den Paketmanager dann wieder mit dessen Version drübergebügelt werden.
Das gewählte Verzeichnis hängt davon ab mit welchen Rechten das manuelle Upgrade angestoßen wird. -
@Thomas-Braun ok fein, ich werde mal abwarten bis es soweit und dann schauen.
Danke und nen schönen Weihnachtstag noch
-
@xawa sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
Installation von ioBroker hab ich folgendermaßen gemacht:
sudo apt-get install -y build-essential libavahi-compat-libdnssd-dev libudev-dev libpam0g-dev nodejs
Das kann ich so nicht in der Anleitung finden. Dort steht lediglich:
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash - sudo apt install -y nodejs sudo reboot
-
@Segway
Und genau genommen ist auch dieses Vorgehen nicht erforderlich, wenn man den Installer-Einzeiler aka Installer Skript nutzt. -
@Thomas-Braun sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
@Segway
Und genau genommen ist auch dieses Vorgehen nicht erforderlich, wenn man den Installer-Einzeiler aka Installer Skript nutzt.Okay, dann müsste die Doku überarbeitet werden.
Ist mir persönlich NEU, dass das installer script auch prüft auf nodejs.
-
@Segway
Ja die wird wohl auch hoffentlich bald angepasst und ja das Script installiert Node 12 gleich mit, weshalb sich die nanuelle Installation erübrigt hat. -
sudo apt-get install -y build-essential libavahi-compat-libdnssd-dev libudev-dev libpam0g-dev nodejs
ja den Befehl hab ich aus dem ioBroker Master-Kurs von Matthias Kleine. Aber ich glaube nicht, das der Probleme macht, da die Adapter-Updates bis vor ca. 2 Wochen ja schon rund 6 Wochen problemlos gelaufen sind.
Könnte es sein, dass es mit Github zu tun hat.
Ich expermimentiere gerade etwas mit der Entwicklung eines eigenen Adapters rum und habe mal testweise einen erstellt, der nur eine Testvariable anlegt (ja ich weiß, auf einem Produktivsystem..... ) Schande über mein Haupt!!!npx @iobroker/create-adapter
In dem Verzeichnis habe ich auch mit github gearbeitet und irgendwie habe ich das Gefühl, dass die Probleme weg sind, wenn ich alle Objekte, die Instanz und den Adapter wieder deinstalliere.
Was meint ihr? -
@xawa Das kann sein. Du scheinst da eine Schleife drin zu haben und die frisst den Speicher auf.
-
@Thomas-Braun sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
@MichMein Nein, das zerschießt dir ggf. nur die Paketdatenbank.
Zuerst
cd /opt/iobroker npm cache clean --force
mal probieren. Wenn das nicht funktioniert
cd /opt/iobroker npm rebuild
Danke, Thomas-Braun
-
@Segway sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
Ist mir persönlich NEU, dass das installer script auch prüft auf nodejs.
ist schon länger so.
@Segway sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
Okay, dann müsste die Doku überarbeitet werden.
steht so in der Doku!
https://github.com/ioBroker/ioBroker.docs/blob/master/docs/de/install/linux.md#installation-nodejs -
@Homoran
Oh das ist Mist, hier auf ne Doku auf Github hinzuweisen und die allgemein gebräuchliche oben verlinkte damit als ausgemustert zu entlarven. Das sollte schleunigst auf eine Stand gebracht werden. -
@Jan1 sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
hier auf ne Doku auf Github hinzuweisen
Das ist der Quelltext für die oben verlinkte.
Auf Github wird das geändert und jeder kann eine Änderung durchführen bzw. veranlassen, damit viele Augen eine korrekte Doku ermöglichen -
@Homoran
Das ist ja alles richtig, aber wo klickt denn der neue IOBroker User als erstes (falls er dies überhaupt mal macht)? In der Regel da wo was von Doku steht und die besagt eben noch was anderes. Was dort steht ist ja auch nicht wirklich falsch, aber auch nicht gerade aktuell. -
@Jan1 sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
@Homoran
Das ist ja alles richtig, aber wo klickt denn der neue IOBroker User als erstes (falls er dies überhaupt mal macht)? In der Regel da wo was von Doku steht und die besagt eben noch was anderes. Was dort steht ist ja auch nicht wirklich falsch, aber auch nicht gerade aktuell.Das sehe ich genauso! Ich persönlich habe IMMER auf iobroker.net geschaut!
Aber das ist halt das Problem wenn man zwei Orte für Doku hat und die dann auf Stand halten soll!
Fände mur einen Ort besser! -
@Segway sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
Aber das ist halt das Problem wenn man zwei Orte für Doku hat
du liest anscheinend nicht!
@Homoran sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
Das ist der Quelltext für die oben verlinkte.
-
@Homoran sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
@Segway sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
Aber das ist halt das Problem wenn man zwei Orte für Doku hat
du liest anscheinend nicht!
Ähm, nun mal langsam
Natürlich lese Ich und ja auf Github ist der Quelltext. Ja und ?Geh ich bei Influx oder Grafana auch zu Github oder lese ich die Installationsanleitung auf deren Homepage ?
Mir ist es am Ende völlig egal aber es sollte nunmal NUR EINE Doku geben.
Ich suche nicht irgendwo rum um etwas zu installieren sondern gehe auf die offizielle Homepage und dort ist alles zu finden.
Wenn das nicht gewünscht ist, so würde ich empfehlen (und das genau war meine Anmerkung) nicht an zwei Orten eine Doku zu hinterlegen - dann wäre es meiner Meinung nach besser einfach einen Link zu Github zu legen.
Wie gesagt nur meine Meinung! -
@Segway sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
Ich suche nicht irgendwo rum um etwas zu installieren sondern gehe auf die offizielle Homepage und dort ist alles zu finden.
Das ist ja auch so korrekt.
@Segway sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
es sollte nunmal NUR EINE Doku geben.
Es gibt ja auch nur diese eine.
@Segway sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
nicht an zwei Orten eine Doku zu hinterlegen
Die ist ja auch nur auf Github hinterlegt.
Daraus wird die Website generiert, also müssen die Änderungen auf Github eingepflegt werden - und das sind sie bereits -
@Homoran sagte in Adapter update - npm ERR! Maximum call stack size exceeded:
Daraus wird die Website generiert, also müssen die Änderungen auf Github eingepflegt werden - und das sind sie bereits
Vielleicht habe ich ja schon zu viel Eierpunch getrunken aber ich sehe dort:
3. Die existierenden node & node.js Versionen deinstallieren sudo apt-get --purge remove node (Es kann sein, dass hier eine Fehlermeldung kommt. Bitte weiter machen!) sudo apt-get --purge remove nodejs sudo apt-get autoremove sudo reboot
und dann soll man das bash Skript ausführen !
Darunter steht lediglich:
Installation ioBroker Die Installation kann mit dem User pi aber auch mit dem User root erfolgen. An der Konsole ausführen: curl -sLf https://iobroker.net/install.sh | bash -
Daraus kann ICH nicht erkennen, dass auch nodejs installiert wird bzw. die komplette obige Prozedur 1-4 dadurch ersetzt wird !
UPDATE:
Ganz am Anfang steht noch:!> mit dem aktuellen Installer von ioBroker (siehe unten) wird auf einem System ohne node.js automatisch die aktuell empfohlene Version von node.js mit installiert!
Okay ... das bringe ich aber als Laie nicht mit dem Punkt in Verbindung.