Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. NPM entfernt und ändert bei jedem Vorgang unzählige Pakete

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    NPM entfernt und ändert bei jedem Vorgang unzählige Pakete

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      darkbrain85 last edited by

      Hi zusammen!

      Ich habe seit einiger Zeit das "Problem", dass installieren, updaten und löschen von Adapter gefühlt sehr lange dauert. So lange ist es laut der Angabe im Log unten nicht, aber bei mehreren Adapter zieht sich das halt schon in die Länge. Das war nicht immer so.

      Kann sich jemand erklären was da los ist? Und ist es normal, dass NPM so viele Aktionen durchführt wegen dem löschen von einem einzigen Adapter?

      Bin für jeden Tip dankbar und liefere gerne Infos nach die ihr braucht. Vielleicht ist es auch jammern auch hohem Niveau.
      Als Hardware für hier übrigens ein Proxmox Host mit Quadcore Xeon und 8 GB Ram für die iobroker VM eingesetzt. Daran sollte es nicht scheitern....

      Besten Dank!

      $ iobroker del hmm --debug
      Delete adapter "hmm"
      host.debian Counted 1 meta of hmm
      host.debian Counted 1 adapter for hmm
      host.debian Counted 1 states of system.adapter.hmm
      host.debian file hmm.admin deleted
      host.debian object hmm deleted
      host.debian object hmm.admin deletedhost.debian Deleting 3 object(s).
      added 22 packages, removed 714 packages, and changed 1447 packages in 2m142 packages are looking for funding run `npm fund` for details
      Process exited with code 0
      
      Glasfaser 1 Reply Last reply Reply Quote 0
      • Glasfaser
        Glasfaser @darkbrain85 last edited by

        @darkbrain85

        Zeige mal deine Grundbasis

        Ein/ und Ausgabe davon in Code-Tags </> hier einstellen

        cd /opt/iobroker
        npm ls | grep -E 'github.com|ERR' 
        
        iobroker update -i
         
        sudo ln -s /usr/bin/node /usr/bin/nodejs
        
        uname -m && type -P nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs
        
        D 1 Reply Last reply Reply Quote 0
        • D
          darkbrain85 @Glasfaser last edited by

          Hi!
          Sehr gerne:

          admin@debian:/opt/iobroker$ npm ls | grep -E 'github.com|ERR' 
          [sudo] Passwort für admin: 
          ├── iobroker.icons-open-icon-library-png@0.1.3 invalid: "https://github.com/ioBroker/ioBroker.icons-open-icon-library-png/tarball/master" from the root project
          npm ERR! code ELSPROBLEMS
          npm ERR! extraneous: @types/caseless@0.12.2 /opt/iobroker/node_modules/@types/caseless
          npm ERR! extraneous: @types/request@2.48.8 /opt/iobroker/node_modules/@types/request
          npm ERR! extraneous: coffeescript@1.12.7 /opt/iobroker/node_modules/coffeescript
          npm ERR! invalid: iobroker.icons-open-icon-library-png@0.1.3 /opt/iobroker/node_modules/iobroker.icons-open-icon-library-png
          npm ERR! extraneous: jsonata@1.8.6 /opt/iobroker/node_modules/jsonata
          npm ERR! extraneous: node-inspect@2.0.0 /opt/iobroker/node_modules/node-inspect
          npm ERR! extraneous: picocolors@1.0.0 /opt/iobroker/node_modules/picocolors
          npm ERR! extraneous: suncalc2@1.8.1 /opt/iobroker/node_modules/suncalc2
          npm ERR! extraneous: typescript@4.7.4 /opt/iobroker/node_modules/typescript
          npm ERR! extraneous: virtual-tsc@0.6.2 /opt/iobroker/node_modules/virtual-tsc
          npm ERR! extraneous: wake_on_lan@1.0.0 /opt/iobroker/node_modules/wake_on_lan
          
          npm ERR! A complete log of this run can be found in:
          npm ERR!     /home/iobroker/.npm/_logs/2022-09-21T12_20_10_771Z-debug-0.log
          
          
          admin@debian:/opt/iobroker$ iobroker update -i
          Used repository: stable
          Adapter    "admin"        : 6.2.22   , installed 6.2.22
          Adapter    "alexa2"       : 3.19.9   , installed 3.19.9
          Adapter    "alias-manager": 1.2.4    , installed 1.2.6
          Adapter    "cloud"        : 4.2.2    , installed 4.2.2
          Adapter    "daswetter"    : 3.1.3    , installed 3.1.3
          Adapter    "dwd"          : 2.8.3    , installed 2.8.3
          Adapter    "echarts"      : 1.0.12   , installed 1.0.12
          Adapter    "feiertage"    : 1.1.0    , installed 1.1.0
          Adapter    "flot"         : 1.11.0   , installed 1.11.0
          Adapter    "gruenbeck"    : 0.0.42   , installed 0.0.42
          Adapter    "hm-rega"      : 3.0.40   , installed 3.0.40
          Adapter    "hm-rpc"       : 1.15.12  , installed 1.15.12
          Adapter    "homeconnect"  : 1.0.1    , installed 1.0.1
          Adapter    "hp-ilo"       : 1.0.6    , installed 1.0.6
          Adapter    "ical"         : 1.13.1   , installed 1.13.1
          Adapter    "icons-addictive-flavour-png": 0.1.0, installed 0.1.0
          Adapter    "icons-fatcow-hosting": 0.1.0, installed 0.1.0
          Adapter    "icons-icons8" : 0.0.1    , installed 0.0.1
          Adapter    "icons-material-png": 0.1.0, installed 0.1.0
          Adapter    "icons-material-svg": 0.1.0, installed 0.1.0
          Adapter    "icons-mfd-png": 1.1.0    , installed 1.1.0
          Adapter    "icons-mfd-svg": 1.1.0    , installed 1.1.0
          Adapter    "icons-open-icon-library-png": 0.1.2, installed 0.1.3
          Adapter    "icons-ultimate-png": 1.0.1, installed 1.0.1
          Adapter    "info"         : 1.9.19   , installed 1.9.19
          Adapter    "iot"          : 1.11.9   , installed 1.11.9
          Adapter    "javascript"   : 6.0.3    , installed 6.0.3
          Controller "js-controller": 4.0.23   , installed 4.0.23
          Adapter    "mihome-vacuum": 3.4.2    , installed 3.4.2
          Adapter    "mobile"       : 1.0.1    , installed 1.0.1
          Adapter    "modbus"       : 5.0.5    , installed 5.0.5
          Adapter    "nanoleaf-lightpanels": 1.3.1, installed 1.3.1
          Adapter    "nut"          : 1.5.1    , installed 1.5.1
          Adapter    "pi-hole"      : 1.3.4    , installed 1.3.4
          Adapter    "ping"         : 1.5.3    , installed 1.5.3
          Adapter    "pushover"     : 3.0.3    , installed 3.0.3
          Adapter    "rickshaw"     : 1.0.0    , installed 1.0.0
          Adapter    "rpi2"         : 1.3.2    , installed 1.3.2
          Adapter    "sayit"        : 1.12.3   , installed 1.12.6
          Adapter    "scenes"       : 2.3.9    , installed 2.3.9
          Adapter    "shelly"       : 6.0.0    , installed 6.0.0
          Adapter    "simple-api"   : 2.7.0    , installed 2.7.0
          Adapter    "smartmeter"   : 3.3.4    , installed 3.3.4
          Adapter    "socketio"     : 4.2.0    , installed 4.2.0
          Adapter    "sonos"        : 2.2.3    , installed 2.2.3
          Adapter    "sql"          : 2.1.8    , installed 2.1.8
          Adapter    "statistics"   : 2.2.0    , installed 2.2.0
          Adapter    "tesla-motors" : 1.3.0    , installed 1.3.0
          Adapter    "trashschedule": 2.0.3    , installed 2.0.3
          Adapter    "tronity"      : 1.1.1    , installed 1.1.1
          Adapter    "unifi"        : 0.5.10   , installed 0.5.10
          Adapter    "vis"          : 1.4.15   , installed 1.4.15
          Adapter    "vis-bars"     : 0.1.4    , installed 0.1.4
          Adapter    "vis-canvas-gauges": 0.1.5, installed 0.1.5
          Adapter    "vis-colorpicker": 1.2.0  , installed 1.2.0
          Adapter    "vis-fancyswitch": 1.1.0  , installed 1.1.0
          Adapter    "vis-google-fonts": 1.0.3 , installed 1.0.3
          Adapter    "vis-history"  : 1.0.0    , installed 1.0.0
          Adapter    "vis-hqwidgets": 1.3.0    , installed 1.3.0
          Adapter    "vis-inventwo" : 3.3.1    , installed 3.3.1
          Adapter    "vis-jqui-mfd" : 1.0.12   , installed 1.0.12
          Adapter    "vis-justgage" : 1.0.2    , installed 1.0.2
          Adapter    "vis-keyboard" : 0.0.2    , installed 0.0.2
          Adapter    "vis-lcars"    : 1.0.4    , installed 1.0.4
          Adapter    "vis-map"      : 1.0.4    , installed 1.0.4
          Adapter    "vis-metro"    : 1.2.0    , installed 1.2.0
          Adapter    "vis-players"  : 0.1.6    , installed 0.1.6
          Adapter    "vis-plumb"    : 1.0.2    , installed 1.0.2
          Adapter    "vis-rgraph"   : 0.0.2    , installed 0.0.2
          Adapter    "vis-timeandweather": 1.2.2, installed 1.2.2
          Adapter    "vis-weather"  : 2.5.5    , installed 2.5.6
          Adapter    "weatherunderground": 3.4.2, installed 3.4.2
          Adapter    "web"          : 4.3.0    , installed 4.3.0
          Adapter    "worx"         : 1.6.6    , installed 1.6.6
          Adapter    "ws"           : 1.3.0    , installed 1.3.0
          Adapter    "yr"           : 5.3.0    , installed 5.3.0
          
          admin@debian:/opt/iobroker$ sudo ln -s /usr/bin/node /usr/bin/nodejs
          ln: die symbolische Verknüpfung '/usr/bin/nodejs' konnte nicht angelegt werden: Die Datei existiert bereits
          
          admin@debian:/opt/iobroker$ uname -m && type -P nodejs node npm && nodejs -v && node -v && npm -v && whoami && pwd && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs
          x86_64
          /usr/bin/nodejs
          /usr/bin/node
          /usr/bin/npm
          v16.17.0
          v16.17.0
          8.15.0
          admin
          /opt/iobroker
          OK:1 http://ftp.debian.org/debian bullseye-backports InRelease
          OK:2 http://deb.debian.org/debian bullseye InRelease                                                                
          OK:3 http://security.debian.org/debian-security bullseye-security InRelease                                         
          OK:4 http://deb.debian.org/debian bullseye-updates InRelease                                                        
          OK:5 http://ppa.launchpad.net/webupd8team/java/ubuntu xenial InRelease                                              
          Ign:6 http://webmin.mirror.somersettechsolutions.co.uk/repository sarge InRelease                                   
          OK:7 https://repos.influxdata.com/debian stretch InRelease                                                          
          OK:8 https://deb.nodesource.com/node_16.x bullseye InRelease                                                        
          OK:9 https://packages.grafana.com/oss/deb stable InRelease                                                          
          OK:10 http://webmin.mirror.somersettechsolutions.co.uk/repository sarge Release                      
          Ign:11 http://download.webmin.com/download/repository sarge InRelease        
          OK:12 http://download.webmin.com/download/repository sarge Release
          Paketlisten werden gelesen… Fertig
          Abhängigkeitsbaum wird aufgebaut… Fertig
          Statusinformationen werden eingelesen… Fertig
          Alle Pakete sind aktuell.
          nodejs:
            Installiert:           16.17.0-deb-1nodesource1
            Installationskandidat: 16.17.0-deb-1nodesource1
            Versionstabelle:
           *** 16.17.0-deb-1nodesource1 500
                  500 https://deb.nodesource.com/node_16.x bullseye/main amd64 Packages
                  100 /var/lib/dpkg/status
               12.22.12~dfsg-1~deb11u1 500
                  500 http://security.debian.org/debian-security bullseye-security/main amd64 Packages
               12.22.5~dfsg-2~11u1 500
                  500 http://deb.debian.org/debian bullseye/main amd64 Packages
          
          Thomas Braun 1 Reply Last reply Reply Quote 0
          • Thomas Braun
            Thomas Braun Most Active @darkbrain85 last edited by Thomas Braun

            @darkbrain85 sagte in NPM entfernt und ändert bei jedem Vorgang unzählige Pakete:

            bullseye
            sarge
            xenial
            stretch

            Bei dem bunten Zoo an Quellen für falsche Distributionen wundert es mich eigentlich das der zusammengeflickte Frankenstein da überhaupt noch zuckt.

            Installier den icons-open-icon-library-png Adapter nochmal sauber drüber.

            D 1 Reply Last reply Reply Quote 1
            • D
              darkbrain85 @Thomas Braun last edited by

              @thomas-braun
              Mag sein, aber IMHO ist da keine Software mehr von den Repos installiert. Tatsächlich sollten die natürlich mal raus. Die Installation hat schon einige Jahre hinter sich und läuft an sich bis auf den oben genannten "Fehler" sauber.

              Thomas Braun 1 Reply Last reply Reply Quote 0
              • Thomas Braun
                Thomas Braun Most Active @darkbrain85 last edited by Thomas Braun

                @darkbrain85

                Wie gesagt:
                Installier den icons-open-icon-library-png Adapter nochmal sauber drüber.

                Aus dem Repo, nicht aus github.

                Dann den npm tree mal prunen.

                cd /opt/iobroker
                npm prune
                
                D 1 Reply Last reply Reply Quote 1
                • D
                  darkbrain85 @Thomas Braun last edited by darkbrain85

                  @thomas-braun

                  npm prune ist durch:

                  admin@debian:/opt/iobroker$ npm prune
                  npm WARN deprecated crypto@1.0.1: This package is no longer supported. It's now a built-in Node module. If you've depended on crypto, you should switch to the one that's built-in.
                  npm WARN deprecated har-validator@5.1.5: this library is no longer supported
                  npm WARN deprecated request-promise@4.2.6: request-promise has been deprecated because it extends the now deprecated request package, see 
                  npm WARN deprecated json3@3.3.2: Please use the native JSON object instead of JSON 3
                  npm WARN deprecated querystring@0.2.1: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
                  npm WARN deprecated circular-json@0.5.9: CircularJSON is in maintenance only, flatted is its successor.
                  npm WARN deprecated node-inspect@2.0.0: This module is part of Node.js core and does not need to be installed separately. It is now unmaintained.
                  npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. 
                  npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. 
                  npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. 
                  npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
                  npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
                  npm WARN deprecated request@1.9.9: request has been deprecated, see h
                  npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  
                  npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  
                  npm WARN deprecated uuid@3.3.2: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  
                  npm WARN deprecated request@2.88.2: request has been deprecated, see 
                  npm WARN deprecated tough-cookie@0.12.1: ReDoS vulnerability parsing Set-Cookie 
                  
                  removed 647 packages, and changed 1467 packages in 6m
                  
                  

                  Eine Installation mit anschließendem Löschvorgang eines zufälligen Adapters dauert dann wieder aus meiner Sicht eine Spur zu lang:

                  $ iobroker del uv-protect --debug
                  Delete adapter "uv-protect"
                  host.debian Counted 1 instances of uv-protect
                  host.debian Counted 1 meta of uv-protect
                  host.debian Counted 1 adapter for uv-protect
                  host.debian Counted 4 channels of uv-protect
                  host.debian Counted 32 states of uv-protect
                  host.debian Counted 14 states of system.adapter.uv-protect
                  host.debian Counted 32 states (io.uv-protect.*) from states
                  host.debian Counted 12 states (system.adapter.uv-protect.*) from states
                  host.debian file uv-protect.admin deleted
                  host.debian object uv-protect deleted
                  host.debian object uv-protect.admin deleted
                  host.debian Deleting 53 object(s).
                  host.debian Deleting 44 state(s).
                  removed 648 packages, and changed 1467 packages in 2m142 packages are looking for funding run `npm fund` for details
                  Process exited with code 0
                  

                  icons-open-icon-library-png ist natürlich auch sauber aus dem Repo neu installiert.

                  D 1 Reply Last reply Reply Quote 0
                  • D
                    darkbrain85 @darkbrain85 last edited by darkbrain85

                    Das kann weg... Wurstfinger... 😉

                    1 Reply Last reply Reply Quote 0
                    • D
                      darkbrain85 last edited by

                      Sonst noch jemand eine Idee zu dem Thema?

                      Thomas Braun 1 Reply Last reply Reply Quote 0
                      • Thomas Braun
                        Thomas Braun Most Active @darkbrain85 last edited by

                        @darkbrain85

                        Bei mehr als 70 Adaptern ist auch der npm tree entsprechend groß. Das kann dann auch gut und gerne die 2 Minuten irgendwas dauern bis der komplett durchlaufen wurde.

                        D 1 Reply Last reply Reply Quote 0
                        • D
                          darkbrain85 @Thomas Braun last edited by

                          @thomas-braun

                          Einfach mal für mein Verständnis:

                          Was wird denn da im letzten Schritt gemacht? Warum werden da so viele Aktionen per NPM durchgeführt? Ich bin halt der Meinung, dass das nicht immer so war. Könnte sogar mit dem Update auf Nodejs 16 gekommen sein, da bin ich mir aber unsicher.

                          Vielleicht jammere ich auch zu viel, aber es nervt Unglaube ich wenn jedes Update eines Adapters einfach mehrere Minuten dauert. Also vor allem wenn man mehrere Adapter gleichzeitig aktualisieren möchte.

                          Thomas Braun 1 Reply Last reply Reply Quote 0
                          • Thomas Braun
                            Thomas Braun Most Active @darkbrain85 last edited by Thomas Braun

                            @darkbrain85

                            Im Detail weiß ich auch nicht was da ganz genau gemacht wird, aber der npm tree (der halt bei dir recht groß sein muss, bei > 70 Adaptern) wird durchlaufen und auf z. B. Duplikate untersucht und Abhängigkeiten werden ggf. neu geschrieben. Dauert halt.

                            iobroker update && iobroker upgrade all -y
                            

                            und dann kannst du die Kiste laufen lassen.

                            Könnte sogar mit dem Update auf Nodejs 16 gekommen sein, da bin ich mir aber unsicher.

                            Jein, hat eher mit dem Upgrade auf npm 8 und dem neuen Format der package.json-Datei zu tun.

                            Hast du dir denn jetzt iobroker.icons-open-icon-library-png angeschaut?

                            D 1 Reply Last reply Reply Quote 0
                            • D
                              darkbrain85 @Thomas Braun last edited by

                              @thomas-braun sagte in NPM entfernt und ändert bei jedem Vorgang unzählige Pakete:

                              Hast du dir denn jetzt iobroker.icons-open-icon-library-png angeschaut?

                              Ja, das hatte ich oben ja schon geschrieben. Habe ich entfernt und sauber aus dem Repo neu installiert.

                              Ich hatte allerdings gerade einen Erfolg.
                              Nachdem ich gestern nach Deinen Hinweisen ein

                              npm prune
                              

                              im iobroker Verzeichnis gemacht habe, brachte das keinen Erfolg.
                              Jetzt habe ich das gerade einfach nochmal gemacht, weil ich mich an anderer Stelle ein bisschen in NPM eingelesen hatte. Und siehe da, das Problem ist scheinbar weg.

                              Nun wird wie an sich auch erwartet folgendes bei der deinstallation eines Adapters gemeldet:

                              removed 1 package in 4s141 packages are looking for funding run `npm fund` for details
                              

                              Halt ein Paket und nicht mehr drölfzig. Updates und Installationen laufen jetzt auch wieder ein paar Sekunden durch. Traumhaft! Es scheint also nicht normal, wenn da hunderte Pakete angefasst werden.

                              Danke für Deinen Input.

                              1 Reply Last reply Reply Quote 1
                              • First post
                                Last post

                              Support us

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

                              502
                              Online

                              31.7k
                              Users

                              79.7k
                              Topics

                              1.3m
                              Posts

                              3
                              13
                              633
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo