Full changelog for Home Assistant Core 2024.4
These are all the changes included in the Home Assistant Core 2024.4 release.
For a summary in a more readable format: Release notes blog for this release.
All changes
- Add permobil entity (@IsakNyberg
- #111761 )  - Bump version to 2024.4.0.dev0 (@bramkragten
- #111755 )  - Improve zha coordinator typing (@cdce8p
- #111767 )  - Add normalized name registry items base class (@jpbede
- #111666 )  - Remove ‘values’ from services validation (@balloob
- #111440 )  - Use proper constant in Airzone Cloud climate tests (@Noltari
- #111747 )  - Axis improve coverage binary tests (@Kane610
- #111758 )  - Add icon translations to Hue (@joostlek
- #111725 )  - Import enphase_envoy in the executor to avoid blocking the event loop (@bdraco
- #111805 )  - Add icon translations to IPP (@joostlek
- #111846 )  - Import discovergy in the executor to avoid blocking the event loop (@jpbede
- #111824 )  - Import homekit in the executor to avoid blocking the event loop (@bdraco
- #111809 )  - Import upnp in the executor to avoid blocking the event loop (@bdraco
- #111808 )  - Import logbook in the executor to avoid blocking the event loop (@bdraco
- #111807 )  - Import flux_led in the executor to avoid blocking the event loop (@bdraco
- #111806 )  - Import rest in the executor to avoid blocking the event loop (@bdraco
- #111804 )  - Remove areas template filter (@emontnemery
- #111827 )  - Add generic classes BaseFlowHandler and BaseFlowManager (@emontnemery
- #111814 )  - Remove unused translation key from Ecovacs mower (@edenhaus
- #111754 )  - Add icon translations to Laundrify (@joostlek
- #111856 )  - Add icon translations to Lastfm (@joostlek
- #111855 )  - Add icon translations to Justnimbus (@joostlek
- #111849 )  - Add icon translations to Kaleidescape (@joostlek
- #111850 )  - Add icon translations to Intellifire (@joostlek
- #111845 )  - Add icon translations to KNX (@joostlek
- #111852 )  - Migrate integrations a-d to generic flowhandler (@emontnemery
- #111861 )  - Migrate integrations e-h to generic flowhandler (@emontnemery
- #111862 )  - Migrate integrations u-z to generic flowhandler (@emontnemery
- #111866 )  - Migrate integrations i-m to generic flowhandler (@emontnemery
- #111863 )  - Migrate integrations n-r to generic flowhandler (@emontnemery
- #111864 )  - Migrate integrations s-t to generic flowhandler (@emontnemery
- #111865 )  - Switch influxdb to use a SimpleQueue (@bdraco
- #111798 )  - Remove unused variable in stats _sorted_statistics_to_dict (@bdraco
- #111912 )  - Add person tracking for UniFi Protect (@AngellusMortis
- #111289 )  - Add Vallox filter replacement date (@yozik04
- #111391 )  - Bump actions/cache from 4.0.0 to 4.0.1 (@dependabot - #111916
)  - Bump github/codeql-action from 3.24.5 to 3.24.6 (@dependabot - #111917
)  - Add icon translations to Kodi (@joostlek
- #111853 )  - Add icon translations to Enocean (@joostlek
- #111514 )  - Add icon translations to EZVIZ (@joostlek
- #111532 )  - Add icon translations to Flipr (@joostlek
- #111540 )  - Add icon translations to Flux LED (@joostlek
- #111545 )  - Add icon translations to Hydrawise (@joostlek
- #111810 )  - Add reconfigure step to config flow (@gjohansson-ST
- #108794 )  - Add icon translations to Medcom BLE (@joostlek
- #111904 )  - Add icon translations to Keymitt BLE (@joostlek
- #111851 )  - Add icon translations to IFTTT (@joostlek
- #111842 )  - Add icon translations to Idasen desk (@joostlek
- #111813 )  - Add icon translations to Lidarr (@joostlek
- #111896 )  - Add icon translations to LCN (@joostlek
- #111895 )  - Remove config flow specifics from FlowResult (@emontnemery
- #111932 )  - Add icon translations to LifX (@joostlek
- #111897 )  - Add icon translations to min max (@joostlek
- #111908 )  - Add icon translations to Minecraft Server (@joostlek
- #111928 )  - Add icon translations to Mill (@joostlek
- #111907 )  - Update mypy to a custom version (@cdce8p
- #111258 )  - Add icon translations to Litterrobot (@joostlek
- #111899 )  - Add icon translations to Local IP (@joostlek
- #111900 )  - Add icon translations to Lyric (@joostlek
- #111902 )  - Add icon translations to Motioneye (@joostlek
- #111936 )  - Add icon translations to Monoprice (@joostlek
- #111934 )  - Fix utility meter reset without tarrifs (@gibwar
- #102884 )  - Fix LingeringTask after test completion in enphase_envoy (@catsmanac
- #111940 )  - Fix loader test warning (@cdce8p
- #111965 )  - Add icon translations to MQTT (@joostlek
- #111945 )  - Add icon translations to Neato (@joostlek
- #111947 )  - Add icon translations to Nanoleaf (@joostlek
- #111946 )  - Add icon translations to Motion blinds (@joostlek
- #111935 )  - Add icon translations to Modem callerID (@joostlek
- #111929 )  - Use default icon for Melcloud (@joostlek
- #111905 )  - Fix generic HassJob typing (@cdce8p
- #111973 )  - Fix util create_eager_task typing (@cdce8p
- #111976 )  - Add icon translations to OpenUV (@joostlek
- #111996 )  - Add icon translations to Notion (@joostlek
- #111984 )  - Add icon translations to Modern Forms (@joostlek
- #111933 )  - Add icon translations to Nextcloud (@joostlek
- #111982 )  - Add icon translations to NZBGet (@joostlek
- #111985 )  - Add icon translations to Netgear LTE (@joostlek
- #111974 )  - Add icon translations to Omnilogic (@joostlek
- #111989 )  - Add icon translations to Ondilo ico (@joostlek
- #111990 )  - Add icon translations to Octoprint (@joostlek
- #111988 )  - Add icon translations to Opensky (@joostlek
- #111994 )  - Add icon translations to Openhome (@joostlek
- #111993 )  - Add icon translations to OpenAI Conversation (@joostlek
- #111992 )  - Add icon translations to ovo energy (@joostlek
- #111997 )  - Reduce ESPHome reconnect time (@bdraco
- #112001 )  - Reduce samsungtv startup time (@bdraco
- #112007 )  - Convert command_line to use asyncio for subprocesses (@bdraco
- #111927 )  - Apply better names to a couple of dicts in Axis config flow (@Kane610
- #111964 )  - Add icon translations to Nmap tracker (@joostlek
- #111983 )  - Add icon translations to Opentherm gw (@joostlek
- #111995 )  - Add entity and icon translations to Onvif (@joostlek
- #111991 )  - Add icon translations to Netgear (@joostlek
- #111972 )  - Remove deprecated 
hass.components.hassiousage (@jpbede- #111878 )  - Streamline naming in the Axis integration (@Kane610
- #112044 )  - Simplify load_executor check in loader (@bdraco
- #112029 )  - Import co2signal in the executor to avoid blocking the event loop (@bdraco
- #112058 )  - Import ambient_station in the executor to avoid blocking the event loop (@bdraco
- #112053 )  - Refactor file_upload to avoid janus dep (@bdraco
- #112032 )  - Import snmp in the executor to avoid blocking the event loop (@bdraco
- #112065 )  - Pre-import more frontend deps to avoid importing when the event loop is running (@bdraco
- #112031 )  - Switch config to use async_get_component/async_get_platform (@bdraco
- #112071 )  - Import switchbot in the executor to avoid blocking the event loop (@bdraco
- #112077 )  - Import smtp in the executor to avoid blocking the loop (@bdraco
- #112089 )  - Import integrations using sense-energy in the executor to avoid loop blocking (@bdraco
- #112087 )  - Import baf in the executor to avoid blocking the event loop (@bdraco
- #112086 )  - Import caldav in the executor to avoid blocking the event loop (@bdraco
- #112081 )  - Import yeelight in the executor to avoid blocking the event loop (@bdraco
- #112080 )  - Import template in the executor to avoid blocking the event loop (@bdraco
- #112070 )  - Import stream in the executor to avoid blocking the event loop (@bdraco
- #112078 )  - Avoid trying to import platforms that do not exist (@bdraco
- #112028 )  - Preload platform integrations to better group executor usage (@bdraco
- #112010 )  - Move Ping binary sensor attributes to sensor entities (@jpbede
- #112004 )  - Add YoLInk YS7905-UC Support (@matrixd2
- #111709 )  - Fix flakey airzone_cloud tests by avoiding creation of the websocket (@Noltari
- #112102 )  - Add icon translations to Nextbus (@joostlek
- #111981 )  - Add icon translations to Nexia (@joostlek
- #111980 )  - Add tests for number of devices created in myuplink (@astrandb
- #111816 )  - Load wyoming in the executor to avoid blocking the event loop (@bdraco
- #112107 )  - Add event platform to rfxtrx (@elupus
- #111526 )  - Add comment to integration platform helper about blocking I/O (@bdraco
- #112103 )  - Address late review for Ping (@jpbede
- #112123 )  - Import steamist in the executor to avoid blocking the loop (@bdraco
- #112111 )  - Move all System Monitor updates into single Data Update Coordinator (@gjohansson-ST
- #112055 )  - Add the ability to resume cleaning on start button (@Lash-L
- #112122 )  - Clean up setup and teardown of Axis integration (@Kane610
- #112120 )  - Exclude tankerkoenig attributes from recording (@jpbede
- #112109 )  - Avoid calling async_get_component twice for each component being setup (@bdraco
- #112096 )  - Import screenlogic in the executor to avoid blocking the loop (@bdraco
- #112097 )  - Avoid compiling entity service schema when passed defaults (@bdraco
- #112099 )  - Add package detection to Reolink (@starkillerOG
- #112126 )  - Try to preload the config platform when loading a component (@bdraco
- #112104 )  - Fix flakey tplink test (@bdraco
- #112135 )  - Add icon translations to Melnor (@joostlek
- #111906 )  - Ensure setup loads top level component before platforms (@bdraco
- #112057 )  - Add Reolink PTZ patrol start/stop (@starkillerOG
- #112129 )  - Fix async_prepare_setup_platform test (@bdraco
- #112143 )  - Fix places not changed to hub in Axis tests (@Kane610
- #112128 )  - Split up hassio coordinator and data into new file to allow preload (@bdraco
- #112147 )  - Preload config flow if it exists when loading a component (@bdraco
- #112145 )  - Migrate condition/state/trigger helper to use async_get_platform (@bdraco
- #112144 )  - Use MockConfigEntry in hue tests (@bdraco
- #112149 )  - Fix async_get_component loading in the executor when the module is already loaded (@bdraco
- #112153 )  - Add types throughout the prometheus tests (@agoode
- #112156 )  - Run more of hassio setup in in tasks (@bdraco
- #112151 )  - Streamline UniFi entity descriptions (@Kane610
- #112136 )  - Avoid multiple executor jobs with concurrent calls to async_get_component (@bdraco
- #112155 )  - Ignore unsupported devices (room sensors, floor heating) in ViCare integration (@CFenner
- #112106 )  - Group loading of platforms in the import executor (@bdraco
- #112141 )  - Improve mqtt value template error logging (@jbouwh
- #110492 )  - Import recorder and common recorder platforms before asyncio starts (@bdraco
- #112131 )  - Group platform loads in homekit_controller to minimize executor use (@bdraco
- #112148 )  - Avoid using coordinator in config flow of APCUPSD (@yuxincs
- #112121 )  - Update System Bridge to support version 4.x.x and above (@timmo001
- #107957 )  - Add local API support to elmax (@albertogeniola
- #94392 )  - Bump actions/download-artifact from 4.1.3 to 4.1.4 (@dependabot - #112159
)  - Remove unused test helper mock_area_registry (@emontnemery
- #112172 )  - Migrate config to use async_get_component (@bdraco
- #112160 )  - Migrate device_automation to use async_get_platform (@bdraco
- #112162 )  - Migrate rest to use eager tasks for setup (@bdraco
- #112166 )  - Migrate application_credentials to use async_get_platform (@bdraco
- #112161 )  - Import in the executor by default for core integrations (@bdraco
- #112127 )  - Update systembridgeconnector to 4.0.2 (@timmo001
- #112174 )  - Issues template function (@RoboMagus
- #95206 )  - Fix pylint/mypy on elmax integration (@Noltari
- #112211 )  - Add icon translations to Snapcast (@joostlek
- #112229 )  - Add icon translations to Rainbird (@joostlek
- #112200 )  - Add icon translations to RFXCOM RFXtrx (@joostlek
- #112209 )  - Add icon translations to Simplisafe (@joostlek
- #112224 )  - Add icon translations to Ridwell (@joostlek
- #112210 )  - Add icon translations to Recollect Waste (@joostlek
- #112204 )  - Add icon translations to Private BLE Device (@joostlek
- #112185 )  - Add icon translations to PurpleAir (@joostlek
- #112192 )  - Add icon translations to Rainmachine (@joostlek
- #112202 )  - Add icon translations to Renault (@joostlek
- #112205 )  - Add icon translations to Solarlog (@joostlek
- #112232 )  - Add icon translations to Songpal (@joostlek
- #112234 )  - Add icon translations to Philips TV (@joostlek
- #112179 )  - Add icon translations to Smarttub (@joostlek
- #112227 )  - Add icon translations to sabNZBd (@joostlek
- #112219 )  - Add icon translations to Slack (@joostlek
- #112226 )  - Add icon translations to Season (@joostlek
- #112221 )  - Add icon translations to Screenlogic (@joostlek
- #112220 )  - Change log level for System Bridge service handlers (@timmo001
- #112175 )  - Add icon translations to Roon (@joostlek
- #112218 )  - Add icon translations to Swiss public transport (@joostlek
- #112254 )  - Address srp_energy late review comment (@briglx
- #105756 )  - Add Hyperion sensor to report active priority on each instance (@belangp
- #102333 )  - Add icon translations to Sensibo (@joostlek
- #112222 )  - Fix authentication issues for asekopool (@hopkins-tk
- #99495 )  - Fix spaceapi attribute for closed icon (@Xiretza
- #108596 )  - Add sensor platform to Teslemetry (@Bre77
- #109088 )  - Add config flow to homeworks (@emontnemery
- #112042 )  - Enable strict typing of homeworks (@emontnemery
- #112267 )  - Add device and enable entity name for Lutron homeworks (@emontnemery
- #112268 )  - Add icon translations to Steamist (@joostlek
- #112246 )  - Add icon translations to Starlink (@joostlek
- #112244 )  - Add icon translations to Squeezebox (@joostlek
- #112240 )  - Add icon translations to Streamlabswater (@joostlek
- #112247 )  - Add permobil binary sensor (@IsakNyberg
- #112130 )  - Add icon translations to Sure Petcare (@joostlek
- #112253 )  - Add icon translations to Spotify (@joostlek
- #112239 )  - Remove callback decorator from coroutine (@Kane610
- #112276 )  - Update pytest to 8.1.0 (@cdce8p
- #112173 )  - Reduce some linear searches to cleanup the device registry (@bdraco
- #112277 )  - Ensure hassio diagnostics get imported with the integration (@bdraco
- #112286 )  - Add support for preloading platforms in the loader (@bdraco
- #112282 )  - Add icon translations to Elkm1 (@joostlek
- #111512 )  - Refactor integration platforms to import in the executor (@bdraco
- #112168 )  - Remove unnecessary access to UniFi hub object in tests (@Kane610
- #112275 )  - Add icon translations to SMS (@joostlek
- #112228 )  - Add icon translations to Rainforest Raven (@joostlek
- #112201 )  - Add icon translations to Plum lightpad (@joostlek
- #112183 )  - Add icon translations to Profiler (@joostlek
- #112186 )  - Add icon translations to Prosegur (@joostlek
- #112187 )  - Add icon translations to Prusalink (@joostlek
- #112188 )  - Add icon translations to PS4 (@joostlek
- #112190 )  - Add icon translations to QBittorrent (@joostlek
- #112193 )  - Add icon translations to QNap QSW (@joostlek
- #112194 )  - Add icon translations to Rachio (@joostlek
- #112195 )  - Add icon translations to Radarr (@joostlek
- #112196 )  - Add icon translations to Radiotherm (@joostlek
- #112197 )  - Add icon translations to RDW (@joostlek
- #112203 )  - Add icon translations to Renson (@joostlek
- #112207 )  - Add icon translations to Ring (@joostlek
- #112212 )  - Add icon translations to Rituals perfume genie (@joostlek
- #112213 )  - Add icon translations to Roomba (@joostlek
- #112217 )  - Add icon translations to Skybell (@joostlek
- #112225 )  - Add icon translations to Snooz (@joostlek
- #112230 )  - Add icon translations to Solaredge (@joostlek
- #112231 )  - Add icon translations to Soundtouch (@joostlek
- #112236 )  - Add icon translations to Subaru (@joostlek
- #112252 )  - Deprecate old config options for MQTT json light (@jbouwh
- #111676 )  - Add icon translations to P1 monitor (@joostlek
- #111998 )  - Add icon translations to Speedtestdotnet (@joostlek
- #112237 )  - Use default icon in Romy (@joostlek
- #112215 )  - Add icon translations to Shopping list (@joostlek
- #112223 )  - Add icon translations to Pi-hole (@joostlek
- #112180 )  - Add icon translations to PECO (@joostlek
- #112169 )  - Add icon translations to Permobil (@joostlek
- #112170 )  - Add icon translations to Plex (@joostlek
- #112182 )  - Cleanup rainbird aiohttp client cleanup on EVENT_HOMEASSISTANT_CLOSE (@allenporter
- #112292 )  - Add icon translations to Switcher kis (@joostlek
- #112296 )  - Add icon translations to Systemmonitor (@joostlek
- #112300 )  - Add icon translations to Tautulli (@joostlek
- #112305 )  - Add icon translations to Trafikverket Train (@joostlek
- #112322 )  - Add icon translations to Trafikverket Ferry (@joostlek
- #112321 )  - Add icon translations to Trafikverket Camera (@joostlek
- #112320 )  - Add icon translations to Trafikverket Weather station (@joostlek
- #112323 )  - Add icon translations to Workday (@joostlek
- #112359 )  - Add icon translations to Yale (@joostlek
- #112361 )  - Add icon translations to YouTube (@joostlek
- #112365 )  - Add icon translations to YoLink (@joostlek
- #112364 )  - Add icon translations to Yardian (@joostlek
- #112362 )  - Add icon translations to Xiaomi Aqara (@joostlek
- #112360 )  - Add icon translations to Weatherkit (@joostlek
- #112354 )  - Add icon translations to Synology DSM (@joostlek
- #112299 )  - Add icon translations to Trend (@joostlek
- #112325 )  - Add icon translations to TP-Link (@joostlek
- #112317 )  - Add icon translations to Tesla Wall Connector (@joostlek
- #112309 )  - Add icon translations to Tolo (@joostlek
- #112313 )  - Add icon translations to Tile (@joostlek
- #112310 )  - Add icon translations to Todoist (@joostlek
- #112312 )  - Add icon translations to Template (@joostlek
- #112308 )  - Add icon translations to Syncthing (@joostlek
- #112297 )  - Add icon translations to Tedee (@joostlek
- #112307 )  - Update aioairzone-cloud to v0.4.6 (@Noltari
- #112198 )  - Add support for System Bridge service responses (@timmo001
- #100055 )  - Remove async_entity_ids and get_entity_ids from entity registry (@bdraco
- #112311 )  - Add Beaufort to wind_speed (@fwestenberg
- #105795 )  - Add icon translations to WebOS TV (@joostlek
- #112355 )  - Add icon translations to Watttime (@joostlek
- #112351 )  - Add icon translations to Uptimerobot (@joostlek
- #112336 )  - Initialize triggers eagerly (@bdraco
- #112294 )  - Migrate remaining calls in config modules to async_get_component (@bdraco
- #112293 )  - Migrate system flows to use the discovery helper (@bdraco
- #112291 )  - Simplify loader preload logic for config_flows (@bdraco
- #112290 )  - Remove entity description mixin in Accuweather (@joostlek
- #112375 )  - Remove entity description mixin in Bravia TV (@joostlek
- #112395 )  - Remove entity description mixin in Brother (@joostlek
- #112396 )  - Add icon translations to Vizio (@joostlek
- #112348 )  - Remove entity description mixin in Balboa (@joostlek
- #112389 )  - Remove entity description mixin in BMW (@joostlek
- #112391 )  - Remove entity description mixin in Bond (@joostlek
- #112393 )  - Remove entity description mixin in Bosch SHC (@joostlek
- #112394 )  - Remove entity description mixin in Dovado (@joostlek
- #112402 )  - Remove entity description mixin in Ecobee (@joostlek
- #112408 )  - Add icon translations to Vodafone Station (@joostlek
- #112349 )  - Remove entity description mixin in AirQ (@joostlek
- #112377 )  - Remove entity description mixin in Aladdin Connect (@joostlek
- #112379 )  - Remove entity description mixin in Azure DevOps (@joostlek
- #112385 )  - Add comments why we use loop.create_task in core (@MartinHjelmare
- #112372 )  - Remove entity description mixin in Dormakaba dKey (@joostlek
- #112401 )  - Add button to homeworks (@emontnemery
- #112269 )  - Remove entity description mixin in Airzone (@joostlek
- #112378 )  - Remove list comprehension when adding entities in Nextcloud (@jpbede
- #112429 )  - Remove list comprehension when adding entities in opengarage (@jpbede
- #112430 )  - Remove entity description mixin in Electric Kiwi (@joostlek
- #112411 )  - Migrate Azure DevOps to has entity name (@joostlek
- #112420 )  - Remove entity description mixin in Devolo Home Network (@joostlek
- #112399 )  - Remove list comprehension when adding entities in Smartthings (@jpbede
- #112432 )  - Remove list comprehension when adding entities in Wallbox (@jpbede
- #112433 )  - Remove the deprecated YAML support for Aftership (@jpbede
- #112390 )  - Add icon translations to Azure DevOps (@joostlek
- #112436 )  - Small cleanup in Dexcom (@joostlek
- #112425 )  - Break out UniFi config handling to own class (@Kane610
- #111325 )  - Rename reconfigure step in apple_tv (@gjohansson-ST
- #112438 )  - Remove myself as a codeowner for neato (@dshokouhi
- #112410 )  - Remove entity description mixin in AirNow (@joostlek
- #112376 )  - Add icon translations to Vilfo (@joostlek
- #112347 )  - Add icon translations to Verisure (@joostlek
- #112342 )  - Add icon translations to Vallox (@joostlek
- #112339 )  - Remove entity description mixin in Abode (@joostlek
- #112374 )  - Add icon translations to Velbus (@joostlek
- #112340 )  - Add icon translations to Ukraine Alarm (@joostlek
- #112330 )  - Add icon translations to Twitch (@joostlek
- #112329 )  - Remove entity description mixin in Android IP Webcam (@joostlek
- #112380 )  - Remove entity description mixin in Aseko (@joostlek
- #112382 )  - Remove entity description mixin in Awair (@joostlek
- #112384 )  - Remove entity description mixin in Comfoconnect (@joostlek
- #112397 )  - Remove entity description mixin in Daikin (@joostlek
- #112398 )  - Remove entity description mixin in Doorbird (@joostlek
- #112400 )  - Remove entity description mixin in Ecoforest (@joostlek
- #112409 )  - Add icon translations to Tomorrowio (@joostlek
- #112315 )  - Add TypeVar default for FlowResult (@emontnemery
- #112345 )  - Bump dorny/paths-filter from 3.0.1 to 3.0.2 (@dependabot - #112158
)  - Bump SQLAlchemy to 2.0.28 (@bdraco
- #112314 )  - Pre import image_upload to avoid loading it after asyncio has started (@bdraco
- #112444 )  - Pre import webhook before asyncio starts (@bdraco
- #112441 )  - Limit legacy state translations to custom components (@bdraco
- #112295 )  - Remove list comprehension when adding entities in Vallox (@jpbede
- #112446 )  - Remove entity description mixin in BAF (@joostlek
- #112386 )  - Fix config modules being imported in the event loop (@bdraco
- #112462 )  - Adjust MAX_LOAD_CONCURRENTLY constant to allow 6 storage loaders (@bdraco
- #112468 )  - Add system_health to the hassio pre-imports to avoid a late executor job (@bdraco
- #112466 )  - Start fetching the source ip sooner in http to reduce setup time (@bdraco
- #112461 )  - Load network storage in a task to reduce startup time (@bdraco
- #112460 )  - Fix incorrect scope on checking files to load in translations (@bdraco
- #112457 )  - Migrate remaining get_platform in config to async_get_platform (@bdraco
- #112469 )  - Migrate remaining get_platform in check_config to async_get_platform (@bdraco
- #112470 )  - Add icon translations to Zeversolar (@joostlek
- #112367 )  - Remove myself as maintainer of the Rejseplanen integration (@DarkFox
- #112426 )  - Add icon translations to Tado (@joostlek
- #112301 )  - Add icon translations to iCloud (@joostlek
- #111812 )  - Add icon translations to Weatherflow (@joostlek
- #112353 )  - Add icon translations to Vesync (@joostlek
- #112344 )  - Add icon translations to Velux (@joostlek
- #112341 )  - Add icon translations to Tradfri (@joostlek
- #112319 )  - Add icon translations to UPnP (@joostlek
- #112335 )  - Add icon translations to Totalconnect (@joostlek
- #112316 )  - Add icon translations to TechnoVE (@joostlek
- #112306 )  - Add icon translations to Tami4 (@joostlek
- #112304 )  - Use default icon for Lupusec (@joostlek
- #111901 )  - Add icon translations to iBeacon (@joostlek
- #111811 )  - Add icon translations to V2C (@joostlek
- #112338 )  - Add test to ensure bootstrap continues if an integraton raises CancelledError (@bdraco
- #112472 )  - Avoid waiting for integration platforms in the parent integration (@bdraco
- #112467 )  - Add Reolink play quick reply message (@starkillerOG
- #112134 )  - Deprecate attributes of Nuki entities (@steffenrapp
- #111419 )  - Remove deprecated 
hass.componentsusage in config entry flow (@jpbede- #111880 )  - Bump tesla-fleet-api to 0.4.9 (@Bre77
- #112288 )  - Remove deprecated 
hass.componentsusage in mobile_app (@jpbede- #111888 )  - Wait to start emulated_hue until the started event (@bdraco
- #112477 )  - Fix detection of DLI sockets in wemo (@bdraco
- #112485 )  - Bump Wandalen/wretry.action from 1.4.4 to 1.4.5 (@dependabot - #111700
)  - Remove entity description mixin in Enphase Envoy (@joostlek
- #112486 )  - Post System Bridge 4.x.x integration improvements (@timmo001
- #112189 )  - Add icon translations to Reolink (@joostlek
- #112208 )  - Improve integration_entities template function (@emontnemery
- #111943 )  - Remove constructor in WLED Options flow (@joostlek
- #112456 )  - Add icon translations to Tailwind (@joostlek
- #112303 )  - Add icon translations to Elgato (@joostlek
- #111423 )  - Add icon translations to Twentemilieu (@joostlek
- #112327 )  - Fix typo in Reolink translation keys (@joostlek
- #112489 )  - Remove entity description mixin in EnOcean (@joostlek
- #112483 )  - Add icon translations to Zone (@joostlek
- #112370 )  - Add icon translations to Zodiac (@joostlek
- #112369 )  - Add icon translations to Wilight (@joostlek
- #112357 )  - Add icon translations to ViCare (@joostlek
- #112346 )  - Add icon translations to UPB (@joostlek
- #112333 )  - Add icon translations to Tuya (@joostlek
- #112326 )  - Add icon translations to Transmission (@joostlek
- #112324 )  - Add icon translations to TP-Link Omada (@joostlek
- #112318 )  - Add icon translations to Poolsense (@joostlek
- #112184 )  - Add icon translations to Starline (@joostlek
- #112241 )  - Add icon translations to iZone (@joostlek
- #111848 )  - Add icon translations to isy994 (@joostlek
- #111847 )  - Add icon translations to Insteon (@joostlek
- #111844 )  - Add Shelly restart required binary sensor (@chemelli74
- #112493 )  - Remove entity description mixin in August (@joostlek
- #112383 )  - Add icon translations to Zerproc (@joostlek
- #112366 )  - Add icon translations to Whois (@joostlek
- #112356 )  - Add icon translations to Tailscale (@joostlek
- #112302 )  - Disable Shelly diagnostic binary sensor (@chemelli74
- #112497 )  - Remove entity description mixin in EasyEnergy (@joostlek
- #112407 )  - Remove entity description mixin in EnergyZero (@joostlek
- #112412 )  - Remove entity description mixin in Dremel 3D Printer (@joostlek
- #112405 )  - Add icon translations to Sonarr (@joostlek
- #112233 )  - Add icon translations to Wallbox (@joostlek
- #112350 )  - Enable some PERF rules (@joostlek
- #112498 )  - Simplify color mode logic in Tuya light (@emontnemery
- #110327 )  - Use an eager task for Sonos async_update_device_properties (@bdraco
- #112488 )  - Fix sonos overloading the executor when there are many devices (@bdraco
- #112482 )  - Add snapshot tests to webmin (@autinerd
- #112518 )  - Remove hourly weather entity from Environment Canada (@gjohansson-ST
- #112447 )  - Reduce executor jobs needed to setup filesize (@bdraco
- #112490 )  - Increase bootstrap preload test timeout (@bdraco
- #112520 )  - Fix homekit creating executor jobs to resolve default listen ips (@bdraco
- #112522 )  - Avoid importing counter and proximity integrations in logbook (@bdraco
- #112528 )  - Add icon translations to Waze Travel Time (@joostlek
- #112352 )  - Log tasks that are being waited on when startup is blocked (@bdraco
- #112542 )  - Move analytics setup to later stage to avoid delaying frontend startup (@bdraco
- #112535 )  - Pre import the rest of the recorder platforms before asyncio starts (@bdraco
- #112289 )  - Avoid having to work out the job type for each entity service at startup (@bdraco
- #112557 )  - Pass job type to event listeners when creating entities (@bdraco
- #112551 )  - Make HassJob job_type lookup lazy (@bdraco
- #112563 )  - Bump aioesphomeapi to 23.1.0 (@jesserockz
- #112560 )  - Speed up the frame helper (@bdraco
- #112562 )  - Bump Wandalen/wretry.action from 1.4.5 to 1.4.7 (@dependabot - #112575
)  - Add icon translations to Twinkly (@joostlek
- #112328 )  - Make FlowResult a generic type (@emontnemery
- #111952 )  - Change KEY_HASS to be an aiohttp AppKey (@cdce8p
- #111954 )  - Avoid extracting the stack twice in system_log (@bdraco
- #112572 )  - Use KEY_HASS [h-z] (@cdce8p
- #112610 )  - Use KEY_HASS [a-g] (@cdce8p
- #112609 )  - Fix Bang and olufsen naming (@joostlek
- #111344 )  - Remove local imports of hass-nabucasa (@emontnemery
- #112634 )  - Log waiting tasks in bootstrap that are delaying startup (@bdraco
- #112637 )  - Schedule polling as periodic tasks (@bdraco
- #112640 )  - Fix homekit_controller delaying startup and shutdown (@bdraco
- #112671 )  - Fix dhcp delaying shutdown (@bdraco
- #112670 )  - Make zeroconf lookups background tasks (@bdraco
- #112669 )  - Close hue api if setup fails (@bdraco
- #112164 )  - Avoid writing registries to disk during startup (@bdraco
- #112662 )  - Bump python-telegram-bot package to 21.0.1 (@malkstar
- #110297 )  - Speed up importing mqtt platforms (@bdraco
- #112682 )  - Use aiohttp.AppKey for http ban keys (@cdce8p
- #112657 )  - Add TypeVar defaults for DataUpdateCoordinator (@cdce8p
- #111949 )  - Add reauthentication for husqvarna_automower (@Thomas55555
- #109930 )  - Use aiohttp.AppKey for http cors keys (@cdce8p
- #112658 )  - Bump devcontainer to 1-3.12 (@edenhaus
- #108709 )  - Update systembridgeconnector to version 4.0.3 (@timmo001
- #112608 )  - Make Event data generic (@cdce8p
- #111955 )  - Add empty line after module docstring [d-f] (@cdce8p
- #112698 )  - Add empty line after module docstring [s] (@cdce8p
- #112704 )  - Add empty line after module docstring [tests t-z] (@cdce8p
- #112712 )  - Add empty line after module docstring [tests q-s] (@cdce8p
- #112711 )  - Add empty line after module docstring [tests f-k] (@cdce8p
- #112709 )  - Add empty line after module docstring [tests a-e] (@cdce8p
- #112708 )  - Add empty line after module docstring [a-d] (@cdce8p
- #112697 )  - Add empty line after module docstring [g-i] (@cdce8p
- #112699 )  - Add empty line after module docstring [tests l-p] (@cdce8p
- #112710 )  - Add empty line after module docstring [j-m] (@cdce8p
- #112700 )  - Add empty line after module docstring [n-q] (@cdce8p
- #112702 )  - Add empty line after module docstring [r] (@cdce8p
- #112703 )  - Add empty line after module docstring [t-v] (@cdce8p
- #112705 )  - Add empty line after module docstring [w-z] (@cdce8p
- #112706 )  - Add empty line after module docstring [helpers + other] (@cdce8p
- #112707 )  - Remove Python 3.11 from CI (@frenck
- #112626 )  - Remove built-in support for import_executor in manifest (@balloob
- #112725 )  - Use more f-strings [ruff] (@cdce8p
- #112695 )  - Add empty line after module docstring (2) [components] (@cdce8p
- #112736 )  - Add empty line after module docstring (2) [tests.components] (@cdce8p
- #112737 )  - Add empty line after module docstring (2) [other] (@cdce8p
- #112738 )  - Replace EventType with Event [a-g] (@cdce8p
- #112739 )  - Replace EventType with Event [h-i] (@cdce8p
- #112740 )  - Replace EventType with Event [l-s] (@cdce8p
- #112741 )  - Replace EventType with Event [t-z] (@cdce8p
- #112742 )  - Replace EventType with Event [helpers] (@cdce8p
- #112743 )  - Add diagnostics to webmin (@autinerd
- #112543 )  - Update byte string formatting (@cdce8p
- #112752 )  - Add empty line after module docstring (3) (@cdce8p
- #112750 )  - Replace EventType with Event [missing] (@cdce8p
- #112753 )  - Update EventBus listen type signatures (@cdce8p
- #112760 )  - Remove entity description mixin in Fully Kiosk (@joostlek
- #112768 )  - Remove entity description mixin in Flume (@joostlek
- #112765 )  - Remove entity description mixin in HomeKit Device (@joostlek
- #112775 )  - Remove entity description mixin in iBeacon (@joostlek
- #112779 )  - Avoid trying to load translations for integrations that have none (@bdraco
- #112683 )  - Replace periodic tasks with background tasks (@bdraco
- #112726 )  - Fix race reloading homekit_controller (@bdraco
- #112790 )  - Add Event typing to websocket_api for entity subscriptions (@bdraco
- #112786 )  - Improve entity translation typing (@bdraco
- #112788 )  - Run service call tasks eagerly (@bdraco
- #112791 )  - Use Mapping as default for Event data (@cdce8p
- #112769 )  - Use eager_start for homeassistant triggers (@bdraco
- #112801 )  - Use eager_start for tasks to register integration platforms (@bdraco
- #112800 )  - Break out UniFi platform registration to its own class (@Kane610
- #112514 )  - Unifi more polish on entity description (@Kane610
- #112281 )  - Cache the job type for entity service calls (@bdraco
- #112793 )  - Make SSDP tasks background HassJob to avoid delaying startup (@bdraco
- #112668 )  - Give the UniFi integration better control over what data to load (@Kane610
- #112804 )  - Move restoring inactive clients method into UniFi entity loader (@Kane610
- #112805 )  - Remove entity description mixin in Jellyfin (@joostlek
- #112782 )  - Remove entity description mixin in Goodwe (@joostlek
- #112773 )  - Move wireless clients into entity_loader (@Kane610
- #112813 )  - Cleanup mqtt discovery code (@jbouwh
- #112749 )  - Update modbus test to include a dummy sensor (@janiversen
- #112820 )  - Revert “Cleanup mqtt discovery code” (@jbouwh
- #112818 )  - Remove deprecated CLOSE_COMM_ON_ERROR from modbus (@janiversen
- #112821 )  - Remove entity description mixin in Huawei LTE (@joostlek
- #112777 )  - Remove outdated prettier and yamllint 
azure-*.ymlignores (@scop- #112819 )  - Remove deprecated retry_on_empty from modbus (@janiversen
- #112822 )  - Remove entity description mixin in Glances (@joostlek
- #112772 )  - Remove entity description mixin in EZVIZ (@joostlek
- #112764 )  - Remove entity description mixin in Environment Canada (@joostlek
- #112763 )  - Remove entity description mixin in Google wifi (@joostlek
- #112774 )  - Remove entity description mixin in idasen desk (@joostlek
- #112780 )  - Remove entity description mixin in Honeywell (@joostlek
- #112776 )  - Remove entity description mixin in Geocaching (@joostlek
- #112770 )  - Remove entity description mixin in AVM Fritz!Tools (@joostlek
- #112767 )  - Use eager_start for discovery listeners (@bdraco
- #112803 )  - Rename get_deconz_session to get_deconz_api (@Kane610
- #112826 )  - Split out Axis config data (@Kane610
- #112825 )  - Add icon translations to Yeelight (@joostlek
- #112363 )  - Bump mastodon.py version to 1.8.1 (@thejeffreystone
- #112728 )  - Improve performance of image streams (@bdraco
- #112810 )  - Allow Just-in-Time platform setup for mqtt (@jbouwh
- #112720 )  - Enphase Envoy refactor and extend diagnostics (@catsmanac
- #109080 )  - Avoid saving auth right after we load it during startup (@bdraco
- #112008 )  - Schedule coroutines with eager_task from async_track_state_change_event (@bdraco
- #112807 )  - Remove entity description mixin in IPP (@joostlek
- #112781 )  - Cleanup mqtt PLATFORMS constant and CI-test platform filters (@jbouwh
- #112847 )  - Only read cpu once during systemmonitor setup (@bdraco
- #112863 )  - Schedule coroutine functions eagerly when async_listen uses run_immediately (@bdraco
- #112846 )  - Update pytest to 8.1.1 (@cdce8p
- #112859 )  - Refactor handling of device updates in ESPHome (@bdraco
- #112864 )  - Split out deCONZ hub (@Kane610
- #112854 )  - Bump yalexs to 2.0.0 (@abjorck
- #111706 )  - Add Locks to Xiaomi-BLE (@Ernst79
- #111156 )  - Remove entity description mixin in Freebox (@joostlek
- #112766 )  - Remove entity description mixin in Private BLE Device (@joostlek
- #112922 )  - Remove entity description mixin in Netgear (@joostlek
- #112911 )  - Remove entity description mixin in SFR Box (@joostlek
- #112937 )  - Remove entity description mixin in Renault (@joostlek
- #112925 )  - Remove entity description mixin in Roku (@joostlek
- #112931 )  - Remove entity description mixin in Overkiz (@joostlek
- #112914 )  - Remove entity description mixin in Trafikverket Weatherstation (@joostlek
- #112957 )  - Remove entity description mixin in Trafikverket Train (@joostlek
- #112956 )  - Remove entity description mixin in Trafikverket Ferry (@joostlek
- #112955 )  - Remove entity description mixin in Trafikverket Camera (@joostlek
- #112954 )  - Remove entity description mixin in Sensibo (@joostlek
- #112936 )  - Improve 17track tests (@shaiu
- #112734 )  - Fix mqtt platform setup race (@jbouwh
- #112888 )  - Run debouncer tasks eagerly to avoid scheduling on the event loop (@bdraco
- #112789 )  - Import custom components in the executor by default (@bdraco
- #112177 )  - Remove entity description mixin in Vodafone Station (@joostlek
- #112967 )  - Remove entity description mixin in Zeversolar (@joostlek
- #112977 )  - Remove entity description mixin in Youtube (@joostlek
- #112975 )  - Remove entity description mixin in WAQI (@joostlek
- #112970 )  - Remove entity description mixin in Tradfri (@joostlek
- #112953 )  - Use async_at_started in Speedtest.Net (@gjohansson-ST
- #112110 )  - Remove entity description mixin in Permobil (@joostlek
- #112918 )  - Remove entity description mixin in PEGELONLINE (@joostlek
- #112917 )  - Remove entity description mixin in Melcloud (@joostlek
- #112905 )  - Remove entity description mixin in Justnimbus (@joostlek
- #112893 )  - Remove entity description mixin in LaCrosse View (@joostlek
- #112900 )  - Move wsdot fixture to integration test (@joostlek
- #112996 )  - Move uk_transport fixture to integration test (@joostlek
- #112995 )  - Move OpenALPR cloud fixture to integration test (@joostlek
- #112994 )  - Remove not needed hass.async_block_till_done in test (@jbouwh
- #113002 )  - Remove entity description mixin in Switcher Kis (@joostlek
- #112945 )  - Remove entity description mixin in Nettigo Air Monitor (@joostlek
- #112909 )  - Remove entity description mixin in Tractive (@joostlek
- #112952 )  - Remove entity description mixin in Synology DSM (@joostlek
- #112946 )  - Add icon translations to Picnic (@joostlek
- #112181 )  - Add icon translations to Husqvarna automower (@joostlek
- #111727 )  - Remove entity description mixin in Shelly (@joostlek
- #112938 )  - Migrate APCUPSD to has entity name (@yuxincs
- #112997 )  - Fix race condition when ZHA group members change (@dmulcahey
- #113030 )  - Ignore logging events in zha websocket tests (@bdraco
- #113031 )  - Fix Bang & Olufsen enum naming (@joostlek
- #113022 )  - Bump aioesphomeapi to 23.1.1 (@bdraco
- #113016 )  - Enable more SIM ruff rules (@joostlek
- #113015 )  - Migrate duckdns to use async_run_hass_job (@bdraco
- #113012 )  - Avoid scheduling person updates on the event loop (@bdraco
- #113010 )  - Move Microsoft face fixture to integration test (@joostlek
- #112993 )  - Move metoffice fixture to integration test (@joostlek
- #112992 )  - Move london_air fixture to integration test (@joostlek
- #112991 )  - Move Feedreader fixture to integration test (@joostlek
- #112989 )  - Schedule tasks eagerly when called from hass.add_job (@bdraco
- #113014 )  - Move openhardwaremonitor fixture to integration tests (@joostlek
- #112982 )  - Remove entity description mixin in V2C (@joostlek
- #112960 )  - Remove a redundant check in APCUPSD’s config flow (@yuxincs
- #113032 )  - Rename mqtt platform setup method (@jbouwh
- #113042 )  - Fix google assistant cloud sync test (@bdraco
- #113044 )  - Fix CoreState in cloud google assistant tests (@bdraco
- #113045 )  - Allow Shelly CoAP to honour default network adapter (@chemelli74
- #110997 )  - Remove entity description mixin in Vilfo (@joostlek
- #112966 )  - Remove entity description mixin in Tado (@joostlek
- #112947 )  - Add tests for Aussie Broadband diagnostics (@Bre77
- #113049 )  - Bump aioslimproto to 3.0.0 (@marcelveldt
- #113046 )  - Remove entity description mixin in Opower (@joostlek
- #112913 )  - Bump Wandalen/wretry.action from 1.4.7 to 1.4.8 (@dependabot - #113038
)  - Remove entity description mixin in WeatherFlow (@joostlek
- #112971 )  - Remove entity description mixin in Starlink (@joostlek
- #112943 )  - Remove entity description mixin in Schlage (@joostlek
- #112934 )  - Remove entity description mixin in Kaleidescape (@joostlek
- #112896 )  - Remove entity description mixin in Launch Library (@joostlek
- #112902 )  - Remove entity description mixin in Kaiterra (@joostlek
- #112895 )  - Move yandex transport fixture to integration test (@joostlek
- #112988 )  - Remove entity description mixin in Meater (@joostlek
- #112904 )  - Remove entity description mixin in Minecraft Server (@joostlek
- #112908 )  - Remove YAML configuration from WAQI (@joostlek
- #113027 )  - Bump webmin-xmlrpc to 0.0.2 (@autinerd
- #113004 )  - Remove entity description mixin in QNAP QSW (@joostlek
- #112924 )  - Remove entity description mixin in Wallbox (@joostlek
- #112969 )  - Remove entity description mixin in SABnzbd (@joostlek
- #112933 )  - Remove entity description mixin in Honeywell Lyric (@joostlek
- #112903 )  - Remove entity description mixin in Z-Wave.js (@joostlek
- #112979 )  - Remove entity description mixin in Zamg (@joostlek
- #112976 )  - Remove entity description mixin in Yalexs BLE (@joostlek
- #112974 )  - Remove entity description mixin in Xiaomi Miio (@joostlek
- #112973 )  - Remove entity description mixin in Whirlpool (@joostlek
- #112972 )  - Remove entity description mixin in VeSync (@joostlek
- #112965 )  - Remove entity description mixin in Venstar (@joostlek
- #112964 )  - Remove entity description mixin in Vallox (@joostlek
- #112963 )  - Remove entity description mixin in Tuya (@joostlek
- #112959 )  - Remove entity description mixin in Transmission (@joostlek
- #112958 )  - Remove entity description mixin in Tolo (@joostlek
- #112951 )  - Remove entity description mixin in Tautulli (@joostlek
- #112949 )  - Remove entity description mixin in Steamist (@joostlek
- #112944 )  - Remove entity description mixin in Solaredge (@joostlek
- #112942 )  - Remove entity description mixin in Smappee (@joostlek
- #112941 )  - Remove entity description mixin in SleepIQ (@joostlek
- #112940 )  - Remove entity description mixin in Skybell (@joostlek
- #112939 )  - Remove entity description mixin in Roomba (@joostlek
- #112932 )  - Remove entity description mixin in Ring (@joostlek
- #112928 )  - Remove entity description mixin in Roborock (@joostlek
- #112930 )  - Remove entity description mixin in Meteo-France (@joostlek
- #112907 )  - Remove entity description mixin in Rituals Perfume Genie (@joostlek
- #112929 )  - Remove entity description mixin in Renson (@joostlek
- #112926 )  - Remove entity description mixin in Pure Energie (@joostlek
- #112923 )  - Remove entity description in Point (@joostlek
- #112921 )  - Remove entity description mixin in Picnic (@joostlek
- #112920 )  - Remove entity description mixin in Pi-hole (@joostlek
- #112919 )  - Remove entity description mixin in PECO (@joostlek
- #112915 )  - Remove entity description mixin in Onvif (@joostlek
- #112912 )  - Remove entity description mixin in Netatmo (@joostlek
- #112910 )  - Remove entity description mixin in Melnor (@joostlek
- #112906 )  - Remove entity description mixin in Landisgyr Heat Meter (@joostlek
- #112901 )  - Remove entity description mixin in Kraken (@joostlek
- #112899 )  - Remove entity description mixin in Kostal Plenticore (@joostlek
- #112898 )  - Remove entity description mixin in Juicenet (@joostlek
- #112892 )  - Use UV instead of PIP in the CI (@edenhaus
- #113051 )  - Fix adding Hue bridge manually by IP (@marcelveldt
- #113055 )  - Bump xiaomi-ble to 0.27.0 (@Ernst79
- #113013 )  - Add ConfigFlow for seventeentrack integration (@shaiu
- #111196 )  - Move HomematicIP Cloud fixture to integration test (@joostlek
- #112987 )  - Prepare ring update service for deprecation (@sdb9696
- #108781 )  - Enable even more SIM ruff rules (@joostlek
- #113017 )  - Fix for Hue not applying effect in scene (@marcelveldt
- #113057 )  - Fix here_travel_time creating many refresh requests at startup (@bdraco
- #113041 )  - Remove entity description mixin in Github (@joostlek
- #112771 )  - Ensure wemo discovery is run in a background task (@bdraco
- #112665 )  - Remove fixtures from global fixtures folder (@joostlek
- #113060 )  - Improve lists in integrations [A] (@joostlek
- #113006 )  - Change airthings pressure sensor device_class to atmospheric pressure (@OndraM
- #113005 )  - Bump 
regenmaschineto 2024.03.0 (@bachya- #113074 )  - Improve lists in integrations [C-D] (@joostlek
- #113072 )  - Improve lists in integrations [B] (@joostlek
- #113069 )  - Add icon translations to Version (@joostlek
- #112343 )  - Only load services.yaml for integrations that have it (@balloob
- #112732 )  - Start tasks eagerly in for async_at_start(ed) (@bdraco
- #112802 )  - Migrate dispatcher to create tasks eagerly (@bdraco
- #112845 )  - Migrate _async_when_setup to use eager_start (@bdraco
- #112872 )  - Ensure that the ring integration always raises HomeAssistantError for user actions (@sdb9696
- #109893 )  - Fix race in script stop that could cause async_stop to hang forever (@bdraco
- #113089 )  - Fix location data in Teslemetry (@Bre77
- #112866 )  - Migrate async_run_job to use eager_start for tasks (@bdraco
- #113011 )  - Reduce latency to populate initial HKC bluetooth device state (@bdraco
- #113103 )  - Make sonos ssdp discovery callback a callback function (@bdraco
- #113107 )  - Make sonos household_coordinator setup a callback function (@bdraco
- #113108 )  - Make sonos binary sensor entity creation callback functions (@bdraco
- #113109 )  - Add support for run_immediately to async_listen_once (@bdraco
- #113020 )  - Run coroutines as eager tasks in async_run_hass_job (@bdraco
- #111683 )  - Make cast async_cast_discovered a callback function (@bdraco
- #113111 )  - Migrate homekit to use async_at_started (@bdraco
- #113102 )  - Make restore state started a callback function (@bdraco
- #113110 )  - Use run_immediately for starting discovery at the started event (@bdraco
- #113112 )  - Update timezone in supervisor in an eager task (@bdraco
- #113113 )  - Migrate scene platform to use async_add_executor_job (@bdraco
- #113114 )  - Attach template triggers at start eagerly (@bdraco
- #113120 )  - Add run_immediately to the zone core config update async_listen (@bdraco
- #113119 )  - Remove unnecessary use of async_run_job in script helper (@bdraco
- #113118 )  - Remove unnecessary use of async_add_job in openalpr_cloud (@bdraco
- #113116 )  - Await discovery_function in the DiscoveryFlowHandler instead of wrapping it in a task (@bdraco
- #113115 )  - Simplify automation startup logic (@bdraco
- #113122 )  - Migrate remaining call in check_config helper to use async_get_component (@bdraco
- #113123 )  - Import homeassistant trigger platforms in the executor (@bdraco
- #113124 )  - Switch the reload helper to use async_get_component (@bdraco
- #113126 )  - Add A6 family code for DS2438 1-Wire sensor (@definitio
- #112844 )  - Add missing device info to Husqvarna Automower (@Thomas55555
- #113090 )  - Add scheduled mode to renault charge mode (@slyoldfox
- #105967 )  - Add reconfigure flow to homeworks (@emontnemery
- #112419 )  - Validate state_class with last_reset_value_template for mqtt sensors (@jbouwh
- #113099 )  - Update vallox_websocket_api to 5.1.1 (@yozik04
- #113139 )  - Bump Wandalen/wretry.action from 1.4.8 to 1.4.9 (@dependabot - #113132
)  - Convert sets to list before passing to the JSON serializer in the registries (@bdraco
- #113133 )  - Add the ability to create Debouncer tasks as background tasks (@bdraco
- #113128 )  - Add device_id to sentence trigger and external conversation APIs (@synesthesiam
- #113094 )  - Remove deprecated 
hass.componentsusage in device_sun_light_trigger (@jpbede- #111881 )  - Add motion detection enable/disable to ring camera platform (@sdb9696
- #108789 )  - Remove entity description mixin in Screenlogic (@joostlek
- #112935 )  - Remove deprecated 
hass.componentsusage in service tests (@jpbede- #111883 )  - Clean up Abode imports (@joostlek
- #113138 )  - Improve lists in integrations [E-F] (@joostlek
- #113075 )  - Make august activity update a background task (@bdraco
- #112652 )  - Make Bluetooth active coordinator debouncers run tasks in the background (@bdraco
- #113129 )  - Ensure HKC debounced availability poll does not block startup (@bdraco
- #113130 )  - Avoid multiple executor jobs to add wemo devices (@bdraco
- #112484 )  - Add icon translations to Lametric (@joostlek
- #111854 )  - Add options update listener for Speedtest.Net (@gjohansson-ST
- #112108 )  - Add binary_sensor to homeworks (@emontnemery
- #112418 )  - Fix Axis unique ID (@Kane610
- #112132 )  - Use enum device class in Dexcom (@joostlek
- #112423 )  - Add icons to Teslemetry (@Bre77
- #112546 )  - Sonos reduce test time (@PeteRager
- #111688 )  - Avoid some event loop overhead for ESPHome listeners (@bdraco
- #113173 )  - Add “language” to strings.json (@autinerd
- #112869 )  - Move Notion coordinator to its own module (@bachya
- #112756 )  - Add icon translations to Bond (@joostlek
- #111349 )  - Fix System Bridge media source data URL (@timmo001
- #112612 )  - Small improvement to test run time (@bdraco
- #113175 )  - Remove ZHA IasZone sensor migration (@TheJulianJES
- #111893 )  - Add a task name to the config entry retry tasks (@bdraco
- #113188 )  - Fix radon precision for Airthings BLE (@LaStrada
- #113185 )  - ESPHome: Catch and re-raise client library errors as HomeAssistantErrors (@jesserockz
- #113026 )  - Properly mark Plex update sensor when current (@jjlawren
- #113197 )  - ESPHome: Add Date Entity support (@jesserockz
- #112475 )  - Bump radios to 0.3.1 (@bdraco
- #112850 )  - Bump github/codeql-action from 3.24.6 to 3.24.7 (@dependabot - #113207
)  - Bump Wandalen/wretry.action from 1.4.9 to 1.4.10 (@dependabot - #113206
)  - Update pytest artifact actions to v4 (@cdce8p
- #110906 )  - Improve lists for MQTT integration (@jbouwh
- #113184 )  - Migrate one time listeners to use async_run_hass_job (@bdraco
- #113179 )  - Bump actions/checkout from 4.1.1 to 4.1.2 (@dependabot - #113208
)  - Migrate torque to use async_add_hass_job (@bdraco
- #113218 )  - Only extract traceback once in system_log (@bdraco
- #113201 )  - Simplify entity _attr cached_property getter implementation (@bdraco
- #113195 )  - Migrate harmony to use async_run_hass_job (@bdraco
- #113178 )  - Ensure apple_tv connect loop is cancelled on shutdown (@bdraco
- #113191 )  - Simplify clearing _attr cached_property in entities (@bdraco
- #113136 )  - Add diagnostics platform to IPMA (@dgomes
- #105697 )  - Update dsmr reader codeowner (@joostlek
- #108152 )  - Constrain pycountry to >=23.12.11 (@bdraco
- #112849 )  - Remove HassJob wrapping from the DataUpdateCoordinator (@bdraco
- #113192 )  - Add processes services to System Bridge (@timmo001
- #103564 )  - Improve lists in integrations [I-K] (@joostlek
- #113221 )  - Deprecate 
homeassistant.components.is_onfunction (@jpbede- #111891 )  - Improve lists in integrations [G-H] (@joostlek
- #113168 )  - CI: Move pytest-github-actions-annotate-failures to test deps, upgrade (@akx
- #104604 )  - Improve lists in integrations [P-Q] (@joostlek
- #113236 )  - Run coordinator shutdown eagerly (@bdraco
- #113174 )  - Use 
single_config_entryin Accuweather manifest (@bieniu- #111548 )  - Improve lists in integrations [T-U] (@joostlek
- #113243 )  - Parameterize some tests in generic_thermostat (@esciara
- #105643 )  - Add icon translations to Roku (@joostlek
- #112214 )  - Remove remaining async_add_job calls in core (@bdraco
- #113217 )  - Improve lists in integrations [V-W] (@joostlek
- #113252 )  - Use async_update_reload_and_abort helper in tailwind (@jpbede
- #110885 )  - Rework Melissa tests (@joostlek
- #113241 )  - Improve lists in integrations [X-Z] (@joostlek
- #113253 )  - Improve lists in integrations [L-M] (@joostlek
- #113227 )  - Improve lists in integrations [N-O] (@joostlek
- #113231 )  - Improve lists in integrations [R-S] (@joostlek
- #113233 )  - Split out deCONZ config model (@Kane610
- #112851 )  - Add service icons to Bluesound (@joostlek
- #113281 )  - Add service icons to Browser (@joostlek
- #113283 )  - Add service icons to Command line (@joostlek
- #113285 )  - Ensure apple_tv setup retries later on timeout (@bdraco
- #113367 )  - Bump aiodns to 3.1.1 (@bdraco
- #113371 )  - Bump bluetooth-auto-recovery to 1.4.0 (@bdraco
- #113368 )  - Bump aiodiscover to 2.0.0 (@bdraco
- #113337 )  - Fix uv cache dir env [ci] (@cdce8p
- #113312 )  - Avoid pre-importing config_flows if the integration does not support migration (@bdraco
- #113369 )  - Bump ha-ffmpeg to 3.2.0 (@bdraco
- #113297 )  - Add default_config to the bootstrap pre-imports (@bdraco
- #113263 )  - Migrate solax away from using async_add_job (@bdraco
- #113257 )  - Remove async_add_job calls from configurator (@bdraco
- #113256 )  - Migrate script integration to create eager tasks (@bdraco
- #113189 )  - Add a helper to import modules from the event loop (@bdraco
- #113169 )  - Remove async_add_job calls from qwikswitch (@bdraco
- #113258 )  - Add service icons to REST command (@joostlek
- #113347 )  - Fix group loading too late resulting in incorrect state (@bdraco
- #113262 )  - Remove usage of async_add_job in tests (@bdraco
- #113259 )  - Add service icons to Unifi (@joostlek
- #113360 )  - Bump opower to 0.4.0 (@tronikos
- #113390 )  - Bump gassist-text to 0.0.11 (@tronikos
- #113386 )  - Bump docker/login-action from 3.0.0 to 3.1.0 (@dependabot - #113384
)  - Add service icons to Debug py (@joostlek
- #113287 )  - Add virtual integration Sacramento Municipal Utility District (SMUD) (@tronikos
- #113389 )  - Add service icons to Filter (@joostlek
- #113295 )  - Improve loops and lists (@joostlek
- #113269 )  - Enable ISC ruff rule (@joostlek
- #113270 )  - Remove old migration from lovelace (@emontnemery
- #113388 )  - Update ring integration imports (@sdb9696
- #113397 )  - Migrate auth to use async_import_module to avoid blocking I/O in the event loop (@bdraco
- #113387 )  - Fix telegram_bot doing blocking I/O in the event loop to import platforms (@bdraco
- #113383 )  - Migrate sun to use single_config_entry (@bdraco
- #113370 )  - Add service icons to Zoneminder (@joostlek
- #113366 )  - Fix smartthings doing blocking I/O in the event loop to import platforms (@bdraco
- #113382 )  - Add service icons to Wake on LAN (@joostlek
- #113362 )  - Add service icons to System Log (@joostlek
- #113355 )  - Add service icons to Statistics (@joostlek
- #113353 )  - Add service icons to Universal (@joostlek
- #113361 )  - Add service icons to Alert (@joostlek
- #113274 )  - Add service icons to System Bridge (@joostlek
- #113354 )  - Add service icons to Timer (@joostlek
- #113358 )  - Add service icons to SMTP (@joostlek
- #113351 )  - Add service icons to Schedule (@joostlek
- #113350 )  - Add service icons to Recorder (@joostlek
- #113344 )  - Add service icons to Snips (@joostlek
- #113352 )  - Add service icons to Ombi (@joostlek
- #113339 )  - Move modbus check_config to setup, to have access to hass (@janiversen
- #112828 )  - Bump hass-nabucasa from 0.78.0 to 0.79.0 (@ludeeus
- #113405 )  - Add floor support to areas WebSocket API (@frenck
- #113402 )  - Add service icons to Yamaha (@joostlek
- #113365 )  - Add service icons to Wemo (@joostlek
- #113363 )  - Add service icons to Telegram bot (@joostlek
- #113357 )  - Add service icons to Toon (@joostlek
- #113359 )  - Add service icons to Telegram (@joostlek
- #113356 )  - Add service icons to Route53 (@joostlek
- #113349 )  - Add service icons to RFLink (@joostlek
- #113348 )  - Add service icons to Remember the milk (@joostlek
- #113345 )  - Add service icons to Xiaomi Miio (@joostlek
- #113364 )  - Add service icons to QVR Pro (@joostlek
- #113343 )  - Add service icons to Python Scripts (@joostlek
- #113342 )  - Add service icons to Pilight (@joostlek
- #113341 )  - Add service icons to nx584 (@joostlek
- #113338 )  - Add service icons to Nissan Leaf (@joostlek
- #113336 )  - Add service icons to Netatmo (@joostlek
- #113335 )  - Add service icons to Media Extractor (@joostlek
- #113329 )  - Add service icons to Microsoft Face (@joostlek
- #113330 )  - Add service icons to Minio (@joostlek
- #113331 )  - Add service icons to Ness alarm (@joostlek
- #113333 )  - Add service icons to Matrix (@joostlek
- #113328 )  - Add service icons to Lovelace (@joostlek
- #113327 )  - Add service icons to Logi circle (@joostlek
- #113326 )  - Add service icons to Local file (@joostlek
- #113323 )  - Add service icons to Keyboard (@joostlek
- #113322 )  - Add service icons to Kef (@joostlek
- #113321 )  - Add service icons to Keba (@joostlek
- #113320 )  - Add service icons to Iperf3 (@joostlek
- #113319 )  - Add service icons to Intent Script (@joostlek
- #113318 )  - Add service icons to Input Text (@joostlek
- #113317 )  - Add service icons to Input Select (@joostlek
- #113316 )  - Add service icons to Input button (@joostlek
- #113313 )  - Add service icons to Input Number (@joostlek
- #113315 )  - Add service icons to IHC (@joostlek
- #113311 )  - Add service icons to HTML5 (@joostlek
- #113309 )  - Add service icons to Homematic (@joostlek
- #113308 )  - Add service icons to Home Assistant (@joostlek
- #113307 )  - Add service icons to Habitica (@joostlek
- #113303 )  - Add service icons to Geniushub (@joostlek
- #113301 )  - Add service icons to Generic Thermostat (@joostlek
- #113300 )  - Add service icons to Frontend (@joostlek
- #113299 )  - Add service icons to Freebox (@joostlek
- #113298 )  - Add service icons to Ffmpeg (@joostlek
- #113294 )  - Add service icons to Evohome (@joostlek
- #113293 )  - Add service icons to Foursquare (@joostlek
- #113296 )  - Add service icons to Envisalink (@joostlek
- #113292 )  - Add service icons to HDMI CEC (@joostlek
- #113304 )  - Add service icons to Ebusd (@joostlek
- #113291 )  - Add service icons to Downloader (@joostlek
- #113289 )  - Add service icons to Dominos (@joostlek
- #113288 )  - Add service icons to Logbook (@joostlek
- #113324 )  - Add service icons to Logger (@joostlek
- #113325 )  - Add service icons to Input Datetime (@joostlek
- #113314 )  - Add service icons to Conversation (@joostlek
- #113286 )  - Add service icons to DuckDNS (@joostlek
- #113290 )  - Add service icons to Agent DVR (@joostlek
- #113273 )  - Bump tololib to 1.1.0 (@MatthiasLohr
- #113268 )  - Add service icons to Advantage air (@joostlek
- #113272 )  - Add service icons to Channels (@joostlek
- #113284 )  - Add service icons to Modbus (@joostlek
- #113332 )  - Add service icons to Backup (@joostlek
- #113277 )  - Add service icons to Bayesian (@joostlek
- #113278 )  - Add service icons to Bluetooth Tracker (@joostlek
- #113282 )  - Add service icons to History Stats (@joostlek
- #113306 )  - Add service icons to Group (@joostlek
- #113302 )  - Add service icons to REST (@joostlek
- #113346 )  - Add service icons to Amcrest (@joostlek
- #113276 )  - Add service icons to Blackbird (@joostlek
- #113280 )  - Add service icons to Persistent Notification (@joostlek
- #113340 )  - Deprecate the map integration (@emontnemery
- #113215 )  - Enable PERF ruff rules (@joostlek
- #113408 )  - Fix icon mistakes (@joostlek
- #113420 )  - Add service icons to Utility meter (@joostlek
- #113419 )  - Add service icons to Demo (@joostlek
- #113414 )  - Bump weatherflow_cloud backing lib v0.2.13 (@jeeftor
- #113181 )  - Add service icons to Scene (@joostlek
- #113418 )  - Add service icons to ADS (@joostlek
- #113412 )  - Add UniFi Protect service to remove privacy zones (@AngellusMortis
- #111292 )  - Add icon translations to Unifi protect (@joostlek
- #112332 )  - Add floors to service target (@frenck
- #110850 )  - add switch platform for tolo (@MatthiasLohr
- #113440 )  - Allow entity platforms without entity_component in icon validation (@joostlek
- #113422 )  - Add service icons to Fan (@joostlek
- #113415 )  - Fix alarm control panel icons (@joostlek
- #113413 )  - Add service icons to Abode (@joostlek
- #113411 )  - Add icon translations to ZHA (@joostlek
- #112368 )  - Fix calling sync api in counter/ffmpeg/device_tracker tests (@bdraco
- #113441 )  - Deprecate async_run_job and async_add_job (@bdraco
- #113260 )  - Add service icons to Climate (@joostlek
- #113409 )  - Add aroma therapy select entity for tolo integration (@MatthiasLohr
- #113442 )  - Revert “Remove unused test helper mock_area_registry” (@jbouwh
- #113453 )  - Fix hassfest icons check for notify and image_processing (@jbouwh
- #113446 )  - Add aliases support to floor registry WebSocket API (@frenck
- #113401 )  - Support lutron transition time and flash for lights (@wilburCforce
- #109185 )  - Change modbus integration to use async library calls (@janiversen
- #113450 )  - Add service icons to Notify (@joostlek
- #113417 )  - Add service icons to Image processing (@joostlek
- #113416 )  - Bump aiooncue to 0.3.7 (@PeteRager
- #113451 )  - Add icon translations to myuplink (@astrandb
- #111466 )  - Construct storage data in the executor to avoid blocking the event loop (@bdraco
- #113465 )  - Reduce overhead to save the larger registries (@bdraco
- #113462 )  - Avoid creating another ssl context in cert_expiry (@bdraco
- #113467 )  - Bump aiodhcpwatcher to 1.0.0 (@bdraco
- #113469 )  - Reduce script overhead by avoiding creation of many tasks (@bdraco
- #113183 )  - Fix scene integration doing blocking I/O in the event loop to import platforms (@bdraco
- #113391 )  - Fix delayed registry check to only using the short delay at running (@bdraco
- #113471 )  - Start script runs eagerly (@bdraco
- #113190 )  - Remove unused tts fixture (@emontnemery
- #113480 )  - Move loading of ha-av to the executor (@bdraco
- #113485 )  - Remove supports_encryption check from mobile_app (@bdraco
- #113490 )  - Improve State docstring (@emontnemery
- #113501 )  - Avoid multiple context switches to setup a sonos speaker (@bdraco
- #113378 )  - Address late review on adding an error sensor to Husqvarna Automower (@Thomas55555
- #113242 )  - Add missing mystrom sensor (@slyoldfox
- #113225 )  - Remove old update unique id function from deCONZ binary sensor (@Kane610
- #112536 )  - Create more relevant names for myuplink DeviceInfo (@astrandb
- #111502 )  - Add icon translations to Moon (@dougiteixeira
- #111386 )  - Use 
single_config_entryin KNX manifest (@farmio- #112526 )  - Remove OpenCV integration (@thecode
- #113455 )  - Ensure TurboJPEG is imported in the executor (@bdraco
- #113504 )  - Use on state icons by default in Balboa spa integration (@snoack
- #111911 )  - Add Ring Intercom support (@cosimomeli
- #109819 )  - Add theme color support to labels (@frenck
- #113404 )  - Add category registry (@frenck
- #110897 )  - create issues for modbus config errors (@janiversen
- #113431 )  - Speed up ffmpeg setup (@bdraco
- #113496 )  - Filter out irrelevant entities on SMO20 devices in myuplink (@astrandb
- #113493 )  - Remove Sonos migrations (@joostlek
- #113506 )  - Add diagnostics platform to Fastdotcom (@erwindouna
- #111525 )  - Remove modbus create_issue from init (@janiversen
- #113510 )  - Add Ring Intercom open door button (@cosimomeli
- #113514 )  - Add icon translations to Sonos (@joostlek
- #112235 )  - Add missing icon for Unifi protect service (@joostlek
- #113508 )  - Protect SupervisorIssues.update method (@mdegat01
- #113425 )  - Bump opower to 0.4.1 (@drewclauson
- #113509 )  - Remove repetitive words in comments and docstrings (@soonsouth
- #113529 )  - Add Fyta integration (@dontinelli
- #110816 )  - Use Volume Flow Rate device class in BTHome (@joostlek
- #113530 )  - Freeze timezone in bmw_connected_drive tests (@Thomas55555
- #113533 )  - Fix MyUplink tests (@joostlek
- #113534 )  - Support configuring Axis to use HTTPS (@Kane610
- #113271 )  - Use Volume Flow Rate device class in DROP connect (@joostlek
- #113528 )  - Use Volume Flow Rate device class in Opentherm gw (@joostlek
- #113531 )  - Do not allow modbus config without entities (@janiversen
- #113516 )  - Use single_config_entry in jellyfin manifest (@ctalkington
- #113202 )  - Import and create pyudev for usb in the executor (@bdraco
- #113478 )  - Remove old update of sensor unique id in deCONZ (@Kane610
- #113527 )  - Remove old update of number unique id in deCONZ (@Kane610
- #113524 )  - Remove old update of group unique id in deCONZ (@Kane610
- #112533 )  - Add missing continue in legacy recorder history function (@emontnemery
- #113535 )  - fix mqtt siren test asserts (@autinerd
- #113550 )  - fix homekit test asserts (@autinerd
- #113549 )  - Speed up loading sun (@bdraco
- #113544 )  - Revert “Avoid pre-importing config_flows if the integration does not … (@gjohansson-ST
- #113553 )  - Add missing async_block_till_done to jellyfin test_invalid_auth test (@bdraco
- #113556 )  - Avoid calling entry.async_migrate in sonarr tests (@bdraco
- #113557 )  - Remove danielperna84 as codeowner (@danielperna84
- #109662 )  - Add translations for devolo Home Network exceptions (@Shutgun
- #105755 )  - Restore group config_flow pre-import (@bdraco
- #113558 )  - Send keep-alive frames in image proxy stream (@OnFreund
- #113542 )  - Add profiler set_asyncio_debug service (@bdraco
- #113447 )  - Remove group integration platforms that use the default states (@bdraco
- #113562 )  - Fix lingering hassio issues test (@jbouwh
- #113569 )  - Cleanup some circular imports in group (@bdraco
- #113554 )  - Add ruff B005, B015, B032 and fix occurrences (@autinerd
- #113543 )  - Improve typing of State.as_compressed_state (@emontnemery
- #113540 )  - Move group config flow pre-import to its init (@bdraco
- #113564 )  - Reduce bottlenecks in bootstrap by ordering the setup of integrations (@bdraco
- #113570 )  - Fix unifiprotect tests for ruff B018 (@autinerd
- #113584 )  - Fix freedompro tests for ruff B018 (@autinerd
- #113583 )  - Add additional sensors to Teslemetry (@Bre77
- #112555 )  - Add battery discharge sensor to ViCare integration (@CFenner
- #113502 )  - Shelly config flow test wait for tasks to finish (@thecode
- #113588 )  - Use async_create_task in recorder init tests (@bdraco
- #113586 )  - Add JVC Projector Sensors (@msavazzi
- #108949 )  - Enable ruff RUF005 and fix occurrences (@autinerd
- #113589 )  - Remove unnecessary method in UniFi entity loader (@Kane610
- #113597 )  - Axis use entity description in switch platform (@Kane610
- #113595 )  - Clean up unneeded ruff noqa directives (@autinerd
- #113616 )  - Remove deprecated 
hass.componentsfrom mysensors (@jpbede- #113611 )  - Freeze time on profile test (@jbouwh
- #113618 )  - Add a guard to handle unhashable platforms in config (@bdraco
- #113607 )  - Avoid creating tasks in homeassistant_alerts when the debouncer will not fire (@bdraco
- #113580 )  - Gather loading platforms in async_process_component_config (@bdraco
- #113573 )  - Fix vulcan calendar offset (@Antoni-Czaplicki
- #113604 )  - Add ruff rules PIE790, PIE794, PIE807, PIE810 (@autinerd
- #113617 )  - Remove deprecated 
hass.componentsfrom legacy device tracker platform (@jpbede- #113612 )  - Fix race in removing modified devices from the entity registry (@bdraco
- #113623 )  - snmp: Better sensor support to resolve previous issues (@lextm
- #113624 )  - Generate HomeAssistantError message from English translations (@jbouwh
- #113305 )  - Add ruff rule PIE804 (@autinerd
- #113620 )  - Remove ignore for ruff PLC0208 (@autinerd
- #113537 )  - Use 
mock_platformfor button entity component tests instead ofhass.components(@jpbede- #113627 )  - Add new fields from UniFi Protect v3 (@AngellusMortis
- #113631 )  - Run apple_tv shutdown eagerly at the stop event (@bdraco
- #113637 )  - Run shelly coordinator shutdown immediately at the stop event (@bdraco
- #113633 )  - Shutdown config entry manager immediately at the stop event (@bdraco
- #113632 )  - Shutdown homekit eagerly at the stop event (@bdraco
- #113639 )  - Consolidate ruff PL and Q rules (@autinerd
- #113555 )  - Run functions from ssdp listeners immediately (@bdraco
- #113634 )  - Fix zeroconf shutting down too early (@bdraco
- #113638 )  - Run entity component shutdown immediately (@bdraco
- #113635 )  - Create config entry async_on_unload tasks eagerly (@bdraco
- #113626 )  - Bump snapcast to 2.3.6 (@luar123
- #113606 )  - Cleanup sonos shutdown process (@bdraco
- #113654 )  - Deprecate UniFi Protect HDR switch and package sensor (@AngellusMortis
- #113636 )  - Add ruff rule PIE800 (@autinerd
- #113619 )  - Eagerly shutdown unifiprotect at the stop event (@bdraco
- #113655 )  - Run yalexs_ble shutdown with run_immediately (@bdraco
- #113653 )  - Eagerly shutdown homekit_controller at the stop event (@bdraco
- #113650 )  - Run bond shutdown listener with run_immediately (@bdraco
- #113657 )  - Save bluetooth passive data eagerly at the stop event (@bdraco
- #113648 )  - Add run_immediately to bluetooth listeners (@bdraco
- #113659 )  - Add tests of homeworks binary sensor (@emontnemery
- #113577 )  - Add tests of homeworks light (@emontnemery
- #113579 )  - Add ruff rule PIE808 (@autinerd
- #113621 )  - Add tests of homeworks button (@emontnemery
- #113578 )  - Add tests of homeworks init (@emontnemery
- #113581 )  - Replace pylint pointless-statement with ruff B018 (@autinerd
- #113582 )  - Improve debug logging in Tankerkoenig (@mib1185
- #113674 )  - Remove deprecated 
hass.componentsfrom image_processing platform (@jpbede- #113613 )  - Add Ruff LOG rules (@autinerd
- #113677 )  - Freeze time on zwave_js update test (@jbouwh
- #113625 )  - Re-ignore Ruff rule PLC1901 (@autinerd
- #113675 )  - Add WAN port connection control to TP-Link Omada gateways (@MarkGodwin
- #111431 )  - Use 
mock_platformfor event entity component tests instead ofhass.components(@jpbede- #113667 )  - Migrate stream listeners to use run_immediately and eager tasks (@bdraco
- #113660 )  - Remove deprecated 
hass.componentsfrom network helper function (@jpbede- #113615 )  - Remove deprecated 
hass.componentsfrom withings webhook tests (@jpbede- #113687 )  - Add run_immediately to usb start/stop listeners (@bdraco
- #113658 )  - Move ESPHome disconnects to the close event (@bdraco
- #113652 )  - Run entity registry write_unavailable_states immediately at start (@bdraco
- #113647 )  - Run registry cleanup listeners immediately (@bdraco
- #113646 )  - Migrate registry for labels and categories to run_immediately (@bdraco
- #113645 )  - Start and stop template cache watcher to run_immediately (@bdraco
- #113644 )  - Cache late imported async_get_exception_message for HomeAssistantError (@jbouwh
- #113683 )  - Enable Ruff RSE (@autinerd
- #113695 )  - Improve scaffold test_config_flow (@jwillemsen
- #113229 )  - Adjust config flow pre-import comment in group (@bdraco
- #113702 )  - Migrate isy994 listeners to use run_immediately (@bdraco
- #113661 )  - Bump xiaomi-ble to 0.27.1 (@Ernst79
- #113686 )  - Bump dawidd6/action-download-artifact from 3.1.2 to 3.1.3 (@dependabot - #113720
)  - Move legacy device_tracker setup to a tracked task (@bdraco
- #113715 )  - Run august stop listener with run_immediately (@bdraco
- #113729 )  - Move legacy notify setup to use tracked tasks (@bdraco
- #113716 )  - Move legacy stt setup to use tracked tasks (@bdraco
- #113718 )  - Move legacy tts setup to use tracked tasks (@bdraco
- #113717 )  - Add first batch of Ruff PT rules (@autinerd
- #113665 )  - Get HomeAssistantError message from translation cache only (@jbouwh
- #113688 )  - Get ServiceValidationError message from translation cache only (@jbouwh
- #113704 )  - Run dhcp listeners with run_immediately (@bdraco
- #113726 )  - Bump apprise to 1.7.4 (@caronc
- #113629 )  - Add Downloader config flow, including tests (@erwindouna
- #98722 )  - Allow configuring Starlink sleep schedule (@boswelja
- #103057 )  - Add additional buttons to OctoPrint (@Xitee1
- #103139 )  - Add camera in use and pending reboot binary sensors to System Bridge (@timmo001
- #104095 )  - Log cannot connect exception in Tedee config flow (@zweckj
- #113740 )  - Patch Discovery timeout in govee light local (@joostlek
- #113692 )  - Add support for Tuya dimmer module (@mjh1
- #113741 )  - Add config flow to Rova (@GidoHakvoort
- #113596 )  - Axis use entity description light platform (@Kane610
- #113602 )  - Remove deprecated 
hass.componentsfrom netatmo webhook tests (@jpbede- #113691 )  - Add WebSocket support for handling labels on device registry (@frenck
- #113758 )  - Add WebSocket support for assigning labels to entities (@frenck
- #113757 )  - Streamline naming in deCONZ integration (@Kane610
- #111977 )  - Add WebSocket support for handling labels on areas registry (@frenck
- #113755 )  - Add labels to service target (@frenck
- #113753 )  - Run websocket shutdown listener with run_immediately (@bdraco
- #113727 )  - Refactor integration startup time to show wall clock time (@bdraco
- #113707 )  - Bump PyMetno to 0.12.0 (@bdraco
- #113777 )  - Start live history/logbook with eager tasks (@bdraco
- #113779 )  - Bump dawidd6/action-download-artifact from 3.1.3 to 3.1.4 (@dependabot - #113788
)  - Bump github/codeql-action from 3.24.7 to 3.24.8 (@dependabot - #113789
)  - Require an icon for a service (@joostlek
- #112373 )  - Create tasks eagerly with core create_task (@bdraco
- #113781 )  - Align Comelit climate code to humidifier (@chemelli74
- #113747 )  - Migrate restore_state shutdown to use run_immediately (@bdraco
- #113786 )  - Use async api in template weather to create tasks (@bdraco
- #113784 )  - Use async api in yamaha_musiccast to create tasks (@bdraco
- #113785 )  - Use async api in generic_thermostat to create tasks (@bdraco
- #113783 )  - Call async task creation api in apple_tv (@bdraco
- #113782 )  - Start energy load platform task eagerly (@bdraco
- #113778 )  - Bump sunweg to 2.1.1 (@rokam
- #113767 )  - Enable Ruff rule PT007 (@autinerd
- #113764 )  - Update Home Assistant base image to 2024.03.0 (@frenck
- #113797 )  - Add WS command cloud/remove_data (@emontnemery
- #109821 )  - Add Room Audio Control to Control4 Integration (@nalin29
- #87821 )  - Simplify UV install in CI (@edenhaus
- #113803 )  - Allow retries on communication exceptions for Aurora ABB Powerone solar inverter (@davet2001
- #104492 )  - Bump bthome-ble to 3.8.1 (@Ernst79
- #113800 )  - Migrate Harmony to has entity name (@joostlek
- #104737 )  - Find referenced floors in automations & scripts (@frenck
- #113802 )  - Add binary sensor platform for Husqvarna Automower (@Thomas55555
- #113248 )  - Add device_tracker platform for husqvarna_automower (@Thomas55555
- #111403 )  - Find referenced labels in automations & scripts (@frenck
- #113812 )  - Revert get_model from myuplink lib (@astrandb
- #113811 )  - Do not patch 
asyncio.timeoutin govee light local test (@jpbede- #113819 )  - Fix flakey profiler object growth tests (@bdraco
- #113825 )  - Fix duplicate events in live logbook (@bdraco
- #113828 )  - Remove deprecated 
hass.componentsfrom http test (@jpbede- #113823 )  - Remove deprecated 
hass.componentsfrom cloud client test (@jpbede- #113820 )  - Remove deprecated 
hass.componentsfrom person test (@jpbede- #113822 )  - Only wait for import flows in setup of there is a config flow (@bdraco
- #113780 )  - Fix template sensor test relying on event bus debug logging (@bdraco
- #113842 )  - Migrate samsungtv stop to use run_immediately (@bdraco
- #113834 )  - Migrate camera listeners to use run_immediately (@bdraco
- #113840 )  - Only create one executor job to shutdown wemo (@bdraco
- #113836 )  - Migrate legacy device_tracker shutdown to use run_immediately (@bdraco
- #113835 )  - Use 
mock_platformfor light entity component tests instead ofhass.components(@jpbede- #113845 )  - Remove deprecated 
hass.componentsfrom vilfo config flow tests (@jpbede- #113821 )  - Update actions/cache to 4.0.2 (@cdce8p
- #113817 )  - Upgrade whirlpool integration to add shared appliances and allow brand selection (@NodeJSmith
- #111687 )  - Reduce overhead to write dlna_dmr state (@bdraco
- #113776 )  - Avoid expensive db queries at startup to check if data is migrated (@bdraco
- #113773 )  - Bump aioesphomeapi to 23.2.0 (@jesserockz
- #113854 )  - Add icon translations to Github (@joostlek
- #111614 )  - Fix flapping device tracker test (@bdraco
- #113859 )  - Fix flapping stream hls test (@bdraco
- #113858 )  - Remove deprecated 
hass.componentsfrom group light tests and use fixture (@jpbede- #113862 )  - Avoid creating unneeded Context and Event objects when firing events (@emontnemery
- #113798 )  - Deprecate cloud tts gender (@MartinHjelmare
- #112256 )  - Remove Amcrest camera unique id migration (@joostlek
- #113870 )  - Bump bluecurrent-api to 1.2.2 (@Floris272
- #110483 )  - Bump numato-gpio to v0.13.0 (@clssn
- #113182 )  - Add floor template functions (@frenck
- #110847 )  - Make temperature a required parameter for tado climate service (@alinbalutoiu
- #113872 )  - Update Amcrest services.yaml (@tuday2
- #111161 )  - Change quotes in cloud translations (@piitaya
- #113871 )  - Add matter device serial number (@MartinHjelmare
- #113878 )  - Provide better debug capabilities for the Traccar Server integration (@ludeeus
- #113868 )  - Remove obsolete issue strings in WAQI (@joostlek
- #113884 )  - YoLink fix cover incorrect state (@matrixd2
- #104975 )  - Bump aioshelly to 8.2.0 (@chemelli74
- #113886 )  - Bump islamic_prayer_times to 0.0.12 (@uchagani
- #113744 )  - Fix duplicate events in live history (@bdraco
- #113896 )  - Add State.last_reported (@emontnemery
- #113511 )  - Small cleanup to unifiprotect subscriptions (@bdraco
- #113901 )  - Fix flakey test_reading_yaml_config test (@bdraco
- #113902 )  - Fix system_info importing hassio in the event loop (@bdraco
- #113903 )  - Cache parsing the url for the device registry (@bdraco
- #113910 )  - Use faster time compare in history and live logbook (@bdraco
- #113897 )  - Reduce overhead to clear cache in button state (@bdraco
- #113895 )  - Refactor rate limit helper to track time in seconds (@bdraco
- #113898 )  - Use intersection for determine_script_action (@bdraco
- #113915 )  - Reduce overhead to construct and validate entity service schema (@bdraco
- #113920 )  - ESPHome: Add Time Entity support (@jesserockz
- #113852 )  - Fetch MaxLengthExceeded exception mesage from the translation cache (@jbouwh
- #113904 )  - Fetch ServiceNotFound message from translation cache (@jbouwh
- #113893 )  - Load system info with base functionality (@bdraco
- #113923 )  - Add run_immediately to the trace stop listener (@bdraco
- #113922 )  - Only calculate native value once per update in systemmonitor (@bdraco
- #113921 )  - Add a fast path for async_get_platform (@bdraco
- #113917 )  - Enable Ruff PT023, disable PT011, PT012, PT018 (@autinerd
- #113900 )  - Upgrade Modbus quality scale to platinum (@janiversen
- #113482 )  - Add diagnostics to Husqvarna Automower (@Thomas55555
- #111857 )  - modbus: Remove PARALLEL_UPDATES from base_platform (@janiversen
- #113928 )  - Split light fixture from implementation to only import when fixture is actually used (@jpbede
- #113892 )  - Add transmission-integration path and protocol (@idelsink
- #104334 )  - Remove AUX heating from demo climate (@emontnemery
- #113929 )  - Add Reolink hdd/sd card storage sensor (@starkillerOG
- #110961 )  - Bump Wandalen/wretry.action from 1.4.10 to 2.0.0 (@dependabot - #113888
)  - Remove deprecated 
hass.componentsfrom flux switch tests and use fixture (@jpbede- #113875 )  - Add Bluetooth support to La Marzocco integration (@zweckj
- #108287 )  - Add availability to Scrape config flow (@gjohansson-ST
- #105516 )  - Add select platform to Husqvarna Automower (@Thomas55555
- #113816 )  - Remove unrelated patching from scrape test (@bdraco
- #113951 )  - Add support for Shelly RPC devices custom TCP port (@chemelli74
- #110860 )  - Add Shelly RGB/RGBW profiles support (@thecode
- #113808 )  - Fix grammar in async_get_platform comment (@bdraco
- #113948 )  - Avoid writing HomeKit state to disk unless its missing (@bdraco
- #111970 )  - Improve user error messages for generic camera (@davet2001
- #112814 )  - Add guard to HomeAssistantError 
__str__method to prevent a recursive loop (@jbouwh- #113913 )  - Bump pyenphase to 1.20.0 (@catsmanac
- #113963 )  - Fix argument name in async_update_ha_state warning message (@MrXANA91
- #113969 )  - Pre import mobile app platforms to avoid having to wait on them (@bdraco
- #113966 )  - Deprecate the panel_iframe integration (@emontnemery
- #113410 )  - Group wemo platform forwards to reduce overhead (@bdraco
- #113972 )  - Return default repairs flow for cloud TTS issues (@ludeeus
- #113981 )  - Correct HomeAssistantError str implementation and test (@jbouwh
- #113991 )  - Update JVC Projector polling time to be more responsive for automations (@msavazzi
- #113765 )  - Add binary sensor platform to microBees (@FedDam
- #111190 )  - Add icon translations to Wiz (@joostlek
- #112358 )  - Add reformatting commits to .git-blame-ignore-revs (@akx
- #110481 )  - Add cover platform to microBees (@FedDam
- #111135 )  - Axis use entity descripton binary sensor platform (@Kane610
- #113705 )  - Remember entered IP when error happend while setting up HomeWizard (@DCSBL
- #113815 )  - Remove hourly weather entity from Aemet (@gjohansson-ST
- #110764 )  - Remove hourly weather entity from NWS (@gjohansson-ST
- #112503 )  - Add new HomeWizard Energy Socket to tests (@DCSBL
- #113406 )  - Use uv instead of pip on production images (@edenhaus
- #112496 )  - Remove deprecated 
hass.componentsfrom frontend tests (@jpbede- #114011 )  - Remove deprecated 
hass.componentsfrom scene tests (@jpbede- #114014 )  - Remove deprecated 
hass.componentsfrom zeroconf tests (@jpbede- #114013 )  - Remove deprecated 
hass.componentsfrom conversation tests and use light setup fixture (@jpbede- #114012 )  - Rename device to api in Axis integration (@Kane610
- #113965 )  - Tweak marking private methods in UniFi, no need to mark inner functio… (@Kane610
- #113964 )  - Speed up recorder startup by making schema query read only (@bdraco
- #113987 )  - Define and use entity description in Axis entity base class (@Kane610
- #114007 )  - Add home battery storage entities for enphase_envoy (@catsmanac
- #114015 )  - Add missing is_closed property to powerview tilt only entities (@kingy444
- #113792 )  - Improve deCONZ test_non_color_light_reports_color (@Kane610
- #114021 )  - Add ecobee indefinite away preset, remove unusable/broken presets (@alexsydell
- #108636 )  - Update pytest warnings filter (@cdce8p
- #114036 )  - Update byte string formatting (2) (@cdce8p
- #114039 )  - Update empty line formatting after module docstring (@cdce8p
- #114040 )  - Move powerview timeout logic to the upstream api (@kingy444
- #113984 )  - Improve axis tests (@Kane610
- #114035 )  - Combine recorder and frontend bootstrap step (@bdraco
- #113985 )  - Add Powerview Type 11 (@kingy444
- #114047 )  - Move setup of legacy device_tracker see service to legacy setup task (@bdraco
- #114043 )  - Fix missing linked device on Overkiz integration (@Tronix117
- #114006 )  - Load light profiles in a task to avoid delaying platform setup (@bdraco
- #114038 )  - Smhi add reconfigure step to config flow (@gjohansson-ST
- #114044 )  - Fix flakey stream hls test (@bdraco
- #114046 )  - Fix after deps not being considered for integrations before stage 1 (@bdraco
- #114045 )  - Fix building images for nightlies (@edenhaus
- #114054 )  - Show correct ipv6 address in System Monitor (@gjohansson-ST
- #114024 )  - Reduce sqlalchemy reflection overhead at recorder setup time (@bdraco
- #113989 )  - Migrate UpdateCoordinator to its own file in aurora_abb_powerone (@davet2001
- #114053 )  - Create registry matrix to run publishing for images in parallel (@edenhaus
- #114060 )  - Enable turn_on / turn_off features for HitachiAirToAirHeatPump in Overkiz (@iMicknl
- #112990 )  - Bump pyrisco to 0.6.0 (@OnFreund
- #114063 )  - Fix bug in roon media player to use correct ‘seek position’ while playing a track. (@pavoni
- #113999 )  - Bump holidays to 0.45 (@gjohansson-ST
- #114069 )  - Add Rachio smart hose timer support (@brg468
- #107901 )  - Add Lutron Serena tilt only wood blinds (@wujiaqi
- #113791 )  - Add Risco system binary sensors (@OnFreund
- #114062 )  - Use a constant to reference 
homeassistantdomain (@jbouwh- #113889 )  - Fix setup timings when config entry platform loads are not awaited (@bdraco
- #113959 )  - Refactor recorder states tests (@bdraco
- #114073 )  - Catch Mill timeout error (@joostlek
- #114068 )  - Fix Shelly WallDisplay device power (@thecode
- #114071 )  - Centralize loading Axis entities (@Kane610
- #114018 )  - Avoid creating inner function in EntityComponent setup (@bdraco
- #114050 )  - Add more sensors to aurora_abb_powerone (@davet2001
- #114074 )  - Add reconfigure step to holiday (@gjohansson-ST
- #114057 )  - Migrate nut to use aionut (@bdraco
- #114078 )  - Allow retry during Config Flow in Advantage Air (@Bre77
- #114083 )  - Small performance improvement to template expand (@bdraco
- #114086 )  - Optimize loading of translations (@bdraco
- #114089 )  - Bump gcal-sync to 6.0.4 (@allenporter
- #114085 )  - Bump tplink_omada to 1.3.12 for ER7212PC support (@MarkGodwin
- #114077 )  - Add vehicle config to coordinator to fix bug in Teslemetry (@Bre77
- #113850 )  - Improve blue current integration code (@Floris272
- #114004 )  - Add more sensors to aurora_abb_powerone (part 2) (@davet2001
- #114097 )  - Add reconfigure flow to Axis integration (@Kane610
- #114067 )  - Fix flapping device_tracker test_bad_platform test (@bdraco
- #114102 )  - Tado: fix 113982 (@niro1987
- #114109 )  - Fix launch library translation keys (@LarsStegman
- #114093 )  - Replace if in range check (@cdce8p
- #114107 )  - Bump xiaomi-ble to 0.28.0 (@Ernst79
- #114120 )  - Ensure discovery can setup legacy device tracker platforms (@bdraco
- #114101 )  - Fetch ServiceNotFound message from translation cache and fix super (@jbouwh
- #114084 )  - Use TypeVarTuple for add_job and run_job methods (@cdce8p
- #114122 )  - Fix google assistant diagnostics test (@jbouwh
- #114111 )  - Cancel config entry setup retry at shutdown (@bdraco
- #114124 )  - Bump aionut to 4.1.0 (@bdraco
- #114125 )  - Implement diagnostics platform for APCUPSD (@yuxincs
- #112284 )  - Bump aionut to 4.2.1 (@bdraco
- #114132 )  - Bump yolink-api to 0.4.1 fix water depth sensor error when device is not initialize (@matrixd2
- #113994 )  - Bump aionut to 4.3.2 (@bdraco
- #114142 )  - Covert system_log services to be callbacks (@bdraco
- #114143 )  - Add repair for UniFi Protect if RTSP is disabled on camera (@AngellusMortis
- #114088 )  - Bump github/codeql-action from 3.24.8 to 3.24.9 (@dependabot - #114151
)  - Bump Wandalen/wretry.action from 2.0.0 to 2.1.0 (@dependabot - #114150
)  - Bump vilfo-api-client to 0.5.0 (@ManneW
- #114082 )  - Update pre-commit to 3.7.0 (@cdce8p
- #114154 )  - Use uv and sort jobs in builder.yml (@edenhaus
- #114153 )  - Update pytest-asyncio to 0.23.6 (@cdce8p
- #114155 )  - Generate ConfigValidationError message from English translations (@jbouwh
- #113844 )  - Add climate fan modes for Airzone Cloud Aidoo devices (@Noltari
- #103574 )  - Update coverage to 7.4.4 (@cdce8p
- #114158 )  - Update pytest-timeout to 2.3.1 (@cdce8p
- #114161 )  - Update respx to 0.21.0 (@cdce8p
- #114163 )  - Update pipdeptree to 2.16.1 (@cdce8p
- #114159 )  - Bump plugwise to v0.37.1 (@bouwew
- #113245 )  - Update pyOpenSSL to 24.1.0 (@cdce8p
- #114165 )  - Update yamllint to 1.35.1 (@cdce8p
- #114166 )  - Update pytest-cov to 5.0.0 (@cdce8p
- #114160 )  - Allow debugging tests by default in vscode (@jbouwh
- #114065 )  - Update typing-extensions to 4.11.0rc1 (@cdce8p
- #114116 )  - Avoid homekit random id generation for existing entries (@bdraco
- #114144 )  - Remove hourly weather entity from met_eireann (@gjohansson-ST
- #112449 )  - Update types packages (@cdce8p
- #114164 )  - Fix spelling [runtime] (@cdce8p
- #114169 )  - Fix spelling [docstrings + comments] (@cdce8p
- #114168 )  - Update pytest-unordered to 0.6.0 (@cdce8p
- #114162 )  - Update codespell to 2.2.6 (@cdce8p
- #114167 )  - Use enums to define choices in tolo (@MatthiasLohr
- #113992 )  - Refactor homekit device linking to use the device index (@bdraco
- #114145 )  - Add Withings webhook manager (@joostlek
- #106311 )  - Add base entity to romy integration (@xeniter
- #113750 )  - Updated temp offset logging in tado component (@343max
- #106308 )  - Bump pywaze to 1.0.0 (@eifinger
- #108613 )  - Bump aioautomower to 2024.3.4 (@Thomas55555
- #114127 )  - Adapt to Axis library file structure changes (@Kane610
- #114181 )  - Fix Axis not generate unique IDs (@Kane610
- #114115 )  - Refactor options flow in dnsip (@gjohansson-ST
- #114058 )  - Add Ecovacs last job event entity (@edenhaus
- #113826 )  - Add reauth support to NUT (@bdraco
- #114131 )  - Add restrictions for listening to event_reported events (@emontnemery
- #114183 )  - Telegram bot proxy params deprecation (@malkstar
- #112778 )  - Add generic test component platform setup function (@jpbede
- #114016 )  - Fix Shelly reauth flow (@thecode
- #114180 )  - Improve test coverage mqtt discovery test (@jbouwh
- #114188 )  - Remove deprecated 
hass.componentsfrom system_health tests (@jpbede- #114207 )  - Bump anyio to 4.3.0 (@bdraco
- #114198 )  - Bump ruff to 0.3.4 (@joostlek
- #112690 )  - Use new 
setup_test_component_platformhelper instead of test fixture for light platform (@jpbede- #114200 )  - Bump SQLAlchemy to 2.0.29 (@bdraco
- #114208 )  - Preload storage for integrations we know we are going to setup (@bdraco
- #114192 )  - Revert “Update typing-extensions to 4.11.0rc1 (#114116)” (@cdce8p
- #114216 )  - Rework Axis entity loader to have a better internal storage structure (@Kane610
- #114114 )  - Remove async_get_device_class_lookup from entity_registry (@bdraco
- #114212 )  - Add YoLink Water Meter Support (@matrixd2
- #114148 )  - Bump pyenphase to 1.20.1 (@catsmanac
- #114218 )  - Add Motionblinds BLE integration (@LennP
- #109497 )  - Fix motion blinds formatting (@joostlek
- #114222 )  - Allow pre-releases for “Adjust nightly version” only (@edenhaus
- #114219 )  - Add more timestamp sensors to swiss_public_transport (@miaucl
- #107916 )  - Add label template functions (@frenck
- #111024 )  - Implement Identify button and Cloud connection toggle for HomeWizard Watermeter (@DCSBL
- #113814 )  - Don’t allow listening to state_reported in event triggers (@emontnemery
- #114191 )  - Add test to ensure non callback event filter is rejected (@emontnemery
- #114182 )  - Allow string formatting for dispatcher SignalType (@cdce8p
- #114174 )  - Add ruff commit to git-blame-ignore-revs (@cdce8p
- #114229 )  - Drop Python 3.11 support (@frenck
- #114220 )  - Bump motionblindsble to 0.0.9 (@LennP
- #114232 )  - Remove test cases for task eager_start <3.12 (@cdce8p
- #114243 )  - Default floor level to None (and allow unsetting it) (@frenck
- #114249 )  - Refactor Riemann sum integral sensor to prepare for time based trigger (@ronweikamp
- #113932 )  - Allow numeric state trigger/condition against zone entities (@frenck
- #114221 )  - Use 
setup_test_component_platformhelper for update entity component tests instead ofhass.components(@jpbede- #114203 )  - Add label selector (@frenck
- #111029 )  - Small performance improvements to energy sensors (@bdraco
- #114149 )  - Bump bring-api to 0.5.7 (@tr4nt0r
- #114252 )  - Fix ruff-format on energy sensor (@bdraco
- #114261 )  - Restore scapy pin to >=2.5.0 (@bdraco
- #114253 )  - Remove unused code in ESPHome entry_data (@bdraco
- #114263 )  - Do not late import config_entry in 
setup_test_component_platformtest helper (@jpbede- #114260 )  - Use 
setup_test_component_platformfunc for number entity component tests instead ofhass.components(@jpbede- #114017 )  - Add Ollama conversation agent (@synesthesiam
- #113962 )  - Fix Opower accounts that report cost less regularly than usage (@tronikos
- #114034 )  - Combine tts cache init executor jobs (@bdraco
- #114271 )  - Add Motionblinds brand (@LennP
- #114235 )  - Bump actions/setup-python from 5.0.0 to 5.1.0 (@dependabot - #114276
)  - Bump ondilo_ico to 0.4.0 (@JeromeHXP
- #114022 )  - Move SignalTypes to util (@cdce8p
- #114236 )  - Run recorder shutdown tasks eagerly (@bdraco
- #113018 )  - Refactor/fix search component, including labels & floors support (@frenck
- #114206 )  - Bump aiounifi to v73 (@Kane610
- #114278 )  - Avoid delaying automation/script startup for sample blueprints (@bdraco
- #114277 )  - Refactor yeelight scanner to avoid creating tasks to wait for scanner start (@bdraco
- #113919 )  - Add select to Motionblinds BLE integration (@LennP
- #114228 )  - Add buttons to Motionblinds BLE integration (@LennP
- #114227 )  - Address late review of 17track config flow (@shaiu
- #114283 )  - Remove hourly weather entity from metoffice (@gjohansson-ST
- #112452 )  - Allow Humidifier.current_humidity to be a float (@cdce8p
- #111297 )  - Do not override state property in 
MockEntity(@jpbede- #114231 )  - Allow float for int argument type [pylint plugin] (@cdce8p
- #114105 )  - Use 
setup_test_component_platformfunc for cover entity component tests instead ofhass.components(@jpbede- #114010 )  - Update mypy-dev to 1.10.0a3 (@cdce8p
- #114289 )  - Record state.last_reported (@emontnemery
- #114201 )  - Add tests to Rova (@joostlek
- #114285 )  - Use SignalType to improve typing [esphome] (@cdce8p
- #114296 )  - Use SignalType to improve typing [bthome] (@cdce8p
- #114295 )  - Update bump_version.py to append also the time to nightlies and add possibility to set manual a nightly version (@edenhaus
- #114300 )  - Add coordinator to Rova (@joostlek
- #114288 )  - Use 
setup_test_component_platformhelper for binary_sensor entity component tests instead ofhass.components(@jpbede- #114293 )  - Use SignalType to improve typing [core] (@cdce8p
- #114298 )  - Use 
setup_test_component_platformhelper for alarm_control_panel entity component tests instead ofhass.components(@jpbede- #114301 )  - Fix missing powerview shade data when initial refresh fails (@bdraco
- #113033 )  - Fix version_bump –set-nightly-version (@edenhaus
- #114304 )  - Bump pyprusalink to 2.1.1 and support Prusa MK3 (@the-ress
- #114210 )  - Raise issue if not Rova area anymore (@joostlek
- #114309 )  - Fix exception when logging out from cloud (@emontnemery
- #114306 )  - Add support for PoE control of TP-Link Omada Gateways (@MarkGodwin
- #114138 )  - Start deprecation of auxiliary heater in ClimateEntity (@gjohansson-ST
- #112532 )  - Refactor switcher kis (@YogevBokobza
- #114281 )  - Migrate Rova to has entity name (@joostlek
- #114303 )  - Version Bump for WeatherFlow Cloud Backing Lib (@jeeftor
- #114302 )  - Finish ROVA init tests (@joostlek
- #114315 )  - Bump intents to 2024.3.27 (@synesthesiam
- #114312 )  - Change min and max humidity for MQTT climate and humidifier (@jbouwh
- #114292 )  - Remove deprecated forecast attribute from WeatherEntity (@gjohansson-ST
- #110761 )  - Defensively validate ZHA quirks v2 supplied entity metadata (@dmulcahey
- #112643 )  - Handle TypeError in Spotify (@joostlek
- #114317 )  - Fix icons for Motionblinds BLE integration (@LennP
- #114321 )  - Fix feedback in ROVA (@joostlek
- #114308 )  - Use SignalType to improve typing [homekit] (@cdce8p
- #114297 )  - Support the Home Assistant Connect ZBT-1 (@puddly
- #114213 )  - Update frontend to 20240327.0 (@bramkragten
- #114322 )  - Use fallback voice for selected language in cloud (@MartinHjelmare
- #114246 )  - Bump zha-quirks to 0.0.113 (@TheJulianJES
- #114311 )  - Bump pyduotecno to 2024.3.2 (@Cereal2nd
- #114320 )  - Fix Matter airconditioner discovery of climate platform (@marcelveldt
- #114326 )  - Avoid changing local time on Nobø Ecohub (@oyvindwe
- #114332 )  - Don’t access States.last_reported_ts before it’s added (@emontnemery
- #114333 )  - Download translations only once in the build pipeline (@edenhaus
- #114335 )  - Remove checked in translations (@edenhaus
- #114336 )  - Revert velocity change in powerview (@bdraco
- #114337 )  - Add more Ollama models (@synesthesiam
- #114339 )  - Bump fjaraskupan to 2.3.0 (@elupus
- #114344 )  - Fix empty delays in script helper (@bdraco
- #114346 )  - Bump pyunifiprotect to 5.1.2 (@AngellusMortis
- #114348 )  - Fix script for checking on existing translations (@edenhaus
- #114354 )  - Improve utility meter restore state tests (@emontnemery
- #114356 )  - Improve device class of utility meter (@emontnemery
- #114368 )  - Update pytile to 2023.12.0 (@cdce8p
- #114370 )  - Fix streamlabswater feedback (@joostlek
- #114371 )  - Fix Suez water feedback (@joostlek
- #114372 )  - Fix Swiss public transport feedback (@joostlek
- #114373 )  - Fix Lupusec feedback (@joostlek
- #114374 )  - Adapt Tractive integration the latest API changes (@bieniu
- #114380 )  - Fix hassfest service icons check for custom integrations (@frenck
- #114389 )  - Filter preferred TTS format options if not supported (@synesthesiam
- #114392 )  - Fix area search for entities of devices (@frenck
- #114394 )  - Update frontend to 20240328.0 (@piitaya
- #114396 )  - Bump aioraven to 0.5.3 (@cottsay
- #114397 )  - Follow real AtlanticPassAPCZoneControlZone physical mode on Overkiz (HEAT, COOL or HEAT_COOL) (@Tronix117
- #111830 )  - Add overkiz heating status, absence mode, and boost mode binary sensors for Atlantic Water Heater (@ALERTua
- #114184 )  - Add overkiz water targets temperature numbers for Atlantic water heater (@ALERTua
- #114185 )  - Add overkiz bottom tank water temperature and core control water temperature for Atlantic Water Heater (@ALERTua
- #114186 )  - Avoid concurrent radio operations with powerview hubs (@bdraco
- #114399 )  - Cleanup some plex tasks that delayed startup (@bdraco
- #114418 )  - Bump python-ring-doorbell to 0.8.8 (@sdb9696
- #114431 )  - Bump pyoverkiz to 1.13.9 (@iMicknl
- #114442 )  - Log warnings in Renault initialisation (@epenet
- #114445 )  - Bump async-upnp-client to 0.38.3 (@StevenLooman
- #114447 )  - Update frontend to 20240329.0 (@piitaya
- #114452 )  - Avoid tracking import executor jobs (@bdraco
- #114453 )  - Update frontend to 20240329.1 (@piitaya
- #114459 )  - Cleanup Shelly RGBW light entities (@thecode
- #114410 )  - Mark executor jobs as background unless created from a tracked task (@bdraco
- #114450 )  - Add initial support for floors to intents (@synesthesiam
- #114456 )  - Improve sonos test synchronization (@bdraco
- #114468 )  - Fix Overkiz Hitachi OVP air-to-air heat pump (@dotvav
- #114487 )  - Fix late load of anyio doing blocking I/O in the event loop (@bdraco
- #114491 )  - Fix workday doing blocking I/O in the event loop (@bdraco
- #114492 )  - Fix server update from breaking setup in Speedtest.NET (@gjohansson-ST
- #114524 )  - Bump axis to v60 (@Kane610
- #114544 )  - Fix wrong icons (@joostlek
- #114567 )  - Bump velbusaio to 2024.4.0 (@Cereal2nd
- #114569 )  - Reduce usage of executer threads in AVM Fritz!Tools (@mib1185
- #114570 )  - Filter out ignored entries in ssdp step of AVM Fritz!SmartHome (@mib1185
- #114574 )  - Bump plexapi to 4.15.11 (@jjlawren
- #114581 )  - Fix reolink media source data access (@MartinHjelmare
- #114593 )  - Bump zeroconf to 0.132.0 (@bdraco
- #114596 )  - Add missing platforms_exist guard to check_config (@bdraco
- #114600 )  - Fix memory leak when importing a platform fails (@bdraco
- #114602 )  - Avoid storing raw extracted traceback in system_log (@bdraco
- #114603 )  - Bump whirlpool-sixth-sense to 0.18.7 (@mkmer
- #114606 )  - Display sonos album title with URL encoding (@PeteRager
- #113693 )  - Bump roombapy to 1.8.1 (@joostlek
- #114478 )  - Improve Shelly RPC device update progress (@bieniu
- #114566 )  - Fix battery heater in Tessie (@Bre77
- #114568 )  - Add diagnostic platform to Whirlpool (@mkmer
- #114578 )  - Catch potential ValueError when getting or setting Starlink sleep values (@boswelja
- #114607 )  - Bump opower to 0.4.2 (@max2697
- #114608 )  - Add floor selector (@frenck
- #114614 )  - Fix Starlink integration startup issue (@Fexiven
- #114615 )  - Update frontend to 20240402.0 (@bramkragten
- #114627 )  - Reduce ZHA OTA logbook entries and extraneous updates (@puddly
- #114591 )  - Fix Overkiz Hitachi OVP air-to-air heat pump (@dotvav
- #114611 )  - Bump ring_doorbell integration to 0.8.9 (@sdb9696
- #114631 )  - Update frontend to 20240402.1 (@bramkragten
- #114646 )  - Fix Sonos play imported playlists (@PeteRager
- #113934 )  - Bump aiounifi to v74 (@Kane610
- #114649 )  - Add missing state to the Tractive tracker state sensor (@bieniu
- #114654 )  - Bump holidays to 0.46 (@gjohansson-ST
- #114657 )  - Avoid trying to load platform that are known to not exist in async_prepare_setup_platform (@bdraco
- #114659 )  - Update frontend to 20240402.2 (@bramkragten
- #114683 )  - Rename Motionblinds BLE integration to Motionblinds Bluetooth (@LennP
- #114584 )  - Bump flexit_bacnet to 2.2.1 (@lellky
- #114641 )  - Import zha quirks in the executor (@dmulcahey
- #114685 )  - Fix Downloader config flow (@joostlek
- #114718 )  - Avoid blocking IO in downloader config flow (@joostlek
- #114741 )  - Update frontend to 20240403.0 (@bramkragten
- #114747 )  - Allow passing area/device/entity IDs to floor_id and floor_name (@edenhaus
- #114748 )  - Bump intents (@synesthesiam
- #114755 )  - Update frontend to 20240403.1 (@bramkragten
- #114756 )  - Fix Synology DSM setup in case no Surveillance Station permission (@mib1185
- #114757 )  - Fix for Sonos URL encoding problem #102557 (@IngoK1
- #109518 )  - Use 
setup_test_component_platformhelper for sensor entity component tests instead ofhass.components(@jpbede- #114316 )  
Release 2024.4.1 - April 5
- Update aioairzone-cloud to v0.4.7 (@Noltari
- #114761 )  - Bump myuplink dependency to 0.6.0 (@astrandb
- #114767 )  - Update romy to 0.0.9 (@cdce8p
- #114360 )  - Update romy to 0.0.10 (@xeniter
- #114785 )  - Fix unhandled 
KeyErrorduring Notion setup (@bachya- #114787 )  - Fix Lutron light brightness values (@cdheiser
- #114794 )  - Fix type cast in snmp (@lextm
- #114795 )  - Handle ambiguous script actions by using action map order (@bdraco
- #114825 )  - Bump opower to 0.4.3 (@tronikos
- #114826 )  - Refactor ConfigStore to avoid needing to pass config_dir (@bdraco
- #114827 )  - Avoid blocking IO in downloader initialization (@joostlek
- #114841 )  - Fix Downloader YAML import (@joostlek
- #114844 )  - Update frontend to 20240404.0 (@bramkragten
- #114859 )  - Fix Axis camera platform support HTTPS (@Kane610
- #114886 )  - Bump weatherflow4py to 0.2.20 (@jeeftor
- #114888 )  - Fix Axis reconfigure step not providing protocols as alternatives but as string (@Kane610
- #114889 )  - Update frontend to 20240404.1 (@bramkragten
- #114890 )  - Ensure all tables have the default table args in the db_schema (@bdraco
- #114895 )  - Reduce august polling frequency (@bdraco
- #114904 )  - Show correct model string in myuplink (@astrandb
- #114921 )  - Create right import issues in Downloader (@joostlek
- #114922 )  - Fix cast dashboard in media browser (@joostlek
- #114924 )  - Pin systembridgemodels to 4.0.4 (@timmo001
- #114842 )  - Fix ROVA validation (@joostlek
- #114938 )  
Release 2024.4.2 - April 8
- Fix hang in SNMP device_tracker implementation (@nmaggioni
- #112815 )  - Fix missing if statement in homematic (@bbr111
- #114832 )  - Bump pylitterbot to 2023.4.11 (@natekspencer
- #114918 )  - Fix Snapcast Config flow (@joostlek
- #114952 )  - Bump axis to v61 (@Kane610
- #114964 )  - Filter out fuzzy translations from Lokalise (@joostlek
- #114968 )  - Upgrade to pynobo 1.8.1 (@oyvindwe
- #114982 )  - Fix dictionary changed size during iteration in prometheus (@bdraco
- #115005 )  - Bump 
brotherto version 4.1.0 (@bieniu- #115021 )  - Bump yolink-api to 0.4.2 (@matrixd2
- #115026 )  - Update xknxproject to 3.7.1 (@farmio
- #115053 )  - Fix synology_dsm availablity (@bdraco
- #115073 )  - Downgrade hass-nabucasa from 0.80.0 to 0.78.0 (@ludeeus
- #115078 )  - Bump velbus-aio to 2024.4.1 (@Cereal2nd
- #115109 )  - Terminate scripts with until and while conditions that execute more than 10000 times (@bdraco
- #115110 )  - improve handling of incorrect values in fyta integration (@dontinelli
- #115134 )  - Bump fyta_cli to 0.3.5 (@dontinelli
- #115143 )  - Fix fibaro sensor additional sensor lookup (@rappenze
- #115148 )  - Write timer entity state before firing events (@bdraco
- #115151 )  - Avoid checking for polling if an entity fails to add (@bdraco
- #115159 )  - Only reset requested utility meter with no tariff (@gibwar
- #115170 )  
Release 2024.4.3 - April 12
- Bump aiohttp to 3.9.4 (@bdraco
- #110730 )  - Add support for adopt data disk repair (@mdegat01
- #114891 )  - Improve Risco exception logging (@OnFreund
- #115232 )  - Configurable maximum concurrency in Risco local (@OnFreund
- #115226 )  - Fix misssing timeout in caldav (@bdraco
- #115247 )  - Fix Google Tasks parsing of remove responses (@allenporter
- #115258 )  - Bump forecast-solar lib to v3.1.0 (@klaasnicolaas
- #115272 )  - Support backup of add-ons with hyphens (@agners
- #115274 )  - Bump pymodbus v3.6.7 (@janiversen
- #115279 )  - Bump yt-dlp to 2024.04.09 (@joostlek
- #115295 )  - Fix Aranet failure when the Bluetooth proxy is not providing a device name (@thecode
- #115298 )  - Bump zha-quirks to 0.0.114 (@TheJulianJES
- #115299 )  - Ensure automations do not execute from a trigger if they are disabled (@bdraco
- #115305 )  - Bump bleak-retry-connector 3.5.0 (@bdraco
- #115328 )  - Secure against resetting a non active modbus (@janiversen
- #115364 )  - Solve modbus test problem (@janiversen
- #115376 )  - Fix deadlock in holidays dynamic loading (@bdraco
- #115385 )  - Bump whirlpool-sixth-sense to 0.18.8 (@NodeJSmith
- #115393 )  - Fix bug in rainbird switch when turning off a switch that is already off (@allenporter
- #115421 )  - Bump pybotvac to 0.0.25 (@Santobert
- #115435 )  - Update frontend to 20240404.2 (@bramkragten
- #115460 )  
Release 2024.4.4 - April 23
- Bump slixmpp version to 1.8.5 (@ravermeister
- #114448 )  - Make Withings recoverable after internet outage (@joostlek
- #115124 )  - Fix Hyperion light not updating state (@avee87
- #115389 )  - Add scheduled mode to renault charge mode (@slyoldfox
- #115427 )  - Bump zeroconf to 0.132.1 (@bdraco
- #115501 )  - Bump zeroconf to 0.132.2 (@bdraco
- #115505 )  - Update pillow to 10.3.0 (@cdce8p
- #115524 )  - Fix race in TimestampDataUpdateCoordinator (@bdraco
- #115542 )  - Fix Teslemetry sensor values (@Bre77
- #115571 )  - Modbus: Bump pymodbus v3.6.8 (@janiversen
- #115574 )  - Fix sensor entity description in Teslemetry (@Bre77
- #115614 )  - Bump httpcore to 1.0.5 (@bdraco
- #115672 )  - Bump sqlparse to 0.5.0 (@bdraco
- #115681 )  - Bump aiohttp to 3.9.5 (@bdraco
- #115727 )  - Bump renault-api to 0.2.2 (@epenet
- #115738 )  - Fix homeworks import flow (@emontnemery
- #115761 )  - Allow [##:##:##] type keypad address in homeworks (@emontnemery
- #115762 )  - Add missing media_player features to Samsung TV (@chemelli74
- #115788 )  - Bump aiounifi to v75 (@Kane610
- #115819 )  - Ensure scripts with timeouts of zero timeout immediately (@bdraco
- #115830 )  - Fix KeyError error when fetching sensors (Airthings) (@LaStrada
- #115844 )  - Bump plexapi to 4.15.12 (@jjlawren
- #115872 )  - Bump ical to 8.0.0 (@allenporter
- #115907 )  - Fix geo location attributes of Tankerkoenig sensors (@mib1185
- #115914 )  - Use start helper in squeezebox for server discovery (@rajlaud
- #115978 )