PyPlumIO 0.5.21__tar.gz → 0.5.22__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. {pyplumio-0.5.21 → pyplumio-0.5.22}/.github/workflows/documentation.yml +4 -2
  2. {pyplumio-0.5.21 → pyplumio-0.5.22}/.pre-commit-config.yaml +2 -2
  3. {pyplumio-0.5.21 → pyplumio-0.5.22}/PKG-INFO +7 -7
  4. {pyplumio-0.5.21 → pyplumio-0.5.22}/PyPlumIO.egg-info/PKG-INFO +7 -7
  5. {pyplumio-0.5.21 → pyplumio-0.5.22}/PyPlumIO.egg-info/SOURCES.txt +1 -1
  6. {pyplumio-0.5.21 → pyplumio-0.5.22}/PyPlumIO.egg-info/requires.txt +6 -6
  7. {pyplumio-0.5.21 → pyplumio-0.5.22}/docs/source/conf.py +4 -0
  8. pyplumio-0.5.22/docs/source/frames.rst +726 -0
  9. {pyplumio-0.5.21 → pyplumio-0.5.22}/docs/source/index.rst +1 -0
  10. {pyplumio-0.5.21 → pyplumio-0.5.22}/docs/source/protocol.rst +26 -27
  11. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/__init__.py +2 -2
  12. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/_version.py +2 -2
  13. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/connection.py +2 -10
  14. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/devices/__init__.py +14 -14
  15. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/devices/ecomax.py +117 -117
  16. pyplumio-0.5.22/pyplumio/devices/mixer.py +96 -0
  17. pyplumio-0.5.22/pyplumio/devices/thermostat.py +76 -0
  18. pyplumio-0.5.22/pyplumio/exceptions.py +35 -0
  19. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/filters.py +56 -37
  20. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/frames/__init__.py +6 -6
  21. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/frames/messages.py +4 -6
  22. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/helpers/data_types.py +8 -7
  23. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/helpers/event_manager.py +36 -25
  24. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/helpers/parameter.py +43 -16
  25. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/helpers/task_manager.py +7 -2
  26. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/helpers/timeout.py +0 -3
  27. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/helpers/uid.py +2 -2
  28. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/protocol.py +32 -26
  29. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/stream.py +2 -2
  30. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/alerts.py +40 -31
  31. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/ecomax_parameters.py +321 -131
  32. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/frame_versions.py +5 -6
  33. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/lambda_sensor.py +6 -6
  34. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/mixer_parameters.py +74 -28
  35. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/network_info.py +2 -3
  36. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/product_info.py +0 -4
  37. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/program_version.py +24 -17
  38. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/thermostat_parameters.py +25 -12
  39. pyplumio-0.5.22/pyplumio/utils.py +30 -0
  40. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyproject.toml +6 -6
  41. pyplumio-0.5.22/requirements.txt +2 -0
  42. {pyplumio-0.5.21 → pyplumio-0.5.22}/requirements_docs.txt +1 -1
  43. {pyplumio-0.5.21 → pyplumio-0.5.22}/requirements_test.txt +6 -6
  44. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/frames/test_init.py +1 -2
  45. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/helpers/test_data_types.py +1 -3
  46. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/helpers/test_event_manager.py +18 -2
  47. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/helpers/test_parameter.py +35 -10
  48. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/helpers/test_task_manager.py +2 -2
  49. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/test_devices.py +3 -3
  50. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/test_filters.py +1 -2
  51. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/test_protocol.py +30 -19
  52. pyplumio-0.5.21/pyplumio/devices/mixer.py +0 -90
  53. pyplumio-0.5.21/pyplumio/devices/thermostat.py +0 -75
  54. pyplumio-0.5.21/pyplumio/exceptions.py +0 -35
  55. pyplumio-0.5.21/pyplumio/helpers/typing.py +0 -29
  56. pyplumio-0.5.21/pyplumio/utils.py +0 -25
  57. pyplumio-0.5.21/requirements.txt +0 -1
  58. {pyplumio-0.5.21 → pyplumio-0.5.22}/.gitattributes +0 -0
  59. {pyplumio-0.5.21 → pyplumio-0.5.22}/.github/CODE_OF_CONDUCT.md +0 -0
  60. {pyplumio-0.5.21 → pyplumio-0.5.22}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  61. {pyplumio-0.5.21 → pyplumio-0.5.22}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  62. {pyplumio-0.5.21 → pyplumio-0.5.22}/.github/dependabot.yml +0 -0
  63. {pyplumio-0.5.21 → pyplumio-0.5.22}/.github/workflows/ci.yml +0 -0
  64. {pyplumio-0.5.21 → pyplumio-0.5.22}/.github/workflows/codeql-analysis.yml +0 -0
  65. {pyplumio-0.5.21 → pyplumio-0.5.22}/.github/workflows/deploy.yml +0 -0
  66. {pyplumio-0.5.21 → pyplumio-0.5.22}/.gitignore +0 -0
  67. {pyplumio-0.5.21 → pyplumio-0.5.22}/.vscode/settings.json +0 -0
  68. {pyplumio-0.5.21 → pyplumio-0.5.22}/LICENSE +0 -0
  69. {pyplumio-0.5.21 → pyplumio-0.5.22}/MANIFEST.in +0 -0
  70. {pyplumio-0.5.21 → pyplumio-0.5.22}/PyPlumIO.egg-info/dependency_links.txt +0 -0
  71. {pyplumio-0.5.21 → pyplumio-0.5.22}/PyPlumIO.egg-info/top_level.txt +0 -0
  72. {pyplumio-0.5.21 → pyplumio-0.5.22}/README.md +0 -0
  73. {pyplumio-0.5.21 → pyplumio-0.5.22}/docs/Makefile +0 -0
  74. {pyplumio-0.5.21 → pyplumio-0.5.22}/docs/make.bat +0 -0
  75. {pyplumio-0.5.21 → pyplumio-0.5.22}/docs/source/callbacks.rst +0 -0
  76. {pyplumio-0.5.21 → pyplumio-0.5.22}/docs/source/connecting.rst +0 -0
  77. {pyplumio-0.5.21 → pyplumio-0.5.22}/docs/source/mixers_thermostats.rst +0 -0
  78. {pyplumio-0.5.21 → pyplumio-0.5.22}/docs/source/reading.rst +0 -0
  79. {pyplumio-0.5.21 → pyplumio-0.5.22}/docs/source/schedules.rst +0 -0
  80. {pyplumio-0.5.21 → pyplumio-0.5.22}/docs/source/writing.rst +0 -0
  81. {pyplumio-0.5.21 → pyplumio-0.5.22}/images/ecomax.png +0 -0
  82. {pyplumio-0.5.21 → pyplumio-0.5.22}/images/rs485.png +0 -0
  83. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/__main__.py +0 -0
  84. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/const.py +0 -0
  85. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/devices/ecoster.py +0 -0
  86. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/frames/requests.py +0 -0
  87. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/frames/responses.py +0 -0
  88. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/helpers/__init__.py +0 -0
  89. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/helpers/factory.py +0 -0
  90. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/helpers/schedule.py +0 -0
  91. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/py.typed +0 -0
  92. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/__init__.py +0 -0
  93. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/boiler_load.py +0 -0
  94. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/boiler_power.py +0 -0
  95. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/fan_power.py +0 -0
  96. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/fuel_consumption.py +0 -0
  97. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/fuel_level.py +0 -0
  98. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/mixer_sensors.py +0 -0
  99. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/modules.py +0 -0
  100. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/output_flags.py +0 -0
  101. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/outputs.py +0 -0
  102. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/pending_alerts.py +0 -0
  103. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/regulator_data.py +0 -0
  104. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/regulator_data_schema.py +0 -0
  105. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/schedules.py +0 -0
  106. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/statuses.py +0 -0
  107. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/temperatures.py +0 -0
  108. {pyplumio-0.5.21 → pyplumio-0.5.22}/pyplumio/structures/thermostat_sensors.py +0 -0
  109. {pyplumio-0.5.21 → pyplumio-0.5.22}/setup.cfg +0 -0
  110. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/__init__.py +0 -0
  111. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/conftest.py +0 -0
  112. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/frames/test_messages.py +0 -0
  113. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/frames/test_requests.py +0 -0
  114. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/frames/test_responses.py +0 -0
  115. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/helpers/__init__.py +0 -0
  116. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/helpers/test_factory.py +0 -0
  117. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/helpers/test_schedule.py +0 -0
  118. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/helpers/test_timeout.py +0 -0
  119. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/helpers/test_uid.py +0 -0
  120. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/ruff.toml +0 -0
  121. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/test_connection.py +0 -0
  122. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/test_init.py +0 -0
  123. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/test_main.py +0 -0
  124. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/test_stream.py +0 -0
  125. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/test_utils.py +0 -0
  126. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/messages/regulator_data.json +0 -0
  127. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/messages/sensor_data.json +0 -0
  128. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/requests/alerts.json +0 -0
  129. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/requests/ecomax_control.json +0 -0
  130. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/requests/ecomax_parameters.json +0 -0
  131. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/requests/mixer_parameters.json +0 -0
  132. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/requests/set_ecomax_parameter.json +0 -0
  133. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/requests/set_mixer_parameter.json +0 -0
  134. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/requests/set_schedule.json +0 -0
  135. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/requests/set_thermostat_parameter.json +0 -0
  136. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/requests/thermostat_parameters.json +0 -0
  137. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/responses/alerts.json +0 -0
  138. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/responses/device_available.json +0 -0
  139. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/responses/ecomax_parameters.json +0 -0
  140. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/responses/mixer_parameters.json +0 -0
  141. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/responses/password.json +0 -0
  142. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/responses/program_version.json +0 -0
  143. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/responses/regulator_data_schema.json +0 -0
  144. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/responses/schedules.json +0 -0
  145. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/responses/thermostat_parameters.json +0 -0
  146. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/responses/uid.json +0 -0
  147. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/unknown/unknown_ecomax_parameter.json +0 -0
  148. {pyplumio-0.5.21 → pyplumio-0.5.22}/tests/testdata/unknown/unknown_mixer_parameter.json +0 -0
@@ -17,11 +17,13 @@ jobs:
17
17
  git fetch --depth=1 origin +refs/tags/*:refs/tags/*
18
18
 
19
19
  - uses: actions/setup-python@v5
20
+ with:
21
+ python-version: "3.10"
20
22
 
21
23
  - name: Install dependencies
22
24
  run: |
23
25
  python -m pip install --upgrade pip
24
- python -m pip install pyplumio build -r requirements_docs.txt
26
+ python -m pip install pyplumio build -r requirements.txt -r requirements_docs.txt
25
27
 
26
28
  - name: Sphinx build
27
29
  run: |
@@ -29,7 +31,7 @@ jobs:
29
31
  sphinx-build ./docs/source ./docs/build
30
32
 
31
33
  - name: Deploy
32
- uses: peaceiris/actions-gh-pages@v3
34
+ uses: peaceiris/actions-gh-pages@v4
33
35
  if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
34
36
  with:
35
37
  publish_branch: gh-pages
@@ -2,7 +2,7 @@
2
2
  # See https://pre-commit.com/hooks.html for more hooks
3
3
  repos:
4
4
  - repo: https://github.com/astral-sh/ruff-pre-commit
5
- rev: v0.4.7
5
+ rev: v0.5.0
6
6
  hooks:
7
7
  - id: ruff
8
8
  args:
@@ -12,6 +12,6 @@ repos:
12
12
  hooks:
13
13
  - id: codespell
14
14
  - repo: https://github.com/pre-commit/mirrors-mypy
15
- rev: v1.10.0
15
+ rev: v1.10.1
16
16
  hooks:
17
17
  - id: mypy
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: PyPlumIO
3
- Version: 0.5.21
3
+ Version: 0.5.22
4
4
  Summary: PyPlumIO is a native ecoNET library for Plum ecoMAX controllers.
5
5
  Author-email: Denis Paavilainen <denpa@denpa.pro>
6
6
  License: MIT License
@@ -25,16 +25,16 @@ License-File: LICENSE
25
25
  Requires-Dist: pyserial-asyncio==0.6
26
26
  Provides-Extra: test
27
27
  Requires-Dist: codespell==2.3.0; extra == "test"
28
- Requires-Dist: coverage==7.5.3; extra == "test"
29
- Requires-Dist: mypy==1.10.0; extra == "test"
30
- Requires-Dist: pyserial-asyncio-fast==0.12; extra == "test"
28
+ Requires-Dist: coverage==7.6.0; extra == "test"
29
+ Requires-Dist: mypy==1.10.1; extra == "test"
30
+ Requires-Dist: pyserial-asyncio-fast==0.13; extra == "test"
31
31
  Requires-Dist: pytest==8.2.2; extra == "test"
32
32
  Requires-Dist: pytest-asyncio==0.23.7; extra == "test"
33
- Requires-Dist: ruff==0.4.9; extra == "test"
34
- Requires-Dist: tox==4.15.1; extra == "test"
33
+ Requires-Dist: ruff==0.5.2; extra == "test"
34
+ Requires-Dist: tox==4.16.0; extra == "test"
35
35
  Requires-Dist: types-pyserial==3.5.0.20240527; extra == "test"
36
36
  Provides-Extra: docs
37
- Requires-Dist: sphinx==7.3.7; extra == "docs"
37
+ Requires-Dist: sphinx==7.4.0; extra == "docs"
38
38
  Requires-Dist: sphinx_rtd_theme==2.0.0; extra == "docs"
39
39
  Requires-Dist: readthedocs-sphinx-search==0.3.2; extra == "docs"
40
40
  Provides-Extra: dev
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: PyPlumIO
3
- Version: 0.5.21
3
+ Version: 0.5.22
4
4
  Summary: PyPlumIO is a native ecoNET library for Plum ecoMAX controllers.
5
5
  Author-email: Denis Paavilainen <denpa@denpa.pro>
6
6
  License: MIT License
@@ -25,16 +25,16 @@ License-File: LICENSE
25
25
  Requires-Dist: pyserial-asyncio==0.6
26
26
  Provides-Extra: test
27
27
  Requires-Dist: codespell==2.3.0; extra == "test"
28
- Requires-Dist: coverage==7.5.3; extra == "test"
29
- Requires-Dist: mypy==1.10.0; extra == "test"
30
- Requires-Dist: pyserial-asyncio-fast==0.12; extra == "test"
28
+ Requires-Dist: coverage==7.6.0; extra == "test"
29
+ Requires-Dist: mypy==1.10.1; extra == "test"
30
+ Requires-Dist: pyserial-asyncio-fast==0.13; extra == "test"
31
31
  Requires-Dist: pytest==8.2.2; extra == "test"
32
32
  Requires-Dist: pytest-asyncio==0.23.7; extra == "test"
33
- Requires-Dist: ruff==0.4.9; extra == "test"
34
- Requires-Dist: tox==4.15.1; extra == "test"
33
+ Requires-Dist: ruff==0.5.2; extra == "test"
34
+ Requires-Dist: tox==4.16.0; extra == "test"
35
35
  Requires-Dist: types-pyserial==3.5.0.20240527; extra == "test"
36
36
  Provides-Extra: docs
37
- Requires-Dist: sphinx==7.3.7; extra == "docs"
37
+ Requires-Dist: sphinx==7.4.0; extra == "docs"
38
38
  Requires-Dist: sphinx_rtd_theme==2.0.0; extra == "docs"
39
39
  Requires-Dist: readthedocs-sphinx-search==0.3.2; extra == "docs"
40
40
  Provides-Extra: dev
@@ -27,6 +27,7 @@ docs/make.bat
27
27
  docs/source/callbacks.rst
28
28
  docs/source/conf.py
29
29
  docs/source/connecting.rst
30
+ docs/source/frames.rst
30
31
  docs/source/index.rst
31
32
  docs/source/mixers_thermostats.rst
32
33
  docs/source/protocol.rst
@@ -63,7 +64,6 @@ pyplumio/helpers/parameter.py
63
64
  pyplumio/helpers/schedule.py
64
65
  pyplumio/helpers/task_manager.py
65
66
  pyplumio/helpers/timeout.py
66
- pyplumio/helpers/typing.py
67
67
  pyplumio/helpers/uid.py
68
68
  pyplumio/structures/__init__.py
69
69
  pyplumio/structures/alerts.py
@@ -6,17 +6,17 @@ pre-commit==3.7.1
6
6
  tomli==2.0.1
7
7
 
8
8
  [docs]
9
- sphinx==7.3.7
9
+ sphinx==7.4.0
10
10
  sphinx_rtd_theme==2.0.0
11
11
  readthedocs-sphinx-search==0.3.2
12
12
 
13
13
  [test]
14
14
  codespell==2.3.0
15
- coverage==7.5.3
16
- mypy==1.10.0
17
- pyserial-asyncio-fast==0.12
15
+ coverage==7.6.0
16
+ mypy==1.10.1
17
+ pyserial-asyncio-fast==0.13
18
18
  pytest==8.2.2
19
19
  pytest-asyncio==0.23.7
20
- ruff==0.4.9
21
- tox==4.15.1
20
+ ruff==0.5.2
21
+ tox==4.16.0
22
22
  types-pyserial==3.5.0.20240527
@@ -43,3 +43,7 @@ html_theme = "sphinx_rtd_theme"
43
43
  html_theme_options = {
44
44
  "navigation_depth": 2,
45
45
  }
46
+
47
+ # Suppress warnings about duplicate label.
48
+
49
+ suppress_warnings = ['autosectionlabel.*']