NEWS
SONOFF NSPanel mit Lovelace UI
-
pi@iobroker:~ $ cd /opt/iobroker/node_modules/moment-parseformat -bash: cd: /opt/iobroker/node_modules/moment-parseformat: Datei oder Verzeichnis nicht gefunden pi@iobroker:~ $
pi@iobroker:~ $ cd /opt/iobroker/node_modules/@iobroker-javascript.0/moment-parseformat pi@iobroker:/opt/iobroker/node_modules/@iobroker-javascript.0/moment-parseformat $ ls -la insgesamt 40 drwxrwxr-x+ 4 iobroker iobroker 4096 2. Aug 08:11 . drwxrwxr-x+ 7 iobroker iobroker 4096 6. Aug 12:43 .. drwxrwxr-x+ 2 iobroker iobroker 4096 2. Aug 08:11 dist -rw-rw-r--+ 1 iobroker iobroker 202 2. Aug 08:11 index.js drwxrwxr-x+ 2 iobroker iobroker 4096 2. Aug 08:11 lib -rw-rw-r--+ 1 iobroker iobroker 11345 2. Aug 08:11 LICENSE.md -rw-rw-r--+ 1 iobroker iobroker 1687 2. Aug 08:11 package.json -rw-rw-r--+ 1 iobroker iobroker 2036 2. Aug 08:11 README.md pi@iobroker:/opt/iobroker/node_modules/@iobroker-javascript.0/moment-parseformat $
-
Hallo,
Eine bitte an die User die diese Fehlermeldung mit dayjs nicht haben, könnt ihr bitte mal diese Verzeichnisse überprüfen. Ob die Ausgaben dieselben sind. Danke und schön Abend noch.
-
Ich bin ein User ohne Fehler
armilar@iobroker:/opt/iobroker/node_modules/moment-parseformat$ ls -la total 92 drwxrwxr-x+ 4 iobroker iobroker 4096 Feb 22 17:40 . drwxrwxr-x+ 1340 iobroker iobroker 53248 Aug 5 20:31 .. -rw-rwxr--+ 1 iobroker iobroker 11345 Feb 22 17:40 LICENSE.md -rw-rwxr--+ 1 iobroker iobroker 2036 Feb 22 17:40 README.md drwxrwxr-x+ 2 iobroker iobroker 4096 Feb 22 17:40 dist -rw-rwxr--+ 1 iobroker iobroker 202 Feb 22 17:40 index.js drwxrwxr-x+ 2 iobroker iobroker 4096 Feb 22 17:40 lib -rw-rwxr--+ 1 iobroker iobroker 1687 Feb 22 17:40 package.json armilar@iobroker:/opt/iobroker/node_modules/moment-parseformat$
armilar@iobroker:/opt/iobroker/node_modules/@iobroker-javascript.0/moment-parseformat$ ls -la total 40 drwxrwxr-x+ 4 iobroker iobroker 4096 Jul 4 20:07 . drwxrwxr-x+ 21 iobroker iobroker 4096 Aug 5 18:31 .. -rw-rwxr--+ 1 iobroker iobroker 11345 Jul 4 20:07 LICENSE.md -rw-rwxr--+ 1 iobroker iobroker 2036 Jul 4 20:07 README.md drwxrwxr-x+ 2 iobroker iobroker 4096 Jul 4 20:07 dist -rw-rwxr--+ 1 iobroker iobroker 202 Jul 4 20:07 index.js drwxrwxr-x+ 2 iobroker iobroker 4096 Jul 4 20:07 lib -rw-rwxr--+ 1 iobroker iobroker 1687 Jul 4 20:07 package.json armilar@iobroker:/opt/iobroker/node_modules/@iobroker-javascript.0/moment-parseformat$
Du machst es spannend... Wie man sieht sind beide Verzeichnisse vorhanden:
- /opt/iobroker/node_modules --> vom Februar
- /opt/iobroker/node_modules/@iobroker-javascript.0 --> vom Juli
naja, das Jahr kann man nicht wirklich sehen... und das System ist wirklich alt - aber absolut aktuell
EDIT: Jetzt für dayjs
armilar@iobroker:/opt/iobroker/node_modules/dayjs$ ls -la total 204 drwxrwxr-x+ 5 iobroker iobroker 4096 Feb 22 17:40 . drwxrwxr-x+ 1340 iobroker iobroker 53248 Aug 5 20:31 .. -rw-rwxr--+ 1 iobroker iobroker 94 Feb 22 17:40 .editorconfig -rw-rwxr--+ 1 iobroker iobroker 77898 Feb 22 17:40 CHANGELOG.md -rw-rwxr--+ 1 iobroker iobroker 1072 Feb 22 17:40 LICENSE -rw-rwxr--+ 1 iobroker iobroker 7266 Feb 22 17:40 README.md -rw-rwxr--+ 1 iobroker iobroker 7160 Feb 22 17:40 dayjs.min.js drwxrwxr-x+ 4 iobroker iobroker 4096 Feb 22 17:40 esm -rw-rwxr--+ 1 iobroker iobroker 13853 Feb 22 17:40 index.d.ts drwxrwxr-x+ 2 iobroker iobroker 4096 Feb 22 17:40 locale -rw-rwxr--+ 1 iobroker iobroker 5033 Feb 22 17:40 locale.json -rw-rwxr--+ 1 iobroker iobroker 2526 Feb 22 17:40 package.json drwxrwxr-x+ 2 iobroker iobroker 4096 Feb 22 17:40 plugin armilar@iobroker:/opt/iobroker/node_modules/dayjs$
armilar@iobroker:/opt/iobroker/node_modules/@iobroker-javascript.0/dayjs$ ls -la total 152 drwxrwxr-x+ 5 iobroker iobroker 4096 Jul 18 21:35 . drwxrwxr-x+ 21 iobroker iobroker 4096 Aug 5 18:31 .. -rw-rwxr--+ 1 iobroker iobroker 94 Jul 18 21:35 .editorconfig -rw-rwxr--+ 1 iobroker iobroker 79810 Jul 18 21:35 CHANGELOG.md -rw-rwxr--+ 1 iobroker iobroker 1072 Jul 18 21:35 LICENSE -rw-rwxr--+ 1 iobroker iobroker 7411 Jul 18 21:35 README.md -rw-rwxr--+ 1 iobroker iobroker 7160 Jul 18 21:35 dayjs.min.js drwxrwxr-x+ 4 iobroker iobroker 4096 Jul 18 21:35 esm -rw-rwxr--+ 1 iobroker iobroker 13872 Jul 18 21:35 index.d.ts drwxrwxr-x+ 2 iobroker iobroker 4096 Jul 18 21:35 locale -rw-rwxr--+ 1 iobroker iobroker 5033 Jul 18 21:35 locale.json -rw-rwxr--+ 1 iobroker iobroker 2526 Jul 18 21:35 package.json drwxrwxr-x+ 2 iobroker iobroker 4096 Jul 18 21:35 plugin armilar@iobroker:/opt/iobroker/node_modules/@iobroker-javascript.0/dayjs$
EDIT2:
noch ein paar Systemdaten
Chassis: vm Virtualization: kvm Operating System: Ubuntu 22.04.4 LTS Kernel: Linux 5.15.0-117-generic Architecture: x86-64 Nodejs-Installation: /usr/bin/nodejs v20.16.0 /usr/bin/node v20.16.0 /usr/bin/npm 10.8.1 /usr/bin/npx 10.8.1 /usr/bin/corepack 0.28.2 ioBroker Core: js-controller 6.0.10 admin 7.0.23 javascript 8.8.0
-
So sieht es bei mir auch aus. Die aktuellen liegen unter @javascript.x , die alten halt unter node_modules. Ich habe unter node_modules den Ordner dayjs mal umbenannt in dayjs1, nach einem Neustart der JavaScript Instanz war der Ordner wieder automatisch dayjs. Kannst du mir das bitte erklären. Ein neuer Ordner dayjs hätte ich verstanden, aber das nicht.
-
Vielleicht wurschteln da alte und neue Sourcen im Adapter... Altlasten oder so... keine Ahnung... Sehe das Problem aber nicht im Script...
-
Sehe ich auch noch nicht, wollte mal Infos sammeln und dann mit Matthias @haus-automatisierung über den Sachverhalt reden. Vielleicht liegt es am Adapter oder vielleicht sogar im JS-Controller.
-
Gehe aktuell mal vom JS-Adapter aus... Der hat die Module im Bauch und verwaltet sie...
-
Habe hier im Forum auch schon die Anmerkung gelesen, ob alle Module auch in Typscript-Programmen funktionieren.
Da bin ich dann raus, um dies zu prüfen.Edit: da bei mir/uns alles läuft, glaube ich, dass es kein Unterschied macht
-
@armilar sagte in SONOFF NSPanel mit Lovelace UI:
Du machst es spannend... Wie man sieht sind beide Verzeichnisse vorhanden:
/opt/iobroker/node_modules/@iobroker-javascript.0 --> vom Juli
Ich habe jetzt hier nicht alles gelesen. Aber die neue Struktur wurde eingeführt, weil npm seit einer bestimmten Version Dinge entfernt, welche nicht in der package.json zu finden sind. Gibt es mehrere Issues zu (jetzt geschlossen) im JavaScript-Adapter und js-controller. Gern tiefer einsteigen bei Interesse.
Die Zusatzmodule werden jedenfalls jetzt nur noch in
/opt/iobroker/node_modules/@iobroker-javascript.0
installiert und verwaltet. Dort wird dann auch eine package.json gepflegt und von dort werden die Module auch nur noch geladen.Warum sucht ihr überhaupt in den Verzeichnissen rum? Was genau geht nicht?!
-
Der größte Teil ist bei mir in TypeScript und ich habe irgendwie sehr viele Module geladen... Nirgends ein Problem... Die Kiste läuft rund...
siehe:
So sieht es bei mir in den Modulen in Wirklichkeit aus ich sollte da mal aufräumen
Nee, kann nur jedem ans Herz legen die Schritte zur Aktualisierung des Systems und des ioBrokers regelmäßig durchzuführen... Dann gibts auch keinen Stress...
Mag sein, dass da ein alter Ordner wieder angelegt wird. Aber ich gehe davon aus, dass der neuere auch genutzt wird...
-
@TT-Tom ist auf der Suche nach diesen dayjs und Modul XYZ wird nicht geladen Problemen... Häufen sich angeblich...
-
@tt-tom Ich such mir auch nen Wolf. Ich kann nur javascript.0 (707) script.js.common.NSPanel.NSPanelTS44b: Error: Cannot find module 'dayjs' als Fehlermeldung beisteuern. Ich habe diesen Programmteil auch mal unter JS laufen lassen. Funktioniert da auch nicht.
-
@armilar sagte in SONOFF NSPanel mit Lovelace UI:
@TT-Tom ist auf der Suche nach diesen dayjs und Modul XYZ wird nicht geladen Problemen
js-controller sollte 6.0.9 sein (da gab es noch eine Erweiterung) oder die letzte 5.x. Der "neue Weg" wird nur genutzt, wenn die Funktionen vom js-controller 6 existieren.
-
hatte ich hier gestern auch schon gepostet:
https://forum.iobroker.net/post/1187913
EDIT; Eventuell kann man das im Forum etwas sichtbarere machen oder ein Adapter-Upgrade an dieser Stelle mit einer Fehlermeldung abbrechen. Führt sonst nur zu Problemen...
EDIT2: Interessant... Genau dieser Abbruch sollte passieren
-
@armilar Ansonsten gebt ihr die dependencies ja immer ohne Version an. Eventuell habt ihr dadurch unterschiede? Schon verglichen was installiert wurde?
https://www.npmjs.com/package/dayjs?activeTab=versions
1.11.12 ist ja erst 19 Tage alt.
-
Ich gehe mal davon aus, dass mir bei den regelmäßigen Systemstarts dieser Fehler aufgefallen wäre... Also wenn da mal ein fehlerhaftes dayjs dabei gewesen wäre...
-
@haus-automatisierung
Das ist das Log von @MichaelF
Er bekommt trotzdem die Fehlermeldung das dayjs nicht gefunden wird.javascript.0 2024-08-06 12:44:10.233 info requesting all objects javascript.0 2024-08-06 12:44:10.231 info requesting all states javascript.0 2024-08-06 12:44:05.205 debug Loaded TypeScript definitions for request: ["node_modules/@types/request/package.json","node_modules/@types/request/index.d.ts"] javascript.0 2024-08-06 12:44:05.171 debug Loaded TypeScript definitions for node: ["node_modules/@types/node/package.json","node_modules/@types/node/index.d.ts","node_modules/@types/node/assert.d.ts","node_modules/@types/node/assert/strict.d.ts","node_modules/@types/node/globals.d.ts","node_modules/@types/node/async_hooks.d.ts","node_modules/@types/node/buffer.d.ts","node_modules/@types/node/child_process.d.ts","node_modules/@types/node/cluster.d.ts","node_modules/@types/node/console.d.ts","node_modules/@types/node/constants.d.ts","node_modules/@types/node/crypto.d.ts","node_modules/@types/node/dgram.d.ts","node_modules/@types/node/diagnostics_channel.d.ts","node_modules/@types/node/dns.d.ts","node_modules/@types/node/dns/promises.d.ts","node_modules/@types/node/domain.d.ts","node_modules/@types/node/dom-events.d.ts","node_modules/@types/node/events.d.ts","node_modules/@types/node/fs.d.ts","node_modules/@types/node/fs/promises.d.ts","node_modules/@types/node/http.d.ts","node_modules/@types/node/http2.d.ts","node_modules/@types/node/https.d.ts","node_modules/@types/node/inspector.d.ts","node_modules/@types/node/module.d.ts","node_modules/@types/node/net.d.ts","node_modules/@types/node/os.d.ts","node_modules/@types/node/path.d.ts","node_modules/@types/node/perf_hooks.d.ts","node_modules/@types/node/process.d.ts","node_modules/@types/node/punycode.d.ts","node_modules/@types/node/querystring.d.ts","node_modules/@types/node/readline.d.ts","node_modules/@types/node/readline/promises.d.ts","node_modules/@types/node/repl.d.ts","node_modules/@types/node/sea.d.ts","node_modules/@types/node/stream.d.ts","node_modules/@types/node/stream/promises.d.ts","node_modules/@types/node/stream/consumers.d.ts","node_modules/@types/node/stream/web.d.ts","node_modules/@types/node/string_decoder.d.ts","node_modules/@types/node/test.d.ts","node_modules/@types/node/timers.d.ts","node_modules/@types/node/timers/promises.d.ts","node_modules/@types/node/tls.d.ts","node_modules/@types/node/trace_events.d.ts","node_modules/@types/node/tty.d.ts","node_modules/@types/node/url.d.ts","node_modules/@types/node/util.d.ts","node_modules/@types/node/v8.d.ts","node_modules/@types/node/vm.d.ts","node_modules/@types/node/wasi.d.ts","node_modules/@types/node/worker_threads.d.ts","node_modules/@types/node/zlib.d.ts","node_modules/@types/node/globals.global.d.ts"] javascript.0 2024-08-06 12:44:05.117 debug Installed custom dependency: "dayjs@latest" javascript.0 2024-08-06 12:43:49.595 debug Found custom dependency in config: "dayjs@latest" javascript.0 2024-08-06 12:43:49.557 debug Installed custom dependency: "moment@latest" javascript.0 2024-08-06 12:43:34.083 debug Found custom dependency in config: "moment@latest" javascript.0 2024-08-06 12:43:34.075 debug Installed custom dependency: "moment-parseformat@latest" javascript.0 2024-08-06 12:43:18.791 debug Found custom dependency in config: "moment-parseformat@latest" javascript.0 2024-08-06 12:43:18.741 debug Installed custom dependency: "node-ssh@latest" javascript.0 2024-08-06 12:43:02.887 debug Found custom dependency in config: "node-ssh@latest" javascript.0 2024-08-06 12:43:02.730 debug Installed custom dependency: "simple-ssh@latest" javascript.0 2024-08-06 12:42:46.936 debug Found custom dependency in config: "simple-ssh@latest" javascript.0 2024-08-06 12:42:46.935 debug Found installed libraries: ["moment","moment-parseformat","node-ssh","simple-ssh"] javascript.0 2024-08-06 12:42:46.883 debug config.subscribe (Do not subscribe all states on start): false javascript.0 2024-08-06 12:42:46.840 info starting. Version 8.7.6 in /opt/iobroker/node_modules/iobroker.javascript, node: v20.16.0, js-controller: 6.0.9 javascript.0 2024-08-06 12:42:41.588 debug Plugin sentry Initialize Plugin (enabled=true)
post zum Inhalt des Verzeichnis
Edit: die Daten sind alle da, auch das System ist aktuell. Trotzdem kommt es zu den Meldungen.
Das ist der Code Ausschnitt vom Script
async function Init_dayjs() { try { //Loading dayjs const dayjs = require('dayjs'); const dayjsLanguages: any = ['en','de','nl','da','es','fr','it','ru','nb','nn', 'pl','pt','af','ar','bg','ca','cs','el','et','fa', 'fi','he','hr','hu','hy-am','id','is','lb','lt','ro', 'sk','sl','sv','th','tr','uk','vi','zh-cn','zh-tw'] for (let i=0; i<dayjsLanguages.length;i++) { require('dayjs/locale/'+ dayjsLanguages[i]); } dayjs.locale(getDayjsLocale()); } catch (err: any) { log('error at function init_dayjs: ' + err.message,'warn'); } } Init_dayjs();
-
@tt-tom Ich habe gerade nochmal ein Backup vom 09.06. draufgeworfen. Darin js-Controller 5.0.19 und javascript-adapter 8.5.0. Hier tritt kein dayjs-Fehler auf.
-
das ist interessant, kannst du mal bitte die Pfade kontrollieren, wo die npm-Module installiert sind.
Hast du vom 9.6. dann das Update auf die aktuellen Versionen gemacht?@haus-automatisierung der Post von Rene55, vielleicht ist das noch ein wichtiger Hinweis.
@Armilar was mir jetzt noch einfällt ist der Zusatz mit dem
default
const dayjs = require('dayjs').default;
Matthias muss/soll das noch so geschrieben werden? Wurde eine zeitlang hier im Forum so erwähnt oder ist das mit der aktuellen JavaScript Version nicht mehr nötig?
-
@tt-tom sagte in SONOFF NSPanel mit Lovelace UI:
@Armilar was mir jetzt noch einfällt ist der Zusatz mit dem default
Copy to Clipboardconst dayjs = require('dayjs').default;Wenn default existiert, wird das automatisch zurückgeliefert. Also nein, weglassen.