Home Assistant Core 2022.3.0 → 2022.4.0
9 versions, 58 breaking changes in 1 version, 0 required stops
Version by version, oldest first
2022.3.1 – 2022.3.8: no action items (8 versions)
2022.4.0 2022-04-06
Quoted from www.home-assistant.io/blog/2022/04/06/release-20224/#backward-incompatible-changes
Breaking
Breaking
Switches - Energy attributes
In the August 2021 release, we deprecated all energy-related attributes from switches. The attributes are: current_power_w and today_energy_kwh. Those attributes should have been separate power and energy sensors instead.
All integrations affected were notified on July 22, 2021, of requiring a change.
As of this release, the attributes have been removed from the switch core entity platform, meaning the current_power_w and today_energy_kwh attributes are no longer available for the following:
- ATEN Rack PDU
- Belkin WeMo
- D-Link Wi-Fi Smart Plugs
- Edimax
- ELV PCA
- Emulated Kasa
- Fibaro
- Hive
- HomematicIP Cloud
- MQTT
- myStrom
- Netio
- Ubiquiti mFi mPort
- Vera
Breaking
Android TV
The previously deprecated YAML configuration of the Android TV integration has been removed.
Android TV is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@tkdrob - #68339) (documentation)
Breaking
Apple iCloud
The previously deprecated YAML configuration of the Apple iCloud integration has been removed.
Apple iCloud is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@balloob - #69006) (documentation)
Breaking
Awair
The previously deprecated YAML configuration of the Awair integration has been removed.
Awair is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@tkdrob - #68572) (documentation)
Breaking
BMW Connected Drive
The previously deprecated YAML configuration of the BMW Connected Drive integration has been removed.
BMW Connected Drive is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@rikroe - #66965) (documentation)
Breaking
Brunt
The previously deprecated YAML configuration of the Brunt integration has been removed.
Brunt is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@balloob - #69024) (documentation)
Breaking
Climacell / Tomorrow.io
ClimaCell as a company rebranded to Tomorrow.io and as such we will be deprecating the climacell integration in favor of the new tomorrowio integration.
For any climacell users using a v4 API key, the migration from the old integration to the new one will happen automatically. If you are a climacell user using a v3 API key, you will need to sign up for a v4 API key to complete the migration, but once you have provided the new key, your configuration (or configurations) will be migrated over automatically.
For now, v3 users will still have access to their existing ClimaCell configurations before they submit the new API key so that your automations and dashboards still work.
In a future release, we will be removing most of the code from the climacell integration so that the migrations will still happen, but the original integration will no longer work.
(@raman325 - #68156) (documentation)
Breaking
CPU Speed
The previously deprecated YAML configuration of the CPU Speed integration has been removed.
CPU Speed is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@frenck - #67166) (documentation)
Breaking
Deluge
The Deluge integration migrated to configuration via the UI. Configuring Deluge via YAML configuration has been deprecated and will be removed in a future Home Assistant release.
Your existing YAML configuration is automatically imported on upgrade to this release; and thus can be safely removed from your YAML configuration after upgrading.
(@tkdrob - [#58789]) (documentation)
Breaking
Discord
The Discord integration migrated to configuration via the UI. Configuring Discord via YAML configuration has been deprecated and will be removed in a future Home Assistant release.
Your existing YAML configuration is automatically imported on upgrade to this release; and thus can be safely removed from your YAML configuration after upgrading.
(@tkdrob - #61069) (documentation)
Breaking
DNS IP
The previously deprecated YAML configuration of the DNS IP integration has been removed.
DNS IP is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@balloob - #69007) (documentation)
Breaking
Dune HD
The Dune HD integration has previously migrated to configuration via the UI. Configuring Dune HD via YAML configuration has now been deprecated and will be removed in a future Home Assistant release.
Your existing YAML configuration has been automatically imported; and thus can be safely removed from your YAML configuration.
(@tkdrob - #68381) (documentation)
Breaking
Eight Sleep
The partner parameter was deprecated in 2021, but it was still accepted in your configuration. The partner option has now been removed; please remove the partner parameter from your YAML configuration before updating.
(@raman325 - #68381) (documentation)
Breaking
Enphase Envoy
The last_reported attribute for Enphase Envoy inverters is now a separate timestamp sensor.
Each last reported sensor is disabled by default since it generates a significant amount of state changes and database rows. Each last reported sensor can be enabled in the UI.
(@bdraco - #68360) (documentation)
Breaking
EZVIZ
The previously deprecated YAML configuration of the EZVIZ integration has been removed.
EZVIZ is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@frenck - #69031) (documentation)
Breaking
Fibaro
The Fibaro integration migrated to configuration via the UI. Configuring Fibaro via YAML configuration has been deprecated and will be removed in a future Home Assistant release.
Your existing YAML configuration is automatically imported on upgrade to this release; and thus can be safely removed from your YAML configuration after upgrading.
(@rappenze - #65203) (documentation)
Breaking
File Size
The File Size integration migrated to configuration via the UI. Configuring File Size via YAML configuration has been deprecated and will be removed in a future Home Assistant release.
Your existing YAML configuration is automatically imported on upgrade to this release; and thus can be safely removed from your YAML configuration after upgrading.
(@gjohansson-ST - #67668) (documentation)
Additional attributes for the File Size sensors has been extracted into their own sensors which are disabled by default.
If you were previously using any of these attributes your automations, scripts etc. need to be updated to use the new sensors.
Breaking
Fronius
The previously deprecated YAML configuration of the Fronius integration has been removed.
Fronius is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@frenck - #69032) (documentation)
Breaking
Generic Camera
The Generic Camera integration migrated to configuration via the UI. Configuring Generic Camera via YAML configuration has been deprecated and will be removed in a future Home Assistant release.
Your existing YAML configuration is automatically imported on upgrade to this release; and thus can be safely removed from your YAML configuration after upgrading.
(@davet2001 - #52360) (documentation)
Breaking
Huawei LTE
The previously deprecated YAML configuration of the Huawei LTE integration has been removed.
Huawei LTE is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@scop - #68728) (documentation)
Breaking
Launch Library
The previously deprecated YAML configuration of the Launch Library integration has been removed.
Launch Library is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@balloob - #69008) (documentation)
Breaking
LG webOS Smart TV
The previously deprecated YAML configuration of the LG webOS Smart TV integration has been removed.
LG webOS Smart TV is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@thecode - #69043) (documentation)
Breaking
Mazda
The Mazda services start_engine, stop_engine, turn_on_hazard_lights, and turn_off_hazard_lights are deprecated and have been replaced by button entities. Please use the button entities instead.
(@bdr99 - #67597) (documentation)
The Mazda services start_charging and stop_charging are deprecated and replaced by a charging switch entity. Please use the switch entity instead.
(@bdr99 - #68025) (documentation)
Breaking
Met.no
The previously deprecated YAML configuration of the Met.no integration has been removed.
Met.no is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@frenck - #69027) (documentation)
Breaking
Modbus
Setting reverse_order has not been allowed (or worked) for a long time and is removed.
The previously deprecated data_count has been removed.
(@janiversen - #67236) (documentation)
The previously deprecated data types int, uint, and float have been removed.
For the devices that use non-standard register size, "count" can be used to overwrite the default count of registers.
(@janiversen - #67268) (documentation)
There is now an automatic distinction between calling write_register and write_registers, depending on the configured datatype (more than 16bits uses write_registers).
The special situation, where write_registers, count=1 is no longer supported.
(@janiversen - #67268) (documentation)
Breaking
MySensors
The MySensors integration migrated to configuration via the UI a year ago. Configuring MySensors via YAML configuration has been deprecated and will be removed in a future Home Assistant release.
Your existing YAML configuration has been automatically imported since a long time; and thus can be safely removed from your YAML configuration.
Breaking
Nanoleaf
The previously deprecated YAML configuration of the Nanoleaf integration has been removed.
Nanoleaf is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@balloob - #69004) (documentation)
Breaking
Nest
Legacy Works with Nest API deprecation is put on hold until issues with SDM API OAuth signups are resolved (so this is an un-breaking change).
(@allenporter - #68715) (documentation)
Breaking
Pi-hole
The binary sensor entities that would show if an update is available for the Core, Web, or FTL component has been deprecated and will be removed in Home Assistant Core 2022.6.
The PI-Hole integration now provides update entities to replace the deprecated entities.
(@mib1185 - #68749) (documentation)
Breaking
Plex Media Server
Support for multiple Plex Media Servers in the media browser has been added.
Automations and scripts which used the media picker to add Plex media items may need to be updated if more than one Plex integration/server is configured.
(@jjlawren - #68321) (documentation)
Breaking
Plugwise
The climate entity attributes selected_schema and available_schemas will be removed in a future release.
This release introduces the select platform featuring these attribute values as well as the ability to switch a schedule.
(@CoMPaTech - #68303) (documentation)
The naming of the locally present outdoor temperature sensor connected to OpenTherm devices has been improved: outdoor_air_temperature.
E.g. former sensor.opentherm_outdoor_temperature is now visible as sensor.opentherm_outdoor_air_temperature.
The use of the zipcode-based outdoor_temperature for other devices has not changed.
(@CoMPaTech - #68303) (documentation)
Breaking
PVOutput
The previously deprecated YAML configuration of the PVOutput integration has been removed.
PVOutput is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@frenck - #67162) (documentation)
All, previously deprecated, additional sensor attributes of the PVOutput sensor, have now been removed. All of these attributes now have their own dedicated sensor.
This applies to the following PVOutput attributes:
energy_generationpower_generationenergy_consumptionpower_consumptionefficiencytemperaturevoltage
If you relied on these in your automations or scripts, you need to adopt those to use the new separate sensors instead.
(@bdraco - #68481) (documentation)
Breaking
Recorder
The following breaking changes are only breaking if you consume the Home Assistant Core database manually or in custom integrations; For example, when using custom queries or doing data analytics on your database.
Attributes are now stored in a state_attributes table, storing the same set of attributes once (many to one relationship).
Attributes represent roughly 21% of the database size. (28% if you exclude statistics). On a few of the analyzed production instances, attributes ranged from 82-88% duplicates of another set of attributes. Expected is that this change will reduce the database size by roughly between 13-16% on average.
(@bdraco - #68224) (documentation)
The domain column has been removed from the states table. The domain can be derived from the entity_id.
(@bdraco - #68404) (documentation)
The attributes for the sun.sun entity are no longer recorded in the database.
As historical data can be derived from the astral library without the need to fetch it from the database, it was decided to remove the sun attributes from the database since it frequently generates new attribute rows in the database.
(@bdraco - #68404) (documentation)
Integrations and platforms can now provide hints to the recorder to exclude specific entity state attributes from being recorded.
This excludes attributes that hold little to no historical value or are a static value. This significantly reduces the amount of data stored.
The following attributes are no longer recorded:
- For all entities:
attributionandsupported_features. - Camera:
tokenandentity_picture. - Climate:
hvac_modes,fan_modes,swing_modes,min_temp,max_temp,min_humidity,max_humidity,target_temp_step, andpreset_modes. - Fan:
preset_modes. - Light:
color_modes,min_mireds,max_mireds, andeffect_list. - Media Player:
entity_picture_local,source_list,media_postition, andmedia_postition_updated_at. - Water Heater:
operation_list,min_temp, andmax_temp. - Humidifier:
min_humidity,max_humidity, andavailable_modes. - Number:
min,max,step, andmode. - Select:
options. - Siren:
available_tones. - Vacuum:
fan_speed_list. - Weather:
forecast.
(@bdraco - #68404 #69155 #69156 #69158 #69159 #69165 #69192 #69193 #69194 #69195 #69196 #69199)
Breaking
RFXCOM RFXtrx
Support for signal repetition for devices has been removed. RFXCOM internally repeats packets as needed per protocol.
(@elupus - #67675) (documentation)
Breaking
Sensibo
Sensibo Air devices with an active room sensor (as the main measurement sensor) will now retrieve the temperature and humidity from the room sensor.
(@gjohansson-ST - #66949) (documentation)
The previously deprecated YAML configuration of the Sensibo integration has been removed.
Sensibo is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@frenck - #69028) (documentation)
Breaking
SiteSage Emonitor
The avg_power and max_power extra attributes for Emonitor have been removed and now have their own sensors.
(@bdraco - #68479) (documentation)
Breaking
SleepIQ
The sleep number firmness sensor entity in the SleepIQ integration is deprecated and will be removed in a future release. A number entity is available, providing the same information and can be used instead.
(@mfugate1 - #65841) (documentation)
Breaking
SoChain
The SoChain integration has been disabled, its functionality relies on older Python packages we can not provide.
(@emontnemery - #68856) (documentation)
Breaking
Solax
The previously deprecated YAML configuration of the Solax integration has been removed.
Solax is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@balloob - #69003) (documentation)
Breaking
Sonos
Favorites are no longer included in the "Source" dropdown on Sonos devices. These have been moved to the Media Browser and are also available using the media selector (a.k.a. "Play Media") in automation/script builders.
The selectable "Source" dropdown is now limited to static inputs, such as TV and line-in sources.
The media_player.select_source service call will continue to accept favorite names. This compatibility feature may be removed in a future release, but there are no current plans to do so.
This change was done to minimize writes to the database. Each modification to the favorites would rewrite the complete list of favorites in the database for each Sonos device.
(@jjlawren - #67931) (documentation)
Breaking
Supervisor
The binary sensor entities for the Supervisor integration that would show if there was an update available for Home Assistant OS and add-ons have been deprecated and will be removed in Home Assistant 2022.6.
The Supervisor integration now provides update entities to replace the deprecated entities.
(@ludeeus - #68475) (documentation)
Breaking
SwitchBot
The previously deprecated YAML configuration of the SwitchBot integration has been removed.
SwitchBot is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@balloob - #69002) (documentation)
Breaking
Synology DSM
The binary sensor entity that would show if there was an update available for the Synology DSM firmware has been deprecated and will be removed in Home Assistant Core 2022.6.
The Synology DSM integration now provides an update entity to replace the deprecated entity.
(@mib1185 - #68664) (documentation)
Breaking
Tankerkoenig
The Tankerkoenig integration migrated to configuration via the UI. Configuring Tankerkoenig via YAML configuration has been deprecated and will be removed in a future Home Assistant release.
Your existing YAML configuration is automatically imported on upgrade to this release; and thus can be safely removed from your YAML configuration after upgrading.
(@mib1185 - #68386) (documentation)
The is_open attribute is removed from all entities and now exposed as its own sensor.
If you have automations or scripts relying on this attribute, you will need to adjust them for this change.
(@mib1185 - #68925) (documentation)
Breaking
Template
Template binary sensors with on or off delay, or trigger-based binary sensors are now initialized to the last state on Home Assistant Core startup, instead of to unknown.
Breaking
Tesla Powerwall
The frequency, current, and voltage attributes on powerwall instant meter sensors are now their own entities.
The is_active attribute has been removed as it can already be derived from the reading. As these sensors generated significant state changes, the new sensors are not enabled by default. They can be enabled in the UI.
(@bdraco - #68345) (documentation)
Breaking
Trafikverket Train
The Trafikverket Train integration migrated to configuration via the UI. Configuring Trafikverket Train via YAML configuration has been deprecated and will be removed in a future Home Assistant release.
Your existing YAML configuration is automatically imported on upgrade to this release; and thus can be safely removed from your YAML configuration after upgrading.
Breaking
Trafikverket Weather Station
The previously deprecated YAML configuration of the Trafikverket Weather Station integration has been removed.
Trafikverket Weather Station is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@tkdrob - #68336) (documentation)
- The attribute for measure time is now a proper iso formatted string.
- The attribute for available has been removed and the entity instead sets its state to unavailable when not available.
Any automation or script depending on these attributes has to be updated to reflect these changes.
Breaking
UniFi Protect
The Unifi Protect last tripped attributes are now their own timestamp sensors. The sensors are not enabled by default to minimize the amount of data stored in the state machine and database. The new sensors can be enabled in the UI.
(@bdraco - #68347) (documentation)
The UniFi Protect Privacy Mode switch is now marked as a configuration entity. This means that these switches are no longer automatically exposed or shown on autogenerated Lovelace dashboards, Google Assistant, Alexa, or HomeKit.
(@balloob - #68954) (documentation)
Breaking
UptimeRobot
This integration now provides a switch entity that will let you pause/resume monitoring of a monitor.
Because of that, you need to use the 'main' UptimeRobot API key; if you previously used that, you will not have to do anything, but if you used the read-only API or a monitor-specific API key, the integration will ask you to reauthorize on the first startup.
To get your API key, go to My Settings on the UptimeRobot website, at the bottom, you will find your key.
(@chemelli74 - #68224) (documentation)
Breaking
Utility Meter
The utility_meter tariff selector entities are now standard select entities with entity_id select.X instead of custom entities with entity_id utility_meter.X.
In addition:
- The service call
utility_meter.select_tariffwith argumenttariffis deprecated in favor of service callselect.select_optionwith argumentoption. - The service call
utility_meter.next_tariffis deprecated with no replacement.
Backwards compatibility until the Home Assistant Core release 2022.7:
- The deprecated
utility_meter.Xentities are still available. - The service call
utility_meter.select_tariffstill works onutility_meter.Xenties, but a warning is logged when it's called. - The service call
utility_meter.next_tariffstill works onutility_meter.Xenties, but a warning is logged when it's called.
In Home Assistant Core release 2022.7:
- The deprecated
utility_meter.Xentities will no longer be available. - The service call
utility_meter.select_tariffwill be removed. - The service call
utility_meter.next_tariffwill be removed.
(@dgomes - #55690) (documentation)
Breaking
Version
The previously deprecated YAML configuration of the Version integration has been removed.
Version is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@balloob - #69010) (documentation)
Breaking
Whois
The previously deprecated YAML configuration of the Whois integration has been removed.
Whois is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@frenck - #67163) (documentation)
Breaking
WLED
The firmware update binary_sensor and button entities are deprecated and will be removed in Home Assistant 2022.6.
Instead, the WLED integration now provides a brand new update entity that replaces the functionality provided by those entities (and offers more functionality).
(@frenck - #68454) (documentation)
Breaking
Yale Smart Alarm
The previously deprecated YAML configuration of the Yale Smart Alarm integration has been removed.
Yale Smart Alarm is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@frenck - #69025) (documentation)
Breaking
Yamaha Music Cast
The previously deprecated YAML configuration of the Yamaha Music Cast integration has been removed.
Yamaha Music Cast is now configured via the UI, any existing YAML configuration has been imported in previous releases and can now be safely removed from your YAML configuration files.
(@frenck - #69033) (documentation)
Breaking
Z-Wave JS
The Z-Wave JS siren entities will now return unknown as a state if the corresponding driver value is missing.
Previously the state defaulted to off in these cases. You might need to consider this in automations and scripts that rely on a Z-Wave JS siren entity state.
(@MartinHjelmare - #67172) (documentation)
The selected fan speed has changed at specific percentages for Inovelli LZW36 fan controllers. Setting the percentage to 1% will no longer enable the 'breeze' mode; that functionality is instead accessed through a preset.
(@mkowalchuk - #60947) (documentation)
Note
Farewell to the following
The following GPIO Integrations have been previously deprecated and have now been removed.
- BeagleBone Black GPIO
- BH1750
- Blinkt!
- BMP280 Environmental Sensor
- Bosch BME280 Environmental Sensor
- Bosch BME680 Environmental Sensor
- DHT Sensor
- Enviro pHAT
- HTU21D(F) Sensor
- MCP23017 I/O Expander
- MH-Z19 CO2 Sensor
- Orange Pi GPIO
- PCAL9535A I/O Expander
- pi4ioe5v9xxxx IO Expander
- PiFace Digital I/O (PFIO)
- Piglow
- pigpio Daemon PWM LED
- Raspberry Pi RF
- Raspihats
- Sense HAT
- Sensirion SHT31
- Time of Flight
More information about the removal of GPIO integrations can be found in Architectural Decision Record 0019.
The following integrations are also no longer available as of this release:
- Apple Push Notification Service (APNS) has been removed. This does not affect our mobile apps! (@frenck - #67158)
- Media Player Classic Home Cinema (MPC-HC), the integration is using web scraping, which is no longer allowed. (@frenck - #67189)
- OpenZWave, was previously deprecated and is now removed. Please use Z-Wave JS instead. (@frenck - #68054)
- SmartHab has been removed. The company behind it has been shut down. (@outadoc - #67874)
- Z-Wave (the old
zwaveintegration), was previously deprecated and is now removed. Please use Z-Wave JS instead. (@frenck - #67221)
From www.home-assistant.io/blog/2022/04/06/release-20224/#farewell-to-the-following
Release notes from github.com/home-assistant/core/releases, and the official release blog, checked 17 hours ago. Only text the vendor marks as breaking, or puts in a warning/caution/important note, is shown; read the full notes for anything else. Home Assistant lists its breaking changes in the “Backward-incompatible changes” section of each monthly release post on home-assistant.io (2020.12 onward). Each entry of that section is quoted as “Breaking” on the x.y.0 release, under the integration name the post gives it. The post’s “Farewell to the following” section (integrations removed in that release, 2020.12–2024.5) is quoted whole as “Note”. The post's separate section for custom integration developers is not quoted. Patch releases are listed but their notes (lists of fixes) are not quoted. Versions come from PyPI (package homeassistant).