Ankündigung

Einklappen
Keine Ankündigung bisher.

Probleme nach dem Update auf 1.9.4

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

    #46
    Was mir als erstes aufgefallen ist: Plugin Namen sind in lowercase (wie auch die Verzeichnisnamen der Plugins).

    Änderem mal

    Code:
    fb1:
        plugin_name: AVM
    ​
    in

    Code:
    fb1:
        plugin_name: avm
    ​
    Das gleiche gilt für Telegram, iCal, AlexaP3, Pluggit, OpenWeatherMap.
    Viele Grüße
    Martin

    There is no cloud. It's only someone else's computer.

    Kommentar


      #47
      Zitat von Msinn Beitrag anzeigen
      Was mir als erstes aufgefallen ist: Plugin Namen sind in lowercase (wie auch die Verzeichnisnamen der Plugins).
      Seit Jahren habe ich die Namen immer so gehabt. Damit ist das Problem aber nun gelöst.

      Aber macht es nicht Sinn Groß- und Kleinschreibung zu ignorieren?

      Kommentar


        #48
        Das ist ein Linux spezifisches Verhalten, da dort Verzeichnisnamen case sensitive sind. Unter MacOS oder Windows wäre Dir das Problem nie aufgefallen. Da die alte Konfigurationsform mit class_path und class_name auch case sensitive ist (und die Vorgabe ist, dass Plugin Namen in lowercase zu halten sind) sehe ich eigentlich keinen Änderungsbedarf. Ich habe für das Bugfix Release allerdings eine Warnung eingebaut, falls ein "ungültiger" Plugin Name erkannt wird.
        Viele Grüße
        Martin

        There is no cloud. It's only someone else's computer.

        Kommentar


          #49
          Zitat von Msinn Beitrag anzeigen

          Bei mir und bmx läuft das onewire Plugin. Wie hast Du das onewire Plugin konfiguriert?

          Und kannst Du bitte das Log vom Start bis zu diesem Fehler posten?
          Hallo,

          ich laufe nach dem Update auf 1.9.4 (wegen piratewthr) auch in die oben beschriebenen Probleme, d.h. ständige Neustarts, weil die DB nicht gefunden wird, und Fehler bei OneWire.

          Da ich vor einem Upgrade meines BeagleboneBlack auf Bullseye Respekt habe, wollte ich fragen, ob das Problem mit OneWire evtl auch mit Python 3.7 gelöst werden kann.

          Hier der Auszug aus dem Log-File:

          Code:
          2023-03-24 23:41:45 NOTICE lib.smarthome -------------------- SmartHomeNG stopped --------------------
          2023-03-24 23:42:05 NOTICE lib.smarthome -------------------- Init SmartHomeNG v1.9.4-master (c0cfb39c) --------------------
          2023-03-24 23:42:05 NOTICE lib.smarthome Running in Python interpreter 'v3.7.3 final', from directory /local/smarthome
          2023-03-24 23:42:05 NOTICE lib.smarthome - operating system 'Debian GNU/Linux 10 (buster)' (pid=11544)
          2023-03-24 23:42:05 NOTICE lib.smarthome - on 'Raspberry Pi (Rev. 0000)'
          2023-03-24 23:42:05 NOTICE lib.smarthome - Loglevel NOTICE is set to value 31 because handler of root logger is set to level WARNING or higher - Set level of handler 'shng_warnings_file' to 'NOTICE'!
          2023-03-24 23:43:09 NOTICE lib.smarthome - Nutze Feiertage für Land 'DE', Provinz 'HE', 1 benutzerdefinierte(r) Feiertag(e) definiert
          2023-03-24 23:43:36 WARNING plugins.cli CLI: You should set a password for this plugin.
          2023-03-24 23:43:51 ERROR lib.plugin Plugin 'ow' exception during import of __init__.py: invalid syntax (<fstring>, line 1)
          Traceback (most recent call last):
          File "/local/smarthome/lib/plugin.py", line 570, in __init__
          exec("import {0}".format(classpath))
          File "<string>", line 1, in <module>
          File "<fstring>", line 1
          (value=)
          ^
          SyntaxError: invalid syntax
          Und meine Konfig:
          Code:
          ow:
          plugin_name: onewire
          host: 127.0.0.1
          port: 4304
          cycle: 300​
          Irgendwelche Ideen?
          Danke.

          Kommentar


            #50
            In SmartHomeNG läuft das Plugin leider nur mit Python 3.8 oder größer.
            Das wird mit dem Bugif Release behoben. Das Release von v1.9.5 kommt vorraussichtlich am Dienstag.
            Viele Grüße
            Martin

            There is no cloud. It's only someone else's computer.

            Kommentar


              #51
              Danke für die schnelle Antwort.

              Dann probiere ich es in ein paar Tagen wieder.

              Den Upgrade meines Beagle Bone Black (mit Roberts Cape) werde ich mittelfristig auch angehen.

              Was mir noch aufgefallen ist:
              Ich hatte V1.9.4 in ein neues Verzeichnis

              Code:
              /local/smarthome_194_clean
              installiert und dann einen softlink
              Code:
              /local/smarthome -> /local/smarthome_194_clean
              angelegt.

              Das hat aber zu Problemen geführt:
              Code:
              Exception: 'collections.OrderedDict' object has no attribute 'partition'
              running SmartHomeNG v1.9.4-master (c0cfb39c) / plugins v1.9.4-master (c4ec71ee)
              Traceback (most recent call last):
                File "/local/smarthome_194_clean/lib/plugin.py", line 170, in __init__
                  plugin_thread = PluginWrapper(smarthome, plugin, classname, classpath, args, instance, self.meta, self._configfile)
                File "/local/smarthome_194_clean/lib/plugin.py", line 655, in __init__
                  exec("self.plugin.__init__(smarthome{0}{1})".format("," if len(arglist) else "", argstring))
                File "<string>", line 1, in <module>
                File "/local/smarthome_194_clean/plugins/database/__init__.py", line 145, in __init__
                  self._db = lib.db.Database(("" if self._prefix == ""  else self._prefix.capitalize()) + "Database", self.driver, self._connect)
                File "/local/smarthome_194_clean/lib/db.py", line 178, in __init__
                  key, sep, value = arg.partition(':')
              AttributeError: 'collections.OrderedDict' object has no attribute 'partition'
              ​
              Ich wollte Version 1.9.4. erst testen, bevor ich sie produktiv nehme. Über das Umbiegen eines Softlinks funktioniert das aber offensichtlich nicht.

              Gibt es hier eine bessere Idee für Tests?

              SmartHomeNG inkl. Plugins ist schon ziemlich groß geworden und passt nicht mehr in den eMMC des Beagle Bone Black (4GB). Daher habe ich es auf eine SD-Karte ausgelagert (und unter /local gemountet).
              Zuletzt geändert von bmx; 07.04.2023, 06:39. Grund: Schreibfehler korrigiert zum besseren Verständnis und für bessere Suchergebnisse

              Kommentar


                #52
                Zitat von GHild Beitrag anzeigen
                Gibt es hier eine bessere Idee für Tests?
                Einfach in dem Verzeichnis starten in dem Du es installiert hast?

                Du kannst mehrere Installationen nebeneinander haben. Du musst nur aufpassen, dass nur eine Installation zur Zeit läuft.
                Viele Grüße
                Martin

                There is no cloud. It's only someone else's computer.

                Kommentar


                  #53
                  Zitat von GHild Beitrag anzeigen
                  smarthomeNG inkl. Plugins ist schon ziemlich groß geworden
                  Du kannst bei git clone die Tiefe angeben mit --depth 1 und somit einen "flachen" clone erzeugen. Das geht sowohl für den Core als auch für die Plugins.

                  Das Thema haben wir speziell für den BBB schon mal gehabt, siehe hier

                  Kommentar


                    #54
                    Danke für die Rückmeldungen.

                    Einfach in dem Verzeichnis starten in dem Du es installiert hast?
                    Eigentlich naheliegend ;-) Wenn im Code kein absoluter Pfad verwendet wird, sollte es ja klappen, werde ich probieren (ich nutze standardmäßig immer den servcie).
                    Vielleicht habe ich diese Möglichkeit gedanklich immer ausgeschlossen, weil laut Anleitung smarthome immer in /usr/local installiert wird.

                    Danke auch für den Hinweis auf die BBB-Diskussion. Hatte ich nicht auf dem Schirm, bleibe aber wohl eher bei meiner Lösung der zusätzlichen SD-Karte, insbesondere auch, wenn ich neue smarthome-Versionen parallel installiere und erst teste.





                    Kommentar


                      #55
                      Zitat von Msinn Beitrag anzeigen
                      In SmartHomeNG läuft das Plugin leider nur mit Python 3.8 oder größer.
                      Das wird mit dem Bugif Release behoben. Das Release von v1.9.5 kommt vorraussichtlich am Dienstag.
                      Ich habe übrigens die Version 1.9.5 probiert:
                      Das Problem mit der Datenbank scheint behoben zu sein, das Problem mit onewire und Python V3.7 besteht weiterhin. Ich bekomme die selbe Fehlermeldung wie zuvor.

                      Sollte das behoben sein?

                      Kommentar


                        #56
                        Nein, das sollte nicht behoben werden. Das wirst Du (wie der Log Eintrag sagt) nur lösen können, wenn Du Python 3.8 oder höher nutzt um SmartHomeNG laufen zu lassen.
                        Viele Grüße
                        Martin

                        There is no cloud. It's only someone else's computer.

                        Kommentar

                        Lädt...
                        X