From 119b296c26d1aa6ea64967d9e2c9d40117a52765 Mon Sep 17 00:00:00 2001 From: Martin Hjelmare Date: Thu, 20 Feb 2025 12:11:34 +0100 Subject: [PATCH] Make backup config update a callback (#138925) --- homeassistant/components/backup/config.py | 3 ++- homeassistant/components/backup/manager.py | 2 +- homeassistant/components/backup/websocket.py | 6 +++--- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/homeassistant/components/backup/config.py b/homeassistant/components/backup/config.py index 4d0cd82bc44..f34c1b8887d 100644 --- a/homeassistant/components/backup/config.py +++ b/homeassistant/components/backup/config.py @@ -154,7 +154,8 @@ class BackupConfig: self.data.retention.apply(self._manager) self.data.schedule.apply(self._manager) - async def update( + @callback + def update( self, *, agents: dict[str, AgentParametersDict] | UndefinedType = UNDEFINED, diff --git a/homeassistant/components/backup/manager.py b/homeassistant/components/backup/manager.py index 5a1bcde2b3b..0f79cd79e0c 100644 --- a/homeassistant/components/backup/manager.py +++ b/homeassistant/components/backup/manager.py @@ -1870,7 +1870,7 @@ class CoreBackupReaderWriter(BackupReaderWriter): and "hassio.local" in create_backup.agent_ids ): automatic_agents = [self._local_agent_id, *automatic_agents] - await config.update( + config.update( create_backup=CreateBackupParametersDict( agent_ids=automatic_agents, include_addons=None, diff --git a/homeassistant/components/backup/websocket.py b/homeassistant/components/backup/websocket.py index 8453046cabb..b36343c7634 100644 --- a/homeassistant/components/backup/websocket.py +++ b/homeassistant/components/backup/websocket.py @@ -346,6 +346,7 @@ async def handle_config_info( ) +@callback @websocket_api.require_admin @websocket_api.websocket_command( { @@ -387,8 +388,7 @@ async def handle_config_info( ), } ) -@websocket_api.async_response -async def handle_config_update( +def handle_config_update( hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any], @@ -398,7 +398,7 @@ async def handle_config_update( changes = dict(msg) changes.pop("id") changes.pop("type") - await manager.config.update(**changes) + manager.config.update(**changes) connection.send_result(msg["id"])