From 7043b624115f6301e81fbceedf6138500a957d42 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Mon, 26 Feb 2024 07:47:43 -1000 Subject: [PATCH] Load config entry platforms eagerly We can avoid one event loop iteration to start the tasks here. --- homeassistant/config_entries.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/homeassistant/config_entries.py b/homeassistant/config_entries.py index 6ed9911cab5147..54b3039efbaf37 100644 --- a/homeassistant/config_entries.py +++ b/homeassistant/config_entries.py @@ -57,6 +57,7 @@ from .loader import async_suggest_report_issue from .setup import DATA_SETUP_DONE, async_process_deps_reqs, async_setup_component from .util import uuid as uuid_util +from .util.async_ import create_eager_task from .util.decorator import Registry if TYPE_CHECKING: @@ -1690,7 +1691,7 @@ async def async_forward_entry_setups( """Forward the setup of an entry to platforms.""" await asyncio.gather( *( - asyncio.create_task( + create_eager_task( self.async_forward_entry_setup(entry, platform), name=f"config entry forward setup {entry.title} {entry.domain} {entry.entry_id} {platform}", ) @@ -1726,7 +1727,7 @@ async def async_unload_platforms( return all( await asyncio.gather( *( - asyncio.create_task( + create_eager_task( self.async_forward_entry_unload(entry, platform), name=f"config entry forward unload {entry.title} {entry.domain} {entry.entry_id} {platform}", )