NEWS
Installation "request-promise" Modul schlägt fehl
-
Hatte ich gemacht. Sowohl '-native' als auch '-any' ergänzt.
-
@oetti Eigentlich ist es eine
npm
Gechichte, jedoch hat @paul53 auch 6.4.1.Wundert mich auch, dass
request-promise-native
problemlos installiert wird und das andere Modul nicht. Ansonsten hätte ich mir noch eine Rechte-Geschichte vorstellen können - hast du schon mal den Fixer genutzt bzw. eine relativ neue Installation?
Was kommt für eine Fehlermeldung im Skript wenn durequest-promise-native
verwendest? -
@foxriver76 sagte in Installation "request-promise" Modul schlägt fehl:
@oetti Eigentlich ist es eine
npm
Gechichte, jedoch hat @paul53 auch 6.4.1.Wundert mich auch, dass
request-promise-native
problemlos installiert wird und das andere Modul nicht. Ansonsten hätte ich mir noch eine Rechte-Geschichte vorstellen können - hast du schon mal den Fixer genutzt bzw. eine relativ neue Installation?
Was kommt für eine Fehlermeldung im Skript wenn durequest-promise-native
verwendest?Leider nicht viel, der Skript-Editor ist der Meinung, dass auch dieses Modul nicht existiert.
-
@oetti sagte:
der Skript-Editor ist der Meinung, dass auch dieses Modul nicht existiert.
Das sollte man ignorieren. Dieser Meinung ist der Editor bei allen Modulen.
-
Äähm, ich habe das komplette Skript gelöscht und noch einmal direkt aus dem Git kopiert.
Die Zeile 13 auf '-native' angepasst - jetzt läuft es.Keine Ahnung, was jetzt anders ist, aber "works for me"
Danke euch beiden
oetti -
@oetti Der Fehler "could not install from node_modules/..." deutet für mich darauf hin, dass die Pakete irgendwie per symlink oder wie auch immer auf den lokalen Pfad umgebogen wurden. Hast du irgendwas mit
npm link
gefummelt? -
@paul53 Verschwindet der Fehler, wenn man die Syntaxhilfe für das Modul aktiviert? Oder ist die Version mit dem Feature noch gar nicht draußen?
-
-
@paul53 In den Adapter-Optionen:
https://github.com/ioBroker/ioBroker.javascript/pull/439Aber ich schätze, die Version ist noch nicht raus, da auch die Meldung über fehlende Module behoben sein müsste.
-
@AlCalzone sagte in Installation "request-promise" Modul schlägt fehl:
@oetti Der Fehler "could not install from node_modules/..." deutet für mich darauf hin, dass die Pakete irgendwie per symlink oder wie auch immer auf den lokalen Pfad umgebogen wurden. Hast du irgendwas mit
npm link
gefummelt?Mit npm link hatte ich nicht rumgefummelt (kannte ich bis eben auch noch nicht).
Was ich gesehen hatte war, dass während der Installation ein Symlink auf sich selbst im Ordner iobroker.javascript angelegt wurde. Den habe ich dann mit "rm" ins Nirvana befördert. -
Ich muss meinen Thread nochmal wiederbeleben, da mir das besagte Modul weiterhin Problem bereitet.
Aktuell ist es so, dass jede neue Installation eines Adapters fehlschlägt, da npm weiterhin versucht das "request-promise" Modul zu installieren.
Deshalb die Frage, ob npm eine List vorhält, mit Modulen die noch installiert werden müssen. Aktuell mal das Debug-Log, als ich versucht habe, den nanoleaf-Adapter zu installieren:0 info it worked if it ends with ok 1 verbose cli [ '/usr/bin/node', 1 verbose cli '/usr/bin/npm', 1 verbose cli 'install', 1 verbose cli 'https://github.com/daniel-2k/ioBroker.nanoleaf-lightpanels/tarball/master', 1 verbose cli '--production', 1 verbose cli '--save', 1 verbose cli '--prefix', 1 verbose cli '/opt/iobroker' ] 2 info using npm@6.4.1 3 info using node@v8.12.0 4 verbose npm-session bb22a4b3b2530406 5 silly install loadCurrentTree 6 silly install readLocalPackageData 7 http fetch GET 200 https://github.com/daniel-2k/ioBroker.nanoleaf-lightpanels/tarball/master 5406ms 8 silly pacote remote manifest for undefined@https://github.com/daniel-2k/ioBroker.nanoleaf-lightpanels/tarball/master fetched in 5438ms 9 timing stage:loadCurrentTree Completed in 13499ms 10 silly install loadIdealTree 11 silly install cloneCurrentTreeToIdealTree 12 timing stage:loadIdealTree:cloneCurrentTree Completed in 55ms 13 silly install loadShrinkwrap 14 timing stage:loadIdealTree:loadShrinkwrap Completed in 1955ms 15 silly install loadAllDepsIntoIdealTree 16 silly resolveWithNewModule iobroker.nanoleaf-lightpanels@0.8.2 checking installable status 17 http fetch GET 200 https://registry.npmjs.org/osx-temperature-sensor 353ms 18 silly pacote range manifest for osx-temperature-sensor@^1.0.4 fetched in 358ms 19 silly resolveWithNewModule osx-temperature-sensor@1.0.4 checking installable status 20 silly fetchPackageMetaData error for request-promise@file:node_modules/request-promise Could not install from "iobroker/node_modules/iobroker.javascript/node_modules/request-promi se" as it does not contain a package.json file. 21 timing stage:rollbackFailedOptional Completed in 0ms
An welcher Stelle kann ich ansetzen, ob diese "request-promise" loszuwerden?
Danke
oetti -
@oetti sagte in Installation "request-promise" Modul schlägt fehl:
An welcher Stelle kann ich ansetzen, ob diese "request-promise" loszuwerden?
mit
npm ls request-promise
im Ordner/opt/iobroker
findest du einen Anhaltspunkt, wo das benötigt wird. -
@AlCalzone sagte in Installation "request-promise" Modul schlägt fehl:
npm ls request-promise
OK, das sieht dann so aus.
npm ls request-promise iobroker.inst@1.1.2 /opt/iobroker ├─┬ iobroker.javascript@4.1.12 │ └── UNMET DEPENDENCY request-promise@file:node_modules/request-promise ├─┬ iobroker.sonos@1.7.7 │ └─┬ sonos-discovery@1.1.3 │ └── request-promise@1.0.2 ├─┬ iobroker.telegram@1.4.3 │ └─┬ node-telegram-bot-api@0.30.0 │ └── request-promise@4.2.4 └── UNMET DEPENDENCY request-promise@^4.2.5 npm ERR! missing: request-promise@^4.2.5, required by iobroker.inst@1.1.2 npm ERR! missing: request-promise@file:node_modules/request-promise, required by iobroker.javascript@4.1.12
-
@oetti sagte in Installation "request-promise" Modul schlägt fehl:
iobroker.javascript
Ich habe aus der package.json vom iobroker.javascript mal den Verweis für das Modul entfernt - damit ging es dann. Keine Ahnung, ob das der richtige Weg ist/war
"dependencies": { "@iobroker/adapter-core": "^1.0.3", "@types/node": "^8.10.47", "@types/request": "^2.47.0", "coffee-compiler": "^0.3.2", "coffee-script": "^1.12.7", "noble": "^1.9.1", "node-schedule": "1.3.0", "request": "^2.88.0", "request-promise": "file:node_modules/request-promise", "request-promise-any": "^1.0.8", "request-promise-native": "^1.0.8", "semver": "^5.6.0", "suncalc2": "^1.8.1", "typescript": "^3.3.3333", "virtual-tsc": "^0.4.6", "vm2": "^3.6.10", "wake_on_lan": "^1.0.0" },
Gruß
oetti -
@oetti Das ist der richtige Weg, allerdings vermute ich stark, dass du das durch Ausführen irgendwelcher npm-Befehle dort selbst reingepackt hast
-
@AlCalzone sagte in Installation "request-promise" Modul schlägt fehl:
Ausführen irgendwelcher npm-Befehle dort selbst reingepackt hast
Die Einträge werden bei der Installation von "Zusätzliche NPM-Module" erzeugt und bleiben offenbar erhalten, wenn man "Zusätzliche NPM-Module" in der Konfiguration wieder entfernt.
-
@paul53 Mir geht es eher drum, dass der eine Eintrag auf einen lokalen Ordner verweist, in diesem Fall sogar auf den Ordner, in dem das fehlende Modul installiert werden würde.
Das macht der JS-Adapter nicht ohne manuellen Pfusch.
-
@AlCalzone sagte in Installation "request-promise" Modul schlägt fehl:
@paul53 Mir geht es eher drum, dass der eine Eintrag auf einen lokalen Ordner verweist, in diesem Fall sogar auf den Ordner, in dem das fehlende Modul installiert werden würde.
Das macht der JS-Adapter nicht ohne manuellen Pfusch.
Mmh, der ganze Spuk ging los, als ich das zusätzliche Modul im JS-Adapter hinzugefügt habe. Händisch habe ich die json nicht geändert.
Ich zieh mal eine Kopie aus dem Backup hoch und teste das dann nochmal. Sind bei mir alles VMs, so dass das relativ schnell gehen sollte.
Dann gebe ich nochmal Bescheid.
Danke
oetti