TypeVar with constraints cannot specify overloads
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 20.6k
- Forks
- 3.3k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
TypeVar with constraints (e.g. TypeVar('NumberT', int, float)) cannot be used to specify an overload: that is, it can be used, but seems to go unchecked.
To Reproduce
https://mypy-play.net/?mypy=latest&python=3.10&gist=30f7918d00fbe9c4a86bfacea2d20da3
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 verlinkten mypy-play-Reproducer und untersuche den Pfad der Typprüfung für die Verwendung von constrained TypeVar in Overloads. Ermittle, warum der ungültige Overload akzeptiert wird, füge anschließend einen Regressionstest hinzu, der den Reproducer abdeckt, und überprüfe, dass der Overload wie vorgesehen abgelehnt oder geprüft wird.
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
- 35/100