From 3a9ecab98abcc44c0ba123e2411b76c2a65343e7 Mon Sep 17 00:00:00 2001 From: Marc Mueller <30130371+cdce8p@users.noreply.github.com> Date: Sat, 1 Oct 2022 00:12:39 +0200 Subject: [PATCH] Improve iterable typing (1) (#79295) --- homeassistant/components/recorder/filters.py | 14 +++++++------- homeassistant/components/recorder/util.py | 4 ++-- homeassistant/core.py | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/homeassistant/components/recorder/filters.py b/homeassistant/components/recorder/filters.py index 45db64e0097..72e9916b6a7 100644 --- a/homeassistant/components/recorder/filters.py +++ b/homeassistant/components/recorder/filters.py @@ -1,7 +1,7 @@ """Provide pre-made queries on top of the recorder component.""" from __future__ import annotations -from collections.abc import Callable, Iterable +from collections.abc import Callable, Collection, Iterable import json from typing import Any @@ -81,13 +81,13 @@ class Filters: def __init__(self) -> None: """Initialise the include and exclude filters.""" - self.excluded_entities: Iterable[str] = [] - self.excluded_domains: Iterable[str] = [] - self.excluded_entity_globs: Iterable[str] = [] + self.excluded_entities: Collection[str] = [] + self.excluded_domains: Collection[str] = [] + self.excluded_entity_globs: Collection[str] = [] - self.included_entities: Iterable[str] = [] - self.included_domains: Iterable[str] = [] - self.included_entity_globs: Iterable[str] = [] + self.included_entities: Collection[str] = [] + self.included_domains: Collection[str] = [] + self.included_entity_globs: Collection[str] = [] def __repr__(self) -> str: """Return human readable excludes/includes.""" diff --git a/homeassistant/components/recorder/util.py b/homeassistant/components/recorder/util.py index 139e73199ed..bd95e1f50c3 100644 --- a/homeassistant/components/recorder/util.py +++ b/homeassistant/components/recorder/util.py @@ -1,7 +1,7 @@ """SQLAlchemy util functions.""" from __future__ import annotations -from collections.abc import Callable, Generator, Iterable +from collections.abc import Callable, Generator from contextlib import contextmanager from datetime import date, datetime, timedelta import functools @@ -180,7 +180,7 @@ def execute_stmt_lambda_element( start_time: datetime | None = None, end_time: datetime | None = None, yield_per: int | None = DEFAULT_YIELD_STATES_ROWS, -) -> Iterable[Row]: +) -> list[Row]: """Execute a StatementLambdaElement. If the time window passed is greater than one day diff --git a/homeassistant/core.py b/homeassistant/core.py index 01c75fb707e..f4cefcb7fff 100644 --- a/homeassistant/core.py +++ b/homeassistant/core.py @@ -649,7 +649,7 @@ class HomeAssistant: else: await asyncio.sleep(0) - async def _await_and_log_pending(self, pending: Iterable[Awaitable[Any]]) -> None: + async def _await_and_log_pending(self, pending: Collection[Awaitable[Any]]) -> None: """Await and log tasks that take a long time.""" wait_time = 0 while pending: