From e23e444424b38662c547398a22f3bf0442ccca3d Mon Sep 17 00:00:00 2001 From: darkrain-nl Date: Sun, 27 Sep 2026 10:02:24 +0200 Subject: [PATCH] Bump sofar-modbus to 0.16.0 (#183261) --- homeassistant/components/sofar/config_flow.py | 2 +- homeassistant/components/sofar/manifest.json | 2 +- requirements_all.txt | 2 +- tests/components/sofar/test_sensor.py | 4 +++- 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/homeassistant/components/sofar/config_flow.py b/homeassistant/components/sofar/config_flow.py index 6848859fa172..068e30097b25 100644 --- a/homeassistant/components/sofar/config_flow.py +++ b/homeassistant/components/sofar/config_flow.py @@ -48,7 +48,7 @@ async def _async_probe( """Connect to the inverter and read its identity, or raise.""" params = ModbusTcpParams(host=host, port=port) async with async_get_temporary_unit(hass, params, unit_id) as unit: - device = SofarInverter(unit) + device = await SofarInverter.async_detect(unit) await device.async_update() return device diff --git a/homeassistant/components/sofar/manifest.json b/homeassistant/components/sofar/manifest.json index ca53ffca1d70..acc6e0effff2 100644 --- a/homeassistant/components/sofar/manifest.json +++ b/homeassistant/components/sofar/manifest.json @@ -9,5 +9,5 @@ "iot_class": "local_polling", "loggers": ["modbus_connection", "sofar_modbus", "tmodbus"], "quality_scale": "platinum", - "requirements": ["sofar-modbus==0.15.1"] + "requirements": ["sofar-modbus==0.16.0"] } diff --git a/requirements_all.txt b/requirements_all.txt index 68f370566696..02c092a77ebc 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -3129,7 +3129,7 @@ snapcast==2.3.8 soco==0.31.2 # homeassistant.components.sofar -sofar-modbus==0.15.1 +sofar-modbus==0.16.0 # homeassistant.components.solaredge_local solaredge-local==0.2.3 diff --git a/tests/components/sofar/test_sensor.py b/tests/components/sofar/test_sensor.py index 910c01bcdc8e..b9d5e8334f10 100644 --- a/tests/components/sofar/test_sensor.py +++ b/tests/components/sofar/test_sensor.py @@ -69,7 +69,9 @@ async def test_all_entities( def test_sensor_description_components_are_real() -> None: """Guards SENSOR_DESCRIPTIONS against a component/key transcription slip.""" - inverter = SofarInverter(MockModbusConnection().for_unit(1)) + inverter = SofarInverter( + MockModbusConnection().for_unit(1), serial_number="SP1ES12345678" + ) for description in SENSOR_DESCRIPTIONS: component = getattr(inverter, description.component, None) assert component is not None, f"unknown component {description.component!r}"