(🐞) false negative with `dataclass` "non-default argument follows default argument"
Offen
Dieses Issue hat noch niemand übernommen.
bug
topic-dataclasses
- Vorherrschende Sprache
- Python
- Sterne
- 20.6k
- Forks
- 3.3k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
from dataclasses import dataclass
@dataclass
class A:
a: int = 0
@dataclass
class B(A):
a: int
b: str
Mypy shows no error but this fails at runtime with TypeError: non-default argument 'b' follows default argument
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit dem Reproduzierer für Dataclass-Vererbung im Issue und führe ihn mit der verlinkten Playground-Konfiguration durch mypy aus. Verfolge, wie der Checker geerbte Dataclass-Felder und die Reihenfolge der Standardwerte verarbeitet; fertig ist die Aufgabe, wenn mypy die im Beispiel gezeigte zur Laufzeit ungültige Reihenfolge von Argumenten ohne Standardwert meldet.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- devtools
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100