From 821b9bdb5f293e4103188307d56d5b97415233d8 Mon Sep 17 00:00:00 2001 From: epenet <6771947+epenet@users.noreply.github.com> Date: Thu, 20 Apr 2023 20:56:45 +0200 Subject: [PATCH] Fix lingering timer in hassio (#91702) --- homeassistant/components/hassio/__init__.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/homeassistant/components/hassio/__init__.py b/homeassistant/components/hassio/__init__.py index 53693664651..715252734bb 100644 --- a/homeassistant/components/hassio/__init__.py +++ b/homeassistant/components/hassio/__init__.py @@ -3,7 +3,7 @@ from __future__ import annotations import asyncio from contextlib import suppress -from datetime import timedelta +from datetime import datetime, timedelta import logging import os from typing import Any, NamedTuple @@ -29,6 +29,7 @@ from homeassistant.const import ( ) from homeassistant.core import ( DOMAIN as HASS_DOMAIN, + HassJob, HomeAssistant, ServiceCall, callback, @@ -492,7 +493,7 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: # noqa: DOMAIN, service, async_service_handler, schema=settings.schema ) - async def update_info_data(now): + async def update_info_data(_: datetime | None = None) -> None: """Update last available supervisor information.""" try: @@ -516,11 +517,13 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: # noqa: _LOGGER.warning("Can't read Supervisor data: %s", err) async_track_point_in_utc_time( - hass, update_info_data, utcnow() + HASSIO_UPDATE_INTERVAL + hass, + HassJob(update_info_data, cancel_on_shutdown=True), + utcnow() + HASSIO_UPDATE_INTERVAL, ) # Fetch data - await update_info_data(None) + await update_info_data() async def async_handle_core_service(call: ServiceCall) -> None: """Service handler for handling core services."""