py. syntax is doing weird things with the clj-kondo linter

Offen
#268 6 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
25/100
Issue-Typ
Feature
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
clojure, python
Bereich
tooling

Rechercherichtung

Beginne damit, den Aufruf py/py. mit clj-kondo zu reproduzieren, und vergleiche dabei das Verhalten eines benutzerdefinierten :lint-as mit der Unterdrückung von :unresolved-var. Keine Implementierungsdatei oder kein Test wird genannt; verfolge, wie clj-kondo die reservierte py.-Notation parst, und definiere den Abschluss als eine funktionierende Lint-Konfiguration oder dokumentierte Unterstützung, die beide gemeldeten Wellenlinien entfernt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

The linter is doing something weird, because it assumes that py/py. is actually a reference to the symbol "py/py" with no ".".

I'm unable to write a custom :lint-as for this, because clj-kondo doesn't consider the possibility that "py." could represent a macro. ingoring :unresolved-var doesn't quite fill my usecase, as I want to remove the red squiglies under the second argument of the py. call as well.

I think clj-kondo is technically in the right here, because py. isn't supported clojure syntax, although I do like the py. notation, and it'd be nice if it was supported. I don't ask to change the notation, but it'd be nice to have a workaround that fixes these tooling issues.

https://clojure.org/reference/reader#_reader_forms

Symbols beginning or ending with '.' are reserved by Clojure.

Great Library! -- Sammy

Vorherrschende Sprache
Clojure
Sterne
1.2k
Forks
74
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus clj-python/libpython-clj

Alle Issues in clj-python/libpython-clj

Ähnliche Issues

Weitere Issues zu Clojure

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.