From dbc02707a9bde8aa06019053568c92c97e87aa2d Mon Sep 17 00:00:00 2001 From: Marc Mueller <30130371+cdce8p@users.noreply.github.com> Date: Sun, 18 Sep 2022 03:08:17 +0200 Subject: [PATCH] Improve media_player typing (#78666) --- homeassistant/components/media_player/__init__.py | 3 ++- homeassistant/components/media_player/device_condition.py | 2 +- homeassistant/components/media_player/reproduce_state.py | 4 +--- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/homeassistant/components/media_player/__init__.py b/homeassistant/components/media_player/__init__.py index 8c89288b41d..5771e1b6938 100644 --- a/homeassistant/components/media_player/__init__.py +++ b/homeassistant/components/media_player/__init__.py @@ -19,6 +19,7 @@ from aiohttp import web from aiohttp.hdrs import CACHE_CONTROL, CONTENT_TYPE from aiohttp.typedefs import LooseHeaders import async_timeout +from typing_extensions import Required import voluptuous as vol from yarl import URL @@ -219,7 +220,7 @@ ATTR_TO_PROPERTY = [ class _CacheImage(TypedDict, total=False): """Class to hold a cached image.""" - lock: asyncio.Lock + lock: Required[asyncio.Lock] content: tuple[bytes | None, str | None] diff --git a/homeassistant/components/media_player/device_condition.py b/homeassistant/components/media_player/device_condition.py index 2f398790ac3..3bf6c5956fa 100644 --- a/homeassistant/components/media_player/device_condition.py +++ b/homeassistant/components/media_player/device_condition.py @@ -46,7 +46,7 @@ async def async_get_conditions( ) -> list[dict[str, str]]: """List device conditions for Media player devices.""" registry = entity_registry.async_get(hass) - conditions = [] + conditions: list[dict[str, str]] = [] # Get all the integrations entities for this device for entry in entity_registry.async_entries_for_device(registry, device_id): diff --git a/homeassistant/components/media_player/reproduce_state.py b/homeassistant/components/media_player/reproduce_state.py index bdfc0bf3acb..387792a1b60 100644 --- a/homeassistant/components/media_player/reproduce_state.py +++ b/homeassistant/components/media_player/reproduce_state.py @@ -37,8 +37,6 @@ from .const import ( MediaPlayerEntityFeature, ) -# mypy: allow-untyped-defs - async def _async_reproduce_states( hass: HomeAssistant, @@ -51,7 +49,7 @@ async def _async_reproduce_states( cur_state = hass.states.get(state.entity_id) features = cur_state.attributes[ATTR_SUPPORTED_FEATURES] if cur_state else 0 - async def call_service(service: str, keys: Iterable) -> None: + async def call_service(service: str, keys: Iterable[str]) -> None: """Call service with set of attributes given.""" data = {"entity_id": state.entity_id} for key in keys: