torch-nn-functional-mypy-bug-when-torchvision-installed
Offen
Dieses Issue hat noch niemand übernommen.
crash
- Vorherrschende Sprache
- Python
- Sterne
- 20.6k
- Forks
- 3.3k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
description
mypy crashes on a file that imports torch.nn.functional when torchvision is installed in conjunction with --follow-imports=skip flag.
traceback
$ mypy --show-traceback --follow-imports=skip harmless.py
Traceback (most recent call last):
File "/home/eytan/miniconda3/envs/mypy/bin/mypy", line 8, in <module>
sys.exit(console_entry())
File "/home/eytan/miniconda3/envs/mypy/lib/python3.10/site-packages/mypy/__main__.py", line 15, in console_entry
main()
File "mypy/main.py", line 103, in main
File "mypy/main.py", line 187, in run_build
File "mypy/build.py", line 193, in build
File "mypy/build.py", line 268, in _build
File "mypy/build.py", line 2950, in dispatch
File "mypy/build.py", line 3348, in process_graph
File "mypy/build.py", line 3475, in process_stale_scc
File "mypy/build.py", line 2507, in write_cache
File "mypy/build.py", line 1568, in write_cache
File "mypy/nodes.py", line 390, in serialize
File "mypy/nodes.py", line 4012, in serialize
File "mypy/nodes.py", line 3949, in serialize
File "mypy/nodes.py", line 3374, in serialize
File "mypy/types.py", line 671, in serialize
File "mypy/types.py", line 2428, in serialize
File "mypy/types.py", line 1451, in serialize
File "mypy/types.py", line 671, in serialize
File "mypy/types.py", line 3093, in serialize
AssertionError: Internal error: unresolved placeholder type None
Minimal example repo with instructions
- repository here
environment
- OS: Ubuntu 22.04.4
- miniconda: 24.5.0
- mypy: 1.11.1
reproduced in:
- Python:
3.10,3.11,3.12
full pip freezes in example repo
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 Minimalbeispiel-Repository und führe den gemeldeten mypy-Befehl mit --follow-imports=skip aus, wobei torch und torchvision installiert sind. Verfolge den in mypy/build.py, mypy/nodes.py und mypy/types.py genannten Cache-Schreibpfad und überprüfe anschließend, dass der Befehl ohne die nicht aufgelöste Platzhalter-Typassertion abgeschlossen wird.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python, pytorch
- Bereich
- devtools
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100