NEWS
Beta Test js-controller Kiera (v6.0)
-
Aktuelle Test Version 6.0.1 Veröffentlichungsdatum 10.06.2024 Hallo ioBroker-Community,
Heute möchte ich Euch den js-controller 6.0 auch für den Beta-test zur Verfügung stellen. Dieser Post enthält alle wichtigen Infos.
Vorab danke an alle fleißigen Alpha Tester.
Die Version 6.0.1 wird die erste Beta Version, die vermutlich noch heute im offiziellen Beta Repository erscheint.
Node.js Versions-Anforderungen
In diesem Release entfällt Node.js 14.x und 16.x. Die unterstützten Node.js Versionen sind: 18.x, 20.x und voraussichtlich 22.x. Die empfohlene Node.js Version für ioBroker haben wir vor kurzem auf 20.x angehoben.
Bitte beachtet weiterhin bei Node.js Updates die Anleitung im Forum unter https://forum.iobroker.net/topic/64032/update-nodejs-best-practise-supported-14-16-und-18 !Informationen zur Version
In dieser Version wurde die Umstellung des Quellcodes auf TypeScript nochmal vorangetrieben (5.X 76%, mit 6.X 90% der Codebase), wodurch am Ende die Stabilität weiter steigt weil viele Code-Fehler nicht mehr auftreten können.
Ebenfalls läuft der Controller nun komplett als ESM Modul, was uns technisch alle Möglichkeiten offen hält und auch Adapter nun komplett als ESM Module laufen können und somit keine Einschränkungen mehr haben falls Dependencies nur für ESM verfügbar sind.
Weiterhin sind auch einige neue Features unter anderem die Möglichkeit des automatisierten Adapter-Upgrades (Admin Funktionalität wird zeitnah implementiert), Informationen über das System Management (neue Pakete, restart nötig, ...) sowie das Management von geblockten Adapter-Versionen hinzugefügt.
Auch wenn mit dieser Version keine neuen relevanten Prüfungen hinzukommen, die zu Log-Ausgaben bei Adaptern führen, meldet aktuelle Logausgaben bitte weiterhin bei den Adaptern.Detailliertere Informationen zu allen Änderungen und Features findet Ihr weiter unten und im Changelog. Ich hoffe auch diesmal auf Eure tatkräftige Unterstützung, sodass der Stable-Release dann genau so reibungslos verläuft wie bei den letzten Versionen.
Für die aktive Mitarbeit an dieser Version des js-controller bedanke mich diesmal wieder besonders bei Apollon77, AlCalzone und natürlich Bluefox und auch ein paar weiteren Entwicklern!
Darüber hinaus ist der js-controller 6.0 generell kompatibel mit allen bestehenden ioBroker-Systemen. Ein Update von der Version 5.x ist problemlos möglich.
Ansonsten empfehlen wir ein schrittweises Update auf die 6.0 (3.3.x -> 4.0 -> 5.0).Installation
VOR der Installation
Wie bei jedem Test dieser Art: Bitte macht ein Backup!
iobroker backup
bzw kopieren desiobroker-data
Verzeichnisses 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.
Eine alte 5.0.x-Version des js-controller kann im Notfall einfach wieder pernpm install iobroker.js-controller@version
("version" durch die gewünschte Versionsnummer ersetzen) installiert werden und sollte alles wieder herstellen (Letzter Stable Stand ist die 5.0.19)Nötige Adapter-Aktualisierungen
Am besten VOR dem js-controller Update alle verfügbaren Adapter-Updates prüfen und alle Updates installieren, die im Changelog auf Optimierungen oder Anpassungen für den js-controller 5.0 oder höher hinweisen.
Mit den stable Versionen der jeweiligen Adapter sollten keine Probleme auftreten, falls doch bitte hier melden.Achtung: MASTER/SLAVE-Systeme Reihenfolgen beachten!
Bei einem Multi-Host-System, welches auf js-controller 5.0.x läuft, ist es beim Update auf Version 6.0 empfohlen, zuerst das Master-System zu aktualisieren. Der Master muss dann wieder gestartet werden. Die Slaves werden danach aktualisiert!
Bei Updates von Master/Slave-Systemen mit js-controller 4.x oder früher Bitte die jeweiligen Update Threads der empfohlenen Zwischenversionen prüfen.
Windows
Es wird empfohlen einmalig bei bestehenden Installationen den fixer auszuführen und falls noch vorhanden die
iobroker.bat
zu löschen.Hierzu werden folgende Befehle genutzt:
del iobroker.bat iob fix
Anschließend im ioBroker-Verzeichnis nach stoppen des ioBroker den Befehl
iob upgrade self
ausführen.Linux
Entweder den GUI installationsprozess im Admin nutzen oder
- ioBroker stoppen (iobroker stop)
- Prüfen das keine Prozesse (Adapter, Backups) mehr laufen (
ps auxww|grep io
und auchps auxww|grep backup
). Es passiert manchmal das trotz dem Stoppen noch Zombies zurückbleiben cd /opt/iobroker
- Das Update erfolgt via
iob upgrade self
- ioBroker starten (
iobroker start
)
Bei Fehlern:
Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer (
iobroker fix
wer schon einen js-controller 2.x oder höher hat, alternativ weiterhin manuell viacurl -sL https://iobroker.net/fix.sh | bash -
) nutzen und die Installation wiederholen.
Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittelsiob upgrade self
versuchen. Bitte berichtet solche Fälle hier im Thread.NACH der Installation
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.
Falls im Log Warn-Meldungen auftauchen mit dem Hinweis diese an den Entwickler zu senden, dann bitte schauen welcher Adapter es ist und entsprechend dort Issues bitte anlegen!
Was hat sich geändert, was besonders ansehen/beachten?Neben einiger weiterer Bugfixes gibt es folgende Änderungen und Fixes zu erwähnen:
- generell siehe Changelog, speziell auch für die Features
- generell bitte im CLI und auch sonst überall drüber schauen. Die Typescript und ESM Umstellungen haben sehr viel Code angefasst.
Speziell die Entwickler sollten bitte die genannten Deprecations und neuen Features anschauen und beachten.
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.
Bitte checkt auch die "Known issues Liste" (zweiter Post) mit den Dingen die aktuell während der Beta bekannt sind und bis zum Stable noch angepasst werden.
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.
Bitte postet auch die Ausgabe von
iob diag
mit rein.
Wir wünschen allen viel Spaß beim Testen und vielen Dank für Eure Unterstützung!Moritz
-
Folgende Erfahrungen haben wir bislang im Alpha und Beta Test gemacht:
Falls einer der folgenden Adapter im Einsatz ist muss er mindestens die folgende Version haben:rest-api
mindestens 2.0.1
simple-api
mindestens 2.8.0
telegram
mindestens 3.3.0
samsung
mindestens 0.6.0
heating-control
mindestens 2.12.6
daswetter
mindestens 3.1.14
rainbird
mindestens 1.0.1
nuki
noch nicht gefixt
rflink
mnindestes 2.1.12
smartgarden
nur GitHub Version
Rpi2
noch nicht gefixt -alpha
Version via GitHub verfügbar
Epson-Ecotank-ET-2750
noch nicht gefixt
fakeroku
mindestens 0.3.0
sourceanalytix
nur GitHub Version kompatibel
calendar
noch nicht kompatibel
contact
noch nicht kompatibel
sql
mindestens 3.0.1
yamaha
mindestens 0.5.4Wenn
javascript
mit zusätzlichen NPM Modulen genutzt wird, sollte mindestens Version >8.6.0 genutzt werden. -
@foxriver76 ergänze bitte auch Mal rainbird 1.0.1 in deiner Liste
-
Ich habe Probleme mit den zusätzlichen npm Modulen zum Beispiel axios. Habe es hier beschrieben
https://forum.iobroker.net/topic/75215/problem-mit-js-neuste-version-axios-get-is-not-a-function/1
-
@fuchs1978 Hm okay, mach mal ein issue beim javascript adapter. Ich denke so lange er selbst nicht in ESM geschrieben ist, müsste da
.default
nach dem import bereit gestellt werden um abwärtskompatibel zu sein. Sprich wenn du aktuell mitaxios.default.get
arbeitest geht es vermutlich aber sollte natürlich gefixt werden. -
@foxriver76 ist dies der gleiche Fehler? Möchte nicht doppelt eröffnen
-
@fuchs1978 Jop ist es, passt danke
-
Der smartgarden Adapter startet auch nicht mehr mit der aktuellen Version 2.0.1
Hab bereits ein Issue in Github dazu erstellt
-
Installation unter windows mittels windows installer (allerdings aktueller alpha) problemlos.
Downgrade auf 5.0.19 OK
Upgrade auf 6.0.1 OKHinweis: Der Windows installer wählt die jeweilige js-controller Installation je nach eingestelltem repository. Für die INstallation von 6.0.1 ist als das LATEST repository einzustellen.
@Gaspode
Kannst du bitte bestätigen / wiedersprechen ob der offizielle Installer auf der Webseite die stable/latest Auswahl auch hat? -
Nuki hat noch ein offenes Problem und scheint nicht zu laufen:
https://github.com/smaragdschlange/ioBroker.nuki/issues/76
https://github.com/smaragdschlange/ioBroker.nuki/issues/76#issuecomment-2159177328@foxriver76 :
Bitte auf die Liste der Adapter mit bekannten Problemen:nuki
smartgarden -
@mcm1957 Danke fürs schließen: "Ich frage, weil mir der gerade zum Update angeboten wird."
Ja klar ist im Beta! Nur die Updatefunktion im Admin funktioniert (natürlich) hier nicht! -
@foxriver76 das ging beim Alpha Adapter bei dir unter, der nuki Adapter läuft nicht mit 6.0.1
https://github.com/smaragdschlange/ioBroker.nuki -
@shadowhunter23 said in Beta Test js-controller Kiera (v6.0):
@foxriver76 das ging beim Alpha Adapter bei dir unter, der nuki Adapter läuft nicht mit 6.0.1
https://github.com/smaragdschlange/ioBroker.nukiHab ich eben schon gepostet (https://forum.iobroker.net/topic/75206/beta-test-js-controller-kiera-v6-0/10). Dürften sich unsere Postings überschnitten haben..
Beim Nuki und beim smart-garden müssen die Maintainer aktiv werden. Das Issue ist offen.
Für den nuki kann man ggF den nuki.extended als Ersatz prüfen.
-
@mcm1957 ja ich hab das übersehen sonst hätte ich nicht geantwortet...
Beim nuki könnte man auf den nuki.extended hinweisen als Alternative?Auf was ich auch gespannt bin was der device.watcher bei den Beta Testern macht:
https://github.com/iobroker-community-adapters/ioBroker.device-watcher/issues/353 -
Bitte rflink auf die Liste der inkompatiblen Adapter. Sieh für mich nach zu altem adapter-core (2.4.0) aus.
https://forum.iobroker.net/topic/75222/rflink-keine-serielle-schnittstelle
2024-06-10 22:13:58.617 error Caught by controller[0]: /opt/iobroker/node_modules/iobroker.rflink/main.js:43 host.raspberrypi 2024-06-10 22:13:58.618 error Caught by controller[0]: adapter = new utils.Adapter(options); host.raspberrypi 2024-06-10 22:13:58.618 error Caught by controller[0]: ^ host.raspberrypi 2024-06-10 22:13:58.619 error Caught by controller[0]: TypeError: utils.Adapter is not a constructor host.raspberrypi 2024-06-10 22:13:58.623 error Caught by controller[0]: at startAdapter (/opt/iobroker/node_modules/iobroker.rflink/main.js:43:15) host.raspberrypi
-
@mcm1957 Geht rflink in 2.1.7?
-
Hallo,
Update mit den Windows Installer erfolgreich durchgeführt.
Edit:
ioBrokerInstaller.3.2.0.d TestversionSigi234
-
@mcm1957 said in Beta Test js-controller Kiera (v6.0):
Kannst du bitte bestätigen / wiedersprechen ob der offizielle Installer auf der Webseite die stable/latest Auswahl auch hat?
Das funktioniert im aktuell offiziellen Installer leider noch nicht. In deiner Testversion gibt es auch noch eine Kleinigkeit, die nicht ganz passt. Ich melde mich für weitere Tests direkt bei dir.
Konkret geht es darum, dass das Upgrade von einer Alpha- auf eine Latest- oder Stable-Version im aktuellen Test-Installer noch nicht immer funktioniert.Edit: Was im offiziellen Installer 3.2.0 bereits geht ist, dass bei aktivem "Latest" Repository auch das Update auf die Latest Version des Controllers angeboten und durchgeführt wird, sofern zuvor keine Alpha-Version installiert war.
-
@gaspode sagte in Beta Test js-controller Kiera (v6.0):
@mcm1957 said in Beta Test js-controller Kiera (v6.0):
Kannst du bitte bestätigen / wiedersprechen ob der offizielle Installer auf der Webseite die stable/latest Auswahl auch hat?
Das funktioniert im aktuell offiziellen Installer leider noch nicht. In deiner Testversion gibt es auch noch eine Kleinigkeit, die nicht ganz passt. Ich melde mich für weitere Tests direkt bei dir.
Hätte die Version nennen sollen.
ioBrokerInstaller.3.2.0.d
-
@foxriver76 said in Beta Test js-controller Kiera (v6.0):
@mcm1957 Geht rflink in 2.1.7?
Das kann ich dir leider nicht beantworten da ich den Adapter nicht einsetze. (Einen reinen Startversuch hast du wahrscheinlich eh gemacht). Ich hab das Issue nur erstellt weil es im Forum aufgepoppt ist.
Leider hat rflink auch (noch) kein Github testing. Issue existiert - aber ob ich PR noch PR erstellen kann weiß ich nicht - muss dann Koffer packen
https://github.com/ioBroker/ioBroker.rflink/issues/48
https://github.com/ioBroker/ioBroker.rflink/issues/47Ich frag mal ob der Forumsposter testen kann / mag
https://forum.iobroker.net/topic/75222/rflink-keine-serielle-schnittstelle/13