diff --git a/homeassistant/components/deconz/deconz_device.py b/homeassistant/components/deconz/deconz_device.py index 6163db0dc65..7b0c9383cb3 100644 --- a/homeassistant/components/deconz/deconz_device.py +++ b/homeassistant/components/deconz/deconz_device.py @@ -2,7 +2,7 @@ from __future__ import annotations -from typing import Generic, TypeVar, Union +from typing import Generic, TypeVar from pydeconz.models.deconz_device import DeconzDevice as PydeconzDevice from pydeconz.models.group import Group as PydeconzGroup @@ -21,12 +21,7 @@ from .util import serial_from_unique_id _DeviceT = TypeVar( "_DeviceT", - bound=Union[ - PydeconzGroup, - PydeconzLightBase, - PydeconzSensorBase, - PydeconzScene, - ], + bound=PydeconzGroup | PydeconzLightBase | PydeconzSensorBase | PydeconzScene, ) diff --git a/homeassistant/components/deconz/light.py b/homeassistant/components/deconz/light.py index 590c0795e65..9f8011e3431 100644 --- a/homeassistant/components/deconz/light.py +++ b/homeassistant/components/deconz/light.py @@ -1,7 +1,7 @@ """Support for deCONZ lights.""" from __future__ import annotations -from typing import Any, TypedDict, TypeVar, Union +from typing import Any, TypedDict, TypeVar from pydeconz.interfaces.groups import GroupHandler from pydeconz.interfaces.lights import LightHandler @@ -47,7 +47,7 @@ DECONZ_TO_COLOR_MODE = { LightColorMode.XY: ColorMode.XY, } -_LightDeviceT = TypeVar("_LightDeviceT", bound=Union[Group, Light]) +_LightDeviceT = TypeVar("_LightDeviceT", bound=Group | Light) class SetStateAttributes(TypedDict, total=False): diff --git a/homeassistant/components/deconz/lock.py b/homeassistant/components/deconz/lock.py index 9c4c5b43dbe..7afde4ada11 100644 --- a/homeassistant/components/deconz/lock.py +++ b/homeassistant/components/deconz/lock.py @@ -2,7 +2,7 @@ from __future__ import annotations -from typing import Any, Union +from typing import Any from pydeconz.models.event import EventType from pydeconz.models.light.lock import Lock @@ -50,7 +50,7 @@ async def async_setup_entry( ) -class DeconzLock(DeconzDevice[Union[DoorLock, Lock]], LockEntity): +class DeconzLock(DeconzDevice[DoorLock | Lock], LockEntity): """Representation of a deCONZ lock.""" TYPE = DOMAIN diff --git a/homeassistant/components/devolo_home_network/entity.py b/homeassistant/components/devolo_home_network/entity.py index b5a10a108b2..a26d8dce8f6 100644 --- a/homeassistant/components/devolo_home_network/entity.py +++ b/homeassistant/components/devolo_home_network/entity.py @@ -1,7 +1,7 @@ """Generic platform.""" from __future__ import annotations -from typing import TypeVar, Union +from typing import TypeVar from devolo_plc_api.device import Device from devolo_plc_api.device_api import ( @@ -22,13 +22,13 @@ from .const import DOMAIN _DataT = TypeVar( "_DataT", - bound=Union[ - LogicalNetwork, - list[ConnectedStationInfo], - list[NeighborAPInfo], - WifiGuestAccessGet, - bool, - ], + bound=( + LogicalNetwork + | list[ConnectedStationInfo] + | list[NeighborAPInfo] + | WifiGuestAccessGet + | bool + ), ) diff --git a/homeassistant/components/devolo_home_network/sensor.py b/homeassistant/components/devolo_home_network/sensor.py index e59f856e8da..2cca7c3b44b 100644 --- a/homeassistant/components/devolo_home_network/sensor.py +++ b/homeassistant/components/devolo_home_network/sensor.py @@ -3,7 +3,7 @@ from __future__ import annotations from collections.abc import Callable from dataclasses import dataclass -from typing import Any, Generic, TypeVar, Union +from typing import Any, Generic, TypeVar from devolo_plc_api.device import Device from devolo_plc_api.device_api import ConnectedStationInfo, NeighborAPInfo @@ -30,11 +30,7 @@ from .entity import DevoloEntity _DataT = TypeVar( "_DataT", - bound=Union[ - LogicalNetwork, - list[ConnectedStationInfo], - list[NeighborAPInfo], - ], + bound=LogicalNetwork | list[ConnectedStationInfo] | list[NeighborAPInfo], ) diff --git a/homeassistant/components/devolo_home_network/switch.py b/homeassistant/components/devolo_home_network/switch.py index 8b018f01948..35ce84c0969 100644 --- a/homeassistant/components/devolo_home_network/switch.py +++ b/homeassistant/components/devolo_home_network/switch.py @@ -3,7 +3,7 @@ from __future__ import annotations from collections.abc import Awaitable, Callable from dataclasses import dataclass -from typing import Any, Generic, TypeVar, Union +from typing import Any, Generic, TypeVar from devolo_plc_api.device import Device from devolo_plc_api.device_api import WifiGuestAccessGet @@ -19,13 +19,7 @@ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator from .const import DOMAIN, SWITCH_GUEST_WIFI, SWITCH_LEDS from .entity import DevoloEntity -_DataT = TypeVar( - "_DataT", - bound=Union[ - WifiGuestAccessGet, - bool, - ], -) +_DataT = TypeVar("_DataT", bound=WifiGuestAccessGet | bool) @dataclass diff --git a/homeassistant/components/firmata/board.py b/homeassistant/components/firmata/board.py index 8b5c76e2582..c309676c8d6 100644 --- a/homeassistant/components/firmata/board.py +++ b/homeassistant/components/firmata/board.py @@ -3,7 +3,7 @@ from __future__ import annotations from collections.abc import Mapping import logging -from typing import Literal, Union +from typing import Literal from pymata_express.pymata_express import PymataExpress from pymata_express.pymata_express_serial import serial @@ -29,7 +29,7 @@ from .const import ( _LOGGER = logging.getLogger(__name__) -FirmataPinType = Union[int, str] +FirmataPinType = int | str class FirmataBoard: diff --git a/homeassistant/components/flume/entity.py b/homeassistant/components/flume/entity.py index b958510e733..ef63eeff1d7 100644 --- a/homeassistant/components/flume/entity.py +++ b/homeassistant/components/flume/entity.py @@ -1,7 +1,7 @@ """Platform for shared base classes for sensors.""" from __future__ import annotations -from typing import TypeVar, Union +from typing import TypeVar from homeassistant.helpers.entity import DeviceInfo, EntityDescription from homeassistant.helpers.update_coordinator import CoordinatorEntity @@ -15,11 +15,11 @@ from .coordinator import ( _FlumeCoordinatorT = TypeVar( "_FlumeCoordinatorT", - bound=Union[ - FlumeDeviceDataUpdateCoordinator, - FlumeDeviceConnectionUpdateCoordinator, - FlumeNotificationDataUpdateCoordinator, - ], + bound=( + FlumeDeviceDataUpdateCoordinator + | FlumeDeviceConnectionUpdateCoordinator + | FlumeNotificationDataUpdateCoordinator + ), ) diff --git a/homeassistant/components/forked_daapd/browse_media.py b/homeassistant/components/forked_daapd/browse_media.py index a4c97d3a035..dee1cd444c3 100644 --- a/homeassistant/components/forked_daapd/browse_media.py +++ b/homeassistant/components/forked_daapd/browse_media.py @@ -3,7 +3,7 @@ from __future__ import annotations from collections.abc import Sequence from dataclasses import dataclass -from typing import TYPE_CHECKING, Any, Union, cast +from typing import TYPE_CHECKING, Any, cast from urllib.parse import quote, unquote from homeassistant.components.media_player import BrowseMedia, MediaClass, MediaType @@ -160,7 +160,7 @@ async def get_owntone_content( return create_browse_media_response( master, media_content, - cast(list[dict[str, Union[int, str]]], result), + cast(list[dict[str, int | str]], result), children, ) if media_content.id_or_path == "": # top level search @@ -188,7 +188,7 @@ async def get_owntone_content( return create_browse_media_response( master, media_content, - cast(list[dict[str, Union[int, str]]], result), + cast(list[dict[str, int | str]], result), ) # Not a directory or top level of library # We should have content type and id @@ -214,7 +214,7 @@ async def get_owntone_content( ) return create_browse_media_response( - master, media_content, cast(list[dict[str, Union[int, str]]], result) + master, media_content, cast(list[dict[str, int | str]], result) )