mirror of
https://github.com/home-assistant/core
synced 2024-09-06 10:29:55 +02:00
![Ville Skyttä](/assets/img/avatar_default.png)
* Upgrade mypy to 0.770, related cleanups https://mypy-lang.blogspot.com/2020/03/mypy-0770-released.html * Clean up config and make it a notch stricter, address findings
74 lines
3.4 KiB
INI
74 lines
3.4 KiB
INI
[metadata]
|
|
license = Apache License 2.0
|
|
license_file = LICENSE.md
|
|
platforms = any
|
|
description = Open-source home automation platform running on Python 3.
|
|
long_description = file: README.rst
|
|
keywords = home, automation
|
|
classifier =
|
|
Development Status :: 4 - Beta
|
|
Intended Audience :: End Users/Desktop
|
|
Intended Audience :: Developers
|
|
License :: OSI Approved :: Apache Software License
|
|
Operating System :: OS Independent
|
|
Programming Language :: Python :: 3.7
|
|
Topic :: Home Automation
|
|
|
|
[tool:pytest]
|
|
testpaths = tests
|
|
norecursedirs = .git testing_config
|
|
|
|
[flake8]
|
|
exclude = .venv,.git,.tox,docs,venv,bin,lib,deps,build
|
|
doctests = True
|
|
# To work with Black
|
|
max-line-length = 88
|
|
# E501: line too long
|
|
# W503: Line break occurred before a binary operator
|
|
# E203: Whitespace before ':'
|
|
# D202 No blank lines allowed after function docstring
|
|
# W504 line break after binary operator
|
|
ignore =
|
|
E501,
|
|
W503,
|
|
E203,
|
|
D202,
|
|
W504
|
|
|
|
[isort]
|
|
# https://github.com/timothycrosley/isort
|
|
# https://github.com/timothycrosley/isort/wiki/isort-Settings
|
|
# splits long import on multiple lines indented by 4 spaces
|
|
multi_line_output = 3
|
|
include_trailing_comma=True
|
|
force_grid_wrap=0
|
|
use_parentheses=True
|
|
line_length=88
|
|
indent = " "
|
|
# by default isort don't check module indexes
|
|
not_skip = __init__.py
|
|
# will group `import x` and `from x import` of the same module.
|
|
force_sort_within_sections = true
|
|
sections = FUTURE,STDLIB,INBETWEENS,THIRDPARTY,FIRSTPARTY,LOCALFOLDER
|
|
default_section = THIRDPARTY
|
|
known_first_party = homeassistant,tests
|
|
forced_separate = tests
|
|
combine_as_imports = true
|
|
|
|
[mypy]
|
|
python_version = 3.7
|
|
ignore_errors = true
|
|
follow_imports = silent
|
|
ignore_missing_imports = true
|
|
warn_incomplete_stub = true
|
|
warn_redundant_casts = true
|
|
warn_unused_configs = true
|
|
|
|
[mypy-homeassistant.bootstrap,homeassistant.components,homeassistant.config_entries,homeassistant.config,homeassistant.const,homeassistant.core,homeassistant.data_entry_flow,homeassistant.exceptions,homeassistant.loader,homeassistant.__main__,homeassistant.requirements,homeassistant.setup,homeassistant.util,homeassistant.auth.*,homeassistant.components.automation.*,homeassistant.components.binary_sensor.*,homeassistant.components.calendar.*,homeassistant.components.cover.*,homeassistant.components.device_automation.*,homeassistant.components.frontend.*,homeassistant.components.geo_location.*,homeassistant.components.group.*,homeassistant.components.history.*,homeassistant.components.http.*,homeassistant.components.image_processing.*,homeassistant.components.integration.*,homeassistant.components.light.*,homeassistant.components.lock.*,homeassistant.components.mailbox.*,homeassistant.components.media_player.*,homeassistant.components.notify.*,homeassistant.components.persistent_notification.*,homeassistant.components.proximity.*,homeassistant.components.remote.*,homeassistant.components.scene.*,homeassistant.components.sensor.*,homeassistant.components.sun.*,homeassistant.components.switch.*,homeassistant.components.systemmonitor.*,homeassistant.components.tts.*,homeassistant.components.vacuum.*,homeassistant.components.water_heater.*,homeassistant.components.weather.*,homeassistant.components.websocket_api.*,homeassistant.components.zone.*,homeassistant.helpers.*,homeassistant.scripts.*,homeassistant.util.*]
|
|
strict = true
|
|
ignore_errors = false
|
|
warn_unreachable = true
|
|
# TODO: turn these off, address issues
|
|
allow_any_generics = true
|
|
implicit_reexport = true
|