From 39ad380e4467d9c3f3cb2a790ba7b42b287b2b47 Mon Sep 17 00:00:00 2001 From: TermeHansen Date: Tue, 21 Jan 2025 19:12:51 +0100 Subject: [PATCH 1/2] suggested fix for HA2025 deprecation warnings --- custom_components/adaptive_lighting/switch.py | 50 ++++++------------- 1 file changed, 15 insertions(+), 35 deletions(-) diff --git a/custom_components/adaptive_lighting/switch.py b/custom_components/adaptive_lighting/switch.py index 29955d0a..e83283ac 100644 --- a/custom_components/adaptive_lighting/switch.py +++ b/custom_components/adaptive_lighting/switch.py @@ -14,9 +14,11 @@ import homeassistant.util.dt as dt_util import ulid_transform import voluptuous as vol + from homeassistant.components.light import ( + ColorMode, + LightEntityFeature, ATTR_BRIGHTNESS, - ATTR_COLOR_TEMP, ATTR_COLOR_TEMP_KELVIN, ATTR_EFFECT, ATTR_FLASH, @@ -24,17 +26,6 @@ ATTR_SUPPORTED_COLOR_MODES, ATTR_TRANSITION, ATTR_XY_COLOR, - COLOR_MODE_BRIGHTNESS, - COLOR_MODE_COLOR_TEMP, - COLOR_MODE_HS, - COLOR_MODE_RGB, - COLOR_MODE_RGBW, - COLOR_MODE_RGBWW, - COLOR_MODE_XY, - SUPPORT_BRIGHTNESS, - SUPPORT_COLOR, - SUPPORT_COLOR_TEMP, - SUPPORT_TRANSITION, is_on, preprocess_turn_on_alternatives, ) @@ -179,13 +170,6 @@ from homeassistant.config_entries import ConfigEntry from homeassistant.helpers.entity_platform import AddEntitiesCallback -_SUPPORT_OPTS = { - "brightness": SUPPORT_BRIGHTNESS, - "color_temp": SUPPORT_COLOR_TEMP, - "color": SUPPORT_COLOR, - "transition": SUPPORT_TRANSITION, -} - _LOGGER = logging.getLogger(__name__) @@ -651,17 +635,19 @@ def _supported_features(hass: HomeAssistant, light: str) -> set[str]: assert state is not None supported_features = state.attributes.get(ATTR_SUPPORTED_FEATURES, 0) assert isinstance(supported_features, int) - supported = { - key for key, value in _SUPPORT_OPTS.items() if supported_features & value - } + + supported = set() + + if supported_features & LightEntityFeature.TRANSITION: + supported.add("transition") supported_color_modes = state.attributes.get(ATTR_SUPPORTED_COLOR_MODES, set()) color_modes = { - COLOR_MODE_RGB, - COLOR_MODE_RGBW, - COLOR_MODE_RGBWW, - COLOR_MODE_XY, - COLOR_MODE_HS, + ColorMode.RGB, + ColorMode.RGBW, + ColorMode.RGBWW, + ColorMode.XY, + ColorMode.HS, } # Adding brightness when color mode is supported, see @@ -672,10 +658,10 @@ def _supported_features(hass: HomeAssistant, light: str) -> set[str]: supported.update({"color", "brightness"}) break - if COLOR_MODE_COLOR_TEMP in supported_color_modes: + if ColorMode.COLOR_TEMP in supported_color_modes: supported.update({"color_temp", "brightness"}) - if COLOR_MODE_BRIGHTNESS in supported_color_modes: + if ColorMode.BRIGHTNESS in supported_color_modes: supported.add("brightness") return supported @@ -2009,12 +1995,6 @@ def modify_service_data(service_data, entity_ids): context.id, ) service_data = {ATTR_ENTITY_ID: skipped, **service_data_copy[CONF_PARAMS]} - if ( - ATTR_COLOR_TEMP in service_data - and ATTR_COLOR_TEMP_KELVIN in service_data - ): - # ATTR_COLOR_TEMP and ATTR_COLOR_TEMP_KELVIN are mutually exclusive - del service_data[ATTR_COLOR_TEMP] await self.hass.services.async_call( LIGHT_DOMAIN, SERVICE_TURN_ON, From e33fbc524294ed9323691927c491f457ea70b931 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 21 Jan 2025 18:20:38 +0000 Subject: [PATCH 2/2] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- custom_components/adaptive_lighting/switch.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/custom_components/adaptive_lighting/switch.py b/custom_components/adaptive_lighting/switch.py index e83283ac..037bd083 100644 --- a/custom_components/adaptive_lighting/switch.py +++ b/custom_components/adaptive_lighting/switch.py @@ -14,10 +14,7 @@ import homeassistant.util.dt as dt_util import ulid_transform import voluptuous as vol - from homeassistant.components.light import ( - ColorMode, - LightEntityFeature, ATTR_BRIGHTNESS, ATTR_COLOR_TEMP_KELVIN, ATTR_EFFECT, @@ -26,6 +23,8 @@ ATTR_SUPPORTED_COLOR_MODES, ATTR_TRANSITION, ATTR_XY_COLOR, + ColorMode, + LightEntityFeature, is_on, preprocess_turn_on_alternatives, )