Deprecate simulated integration (#122166)

This commit is contained in:
G Johansson 2024-07-19 11:26:05 +02:00 committed by GitHub
parent e50802aca3
commit f5f9480b5a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 37 additions and 4 deletions

View file

@ -14,6 +14,7 @@ from homeassistant.components.sensor import (
)
from homeassistant.const import CONF_NAME
from homeassistant.core import HomeAssistant
from homeassistant.helpers import issue_registry as ir
import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType
@ -38,6 +39,8 @@ DEFAULT_SEED = 999
DEFAULT_UNIT = "value"
DEFAULT_RELATIVE_TO_EPOCH = True
DOMAIN = "simulated"
PLATFORM_SCHEMA = SENSOR_PLATFORM_SCHEMA.extend(
{
vol.Optional(CONF_AMP, default=DEFAULT_AMP): vol.Coerce(float),
@ -55,13 +58,27 @@ PLATFORM_SCHEMA = SENSOR_PLATFORM_SCHEMA.extend(
)
def setup_platform(
async def async_setup_platform(
hass: HomeAssistant,
config: ConfigType,
add_entities: AddEntitiesCallback,
async_add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Set up the simulated sensor."""
# Simulated has been deprecated and will be removed in 2025.1
ir.async_create_issue(
hass,
DOMAIN,
DOMAIN,
breaks_in_ha_version="2025.1.0",
is_fixable=False,
severity=ir.IssueSeverity.WARNING,
translation_key="simulated_deprecation",
translation_placeholders={"integration": DOMAIN},
learn_more_url="https://www.home-assistant.io/integrations/simulated",
)
name = config.get(CONF_NAME)
unit = config.get(CONF_UNIT)
amp = config.get(CONF_AMP)
@ -75,7 +92,7 @@ def setup_platform(
sensor = SimulatedSensor(
name, unit, amp, mean, period, phase, fwhm, seed, relative_to_epoch
)
add_entities([sensor], True)
async_add_entities([sensor], True)
class SimulatedSensor(SensorEntity):