[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