From 565a9fea6be97c2facb838701992db9df825d3a9 Mon Sep 17 00:00:00 2001 From: Marc Mueller <30130371+cdce8p@users.noreply.github.com> Date: Wed, 29 Sep 2021 14:06:51 +0200 Subject: [PATCH] Import Callable from collections.abc (2) (#56776) --- homeassistant/components/amcrest/__init__.py | 3 ++- homeassistant/components/amcrest/binary_sensor.py | 3 ++- homeassistant/components/amcrest/camera.py | 3 ++- homeassistant/components/amcrest/sensor.py | 3 ++- homeassistant/components/azure_event_hub/__init__.py | 3 ++- homeassistant/components/camera/__init__.py | 4 ++-- homeassistant/components/climacell/const.py | 2 +- homeassistant/components/deconz/logbook.py | 2 +- homeassistant/components/dsmr_reader/definitions.py | 3 ++- homeassistant/components/firmata/pin.py | 4 +++- homeassistant/components/fritzbox/binary_sensor.py | 3 ++- homeassistant/components/fritzbox/model.py | 3 ++- homeassistant/components/fritzbox/sensor.py | 3 ++- homeassistant/components/frontend/storage.py | 3 ++- homeassistant/components/homematicip_cloud/hap.py | 3 ++- homeassistant/components/http/data_validator.py | 4 ++-- homeassistant/components/huawei_lte/__init__.py | 3 ++- homeassistant/components/huawei_lte/sensor.py | 3 ++- homeassistant/components/influxdb/__init__.py | 3 ++- homeassistant/components/keenetic_ndms2/router.py | 2 +- homeassistant/components/mobile_app/helpers.py | 2 +- homeassistant/components/mobile_app/push_notification.py | 4 +++- homeassistant/components/motioneye/__init__.py | 3 ++- homeassistant/components/mysensors/__init__.py | 2 +- homeassistant/components/mysensors/device_tracker.py | 3 ++- homeassistant/components/mysensors/gateway.py | 4 ++-- homeassistant/components/mysensors/helpers.py | 2 +- homeassistant/components/netgear/router.py | 6 ++++-- homeassistant/components/nmap_tracker/device_tracker.py | 3 ++- homeassistant/components/ovo_energy/sensor.py | 3 ++- homeassistant/components/picnic/const.py | 3 ++- homeassistant/components/recorder/__init__.py | 3 ++- homeassistant/components/recorder/purge.py | 3 ++- homeassistant/components/recorder/statistics.py | 4 ++-- homeassistant/components/recorder/util.py | 4 ++-- homeassistant/components/renault/renault_coordinator.py | 4 ++-- homeassistant/components/renault/renault_vehicle.py | 4 ++-- homeassistant/components/renault/select.py | 3 ++- homeassistant/components/renault/sensor.py | 3 ++- homeassistant/components/rfxtrx/sensor.py | 2 +- homeassistant/components/sonos/helpers.py | 3 ++- homeassistant/components/sonos/speaker.py | 4 ++-- homeassistant/components/synology_dsm/__init__.py | 3 ++- homeassistant/components/tile/device_tracker.py | 4 ++-- homeassistant/components/timer/__init__.py | 2 +- homeassistant/components/zha/core/decorators.py | 3 ++- homeassistant/components/zha/core/discovery.py | 2 +- homeassistant/components/zha/core/helpers.py | 4 ++-- homeassistant/components/zha/core/registries.py | 3 ++- homeassistant/components/zha/core/typing.py | 4 ++-- homeassistant/components/zwave_js/__init__.py | 2 +- homeassistant/components/zwave_js/api.py | 3 ++- homeassistant/components/zwave_js/helpers.py | 3 ++- 53 files changed, 100 insertions(+), 65 deletions(-) diff --git a/homeassistant/components/amcrest/__init__.py b/homeassistant/components/amcrest/__init__.py index 26247816ac9..bb8956f8b15 100644 --- a/homeassistant/components/amcrest/__init__.py +++ b/homeassistant/components/amcrest/__init__.py @@ -1,12 +1,13 @@ """Support for Amcrest IP cameras.""" from __future__ import annotations +from collections.abc import Callable from contextlib import suppress from dataclasses import dataclass from datetime import datetime, timedelta import logging import threading -from typing import Any, Callable +from typing import Any import aiohttp from amcrest import AmcrestError, ApiWrapper, LoginError diff --git a/homeassistant/components/amcrest/binary_sensor.py b/homeassistant/components/amcrest/binary_sensor.py index 48bc6727585..ea8f15d838c 100644 --- a/homeassistant/components/amcrest/binary_sensor.py +++ b/homeassistant/components/amcrest/binary_sensor.py @@ -1,11 +1,12 @@ """Support for Amcrest IP camera binary sensors.""" from __future__ import annotations +from collections.abc import Callable from contextlib import suppress from dataclasses import dataclass from datetime import timedelta import logging -from typing import TYPE_CHECKING, Callable +from typing import TYPE_CHECKING from amcrest import AmcrestError import voluptuous as vol diff --git a/homeassistant/components/amcrest/camera.py b/homeassistant/components/amcrest/camera.py index f118bd0da77..3c91607f96d 100644 --- a/homeassistant/components/amcrest/camera.py +++ b/homeassistant/components/amcrest/camera.py @@ -2,10 +2,11 @@ from __future__ import annotations import asyncio +from collections.abc import Callable from datetime import timedelta from functools import partial import logging -from typing import TYPE_CHECKING, Any, Callable +from typing import TYPE_CHECKING, Any from aiohttp import web from amcrest import AmcrestError diff --git a/homeassistant/components/amcrest/sensor.py b/homeassistant/components/amcrest/sensor.py index 87bb1d5c758..752aabc2c92 100644 --- a/homeassistant/components/amcrest/sensor.py +++ b/homeassistant/components/amcrest/sensor.py @@ -1,9 +1,10 @@ """Support for Amcrest IP camera sensors.""" from __future__ import annotations +from collections.abc import Callable from datetime import timedelta import logging -from typing import TYPE_CHECKING, Callable +from typing import TYPE_CHECKING from amcrest import AmcrestError diff --git a/homeassistant/components/azure_event_hub/__init__.py b/homeassistant/components/azure_event_hub/__init__.py index 9bae21ec43b..039542f9ed6 100644 --- a/homeassistant/components/azure_event_hub/__init__.py +++ b/homeassistant/components/azure_event_hub/__init__.py @@ -2,10 +2,11 @@ from __future__ import annotations import asyncio +from collections.abc import Callable import json import logging import time -from typing import Any, Callable +from typing import Any from azure.eventhub import EventData, EventDataBatch from azure.eventhub.aio import EventHubProducerClient, EventHubSharedKeyCredential diff --git a/homeassistant/components/camera/__init__.py b/homeassistant/components/camera/__init__.py index 040a49dcc4a..bfa68fe67e6 100644 --- a/homeassistant/components/camera/__init__.py +++ b/homeassistant/components/camera/__init__.py @@ -4,7 +4,7 @@ from __future__ import annotations import asyncio import base64 import collections -from collections.abc import Awaitable, Mapping +from collections.abc import Awaitable, Callable, Mapping from contextlib import suppress from dataclasses import dataclass from datetime import datetime, timedelta @@ -14,7 +14,7 @@ import inspect import logging import os from random import SystemRandom -from typing import Callable, Final, cast, final +from typing import Final, cast, final from aiohttp import web import async_timeout diff --git a/homeassistant/components/climacell/const.py b/homeassistant/components/climacell/const.py index 162fbb01545..3b5bc360d7c 100644 --- a/homeassistant/components/climacell/const.py +++ b/homeassistant/components/climacell/const.py @@ -1,9 +1,9 @@ """Constants for the ClimaCell integration.""" from __future__ import annotations +from collections.abc import Callable from dataclasses import dataclass from enum import IntEnum -from typing import Callable from pyclimacell.const import ( DAILY, diff --git a/homeassistant/components/deconz/logbook.py b/homeassistant/components/deconz/logbook.py index 16497d00ccb..0d7ad67dda6 100644 --- a/homeassistant/components/deconz/logbook.py +++ b/homeassistant/components/deconz/logbook.py @@ -1,7 +1,7 @@ """Describe deCONZ logbook events.""" from __future__ import annotations -from typing import Callable +from collections.abc import Callable from homeassistant.const import ATTR_DEVICE_ID, CONF_EVENT from homeassistant.core import HomeAssistant, callback diff --git a/homeassistant/components/dsmr_reader/definitions.py b/homeassistant/components/dsmr_reader/definitions.py index 1e9834e7e5e..1c719bc890b 100644 --- a/homeassistant/components/dsmr_reader/definitions.py +++ b/homeassistant/components/dsmr_reader/definitions.py @@ -1,8 +1,9 @@ """Definitions for DSMR Reader sensors added to MQTT.""" from __future__ import annotations +from collections.abc import Callable from dataclasses import dataclass -from typing import Callable, Final +from typing import Final from homeassistant.components.sensor import ( STATE_CLASS_MEASUREMENT, diff --git a/homeassistant/components/firmata/pin.py b/homeassistant/components/firmata/pin.py index af07871efc7..6dadb07fd63 100644 --- a/homeassistant/components/firmata/pin.py +++ b/homeassistant/components/firmata/pin.py @@ -1,6 +1,8 @@ """Code to handle pins on a Firmata board.""" +from __future__ import annotations + +from collections.abc import Callable import logging -from typing import Callable from .board import FirmataBoard, FirmataPinType from .const import PIN_MODE_INPUT, PIN_MODE_PULLUP, PIN_TYPE_ANALOG diff --git a/homeassistant/components/fritzbox/binary_sensor.py b/homeassistant/components/fritzbox/binary_sensor.py index 25831da957c..1317710c570 100644 --- a/homeassistant/components/fritzbox/binary_sensor.py +++ b/homeassistant/components/fritzbox/binary_sensor.py @@ -1,8 +1,9 @@ """Support for Fritzbox binary sensors.""" from __future__ import annotations +from collections.abc import Callable from dataclasses import dataclass -from typing import Callable, Final +from typing import Final from pyfritzhome.fritzhomedevice import FritzhomeDevice diff --git a/homeassistant/components/fritzbox/model.py b/homeassistant/components/fritzbox/model.py index baa8f656c02..fa6da56caeb 100644 --- a/homeassistant/components/fritzbox/model.py +++ b/homeassistant/components/fritzbox/model.py @@ -1,8 +1,9 @@ """Models for the AVM FRITZ!SmartHome integration.""" from __future__ import annotations +from collections.abc import Callable from dataclasses import dataclass -from typing import Callable, TypedDict +from typing import TypedDict from pyfritzhome import FritzhomeDevice diff --git a/homeassistant/components/fritzbox/sensor.py b/homeassistant/components/fritzbox/sensor.py index 6f1cf49129d..7ff66f193c9 100644 --- a/homeassistant/components/fritzbox/sensor.py +++ b/homeassistant/components/fritzbox/sensor.py @@ -1,8 +1,9 @@ """Support for AVM FRITZ!SmartHome temperature sensor only devices.""" from __future__ import annotations +from collections.abc import Callable from dataclasses import dataclass -from typing import Callable, Final +from typing import Final from pyfritzhome.fritzhomedevice import FritzhomeDevice diff --git a/homeassistant/components/frontend/storage.py b/homeassistant/components/frontend/storage.py index 294b707c965..0b04655bd86 100644 --- a/homeassistant/components/frontend/storage.py +++ b/homeassistant/components/frontend/storage.py @@ -1,8 +1,9 @@ """API for persistent storage for the frontend.""" from __future__ import annotations +from collections.abc import Callable from functools import wraps -from typing import Any, Callable +from typing import Any import voluptuous as vol diff --git a/homeassistant/components/homematicip_cloud/hap.py b/homeassistant/components/homematicip_cloud/hap.py index 3f8f6ae6086..a3537bff31b 100644 --- a/homeassistant/components/homematicip_cloud/hap.py +++ b/homeassistant/components/homematicip_cloud/hap.py @@ -2,8 +2,9 @@ from __future__ import annotations import asyncio +from collections.abc import Callable import logging -from typing import Any, Callable +from typing import Any from homematicip.aio.auth import AsyncAuth from homematicip.aio.home import AsyncHome diff --git a/homeassistant/components/http/data_validator.py b/homeassistant/components/http/data_validator.py index f64a3c4830e..cc661d43fd8 100644 --- a/homeassistant/components/http/data_validator.py +++ b/homeassistant/components/http/data_validator.py @@ -1,11 +1,11 @@ """Decorator for view methods to help with data validation.""" from __future__ import annotations -from collections.abc import Awaitable +from collections.abc import Awaitable, Callable from functools import wraps from http import HTTPStatus import logging -from typing import Any, Callable +from typing import Any from aiohttp import web import voluptuous as vol diff --git a/homeassistant/components/huawei_lte/__init__.py b/homeassistant/components/huawei_lte/__init__.py index ec9281659f5..92122f1b2be 100644 --- a/homeassistant/components/huawei_lte/__init__.py +++ b/homeassistant/components/huawei_lte/__init__.py @@ -2,11 +2,12 @@ from __future__ import annotations from collections import defaultdict +from collections.abc import Callable from contextlib import suppress from datetime import timedelta import logging import time -from typing import Any, Callable, cast +from typing import Any, cast import attr from huawei_lte_api.AuthorizedConnection import AuthorizedConnection diff --git a/homeassistant/components/huawei_lte/sensor.py b/homeassistant/components/huawei_lte/sensor.py index 746e44687ca..f62450088ae 100644 --- a/homeassistant/components/huawei_lte/sensor.py +++ b/homeassistant/components/huawei_lte/sensor.py @@ -2,9 +2,10 @@ from __future__ import annotations from bisect import bisect +from collections.abc import Callable import logging import re -from typing import Callable, NamedTuple +from typing import NamedTuple import attr diff --git a/homeassistant/components/influxdb/__init__.py b/homeassistant/components/influxdb/__init__.py index bb5cf0173c1..407036e327c 100644 --- a/homeassistant/components/influxdb/__init__.py +++ b/homeassistant/components/influxdb/__init__.py @@ -1,6 +1,7 @@ """Support for sending data to an Influx database.""" from __future__ import annotations +from collections.abc import Callable from contextlib import suppress from dataclasses import dataclass import logging @@ -8,7 +9,7 @@ import math import queue import threading import time -from typing import Any, Callable +from typing import Any from influxdb import InfluxDBClient, exceptions from influxdb_client import InfluxDBClient as InfluxDBClientV2 diff --git a/homeassistant/components/keenetic_ndms2/router.py b/homeassistant/components/keenetic_ndms2/router.py index d79f2591525..8da8034a162 100644 --- a/homeassistant/components/keenetic_ndms2/router.py +++ b/homeassistant/components/keenetic_ndms2/router.py @@ -1,9 +1,9 @@ """The Keenetic Client class.""" from __future__ import annotations +from collections.abc import Callable from datetime import timedelta import logging -from typing import Callable from ndms2_client import Client, ConnectionException, Device, TelnetConnection from ndms2_client.client import RouterInfo diff --git a/homeassistant/components/mobile_app/helpers.py b/homeassistant/components/mobile_app/helpers.py index 9902e1d93d7..2325a75e630 100644 --- a/homeassistant/components/mobile_app/helpers.py +++ b/homeassistant/components/mobile_app/helpers.py @@ -1,9 +1,9 @@ """Helpers for mobile_app.""" from __future__ import annotations +from collections.abc import Callable import json import logging -from typing import Callable from aiohttp.web import Response, json_response from nacl.encoding import Base64Encoder diff --git a/homeassistant/components/mobile_app/push_notification.py b/homeassistant/components/mobile_app/push_notification.py index 1cc5bac5d1c..f3852895d32 100644 --- a/homeassistant/components/mobile_app/push_notification.py +++ b/homeassistant/components/mobile_app/push_notification.py @@ -1,6 +1,8 @@ """Push notification handling.""" +from __future__ import annotations + import asyncio -from typing import Callable +from collections.abc import Callable from homeassistant.core import HomeAssistant, callback from homeassistant.helpers.event import async_call_later diff --git a/homeassistant/components/motioneye/__init__.py b/homeassistant/components/motioneye/__init__.py index 3eebcd4ee53..07385f24216 100644 --- a/homeassistant/components/motioneye/__init__.py +++ b/homeassistant/components/motioneye/__init__.py @@ -2,10 +2,11 @@ from __future__ import annotations import asyncio +from collections.abc import Callable import json import logging from types import MappingProxyType -from typing import Any, Callable +from typing import Any from urllib.parse import urlencode, urljoin from aiohttp.web import Request, Response diff --git a/homeassistant/components/mysensors/__init__.py b/homeassistant/components/mysensors/__init__.py index 3d0f219c2a8..b6ad78f5dc8 100644 --- a/homeassistant/components/mysensors/__init__.py +++ b/homeassistant/components/mysensors/__init__.py @@ -2,9 +2,9 @@ from __future__ import annotations import asyncio +from collections.abc import Callable from functools import partial import logging -from typing import Callable from mysensors import BaseAsyncGateway import voluptuous as vol diff --git a/homeassistant/components/mysensors/device_tracker.py b/homeassistant/components/mysensors/device_tracker.py index 544fb8d6b09..1dd29dbf864 100644 --- a/homeassistant/components/mysensors/device_tracker.py +++ b/homeassistant/components/mysensors/device_tracker.py @@ -1,7 +1,8 @@ """Support for tracking MySensors devices.""" from __future__ import annotations -from typing import Any, Callable +from collections.abc import Callable +from typing import Any from homeassistant.components import mysensors from homeassistant.components.device_tracker import DOMAIN diff --git a/homeassistant/components/mysensors/gateway.py b/homeassistant/components/mysensors/gateway.py index f9410f66e8f..1f9b96e6825 100644 --- a/homeassistant/components/mysensors/gateway.py +++ b/homeassistant/components/mysensors/gateway.py @@ -3,11 +3,11 @@ from __future__ import annotations import asyncio from collections import defaultdict -from collections.abc import Coroutine +from collections.abc import Callable, Coroutine import logging import socket import sys -from typing import Any, Callable +from typing import Any import async_timeout from mysensors import BaseAsyncGateway, Message, Sensor, mysensors diff --git a/homeassistant/components/mysensors/helpers.py b/homeassistant/components/mysensors/helpers.py index 7c50526cd6e..eba382fb52d 100644 --- a/homeassistant/components/mysensors/helpers.py +++ b/homeassistant/components/mysensors/helpers.py @@ -2,9 +2,9 @@ from __future__ import annotations from collections import defaultdict +from collections.abc import Callable from enum import IntEnum import logging -from typing import Callable from mysensors import BaseAsyncGateway, Message from mysensors.sensor import ChildSensor diff --git a/homeassistant/components/netgear/router.py b/homeassistant/components/netgear/router.py index a500bffb966..83b1aaa9f32 100644 --- a/homeassistant/components/netgear/router.py +++ b/homeassistant/components/netgear/router.py @@ -1,8 +1,10 @@ """Represent the Netgear router and its devices.""" +from __future__ import annotations + from abc import abstractmethod +from collections.abc import Callable from datetime import timedelta import logging -from typing import Callable from pynetgear import Netgear @@ -62,7 +64,7 @@ def async_setup_netgear_entry( hass: HomeAssistantType, entry: ConfigEntry, async_add_entities: AddEntitiesCallback, - entity_class_generator: Callable[["NetgearRouter", dict], list], + entity_class_generator: Callable[[NetgearRouter, dict], list], ) -> None: """Set up device tracker for Netgear component.""" router = hass.data[DOMAIN][entry.unique_id] diff --git a/homeassistant/components/nmap_tracker/device_tracker.py b/homeassistant/components/nmap_tracker/device_tracker.py index e475afd24c8..b63280951a6 100644 --- a/homeassistant/components/nmap_tracker/device_tracker.py +++ b/homeassistant/components/nmap_tracker/device_tracker.py @@ -1,8 +1,9 @@ """Support for scanning a network with nmap.""" from __future__ import annotations +from collections.abc import Callable import logging -from typing import Any, Callable +from typing import Any import voluptuous as vol diff --git a/homeassistant/components/ovo_energy/sensor.py b/homeassistant/components/ovo_energy/sensor.py index 16fd15bfbde..0afca4f84f2 100644 --- a/homeassistant/components/ovo_energy/sensor.py +++ b/homeassistant/components/ovo_energy/sensor.py @@ -1,9 +1,10 @@ """Support for OVO Energy sensors.""" from __future__ import annotations +from collections.abc import Callable from dataclasses import dataclass from datetime import timedelta -from typing import Callable, Final +from typing import Final from ovoenergy import OVODailyUsage from ovoenergy.ovoenergy import OVOEnergy diff --git a/homeassistant/components/picnic/const.py b/homeassistant/components/picnic/const.py index e37f85cb28b..5aa21fd671b 100644 --- a/homeassistant/components/picnic/const.py +++ b/homeassistant/components/picnic/const.py @@ -1,8 +1,9 @@ """Constants for the Picnic integration.""" from __future__ import annotations +from collections.abc import Callable from dataclasses import dataclass -from typing import Any, Callable, Literal +from typing import Any, Literal from homeassistant.components.sensor import SensorEntityDescription from homeassistant.const import CURRENCY_EURO, DEVICE_CLASS_TIMESTAMP diff --git a/homeassistant/components/recorder/__init__.py b/homeassistant/components/recorder/__init__.py index b473dead17b..1b090c331a7 100644 --- a/homeassistant/components/recorder/__init__.py +++ b/homeassistant/components/recorder/__init__.py @@ -2,6 +2,7 @@ from __future__ import annotations import asyncio +from collections.abc import Callable import concurrent.futures from datetime import datetime, timedelta import logging @@ -9,7 +10,7 @@ import queue import sqlite3 import threading import time -from typing import Any, Callable, NamedTuple +from typing import Any, NamedTuple from sqlalchemy import create_engine, event as sqlalchemy_event, exc, func, select from sqlalchemy.exc import SQLAlchemyError diff --git a/homeassistant/components/recorder/purge.py b/homeassistant/components/recorder/purge.py index 49803117119..bc91f7ce67e 100644 --- a/homeassistant/components/recorder/purge.py +++ b/homeassistant/components/recorder/purge.py @@ -1,9 +1,10 @@ """Purge old data helper.""" from __future__ import annotations +from collections.abc import Callable from datetime import datetime import logging -from typing import TYPE_CHECKING, Callable +from typing import TYPE_CHECKING from sqlalchemy.orm.session import Session from sqlalchemy.sql.expression import distinct diff --git a/homeassistant/components/recorder/statistics.py b/homeassistant/components/recorder/statistics.py index 845e13d40b3..ec76cc5545b 100644 --- a/homeassistant/components/recorder/statistics.py +++ b/homeassistant/components/recorder/statistics.py @@ -2,12 +2,12 @@ from __future__ import annotations from collections import defaultdict -from collections.abc import Iterable +from collections.abc import Callable, Iterable import dataclasses from datetime import datetime, timedelta from itertools import groupby import logging -from typing import TYPE_CHECKING, Any, Callable, Literal +from typing import TYPE_CHECKING, Any, Literal from sqlalchemy import bindparam, func from sqlalchemy.exc import SQLAlchemyError diff --git a/homeassistant/components/recorder/util.py b/homeassistant/components/recorder/util.py index 7e3948cf15b..101915c7117 100644 --- a/homeassistant/components/recorder/util.py +++ b/homeassistant/components/recorder/util.py @@ -1,14 +1,14 @@ """SQLAlchemy util functions.""" from __future__ import annotations -from collections.abc import Generator +from collections.abc import Callable, Generator from contextlib import contextmanager from datetime import timedelta import functools import logging import os import time -from typing import TYPE_CHECKING, Callable +from typing import TYPE_CHECKING from sqlalchemy import text from sqlalchemy.exc import OperationalError, SQLAlchemyError diff --git a/homeassistant/components/renault/renault_coordinator.py b/homeassistant/components/renault/renault_coordinator.py index 64e414a9ab7..4487d9db9ab 100644 --- a/homeassistant/components/renault/renault_coordinator.py +++ b/homeassistant/components/renault/renault_coordinator.py @@ -1,10 +1,10 @@ """Proxy to handle account communication with Renault servers.""" from __future__ import annotations -from collections.abc import Awaitable +from collections.abc import Awaitable, Callable from datetime import timedelta import logging -from typing import Callable, TypeVar +from typing import TypeVar from renault_api.kamereon.exceptions import ( AccessDeniedException, diff --git a/homeassistant/components/renault/renault_vehicle.py b/homeassistant/components/renault/renault_vehicle.py index 90bc4a2def4..12f5f4e8671 100644 --- a/homeassistant/components/renault/renault_vehicle.py +++ b/homeassistant/components/renault/renault_vehicle.py @@ -2,11 +2,11 @@ from __future__ import annotations import asyncio -from collections.abc import Awaitable +from collections.abc import Awaitable, Callable from dataclasses import dataclass from datetime import timedelta import logging -from typing import Callable, cast +from typing import cast from renault_api.kamereon import models from renault_api.renault_vehicle import RenaultVehicle diff --git a/homeassistant/components/renault/select.py b/homeassistant/components/renault/select.py index fa9c491030d..a8f4a15dc21 100644 --- a/homeassistant/components/renault/select.py +++ b/homeassistant/components/renault/select.py @@ -1,8 +1,9 @@ """Support for Renault sensors.""" from __future__ import annotations +from collections.abc import Callable from dataclasses import dataclass -from typing import Callable, cast +from typing import cast from renault_api.kamereon.models import KamereonVehicleBatteryStatusData diff --git a/homeassistant/components/renault/sensor.py b/homeassistant/components/renault/sensor.py index 4cb0d723234..bcdb01a05f3 100644 --- a/homeassistant/components/renault/sensor.py +++ b/homeassistant/components/renault/sensor.py @@ -1,8 +1,9 @@ """Support for Renault sensors.""" from __future__ import annotations +from collections.abc import Callable from dataclasses import dataclass -from typing import Callable, cast +from typing import cast from renault_api.kamereon.enums import ChargeState, PlugState from renault_api.kamereon.models import ( diff --git a/homeassistant/components/rfxtrx/sensor.py b/homeassistant/components/rfxtrx/sensor.py index fd3be53bfda..c72d2e288e1 100644 --- a/homeassistant/components/rfxtrx/sensor.py +++ b/homeassistant/components/rfxtrx/sensor.py @@ -1,9 +1,9 @@ """Support for RFXtrx sensors.""" from __future__ import annotations +from collections.abc import Callable from dataclasses import dataclass import logging -from typing import Callable from RFXtrx import ControlEvent, SensorEvent diff --git a/homeassistant/components/sonos/helpers.py b/homeassistant/components/sonos/helpers.py index 2e5b3a8c032..01a75eb7747 100644 --- a/homeassistant/components/sonos/helpers.py +++ b/homeassistant/components/sonos/helpers.py @@ -1,9 +1,10 @@ """Helper methods for common tasks.""" from __future__ import annotations +from collections.abc import Callable import functools as ft import logging -from typing import Any, Callable +from typing import Any from soco.exceptions import SoCoException, SoCoUPnPException diff --git a/homeassistant/components/sonos/speaker.py b/homeassistant/components/sonos/speaker.py index ea49175b665..851711c2e12 100644 --- a/homeassistant/components/sonos/speaker.py +++ b/homeassistant/components/sonos/speaker.py @@ -2,12 +2,12 @@ from __future__ import annotations import asyncio -from collections.abc import Coroutine +from collections.abc import Callable, Coroutine import contextlib import datetime from functools import partial import logging -from typing import Any, Callable +from typing import Any import urllib.parse import async_timeout diff --git a/homeassistant/components/synology_dsm/__init__.py b/homeassistant/components/synology_dsm/__init__.py index 87eb345b03d..a4b03ecce3d 100644 --- a/homeassistant/components/synology_dsm/__init__.py +++ b/homeassistant/components/synology_dsm/__init__.py @@ -1,9 +1,10 @@ """The Synology DSM component.""" from __future__ import annotations +from collections.abc import Callable from datetime import timedelta import logging -from typing import Any, Callable +from typing import Any import async_timeout from synology_dsm import SynologyDSM diff --git a/homeassistant/components/tile/device_tracker.py b/homeassistant/components/tile/device_tracker.py index 27446389f50..36cd16de23a 100644 --- a/homeassistant/components/tile/device_tracker.py +++ b/homeassistant/components/tile/device_tracker.py @@ -1,9 +1,9 @@ """Support for Tile device trackers.""" from __future__ import annotations -from collections.abc import Awaitable +from collections.abc import Awaitable, Callable import logging -from typing import Any, Callable +from typing import Any from pytile.tile import Tile diff --git a/homeassistant/components/timer/__init__.py b/homeassistant/components/timer/__init__.py index c4544a4b13f..e4aa6be1ff1 100644 --- a/homeassistant/components/timer/__init__.py +++ b/homeassistant/components/timer/__init__.py @@ -1,9 +1,9 @@ """Support for Timers.""" from __future__ import annotations +from collections.abc import Callable from datetime import datetime, timedelta import logging -from typing import Callable import voluptuous as vol diff --git a/homeassistant/components/zha/core/decorators.py b/homeassistant/components/zha/core/decorators.py index c3eec07e980..a27e4cc0bfc 100644 --- a/homeassistant/components/zha/core/decorators.py +++ b/homeassistant/components/zha/core/decorators.py @@ -1,7 +1,8 @@ """Decorators for ZHA core registries.""" from __future__ import annotations -from typing import Callable, TypeVar +from collections.abc import Callable +from typing import TypeVar CALLABLE_T = TypeVar("CALLABLE_T", bound=Callable) # pylint: disable=invalid-name diff --git a/homeassistant/components/zha/core/discovery.py b/homeassistant/components/zha/core/discovery.py index 6545f14668f..49d640c3165 100644 --- a/homeassistant/components/zha/core/discovery.py +++ b/homeassistant/components/zha/core/discovery.py @@ -2,8 +2,8 @@ from __future__ import annotations from collections import Counter +from collections.abc import Callable import logging -from typing import Callable from homeassistant import const as ha_const from homeassistant.core import HomeAssistant, callback diff --git a/homeassistant/components/zha/core/helpers.py b/homeassistant/components/zha/core/helpers.py index 34359c19420..47ee682b46e 100644 --- a/homeassistant/components/zha/core/helpers.py +++ b/homeassistant/components/zha/core/helpers.py @@ -8,14 +8,14 @@ from __future__ import annotations import asyncio import binascii -from collections.abc import Iterator +from collections.abc import Callable, Iterator from dataclasses import dataclass import functools import itertools import logging from random import uniform import re -from typing import Any, Callable +from typing import Any import voluptuous as vol import zigpy.exceptions diff --git a/homeassistant/components/zha/core/registries.py b/homeassistant/components/zha/core/registries.py index 53425e329c0..f7f35e0755d 100644 --- a/homeassistant/components/zha/core/registries.py +++ b/homeassistant/components/zha/core/registries.py @@ -2,7 +2,8 @@ from __future__ import annotations import collections -from typing import Callable, Dict +from collections.abc import Callable +from typing import Dict import attr from zigpy import zcl diff --git a/homeassistant/components/zha/core/typing.py b/homeassistant/components/zha/core/typing.py index 15e8be0db1e..62a797d9fd5 100644 --- a/homeassistant/components/zha/core/typing.py +++ b/homeassistant/components/zha/core/typing.py @@ -1,6 +1,6 @@ """Typing helpers for ZHA component.""" - -from typing import TYPE_CHECKING, Callable, TypeVar +from collections.abc import Callable +from typing import TYPE_CHECKING, TypeVar import zigpy.device import zigpy.endpoint diff --git a/homeassistant/components/zwave_js/__init__.py b/homeassistant/components/zwave_js/__init__.py index 7a8f284787f..77fcf44b4d8 100644 --- a/homeassistant/components/zwave_js/__init__.py +++ b/homeassistant/components/zwave_js/__init__.py @@ -3,7 +3,7 @@ from __future__ import annotations import asyncio from collections import defaultdict -from typing import Callable +from collections.abc import Callable from async_timeout import timeout from zwave_js_server.client import Client as ZwaveClient diff --git a/homeassistant/components/zwave_js/api.py b/homeassistant/components/zwave_js/api.py index f1a4150ad1a..03bccd814db 100644 --- a/homeassistant/components/zwave_js/api.py +++ b/homeassistant/components/zwave_js/api.py @@ -1,10 +1,11 @@ """Websocket API for Z-Wave JS.""" from __future__ import annotations +from collections.abc import Callable import dataclasses from functools import partial, wraps import json -from typing import Any, Callable +from typing import Any from aiohttp import hdrs, web, web_exceptions, web_request import voluptuous as vol diff --git a/homeassistant/components/zwave_js/helpers.py b/homeassistant/components/zwave_js/helpers.py index 4744c7f9fc1..4894c40b8ae 100644 --- a/homeassistant/components/zwave_js/helpers.py +++ b/homeassistant/components/zwave_js/helpers.py @@ -1,7 +1,8 @@ """Helper functions for Z-Wave JS integration.""" from __future__ import annotations -from typing import Any, Callable, cast +from collections.abc import Callable +from typing import Any, cast import voluptuous as vol from zwave_js_server.client import Client as ZwaveClient