python / python/mypy

Consider adding new plugin API for checking implicit definitions

Offen
#15,515 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

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

Beschreibung

Feature

This PR introduces a new check for mypy: we now can find incompatible __post_init__ methods in @dataclasses: https://github.com/python/mypy/pull/15503/files#diff-f96a2d6138bc6cdf2a07c4d37f6071cc25c1631afc107e277a28d5b59fc0ef04R1048-R1050

But, the thing is that for now we are using a direct call to dataclasses internal plugin, because there are no ways to do it otherwise.

Pitch

Let's discuss possible options we have to introduce a new API that can solve this problem.

CC @ilevkivskyi (original reviewer), @Tinche (as you might be interested), @JukkaL

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 damit, den verlinkten PR und den in diesem Issue beschriebenen internen Plugin-Aufruf von dataclasses zu lesen. Untersuche die möglichen Designs der Plugin-API zur Prüfung impliziter Definitionen, wobei completion ein vereinbarter Ansatz ist, der den direkten internen Aufruf vermeidet.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

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

Neue Issues direkt in Ihr Postfach

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