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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. Migration ESLint 9.x

NEWS

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

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

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

Migration ESLint 9.x

Geplant Angeheftet Gesperrt Verschoben Entwicklung
38 Beiträge 9 Kommentatoren 4.0k Aufrufe 11 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.
  • OliverIOO OliverIO

    @skb

    ich glaube du verwechselst da etwas.
    eslint und prettier sind 2 tools
    1.) prettier formatiert deinen code beim speichern. es können nur relativ wenige vorgaben gemacht werden
    2.) eslint prüft den code auf probleme und kann diese ggfs auch beheben.

    voraussetzungen für irgendwelche vscode erweiterungen, ist, das diese tools über die kommandozeile verfügbar sind (ob global installiert oder über irgendwelche packages, wie iobroker/eslint-config)

    ich verwende die folgenden beiden Erweiterungen

    Name: Prettier - Code formatter
    Id: esbenp.prettier-vscode
    Description: Code formatter using prettier
    Version: 11.0.0
    Publisher: Prettier
    VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode

    Name: ESLint
    Id: dbaeumer.vscode-eslint
    Description: Integrates ESLint JavaScript into VS Code.
    Version: 3.0.10
    Publisher: Microsoft
    VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint

    diese machen nix anderes, als die tools zu bestimmten Ereignissen (beim speichern, bei code changes, etc) aufzurufen.
    eslint interpretiert den output und stellt bspw diese im Problem-Tab je Datei dar plus irgendwelches gekringele an den entsprechenden Code-Stellen.

    Für prettier muss man evtl. noch das bevorzugte Formatiertool in vscode einstellen
    über Menü File->Preferences>Settings, dann im Suchfeld "default formatter" eingeben.

    anstatt global elint mit dem --fix parameter zu verwenden, kann man in vscode im problemetab direkt rechte maustaste auf ein problem machen. da werden dann evtl für viele probleme automatische fixes angeboten. dort kann auch ggfs. nach problemtyp separat entschieden werden, ob alles oder nur das eine problem nun behoben wird.
    es gibt diese automatischen fixe nicht für alle probleme.

    auch hier kann ich codemium nochmal empfehlen, darüber kann man sich manche probleme detailliert erklären lassen und ggfs auch entsprechende fixes vorschlagen lassen.

    Einen seltsamen Effekt, bei dem ich lange suchen musste war, das eslint angemeckter hat, das ich tabulatro statt spaces verwende, ich das behoben habe, gespeichert habe und dann waren die tabs wieder da, obwohl alles richtig (spaces) eingestellt war.

    ich habe dann die tabulator-zeichen mit einem anderen tool getauscht, danach gab es dieses problem in vscode nicht mehr. es betraf aber auch nur genau eine einzelne datei.

    SKBS Offline
    SKBS Offline
    SKB
    Developer Most Active
    schrieb am zuletzt editiert von
    #23

    @oliverio Verwechselt habe ich hier eigentlich nichts.

    Wenn ich - genau wie du - die Tabs verwendet habe, wollte Eslint beim prüfen immer die Leerzeichen einfügen, was ja dann durch "--fix" behoben wird. Jedoch wollte ich nicht jedes Mal den Fix durchlaufen lassen - ist ja sinnlos.

    Habe den Prettier jetzt so eingestellt, das er beim Speichern den Code mit den Leerzeichen passend macht, wie in der Prettier-Config von ioBroker.

    Nun laufen die Dinge durch ;)

    Falls es jemand braucht - hier die Settings für VS-Code und prettier:

    {
      "prettier.printWidth": 120,
      "prettier.semi": true,
      "prettier.tabWidth": 4,
      "prettier.useTabs": false,
      "prettier.trailingComma": "all",
      "prettier.singleQuote": true,
      "prettier.singleAttributePerLine": true,
      "prettier.endOfLine": "lf",
      "prettier.bracketSpacing": true,
      "prettier.arrowParens": "avoid",
      "prettier.quoteProps": "as-needed"
    }
    

    ... wer nicht mit der Zeit geht, geht mit der Zeit ...

    Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

    OliverIOO 1 Antwort Letzte Antwort
    0
    • SKBS SKB

      @oliverio Verwechselt habe ich hier eigentlich nichts.

      Wenn ich - genau wie du - die Tabs verwendet habe, wollte Eslint beim prüfen immer die Leerzeichen einfügen, was ja dann durch "--fix" behoben wird. Jedoch wollte ich nicht jedes Mal den Fix durchlaufen lassen - ist ja sinnlos.

      Habe den Prettier jetzt so eingestellt, das er beim Speichern den Code mit den Leerzeichen passend macht, wie in der Prettier-Config von ioBroker.

      Nun laufen die Dinge durch ;)

      Falls es jemand braucht - hier die Settings für VS-Code und prettier:

      {
        "prettier.printWidth": 120,
        "prettier.semi": true,
        "prettier.tabWidth": 4,
        "prettier.useTabs": false,
        "prettier.trailingComma": "all",
        "prettier.singleQuote": true,
        "prettier.singleAttributePerLine": true,
        "prettier.endOfLine": "lf",
        "prettier.bracketSpacing": true,
        "prettier.arrowParens": "avoid",
        "prettier.quoteProps": "as-needed"
      }
      
      OliverIOO Offline
      OliverIOO Offline
      OliverIO
      schrieb am zuletzt editiert von OliverIO
      #24

      @skb

      wenn du dieser anleitung gefolgt bist, sind das mehr oder weniger genau die einstellungen
      https://github.com/ioBroker/eslint-config/blob/main/MIGRATION.md
      https://github.com/ioBroker/eslint-config/blob/main/prettier.config.mjs

      ich habe bei prettier für markdown noch eine kleine erweiterung drin, das die aufzählungspunkte auch nur mit einem leerzeichen und nicht mit 3 leerzeichen abgetrennt werden

      Meine Adapter und Widgets
      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
      Links im Profil

      SKBS 1 Antwort Letzte Antwort
      0
      • OliverIOO OliverIO

        @skb

        wenn du dieser anleitung gefolgt bist, sind das mehr oder weniger genau die einstellungen
        https://github.com/ioBroker/eslint-config/blob/main/MIGRATION.md
        https://github.com/ioBroker/eslint-config/blob/main/prettier.config.mjs

        ich habe bei prettier für markdown noch eine kleine erweiterung drin, das die aufzählungspunkte auch nur mit einem leerzeichen und nicht mit 3 leerzeichen abgetrennt werden

        SKBS Offline
        SKBS Offline
        SKB
        Developer Most Active
        schrieb am zuletzt editiert von
        #25

        @oliverio Genau - aber, da stand nichts von VS-Code und das war meine Frage, die ich diesbezüglich hatte :)

        ... wer nicht mit der Zeit geht, geht mit der Zeit ...

        Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

        OliverIOO 1 Antwort Letzte Antwort
        0
        • SKBS SKB

          @oliverio Genau - aber, da stand nichts von VS-Code und das war meine Frage, die ich diesbezüglich hatte :)

          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          schrieb am zuletzt editiert von OliverIO
          #26

          @skb

          die konfiguration der tools eslint und prettier ist ja unabhängig von vscode.
          es soll leute geben, die notepad nutzen und darüber dann ebenfalls automatisiert die befehle im hintergrund aufrufen.
          wer mit typescript programmiert hat da sozusagen auch ein tool laufen, das auf dateiänderungen scannt und dann sofort das transpiling anstößt. im gleichen zug werdne auch wieder eslint/prettier ausgeführt.

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          SKBS 1 Antwort Letzte Antwort
          0
          • OliverIOO OliverIO

            @skb

            die konfiguration der tools eslint und prettier ist ja unabhängig von vscode.
            es soll leute geben, die notepad nutzen und darüber dann ebenfalls automatisiert die befehle im hintergrund aufrufen.
            wer mit typescript programmiert hat da sozusagen auch ein tool laufen, das auf dateiänderungen scannt und dann sofort das transpiling anstößt. im gleichen zug werdne auch wieder eslint/prettier ausgeführt.

            SKBS Offline
            SKBS Offline
            SKB
            Developer Most Active
            schrieb am zuletzt editiert von SKB
            #27

            @oliverio Ich habe nichts anders behauptet.
            Meine Frage war: "Wie stelle ich VS-Code ein, damit die gleichen Einstellungen wie bei Prettier greifen?"

            Diese habe ich mir inzwischen selbst beantworten können. Danke!

            ... wer nicht mit der Zeit geht, geht mit der Zeit ...

            Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

            OliverIOO 1 Antwort Letzte Antwort
            0
            • SKBS SKB

              @oliverio Ich habe nichts anders behauptet.
              Meine Frage war: "Wie stelle ich VS-Code ein, damit die gleichen Einstellungen wie bei Prettier greifen?"

              Diese habe ich mir inzwischen selbst beantworten können. Danke!

              OliverIOO Offline
              OliverIOO Offline
              OliverIO
              schrieb am zuletzt editiert von
              #28

              @skb
              ja das geht auch, ist aber unnötig wenn man die extenstion verwendet.

              Meine Adapter und Widgets
              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
              Links im Profil

              SKBS 1 Antwort Letzte Antwort
              0
              • OliverIOO OliverIO

                @skb
                ja das geht auch, ist aber unnötig wenn man die extenstion verwendet.

                SKBS Offline
                SKBS Offline
                SKB
                Developer Most Active
                schrieb am zuletzt editiert von
                #29

                @oliverio Achso, wo ist das denn unnötig?
                Wenn ich die Extension nutze, greift dort eben nicht die Space, sondern die Tabs und die werden dann von Eslint eben wieder als Warning mitgeteilt.

                Somit muss man eben die Extension schon einstellen - ansonsten laufen die beiden Dinge eben nicht synchron!

                ... wer nicht mit der Zeit geht, geht mit der Zeit ...

                Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

                OliverIOO T 2 Antworten Letzte Antwort
                0
                • SKBS SKB

                  @oliverio Achso, wo ist das denn unnötig?
                  Wenn ich die Extension nutze, greift dort eben nicht die Space, sondern die Tabs und die werden dann von Eslint eben wieder als Warning mitgeteilt.

                  Somit muss man eben die Extension schon einstellen - ansonsten laufen die beiden Dinge eben nicht synchron!

                  OliverIOO Offline
                  OliverIOO Offline
                  OliverIO
                  schrieb am zuletzt editiert von
                  #30

                  @skb
                  den effekt hatte ich auch (einmal), hatte ich oben beschrieben

                  Meine Adapter und Widgets
                  TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                  Links im Profil

                  1 Antwort Letzte Antwort
                  0
                  • SKBS SKB

                    @oliverio Achso, wo ist das denn unnötig?
                    Wenn ich die Extension nutze, greift dort eben nicht die Space, sondern die Tabs und die werden dann von Eslint eben wieder als Warning mitgeteilt.

                    Somit muss man eben die Extension schon einstellen - ansonsten laufen die beiden Dinge eben nicht synchron!

                    T Nicht stören
                    T Nicht stören
                    ticaki
                    schrieb am zuletzt editiert von ticaki
                    #31

                    @skb

                    so sieht meine setting.json aus und es läuft für JS sychron:

                    {
                        "eslint.enable": true,
                        "editor.defaultFormatter": "esbenp.prettier-vscode",
                        "[javascript]": {
                            "editor.defaultFormatter": "esbenp.prettier-vscode"
                        }
                        "json.schemas": [
                            {
                                "fileMatch": [
                                    "io-package.json"
                                ],
                                "url": "https://raw.githubusercontent.com/ioBroker/ioBroker.js-controller/master/schemas/io-package.json"
                            },
                            {
                                "fileMatch": [
                                    "admin/jsonConfig.json",
                                    "admin/jsonCustom.json",
                                    "admin/jsonTab.json"
                                ],
                                "url": "https://raw.githubusercontent.com/ioBroker/adapter-react-v5/main/schemas/jsonConfig.json"
                            }
                        ]
                    }
                    

                    ansonsten hab ich die default Einstellungen die mit eslint 9 kommen.

                    Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                    Spenden

                    SKBS FeuersturmF 2 Antworten Letzte Antwort
                    1
                    • T ticaki

                      @skb

                      so sieht meine setting.json aus und es läuft für JS sychron:

                      {
                          "eslint.enable": true,
                          "editor.defaultFormatter": "esbenp.prettier-vscode",
                          "[javascript]": {
                              "editor.defaultFormatter": "esbenp.prettier-vscode"
                          }
                          "json.schemas": [
                              {
                                  "fileMatch": [
                                      "io-package.json"
                                  ],
                                  "url": "https://raw.githubusercontent.com/ioBroker/ioBroker.js-controller/master/schemas/io-package.json"
                              },
                              {
                                  "fileMatch": [
                                      "admin/jsonConfig.json",
                                      "admin/jsonCustom.json",
                                      "admin/jsonTab.json"
                                  ],
                                  "url": "https://raw.githubusercontent.com/ioBroker/adapter-react-v5/main/schemas/jsonConfig.json"
                              }
                          ]
                      }
                      

                      ansonsten hab ich die default Einstellungen die mit eslint 9 kommen.

                      SKBS Offline
                      SKBS Offline
                      SKB
                      Developer Most Active
                      schrieb am zuletzt editiert von
                      #32

                      @ticaki Danke, das du mich verstanden hast 😉
                      So in etwa habe ich meine Einstellungen auch - außer eben die Leerzeichen noch aktiviert.

                      ... wer nicht mit der Zeit geht, geht mit der Zeit ...

                      Aktuelle Entwicklung: Energiefluss - erweitert (https://forum.iobroker.net/topic/64734)

                      1 Antwort Letzte Antwort
                      0
                      • T ticaki

                        @skb

                        so sieht meine setting.json aus und es läuft für JS sychron:

                        {
                            "eslint.enable": true,
                            "editor.defaultFormatter": "esbenp.prettier-vscode",
                            "[javascript]": {
                                "editor.defaultFormatter": "esbenp.prettier-vscode"
                            }
                            "json.schemas": [
                                {
                                    "fileMatch": [
                                        "io-package.json"
                                    ],
                                    "url": "https://raw.githubusercontent.com/ioBroker/ioBroker.js-controller/master/schemas/io-package.json"
                                },
                                {
                                    "fileMatch": [
                                        "admin/jsonConfig.json",
                                        "admin/jsonCustom.json",
                                        "admin/jsonTab.json"
                                    ],
                                    "url": "https://raw.githubusercontent.com/ioBroker/adapter-react-v5/main/schemas/jsonConfig.json"
                                }
                            ]
                        }
                        

                        ansonsten hab ich die default Einstellungen die mit eslint 9 kommen.

                        FeuersturmF Online
                        FeuersturmF Online
                        Feuersturm
                        schrieb am zuletzt editiert von
                        #33

                        @ticaki Ich versuche gerade ESLint bei mir einzurichten in VSCode. Wenn ich deine settings.json so übernehme bekomme ich folgende Meldung
                        cdb693b5-91be-4bdd-9578-1b762a7f1f3e-grafik.png

                        Fehlt da wirklich ein Komma oder hab ich noch irgendwas falsch konfiguriert?
                        Ich hab die Erweiterungen Prettier - Code formatter und ESLint in VSCode installiert und der Adapter wurde auch schon auf ESLint 9 umgestellt.

                        mcm1957M T 2 Antworten Letzte Antwort
                        0
                        • FeuersturmF Feuersturm

                          @ticaki Ich versuche gerade ESLint bei mir einzurichten in VSCode. Wenn ich deine settings.json so übernehme bekomme ich folgende Meldung
                          cdb693b5-91be-4bdd-9578-1b762a7f1f3e-grafik.png

                          Fehlt da wirklich ein Komma oder hab ich noch irgendwas falsch konfiguriert?
                          Ich hab die Erweiterungen Prettier - Code formatter und ESLint in VSCode installiert und der Adapter wurde auch schon auf ESLint 9 umgestellt.

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

                          @feuersturm

                          Da fehlt m.E: ein Beistrich vor jsonSchemas um das ein gültige json werden zu lassen.

                          EDIT: Der Beistrich ist im Example da - ging wohl auf der Reise der Zeichen verloren.

                          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

                          FeuersturmF 1 Antwort Letzte Antwort
                          1
                          • mcm1957M mcm1957

                            @feuersturm

                            Da fehlt m.E: ein Beistrich vor jsonSchemas um das ein gültige json werden zu lassen.

                            EDIT: Der Beistrich ist im Example da - ging wohl auf der Reise der Zeichen verloren.

                            FeuersturmF Online
                            FeuersturmF Online
                            Feuersturm
                            schrieb am zuletzt editiert von
                            #35

                            @mcm1957 Ich musste erst einmal nachlesen, was ein Beistrich ist :-)
                            Was meinst du damit, dass er im "Example" da ist?

                            L mcm1957M 2 Antworten Letzte Antwort
                            0
                            • FeuersturmF Feuersturm

                              @mcm1957 Ich musste erst einmal nachlesen, was ein Beistrich ist :-)
                              Was meinst du damit, dass er im "Example" da ist?

                              L Offline
                              L Offline
                              Lucky_ESA
                              Developer Most Active
                              schrieb am zuletzt editiert von Lucky_ESA
                              #36

                              @feuersturm sagte in Migration ESLint 9.x:

                              @mcm1957 Ich musste erst einmal nachlesen, was ein Beistrich ist :-)
                              Was meinst du damit, dass er im "Example" da ist?

                              Da fehlt ein Komma hinter }

                              1 Antwort Letzte Antwort
                              2
                              • FeuersturmF Feuersturm

                                @mcm1957 Ich musste erst einmal nachlesen, was ein Beistrich ist :-)
                                Was meinst du damit, dass er im "Example" da ist?

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

                                @feuersturm
                                Sorry, das Example ist auch falsch. Da hab ich schlecht geschaut.

                                Da gehört ein Komma nach der }

                                1d3b9ac9-1a30-44c2-b21b-bce97b04ca7e-image.png

                                Das File ist ein ganz normales json file was die Syntax betrifft.

                                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

                                1 Antwort Letzte Antwort
                                0
                                • FeuersturmF Feuersturm

                                  @ticaki Ich versuche gerade ESLint bei mir einzurichten in VSCode. Wenn ich deine settings.json so übernehme bekomme ich folgende Meldung
                                  cdb693b5-91be-4bdd-9578-1b762a7f1f3e-grafik.png

                                  Fehlt da wirklich ein Komma oder hab ich noch irgendwas falsch konfiguriert?
                                  Ich hab die Erweiterungen Prettier - Code formatter und ESLint in VSCode installiert und der Adapter wurde auch schon auf ESLint 9 umgestellt.

                                  T Nicht stören
                                  T Nicht stören
                                  ticaki
                                  schrieb am zuletzt editiert von ticaki
                                  #38

                                  @feuersturm
                                  Sry ich hatte beim entfernen des auskommentierten Teils wohl zu viel erwischt

                                  Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

                                  Spenden

                                  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

                                  931

                                  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