# All configuration for plugins and other utils is defined here. # Read more about `setup.cfg`: # https://docs.python.org/3/distutils/configfile.html [flake8] format = wemake show-source = True doctests = False statistics = False # darglint configuration: # https://github.com/terrencepreilly/darglint strictness = long docstring-style = numpy # Plugins: max-complexity = 6 max-line-length = 80 exclude = # Trash and cache: .git __pycache__ .venv .eggs *.egg temp ignore = D100, D104, D401, W504, X100, RST303, RST304, DAR103, DAR203 per-file-ignores = # Allow to have magic numbers inside migrations, wrong module names, # and string over-use: */migrations/*.py: WPS102, WPS114, WPS226, WPS432 # Allow `__init__.py` with logic for configuration: test_project/settings.py: S105, WPS226, WPS407 tests/test_*.py: N806, S101, S404, S603, S607, WPS118, WPS226, WPS432, WPS442 [isort] # isort configuration: # https://github.com/timothycrosley/isort/wiki/isort-Settings include_trailing_comma = true use_parentheses = true # See https://github.com/timothycrosley/isort#multi-line-output-modes multi_line_output = 3 line_length = 80 # Useful for our test app: known_first_party = test_project [tool:pytest] # Django options: # https://pytest-django.readthedocs.io/en/latest/ DJANGO_SETTINGS_MODULE = test_project.settings # PYTHONPATH configuration: # https://docs.pytest.org/en/7.0.x/reference/reference.html#confval-pythonpath pythonpath = ./eav # py.test options: norecursedirs = *.egg .eggs dist build docs .tox .git __pycache__ # You will need to measure your tests speed with `-n auto` and without it, # so you can see whether it gives you any performance gain, or just gives # you an overhead. See `docs/template/development-process.rst`. addopts = -p no:randomly --strict-markers --strict-config --doctest-modules --cov=eav --cov-report=term-missing:skip-covered --cov-report=html --cov-report=xml --cov-branch --cov-fail-under=90 [coverage:run] # Exclude tox output from coverage calculation omit = */.tox/* [coverage:report] skip_covered = True show_missing = True sort = Cover exclude_lines = pragma: no cover # type hinting related code if TYPE_CHECKING: [mypy] # mypy configurations: https://bit.ly/2zEl9WI allow_redefinition = False check_untyped_defs = True disallow_any_explicit = True disallow_any_generics = True disallow_untyped_calls = True ignore_errors = False ignore_missing_imports = True implicit_reexport = False strict_optional = True strict_equality = True local_partial_types = True no_implicit_optional = True warn_no_return = True warn_unused_ignores = True warn_redundant_casts = True warn_unused_configs = True warn_unreachable = True