NEWS
"@iobroker/eslint-config" & "@param" => Wo ist der Fehler?
-
Hallo,
ich will meinen Adapter sprinklecontrol aktualisieren.
Hierzu habe ich @iobroker/eslint-config: 1.0.0 installiert und alle Fehler behoben.
Jetzt will ich Funktionen im JSDoc deklarieren und erhalte die Fehlermeldung in eslint
bei ausführen von"lint": "eslint -c eslint.config.mjs ."
in der package.json
/home/dirk/ioBroker.sprinklecontrol/lib/tools.js 7:1 warning Types are not permitted on @param jsdoc/no-types 8:1 warning Types are not permitted on @param jsdoc/no-types
Meine Funktion lautet:
/** * func addTime (02:12:24 + 00:15) || (807) => 02:12:39 * * @param {string|number} time1 - z.B. 02:12:24 || 807 => 02:12:39 * @param {string|number|undefined} time2 -z.B. 02:12:24 || 807 => 02:12:39 || undef. * @returns */ function addTime(time1, time2){ . . . . }
Kann mir bitte jemand sagen wo der Fehler liegt und wie ich ihn beheben kann?
Auf Github.com ist die Funktion zu sehen
-
@dirk-peter sagte in "@iobroker/eslint-config" & "@param" => Wo ist der Fehler?:
- @param {string|number} time1 -
tausche type mit parameter name ==> * @param time1 {string|number} Beschreibung
-
-
@dirk-peter kann ich nicht beantworten, evtl. liegt das an eslint aber wissen tu ich es nicht. Ich kenne es nur wie gezeigt habe aber auch nie eine Beschreibung von JSDOC gelesen
-
Ev. wart mal mit einer großflächigeren Umstellung ab. Auf den ersten Blick sieht es für mich so aus, als wäre die rule bei JS nicht sinnvoll. Oder ist das ein TypeScript Code?
Es ist jedenfalls nicht wirklich sinnvoll den Typ weglassen zu müssen um ihn in den Beschreibungstest zu schieben...Ich hab grad mal bei @foxriver76 nachgefragt.
EDIT: Satz gestrichen nach inhaltlicher Korrektur durch Fastfoot
-
SO schon geklärt.
Diese Rule sollte nur bei TYPESCRITP aktiv sein. Bei JS MOdulen ist die unsinning. Dies wird in der zentralen Konfig nachgebessert.
Bitte daher entweder die Warning mal ignorieren oder die Rule in der lokalen Config disablen.
-
@mcm1957 sagte in "@iobroker/eslint-config" & "@param" => Wo ist der Fehler?:
Es ist jedenfalls nicht wirklich sinnvoll den Typ weglassen zu müssen um ihn in den Beschreibungstest zu schieben...
Diese Aussage ist falsch! Der Typ wird sehr wohl auch nach der Umstellung richtig erkannt und moniert, wenn falsch.
Richtig ist dass die Rule bei reinem JS nicht benötigt wird, sie ist dazu da um existierende Typdeklarationen nicht zweimal zu haben, was nur bei TS der Fall sein kann
-
Ok - danke für die Richtigstellung.
Tatsache ist jedenfalls, dass auch für JS die recommended TS checks geladen werden. Das ist ein Fehler in der eslint-config, für JS sollten die "normalen" Defaults geladen werden. Wurde von Foxriver76 bestätigt und wir in der nächsten Release gefixed.
Issue dazu: https://github.com/ioBroker/eslint-config/issues/29
-