-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathpyproject.toml
More file actions
119 lines (105 loc) · 2.37 KB
/
Copy pathpyproject.toml
File metadata and controls
119 lines (105 loc) · 2.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
[project]
name = "hass-myheat"
version = "0.9.1"
description = "MyHeat integration plugin for HomeAssistant"
readme = "README.md"
license = "MIT"
requires-python = ">= 3.14.2"
dependencies = [
# "aiohttp >=3,<4",
# "homeassistant >=2025",
# "voluptuous >=0.12.1",
]
[project.optional-dependencies]
[dependency-groups]
dev = [
"flake8",
"reorder-python-imports",
"pytest >=9.0.3,<10",
"pytest-homeassistant-custom-component>=0.13.340",
"bandit",
"black",
"ruff",
"mypy",
"pre-commit",
"pydocstyle >=6.3.0",
"prospector[with_vulture]",
"pytest-asyncio",
"bump2version",
]
[[project.authors]]
name = "Vladimir Ermakov"
email = "vooon341@gmail.com"
[tool.hatch.build.targets.wheel.force-include]
"./" = "custom_components/myheat"
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.isort]
multi_line_output = 3
include_trailing_comma = true
force_grid_wrap = 0
use_parentheses = true
line_length = 88
indent = "\" \""
not_skip = "__init__.py"
force_sort_within_sections = true
sections = "FUTURE,STDLIB,INBETWEENS,THIRDPARTY,FIRSTPARTY,LOCALFOLDER"
default_section = "THIRDPARTY"
known_first_party = "custom_components.myheat, tests"
combine_as_imports = true
[tool.pytest]
asyncio_mode = "auto"
[tool.coverage.run]
branch = false
[tool.coverage.report]
show_missing = true
fail_under = 50
[tool.mypy]
python_version = '3.14'
ignore_errors = false
follow_imports = "silent"
ignore_missing_imports = true
warn_incomplete_stub = true
warn_redundant_casts = true
warn_unused_configs = true
exclude='custom_components\/(?!myheat).*'
[tool.black]
line-length = 88
target-version = ['py314']
exclude = '''
(
/(
\.eggs # exclude a few common directories in the
| \.git # root of the project
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| _build
| buck-out
| build
| dist
)/
| deps
# the root of the project
)
| custom_components\/(?!myheat).*
'''
[tool.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"
]