Ankündigung

Einklappen
Keine Ankündigung bisher.

Update auf 1.12.2 schlägt fehl

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Update auf 1.12.2 schlägt fehl

    Hallo mal wieder,

    ich wollte das Update auf die aktuelle Version machen, aber beide Varianten (mit git pull und als neuen Ordner) scheitern mit folgender Meldung:

    Installing core requirements for the current user, please wait...
    Using auto-determined PIP: '/usr/local/smarthome/venvs/py_shng/bin/pip3'

    Running in a virtual environment environment,
    installing core requirements only to current virtual environment, please wait...

    core requirements installed

    Starting SmartHomeNG again...
    Waiting for restart...
    Traceback (most recent call last):
    File "/usr/local/smarthome/bin/smarthome.py", line 218, in <module>
    from lib.smarthome import SmartHome
    File "/usr/local/smarthome/lib/smarthome.py", line 73, in <module>
    import lib.config
    File "/usr/local/smarthome/lib/config.py", line 75, in <module>
    def parse_itemsdir(itemsdir, item_conf, addfilenames=False, struct_dict: dict | None = None):
    TypeError: unsupported operand type(s) for |: 'type' and 'NoneType'​
    Aus- und wieder eingeloggt hatte ich mich. Damit geht jetzt erstmal nix mehr und vielleicht könnt ihr mir wieder mal weiterhelfen.

    Viele Grüße
    Andi
    Zuletzt geändert von bmx; Gestern, 16:08.

    #2
    Moin Andi,

    Das liegt vermutlich an der Python-Version. Welche ist bei Dir installiert?

    Gruß
    Wolfram

    Kommentar


      #3
      die 3.9.2 unter Debian 11
      Zuletzt geändert von awknx; Gestern, 15:04.

      Kommentar


        #4
        Der Ausdruck
        Code:
        struct_dict: dict | None = None
        wird erst ab Python3.10 unterstützt, siehe hier.
        Die Aussage zur minimalen Python-Version in der Release-Ankündigung ist deshalb wohl nicht richtig.
        Du brauchst entweder eine neuere Python-Version, oder einen Workaround.

        Kommentar


          #5
          Alternativ kannst Du versuchen, auf v1.12.0 zurück zu gehen:
          Code:
          git checkout v1.12.0
          Das musst Du im Ordner smarthome und smarthome/plugins machen. Dann zur Sicherheit noch die Requirements vergleichen, ob Du für irgendein Python-Paket noch auf eine ältere Version zuück gehen musst.

          Kommentar


            #6
            Du kannst Dir auch Python 3.10 installieren, Msinn hat das mal dokumentiert.

            Aber ich frage ich welche Gründe es gibt nicht auf Debian 12 zu aktualisieren? Python 3.9 bekommt seit Oktober 2025 keine Sicherheitspatches mehr und Debian 11 läuft im August 2026 aus den Patches (LTS) raus.

            Kommentar


              #7
              Die älteste offiziell unterstützte Python-Version ist 3.10. - die Aussage im Release ist faktisch inkorrekt ("läuft ggf. auf 3.9"), das habe ich tatsächlich nicht im Blick gehabt.

              Dass wir ältere Python-Versionen nicht mehr unterstützen, liegt neben neuen Sprachfeatures ja auch an den fehlenden Sicherheitsupdates, auch wenn das auf isolierten Heimrechnern vielleicht nicht so eine große Rolle spielen muss.

              Da 1.12.1 fehlerhaft ist (wurde mit 1.12.2 korrigiert), wäre für dich zu überlegen, ob du die neuen Funktionen in 1.12.2 nutzen möchtest und dafür Python (ggf. sogar Debian) aktualisierst, oder bis auf Weiteres auf der älteren Version bleibst. Mit dem nächsten "Major"-Release (1.13 oder 2.0) wird auch der Support für Python 3.10 aufgegeben, insofern ist die Entscheidung, bei 3.9 zu bleiben, dann wieder zu überlegen. (Ich würde Debian updaten...)

              Kommentar

              Lädt...
              X