diff --git a/homeassistant/components/netatmo/climate.py b/homeassistant/components/netatmo/climate.py index 1ead9d7cbdb4e..c8b5e01e5dbb2 100644 --- a/homeassistant/components/netatmo/climate.py +++ b/homeassistant/components/netatmo/climate.py @@ -136,14 +136,13 @@ async def async_setup_entry( for home_id in climate_topology.home_ids: signal_name = f"{CLIMATE_STATE_CLASS_NAME}-{home_id}" - try: - await data_handler.register_data_class( - CLIMATE_STATE_CLASS_NAME, signal_name, None, home_id=home_id - ) - except KeyError: + await data_handler.register_data_class( + CLIMATE_STATE_CLASS_NAME, signal_name, None, home_id=home_id + ) + + if (climate_state := data_handler.data[signal_name]) is None: continue - climate_state = data_handler.data[signal_name] climate_topology.register_handler(home_id, climate_state.process_topology) for room in climate_state.homes[home_id].rooms.values(): diff --git a/homeassistant/components/netatmo/manifest.json b/homeassistant/components/netatmo/manifest.json index 501d5142bccb7..4ee7aeb0fded5 100644 --- a/homeassistant/components/netatmo/manifest.json +++ b/homeassistant/components/netatmo/manifest.json @@ -3,7 +3,7 @@ "name": "Netatmo", "documentation": "https://www.home-assistant.io/integrations/netatmo", "requirements": [ - "pyatmo==6.2.0" + "pyatmo==6.2.1" ], "after_dependencies": [ "cloud", diff --git a/homeassistant/components/netatmo/select.py b/homeassistant/components/netatmo/select.py index 98576497f3e85..4d69c9ab853d9 100644 --- a/homeassistant/components/netatmo/select.py +++ b/homeassistant/components/netatmo/select.py @@ -49,17 +49,13 @@ async def async_setup_entry( for home_id in climate_topology.home_ids: signal_name = f"{CLIMATE_STATE_CLASS_NAME}-{home_id}" - try: - await data_handler.register_data_class( - CLIMATE_STATE_CLASS_NAME, signal_name, None, home_id=home_id - ) - except KeyError: - continue - await data_handler.register_data_class( CLIMATE_STATE_CLASS_NAME, signal_name, None, home_id=home_id ) - climate_state = data_handler.data.get(signal_name) + + if (climate_state := data_handler.data[signal_name]) is None: + continue + climate_topology.register_handler(home_id, climate_state.process_topology) hass.data[DOMAIN][DATA_SCHEDULES][home_id] = climate_state.homes[ diff --git a/requirements_all.txt b/requirements_all.txt index bae5422a74ac5..0bedc49ff7408 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -1375,7 +1375,7 @@ pyarlo==0.2.4 pyatag==0.3.5.3 # homeassistant.components.netatmo -pyatmo==6.2.0 +pyatmo==6.2.1 # homeassistant.components.atome pyatome==0.1.1 diff --git a/requirements_test_all.txt b/requirements_test_all.txt index 21a8b5d1562be..0e2a3b679a704 100644 --- a/requirements_test_all.txt +++ b/requirements_test_all.txt @@ -844,7 +844,7 @@ pyarlo==0.2.4 pyatag==0.3.5.3 # homeassistant.components.netatmo -pyatmo==6.2.0 +pyatmo==6.2.1 # homeassistant.components.apple_tv pyatv==0.9.8