lightning/pyproject.toml

62 lines
1.5 KiB
TOML

[build-system]
requires = [
"setuptools",
"wheel",
]
[tool.isort]
known_first_party = [
"pl_examples",
"pytorch_lightning",
"lightning_lite",
"tests_pytorch",
]
profile = "black"
line_length = 120
force_sort_within_sections = "False"
order_by_type = "False"
skip = ["_notebooks"]
[tool.black]
line-length = 120
exclude = '(_notebooks/.*)'
[tool.mypy]
files = [
"src/pytorch_lightning",
# TODO: Check typing in app source
# "src/lightning_app",
]
install_types = "True"
non_interactive = "True"
disallow_untyped_defs = "True"
ignore_missing_imports = "True"
show_error_codes = "True"
warn_redundant_casts = "True"
warn_unused_configs = "True"
warn_unused_ignores = "True"
allow_redefinition = "True"
# disable this rule as the Trainer attributes are defined in the connectors, not in its __init__
disable_error_code = "attr-defined"
# style choices
warn_no_return = "False"
# Ignore mypy errors for these files
# TODO: the goal is for this to be empty
[[tool.mypy.overrides]]
# the list can be generated with:
# mypy --no-error-summary 2>&1 | tr ':' ' ' | awk '{print $1}' | sort | uniq | sed 's/\.py//g; s|src/||g; s|\/|\.|g' | xargs -I {} echo '"{}",'
module = [
"pytorch_lightning.callbacks.progress.rich_progress",
"pytorch_lightning.profilers.base",
"pytorch_lightning.profilers.pytorch",
"pytorch_lightning.trainer.supporters",
"pytorch_lightning.trainer.trainer",
"pytorch_lightning.tuner.batch_size_scaling",
"pytorch_lightning.utilities.data",
]
ignore_errors = "True"