mirror of
https://github.com/datahub-project/datahub.git
synced 2025-09-20 06:33:24 +00:00
89 lines
2.4 KiB
INI
89 lines
2.4 KiB
INI
[flake8]
|
|
max-complexity = 15
|
|
ignore =
|
|
# Ignore: line length issues, since black's formatter will take care of them.
|
|
E501,
|
|
# Ignore: 1 blank line required before class docstring.
|
|
D203,
|
|
# See https://stackoverflow.com/a/57074416.
|
|
W503,
|
|
# See https://github.com/psf/black/issues/315.
|
|
E203
|
|
exclude =
|
|
.git,
|
|
src/datahub/metadata,
|
|
venv,
|
|
.tox,
|
|
__pycache__
|
|
per-file-ignores =
|
|
# imported but unused
|
|
__init__.py: F401
|
|
ban-relative-imports = true
|
|
|
|
[mypy]
|
|
plugins =
|
|
sqlmypy,
|
|
pydantic.mypy
|
|
exclude = ^(venv|build|dist)/
|
|
ignore_missing_imports = yes
|
|
strict_optional = yes
|
|
check_untyped_defs = yes
|
|
disallow_incomplete_defs = yes
|
|
disallow_untyped_decorators = yes
|
|
warn_unused_configs = yes
|
|
# eventually we'd like to enable these
|
|
disallow_untyped_defs = no
|
|
|
|
# try to be a bit more strict in certain areas of the codebase
|
|
[mypy-datahub.*]
|
|
ignore_missing_imports = no
|
|
[mypy-tests.*]
|
|
ignore_missing_imports = no
|
|
[mypy-datahub.configuration.*]
|
|
disallow_untyped_defs = yes
|
|
[mypy-datahub.emitter.*]
|
|
disallow_untyped_defs = yes
|
|
[mypy-datahub.ingestion.api.*]
|
|
disallow_untyped_defs = yes
|
|
[mypy-datahub.ingestion.run.*]
|
|
disallow_untyped_defs = yes
|
|
[mypy-datahub.utilities.*]
|
|
disallow_untyped_defs = yes
|
|
|
|
[tool:pytest]
|
|
addopts = --cov=src --cov-report term-missing --cov-config setup.cfg --strict-markers
|
|
markers =
|
|
integration: marks tests to only run in integration (deselect with '-m "not integration"')
|
|
slow_integration: marks tests that are too slow to even run in integration (deselect with '-m "not slow_integration")
|
|
testpaths =
|
|
tests/unit
|
|
tests/integration
|
|
|
|
[coverage:run]
|
|
# Because of some quirks in the way setup.cfg, coverage.py, pytest-cov,
|
|
# and tox interact, we should not uncomment the following line.
|
|
# See https://pytest-cov.readthedocs.io/en/latest/config.html and
|
|
# https://coverage.readthedocs.io/en/coverage-5.0/config.html.
|
|
# We also have some additional pytest/cov config options in tox.ini.
|
|
# source = src
|
|
|
|
[coverage:paths]
|
|
# This is necessary for tox-based coverage to be counted properly.
|
|
source =
|
|
src
|
|
*/site-packages
|
|
|
|
[coverage:report]
|
|
# The fail_under value ensures that at least some coverage data is collected.
|
|
# We override its value in the tox config.
|
|
show_missing = true
|
|
exclude_lines =
|
|
pragma: no cover
|
|
@abstract
|
|
if TYPE_CHECKING:
|
|
omit =
|
|
# omit codegen
|
|
src/datahub/metadata/*
|
|
# omit example dags
|
|
src/datahub_provider/example_dags/*
|