From f4e7ccfcfcc9b1a12b258e26d6f1e39c6c5bf4f9 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Tue, 15 Apr 2025 21:11:05 -1000 Subject: [PATCH] Explictly set PARALLEL_UPDATES for ESPHome entity platforms (#143065) --- homeassistant/components/esphome/alarm_control_panel.py | 2 ++ homeassistant/components/esphome/binary_sensor.py | 2 ++ homeassistant/components/esphome/button.py | 2 ++ homeassistant/components/esphome/camera.py | 2 ++ homeassistant/components/esphome/climate.py | 2 ++ homeassistant/components/esphome/cover.py | 2 ++ homeassistant/components/esphome/date.py | 2 ++ homeassistant/components/esphome/datetime.py | 2 ++ homeassistant/components/esphome/event.py | 2 ++ homeassistant/components/esphome/fan.py | 2 ++ homeassistant/components/esphome/light.py | 2 ++ homeassistant/components/esphome/lock.py | 2 ++ homeassistant/components/esphome/media_player.py | 2 ++ homeassistant/components/esphome/number.py | 2 ++ homeassistant/components/esphome/select.py | 2 ++ homeassistant/components/esphome/sensor.py | 2 ++ homeassistant/components/esphome/switch.py | 2 ++ homeassistant/components/esphome/text.py | 2 ++ homeassistant/components/esphome/time.py | 2 ++ homeassistant/components/esphome/update.py | 2 ++ homeassistant/components/esphome/valve.py | 2 ++ 21 files changed, 42 insertions(+) diff --git a/homeassistant/components/esphome/alarm_control_panel.py b/homeassistant/components/esphome/alarm_control_panel.py index 8f1b5ae8b1a..6dc4647e42e 100644 --- a/homeassistant/components/esphome/alarm_control_panel.py +++ b/homeassistant/components/esphome/alarm_control_panel.py @@ -29,6 +29,8 @@ from .entity import ( ) from .enum_mapper import EsphomeEnumMapper +PARALLEL_UPDATES = 0 + _ESPHOME_ACP_STATE_TO_HASS_STATE: EsphomeEnumMapper[ ESPHomeAlarmControlPanelState, AlarmControlPanelState ] = EsphomeEnumMapper( diff --git a/homeassistant/components/esphome/binary_sensor.py b/homeassistant/components/esphome/binary_sensor.py index 02b13748fb6..bf773fead0c 100644 --- a/homeassistant/components/esphome/binary_sensor.py +++ b/homeassistant/components/esphome/binary_sensor.py @@ -20,6 +20,8 @@ from .const import DOMAIN from .entity import EsphomeAssistEntity, EsphomeEntity, platform_async_setup_entry from .entry_data import ESPHomeConfigEntry +PARALLEL_UPDATES = 0 + async def async_setup_entry( hass: HomeAssistant, diff --git a/homeassistant/components/esphome/button.py b/homeassistant/components/esphome/button.py index f13fa65ede1..31121d98ff7 100644 --- a/homeassistant/components/esphome/button.py +++ b/homeassistant/components/esphome/button.py @@ -16,6 +16,8 @@ from .entity import ( platform_async_setup_entry, ) +PARALLEL_UPDATES = 0 + class EsphomeButton(EsphomeEntity[ButtonInfo, EntityState], ButtonEntity): """A button implementation for ESPHome.""" diff --git a/homeassistant/components/esphome/camera.py b/homeassistant/components/esphome/camera.py index 6038bf52e06..e2213153092 100644 --- a/homeassistant/components/esphome/camera.py +++ b/homeassistant/components/esphome/camera.py @@ -16,6 +16,8 @@ from homeassistant.core import callback from .entity import EsphomeEntity, platform_async_setup_entry +PARALLEL_UPDATES = 0 + class EsphomeCamera(Camera, EsphomeEntity[CameraInfo, CameraState]): """A camera implementation for ESPHome.""" diff --git a/homeassistant/components/esphome/climate.py b/homeassistant/components/esphome/climate.py index b651f16dfd7..3f80f04e527 100644 --- a/homeassistant/components/esphome/climate.py +++ b/homeassistant/components/esphome/climate.py @@ -65,6 +65,8 @@ from .entity import ( ) from .enum_mapper import EsphomeEnumMapper +PARALLEL_UPDATES = 0 + FAN_QUIET = "quiet" diff --git a/homeassistant/components/esphome/cover.py b/homeassistant/components/esphome/cover.py index 83c749f89ca..4426724e3f4 100644 --- a/homeassistant/components/esphome/cover.py +++ b/homeassistant/components/esphome/cover.py @@ -24,6 +24,8 @@ from .entity import ( platform_async_setup_entry, ) +PARALLEL_UPDATES = 0 + class EsphomeCover(EsphomeEntity[CoverInfo, CoverState], CoverEntity): """A cover implementation for ESPHome.""" diff --git a/homeassistant/components/esphome/date.py b/homeassistant/components/esphome/date.py index 28bc532918a..ef446cceac6 100644 --- a/homeassistant/components/esphome/date.py +++ b/homeassistant/components/esphome/date.py @@ -11,6 +11,8 @@ from homeassistant.components.date import DateEntity from .entity import EsphomeEntity, esphome_state_property, platform_async_setup_entry +PARALLEL_UPDATES = 0 + class EsphomeDate(EsphomeEntity[DateInfo, DateState], DateEntity): """A date implementation for esphome.""" diff --git a/homeassistant/components/esphome/datetime.py b/homeassistant/components/esphome/datetime.py index d1bb0bb77ff..3ea285fa849 100644 --- a/homeassistant/components/esphome/datetime.py +++ b/homeassistant/components/esphome/datetime.py @@ -12,6 +12,8 @@ from homeassistant.util import dt as dt_util from .entity import EsphomeEntity, esphome_state_property, platform_async_setup_entry +PARALLEL_UPDATES = 0 + class EsphomeDateTime(EsphomeEntity[DateTimeInfo, DateTimeState], DateTimeEntity): """A datetime implementation for esphome.""" diff --git a/homeassistant/components/esphome/event.py b/homeassistant/components/esphome/event.py index f4db3844e3d..4437292c5b4 100644 --- a/homeassistant/components/esphome/event.py +++ b/homeassistant/components/esphome/event.py @@ -12,6 +12,8 @@ from homeassistant.util.enum import try_parse_enum from .entity import EsphomeEntity, platform_async_setup_entry +PARALLEL_UPDATES = 0 + class EsphomeEvent(EsphomeEntity[EventInfo, Event], EventEntity): """An event implementation for ESPHome.""" diff --git a/homeassistant/components/esphome/fan.py b/homeassistant/components/esphome/fan.py index c09145c17b5..7e5922745cc 100644 --- a/homeassistant/components/esphome/fan.py +++ b/homeassistant/components/esphome/fan.py @@ -30,6 +30,8 @@ from .entity import ( ) from .enum_mapper import EsphomeEnumMapper +PARALLEL_UPDATES = 0 + ORDERED_NAMED_FAN_SPEEDS = [FanSpeed.LOW, FanSpeed.MEDIUM, FanSpeed.HIGH] diff --git a/homeassistant/components/esphome/light.py b/homeassistant/components/esphome/light.py index 8fecf34862b..2593f348680 100644 --- a/homeassistant/components/esphome/light.py +++ b/homeassistant/components/esphome/light.py @@ -38,6 +38,8 @@ from .entity import ( platform_async_setup_entry, ) +PARALLEL_UPDATES = 0 + FLASH_LENGTHS = {FLASH_SHORT: 2, FLASH_LONG: 10} diff --git a/homeassistant/components/esphome/lock.py b/homeassistant/components/esphome/lock.py index 502cd361277..21a76c71b3a 100644 --- a/homeassistant/components/esphome/lock.py +++ b/homeassistant/components/esphome/lock.py @@ -18,6 +18,8 @@ from .entity import ( platform_async_setup_entry, ) +PARALLEL_UPDATES = 0 + class EsphomeLock(EsphomeEntity[LockInfo, LockEntityState], LockEntity): """A lock implementation for ESPHome.""" diff --git a/homeassistant/components/esphome/media_player.py b/homeassistant/components/esphome/media_player.py index 8a30814aa2c..4706ca2ff56 100644 --- a/homeassistant/components/esphome/media_player.py +++ b/homeassistant/components/esphome/media_player.py @@ -41,6 +41,8 @@ from .entity import ( from .enum_mapper import EsphomeEnumMapper from .ffmpeg_proxy import async_create_proxy_url +PARALLEL_UPDATES = 0 + _LOGGER = logging.getLogger(__name__) _STATES: EsphomeEnumMapper[EspMediaPlayerState, MediaPlayerState] = EsphomeEnumMapper( diff --git a/homeassistant/components/esphome/number.py b/homeassistant/components/esphome/number.py index 2d74dad1bcf..4a6800e1041 100644 --- a/homeassistant/components/esphome/number.py +++ b/homeassistant/components/esphome/number.py @@ -23,6 +23,8 @@ from .entity import ( ) from .enum_mapper import EsphomeEnumMapper +PARALLEL_UPDATES = 0 + NUMBER_MODES: EsphomeEnumMapper[EsphomeNumberMode, NumberMode] = EsphomeEnumMapper( { EsphomeNumberMode.AUTO: NumberMode.AUTO, diff --git a/homeassistant/components/esphome/select.py b/homeassistant/components/esphome/select.py index 67bcbbbd221..f37f774fb1f 100644 --- a/homeassistant/components/esphome/select.py +++ b/homeassistant/components/esphome/select.py @@ -25,6 +25,8 @@ from .entity import ( ) from .entry_data import ESPHomeConfigEntry, RuntimeEntryData +PARALLEL_UPDATES = 0 + async def async_setup_entry( hass: HomeAssistant, diff --git a/homeassistant/components/esphome/sensor.py b/homeassistant/components/esphome/sensor.py index 26f33f4fb47..95eabdefa13 100644 --- a/homeassistant/components/esphome/sensor.py +++ b/homeassistant/components/esphome/sensor.py @@ -29,6 +29,8 @@ from homeassistant.util.enum import try_parse_enum from .entity import EsphomeEntity, platform_async_setup_entry from .enum_mapper import EsphomeEnumMapper +PARALLEL_UPDATES = 0 + async def async_setup_entry( hass: HomeAssistant, diff --git a/homeassistant/components/esphome/switch.py b/homeassistant/components/esphome/switch.py index c210ae1440b..96b2a426869 100644 --- a/homeassistant/components/esphome/switch.py +++ b/homeassistant/components/esphome/switch.py @@ -18,6 +18,8 @@ from .entity import ( platform_async_setup_entry, ) +PARALLEL_UPDATES = 0 + class EsphomeSwitch(EsphomeEntity[SwitchInfo, SwitchState], SwitchEntity): """A switch implementation for ESPHome.""" diff --git a/homeassistant/components/esphome/text.py b/homeassistant/components/esphome/text.py index 36d77aac4a0..c36621b8f4e 100644 --- a/homeassistant/components/esphome/text.py +++ b/homeassistant/components/esphome/text.py @@ -17,6 +17,8 @@ from .entity import ( ) from .enum_mapper import EsphomeEnumMapper +PARALLEL_UPDATES = 0 + TEXT_MODES: EsphomeEnumMapper[EsphomeTextMode, TextMode] = EsphomeEnumMapper( { EsphomeTextMode.TEXT: TextMode.TEXT, diff --git a/homeassistant/components/esphome/time.py b/homeassistant/components/esphome/time.py index 477c47cf636..b0e586e1792 100644 --- a/homeassistant/components/esphome/time.py +++ b/homeassistant/components/esphome/time.py @@ -11,6 +11,8 @@ from homeassistant.components.time import TimeEntity from .entity import EsphomeEntity, esphome_state_property, platform_async_setup_entry +PARALLEL_UPDATES = 0 + class EsphomeTime(EsphomeEntity[TimeInfo, TimeState], TimeEntity): """A time implementation for esphome.""" diff --git a/homeassistant/components/esphome/update.py b/homeassistant/components/esphome/update.py index 60d4989063b..0874007ecdf 100644 --- a/homeassistant/components/esphome/update.py +++ b/homeassistant/components/esphome/update.py @@ -38,6 +38,8 @@ from .entity import ( ) from .entry_data import RuntimeEntryData +PARALLEL_UPDATES = 0 + KEY_UPDATE_LOCK = "esphome_update_lock" NO_FEATURES = UpdateEntityFeature(0) diff --git a/homeassistant/components/esphome/valve.py b/homeassistant/components/esphome/valve.py index d779a6abb9f..e366fc08d19 100644 --- a/homeassistant/components/esphome/valve.py +++ b/homeassistant/components/esphome/valve.py @@ -22,6 +22,8 @@ from .entity import ( platform_async_setup_entry, ) +PARALLEL_UPDATES = 0 + class EsphomeValve(EsphomeEntity[ValveInfo, ValveState], ValveEntity): """A valve implementation for ESPHome."""