Skip to content

Instantly share code, notes, and snippets.

@dmontagu
Last active September 30, 2019 05:06
Show Gist options
  • Save dmontagu/5ca4a078c8755d4aa01f71aaa67f60c6 to your computer and use it in GitHub Desktop.
Save dmontagu/5ca4a078c8755d4aa01f71aaa67f60c6 to your computer and use it in GitHub Desktop.
Static configs
# dmypy start -- --config-file mypy.ini -m fastapi -m pydantic -m starlette ; dmypy check backend/app/app
[mypy]
plugins = sqlmypy,backend/app/pydanticmypy.py:strict
follow_imports = silent
strict_optional = True
warn_redundant_casts = True
warn_unused_ignores = True
disallow_any_generics = True
check_untyped_defs = True
ignore_missing_imports = True
# for strict mypy: (this is the tricky one :-))
disallow_untyped_defs = True
# ...
[tool.black]
line-length = 120
target_version = ['py37']
include = '\.pyi?$'
exclude = '''
(
/(
\.git
| \.mypy_cache
| \.pytest_cache
| htmlcov
| build
| pybind11
)/
)
'''
[tool.isort]
line_length = 120
multi_line_output = 3
include_trailing_comma = true
force_grid_wrap = 0
combine_as_imports = true
[tool:pytest]
testpaths = tests/local
timeout = 10
[coverage:run]
source = app
branch = True
[coverage:report]
precision = 2
exclude_lines =
pragma: no cover
raise NotImplementedError
raise NotImplemented
if TYPE_CHECKING:
@overload
[flake8]
max-line-length = 120
ignore = E203,W503,F821
recursive = True
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment