blob: 4add03f3658d1f0d930fa647933c27701b094829 [file] [log] [blame]
[flake8]
max-line-length = 99
# typeshed and unit test fixtures have .pyi-specific flake8 configuration
exclude =
# from .gitignore: directories, and file patterns that intersect with *.py
build,
bin,
lib,
include,
@*,
env,
docs/build,
out,
.venv,
.mypy_cache,
.git,
.cache,
# Sphinx configuration is irrelevant
docs/source/conf.py,
# conflicting styles
misc/*,
# conflicting styles
scripts/*,
# tests have more relaxed styling requirements
# fixtures have their own .pyi-specific configuration
test-data/*,
mypyc/test-data/*,
# typeshed has its own .pyi-specific configuration
mypy/typeshed/*,
.tox
.eggs
.Python
# Things to ignore:
# E128: continuation line under-indented (too noisy)
# W601: has_key() deprecated (false positives)
# E701: multiple statements on one line (colon) (we use this for classes with empty body)
# E704: multiple statements on one line (def)
# E402: module level import not at top of file
# B3??: Python 3 compatibility warnings
# B006: use of mutable defaults in function signatures
# B007: Loop control variable not used within the loop body.
# B011: Don't use assert False
# F821: Name not defined (generates false positives with error codes)
# F811: Redefinition of unused function (causes annoying errors with overloads)
extend-ignore = E128,W601,E701,E704,E402,B3,B006,B007,B011,F821,F811
[coverage:run]
branch = true
source = mypy
parallel = true
[coverage:report]
show_missing = true
skip_covered = True
omit = mypy/test/*
exclude_lines =
\#\s*pragma: no cover
^\s*raise AssertionError\b
^\s*raise NotImplementedError\b
^\s*return NotImplemented\b
^\s*raise$
^if __name__ == ['"]__main__['"]:$