<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[js-controller 4.0.x jetzt für alle User im STABLE!]]></title><description><![CDATA[<p dir="auto">Hallo ioBroker-Community,</p>
<p dir="auto">nach längerer Entwicklungszeit kommt heute der neue js-controller 4.0 (Releasename "Isabelle") für alle User ins Stable Repository (sollte im laufe des Abends bei allen auftauchen). Dieser Artikel enthält alle wichtigen Infos zu diesem Release und im zweiten Post eine kleine FAQ.<br />
Ich bedanke mich bei allen fleißigen Testern der Community während der Beta Phase!</p>
<p dir="auto"><strong>Node.js Versions-Anforderungen</strong><br />
In diesem Release entfällt Node.js 10.x, welches seit April letztem Jahr nicht mehr gepflegt wird. Node.js 16.x ist dazugekommen. Die unterstützten Node.js Versionen sind damit: 12.x, 14.x und 16.x. <strong>Die empfohlene Node.js Version für ioBroker heben wir mit diesem Release auf 14.x an (siehe auch <a href="https://forum.iobroker.net/topic/49480/node-js-10-x-ist-tot-es-lebe-node-js-14">https://forum.iobroker.net/topic/49480/node-js-10-x-ist-tot-es-lebe-node-js-14</a>).</strong> Node.js 16.x wird mit js-controller 4.0 nun auch mit npm 7 bzw. 8 unterstützt.<br />
<strong>Bitte beachtet weiterhin bei Node.js Updates die Anleitung im Forum unter <a href="https://forum.iobroker.net/topic/44566/how-to-node-js-f%C3%BCr-iobroker-richtig-updaten-2021-edition">https://forum.iobroker.net/topic/44566/how-to-node-js-für-iobroker-richtig-updaten-2021-edition</a> . Infos ebenso hier in der FAQ hier im Thread.</strong></p>
<p dir="auto"><strong>Informationen zur Version</strong><br />
Neben einigen Optimierungen und Verbesserungen stand der Haupt-Fokus dieser Version auf Performance-Verbesserungen. Ein paar neue Features sind aber ebenfalls hinzugekommen. Auch daran den Wildwuchs in der Umsetzung einiger Adapter etwas einzugrenzen wurde weiter gearbeitet, was ggf. zu neuen Log-Meldungen für bestimmte Fälle führt. Bitte unterstützt hier wieder und legt bei den relevanten Adaptern im GitHub Issues an, damit diese Dinge gefixt werden können.</p>
<p dir="auto">Mit dem js-controller 4.0 wird intern die Datenbank von "file" auf "jsonl" umgestellt. Dies geschieht bei der Installation automatisch ohne weitere Aktionen, wenn file genutzt wird. Weitere Details dazu sieht in der FAQ (Post #2)! Nach erfolgter Migration erscheint beim nächsten Öffnen (oder Reloads falls offen) des Admin5 auch eine Information dazu:</p>
<p dir="auto"><img src="/assets/uploads/files/1643660904741-jsonl-warnung-resized.png" alt="jsonl-warnung.png" class=" img-fluid img-markdown" /></p>
<p dir="auto">Für Redis Installationen haben wir ein Problem entdeckt, welches von der betriebssystem-Konfiguration von dem Host abhängt wo der Redis-Server drauf läuft. Wer also Redis als Datenbank nutzt bitte unter <a href="https://forum.iobroker.net/topic/52976/wichtiger-hinweis-f%C3%BCr-redis-installationen">https://forum.iobroker.net/topic/52976/wichtiger-hinweis-für-redis-installationen</a> nachsehen und sein System prüfen und potentiell beheben.</p>
<p dir="auto">Detailliertere Informationen zu allen Änderungen und Features findet Ihr weiter unten und im Changelog.</p>
<p dir="auto">In Summe sind in dieser Version wieder über 120 Änderungen in über 450 commits eingeflossen. Dafür bedanke mich diesmal wieder besonders bei foxriver76, AlCalzone und natürlich Bluefox und auch ein paar weiteren Entwicklern für die aktive Mitarbeit an dieser Version!</p>
<p dir="auto">Der js-controller 4.0 ist generell kompatibel mit allen bestehenden ioBroker-Systemen. Ein Update von der 2.0/2.1/2.2/3.x ist problemlos möglich. Wir empfehlen allerings vor dem Update auf die 4.0 idealerweise ein Update auf die 3.3.x durchzuführen, da ein Downgrade nach einem erfolgten Update nur auf eine 3.3.x möglich ist (siehe FAQ)! Nur die Node.js Version muss weiterhin mindestens 12.x sein, wie oben bereits ausgeführt.</p>
<p dir="auto"><strong>Aktuell ist nur node-red &lt;2.4.2 inkompatibel, aber es gibt noch einige Versions-Empfehlungen weiter unten.</strong></p>
<hr />
<h3>Installation</h3>
<hr />
<h4>VOR der Installation</h4>
<p dir="auto">Wie bei jedem Test dieser Art: Bitte macht ein Backup! <code>iobroker backup</code> bzw. kopieren des <code>iobroker-data</code> Verzeichnisses reichen an sich aus. Bitte <strong>nicht</strong> das node_modules Verzeichnis einfach kopieren, da sonst symbolische Links kaputt gehen können, was zu größeren Problemen danach führt. Eine alte 3.3.x-Version des js-controller kann im Notfall einfach wieder per <code>npm install iobroker.js-controller@version</code> ("version" durch die gewünschte Versionsnummer ersetzen, vorher ins ioBroker Verzeichnis wechseln <code>cd /opt/iobroker</code>) installiert werden und sollte alles wieder herstellen.</p>
<p dir="auto">Für die User, welche die experimentelle JSONL-Datenbank bereits einsetzen, ändert sich nichts - ausser das dieser Datenbank-Typ nun die offizielle ist :-)</p>
<h5>Nötige Adapter-Aktualisierungen</h5>
<h4>Aktuell sind drei Adapter bekannt, welche aktualisiert werden müssen bzw. sollten:</h4>
<ul>
<li>Backitup sollte auf 2.3.3+ aktualisiert sein, damit vor allem Restores mit js-controller 4 sauber funktionieren</li>
<li>Admin sollte auf 5.3.1+ aktualisiert sein, damit alle Settings für den js-controller 4 korrekt editiert werden können</li>
<li>Node-Red muss auf Verson 2.4.2 aktualisiert sein, da der Adapter sonst nicht funktioniert</li>
<li>km200 (see <a href="https://github.com/frankjoke/ioBroker.km200/issues/69" rel="nofollow ugc">https://github.com/frankjoke/ioBroker.km200/issues/69</a>): Fix is described in <a href="https://forum.iobroker.net/post/760260">https://forum.iobroker.net/post/760260</a></li>
<li>systeminformation Am Ende der gleiche wie wie direkt oben drüber bei km200</li>
</ul>
<p dir="auto">Am besten dennoch 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 4.0 hinweisen.</p>
<p dir="auto">Es werden aber, wie oben ausgeführt, einige Adapter ggf. Warnungen ins Log schreiben - und ggf kommen ein paar neue dazu, welche aber primär bei Objektanlagen interessant sind und weniger im Betrieb "nerven". Meldungen die vor dem Upgrade im Log waren sind jetzt auch noch da.<br />
Bitte zuerst versuchen die gemeldeten Objekt-IDs via Admin zu löschen und den Adapter neu zu starten. Wenn die Meldungen danach nicht weg sein sollten ist aktuell die einzige Option das Loglevel der betroffenen Instanz auf "Warning" zu setzen - aber erst nachdem die Logs idealerweise in einem GitHub-Issue beim entsprechendem Adapter gemeldet wurden!</p>
<h4>Achtung: MASTER-Systeme Reihenfolgen beachten!</h4>
<p dir="auto">Bei einem Multi-Host-System, welches auf js-controller 2.2 oder 3.x läuft, ist es beim Update auf Version 4.0 empfohlen, zuerst das Master-System zu aktualisieren. Der Master muss dann wieder gestartet werden. Die Slaves werden danach aktualisiert!</p>
<p dir="auto">Bei Updates von Master/Slave-Systemen mit js-controller 1.5 oder früher auf die 4.0 müssen zwingend zuerst die Slaves und der Master als letztes aktualisiert werden. Beim Slave Update muss der alte Master aber noch laufen. Die Slaves bleiben nach dem Update offline und können sich nicht zum Master verbinden und werden erst wieder funktionieren wenn auch der Master auf die 4.0 aktualisiert wurde!</p>
<p dir="auto"><strong>Windows</strong></p>
<p dir="auto">Aus der Community kommt von <a class="plugin-mentions-user plugin-mentions-a" href="/user/sigi234" aria-label="Profile: sigi234">@<bdi>sigi234</bdi></a>  eine Anleitung für ein Windows Update <a href="https://forum.iobroker.net/topic/51574/windows-installation-update">https://forum.iobroker.net/topic/51574/windows-installation-update</a></p>
<p dir="auto">Für alle "alten manuellen" Installationen gilt</p>
<ul>
<li><code>iobroker update</code></li>
<li>ioBroker muss gestoppt sein.</li>
<li>Vor dem Update bitte prüfen das keine Prozesse mehr laufen</li>
<li><code>iobroker upgrade self</code></li>
<li>ioBroker starten</li>
</ul>
<p dir="auto"><strong>Linux</strong></p>
<p dir="auto"><strong>ACHTUNG: Wer von einer kleineren js-controller Version als 3.2 kommt, sollte direkt per npm installieren und NICHT per <code>iob uograde self</code>!!</strong></p>
<ul>
<li><code>iobroker update</code> (Repository aktualisieren)</li>
<li><code>iobroker stop</code></li>
<li>prüfen das keine Prozesse (Adapter, Backups) mehr laufen (<code>ps auxww|grep io</code> und auch <code>ps auxww|grep backup</code> ). Es passiert manchmal das trotz dem Stoppen noch Zombies zurückbleiben</li>
<li><code>iobroker fix</code> (Alle Rechte im Dateisystem, Linux-Pakete u.ä. aktualisieren)</li>
<li><code>iobroker upgrade self</code> (Ausführung des Updates)</li>
<li><code>iobroker start</code></li>
</ul>
<h4>Die Installation wird - wenn Sie von einem 2.x/3.x-System aus erfolgt - einige Warnungen/Fehler loggen. Wenn diese aussehen wie im folgenden Bild gezeigt (GET/SET-UNSUPPOTED bzw LUA script load error), ist dies erwartet und ok!</h4>
<pre><code>Update js-controller from @3.3.22 to @4.0.15
npm install iobroker.js-controller@4.0.15 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System call)
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.features.useSets"]
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.protocolVersion"]
Server States 127.0.0.1:60678 Error from InMemDB: Error: GET-UNSUPPORTED for namespace meta.: Data=["meta.states.protocolVersion"]
Server States 127.0.0.1:60680 Error from InMemDB: Error: PSUBSCRIBE-UNSUPPORTED for namespace meta.: Data=["meta.*"]
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: Unknown LUA script load
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: Unknown LUA script load
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: Unknown LUA script load
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: SET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.features.useSets",{"type":"Buffer","data":[49]}]
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: multi NOT SUPPORTED
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: sadd NOT SUPPORTED
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: exec NOT SUPPORTED
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: multi NOT SUPPORTED
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: sadd NOT SUPPORTED
Server Objects 127.0.0.1:37942 Error from InMemDB: Error: exec NOT SUPPORTED
</code></pre>
<p dir="auto"><strong>Wichtig: Falls es bei Updates von js-controller 3.2.x bei update oder upgrade einen Fehler gibt "No connection to database" dann bitte nochmals versuchen und wenn es wieder passiert folgende Schritte ausführen</strong>:</p>
<ul>
<li>Editiere /opt/iobroker/iobroker-data/iobroker.json</li>
<li>Unter objects und states gibt es jeweils ein ' "connectTimeout": 2000,`</li>
<li>Zahl ändern auf 5000</li>
<li>Neu versuchen</li>
<li>Der Wert kann so bleiben weil er eh beim js-controller 4 der neue Standardwert ist</li>
</ul>
<p dir="auto"><strong>Bei Fehlern:</strong><br />
Wenn bei der Installation Fehler wegen fehlender Zugriffsrechte auftreten, am besten den Installation-Fixer (<code>iobroker fix</code> wer schon einen js-controller 2.x oder höher hat, alternativ weiterhin manuell via <code>curl -sL https://iobroker.net/fix.sh | bash -</code>) nutzen und die Installation wiederholen.<br />
Falls es auch danach noch Fehler gibt, bitte die Installation erneut mittels <code>sudo -H -u iobroker npm install iobroker.js-controller</code> versuchen. Bitte berichtet solche Fälle hier im Thread.</p>
<p dir="auto">Die Installation kann ggf. Warnungen ausspucken über potentiell "deprecated" NPM Module oder Compiler-Warnungen oder (bei optionalen Paketen auch -Fehler) anzeigen (z.B, unix_dgram, serialport, pam_authentication und ggf andere). Hier gilt wie immer: Ignorieren :-)<br />
Ebenso eine Aufforderung "npm audit fix" auszuführen kann ignoriert werden!</p>
<h4>NACH der Installation</h4>
<p dir="auto">Nach der Installation sollte der ioBroker automatisch wieder starten. Falls doch nicht bitte mittels <code>iobroker start</code> starten.</p>
<p dir="auto">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.</p>
<p dir="auto">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!</p>
<p dir="auto">Wie bereits gesagt, viele Änderungen fanden hinter den Kulissen statt.</p>
<p dir="auto"><strong>BREAKING CHANGES</strong></p>
<ul>
<li>Support for Node.js 10 is dropped! Supported are Node.js 12.x, 14.x and 16.x</li>
<li>CLI command <code>iob update --updateable</code> changed to <code>iob update --updatable</code></li>
<li>CLI command <code>iob update http://download.iobroker.net/sources-dist.json</code> is not supported anymore</li>
<li>CLI command <code>iob rebuild adaptername</code> is no longer supported because of the new way of automatic rebuilds and some unwanted side effects</li>
<li>CLI command <code>iob state get &lt;id&gt;</code> will no longer handle binary state values (which was never really working before). We added <code>iob state getBinary &lt;id&gt; &lt;encoding&gt;</code> as new way.</li>
<li>Ensure that on a backup-restore the same adapters and adapter versions are restored as existing on backup time. Also check js-controller version and error on mismatch (is allowed to be forced accepted by --force parameter for restore)</li>
<li>The "file" database will be automatically converted into JSONL and the database types that use "file" are adjusted to "jsonl" on installation (and backup restore). This means that a rollback of js-controller is only possible to 3.3 after 4.0 was installed! Rollback to former versions require a manual migration to "file" DB before the downgrade! (COMMUNICATION, TESTFOKUS)</li>
</ul>
<p dir="auto">Hier für Interessierte als Spoiler noch alle weiteren Änderungen als Zusammenfassung:<br />
</p><section class="spoiler-wrapper"><button class="spoiler-control btn btn-default">Spoiler</button><section style="display:none" class="spoiler-content"><br />
<strong>Features</strong><p></p>
<ul>
<li>(bluefox) Added complexity rules for user passwords: New created passwords need to follow the following rules (TODO ADMIN UI INFO ISSUE):
<ul>
<li>minimum length is 8</li>
<li>contains at least one digit</li>
<li>contains at least one lower case letter</li>
<li>contains at least one upper case letter</li>
</ul>
</li>
<li>(foxriver76) Introduce option "--custom" when deleting instances or adapter to also clean up relevant custom entries from all objects (TODO ADMIN ISSUE ADD CHECKBOX!, TESTFOKUS)</li>
<li>(foxriver76) Added new host objects to provide Node.js version and PID</li>
<li>(foxriver76) Updated the Linux capabilities on js-controller start when a Node.js version change was detected (and initial on first run)</li>
<li>(AlCalzone/foxriver76) Further optimize strategy for required Node.js module rebuilds. We first try to run rebuild in root package and if still packages are left (or it fails) we try to rebuild the really affected modules alone. Should give better results then former strategy (TESTFOKUS)</li>
<li>(bluefox) Added support for configuring multiple repositories (TODO LINK+INFO FLAG)</li>
<li>(Apollon77) Streamline logging configuration for all available transports: A set Loglevel in config means that this loglevel is pinned for the transport for all cases. An Empty/not set level ("Default" in Admin) means that logging is dynamic and can be adjusted per Instance controller or loglevel state on the fly.</li>
<li>(foxriver76) Added installedFrom info to adapter start log line when not installed from npm normally</li>
</ul>
<p dir="auto"><strong>Optimizations and Fixes</strong></p>
<ul>
<li>(Apollon77/foxriver76) Improve performance of object deletions (also when deleting instances or adapters) significantly (file-db 4x faster, jsonl-db 14x faster, redis 360x% !! faster)</li>
<li>(foxriver76/Apollon77) Improve performance for redis object searches by up to 2,5x by using lookup structures for object types and custom object properties. This optimization is only active for single host redis systems automatically, but can be activated for multihost redis systems too after all hosts are (and stay!) on js-controller 4.0! (TODO DOCS)</li>
<li>(foxriver76/Apollon77) Improve performance for object searches in general by limiting search namespaces to the relevant ones automatically</li>
<li>(foxriver76) Improve handling of backup restores when custom hostnames were used (especially relevant for Docker usage)</li>
<li>(foxriver76) Optimize backup to make sure invalid user-generated JSONs do not prevent backups from being considered valid</li>
<li>(foxriver76/klein0r) Improved CLI help</li>
<li>(foxriver76) Preserve changed instance names also when updating adapter (name was reset before)</li>
<li>(foxriver76) stop adapters on Windows prior update to prevent EBUSY</li>
<li>(foxriver76) Prevent crashes for uploads with invalid adapter installations</li>
<li>(bluefox) Removed news from instance/adapter objects on install/update because taken from repository in Admin5 (TODO CHECK ADMIN4 EFFECTS)</li>
<li>(AlCalzone) Removed extraneous "npm install" inside adapter directory</li>
<li>(foxriver76/AlCalzone) reduce <code>JSONL</code> compression frequency to reduce I/O (relevant when experimental <code>JSONL</code> database modules are used)</li>
<li>(foxriver76) prevent uploading js-controller (creating system.adapter.js-controller object) and remove existing cases on setup first</li>
<li>(foxriver76) prevent crash when multihost password is invalid  and multihost active</li>
<li>(bluefox/foxriver76) bigger internal refactorings in cli commands (TESTFOKUS)</li>
<li>(foxriver76) made logging of not fulfilled adapter dependencies more user-friendly</li>
<li>(foxriver76) Check user and group assignments and remove unknown users from groups (could have happened in earlier versions) in setup first</li>
<li>(foxriver76) Prevent crash on adapter install/update if version string in repo is invalid</li>
<li>(AlCalzone) Update and optimize JSONL database integration and configuration options</li>
<li>(foxriver76) make sure that settings for file/jsonl DB in configfile are also respected</li>
<li>(foxriver76) Update seq integration for logging</li>
<li>(foxriver76) If logging can not be initialized because of a fatal error do not start js-controller</li>
<li>(foxriver76) Prevent start of a debug session for an instance that is already running</li>
<li>(Apollon77) Fix an edge case for file db which could lead to main and backup file being broken in strange situations with multiple crashes in a row</li>
<li>(foxriver76) make sure that admin, backitup and discovery instances are created when update of controller happens if installed and no instance exists</li>
<li>(Apollon77) Optimize Stop Handling to prevent errors</li>
<li>(Apollon77) Optimize Adapter process initialization to prevent edge case errors</li>
<li>(foxriver76) Optimize meta object sync</li>
<li>(Apollon77) make sure to really end CLI process when they should end in error cases</li>
<li>(Apollon77) catch error when streaming data to stdout and this is closed already</li>
<li>(Apollon77) Optimize some special cases on adapter start</li>
<li>(AlCalzone) Prevent issues when backup interval is configured with invalid values</li>
<li>(AlCalzone) Prevent db-file-locking issues for jsonl database; the connectTimeout for databases is now minimum 5s (overrides lower values from configuration)</li>
<li>(foxriver76) allow instance deletion when executed from an other host</li>
<li>(foxriver76) stop the database before executing upgrade self; Will be effective for all upgrades &gt;4.0.5</li>
<li>(Apollon77/foxriver76) Optimize database initialization and destroys</li>
<li>(Apollon77) Update winston-syslog to prevent errors</li>
<li>(Apollon77, foxriver76, bluefox, AlCalzone) Several fixes and refactorings to prevent potential crash cases reported by Sentry and other sources</li>
</ul>
<p dir="auto"><strong>Developer relevant DEPRECATIONS/WARNINGS</strong></p>
<ul>
<li><strong>js-controller is no longer installable from GitHub because is now a monorepo. Use <code>@dev</code> tag on npm to get the nightly build of master js-controller!</strong></li>
<li>log info when <code>setState</code> is used for an object of type file - use <code>setBinaryState</code> instead!</li>
<li>log info when default value of an object is invalid (e.g. does not match object type)</li>
<li>log info when <code>common.states</code> is used and not an object (deprecate String usage)</li>
<li>log info when <code>common.min</code>/<code>common.max</code> exists on non numbers and contain invalid values/types</li>
<li>add get/setForeignBinaryState methods as copy from get/setBinaryState allow adapter to migrate; get/setBinaryState will be changed in 4.1 to be "non Foreign"</li>
<li>Enhanced object checks: adapter need to have a name as string</li>
<li>Decline calls for getForeignObjects with non string pattern (was pot. crashing before)</li>
<li>adapter.tools is deprecated and replaced by a shim. Use methods in adapter class or adapter-core instead or open issues if you need more internal functions<br />
The object view definition "custom/state" is now removed from js-controller after being replaced by "system/custom" in js-controller 3.3. All relevant adapters are updated (COMMUNICATION)</li>
<li>remove all <em>Fifo</em> Methods from adapter.js because deprecated since 1.x</li>
<li>remove adapter.objects.* methods because deprecated since 2.x</li>
</ul>
<p dir="auto"><strong>Developer relevant new Features</strong></p>
<ul>
<li>(jogibear9988) Add new "unload-safe" promise based "adapter.delay" method to delay further code execution, but still make sure code do not continue after unload was called. This method can <strong>not</strong> be used inside the "unload" method itself!</li>
<li>(jogibear9988/AlCalzone/foxriver76/Apollon77) Revamp adapter.*Timeout and adapter.*Interval methods to be "unload-safe" and also clear missing timeouts without warnings for more developer convenience! The methods to set a timeout or interval can <strong>not</strong> be used inside the "unload" method itself!</li>
<li>(foxriver76) Allow to set "null" for common.states and not log error for object (also for extend)</li>
<li>(AlCalzone) Introduce new methods in tools for Node.js module management: installNodeModule, uninstallNodeModule (TODO Issues adapter that use npm install -&gt; Move))</li>
<li>(bluefox) Add license management functionality to host. Adapters can use adapter.getSuitableLicenses to get available relevant licenses (TODO DOCS)</li>
<li>(AlCalzone) Switch NPM relevant handling to library pak to be more flexible for the future which package manager we want to use. Important: There are still parts that rely on npm for now!</li>
<li>(bluefox) Also report docker info when sending diag data</li>
<li>(foxriver76) Add server time to getHostInfo message</li>
<li>(foxriver76) For multihost clusters with js-controller 4.0+ the hosts automatically determine a "primary" host that can be used js-controller internally (right now, preparation for future topics)</li>
<li>(Apollon77) Add database types to crash data reported to sentry</li>
</ul>
<p dir="auto"><strong>Developer relevant Optimizations and Fixes</strong></p>
<ul>
<li>(foxriver76) fixed permissionError on setBinaryState</li>
<li>(foxriver76) preserve "native" content for instanceObjects when updating the objects on adapter start</li>
<li>(Apollon77/foxriver76) Limit the search scope for object types host, adapter, instance, instanceStats, enum, script, group, user, config to the relevant namespaces when no search start/end is provided to speedup these calls in general</li>
<li>(foxriver76) Optimize deleteDevice/deleteChannel methods to just delete all objects the relevant device/channel</li>
<li>(foxriver76) Removed some magic path lookups  to be compatible to npm 7/8. <code>Appname</code> of controller is now always "iobroker" ("ioBroker" in dev cases)</li>
<li>(foxriver76) Also use Sentry (if enabled/allowed) in CLI commands whenever database is initialized to report crashes from CLI if they happen</li>
<li>(foxriver76) Introduce a database protocol version number to allow detection of the available database features in multihost environments</li>
<li>(bluefox) Prevent issues when using adapter.addChannelToEnum because of missing callback</li>
<li>(foxriver76) make sure autoSubscribe works as expected in all cases</li>
<li>(Apollon77) Correctly return null when a session is expired</li>
<li>general dependency updates</li>
<li>code style optimizations and streamline code<br />
</li>
</ul></section></section>
<hr />
<h3>Wie Fehler melden?</h3>
<hr />
<p dir="auto">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.</p>
<p dir="auto">Bitte checkt auch die "Known issues Liste" (zweiter Post) mit den Dingen die aktuell während dem Beta-Test bekannt sind und bis zum Release noch angepasst werden.</p>
<p dir="auto">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 <a href="https://github.com/ioBroker/ioBroker.js-controller/issues" rel="nofollow ugc">js-controller Projekt</a> ö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.</p>
<h4>Wir wünschen allen viel Spaß mit der neuen Version des js-controller.</h4>
<p dir="auto">Ingo</p>
]]></description><link>https://forum.iobroker.net/topic/52886/js-controller-4-0-x-jetzt-für-alle-user-im-stable</link><generator>RSS for Node</generator><lastBuildDate>Tue, 18 Aug 2026 05:45:18 GMT</lastBuildDate><atom:link href="https://forum.iobroker.net/topic/52886.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 25 Feb 2022 18:44:58 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Fri, 15 Sep 2023 11:41:00 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/thomas-braun" aria-label="Profile: thomas-braun">@<bdi>thomas-braun</bdi></a> ok! <img src="https://forum.iobroker.net/assets/plugins/nodebb-plugin-emoji/emoji/android/1f453.png?v=ba16ebd4856" class="not-responsive emoji emoji-android emoji--eyeglasses" style="height:23px;width:auto;vertical-align:middle" title=":eyeglasses:" alt="👓" /></p>
]]></description><link>https://forum.iobroker.net/post/1043926</link><guid isPermaLink="true">https://forum.iobroker.net/post/1043926</guid><dc:creator><![CDATA[Homoran]]></dc:creator><pubDate>Fri, 15 Sep 2023 11:41:00 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Fri, 15 Sep 2023 11:34:44 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/homoran" aria-label="Profile: homoran">@<bdi>homoran</bdi></a> sagte in <a href="/post/1043917">js-controller 4.0.x jetzt für alle User im STABLE!</a>:</p>
<blockquote>
<p dir="auto">sollte IMHO dieser Thread leicht zu finden sein.</p>
</blockquote>
<p dir="auto">Warum? js-controller <strong>4</strong> ist Geschichte.</p>
]]></description><link>https://forum.iobroker.net/post/1043923</link><guid isPermaLink="true">https://forum.iobroker.net/post/1043923</guid><dc:creator><![CDATA[Thomas Braun]]></dc:creator><pubDate>Fri, 15 Sep 2023 11:34:44 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Fri, 15 Sep 2023 11:25:30 GMT]]></title><description><![CDATA[<p dir="auto">@mcm57 sagte in <a href="/post/1043903">js-controller 4.0.x jetzt für alle User im STABLE!</a>:</p>
<blockquote>
<p dir="auto">DIESES Topic könnte man m.E. unpinnen.</p>
</blockquote>
<p dir="auto">warum?<br />
hab jetzt doch schon den beta-thread geschlossen.</p>
<p dir="auto">damit nicht zuviel verstreute Informationen entstehen sollte IMHO dieser Thread leicht zu finden sein.</p>
]]></description><link>https://forum.iobroker.net/post/1043917</link><guid isPermaLink="true">https://forum.iobroker.net/post/1043917</guid><dc:creator><![CDATA[Homoran]]></dc:creator><pubDate>Fri, 15 Sep 2023 11:25:30 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Fri, 15 Sep 2023 11:07:19 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/apollon77" aria-label="Profile: apollon77">@<bdi>apollon77</bdi></a><br />
<a class="plugin-mentions-user plugin-mentions-a" href="/user/homoran" aria-label="Profile: Homoran">@<bdi>Homoran</bdi></a></p>
<p dir="auto">DIESES Topic könnte man m.E. unpinnen.</p>
<p dir="auto">mcm1957</p>
]]></description><link>https://forum.iobroker.net/post/1043903</link><guid isPermaLink="true">https://forum.iobroker.net/post/1043903</guid><dc:creator><![CDATA[mcm1957]]></dc:creator><pubDate>Fri, 15 Sep 2023 11:07:19 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Wed, 28 Sep 2022 07:56:29 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/snapergy" aria-label="Profile: snapergy">@<bdi>snapergy</bdi></a> Und die freien Geräte in der 2.0 reichen Dir nicht? Dann tut es mir leid aber kann ich nicht weiter helfen.</p>
<ul>
<li>knx 2.0 nutzen und ggf eine Lizenz erwerben oder</li>
<li>openknx Adapter versuchen</li>
</ul>
]]></description><link>https://forum.iobroker.net/post/864786</link><guid isPermaLink="true">https://forum.iobroker.net/post/864786</guid><dc:creator><![CDATA[apollon77]]></dc:creator><pubDate>Wed, 28 Sep 2022 07:56:29 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Wed, 28 Sep 2022 07:28:22 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/apollon77" aria-label="Profile: apollon77">@<bdi>apollon77</bdi></a> 1.0.46 existiert laut console nicht, habe es mit der 1.0.45 versucht, aber da klappt es leider nicht...</p>
]]></description><link>https://forum.iobroker.net/post/864767</link><guid isPermaLink="true">https://forum.iobroker.net/post/864767</guid><dc:creator><![CDATA[Snapergy]]></dc:creator><pubDate>Wed, 28 Sep 2022 07:28:22 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Tue, 30 Aug 2022 09:28:36 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/apollon77" aria-label="Profile: apollon77">@<bdi>apollon77</bdi></a> wie oben schon geschrieben habe ich die V1.31 im Einsatz. Ich werde das Ganze nochmal mit der v1.46 testen</p>
]]></description><link>https://forum.iobroker.net/post/849942</link><guid isPermaLink="true">https://forum.iobroker.net/post/849942</guid><dc:creator><![CDATA[Snapergy]]></dc:creator><pubDate>Tue, 30 Aug 2022 09:28:36 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Mon, 29 Aug 2022 16:16:43 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/snapergy" aria-label="Profile: snapergy">@<bdi>snapergy</bdi></a> Ja welche version nutzt du denn? Meines wissens nach tut die 1.0.46 problemlos - also mindestens der hier genannte Fehler ist da nicht drin ...</p>
]]></description><link>https://forum.iobroker.net/post/849474</link><guid isPermaLink="true">https://forum.iobroker.net/post/849474</guid><dc:creator><![CDATA[apollon77]]></dc:creator><pubDate>Mon, 29 Aug 2022 16:16:43 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Mon, 29 Aug 2022 10:18:28 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/apollon77" aria-label="Profile: apollon77">@<bdi>apollon77</bdi></a> Einen issua gibt es dazu schon von einem anderen Nutzer, dort gibt es bis heute keinen response. Aktualisieren ist halt nicht so einfach, da der adapter ab V2 kostenpflichtig wird und innerhalb von V1.X keine, für mich funktionierende, version existiert. Also alles ein wenig kompliziert :(</p>
]]></description><link>https://forum.iobroker.net/post/849371</link><guid isPermaLink="true">https://forum.iobroker.net/post/849371</guid><dc:creator><![CDATA[Snapergy]]></dc:creator><pubDate>Mon, 29 Aug 2022 10:18:28 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Mon, 29 Aug 2022 09:57:50 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/snapergy" aria-label="Profile: snapergy">@<bdi>snapergy</bdi></a> knx Adapter issue machen. Bzw falls knx nicht aktuell ist dann bitte aktualisieren!!</p>
]]></description><link>https://forum.iobroker.net/post/849364</link><guid isPermaLink="true">https://forum.iobroker.net/post/849364</guid><dc:creator><![CDATA[apollon77]]></dc:creator><pubDate>Mon, 29 Aug 2022 09:57:50 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Mon, 29 Aug 2022 09:50:27 GMT]]></title><description><![CDATA[<p dir="auto">Ich habe gerade das Update gemacht und habe aber bei meinem KNX-Adapter ein Problem. Es kommen immer folgende Meldungen und der Adapter (V1.31 -&gt; ich weiß, ist nicht die aktuellste, aber für meine Zwecke die, die am besten funktioniert) startet nicht mehr :(</p>
<pre><code>knx.0
	2022-08-29 11:32:37.213	error	Cannot read property 'getObjectView' of undefined
knx.0
	2022-08-29 11:32:37.212	error	TypeError: Cannot read property 'getObjectView' of undefined at Object._0x2a4410 [as ready] (/opt/iobroker/node_modules/iobroker.knx/knx.js:79:30550) at /opt/iobroker/node_modules/@iobroker/js-controller-adapter/build/lib/adapter/adapter.js:8225:68
knx.0
	2022-08-29 11:32:37.208	error	unhandled promise rejection: Cannot read property 'getObjectView' of undefined
knx.0
	2022-08-29 11:32:37.208	error	Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
</code></pre>
<p dir="auto">Vielleicht kann mir jemand hier direkt helfen und auf eine Lösung aufmerksam machen. Bin gerade erstmal wieder auf die JS-Controller-Version 3.3.22 zurück</p>
]]></description><link>https://forum.iobroker.net/post/849361</link><guid isPermaLink="true">https://forum.iobroker.net/post/849361</guid><dc:creator><![CDATA[Snapergy]]></dc:creator><pubDate>Mon, 29 Aug 2022 09:50:27 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Sun, 21 Aug 2022 20:08:26 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/rocket85" aria-label="Profile: rocket85">@<bdi>rocket85</bdi></a> hehe .... nnneeeee am besten nicht.</p>
<p dir="auto">Am Ende zwei Varianten:</p>
<p dir="auto">1.) Backup/Restore</p>
<ul>
<li>Backup machen inkl. von iobroker-data nochmal gesondert um ggf was raussuchen zu können was doch nicht im Backup ist. Dann /opt/iobroker löschen. Dann mit Linux installer neu installieren. Beenden. Dann Backup restore ...</li>
<li>dann direkt vor dem start (!!) Alle adapter aktualisieren. Major Versionsprünge bei Adaptern aufschreiben das Du sie danach abarbeiten kannst was sich geändert hat. Starten ... Alles nach und nach hinbiegen und ggf fehlende Dateien aus Backup rausholen</li>
</ul>
<p dir="auto">2.) "Sollte tun"</p>
<ul>
<li>Backup gilt immer wie oben von allem. dann beenden. node_modules Verzeichnis löschen (rest lassen). dann in /opt/iobroker ein <code>npm install iobroker.js-controller@4.0.23 --production</code> ausführen. Dann verifizieren das <code>iob update" bzw </code>iob list instances` tut.</li>
<li>dann an aich wie oben ggf zuerst adapter aktualisieren und wie oben</li>
</ul>
<p dir="auto">Ein schrittweise update vom js-controller (Variante 3) macht in meinen Augen nur Aufwand aber bringt nicht so viele vorteile.</p>
]]></description><link>https://forum.iobroker.net/post/845740</link><guid isPermaLink="true">https://forum.iobroker.net/post/845740</guid><dc:creator><![CDATA[apollon77]]></dc:creator><pubDate>Sun, 21 Aug 2022 20:08:26 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Sun, 21 Aug 2022 15:56:17 GMT]]></title><description><![CDATA[<p dir="auto">Hallo zusammen, kann mir vielleicht jemand beim Update helfen?</p>
<p dir="auto">Komme von Version 2.2.10 und hier sollte ich wohl nicht direkt per upgrad self starten?</p>
]]></description><link>https://forum.iobroker.net/post/845637</link><guid isPermaLink="true">https://forum.iobroker.net/post/845637</guid><dc:creator><![CDATA[Rocket85]]></dc:creator><pubDate>Sun, 21 Aug 2022 15:56:17 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Wed, 10 Aug 2022 07:00:17 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/mcu" aria-label="Profile: mcu">@<bdi>mcu</bdi></a> ja. Einfach ergänzen.</p>
]]></description><link>https://forum.iobroker.net/post/840144</link><guid isPermaLink="true">https://forum.iobroker.net/post/840144</guid><dc:creator><![CDATA[apollon77]]></dc:creator><pubDate>Wed, 10 Aug 2022 07:00:17 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Tue, 09 Aug 2022 23:38:56 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/apollon77" aria-label="Profile: apollon77">@<bdi>apollon77</bdi></a> Laut Doku von oben soll es in der iobroker.json für <code>objects</code> und <code>states</code> einen Eintrag für <code>"connectionTimeouts"</code> geben.</p>
<pre><code>Editiere /opt/iobroker/iobroker-data/iobroker.json
Unter objects und states gibt es jeweils ein ' "connectTimeout": 2000,`
Zahl ändern auf 5000
</code></pre>
<p dir="auto">Bei mir gibt es den Eintrag nur für objects. Muss man den Eintrag für states ergänzen?<br />
<img src="/assets/uploads/files/1660088203587-8605e585-63ad-4ebc-9dcf-4c6bc91c05b3-image.png" alt="8605e585-63ad-4ebc-9dcf-4c6bc91c05b3-image.png" class=" img-fluid img-markdown" /><br />
<img src="/assets/uploads/files/1660088254247-17b0cb72-9a56-4e18-9d1c-e955c063792d-image.png" alt="17b0cb72-9a56-4e18-9d1c-e955c063792d-image.png" class=" img-fluid img-markdown" /></p>
]]></description><link>https://forum.iobroker.net/post/840122</link><guid isPermaLink="true">https://forum.iobroker.net/post/840122</guid><dc:creator><![CDATA[MCU]]></dc:creator><pubDate>Tue, 09 Aug 2022 23:38:56 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Sun, 03 Jul 2022 11:38:38 GMT]]></title><description><![CDATA[<p dir="auto">Danke - jetzt bin ich einen Schritt weiter. Die JS-Controller Version ist jetzt 3.3.22 .</p>
<p dir="auto">Werde mit dem Stand erst mal die VM sichern, dann alle Adapter aktualisieren und dann das Update des JS-Controllers auf 4.0.x versuchen.</p>
]]></description><link>https://forum.iobroker.net/post/822350</link><guid isPermaLink="true">https://forum.iobroker.net/post/822350</guid><dc:creator><![CDATA[matzi]]></dc:creator><pubDate>Sun, 03 Jul 2022 11:38:38 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Sun, 03 Jul 2022 11:27:31 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/matzi" aria-label="Profile: matzi">@<bdi>matzi</bdi></a> sagte in <a href="/post/822336">js-controller 4.0.x jetzt für alle User im STABLE!</a>:</p>
<blockquote>
<p dir="auto">matthias@iobroker:~$ sudo -H -u iobroker npm install iobroker.js-controller</p>
</blockquote>
<p dir="auto">Richtiger Befehl, aber im falschen Verzeichnis ausgeführt.</p>
<p dir="auto">Zuvor</p>
<pre><code>cd /opt/iobroker
sudo -H -u iobroker npm install iobroker.js-controller
</code></pre>
<p dir="auto">Und künfitg nicht so schludern mit den Updates, dann ist das alles einfacher.</p>
]]></description><link>https://forum.iobroker.net/post/822339</link><guid isPermaLink="true">https://forum.iobroker.net/post/822339</guid><dc:creator><![CDATA[Thomas Braun]]></dc:creator><pubDate>Sun, 03 Jul 2022 11:27:31 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Sun, 03 Jul 2022 11:27:23 GMT]]></title><description><![CDATA[<p dir="auto">Hallo zusammen,</p>
<p dir="auto">ich versuche mich seit paar Stunden erfolglos an dem JS-Controller update von 3.1.6 nach 4.0.x.</p>
<p dir="auto">Zu Beginn bin ich der Anleitung über den Satz gestolpert "ACHTUNG: Wer von einer kleineren js-controller Version als 3.2 kommt, sollte direkt per npm installieren und NICHT per iob uograde self!!" . Da ich absolut keine Ahnung davon habe, wie per npm installiert wird, habe ich es gemäß der Anleitung mit 'iobroker upgrade self' probiert.</p>
<p dir="auto">Dabei bekomme ich immer folgende Meldungen:</p>
<pre><code>matthias@iobroker:~$ iobroker upgrade self
Update js-controller from @3.1.6 to @4.0.23
NPM version: 8.11.0
npm install iobroker.js-controller@4.0.23 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System call)
 Objects 127.0.0.1:33972 Error from InMemDB: Error: client NOT SUPPORTED
 Objects 127.0.0.1:33972 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.features.useSets"]
 Objects 127.0.0.1:33972 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.protocolVersion"]
 Objects 127.0.0.1:33972 Error from InMemDB: Error: scan NOT SUPPORTED
 Objects 127.0.0.1:33978 Error from InMemDB: Error: client NOT SUPPORTED
 Objects 127.0.0.1:33980 Error from InMemDB: Error: client NOT SUPPORTED
 States 127.0.0.1:37326 Error from InMemDB: Error: GET-UNSUPPORTED for namespace meta.: Data=["meta.states.protocolVersion"]
 Objects 127.0.0.1:33974 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.features.useSets"]
 Objects 127.0.0.1:33974 Error from InMemDB: Error: GET-UNSUPPORTED for namespace cfg.: Data=["meta.objects.protocolVersion"]
 Objects 127.0.0.1:33974 Error from InMemDB: Error: scan NOT SUPPORTED
 States 127.0.0.1:37332 Error from InMemDB: Error: PSUBSCRIBE-UNSUPPORTED for namespace meta.: Data=["meta.*"]
 Objects 127.0.0.1:33978 Error from InMemDB: Error: PSUBSCRIBE-UNSUPPORTED for namespace cfg.: Data=["meta.*"]
npm ERR! code 1
npm ERR! path /opt/iobroker/node_modules/iobroker.js-controller
npm ERR! command failed
npm ERR! command sh -c node iobroker.js setup first
npm ERR! /opt/iobroker/node_modules/standard-as-callback/built/index.js:6
npm ERR!         throw e;
npm ERR!         ^
npm ERR!
npm ERR! ReplyError: Error scan NOT SUPPORTED
npm ERR!     at parseError (/opt/iobroker/node_modules/redis-parser/lib/parser.js:179:12)
npm ERR!     at parseType (/opt/iobroker/node_modules/redis-parser/lib/parser.js:302:14)
npm ERR! Emitted 'error' event on ScanStream instance at:
npm ERR!     at /opt/iobroker/node_modules/ioredis/built/ScanStream.js:38:22
npm ERR!     at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:12:23)
npm ERR!     at /opt/iobroker/node_modules/standard-as-callback/built/index.js:33:51
npm ERR!     at processTicksAndRejections (node:internal/process/task_queues:96:5) {
npm ERR!   command: {
npm ERR!     name: 'scan',
npm ERR!     args: [ '0', 'MATCH', 'cfg.o.system.host.*', 'COUNT', '250' ]
npm ERR!   }
npm ERR! }

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/iobroker/.npm/_logs/2022-07-03T10_45_15_147Z-debug-0.log
Starting node restart.js
</code></pre>
<p dir="auto">Danach habe ich es mit dem Befehl 'sudo -H -u iobroker npm install iobroker.js-controller' versucht und den iobroker gestartet.</p>
<pre><code>matthias@iobroker:~$ sudo -H -u iobroker npm install iobroker.js-controller
[sudo] password for matthias:

up to date, audited 284 packages in 17s

14 packages are looking for funding
  run `npm fund` for details

4 vulnerabilities (3 moderate, 1 high)

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.
</code></pre>
<p dir="auto">Egal was ich mache, ist es nach dem Start vom iobroker immer noch die js-Controller Version 3.1.6.</p>
<p dir="auto">Betriebssystem: Linux Ubuntu 18.04.6 LTS (aktualisiert)<br />
Node-JS: 16.15.1<br />
NPM: 8.11.0</p>
<p dir="auto">Was mache ich falsch?</p>
<p dir="auto">Viele Grüße<br />
Matthias</p>
<hr />
<p dir="auto"><em><strong><span style="color:#ff0000">Mod-Edit:</span></strong></em> Code in &lt;/&gt; Code-Tag gepackt!</p>
]]></description><link>https://forum.iobroker.net/post/822336</link><guid isPermaLink="true">https://forum.iobroker.net/post/822336</guid><dc:creator><![CDATA[matzi]]></dc:creator><pubDate>Sun, 03 Jul 2022 11:27:23 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Wed, 08 Jun 2022 11:18:42 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/jan-3" aria-label="Profile: jan-3">@<bdi>jan-3</bdi></a> Ich denke dein Fix zuerst auf die 3.3. zu gehen hat es zum funktionieren gebracht</p>
]]></description><link>https://forum.iobroker.net/post/811750</link><guid isPermaLink="true">https://forum.iobroker.net/post/811750</guid><dc:creator><![CDATA[apollon77]]></dc:creator><pubDate>Wed, 08 Jun 2022 11:18:42 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Tue, 07 Jun 2022 23:27:18 GMT]]></title><description><![CDATA[<p dir="auto">Endlich ( bin heute 4h dran gesessen) ...<br />
Ich hab jetzt noch mal die Anleitung mit der "manuellen Installation" durchgespielt (dachte eigentlich genau so habe ich es schon versucht) und nun ist es durchgelaufen! Juhu!</p>
]]></description><link>https://forum.iobroker.net/post/811613</link><guid isPermaLink="true">https://forum.iobroker.net/post/811613</guid><dc:creator><![CDATA[Keksmonster]]></dc:creator><pubDate>Tue, 07 Jun 2022 23:27:18 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Tue, 07 Jun 2022 23:04:10 GMT]]></title><description><![CDATA[<p dir="auto">Jetzt hats mir bei dem obrigen Versuch komplett iobroker zerschossen.</p>
<pre><code>pi@SmartHome:~ $ iobroker fix
library: loaded
Library version=2022-06-03
ioBroker is not installed in /opt/iobroker! Cannot fix anything...
</code></pre>
<p dir="auto">Habe es mit npm install iobroker.js-controller@3.3 wieder zum laufen bekommen ... Kann jede Hilfe gebrauchen :-)</p>
]]></description><link>https://forum.iobroker.net/post/811612</link><guid isPermaLink="true">https://forum.iobroker.net/post/811612</guid><dc:creator><![CDATA[Keksmonster]]></dc:creator><pubDate>Tue, 07 Jun 2022 23:04:10 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Tue, 07 Jun 2022 22:49:24 GMT]]></title><description><![CDATA[<p dir="auto">Hallo Leute!<br />
ich brauche hilfe :-(<br />
Irgendwie will mein js-controller nicht updaten. Hat jemand einen Plan, was das sein kann?</p>
<pre><code>pi@SmartHome:~ $ iobroker upgrade self
Update js-controller from @3.1.6 to @4.0.23
NPM version: 6.14.17
npm install iobroker.js-controller@4.0.23 --loglevel error --unsafe-perm --prefi                           x "/opt/iobroker" (System call)
 Objects 127.0.0.1:49952 Error from InMemDB: Error: GET-UNSUPPORTED for namespac                           e cfg.: Data=["meta.objects.features.useSets"]
 States 127.0.0.1:36718 Error from InMemDB: Error: GET-UNSUPPORTED for namespace                            meta.: Data=["meta.states.protocolVersion"]
 Objects 127.0.0.1:49952 Error from InMemDB: Error: GET-UNSUPPORTED for namespac                           e cfg.: Data=["meta.objects.protocolVersion"]
 Objects 127.0.0.1:49952 Error from InMemDB: Error: scan NOT SUPPORTED
 States 127.0.0.1:36720 Error from InMemDB: Error: PSUBSCRIBE-UNSUPPORTED for na                           mespace meta.: Data=["meta.*"]
/opt/iobroker/node_modules/standard-as-callback/built/index.js:6
        throw e;
        ^

ReplyError: Error scan NOT SUPPORTED
    at parseError (/opt/iobroker/node_modules/redis-parser/lib/parser.js:179:12)
    at parseType (/opt/iobroker/node_modules/redis-parser/lib/parser.js:302:14)
Emitted 'error' event on ScanStream instance at:
    at /opt/iobroker/node_modules/ioredis/built/ScanStream.js:38:22
    at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.j                           s:12:23)
    at /opt/iobroker/node_modules/standard-as-callback/built/index.js:33:51
    at processTicksAndRejections (internal/process/task_queues.js:95:5) {
  command: {
    name: 'scan',
    args: [ '0', 'MATCH', 'cfg.o.system.host.*', 'COUNT', '250' ]
  }
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! iobroker.js-controller@4.0.23 install: `node iobroker.js setup first`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the iobroker.js-controller@4.0.23 install script.
npm ERR! This is probably not a problem with npm. There is likely additional log                           ging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/iobroker/.npm/_logs/2022-06-07T22_40_24_484Z-debug.log
host.SmartHome Cannot install iobroker.js-controller@4.0.23: 1
pi@SmartHome:~ $
</code></pre>
<p dir="auto">Im Log steht:</p>
<pre><code>1 verbose cli [
1 verbose cli   '/usr/bin/node',
1 verbose cli   '/usr/bin/npm',
1 verbose cli   'install',
1 verbose cli   'iobroker.js-controller@4.0.23',
1 verbose cli   '--loglevel',
1 verbose cli   'error',
1 verbose cli   '--unsafe-perm',
1 verbose cli   '--prefix',
1 verbose cli   '/opt/iobroker'
1 verbose cli ]
2 info using npm@6.14.17
3 info using node@v14.19.3
4 verbose npm-session 4663683b180f216c
5 silly install loadCurrentTree
6 silly install readLocalPackageData
7 http fetch GET 304 https://registry.npmjs.org/iobroker.js-controller 1130ms (from cache)
8 silly pacote version manifest for iobroker.js-controller@4.0.23 fetched in 1218ms
9 timing stage:loadCurrentTree Completed in 23244ms
10 silly install loadIdealTree
11 silly install cloneCurrentTreeToIdealTree
12 timing stage:loadIdealTree:cloneCurrentTree Completed in 325ms
13 silly install loadShrinkwrap
14 timing stage:loadIdealTree:loadShrinkwrap Completed in 6449ms
15 silly install loadAllDepsIntoIdealTree
16 silly resolveWithNewModule iobroker.js-controller@4.0.23 checking installable status
17 silly removeObsoleteDep removing iobroker.js-controller@3.1.6 from the tree as its been replaced by a newer version or is no longer required
18 silly removeObsoleteDep removing @iobroker/plugin-sentry@1.1.4 from the tree as its been replaced by a newer version or is no longer required
19 silly removeObsoleteDep removing @iobroker/plugin-base@1.2.0 from the tree as its been replaced by a newer version or is no longer required
20 silly removeObsoleteDep removing @sentry/integrations@5.27.2 from the tree as its been replaced by a newer version or is no longer required
21 silly removeObsoleteDep removing @sentry/types@5.27.2 from the tree as its been replaced by a newer version or is no longer required
22 silly removeObsoleteDep removing @sentry/utils@5.27.2 from the tree as its been replaced by a newer version or is no longer required
23 silly removeObsoleteDep removing localforage@1.8.1 from the tree as its been replaced by a newer version or is no longer required
24 silly removeObsoleteDep removing lie@3.1.1 from the tree as its been replaced by a newer version or is no longer required
25 silly removeObsoleteDep removing @sentry/node@5.27.2 from the tree as its been replaced by a newer version or is no longer required
26 silly removeObsoleteDep removing @sentry/core@5.27.2 from the tree as its been replaced by a newer version or is no longer required
</code></pre>
]]></description><link>https://forum.iobroker.net/post/811611</link><guid isPermaLink="true">https://forum.iobroker.net/post/811611</guid><dc:creator><![CDATA[Keksmonster]]></dc:creator><pubDate>Tue, 07 Jun 2022 22:49:24 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Wed, 11 May 2022 21:20:46 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/thomas-braun" aria-label="Profile: thomas-braun">@<bdi>thomas-braun</bdi></a> said in <a href="/post/801242">js-controller 4.0.x jetzt für alle User im STABLE!</a>:</p>
<blockquote>
<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/tomk81" aria-label="Profile: tomk81">@<bdi>tomk81</bdi></a><br />
Gut, alles aktuell.<br />
Bis auf nodejs.</p>
</blockquote>
<p dir="auto">Vielen Dank.</p>
<p dir="auto">vielleicht hab ich noch fragen zu den nodejs aber nicht mehr heute.</p>
<p dir="auto">Danke euch beiden!!!!!!!!!!!!!!!!</p>
]]></description><link>https://forum.iobroker.net/post/801243</link><guid isPermaLink="true">https://forum.iobroker.net/post/801243</guid><dc:creator><![CDATA[Tomk81]]></dc:creator><pubDate>Wed, 11 May 2022 21:20:46 GMT</pubDate></item><item><title><![CDATA[Reply to js-controller 4.0.x jetzt für alle User im STABLE! on Wed, 11 May 2022 21:18:14 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/tomk81" aria-label="Profile: tomk81">@<bdi>tomk81</bdi></a><br />
Gut, alles aktuell.<br />
Bis auf nodejs.</p>
]]></description><link>https://forum.iobroker.net/post/801242</link><guid isPermaLink="true">https://forum.iobroker.net/post/801242</guid><dc:creator><![CDATA[Thomas Braun]]></dc:creator><pubDate>Wed, 11 May 2022 21:18:14 GMT</pubDate></item></channel></rss>