subtype dict unpack
Offen
Dieses Issue hat noch niemand übernommen.
bug
- Vorherrschende Sprache
- Python
- Sterne
- 20.6k
- Forks
- 3.3k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
Bug Report
To Reproduce
from typing import Dict
a: Dict[int, str] = {}
b: Dict[object, str] = {object(): 'a', 'lol': 'b', **a}
Expected Behavior
no error
Actual Behavior
confusing error message Argument 1 to "update" of "dict" has incompatible type "Dict[int, str]"; expected "Mapping[object, str]" even though update method was not used
Your Environment
- Mypy version used: 0.812
- Mypy command-line flags: none
- Mypy configuration options from
mypy.ini(and other config files): none - Python version used: 3.7.3
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
Reproduziere das gemeldete Snippet mit mypy 0.812 und verfolge, wie das Entpacken von Dictionaries die auf dict.update verweisende Diagnose erzeugt. Bestätige den Fix, indem du sicherstellst, dass dieses Beispiel keinen Fehler meldet, und füge einen Regressionstest hinzu, der das entpackte Dict[int, str] abdeckt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- compilers
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100