diff --git a/homeassistant/components/coinbase/sensor.py b/homeassistant/components/coinbase/sensor.py index 011dd63b151..8b573cffb83 100644 --- a/homeassistant/components/coinbase/sensor.py +++ b/homeassistant/components/coinbase/sensor.py @@ -1,10 +1,15 @@ """Support for Coinbase sensors.""" +from __future__ import annotations + import logging from homeassistant.components.sensor import SensorEntity, SensorStateClass +from homeassistant.config_entries import ConfigEntry from homeassistant.const import ATTR_ATTRIBUTION +from homeassistant.core import HomeAssistant from homeassistant.helpers.device_registry import DeviceEntryType from homeassistant.helpers.entity import DeviceInfo +from homeassistant.helpers.entity_platform import AddEntitiesCallback from .const import ( API_ACCOUNT_AMOUNT, @@ -38,11 +43,15 @@ DEFAULT_COIN_ICON = "mdi:cash" ATTRIBUTION = "Data provided by coinbase.com" -async def async_setup_entry(hass, config_entry, async_add_entities): +async def async_setup_entry( + hass: HomeAssistant, + config_entry: ConfigEntry, + async_add_entities: AddEntitiesCallback, +) -> None: """Set up Coinbase sensor platform.""" instance = hass.data[DOMAIN][config_entry.entry_id] - entities = [] + entities: list[SensorEntity] = [] provided_currencies = [ account[API_ACCOUNT_CURRENCY] diff --git a/homeassistant/components/compensation/__init__.py b/homeassistant/components/compensation/__init__.py index 7d96905efa0..cf108a027b0 100644 --- a/homeassistant/components/compensation/__init__.py +++ b/homeassistant/components/compensation/__init__.py @@ -12,8 +12,10 @@ from homeassistant.const import ( CONF_UNIQUE_ID, CONF_UNIT_OF_MEASUREMENT, ) +from homeassistant.core import HomeAssistant from homeassistant.helpers import config_validation as cv from homeassistant.helpers.discovery import async_load_platform +from homeassistant.helpers.typing import ConfigType from .const import ( CONF_COMPENSATION, @@ -67,11 +69,11 @@ CONFIG_SCHEMA = vol.Schema( ) -async def async_setup(hass, config): +async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: """Set up the Compensation sensor.""" hass.data[DATA_COMPENSATION] = {} - for compensation, conf in config.get(DOMAIN).items(): + for compensation, conf in config[DOMAIN].items(): _LOGGER.debug("Setup %s.%s", DOMAIN, compensation) degree = conf[CONF_DEGREE] diff --git a/homeassistant/components/cups/sensor.py b/homeassistant/components/cups/sensor.py index 74d3d9a36a2..103a352f6cd 100644 --- a/homeassistant/components/cups/sensor.py +++ b/homeassistant/components/cups/sensor.py @@ -1,4 +1,6 @@ """Details about printers which are connected to CUPS.""" +from __future__ import annotations + from datetime import timedelta import importlib import logging @@ -7,8 +9,11 @@ import voluptuous as vol from homeassistant.components.sensor import PLATFORM_SCHEMA, SensorEntity from homeassistant.const import CONF_HOST, CONF_PORT, PERCENTAGE +from homeassistant.core import HomeAssistant from homeassistant.exceptions import PlatformNotReady import homeassistant.helpers.config_validation as cv +from homeassistant.helpers.entity_platform import AddEntitiesCallback +from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType _LOGGER = logging.getLogger(__name__) @@ -50,7 +55,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend( ) -def setup_platform(hass, config, add_entities, discovery_info=None): +def setup_platform( + hass: HomeAssistant, + config: ConfigType, + add_entities: AddEntitiesCallback, + discovery_info: DiscoveryInfoType | None = None, +) -> None: """Set up the CUPS sensor.""" host = config[CONF_HOST] port = config[CONF_PORT] @@ -64,7 +74,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None): _LOGGER.error("Unable to connect to CUPS server: %s:%s", host, port) raise PlatformNotReady() - dev = [] + dev: list[SensorEntity] = [] for printer in printers: if printer not in data.printers: _LOGGER.error("Printer is not present: %s", printer) diff --git a/homeassistant/components/daikin/switch.py b/homeassistant/components/daikin/switch.py index 647ee0689e6..bf7d4e1ef49 100644 --- a/homeassistant/components/daikin/switch.py +++ b/homeassistant/components/daikin/switch.py @@ -1,6 +1,12 @@ """Support for Daikin AirBase zones.""" +from __future__ import annotations + from homeassistant.components.switch import SwitchEntity +from homeassistant.config_entries import ConfigEntry +from homeassistant.core import HomeAssistant from homeassistant.helpers.entity import ToggleEntity +from homeassistant.helpers.entity_platform import AddEntitiesCallback +from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType from . import DOMAIN as DAIKIN_DOMAIN @@ -10,7 +16,12 @@ DAIKIN_ATTR_ADVANCED = "adv" DAIKIN_ATTR_STREAMER = "streamer" -async def async_setup_platform(hass, config, async_add_entities, discovery_info=None): +async def async_setup_platform( + hass: HomeAssistant, + config: ConfigType, + async_add_entities: AddEntitiesCallback, + discovery_info: DiscoveryInfoType | None = None, +) -> None: """Old way of setting up the platform. Can only be called when a user accidentally mentions the platform in their @@ -18,10 +29,12 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info= """ -async def async_setup_entry(hass, entry, async_add_entities): +async def async_setup_entry( + hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback +) -> None: """Set up Daikin climate based on config_entry.""" daikin_api = hass.data[DAIKIN_DOMAIN][entry.entry_id] - switches = [] + switches: list[ToggleEntity] = [] if zones := daikin_api.device.zones: switches.extend( [ diff --git a/homeassistant/components/darksky/sensor.py b/homeassistant/components/darksky/sensor.py index d6bcf404e85..0686f304674 100644 --- a/homeassistant/components/darksky/sensor.py +++ b/homeassistant/components/darksky/sensor.py @@ -41,7 +41,10 @@ from homeassistant.const import ( TEMP_FAHRENHEIT, UV_INDEX, ) +from homeassistant.core import HomeAssistant import homeassistant.helpers.config_validation as cv +from homeassistant.helpers.entity_platform import AddEntitiesCallback +from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType from homeassistant.util import Throttle _LOGGER = logging.getLogger(__name__) @@ -570,7 +573,12 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend( ) -def setup_platform(hass, config, add_entities, discovery_info=None): +def setup_platform( + hass: HomeAssistant, + config: ConfigType, + add_entities: AddEntitiesCallback, + discovery_info: DiscoveryInfoType | None = None, +) -> None: """Set up the Dark Sky sensor.""" latitude = config.get(CONF_LATITUDE, hass.config.latitude) longitude = config.get(CONF_LONGITUDE, hass.config.longitude) @@ -603,7 +611,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None): forecast = config.get(CONF_FORECAST) forecast_hour = config.get(CONF_HOURLY_FORECAST) - sensors = [] + sensors: list[SensorEntity] = [] for variable in config[CONF_MONITORED_CONDITIONS]: if variable in DEPRECATED_SENSOR_TYPES: _LOGGER.warning("Monitored condition %s is deprecated", variable) diff --git a/homeassistant/components/dexcom/sensor.py b/homeassistant/components/dexcom/sensor.py index 316f36e3630..bf53022b43b 100644 --- a/homeassistant/components/dexcom/sensor.py +++ b/homeassistant/components/dexcom/sensor.py @@ -1,17 +1,26 @@ """Support for Dexcom sensors.""" +from __future__ import annotations + from homeassistant.components.sensor import SensorEntity +from homeassistant.config_entries import ConfigEntry from homeassistant.const import CONF_UNIT_OF_MEASUREMENT, CONF_USERNAME +from homeassistant.core import HomeAssistant +from homeassistant.helpers.entity_platform import AddEntitiesCallback from homeassistant.helpers.update_coordinator import CoordinatorEntity from .const import COORDINATOR, DOMAIN, GLUCOSE_TREND_ICON, GLUCOSE_VALUE_ICON, MG_DL -async def async_setup_entry(hass, config_entry, async_add_entities): +async def async_setup_entry( + hass: HomeAssistant, + config_entry: ConfigEntry, + async_add_entities: AddEntitiesCallback, +) -> None: """Set up the Dexcom sensors.""" coordinator = hass.data[DOMAIN][config_entry.entry_id][COORDINATOR] username = config_entry.data[CONF_USERNAME] unit_of_measurement = config_entry.options[CONF_UNIT_OF_MEASUREMENT] - sensors = [] + sensors: list[SensorEntity] = [] sensors.append(DexcomGlucoseTrendSensor(coordinator, username)) sensors.append(DexcomGlucoseValueSensor(coordinator, username, unit_of_measurement)) async_add_entities(sensors, False)