Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. createState deprecated

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    createState deprecated

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

      Was ist hierfür eigentlich der Grund?

      Method "createState" is deprecated and will be removed in js-controller 7, use "extendObject/setObjectNotExists" instead
      

      Dann müsste ja mit der 7'ner Version des js-controller gefühlt jeder zweite Adapter angepasst werden.

      mcm1957 joergeli 2 Replies Last reply Reply Quote 0
      • mcm1957
        mcm1957 @carsten04 last edited by

        @carsten04 said in createState deprecated:

        Was ist hierfür eigentlich der Grund?

        Method "createState" is deprecated and will be removed in js-controller 7, use "extendObject/setObjectNotExists" instead
        

        Dann müsste ja mit der 7'ner Version des js-controller gefühlt jeder zweite Adapter angepasst werden.

        Mit js-controller 6 wird die Funktion DEPRECATED funktioniert aber uneingeschränkt weiter.
        Erst mit js-controller 7 wird diese deaktiviert. Und ja da sind sicher einige Adapter anzupassen.

        Zu den Gründen kann @Apollon77 bzw. @FoxRiver76 sicher was sagen. Wenn hier nichts kommen sollte stell due Frage bitte im Telegramm Developer Chat (Invite Links unter http://www.iobroker.dev). Wahrscheinlich bekommst du dirt rascher eine Antwort.

        1 Reply Last reply Reply Quote 0
        • joergeli
          joergeli @carsten04 last edited by

          @carsten04 sagte in createState deprecated:

          Dann müsste ja mit der 7'ner Version des js-controller gefühlt jeder zweite Adapter angepasst werden.

          IMHO nicht nur die Adapter, sondern wahrscheinlich auch alle JavaScripte, die "createState" verwenden?
          Hoffentlich gibt es dann nicht auch ähnliche (Verständnis-)Probleme, wie sie z.B. bei Ersatz von "request" deprecated durch "httpGet" aufgekommen sind.
          @apollon77, @foxriver76 Mich würden auch die Hintergründe dazu interessieren.

          apollon77 1 Reply Last reply Reply Quote 0
          • apollon77
            apollon77 @joergeli last edited by

            @joergeli Diesern Change hat nichts mit dem JavaScript Adapter nichts zu tun im ersten Schritt, oder bekommst Du dort auch solche Deprecation Meldungen?

            Auch die Annahme "jeder zweite" ist nicht korrekt ... wenn ich die greppe die ich ausgecheckt habe komme ich auf 21 Adapter ...

            Die Methoden createState und so (auch createDevice) und so versuchen mit viel Magie und Login und basierend auf den Parameters zu erraten was der Dev gern anlegen möchte und versucht dann eine Objekt ID nach der Regel "device.channel,state" zu erzeugen (oder je nachdem was der Dev angegeben hat als Parametern). Da aber viele Informationen fehlen können wir die "zwischenobjekte" der Struktur nicht sauber anlegen weil wir auch nur raten könnten. Das ganze führt am Ende dazu das die Entwickler die das nutzen nicht auf dem Radar haben das diese zwischenobjekte fehlen und diese auch so nicht anlegen.

            Da es nur wenige Adapter nutzen ist es sauberer solche "Magischen methoden" einfach zu entfernen und lieber die Devs die Dinge anlegen zu lassen was Sie brauchen. Und einen String ala "device.channel.state" selbst zusammenzubauen anstelle es als 3 Parameter anzugeben bekommt jeder hin 😉

            Der Ersatz ist also ein setObjectNotExists oder so mit nem default wert oder dem state value getrennt und ggf Zwischen-Strukturobjekte.

            joergeli 1 Reply Last reply Reply Quote 1
            • joergeli
              joergeli @apollon77 last edited by

              @apollon77
              Danke für Deine Antwort, und nein, ich bekomme keine Deprecation-Meldungen.
              Wenn primär die Adapter betroffen sind und nicht JS bin ich mit meinem Halbwissen erst mal beruhigt 😊

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

              Support us

              ioBroker
              Community Adapters
              Donate

              478
              Online

              31.7k
              Users

              79.8k
              Topics

              1.3m
              Posts

              4
              5
              503
              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