Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. nodejs-update - post-install Check?

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.4k

nodejs-update - post-install Check?

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
9 Beiträge 2 Kommentatoren 480 Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • mcm1957M Online
    mcm1957M Online
    mcm1957
    schrieb am zuletzt editiert von
    #1

    @Thomas-Braun

    Da ich nicht weiß ob / wo nodejs-update ein Repository für Issues hat hier eine Anregung zur Diskussion.

    Man nehme folgende Situation:
    Ein System ist fehlerfrei installiert. Node.js 20 ist dort im Einsatz. Auch ein Adapter (konkret yahka) ist installiert. Alles läuft einwandfrei.

    Der User aktualisisert nun node.js auf 22. Dabei kommt es zu keinen Fehlermeldungen und auch das System läuft bzw. scheint zu laufen. Zumindest bemerkt mal der User nichts.

    Und nun versucht der User irgendeinen Adapter zu aktualisieren. Bums - Fehlermeldung dass eine Dependency eines ganz anderen Adapters nicht erfüllt ist da diese Dependency node.js <=20 erfordert.


    Hintergrund:
    yahka (1.1.4) hat als dependency 'hap-nodejs@1.1.0' welches node 18 oder 20 verlangt.


    Anregung:

    Da es wohl nicht vor einem node.js Update möglich ist ob die dependencies aller installierten Adapter diesen Update erlauben, rege an zu überlegen, ob NACH der Installation der neuen node-js Version direkt in nodejs-update getestet werden könnte ob noch alles passt. Das hätte den Vorteil, dass der User den Zusammenhang zum node-js Update sofort gemeldet bekommt und entsprechend reagieren kann (Update von Adapter, notfalls Downgrade von node.js).

    Erkennbar wäre dies m.E. durch einen Aufruf von 'npm i --dry-run'.


    Ich habe das in folgendem scenario getestet:

    • node.js 20 installiert
    • yahka 1.1.4 installiert
    • node.js auf 22 aktualisiert

    npm i --dry-run liefert mir dann eine klare Fehlermeldung:

    C:\ioBroker>npm i --dry-run
    npm warn EBADENGINE Unsupported engine {
    npm warn EBADENGINE   package: 'hap-nodejs@1.1.0',
    npm warn EBADENGINE   required: { node: '^18 || ^20' },
    npm warn EBADENGINE   current: { node: 'v22.16.0', npm: '10.9.2' }
    npm warn EBADENGINE }
    add fsevents 2.3.3
    
    added 1 package in 3s
    
    173 packages are looking for funding
      run `npm fund` for details
    
    C:\ioBroker>
    

    Bitte einfach mal drüber nachdenken. Diese Posting soll eine Diskussionsanregung sein. Kann gut sein, dass ich wichtige Dinge, auch KO Kriterien, übersehen habe.

    Kommentare sind herzlich willkommen.

    Meine Intention ist dem User so früh wie möglich zu informieren dass auf seinem System was zu tun ist. Derzeit ist es proaktiv kaum möglich so eine Situation zu erkennen und ein unerfahrener User wundert sich dass er (wie im Anlassfall aufgetreten) beim Installieren von backitup eine Fehlermeldung von yahka / hap-node kommt und kennt sich nur bedingt aus.

    mcm1957

    Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
    Support Repositoryverwaltung.

    Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

    LESEN - gute Forenbeitrage

    Thomas BraunT 1 Antwort Letzte Antwort
    0
    • mcm1957M mcm1957

      @Thomas-Braun

      Da ich nicht weiß ob / wo nodejs-update ein Repository für Issues hat hier eine Anregung zur Diskussion.

      Man nehme folgende Situation:
      Ein System ist fehlerfrei installiert. Node.js 20 ist dort im Einsatz. Auch ein Adapter (konkret yahka) ist installiert. Alles läuft einwandfrei.

      Der User aktualisisert nun node.js auf 22. Dabei kommt es zu keinen Fehlermeldungen und auch das System läuft bzw. scheint zu laufen. Zumindest bemerkt mal der User nichts.

      Und nun versucht der User irgendeinen Adapter zu aktualisieren. Bums - Fehlermeldung dass eine Dependency eines ganz anderen Adapters nicht erfüllt ist da diese Dependency node.js <=20 erfordert.


      Hintergrund:
      yahka (1.1.4) hat als dependency 'hap-nodejs@1.1.0' welches node 18 oder 20 verlangt.


      Anregung:

      Da es wohl nicht vor einem node.js Update möglich ist ob die dependencies aller installierten Adapter diesen Update erlauben, rege an zu überlegen, ob NACH der Installation der neuen node-js Version direkt in nodejs-update getestet werden könnte ob noch alles passt. Das hätte den Vorteil, dass der User den Zusammenhang zum node-js Update sofort gemeldet bekommt und entsprechend reagieren kann (Update von Adapter, notfalls Downgrade von node.js).

      Erkennbar wäre dies m.E. durch einen Aufruf von 'npm i --dry-run'.


      Ich habe das in folgendem scenario getestet:

      • node.js 20 installiert
      • yahka 1.1.4 installiert
      • node.js auf 22 aktualisiert

      npm i --dry-run liefert mir dann eine klare Fehlermeldung:

      C:\ioBroker>npm i --dry-run
      npm warn EBADENGINE Unsupported engine {
      npm warn EBADENGINE   package: 'hap-nodejs@1.1.0',
      npm warn EBADENGINE   required: { node: '^18 || ^20' },
      npm warn EBADENGINE   current: { node: 'v22.16.0', npm: '10.9.2' }
      npm warn EBADENGINE }
      add fsevents 2.3.3
      
      added 1 package in 3s
      
      173 packages are looking for funding
        run `npm fund` for details
      
      C:\ioBroker>
      

      Bitte einfach mal drüber nachdenken. Diese Posting soll eine Diskussionsanregung sein. Kann gut sein, dass ich wichtige Dinge, auch KO Kriterien, übersehen habe.

      Kommentare sind herzlich willkommen.

      Meine Intention ist dem User so früh wie möglich zu informieren dass auf seinem System was zu tun ist. Derzeit ist es proaktiv kaum möglich so eine Situation zu erkennen und ein unerfahrener User wundert sich dass er (wie im Anlassfall aufgetreten) beim Installieren von backitup eine Fehlermeldung von yahka / hap-node kommt und kennt sich nur bedingt aus.

      mcm1957

      Thomas BraunT Online
      Thomas BraunT Online
      Thomas Braun
      Most Active
      schrieb am zuletzt editiert von
      #2

      @mcm1957

      Kann man natürlich einbauen.
      Viel wichtiger ist es allerdings diese Kinken zu finden und auszuräumen, bevor nodejs@22 zur offiziellen Empfehlung wird.

      Linux-Werkzeugkasten:
      https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
      NodeJS Fixer Skript:
      https://forum.iobroker.net/topic/68035/iob-node-fix-skript
      iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

      mcm1957M 1 Antwort Letzte Antwort
      0
      • Thomas BraunT Thomas Braun

        @mcm1957

        Kann man natürlich einbauen.
        Viel wichtiger ist es allerdings diese Kinken zu finden und auszuräumen, bevor nodejs@22 zur offiziellen Empfehlung wird.

        mcm1957M Online
        mcm1957M Online
        mcm1957
        schrieb am zuletzt editiert von
        #3

        @thomas-braun

        YAHKA ist bekannt. (https://github.com/jensweigele/ioBroker.yahka/issues/501). Wanns gefixed isgt / wird kann nur der Maintainer sagen.

        Obs noch weitere gibt - keine Ahnung.
        Auch keine Ahnung wie das testbar wäre...

        Aber check mal ob so ein psot INstall check sinnvoll ist oder du mit deinem Wissen Nebenwirkungen findest. Ev. kann der ja auch andere npm Tree Probleme aufzeigen. Er sollte nur nichts verändern oder instalieren. Das müßte aber durch --dry-run eigentlich sichergestellt sein.

        Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
        Support Repositoryverwaltung.

        Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

        LESEN - gute Forenbeitrage

        Thomas BraunT 2 Antworten Letzte Antwort
        0
        • mcm1957M mcm1957

          @thomas-braun

          YAHKA ist bekannt. (https://github.com/jensweigele/ioBroker.yahka/issues/501). Wanns gefixed isgt / wird kann nur der Maintainer sagen.

          Obs noch weitere gibt - keine Ahnung.
          Auch keine Ahnung wie das testbar wäre...

          Aber check mal ob so ein psot INstall check sinnvoll ist oder du mit deinem Wissen Nebenwirkungen findest. Ev. kann der ja auch andere npm Tree Probleme aufzeigen. Er sollte nur nichts verändern oder instalieren. Das müßte aber durch --dry-run eigentlich sichergestellt sein.

          Thomas BraunT Online
          Thomas BraunT Online
          Thomas Braun
          Most Active
          schrieb am zuletzt editiert von
          #4

          @mcm1957
          Hab mal auf die Schnelle was gecodet:
          Im positiven Fall schaut es dann so oder so ähnlich aus:

          CHECKING FOR COMPATIBILITY NOW!
          add node-aead-crypto-win32-x64-msvc 3.0.1
          add node-aead-crypto-win32-ia32-msvc 3.0.1
          add node-aead-crypto-win32-arm64-msvc 3.0.1
          add node-aead-crypto-linux-x64-musl 3.0.1
          add node-aead-crypto-linux-x64-gnu 3.0.1
          add node-aead-crypto-linux-arm-gnueabihf 3.0.1
          add node-aead-crypto-darwin-x64 3.0.1
          add node-aead-crypto-darwin-universal 3.0.1
          add node-aead-crypto-darwin-arm64 3.0.1
          add node-aead-crypto-android-arm64 3.0.1
          add node-aead-crypto-android-arm-eabi 3.0.1
          add fsevents 2.3.3
          
          added 12 packages in 8s
          
          267 packages are looking for funding
            run `npm fund` for details
          
          We tried our best to fix your nodejs. Please run iob diag again to verify.
          

          Im Fehlerfall dann so:

          CHECKING FOR COMPATIBILITY NOW!
          npm error code EBADENGINE
          npm error engine Unsupported engine
          npm error engine Not compatible with your version of node/npm: hap-nodejs@1.1.0
          npm error notsup Not compatible with your version of node/npm: hap-nodejs@1.1.0
          npm error notsup Required: {"node":"^18 || ^20"}
          npm error notsup Actual:   {"npm":"10.9.2","node":"v22.16.0"}
          npm error A complete log of this run can be found in: /home/echad/.npm/_logs/2025-05-27T20_36_15_751Z-debug-0.log
          
          We tried our best to fix your nodejs. Please run iob diag again to verify.
          
          *** RESTARTING ioBroker NOW! *** 
           Please refresh or restart your browser in a few moments.
          

          Im Terminal dann halt error in rot, damit man es auch sieht. Ich muss mal schauen, ob man die Fehlermeldungen auch noch genauer auswerten kann und dann eine Handlungsanweisung/Nachfrage wie:

          Die gerade installierte Version ist nicht mit allen Adaptern kompatibel. Soll die vorherige Version wieder installiert werden?

          kommt.

          Linux-Werkzeugkasten:
          https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
          NodeJS Fixer Skript:
          https://forum.iobroker.net/topic/68035/iob-node-fix-skript
          iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

          1 Antwort Letzte Antwort
          1
          • mcm1957M mcm1957

            @thomas-braun

            YAHKA ist bekannt. (https://github.com/jensweigele/ioBroker.yahka/issues/501). Wanns gefixed isgt / wird kann nur der Maintainer sagen.

            Obs noch weitere gibt - keine Ahnung.
            Auch keine Ahnung wie das testbar wäre...

            Aber check mal ob so ein psot INstall check sinnvoll ist oder du mit deinem Wissen Nebenwirkungen findest. Ev. kann der ja auch andere npm Tree Probleme aufzeigen. Er sollte nur nichts verändern oder instalieren. Das müßte aber durch --dry-run eigentlich sichergestellt sein.

            Thomas BraunT Online
            Thomas BraunT Online
            Thomas Braun
            Most Active
            schrieb am zuletzt editiert von
            #5

            @mcm1957

            https://github.com/ioBroker/ioBroker/pull/616

            Linux-Werkzeugkasten:
            https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
            NodeJS Fixer Skript:
            https://forum.iobroker.net/topic/68035/iob-node-fix-skript
            iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

            mcm1957M 1 Antwort Letzte Antwort
            1
            • Thomas BraunT Thomas Braun

              @mcm1957

              https://github.com/ioBroker/ioBroker/pull/616

              mcm1957M Online
              mcm1957M Online
              mcm1957
              schrieb am zuletzt editiert von
              #6

              @thomas-braun
              Ich frag mich warum npm da gerne Pakete installieren würde. Das könnte ev. User verwirren.
              Auf meinem Testsystem würde npm auch gerne iobroker.inst@x.y.z installieren - warum aus immer.

              Ev. kann man da noch was mit dem Status machen, hab das nicht angeschaut. Oder auf NPM error filter. Aber da hast du sicher die bessren Ideen was da sinnvoll ist.

              Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
              Support Repositoryverwaltung.

              Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

              LESEN - gute Forenbeitrage

              Thomas BraunT 1 Antwort Letzte Antwort
              0
              • mcm1957M mcm1957

                @thomas-braun
                Ich frag mich warum npm da gerne Pakete installieren würde. Das könnte ev. User verwirren.
                Auf meinem Testsystem würde npm auch gerne iobroker.inst@x.y.z installieren - warum aus immer.

                Ev. kann man da noch was mit dem Status machen, hab das nicht angeschaut. Oder auf NPM error filter. Aber da hast du sicher die bessren Ideen was da sinnvoll ist.

                Thomas BraunT Online
                Thomas BraunT Online
                Thomas Braun
                Most Active
                schrieb am zuletzt editiert von
                #7

                @mcm1957 sagte in nodejs-update - post-install Check?:

                Ich frag mich warum npm da gerne Pakete installieren würde.

                Hab ich mich auch gefragt...

                Muss mich mal näher mit npm und was da so an Feinheiten möglich ist beschäftigen.
                Für fsevents findet man aber:

                echad@chet:/opt/iobroker $ npm why fsevents
                fsevents@2.3.3 optional
                node_modules/fsevents
                  optional fsevents@"~2.3.2" from chokidar@3.6.0
                  node_modules/chokidar
                    chokidar@"^3.5.3" from @iobroker/js-controller-cli@7.0.7
                    node_modules/@iobroker/js-controller-cli
                      @iobroker/js-controller-cli@"7.0.7" from iobroker.js-controller@7.0.7
                      node_modules/iobroker.js-controller
                        iobroker.js-controller@"7.0.7" from the root project
                echad@chet:/opt/iobroker $
                

                Linux-Werkzeugkasten:
                https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                NodeJS Fixer Skript:
                https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                mcm1957M 1 Antwort Letzte Antwort
                1
                • Thomas BraunT Thomas Braun

                  @mcm1957 sagte in nodejs-update - post-install Check?:

                  Ich frag mich warum npm da gerne Pakete installieren würde.

                  Hab ich mich auch gefragt...

                  Muss mich mal näher mit npm und was da so an Feinheiten möglich ist beschäftigen.
                  Für fsevents findet man aber:

                  echad@chet:/opt/iobroker $ npm why fsevents
                  fsevents@2.3.3 optional
                  node_modules/fsevents
                    optional fsevents@"~2.3.2" from chokidar@3.6.0
                    node_modules/chokidar
                      chokidar@"^3.5.3" from @iobroker/js-controller-cli@7.0.7
                      node_modules/@iobroker/js-controller-cli
                        @iobroker/js-controller-cli@"7.0.7" from iobroker.js-controller@7.0.7
                        node_modules/iobroker.js-controller
                          iobroker.js-controller@"7.0.7" from the root project
                  echad@chet:/opt/iobroker $
                  
                  mcm1957M Online
                  mcm1957M Online
                  mcm1957
                  schrieb am zuletzt editiert von
                  #8

                  @thomas-braun
                  Frag mich nur warum dass dann nicht bei js-controlelr installtion installiert wird.
                  Aber npm ist manchmal (?) ein Rätsel.

                  Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                  Support Repositoryverwaltung.

                  Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                  LESEN - gute Forenbeitrage

                  Thomas BraunT 1 Antwort Letzte Antwort
                  0
                  • mcm1957M mcm1957

                    @thomas-braun
                    Frag mich nur warum dass dann nicht bei js-controlelr installtion installiert wird.
                    Aber npm ist manchmal (?) ein Rätsel.

                    Thomas BraunT Online
                    Thomas BraunT Online
                    Thomas Braun
                    Most Active
                    schrieb am zuletzt editiert von
                    #9

                    @mcm1957

                    Weil es wohl nur optional ist. Vielleicht hat man da da Policy in aktuellen Versionen umgestellt und man zieht die nun doch rein? Muss mich da mal genauer in die Doku knien.

                    Linux-Werkzeugkasten:
                    https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
                    NodeJS Fixer Skript:
                    https://forum.iobroker.net/topic/68035/iob-node-fix-skript
                    iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

                    1 Antwort Letzte Antwort
                    0
                    Antworten
                    • In einem neuen Thema antworten
                    Anmelden zum Antworten
                    • Älteste zuerst
                    • Neuste zuerst
                    • Meiste Stimmen


                    Support us

                    ioBroker
                    Community Adapters
                    Donate
                    FAQ Cloud / IOT
                    HowTo: Node.js-Update
                    HowTo: Backup/Restore
                    Downloads
                    BLOG

                    649

                    Online

                    32.4k

                    Benutzer

                    81.4k

                    Themen

                    1.3m

                    Beiträge
                    Community
                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                    ioBroker Community 2014-2025
                    logo
                    • Anmelden

                    • Du hast noch kein Konto? Registrieren

                    • Anmelden oder registrieren, um zu suchen
                    • Erster Beitrag
                      Letzter Beitrag
                    0
                    • Home
                    • Aktuell
                    • Tags
                    • Ungelesen 0
                    • Kategorien
                    • Unreplied
                    • Beliebt
                    • GitHub
                    • Docu
                    • Hilfe