(🐞) platform specified in inline configuration results in wacky behavior
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 20.6k
- Forks
- 3.3k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
It seems like even though this is not a per module option, it is still being applied to the module, but it's using the global(linux) type defs.
import sys, winreg
if sys.platform == "win32":
winreg.QueryValueEx
# Success: no issues found in 1 source file
# mypy: platform=win32
import sys, winreg
if sys.platform == "win32":
winreg.QueryValueEx # test.py:5:5: error: Module has no attribute "QueryValueEx" [attr-defined]
- Relates to: #12342
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 der bereitgestellten mypy-play-Reproduktion und vergleiche, wie die Inline-Einstellung # mypy: platform=win32 mit der entsprechenden globalen Plattformeinstellung verarbeitet wird. Prüfe, warum das Modul trotz der Inline-Option Linux-Typdefinitionen verwendet; abgeschlossen ist die Aufgabe, wenn der geschützte Verweis auf winreg.QueryValueEx mit der Inline-Einstellung akzeptiert wird und ein Regressionstest das Beispiel abdeckt.
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
- 42/100