NEWS
Javascript Adapter Fehhlerlog nicht komplett
-
@frankjoke Das geht so leider nicht - ich kann nicht sagen "prüfe diese Datei nach JS-Regeln". Vor allem: was sind diese "Regeln"? Würde man für alle Variablen den Typ
any
(beliebig) annehmen, würde auch die Überprüfung von Funktionsargumenten nicht funktionieren.Mit einer anderen Definitionsdatei könnte man nur die Typprüfung für Funktionargumente abschalten bzw. abschwächen (Fall 1). die anderen "Probleme" (Fall 2 und 3) kriegst du nur durch
// @ts-nocheck
weg - dann geht aber auch 1. nicht mehr richtig.Unter der Haube nutzt VSCode auch TypeScript für die Prüfung von JavaScripts. Ich habe deine Beispiele 2 und 3 mal 1:1 in VSCode kopiert (Dateiendung .js):
-
@AlCalzone
Al, das kommt wenn du immer alle settings auf typescript hast!Mein VS.Code verwendet Javascript settings für JS files und TS für TS.
Wir haben ja früher auch nur einen JS-Lint beim JS-Adapter gehabt!VS-Code offeriert ESLint und TSLint, und damit kann ich beides getrennt betrachten. Habe gehört dass ESLint irgendwann beides können soll und nur ein flag umgesetzt werden musss...
Egal, laut letztem Javascript-report verwenden nur 13% der Entwickler TS und ich finde es nicht richtig es allen aufzuzwingen.
-
@frankjoke sagte in Javascript Adapter Fehhlerlog nicht komplett:
Mein VS.Code verwendet Javascript settings für JS files und TS für TS.
Mir sind keine solchen Einstellungen bekannt. Kannst du deine vielleicht mal zeigen? Das einzige was ich diesbezüglich aktiv habe ist
"javascript.implicitProjectConfig.checkJs": true
, was nichts anders tut als//@ts-check
am Anfang jeder Datei.@frankjoke sagte in Javascript Adapter Fehhlerlog nicht komplett:
VS-Code offeriert ESLint und TSLint, und damit kann ich beides getrennt betrachten. Habe gehört dass ESLint irgendwann beides können soll und nur ein flag umgesetzt werden musss...
ESLint/TSLint hat grundsätzlich erst mal nix mit der Typprüfung zu tun, die auch im ioBroker-Editor aktiv ist. Das sind Plugins, die den Language Service nutzen.
Kann es sein, dass das was du mit JavaScript-Einstellungen meinst, Typprüfung=aus und ESLint=an ist?
Edit: Das könnte tatsächlich möglich sein, umzusetzen. Ich hab mal ein Issue aufgemacht: https://github.com/ioBroker/ioBroker.javascript/issues/377 -
@AlCalzone
Hmm, kann sein, ich habe ESLint und TSLint installiert und in TSLint das Flag auf false, damit werden JS-Dateien von ESLint gecheckt.. -
@frankjoke Ja dann hast du die Typprüfung wohl komplett aus, es sei denn du aktivierst sie mit
// @ts-check
. Wenn ich mal wieder Zeit für sowas habe, schaue ich mir mal an wie man die Prüffunktionen im ioBroker-Editor flexibler gestalten kann.BTW, ESLint kann jetzt auch TypeScript: https://github.com/AlCalzone/node-zwave-js/commit/497ca22284d2100a372253581c37347f284ed8c9
-
@AlCalzone
Kein großes Problem momentan, hab nur ein einziges script in meiner producktions-maschine welches ich mit meinem nächsten Adapter ersetzten kann. Sonst verwend' ichs nur zum Test.Was mich noch mehr stört ist dass anscheined Control-S für 'Save' nicht mehr funktioniert! Muss immer auf den button klicken...
-
@frankjoke sagte in Javascript Adapter Fehhlerlog nicht komplett:
Was mich noch mehr stört ist dass anscheined Control-S für 'Save' nicht mehr funktioniert! Muss immer auf den button klicken...
Dann mach am besten mal ein Issue auf
-
@frankjoke sagte in Javascript Adapter Fehhlerlog nicht komplett:
Egal, laut letztem Javascript-report verwenden nur 13% der Entwickler TS
Moin Frank, ich bin gerade zufällig auf diese Statistik gestoßen:
https://2018.stateofjs.com/javascript-flavors/overview/
Danach wird TS von 46% der Entwickler verwendet.Aber da man keiner Statistik trauen soll, die man nicht selbst gefälscht hat... Auf welchen Report beziehst du dich?
-
Habe das in einem Artikel gelesen der sich auf die Git-Statistik bezog (https://www.benfrederickson.com/ranking-programming-languages-by-github-users/).
Sorry, habe dann selbst nachgerechnet und es sind fast 15% aus Git (wenn ich Javascript und TS zusammenzähle und das als 100% ansehe).Bei deiner Statistik würde ich auch unter die 46% fallen da ich TS in einem einzigen Projekt das nur unter TS-lief verwendet habe (eigentlich nur js-code auf TS umgeschrieben), aber nie in meinen eigenen Projekten.
-
@frankjoke Danke für den Link. Das bestätigt wieder meine Hypothese mit dem selbst fälschen...