| [mypy] |
| # Here some paths are excluded from even being parsed, working around cases of |
| # invalid syntax we can't fix (yet) or where the code isn't in a package and |
| # there's no good place to add __init__.py files. The following are excluded: |
| # - tools/third_party/ (vendored dependencies) |
| # - All setup.py files (avoiding duplicate module named "setup") |
| # - tools/wptserve/docs/conf.py (generated code) |
| # - tools/wptserve/tests/ (deliberately invalid syntax) |
| exclude = (^tools/third_party/|/setup\.py$|^tools/wptserve/docs/conf.py|^tools/wptserve/tests/|^tools/third_party_modified/mozlog/|^tools/wptserve/wptserve/cgi/test_cgi\.py$) |
| mypy_path = tools/wptrunner:tools/wptserve:tools/webdriver:tools/webtransport:tools/third_party/h2/src:tools/third_party/hpack/src:tools/third_party/hyperframe/src:tools/third_party/pywebsocket3:tools/third_party/websockets/src |
| #check_untyped_defs = True |
| disallow_any_generics = True |
| disallow_incomplete_defs = True |
| disallow_subclassing_any = True |
| disallow_untyped_calls = True |
| disallow_untyped_decorators = True |
| disallow_untyped_defs = True |
| no_implicit_optional = True |
| strict_equality = True |
| warn_redundant_casts = True |
| warn_return_any = True |
| warn_unused_configs = True |
| warn_unused_ignores = True |
| warn_unreachable = True |
| |
| show_error_codes = True |
| |
| # Don't type check third_party things |
| [mypy-h2.*] |
| follow_imports = silent |
| |
| [mypy-hpack.*] |
| follow_imports = silent |
| |
| [mypy-hyperframe.*] |
| follow_imports = silent |
| |
| [mypy-pywebsocket3.*] |
| follow_imports = silent |
| |
| [mypy-websockets.*] |
| follow_imports = silent |
| |
| # Ignore missing or untyped libraries. |
| [mypy-Cocoa.*] |
| ignore_missing_imports = True |
| |
| [mypy-ColorSync.*] |
| ignore_missing_imports = True |
| |
| [mypy-Quartz.*] |
| ignore_missing_imports = True |
| |
| [mypy-marionette_driver.*] |
| ignore_missing_imports = True |
| |
| [mypy-mozcrash.*] |
| ignore_missing_imports = True |
| |
| [mypy-mozdebug.*] |
| ignore_missing_imports = True |
| |
| [mypy-mozdevice.*] |
| ignore_missing_imports = True |
| |
| [mypy-mozinfo.*] |
| ignore_missing_imports = True |
| |
| [mypy-mozinstall.*] |
| ignore_missing_imports = True |
| |
| [mypy-mozleak.*] |
| ignore_missing_imports = True |
| |
| [mypy-mozlog.*] |
| ignore_missing_imports = True |
| |
| [mypy-mozprocess.*] |
| ignore_missing_imports = True |
| |
| [mypy-mozprofile.*] |
| ignore_missing_imports = True |
| |
| [mypy-mozrunner.*] |
| ignore_missing_imports = True |
| |
| [mypy-mozversion.*] |
| ignore_missing_imports = True |
| |
| [mypy-taskcluster.*] |
| ignore_missing_imports = True |
| |
| [mypy-ua_parser.*] |
| ignore_missing_imports = True |