mirror of
https://github.com/home-assistant/supervisor.git
synced 2025-04-21 19:57:15 +00:00

* Update python to 3.12 * Fix tests and deprecations * Fix other references to 3.11 * build.json doesn't exist
113 lines
3.2 KiB
TOML
113 lines
3.2 KiB
TOML
[build-system]
|
|
requires = ["setuptools~=68.0.0", "wheel~=0.40.0"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "Supervisor"
|
|
dynamic = ["version", "dependencies"]
|
|
license = { text = "Apache-2.0" }
|
|
description = "Open-source private cloud os for Home-Assistant based on HassOS"
|
|
readme = "README.md"
|
|
authors = [
|
|
{ name = "The Home Assistant Authors", email = "hello@home-assistant.io" },
|
|
]
|
|
keywords = ["docker", "home-assistant", "api"]
|
|
requires-python = ">=3.12.0"
|
|
|
|
[project.urls]
|
|
"Homepage" = "https://www.home-assistant.io/"
|
|
"Source Code" = "https://github.com/home-assistant/supervisor"
|
|
"Bug Reports" = "https://github.com/home-assistant/supervisor/issues"
|
|
"Docs: Dev" = "https://developers.home-assistant.io/"
|
|
"Discord" = "https://www.home-assistant.io/join-chat/"
|
|
"Forum" = "https://community.home-assistant.io/"
|
|
|
|
[tool.setuptools]
|
|
platforms = ["any"]
|
|
zip-safe = false
|
|
include-package-data = true
|
|
|
|
[tool.setuptools.packages.find]
|
|
include = ["supervisor*"]
|
|
|
|
[tool.pylint.MAIN]
|
|
py-version = "3.11"
|
|
# Use a conservative default here; 2 should speed up most setups and not hurt
|
|
# any too bad. Override on command line as appropriate.
|
|
jobs = 2
|
|
persistent = false
|
|
extension-pkg-allow-list = ["ciso8601"]
|
|
|
|
[tool.pylint.BASIC]
|
|
class-const-naming-style = "any"
|
|
good-names = ["id", "i", "j", "k", "ex", "Run", "_", "fp", "T", "os"]
|
|
|
|
[tool.pylint."MESSAGES CONTROL"]
|
|
# Reasons disabled:
|
|
# format - handled by black
|
|
# abstract-method - with intro of async there are always methods missing
|
|
# cyclic-import - doesn't test if both import on load
|
|
# duplicate-code - unavoidable
|
|
# locally-disabled - it spams too much
|
|
# too-many-* - are not enforced for the sake of readability
|
|
# too-few-* - same as too-many-*
|
|
# unused-argument - generic callbacks and setup methods create a lot of warnings
|
|
disable = [
|
|
"format",
|
|
"abstract-method",
|
|
"cyclic-import",
|
|
"duplicate-code",
|
|
"locally-disabled",
|
|
"no-else-return",
|
|
"not-context-manager",
|
|
"too-few-public-methods",
|
|
"too-many-arguments",
|
|
"too-many-branches",
|
|
"too-many-instance-attributes",
|
|
"too-many-lines",
|
|
"too-many-locals",
|
|
"too-many-public-methods",
|
|
"too-many-return-statements",
|
|
"too-many-statements",
|
|
"unused-argument",
|
|
"consider-using-with",
|
|
]
|
|
|
|
[tool.pylint.REPORTS]
|
|
score = false
|
|
|
|
[tool.pylint.TYPECHECK]
|
|
ignored-modules = ["distutils"]
|
|
|
|
[tool.pylint.FORMAT]
|
|
expected-line-ending-format = "LF"
|
|
|
|
[tool.pylint.EXCEPTIONS]
|
|
overgeneral-exceptions = ["builtins.BaseException", "builtins.Exception"]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
norecursedirs = [".git"]
|
|
log_format = "%(asctime)s.%(msecs)03d %(levelname)-8s %(threadName)s %(name)s:%(filename)s:%(lineno)s %(message)s"
|
|
log_date_format = "%Y-%m-%d %H:%M:%S"
|
|
asyncio_mode = "auto"
|
|
filterwarnings = [
|
|
"error",
|
|
"ignore:pkg_resources is deprecated as an API:DeprecationWarning:dirhash",
|
|
"ignore::pytest.PytestUnraisableExceptionWarning",
|
|
]
|
|
|
|
[tool.isort]
|
|
multi_line_output = 3
|
|
include_trailing_comma = true
|
|
force_grid_wrap = 0
|
|
line_length = 88
|
|
indent = " "
|
|
force_sort_within_sections = true
|
|
sections = ["FUTURE", "STDLIB", "THIRDPARTY", "FIRSTPARTY", "LOCALFOLDER"]
|
|
default_section = "THIRDPARTY"
|
|
forced_separate = "tests"
|
|
combine_as_imports = true
|
|
use_parentheses = true
|
|
known_first_party = ["supervisor", "tests"]
|