mirror of
https://github.com/ChuckBuilds/LEDMatrix.git
synced 2026-10-04 06:15:09 +00:00
* ci: mypy ratchet -- keep type-clean modules clean mypy-clean.txt lists the 71 modules under src/ that type-check clean; scripts/check_types.py runs mypy (--follow-imports=silent) on exactly those files and fails on any error or a missing/unsorted/duplicate entry. A new "Type check (mypy ratchet)" CI job runs it with mypy 1.20.2 and pinned stubs; the manual pre-commit mypy hook now runs the same script (a local hook, so mypy sees the installed requirements like CI does). 35 modules were made clean with annotation-only fixes: hints, typing.cast, TYPE_CHECKING imports, implicit-Optional defaults made explicit, and annotations widened (never guards removed) where mypy called a defensive isinstance check unreachable. No runtime behaviour change. mypy.ini: numpy and orjson are treated as Any (follow_imports=skip, also for stubs). numpy 2.3+ stubs use 3.12 `type` statements that mypy won't parse at python_version 3.10, and orjson is optional, so seeing its stubs made the result depend on whether it was installed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * chore: annotate check_types.py's list-form mypy subprocess Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
82 lines
2.6 KiB
Plaintext
82 lines
2.6 KiB
Plaintext
# The mypy ratchet: modules that type-check clean, one path per line, sorted.
|
|
#
|
|
# CI ("Type check (mypy ratchet)") runs `python scripts/check_types.py`, which
|
|
# runs mypy on exactly these files (imports followed silently, so errors in an
|
|
# unlisted module they import don't count) and fails on any error, so a listed
|
|
# module stays clean. Most of src/ isn't clean yet. When you make a module
|
|
# clean, add it here. Don't take a module off to get CI green -- fix the error
|
|
# (annotation-only where you can: hints, typing.cast, TYPE_CHECKING imports;
|
|
# widen an annotation rather than delete a defensive runtime check).
|
|
|
|
src/__init__.py
|
|
src/adaptive_images.py
|
|
src/auto_update_setup.py
|
|
src/backup_manager.py
|
|
src/base_odds_manager.py
|
|
src/cache/__init__.py
|
|
src/cache/cache_metrics.py
|
|
src/cache/cache_strategy.py
|
|
src/cache/memory_cache.py
|
|
src/common/__init__.py
|
|
src/common/api_helper.py
|
|
src/common/bdf_font.py
|
|
src/common/espn_dates.py
|
|
src/common/font_layout.py
|
|
src/common/frame_timing.py
|
|
src/common/json_body.py
|
|
src/common/logo_helper.py
|
|
src/common/path_safety.py
|
|
src/common/permission_utils.py
|
|
src/common/render_gate.py
|
|
src/common/scroll_config.py
|
|
src/common/snapshot_policy.py
|
|
src/common/sports_card.py
|
|
src/common/sports_scroll.py
|
|
src/config_service.py
|
|
src/core_config_keys.py
|
|
src/deprecation.py
|
|
src/device_location.py
|
|
src/display_geometry.py
|
|
src/dynamic_team_resolver.py
|
|
src/exceptions.py
|
|
src/font_usage.py
|
|
src/logging_config.py
|
|
src/logo_downloader.py
|
|
src/matrix_support.py
|
|
src/pi5_matrix_support.py
|
|
src/plugin_system/__init__.py
|
|
src/plugin_system/compatibility.py
|
|
src/plugin_system/operation_history.py
|
|
src/plugin_system/operation_queue.py
|
|
src/plugin_system/operation_types.py
|
|
src/plugin_system/plugin_dirs.py
|
|
src/plugin_system/plugin_executor.py
|
|
src/plugin_system/plugin_health.py
|
|
src/plugin_system/plugin_loader.py
|
|
src/plugin_system/plugin_state.py
|
|
src/plugin_system/repo_urls.py
|
|
src/plugin_system/resource_monitor.py
|
|
src/plugin_system/saved_repositories.py
|
|
src/plugin_system/schema_manager.py
|
|
src/plugin_system/state_reconciliation.py
|
|
src/plugin_system/testing/__init__.py
|
|
src/plugin_system/testing/bounds_display_manager.py
|
|
src/plugin_system/testing/loading.py
|
|
src/plugin_system/testing/mocks.py
|
|
src/plugin_system/testing/plugin_test_base.py
|
|
src/plugin_system/testing/sizes.py
|
|
src/redaction.py
|
|
src/scan_order.py
|
|
src/startup_validator.py
|
|
src/vegas_mode/__init__.py
|
|
src/vegas_mode/config.py
|
|
src/vegas_mode/coordinator.py
|
|
src/vegas_mode/geometry.py
|
|
src/vegas_mode/stream_manager.py
|
|
src/web_interface/api_helpers.py
|
|
src/web_interface/config_arrays.py
|
|
src/web_interface/error_handler.py
|
|
src/web_interface/errors.py
|
|
src/web_interface/secret_helpers.py
|
|
src/web_interface/validators.py
|