Make mypy run again, fix what it found, and add one check script
a7fb56cpinned mypy to Python 3.11 for the Pi. In a dev venv that also has the analysis extra, numpy's stubs use 3.12 syntax, so mypy aborted on them before checking a single file - and from the next day on four real errors went in unnoticed (ebab03b,0ef5a04,9fd106b). Skip following numpy/librosa instead; only librosa_analyzer.py touches them. Fix the four errors (variables reused with a narrower type). There is no CI, so scripts/check.sh is the gate: pytest, ruff, mypy, vitest, tsc and eslint in one command. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -77,3 +77,12 @@ warn_unreachable = true
|
||||
# checkout must still type-check clean, so it needs the same treatment as librosa.
|
||||
module = ["vlc", "serial_asyncio", "ruamel.*", "librosa.*", "numpy", "feedparser"]
|
||||
ignore_missing_imports = true
|
||||
|
||||
[[tool.mypy.overrides]]
|
||||
# Recent numpy ships stubs written in 3.12+ syntax (`type X = ...`). Checking against
|
||||
# the device's 3.11 makes mypy refuse to parse them and abort before checking anything
|
||||
# at all - which is what happened in a dev venv that has the analysis extra. Treat the
|
||||
# analysis stack as untyped instead: it is only touched by librosa_analyzer.py.
|
||||
module = ["numpy", "numpy.*", "librosa", "librosa.*"]
|
||||
follow_imports = "skip"
|
||||
follow_imports_for_stubs = true
|
||||
|
||||
Reference in New Issue
Block a user