From 8705fd85463317f89f81f9cf951247dbb5d23a5a Mon Sep 17 00:00:00 2001 From: epenet <6771947+epenet@users.noreply.github.com> Date: Thu, 9 Jan 2025 15:11:33 +0100 Subject: [PATCH] Avoid unnecessary executor calls in onewire (#135187) --- homeassistant/components/onewire/binary_sensor.py | 5 +---- homeassistant/components/onewire/select.py | 5 +---- homeassistant/components/onewire/sensor.py | 2 ++ homeassistant/components/onewire/switch.py | 5 +---- 4 files changed, 5 insertions(+), 12 deletions(-) diff --git a/homeassistant/components/onewire/binary_sensor.py b/homeassistant/components/onewire/binary_sensor.py index c8127980d5e..d9e21ce013d 100644 --- a/homeassistant/components/onewire/binary_sensor.py +++ b/homeassistant/components/onewire/binary_sensor.py @@ -98,10 +98,7 @@ async def async_setup_entry( async_add_entities: AddEntitiesCallback, ) -> None: """Set up 1-Wire platform.""" - entities = await hass.async_add_executor_job( - get_entities, config_entry.runtime_data - ) - async_add_entities(entities, True) + async_add_entities(get_entities(config_entry.runtime_data), True) def get_entities(onewire_hub: OneWireHub) -> list[OneWireBinarySensor]: diff --git a/homeassistant/components/onewire/select.py b/homeassistant/components/onewire/select.py index e2ee3b9222c..108cc7b2ec8 100644 --- a/homeassistant/components/onewire/select.py +++ b/homeassistant/components/onewire/select.py @@ -45,10 +45,7 @@ async def async_setup_entry( async_add_entities: AddEntitiesCallback, ) -> None: """Set up 1-Wire platform.""" - entities = await hass.async_add_executor_job( - get_entities, config_entry.runtime_data - ) - async_add_entities(entities, True) + async_add_entities(get_entities(config_entry.runtime_data), True) def get_entities(onewire_hub: OneWireHub) -> list[OneWireSelectEntity]: diff --git a/homeassistant/components/onewire/sensor.py b/homeassistant/components/onewire/sensor.py index e019a064e3d..6d3819f7ca3 100644 --- a/homeassistant/components/onewire/sensor.py +++ b/homeassistant/components/onewire/sensor.py @@ -357,6 +357,8 @@ async def async_setup_entry( async_add_entities: AddEntitiesCallback, ) -> None: """Set up 1-Wire platform.""" + # note: we have to go through the executor as SENSOR platform + # makes extra calls to the hub during device listing entities = await hass.async_add_executor_job( get_entities, config_entry.runtime_data, config_entry.options ) diff --git a/homeassistant/components/onewire/switch.py b/homeassistant/components/onewire/switch.py index 645a3b5f2ea..b2cdec014f6 100644 --- a/homeassistant/components/onewire/switch.py +++ b/homeassistant/components/onewire/switch.py @@ -158,10 +158,7 @@ async def async_setup_entry( async_add_entities: AddEntitiesCallback, ) -> None: """Set up 1-Wire platform.""" - entities = await hass.async_add_executor_job( - get_entities, config_entry.runtime_data - ) - async_add_entities(entities, True) + async_add_entities(get_entities(config_entry.runtime_data), True) def get_entities(onewire_hub: OneWireHub) -> list[OneWireSwitch]: