Remove invalid return values in setup methods [i-p] ()

Co-authored-by: epenet <epenet@users.noreply.github.com>
pull/63385/head
epenet 2022-01-04 11:30:13 +01:00 committed by GitHub
parent 2709db008c
commit 5140c1fa6a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
21 changed files with 237 additions and 56 deletions
homeassistant/components
imap_email_content
lifx_cloud
linux_battery
lutron
openexchangerates
piglow
pocketcasts
pushbullet

View File

@ -1,4 +1,6 @@
"""Email sensor support."""
from __future__ import annotations
from collections import deque
import datetime
import email
@ -17,7 +19,10 @@ from homeassistant.const import (
CONF_VALUE_TEMPLATE,
CONTENT_TYPE_TEXT_PLAIN,
)
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
_LOGGER = logging.getLogger(__name__)
@ -45,7 +50,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 Email sensor platform."""
reader = EmailReader(
config.get(CONF_USERNAME),
@ -67,8 +77,6 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
if sensor.connected:
add_entities([sensor], True)
else:
return False
class EmailReader:

View File

@ -1,17 +1,27 @@
"""Support for Keene Electronics IR-IP devices."""
from __future__ import annotations
import functools as ft
import logging
from homeassistant.components import remote
from homeassistant.const import CONF_DEVICE, CONF_NAME
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity import Entity
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import CONF_REMOTE, DOMAIN
_LOGGER = logging.getLogger(__name__)
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 Kira platform."""
if discovery_info:
name = discovery_info.get(CONF_NAME)
@ -19,7 +29,6 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
kira = hass.data[DOMAIN][CONF_REMOTE][name]
add_entities([KiraRemote(device, kira)])
return True
class KiraRemote(Entity):

View File

@ -1,4 +1,6 @@
"""Support for KWB Easyfire."""
from __future__ import annotations
from pykwb import kwb
import voluptuous as vol
@ -11,7 +13,10 @@ from homeassistant.const import (
CONF_TYPE,
EVENT_HOMEASSISTANT_STOP,
)
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
DEFAULT_RAW = False
DEFAULT_NAME = "KWB"
@ -43,7 +48,12 @@ ETHERNET_SCHEMA = PLATFORM_SCHEMA.extend(
PLATFORM_SCHEMA = vol.Schema(vol.Any(SERIAL_SCHEMA, ETHERNET_SCHEMA))
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 KWB component."""
host = config.get(CONF_HOST)
port = config.get(CONF_PORT)
@ -57,7 +67,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
elif connection_type == "tcp":
easyfire = kwb.KWBEasyfire(MODE_TCP, host, port)
else:
return False
return
easyfire.run_thread()

View File

@ -1,4 +1,6 @@
"""Support for LIFX lights."""
from __future__ import annotations
import asyncio
from datetime import timedelta
from functools import partial
@ -35,6 +37,7 @@ from homeassistant.components.light import (
LightEntity,
preprocess_turn_on_alternatives,
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
ATTR_ENTITY_ID,
ATTR_MODE,
@ -42,12 +45,14 @@ from homeassistant.const import (
ATTR_SW_VERSION,
EVENT_HOMEASSISTANT_STOP,
)
from homeassistant.core import ServiceCall, callback
from homeassistant.core import HomeAssistant, ServiceCall, callback
from homeassistant.helpers import entity_platform
import homeassistant.helpers.config_validation as cv
import homeassistant.helpers.device_registry as dr
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.event import async_track_point_in_utc_time
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
import homeassistant.util.color as color_util
from . import (
@ -168,12 +173,21 @@ def aiolifx_effects():
return aiolifx_effects_module
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:
"""Set up the LIFX light platform. Obsolete."""
_LOGGER.warning("LIFX no longer works with light platform configuration")
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 LIFX from a config entry."""
# Priority 1: manual config
if not (interfaces := hass.data[LIFX_DOMAIN].get(DOMAIN)):
@ -191,8 +205,6 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
for interface in interfaces:
lifx_manager.start_discovery(interface)
return True
def lifx_features(bulb):
"""Return a feature map for this bulb, or a default map if unknown."""

View File

@ -1,4 +1,6 @@
"""Support for LIFX Cloud scenes."""
from __future__ import annotations
import asyncio
from http import HTTPStatus
import logging
@ -11,8 +13,11 @@ import voluptuous as vol
from homeassistant.components.scene import Scene
from homeassistant.const import CONF_PLATFORM, CONF_TIMEOUT, CONF_TOKEN
from homeassistant.core import HomeAssistant
from homeassistant.helpers.aiohttp_client import async_get_clientsession
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__)
@ -27,7 +32,12 @@ PLATFORM_SCHEMA = vol.Schema(
)
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:
"""Set up the scenes stored in the LIFX Cloud."""
token = config.get(CONF_TOKEN)
timeout = config.get(CONF_TIMEOUT)
@ -43,20 +53,19 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=
except (asyncio.TimeoutError, aiohttp.ClientError):
_LOGGER.exception("Error on %s", url)
return False
return
status = scenes_resp.status
if status == HTTPStatus.OK:
data = await scenes_resp.json()
devices = [LifxCloudScene(hass, headers, timeout, scene) for scene in data]
async_add_entities(devices)
return True
return
if status == HTTPStatus.UNAUTHORIZED:
_LOGGER.error("Unauthorized (bad token?) on %s", url)
return False
return
_LOGGER.error("HTTP error %d on %s", scenes_resp.status, url)
return False
class LifxCloudScene(Scene):

View File

@ -1,4 +1,6 @@
"""Details about the built-in battery."""
from __future__ import annotations
import logging
import os
@ -11,7 +13,10 @@ from homeassistant.components.sensor import (
SensorEntity,
)
from homeassistant.const import ATTR_NAME, CONF_NAME, PERCENTAGE
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
_LOGGER = logging.getLogger(__name__)
@ -53,7 +58,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 Linux Battery sensor."""
name = config.get(CONF_NAME)
battery_id = config.get(CONF_BATTERY)
@ -66,7 +76,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
os.listdir(os.path.join(DEFAULT_PATH, f"BAT{battery_id}"))
except FileNotFoundError:
_LOGGER.error("No battery found")
return False
return
add_entities([LinuxBatterySensor(name, battery_id, system)], True)

View File

@ -1,13 +1,17 @@
"""Support for the Locative platform."""
from homeassistant.components.device_tracker import SOURCE_TYPE_GPS
from homeassistant.components.device_tracker.config_entry import TrackerEntity
from homeassistant.core import callback
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import DOMAIN as LT_DOMAIN, TRACKER_UPDATE
async def async_setup_entry(hass, entry, async_add_entities):
async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Configure a dispatcher connection based on a config entry."""
@callback
@ -24,8 +28,6 @@ async def async_setup_entry(hass, entry, async_add_entities):
entry.entry_id
] = async_dispatcher_connect(hass, TRACKER_UPDATE, _receive_data)
return True
class LocativeEntity(TrackerEntity):
"""Represent a tracked device."""

View File

@ -1,4 +1,6 @@
"""Support for Lutron shades."""
from __future__ import annotations
import logging
from homeassistant.components.cover import (
@ -8,13 +10,21 @@ from homeassistant.components.cover import (
SUPPORT_SET_POSITION,
CoverEntity,
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from . import LUTRON_CONTROLLER, LUTRON_DEVICES, LutronDevice
_LOGGER = logging.getLogger(__name__)
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 Lutron shades."""
devs = []
for (area_name, device) in hass.data[LUTRON_DEVICES]["cover"]:
@ -22,7 +32,6 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
devs.append(dev)
add_entities(devs, True)
return True
class LutronCover(LutronDevice, CoverEntity):

View File

@ -1,4 +1,6 @@
"""Support for Ubiquiti mFi sensors."""
from __future__ import annotations
import logging
from mficlient.client import FailedToLogin, MFiClient
@ -21,7 +23,10 @@ from homeassistant.const import (
STATE_ON,
TEMP_CELSIUS,
)
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
_LOGGER = logging.getLogger(__name__)
@ -51,7 +56,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 mFi sensors."""
host = config.get(CONF_HOST)
username = config.get(CONF_USERNAME)
@ -67,7 +77,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
)
except (FailedToLogin, requests.exceptions.ConnectionError) as ex:
_LOGGER.error("Unable to connect to mFi: %s", str(ex))
return False
return
add_entities(
MfiSensor(port, hass)

View File

@ -1,4 +1,6 @@
"""Support for Ubiquiti mFi switches."""
from __future__ import annotations
import logging
from mficlient.client import FailedToLogin, MFiClient
@ -14,7 +16,10 @@ from homeassistant.const import (
CONF_USERNAME,
CONF_VERIFY_SSL,
)
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
_LOGGER = logging.getLogger(__name__)
@ -35,7 +40,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 mFi sensors."""
host = config.get(CONF_HOST)
username = config.get(CONF_USERNAME)
@ -51,7 +61,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
)
except (FailedToLogin, requests.exceptions.ConnectionError) as ex:
_LOGGER.error("Unable to connect to mFi: %s", str(ex))
return False
return
add_entities(
MfiSwitch(port)

View File

@ -20,7 +20,10 @@ from homeassistant.const import (
CONF_NAME,
TEMP_CELSIUS,
)
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__)
@ -60,7 +63,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 available CO2 sensors."""
try:
@ -71,7 +79,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
config.get(CONF_SERIAL_DEVICE),
err,
)
return False
return
data = MHZClient(co2sensor, config.get(CONF_SERIAL_DEVICE))
name = config[CONF_NAME]

View File

@ -1,20 +1,27 @@
"""Support for the myStrom buttons."""
from __future__ import annotations
from http import HTTPStatus
import logging
from homeassistant.components.binary_sensor import DOMAIN, BinarySensorEntity
from homeassistant.components.http import HomeAssistantView
from homeassistant.core import callback
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
_LOGGER = logging.getLogger(__name__)
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:
"""Set up myStrom Binary Sensor."""
hass.http.register_view(MyStromView(async_add_entities))
return True
class MyStromView(HomeAssistantView):
"""View to handle requests from myStrom buttons."""

View File

@ -1,4 +1,6 @@
"""OpenEnergyMonitor Thermostat Support."""
from __future__ import annotations
from oemthermostat import Thermostat
import requests
import voluptuous as vol
@ -22,7 +24,10 @@ from homeassistant.const import (
CONF_USERNAME,
TEMP_CELSIUS,
)
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
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
{
@ -38,7 +43,12 @@ SUPPORT_FLAGS = SUPPORT_TARGET_TEMPERATURE
SUPPORT_HVAC = [HVAC_MODE_AUTO, HVAC_MODE_HEAT, HVAC_MODE_OFF]
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 oemthermostat platform."""
name = config.get(CONF_NAME)
host = config.get(CONF_HOST)
@ -49,7 +59,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
try:
therm = Thermostat(host, port=port, username=username, password=password)
except (ValueError, AssertionError, requests.RequestException):
return False
return
add_entities((ThermostatDevice(therm, name),), True)

View File

@ -1,4 +1,6 @@
"""Support for openexchangerates.org exchange rates service."""
from __future__ import annotations
from datetime import timedelta
from http import HTTPStatus
import logging
@ -14,7 +16,10 @@ from homeassistant.const import (
CONF_NAME,
CONF_QUOTE,
)
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__)
@ -37,7 +42,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 Open Exchange Rates sensor."""
name = config.get(CONF_NAME)
api_key = config.get(CONF_API_KEY)
@ -51,7 +61,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
if response.status_code != HTTPStatus.OK:
_LOGGER.error("Check your OpenExchangeRates API key")
return False
return
rest.update()
add_entities([OpenexchangeratesSensor(rest, name, quote)], True)

View File

@ -1,4 +1,6 @@
"""Support for Openhome Devices."""
from __future__ import annotations
import asyncio
import functools
import logging
@ -25,7 +27,10 @@ from homeassistant.components.media_player.const import (
SUPPORT_VOLUME_STEP,
)
from homeassistant.const import STATE_IDLE, STATE_OFF, STATE_PAUSED, STATE_PLAYING
from homeassistant.core import HomeAssistant
from homeassistant.helpers import config_validation as cv, entity_platform
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
from .const import ATTR_PIN_INDEX, DATA_OPENHOME, SERVICE_INVOKE_PIN
@ -34,7 +39,12 @@ SUPPORT_OPENHOME = SUPPORT_SELECT_SOURCE | SUPPORT_TURN_OFF | SUPPORT_TURN_ON
_LOGGER = logging.getLogger(__name__)
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:
"""Set up the Openhome platform."""
if not discovery_info:
@ -51,7 +61,7 @@ async def async_setup_platform(hass, config, async_add_entities, discovery_info=
# if device has already been discovered
if device.uuid() in openhome_data:
return True
return
entity = OpenhomeDevice(hass, device)

View File

@ -1,4 +1,6 @@
"""Support for One-Time Password (OTP)."""
from __future__ import annotations
import time
import pyotp
@ -6,8 +8,10 @@ import voluptuous as vol
from homeassistant.components.sensor import PLATFORM_SCHEMA, SensorEntity
from homeassistant.const import CONF_NAME, CONF_TOKEN
from homeassistant.core import callback
from homeassistant.core import HomeAssistant, callback
import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
DEFAULT_NAME = "OTP Sensor"
@ -23,13 +27,17 @@ PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
)
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:
"""Set up the OTP sensor."""
name = config.get(CONF_NAME)
token = config.get(CONF_TOKEN)
async_add_entities([TOTPSensor(name, token)], True)
return True
# Only TOTP supported at the moment, HOTP might be added later

View File

@ -5,21 +5,25 @@ from homeassistant.components.device_tracker.const import (
DOMAIN,
SOURCE_TYPE_GPS,
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
ATTR_BATTERY_LEVEL,
ATTR_GPS_ACCURACY,
ATTR_LATITUDE,
ATTR_LONGITUDE,
)
from homeassistant.core import callback
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers import device_registry
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.restore_state import RestoreEntity
from . import DOMAIN as OT_DOMAIN
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 OwnTracks based off an entry."""
# Restore previously loaded devices
dev_reg = await device_registry.async_get_registry(hass)
@ -52,8 +56,6 @@ async def async_setup_entry(hass, entry, async_add_entities):
if entities:
async_add_entities(entities)
return True
class OwnTracksEntity(TrackerEntity, RestoreEntity):
"""Represent a tracked device."""

View File

@ -1,4 +1,6 @@
"""Component for controlling Pandora stations through the pianobar client."""
from __future__ import annotations
from datetime import timedelta
import logging
import os
@ -31,6 +33,9 @@ from homeassistant.const import (
STATE_PAUSED,
STATE_PLAYING,
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
_LOGGER = logging.getLogger(__name__)
@ -57,10 +62,15 @@ CURRENT_SONG_PATTERN = re.compile(r'"(.*?)"\s+by\s+"(.*?)"\son\s+"(.*?)"', re.MU
STATION_PATTERN = re.compile(r'Station\s"(.+?)"', re.MULTILINE)
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 Pandora media player platform."""
if not _pianobar_exists():
return False
return
pandora = PandoraMediaPlayer("Pandora")
# Make sure we end the pandora subprocess on exit in case user doesn't

View File

@ -1,4 +1,6 @@
"""Support for Piglow LED's."""
from __future__ import annotations
import logging
import subprocess
@ -14,7 +16,10 @@ from homeassistant.components.light import (
LightEntity,
)
from homeassistant.const import CONF_NAME
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
import homeassistant.util.color as color_util
_LOGGER = logging.getLogger(__name__)
@ -28,11 +33,16 @@ 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 Piglow Light platform."""
if subprocess.getoutput("i2cdetect -q -y 1 | grep -o 54") != "54":
_LOGGER.error("A Piglow device was not found")
return False
return
name = config.get(CONF_NAME)

View File

@ -1,4 +1,6 @@
"""Support for Pocket Casts."""
from __future__ import annotations
from datetime import timedelta
import logging
@ -7,7 +9,10 @@ import voluptuous as vol
from homeassistant.components.sensor import PLATFORM_SCHEMA, SensorEntity
from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
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
_LOGGER = logging.getLogger(__name__)
@ -22,7 +27,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 pocketcasts platform for sensors."""
username = config.get(CONF_USERNAME)
password = config.get(CONF_PASSWORD)
@ -33,7 +43,6 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
add_entities([PocketCastsSensor(api)], True)
except OSError as err:
_LOGGER.error("Connection to server failed: %s", err)
return False
class PocketCastsSensor(SensorEntity):

View File

@ -13,7 +13,10 @@ from homeassistant.components.sensor import (
SensorEntityDescription,
)
from homeassistant.const import CONF_API_KEY, CONF_MONITORED_CONDITIONS
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
_LOGGER = logging.getLogger(__name__)
@ -72,14 +75,19 @@ 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 Pushbullet Sensor platform."""
try:
pushbullet = PushBullet(config.get(CONF_API_KEY))
except InvalidKeyError:
_LOGGER.error("Wrong API key for Pushbullet supplied")
return False
return
pbprovider = PushBulletNotificationProvider(pushbullet)