[tool:pytest]
norecursedirs =
    .git
    dist
    build
python_files =
    test_*.py
# doctest_plus = disabled
addopts =
    --strict
    --doctest-modules
markers =
    slow
    remote_data
    filterwarnings
    gpus_param_tests
junit_duration_report = call

[coverage:report]
exclude_lines =
    pragma: no-cover
    warnings
    pass
    rank_zero_warn

[flake8]
# TODO: this should be 88 or 100 according PEP8
max-line-length = 120
exclude = .tox,*.egg,build,temp
select = E,W,F
doctests = True
verbose = 2
# https://pep8.readthedocs.io/en/latest/intro.html#error-codes
format = pylint
ignore =
    E731
    W504
    F401
    F841
    E203  # E203 - whitespace before ':'. Opposite convention enforced by black
    E231  # E231: missing whitespace after ',', ';', or ':'; for black
    E501  # E501 - line too long. Handled by black, we have longer lines
    W503  # W503 - line break before binary operator, need for black

# setup.cfg or tox.ini
[check-manifest]
ignore =
    *.yml
    .github
    .github/*
    .circleci

[metadata]
license_file = LICENSE
# long_description = file:README.md
# long_description_content_type = text/markdown

[pydocstyle]
convention = pep257
# D104, D107: Ignore missing docstrings in __init__ files and methods.
# D202: Ignore a blank line after docstring (collision with Python Black in decorators)
add-ignore = D104,D107,D202
max-line-length = 120

[tool:isort]
known_first_party = pytorch_lightning,tests
default_section=THIRDPARTY
line_length=120