python / python/mypy

Upgrade `dmypy` to a language server (LSP)

Offen
#10,463 5 Kommentare 32 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

feature topic-daemon
Vorherrschende Sprache
Python
Sterne
20.6k
Forks
3.3k
PR-Merge-Kennzahlen
PR-Kennzahlen ausstehend

Beschreibung

Feature

I would like for dmypy to be a fully fledged language server. Obviously it would only support diagnostics (which would make this much simpler). But this would be very convenient from an editor point on view given the direction editor tooling is going.

Could probably use something like https://github.com/openlawlibrary/pygls to handle the low level details of LSP.

Pitch

Most editors and their plugins shell out and call mypy. But this can be quite slow on some projects since it needs to cold start every time (except for .mypy_cache).

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit dem Lesen der dmypy-Implementierung und der LSP-Spezifikation und bewerte anschließend pygls als die vorgeschlagene Low-Level-Bibliothek. Lege fest, wie dmypy Diagnosen über LSP bereitstellen soll, und identifiziere die erforderlichen Editor- oder Protokolltests, um den Server zu verifizieren. Erledigt ist die Aufgabe, wenn dmypy als Language Server arbeitet, der Editoren Diagnosen bereitstellt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

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

Neue Issues direkt in Ihr Postfach

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