NEWS
Beta-Test js-controller 2.2.x GitHub
-
@apollon77

Der Beelink wurde rebootet, also mehr Restart geht nicht:blush: -
Hi, Radar2 wird kurz grün, dann wieder rot.
bin auf der Version 2.2.2radar2.0 2019-12-28 06:36:52.079 error at process._tickCallback (internal/process/next_tick.js:63:19) radar2.0 2019-12-28 06:36:52.079 error at state.handle.lookup (dgram.js:242:18) radar2.0 2019-12-28 06:36:52.079 error (12861) Error: bind EACCES 0.0.0.0:67 radar2.0 2019-12-28 06:36:52.078 error (12861) uncaught exception: bind EACCES 0.0.0.0:67und
host.ioBroker-RasPi4 2019-12-28 06:43:01.923 error Caught by controller[0]: port: 67 } host.ioBroker-RasPi4 2019-12-28 06:43:01.923 error Caught by controller[0]: address: '0.0.0.0', host.ioBroker-RasPi4 2019-12-28 06:43:01.923 error Caught by controller[0]: syscall: 'bind', host.ioBroker-RasPi4 2019-12-28 06:43:01.923 error Caught by controller[0]: code: 'EACCES', host.ioBroker-RasPi4 2019-12-28 06:43:01.923 error Caught by controller[0]: errno: 'EACCES', host.ioBroker-RasPi4 2019-12-28 06:43:01.922 error Caught by controller[0]: at process._tickCallback (internal/process/next_tick.js:63:19) host.ioBroker-RasPi4 2019-12-28 06:43:01.922 error Caught by controller[0]: at state.handle.lookup (dgram.js:242:18) host.ioBroker-RasPi4 2019-12-28 06:43:01.921 error Caught by controller[0]: { Error: bind EACCES 0.0.0.0:67ble ist nur noch gelb, im LOG wird aber nichts angezeigt. Alles natürlich im debug.
Gruß,
Mathias -
Aktuelle Test Version 2.2.1 Veröffentlichungsdatum 27.12.2019 Github Link npm install ioBroker/ioBroker.js-controller#2.2.xHallo in die Tester-Runde,
wie im neuen Release-Cycle für den js-controller geplant starten wir heute den Beta Test des neuen js-controller 2.1 (Releasename "Dina").
Das Release ist im grossen und ganzen ein weiterer Bugfix-Release zur 2.1.1 und behebt noch ein paar kleinere Probleme. Darüber hinaus gab es aber auch die nächsten Umbauarbeiten unter der Haube, die am Ende keine Auswirkungen auf die Funktionalität haben sollten. mehr dazu weiter unten und im Changelog.
Ich hoffe auch diesmal auf Eure tatkräftige Unterstützung, sodass der Latest-Release dann genau so reibungslos verläuft wie bei der 2.0!Der js-controller 2.0 ist generell kompatibel mit allen bestehenden ioBroker-Systemen. Ein Update von der 2.0/2.1 ist problemlos. Auch die minimale Node.js Version bleibt wie vom letzten Release bekannt bei 8.x, besser noch auf 10.x.
Installation
VOR der Installation
Wie bei jedem test dieser Art: Bitte macht ein Backup!iobroker backupbzw kopieren desiobroker-dataVerzeichnisses reichen an sich aus. Bitte nicht das node_modules Verzeichnis einfach kopieren, da sonst symbolische Links kaputt gehen können, was zu größeren Problemen danach führt. Die alte Version des js-controller kann im Notfall einfach wieder pernpm install iobroker.js-controller@versioninstalliert werden und sollte alles wieder herstellen.Windows
Auf Systemen, die mit dem neuen Windows Installer eingerichtet wurden, darf der js-controller nicht mir npm aktualisiert werden. Es wird eine neue Version des Windows Installers geben, die das Update des js-controllers mit wenigen Mausklicks ermöglicht. Wir updaten dazu hier im Thread.
Linux
Für den Beta-Test muss der js-controller direkt per npm installiert werden. Dazu bitte den ioBroker auf dem Server beenden und dann in einer Shell in das ioBroker Verzeichnis wechseln. Dann mittels
npm install ioBroker/ioBroker.js-controller#2.2.xden Controller manuell aktualisieren. Bevor ihr loslegt, lest aber bitte erst noch die folgenden Hinweise! Der zweite Post in diesem Thread ist für eine FAQ reserviert. Bitte schaut auch dort gern einmal rein.Achtung: Slave-Systeme zuerst!
Bei einem Multi-Host-System, welches auf js-controller 2.1 läuft ist es beim Update auf Version 2.0 empfohlen, zuerst die Slave-Systeme zu aktualisieren. Der Master wird als letztes aktualisiert!Bei Updates von Master/Slave-Systemen mit js-controller 1.5 oder früher auf die 2.2 müssen zwingend zuerst die Slaves und der Master als letztes aktualisiert werden. Die Slaves bleiben nach dem Update offline und werden erst wieder funktionieren wenn auch der Master auf die 2.2 aktualisiert wurde!
Nötige Adapter-Aktualisierungen
Bisher keine bekannt.Es wurde eine Methoden (lenMessage) in der Adapter-Klasse entfernt, welche schon seit der 1.5.x als "veraltet" gekennzeichnet war und auch Stand heute nicht genutzt werden.
Die Methode getMessage wird in js-controller 2.4 auch entferntFehler
Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer nutzen und die Installation wiederholen.curl -sL https://iobroker.net/fix.sh | bash -Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittels
sudo -H -u iobroker npm install ioBroker/ioBroker.js-controller#2.2.xversuchen. Bitte berichtet solche Fälle hier im Thread.Nach der Installation
Nach der Installation den ioBroker wieder starten (z.B. mittelsiobroker start).Wenn alles klappt merkt Ihr ausser der höheren Versionsnummer in der Host-Ansicht im Admin keinen Unterschied. Alles funktioniert weiterhin wie vorher. Alle Adapterinstanzen starten und funktionieren. Wenn das so ist hat alles geklappt. Die großen Änderungen sind alle "Unter der Haube" versteckt.
Was hat sich geändert, was besonders ansehen/testen?
Neben einiger weiterer Bugfixes, die fast in eine 2.1.2 eingeflossen werden gibt es folgende Änderungen und fixes zu erwähnen:
- Logfiles sollten wieder sauber nach dem rotieren gelöscht werden. Logfiles werden jetzt beim Rotieren gepackt und ältere Files liegen daher aus .gz Files im Verzeichnis
- Restart von Instanzen funktioniert wirder zuverässig
- State und Object-Subscriptions des Systems und der eigentlichen Adapter-Logik werden nun getrennt ausgeführt. In der vergangenheit konnte es in Ausnahmefällen hier zu überschneidungen kommen, die dann Auswirkungen hatten. Diese Änderung sollte keinerlei Auswirkung auf Funktionen von Adaptern haben.
- Der Socket.io Kompatibilitätsschicht die in der 2.0/2.1 noch drin war um die Kommunikation von "neuen" Slaves mit einem "alten" Master zu erlauben wurde wie geplant entfernt.
Wie bereits gesagt, viele Änderungen fanden hinter den Kulissen statt. Hier für Interessierte als Spoiler eine Zusammenfassung:
Generell ist zu testen, ob alles noch so funktioniert wie vorher auch. Das ist das wichtigste!
Wie Fehler melden?
Wer sich unsicher ist, ob ein Fehler vorliegt, sollte am besten hier im Thread das Problem beschreiben. So können wir alle versuchen, das Problem nachzuvollziehen und ggf. einzugrenzen.
Sobald ein Fehler auftritt der in einer Fehlermeldung oder einen Crash mit Fehlerdetails im Log oder auf Kommandozeile endet, dann dazu am besten direkt ein GitHub-Issue im js-controller Projekt öffnen und zusätzlich hier im Thread posten. Je detaillierter die Angaben im Issue sind (genaue Fehlermeldungen/Logs, Infos zur OS- und Node.js-Umgebung sowie genaue Schritte zur Reproduktion des Problems), umso schneller können wir Fehler einkreisen und beheben.
Wir wünschen allen viel Spaß beim Testen und vielen Dank für Eure Unterstützung!
@apollon77 Kurzer Zwischenstand, es gibt auch über Nacht nichts negatives zu berichten - Augenscheinlich alles beim Alten :)
-
@Jan1 Aber danach kams jetzt nicht mehr oder ?! Also mit der 2.2.2 ist die Funktion wieder da ...
@apollon77 sagte in Beta-Test js-controller 2.2.x GitHub:
@Jan1 Aber danach kams jetzt nicht mehr oder ?! Also mit der 2.2.2 ist die Funktion wieder da ...
Nein sieht alles sehr sauber aus und auch sonst keine Auffälligkeiten. Hatte mit Problemen gerechnet, da ich einige der Adapter laufen habe, die im ersten Post als evt. problematisch gelten.
-
@apollon77
hat sich erledigt.
Nach einem Fix und 2 mal neu upgedatet mitnpm install ioBroker/ioBroker.js-controllerund
sudo -H -u iobroker npm install ioBroker/ioBroker.js-controllerlaufen ble und Radar2 wieder.
beim ersteren Code kamen zig Fehlermeldungen, beim zweiten Code ging es dann.
Gruß,
Mathias -
Mit JS-2.2.2 "laufen" hier alle meine Adapter problemlos!
Was nicht funktioniert, ist das löschen von Instanzen und Adapter über die Admin-GUI. Beim Versuch einen Adapter/Instanz zu löschen wird das Entfernen mit einem "Exit 0" beendet. Danach wird die Adapter-Konfigurationsseite geöffnet, und Adapter/Instanz ist noch vorhanden ...
Über die Konsole geht das entfernen problemlos!
-
Mit JS-2.2.2 "laufen" hier alle meine Adapter problemlos!
Was nicht funktioniert, ist das löschen von Instanzen und Adapter über die Admin-GUI. Beim Versuch einen Adapter/Instanz zu löschen wird das Entfernen mit einem "Exit 0" beendet. Danach wird die Adapter-Konfigurationsseite geöffnet, und Adapter/Instanz ist noch vorhanden ...
Über die Konsole geht das entfernen problemlos!
@Einstein67 was genau steht im log?
-
Mit JS-2.2.2 "laufen" hier alle meine Adapter problemlos!
Was nicht funktioniert, ist das löschen von Instanzen und Adapter über die Admin-GUI. Beim Versuch einen Adapter/Instanz zu löschen wird das Entfernen mit einem "Exit 0" beendet. Danach wird die Adapter-Konfigurationsseite geöffnet, und Adapter/Instanz ist noch vorhanden ...
Über die Konsole geht das entfernen problemlos!
@Einstein67
stimmt und hier gleich mal ein Log dazu:$ ./iobroker del iogo Delete adapter "iogo" host.Beelink Counted 1 instances of iogo host.Beelink Counted 1 adapter for iogo host.Beelink Counted 1 states of iogo host.Beelink Counted 14 states of system.adapter.iogo ERROR: Cannot delete iogo files folder: Not existsCannot delete iogo.admin files folder: Not exists ERROR: host.Beelink error: Not exists host.Beelink Deleting 17 object(s). npm uninstall iobroker.iogo --silent --save --prefix "/opt/iobroker" (System call)
und hier der Versuch die Instanz zu löschen, was nicht funktioniert:

-
@Einstein67
stimmt und hier gleich mal ein Log dazu:$ ./iobroker del iogo Delete adapter "iogo" host.Beelink Counted 1 instances of iogo host.Beelink Counted 1 adapter for iogo host.Beelink Counted 1 states of iogo host.Beelink Counted 14 states of system.adapter.iogo ERROR: Cannot delete iogo files folder: Not existsCannot delete iogo.admin files folder: Not exists ERROR: host.Beelink error: Not exists host.Beelink Deleting 17 object(s). npm uninstall iobroker.iogo --silent --save --prefix "/opt/iobroker" (System call)
und hier der Versuch die Instanz zu löschen, was nicht funktioniert:

-
@Jan1 sieht an sich ok aus. Sind die system.adapter.iogo states noch vorhanden? Oder sind die weg? Läuft das npm uninstall vllt noch irgendwie?
Dann bitte mal ein GitHub issue anlegen. Prüfe ich später.
@apollon77
Die states sind weg, nur die Instanz lässt sich nicht löschen, zumindest in der Admin GUI. -
@apollon77
Die states sind weg, nur die Instanz lässt sich nicht löschen, zumindest in der Admin GUI.@Jan1 Danke für die Logs. Haben bei mir auch so ausgesehen.
Jetzt muss ich das nicht mehr "nachspielen" und Schrrenshots machen ;)
-
@Jan1 Danke für die Logs. Haben bei mir auch so ausgesehen.
Jetzt muss ich das nicht mehr "nachspielen" und Schrrenshots machen ;)
@Einstein67
Aber ein Issue dazu darfst erstellen :blush: -
@Einstein67
Aber ein Issue dazu darfst erstellen :blush: -
@Einstein67
Aber ein Issue dazu darfst erstellen :blush:@Jan1 said in Beta-Test js-controller 2.2.x GitHub:
Aber ein Issue dazu darfst erstellen
Ist erledigt! Und .... ich hasse Englisch ;)
-
@Jan1 sieht an sich ok aus. Sind die system.adapter.iogo states noch vorhanden? Oder sind die weg? Läuft das npm uninstall vllt noch irgendwie?
Dann bitte mal ein GitHub issue anlegen. Prüfe ich später.
@apollon77 sagte in Beta-Test js-controller 2.2.x GitHub:
@Jan1 sieht an sich ok aus. Sind die system.adapter.iogo states noch vorhanden? Oder sind die weg? Läuft das npm uninstall vllt noch irgendwie?
Dann bitte mal ein GitHub issue anlegen. Prüfe ich später.
Das hab ich schon länger, er löscht nur ein Teil aus den Verzeichnissen ohne Fehlermeldung, aber die Verzeichnisse der Adapter bleiben bestehen, und da meint der Admin anscheinend, dass der Adapter noch installiert ist.. obwohl die Dateien im Verzeichnis weg sind..
Lösche ich das Verzeichnis des gelöschten Adapters dann per hand, sieht man den Adapter im Admin auch nicht mehr. -
Bei mir läuft alles nach dem Update:

Hatte nur den Permissions Fehler mit der pids.txt Datei. Jedoch mit dem Fixer hat es geklappt. -
Aktuelle Test Version 2.2.1 Veröffentlichungsdatum 27.12.2019 Github Link npm install ioBroker/ioBroker.js-controller#2.2.xHallo in die Tester-Runde,
wie im neuen Release-Cycle für den js-controller geplant starten wir heute den Beta Test des neuen js-controller 2.1 (Releasename "Dina").
Das Release ist im grossen und ganzen ein weiterer Bugfix-Release zur 2.1.1 und behebt noch ein paar kleinere Probleme. Darüber hinaus gab es aber auch die nächsten Umbauarbeiten unter der Haube, die am Ende keine Auswirkungen auf die Funktionalität haben sollten. mehr dazu weiter unten und im Changelog.
Ich hoffe auch diesmal auf Eure tatkräftige Unterstützung, sodass der Latest-Release dann genau so reibungslos verläuft wie bei der 2.0!Der js-controller 2.0 ist generell kompatibel mit allen bestehenden ioBroker-Systemen. Ein Update von der 2.0/2.1 ist problemlos. Auch die minimale Node.js Version bleibt wie vom letzten Release bekannt bei 8.x, besser noch auf 10.x.
Installation
VOR der Installation
Wie bei jedem test dieser Art: Bitte macht ein Backup!iobroker backupbzw kopieren desiobroker-dataVerzeichnisses reichen an sich aus. Bitte nicht das node_modules Verzeichnis einfach kopieren, da sonst symbolische Links kaputt gehen können, was zu größeren Problemen danach führt. Die alte Version des js-controller kann im Notfall einfach wieder pernpm install iobroker.js-controller@versioninstalliert werden und sollte alles wieder herstellen.Windows
Auf Systemen, die mit dem neuen Windows Installer eingerichtet wurden, darf der js-controller nicht mir npm aktualisiert werden. Es wird eine neue Version des Windows Installers geben, die das Update des js-controllers mit wenigen Mausklicks ermöglicht. Wir updaten dazu hier im Thread.
Linux
Für den Beta-Test muss der js-controller direkt per npm installiert werden. Dazu bitte den ioBroker auf dem Server beenden und dann in einer Shell in das ioBroker Verzeichnis wechseln. Dann mittels
npm install ioBroker/ioBroker.js-controller#2.2.xden Controller manuell aktualisieren. Bevor ihr loslegt, lest aber bitte erst noch die folgenden Hinweise! Der zweite Post in diesem Thread ist für eine FAQ reserviert. Bitte schaut auch dort gern einmal rein.Achtung: Slave-Systeme zuerst!
Bei einem Multi-Host-System, welches auf js-controller 2.1 läuft ist es beim Update auf Version 2.0 empfohlen, zuerst die Slave-Systeme zu aktualisieren. Der Master wird als letztes aktualisiert!Bei Updates von Master/Slave-Systemen mit js-controller 1.5 oder früher auf die 2.2 müssen zwingend zuerst die Slaves und der Master als letztes aktualisiert werden. Die Slaves bleiben nach dem Update offline und werden erst wieder funktionieren wenn auch der Master auf die 2.2 aktualisiert wurde!
Nötige Adapter-Aktualisierungen
Bisher keine bekannt.Es wurde eine Methoden (lenMessage) in der Adapter-Klasse entfernt, welche schon seit der 1.5.x als "veraltet" gekennzeichnet war und auch Stand heute nicht genutzt werden.
Die Methode getMessage wird in js-controller 2.4 auch entferntFehler
Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer nutzen und die Installation wiederholen.curl -sL https://iobroker.net/fix.sh | bash -Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittels
sudo -H -u iobroker npm install ioBroker/ioBroker.js-controller#2.2.xversuchen. Bitte berichtet solche Fälle hier im Thread.Nach der Installation
Nach der Installation den ioBroker wieder starten (z.B. mittelsiobroker start).Wenn alles klappt merkt Ihr ausser der höheren Versionsnummer in der Host-Ansicht im Admin keinen Unterschied. Alles funktioniert weiterhin wie vorher. Alle Adapterinstanzen starten und funktionieren. Wenn das so ist hat alles geklappt. Die großen Änderungen sind alle "Unter der Haube" versteckt.
Was hat sich geändert, was besonders ansehen/testen?
Neben einiger weiterer Bugfixes, die fast in eine 2.1.2 eingeflossen werden gibt es folgende Änderungen und fixes zu erwähnen:
- Logfiles sollten wieder sauber nach dem rotieren gelöscht werden. Logfiles werden jetzt beim Rotieren gepackt und ältere Files liegen daher aus .gz Files im Verzeichnis
- Restart von Instanzen funktioniert wirder zuverässig
- State und Object-Subscriptions des Systems und der eigentlichen Adapter-Logik werden nun getrennt ausgeführt. In der vergangenheit konnte es in Ausnahmefällen hier zu überschneidungen kommen, die dann Auswirkungen hatten. Diese Änderung sollte keinerlei Auswirkung auf Funktionen von Adaptern haben.
- Der Socket.io Kompatibilitätsschicht die in der 2.0/2.1 noch drin war um die Kommunikation von "neuen" Slaves mit einem "alten" Master zu erlauben wurde wie geplant entfernt.
Wie bereits gesagt, viele Änderungen fanden hinter den Kulissen statt. Hier für Interessierte als Spoiler eine Zusammenfassung:
Generell ist zu testen, ob alles noch so funktioniert wie vorher auch. Das ist das wichtigste!
Wie Fehler melden?
Wer sich unsicher ist, ob ein Fehler vorliegt, sollte am besten hier im Thread das Problem beschreiben. So können wir alle versuchen, das Problem nachzuvollziehen und ggf. einzugrenzen.
Sobald ein Fehler auftritt der in einer Fehlermeldung oder einen Crash mit Fehlerdetails im Log oder auf Kommandozeile endet, dann dazu am besten direkt ein GitHub-Issue im js-controller Projekt öffnen und zusätzlich hier im Thread posten. Je detaillierter die Angaben im Issue sind (genaue Fehlermeldungen/Logs, Infos zur OS- und Node.js-Umgebung sowie genaue Schritte zur Reproduktion des Problems), umso schneller können wir Fehler einkreisen und beheben.
Wir wünschen allen viel Spaß beim Testen und vielen Dank für Eure Unterstützung!
V 2.2.2
Das ist Neu:undefined2019-12-29 00:16:21.275 - error: admin.0 (1472) Cannot check file: C:\Program Files\iobroker\Test\log/iobroker.2019-12-28.log 2019-12-29 00:16:23.543 - error: admin.0 (1472) Cannot check file: C:\Program Files\iobroker\Test\log/iobroker.2019-12-28.log 2019-12-29 00:16:47.526 - error: admin.0 (1472) Cannot check file: C:\Program Files\iobroker\Test\log/iobroker.2019-12-28.log -
@Jan1 said in Beta-Test js-controller 2.2.x GitHub:
Aber ein Issue dazu darfst erstellen
Ist erledigt! Und .... ich hasse Englisch ;)
@Einstein67 kannst auch deutsch :-)
-
V 2.2.2
Das ist Neu:undefined2019-12-29 00:16:21.275 - error: admin.0 (1472) Cannot check file: C:\Program Files\iobroker\Test\log/iobroker.2019-12-28.log 2019-12-29 00:16:23.543 - error: admin.0 (1472) Cannot check file: C:\Program Files\iobroker\Test\log/iobroker.2019-12-28.log 2019-12-29 00:16:47.526 - error: admin.0 (1472) Cannot check file: C:\Program Files\iobroker\Test\log/iobroker.2019-12-28.log@sigi234 Hm ... ... da scheint wohl das neue "rotieren als .gz" den Admin Adapter an der Stelle aus dem Tritt zu bringen ... Schau mal bitte ins Logs verzeichnis auf den Timestamp vom Logfile vom 28.12. mit gz Endung ... Ist der eventuell ähnlich?
-
@sigi234 Hm ... ... da scheint wohl das neue "rotieren als .gz" den Admin Adapter an der Stelle aus dem Tritt zu bringen ... Schau mal bitte ins Logs verzeichnis auf den Timestamp vom Logfile vom 28.12. mit gz Endung ... Ist der eventuell ähnlich?
@apollon77 sagte in Beta-Test js-controller 2.2.x GitHub:
@sigi234 Hm ... ... da scheint wohl das neue "rotieren als .gz" den Admin Adapter an der Stelle aus dem Tritt zu bringen ... Schau mal bitte ins Logs verzeichnis auf den Timestamp vom Logfile vom 28.12. mit gz Endung ... Ist der eventuell ähnlich?
