1- [tool . poetry ]
1+ [project ]
22name = " python-roborock"
3- version = " 2.25 .0"
3+ version = " 4.10 .0"
44description = " A package to control Roborock vacuums."
5- authors = [" humbertogontijo < humbertogontijo@users.noreply.github.com> " ]
6- license = " GPL-3.0-only "
5+ authors = [{ name = " humbertogontijo" , email = " humbertogontijo@users.noreply.github.com" }, { name = " Lash-L " }, { name = " allenporter " } ]
6+ requires-python = " >=3.11, <4 "
77readme = " README.md"
8- repository = " https://github.com/humbertogontijo/python-roborock"
9- documentation = " https://python-roborock.readthedocs.io/"
8+ license = " GPL-3.0-only"
9+ keywords = [
10+ " roborock" ,
11+ " vacuum" ,
12+ " homeassistant" ,
13+ ]
1014classifiers = [
1115 " Development Status :: 5 - Production/Stable" ,
1216 " Intended Audience :: Developers" ,
1317 " Natural Language :: English" ,
1418 " Operating System :: OS Independent" ,
1519 " Topic :: Software Development :: Libraries" ,
1620]
17- packages = [{include = " roborock" }]
18- keywords = [" roborock" , " vacuum" , " homeassistant" ]
21+ dependencies = [
22+ " click>=8" ,
23+ " aiohttp>=3.8.2,<4" ,
24+ " pycryptodome~=3.18" ,
25+ " pycryptodomex~=3.18 ; sys_platform == 'darwin'" ,
26+ " paho-mqtt>=1.6.1,<3.0.0" ,
27+ " construct>=2.10.57,<3" ,
28+ " vacuum-map-parser-roborock" ,
29+ " pyrate-limiter>=3.7.0,<4" ,
30+ " aiomqtt>=2.5.0,<3" ,
31+ " click-shell~=2.1" ,
32+ ]
33+
34+ [project .urls ]
35+ Repository = " https://github.com/humbertogontijo/python-roborock"
36+ Documentation = " https://python-roborock.readthedocs.io/"
1937
20- [tool . poetry .scripts ]
38+ [project .scripts ]
2139roborock = " roborock.cli:main"
2240
23- [tool .poetry .dependencies ]
24- python = " ^3.11"
25- click = " >=8"
26- aiohttp = " ^3.8.2"
27- async-timeout = " *"
28- pycryptodome = " ^3.18"
29- pycryptodomex = {version = " ^3.18" , markers = " sys_platform == 'darwin'" }
30- paho-mqtt = " >=1.6.1,<3.0.0"
31- construct = " ^2.10.57"
32- vacuum-map-parser-roborock = " *"
33- pyrate-limiter = " ^3.7.0"
34- aiomqtt = " ^2.3.2"
41+ [dependency-groups ]
42+ dev = [
43+ " pytest-asyncio>=1.1.0" ,
44+ " pytest" ,
45+ " pre-commit>=3.5,<5.0" ,
46+ " mypy" ,
47+ " ruff==0.14.11" ,
48+ " codespell" ,
49+ " pyshark>=0.6,<0.7" ,
50+ " aioresponses>=0.7.7,<0.8" ,
51+ " freezegun>=1.5.1,<2" ,
52+ " pytest-timeout>=2.3.1,<3" ,
53+ " syrupy>=4.9.1,<6" ,
54+ " pdoc>=15.0.4,<17" ,
55+ " pyyaml>=6.0.3" ,
56+ " pyshark>=0.6" ,
57+ " pytest-cov>=7.0.0" ,
58+ ]
59+
60+ [tool .hatch .build .targets .sdist ]
61+ include = [" roborock" ]
3562
63+ [tool .hatch .build .targets .wheel ]
64+ include = [" roborock" ]
3665
3766[build-system ]
38- requires = [" poetry-core==1.8.0" ]
39- build-backend = " poetry.core.masonry.api"
40-
41- [tool .poetry .group .dev .dependencies ]
42- pytest-asyncio = " *"
43- pytest = " *"
44- pre-commit = " >=3.5,<5.0"
45- mypy = " *"
46- ruff = " *"
47- codespell = " *"
48- pyshark = " ^0.6"
49- aioresponses = " ^0.7.7"
50- freezegun = " ^1.5.1"
51- pytest-timeout = " ^2.3.1"
67+ requires = [" hatchling" ]
68+ build-backend = " hatchling.build"
5269
5370[tool .semantic_release ]
5471branch = " main"
55- version_toml = [" pyproject.toml:tool.poetry.version" ]
56- build_command = " pip install poetry && poetry build"
72+ version_toml = [" pyproject.toml:project.version" ]
73+ build_command = " pip install uv && uv lock --upgrade-package python-roborock && git add uv.lock && uv build"
74+ changelog_file = ' CHANGELOG.md'
75+ commit = true
76+
77+ [tool .semantic_release .branches .main ]
78+ match = " main"
79+ prerelease = false
80+
81+ [tool .semantic_release .branches .temp-main-branch ]
82+ match = " temp-main-branch"
83+ prerelease = false
84+
85+
5786[tool .semantic_release .commit_parser_options ]
5887allowed_tags = [
5988 " chore" ,
@@ -65,9 +94,9 @@ allowed_tags = [
6594major_tags = [" refactor" ]
6695
6796[tool .ruff ]
68- ignore = [" F403" , " E741" ]
97+ lint.ignore = [" F403" , " E741" ]
98+ lint.select =[" E" , " F" , " UP" , " I" ]
6999line-length = 120
70- select =[" E" , " F" , " UP" , " I" ]
71100
72101[tool .ruff .lint .per-file-ignores ]
73102"*/__init__.py" = [" F401" ]
0 commit comments