Added
- A Development section in the README explains how to set up the environment with uv, check the code, run the tests (including the integration tests, which need a secrets file and an MQTT broker), manage the dependencies, build, and release.
Changed
- Upgraded the PyGazpar library to
1.4.0a5. It no longer depends onpandas, sopandasand the packages it needed are no longer installed. - Development tooling: uv replaces Poetry. The package is built with the
uv_buildbackend, the development tools are adevdependency group inpyproject.toml, and the locked versions are inuv.lock(poetry.lockis removed). To work on the project, runuv syncinstead ofpoetry install. The CI and release workflows and the Docker image use uv. The application, its configuration and its command line are unchanged. types-pyyamlis a development dependency, so that mypy needs no--install-types.- Git ignores every secrets file (
secrets.yaml,secrets.*.yaml,secrets.env,*.secrets) in any folder, instead of three fixed paths. Thesecrets.template.yamltemplates are still tracked. - Upgraded the PyGazpar library to
1.4.0a4. - Development dependencies: pytest
^9.0.3and pytest-asyncio^1.4.0. - Development tooling: ruff (lint and format) and mypy replace flake8, isort, black and pylint. Ruff and mypy are updated to their latest stable versions, and the CI lint and test steps are inlined in the workflow.
Security
- Locked
urllib3to 2.8.0,requeststo 2.34.2,idnato 3.20 andJinja2to 3.1.6 to fix open Dependabot alerts.