From 8da7de1fea4820003b16db627fb84d3a4e2261c7 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Sat, 13 Apr 2024 19:46:23 -0500 Subject: [PATCH] Remove attr usage in event helper (#115554) --- homeassistant/helpers/event.py | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/homeassistant/helpers/event.py b/homeassistant/helpers/event.py index f689f15725d..648a118f175 100644 --- a/homeassistant/helpers/event.py +++ b/homeassistant/helpers/event.py @@ -13,8 +13,6 @@ from random import randint import time from typing import TYPE_CHECKING, Any, Concatenate, Generic, ParamSpec, TypeVar -import attr - from homeassistant.const import ( EVENT_CORE_CONFIG_UPDATE, EVENT_STATE_CHANGED, @@ -1626,16 +1624,16 @@ def async_track_time_interval( track_time_interval = threaded_listener_factory(async_track_time_interval) -@attr.s +@dataclass(slots=True) class SunListener: """Helper class to help listen to sun events.""" - hass: HomeAssistant = attr.ib() - job: HassJob[[], Coroutine[Any, Any, None] | None] = attr.ib() - event: str = attr.ib() - offset: timedelta | None = attr.ib() - _unsub_sun: CALLBACK_TYPE | None = attr.ib(default=None) - _unsub_config: CALLBACK_TYPE | None = attr.ib(default=None) + hass: HomeAssistant + job: HassJob[[], Coroutine[Any, Any, None] | None] + event: str + offset: timedelta | None + _unsub_sun: CALLBACK_TYPE | None = None + _unsub_config: CALLBACK_TYPE | None = None @callback def async_attach(self) -> None: