python-configs/src/tqftw_python_configs/mypy.ini
Lilith 56af66b24e feat(@configs/python): add shared Python tooling configurations
Provides standardized configs for ruff, mypy, and pytest.

- ruff.toml: linting + formatting (100 char, E/F/I/N/W/UP/B/C4/SIM/RUF/PTH/ERA)
- mypy.ini: strict type checking
- pytest.ini: auto async, strict markers

Usage: extend = ".venv/.../tqftw_python_configs/ruff.toml"

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-04 23:11:24 -08:00

50 lines
1.2 KiB
INI

# tqftw-python-configs: MyPy Configuration
# Type checking for all TQFTW Python projects
#
# Usage in pyproject.toml:
# [tool.mypy]
# # Copy these settings or reference via extends (if supported)
#
# Or copy this file to your project root as mypy.ini
[mypy]
python_version = 3.10
strict = true
# Strict mode enables these (documented for reference):
warn_return_any = true
warn_unused_configs = true
disallow_untyped_defs = true
disallow_incomplete_defs = true
check_untyped_defs = true
no_implicit_optional = true
warn_redundant_casts = true
warn_unused_ignores = true
disallow_any_generics = true
disallow_subclassing_any = true
disallow_untyped_calls = true
disallow_untyped_decorators = true
no_implicit_reexport = true
strict_equality = true
strict_concatenate = true
# Additional strictness
warn_unreachable = true
show_error_codes = true
show_column_numbers = true
# Performance
incremental = true
cache_dir = .mypy_cache
# Third-party library handling
ignore_missing_imports = false
follow_imports = normal
# Per-module overrides for common patterns
[mypy-tests.*]
disallow_untyped_defs = false
disallow_untyped_decorators = false
[mypy-conftest]
disallow_untyped_defs = false