Dmypy crashes when adding import and rechecking
Offen
Dieses Issue hat noch niemand übernommen.
crash
topic-daemon
- Vorherrschende Sprache
- Python
- Sterne
- 20.6k
- Forks
- 3.3k
- PR-Merge-Kennzahlen
- PR-Kennzahlen ausstehend
Beschreibung
Crash Report
Daemon crashes after adding an import flask statement and re-checking.
Traceback
Daemon crashed!
Traceback (most recent call last):
File "mypy/dmypy_server.py", line 221, in serve
File "mypy/dmypy_server.py", line 264, in run_command
File "mypy/dmypy_server.py", line 323, in cmd_run
File "mypy/dmypy_server.py", line 385, in check
File "mypy/dmypy_server.py", line 564, in fine_grained_increment_follow_imports
File "mypy/dmypy_server.py", line 679, in find_reachable_changed_modules
KeyError: 'jinja2'
To Reproduce
mkdir test && cd test
touch hi.py
dmypy run -- . # works
echo "import flask" > hi.py
dmypy run -- . # crashes
dmypy run -- . # works
Note that flask is not installed.
Your Environment
- Mypy version used: 0.800
- Mypy command-line flags:
dmypy run -- . - Mypy configuration options from
mypy.ini(and other config files): none - Python version used: 3.9.1
- Operating system and version: macOS 10.15.7
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 mypy/dmypy_server.py und verfolge anhand der bereitgestellten Reproduktion cmd_run, check, fine_grained_increment_follow_imports und find_reachable_changed_modules. Untersuche die fehlende Suche nach 'jinja2', nachdem ein nicht verfügbares flask-Import hinzugefügt wurde; erledigt ist es, wenn der wiederholte dmypy-Lauf nicht mehr abstürzt.
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