From 0efe887ca5a2cd5dfe25c1a14c020b7b18a8a27a Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Wed, 5 Jun 2024 20:16:24 +0200 Subject: [PATCH] 2024.6: Added changelog --- .../_posts/2024-06-05-release-20246.markdown | 2 +- source/changelogs/core-2024.6.markdown | 2840 +++++++++++++++++ 2 files changed, 2841 insertions(+), 1 deletion(-) diff --git a/source/_posts/2024-06-05-release-20246.markdown b/source/_posts/2024-06-05-release-20246.markdown index aa9f897b3b6..45ee58c3a19 100644 --- a/source/_posts/2024-06-05-release-20246.markdown +++ b/source/_posts/2024-06-05-release-20246.markdown @@ -85,7 +85,7 @@ livestream on June the 26th! Keep an eye out for that! 🎙️ ### Dipping our toes in the world of AI using LLMs -Our voice assistant's brain is called a **conversation agent**. +Our voice assistant's brain is called a _conversation agent_. It is responsible for understanding the intention behind the spoken command, performing an action, and generating a response. diff --git a/source/changelogs/core-2024.6.markdown b/source/changelogs/core-2024.6.markdown index 3f0f69a05d5..9194ec678c2 100644 --- a/source/changelogs/core-2024.6.markdown +++ b/source/changelogs/core-2024.6.markdown @@ -11,3 +11,2843 @@ For a summary in a more readable format: ## All changes +- Add all supported languages to Google Translate and remove unsupported ones ([@prabhjotsbhatia-ca] - [#107404]) +- Bump version to 2024.6.0dev0 ([@frenck] - [#116120]) +- Add play/pause functionality for Vizio Smartcast media_player entities ([@NasaGeek] - [#108896]) +- Bump actions/checkout from 4.1.3 to 4.1.4 (@dependabot - [#116147]) +- Bump actions/download-artifact from 4.1.6 to 4.1.7 (@dependabot - [#116148]) +- Update mypy to 1.10.0 ([@cdce8p] - [#116158]) +- Bump aioautomower to 2024.4.4 ([@Thomas55555] - [#116185]) +- Add support for Aranet radiation devices ([@Anrijs] - [#115239]) +- Bump dropmqttapi to 1.0.3 ([@pfrazer] - [#116179]) +- Use snapshots in Linear diagnostics tests ([@joostlek] - [#116169]) +- Add strict typing to husqvarna automower ([@Thomas55555] - [#115374]) +- Improve linear coordinator ([@joostlek] - [#116167]) +- Use existing monotonic timestamp on mqtt messages for debugging ([@jbouwh] - [#116196]) +- Reduce scope of JSON/XML test fixtures ([@emontnemery] - [#116197]) +- Bump ruff to 0.4.2 ([@autinerd] - [#116201]) +- Bump github/codeql-action from 3.25.2 to 3.25.3 (@dependabot - [#116209]) +- Fix flapping trafikverket tests ([@emontnemery] - [#116238]) +- Remove myself as codeowner for Harmony ([@bramkragten] - [#116241]) +- Simplify timezone setting in recorder test ([@emontnemery] - [#116220]) +- Reduce scope of bluetooth test fixtures ([@emontnemery] - [#116210]) +- Fix flapping recorder tests ([@emontnemery] - [#116239]) +- Reduce scope of ZHA test fixtures ([@emontnemery] - [#116208]) +- Add HA version to cache key ([@cdce8p] - [#116159]) +- Make freezegun find event.time_tracker_utcnow ([@emontnemery] - [#116284]) +- Avoid update call in entity state write if there is no customize data ([@bdraco] - [#116296]) +- Add a fast path for _stringify_state when state is already a str ([@bdraco] - [#116295]) +- Reduce number of time calls needed to write state ([@bdraco] - [#116297]) +- Increase the Hydrawise refresh frequency from 120s to 30s ([@dknowles2] - [#116298]) +- Use more shorthand attrs in emonitor ([@bdraco] - [#116307]) +- Unifi: enable statistics for PoE port power sensor ([@wittypluck] - [#116308]) +- Convert Linear to use a base entity ([@IceBotYT] - [#116133]) +- Add a cache to _verify_event_type_length_or_raise ([@bdraco] - [#116312]) +- Remove unneeded TYPE_CHECKING guard in core async_set ([@bdraco] - [#116311]) +- Make storage load tasks background tasks to avoid delaying shutdown ([@bdraco] - [#116332]) +- Refactor group setup ([@jbouwh] - [#116317]) +- Fix incorrect call to async_schedule_update_ha_state in command_line switch ([@bdraco] - [#116347]) +- Add test helper to remove device ([@epenet] - [#116234]) +- Speed up singleton decorator so it can be used more places ([@bdraco] - [#116292]) +- Fix incorrect call to async_schedule_update_ha_state in generic_hygrostat ([@bdraco] - [#116349]) +- Fix incorrect call to async_schedule_update_ha_state in manual_mqtt ([@bdraco] - [#116348]) +- Remove eager_start argument from internal _async_add_hass_job function ([@bdraco] - [#116310]) +- Avoid creating tasks to update universal media player ([@bdraco] - [#116350]) +- Bump total_connect_client to 2024.4 ([@austinmroczek] - [#116360]) +- Use built-in aiohttp timeout instead of asyncio.timeout in media_player ([@bdraco] - [#116364]) +- Reduce scope of test fixtures for the pylint plugin tests ([@emontnemery] - [#116207]) +- Add Button for TotalConnect ([@austinmroczek] - [#114530]) +- Add icons and translations to Habitica ([@tr4nt0r] - [#116204]) +- Update freezegun to 1.5.0 ([@cdce8p] - [#116375]) +- Update pytest-xdist to 3.6.1 ([@cdce8p] - [#116377]) +- Update pipdeptree to 2.19.0 ([@cdce8p] - [#116376]) +- Update respx to 0.21.1 ([@cdce8p] - [#116380]) +- Update uv to 0.1.39 ([@cdce8p] - [#116381]) +- Update types packages ([@cdce8p] - [#116382]) +- Small cleanups to climate entity feature compat ([@bdraco] - [#116361]) +- Add Ollama Conversation Agent Entity ([@allenporter] - [#116363]) +- Address late review in Honeywell ([@mkmer] - [#115702]) +- Fix typo in Switchbot cloud ([@joostlek] - [#116388]) +- Fix grammar in internal function comments ([@bdraco] - [#116387]) +- Add service to log all the current asyncio Tasks to the profiler ([@bdraco] - [#116389]) +- Report webOS media player state ([@rale] - [#113774]) +- Add error translations to AVM Fritz!Tools ([@mib1185] - [#116413]) +- Add Workarea cutting height to Husqvarna Automower ([@Thomas55555] - [#116115]) +- Revert "Remove strict connection" ([@edenhaus] - [#116416]) +- Add Open Home Foundation link ([@GuySie] - [#116405]) +- Update pytest to 8.2.0 ([@cdce8p] - [#116379]) +- Remove entity category "system" check from entity registry ([@gjohansson-ST] - [#116412]) +- Update fyta async_migrate_entry ([@dontinelli] - [#116433]) +- Store runtime data inside ConfigEntry ([@cdce8p] - [#115669]) +- Use remove_device helper in tests (2/2) ([@epenet] - [#116442]) +- Use remove_device helper in tests (1/2) ([@epenet] - [#116240]) +- Store runtime data in entry in Withings ([@joostlek] - [#116439]) +- Store runtime data in entry in onewire ([@epenet] - [#116450]) +- Add pydantic to skip-binary ([@bdraco] - [#116406]) +- Remove entity description mixin in NextDNS ([@bieniu] - [#116456]) +- Move Renault service registration ([@epenet] - [#116459]) +- Store runtime data in entry in renault ([@epenet] - [#116454]) +- Mock dwdwfsapi in all tests that use it ([@andarotajo] - [#116414]) +- Small performance improvements to ingress forwarding ([@bdraco] - [#116457]) +- Avoid netloc ipaddress re-encoding to construct ingress urls ([@bdraco] - [#116431]) +- Avoid re-encoding the message id as bytes for every event/state change ([@bdraco] - [#116460]) +- Bump pydantic constraint ([@AngellusMortis] - [#116401]) +- Bring sensibo to full coverage (again) ([@gjohansson-ST] - [#116469]) +- Store runtime data in entry in Ecovacs ([@edenhaus] - [#116445]) +- Make a copy of capability_attributes instead of making a new dict ([@bdraco] - [#116477]) +- Use websocket client to test device removal in Unifi ([@wittypluck] - [#116309]) +- Remove unused argument from DWD coordinator ([@joostlek] - [#116496]) +- Add IMGW-PIB integration ([@bieniu] - [#116468]) +- Workday only update once a day ([@gjohansson-ST] - [#116419]) +- Store GIOS runtime data in entry ([@bieniu] - [#116510]) +- Bump yalexs to 3.1.0 ([@bdraco] - [#116511]) +- Simplify MQTT mid handling ([@bdraco] - [#116522]) +- Reduce timestamp function call overhead in core states ([@bdraco] - [#116517]) +- Store runtime data inside the config entry in AVM Fritz!Smarthome ([@mib1185] - [#116523]) +- Add diagnostics platform to IMGW-PIB integration ([@bieniu] - [#116551]) +- Use runtime data in Yale Smart Alarm ([@gjohansson-ST] - [#116548]) +- Use runtime data for FritzBox Call Monitor ([@cdce8p] - [#116553]) +- Store runtime data inside the config entry in Tankerkoenig ([@mib1185] - [#116532]) +- Store runtime data inside the config entry in Proximity ([@mib1185] - [#116533]) +- Store runtime data inside the config entry in PegelOnline ([@mib1185] - [#116534]) +- Use config entry runtime data in Trafikverket Weather ([@gjohansson-ST] - [#116554]) +- Use config entry runtime data in Trafikverket Camera ([@gjohansson-ST] - [#116552]) +- Use config entry runtime data in Sensibo ([@gjohansson-ST] - [#116530]) +- Use config entry runtime data in Trafikverket Ferry ([@gjohansson-ST] - [#116557]) +- Use config entry runtime data in Trafikverket Train ([@gjohansson-ST] - [#116556]) +- Store runtime data in entry in Analytics Insights ([@joostlek] - [#116441]) +- Remove duplicate mid handling in MQTT ([@bdraco] - [#116531]) +- Improve tankerkoenig generic coordinator typing ([@cdce8p] - [#116560]) +- Improve airly generic coordinator typing ([@cdce8p] - [#116561]) +- Improve asuswrt decorator typing ([@cdce8p] - [#116563]) +- Improve fitbit generic coordinator typing ([@cdce8p] - [#116562]) +- Bump pydrawise to 2024.4.1 ([@dknowles2] - [#116449]) +- Address late review for Husqvarna Automower ([@Thomas55555] - [#116536]) +- Bump sigstore/cosign-installer from 3.4.0 to 3.5.0 (@dependabot - [#115399]) +- Bump codecov/codecov-action from 4.3.0 to 4.3.1 (@dependabot - [#116592]) +- Add shutter tilt support for Shelly Wave Shutter QNSH-001P10 ([@blob810] - [#116211]) +- Use runtime_data for acmeda ([@cdce8p] - [#116606]) +- Use runtime_data for airvisual_pro ([@cdce8p] - [#116607]) +- Use runtime_data for ambient_station ([@cdce8p] - [#116608]) +- Use entry.runtime_data in Fronius ([@farmio] - [#116604]) +- Use runtime_data for co2signal ([@cdce8p] - [#116612]) +- Use runtime_data for bond ([@cdce8p] - [#116611]) +- Use runtime_data for august ([@cdce8p] - [#116610]) +- Add `binary_sensor` platform to IMGW-PIB integration ([@bieniu] - [#116624]) +- Use runtime_data for airthings_ble ([@cdce8p] - [#116623]) +- Use runtime_data for airtouch5 ([@cdce8p] - [#116625]) +- Use runtime_data for aftership ([@cdce8p] - [#116618]) +- Cleanup removed MQTT broker settings ([@jbouwh] - [#116633]) +- Use runtime_data for airq ([@cdce8p] - [#116620]) +- Use runtime_data for airthings ([@cdce8p] - [#116622]) +- Use runtime_data for airnow ([@cdce8p] - [#116619]) +- Refactor group state logic ([@jbouwh] - [#116318]) +- Add vesync Vital 100S UK & EU Model mappings ([@JonDeeming] - [#115948]) +- Cleanup unused class attr for MQTT config flow ([@jbouwh] - [#116653]) +- Improve docstring on roborock image entity method ([@jbouwh] - [#116654]) +- Replace pyserial-asyncio with pyserial-asyncio-fast in serial ([@bdraco] - [#116636]) +- Fix flaky hassio test ([@emontnemery] - [#116658]) +- Cleanup MQTT sensor last_reset_topic config parameter a year after removal ([@jbouwh] - [#116657]) +- Add ecobee ventilator 20 min timer ([@marcolivierarsenault] - [#115969]) +- Migrate bluetooth to use the singleton helper ([@bdraco] - [#116629]) +- Clean up small changes from OpenAI conversation entity change ([@allenporter] - [#116395]) +- Convert history tests to use async API ([@emontnemery] - [#116447]) +- Drop pyserial-asyncio from zha ([@bdraco] - [#116638]) +- Add title feature to notify entity platform ([@jbouwh] - [#116426]) +- Bump `imgw_pib` to version 1.0.1 ([@bieniu] - [#116630]) +- Bump habluetooth to 3.0.1 ([@bdraco] - [#116663]) +- Move NAM Data Update Coordinator to the coordinator module ([@bieniu] - [#116686]) +- Fix fyta test warning ([@cdce8p] - [#116688]) +- Fix snapcast test warning ([@cdce8p] - [#116687]) +- Add test for HA stop to devolo Home Control ([@Shutgun] - [#116682]) +- Use `runtime_data` to store NextDNS data ([@bieniu] - [#116691]) +- Use ConfigEntry runtime_data in devolo Home Control ([@Shutgun] - [#116672]) +- EntityDescription doesn't need to be generic for NextDNS binary sensor and switch platforms ([@bieniu] - [#116697]) +- Convert sensor recorder tests to use async API ([@emontnemery] - [#116373]) +- Convert recorder entity registry tests to use async API ([@emontnemery] - [#116448]) +- Bump `nettigo-air-monitor` to version 3.0.1 ([@bieniu] - [#116699]) +- Cleanup OpenAI and Ollama conversation entities ([@allenporter] - [#116714]) +- Use ConfigEntry runtime_data in Discovergy ([@jpbede] - [#116671]) +- Use runtime_data in Axis integration ([@Kane610] - [#116729]) +- Fix active state mapping in wolflink ([@mtielen] - [#116659]) +- Fix UpdateCoordinator types in CoordinatorWeatherEntity constructor ([@kamiyo] - [#116747]) +- Bump ruff to 0.4.3 ([@autinerd] - [#116749]) +- Store runtime data inside the config entry in DWD ([@mib1185] - [#116764]) +- Store runtime data inside the config entry in Shelly ([@mib1185] - [#116763]) +- Improve CoordinatorWeatherEntity generic typing ([@cdce8p] - [#116760]) +- Update unique_id to string in Honeywell ([@mkmer] - [#116726]) +- Store BraviaTV data in config_entry.runtime_data ([@bieniu] - [#116778]) +- Move Brother DataUpdateCoordinator to the coordinator module ([@bieniu] - [#116772]) +- Store runtime data inside the config entry in Met.no ([@mib1185] - [#116767]) +- Store runtime data inside the config entry in Nextcloud ([@mib1185] - [#116790]) +- Store runtime data inside the config entry in SamsungTV ([@mib1185] - [#116787]) +- Store runtime data inside the config entry in OpenWeatherMap ([@mib1185] - [#116788]) +- Store runtime data inside the config entry in VLC telnet ([@mib1185] - [#116803]) +- Store runtime data inside the config entry in Speedtest.net ([@mib1185] - [#116802]) +- Store runtime data inside the config entry in Pi-Hole ([@mib1185] - [#116806]) +- Store runtime data inside the config entry in NUT ([@mib1185] - [#116771]) +- Store runtime data inside the config entry in Sun ([@mib1185] - [#116808]) +- Store runtime data inside the config entry in Local ToDo ([@mib1185] - [#116818]) +- Store runtime data inside the config entry in Certificate Expiry ([@mib1185] - [#116819]) +- Store runtime data inside the config entry in Bring ([@tr4nt0r] - [#116820]) +- Store runtime data inside the config entry in System Monitor ([@mib1185] - [#116816]) +- Store runtime data inside the config entry in Android TV Remote ([@mib1185] - [#116824]) +- Migrate properties to instance variables in NAM coordinator ([@bieniu] - [#116703]) +- Move Totalconnect coordinator to separate module ([@joostlek] - [#116368]) +- Correct stale docstring on mqtt config flow method ([@jbouwh] - [#116848]) +- Use parametrize in drop connect sensor tests ([@joostlek] - [#107078]) +- Increase test coverage for Total Connect ([@bieniu] - [#116851]) +- Bump tcc to 2024.5 ([@austinmroczek] - [#116827]) +- Add Sensor descriptions for Bosch SHC ([@joostlek] - [#116775]) +- Add update coordinator for Habitica integration ([@tr4nt0r] - [#116427]) +- Remove timeout option and set timeout static to 30 seconds in Synology DSM ([@mib1185] - [#116815]) +- Improve recorder and worker thread matching in RecorderPool ([@bdraco] - [#116886]) +- Replace utcnow().timestamp() with time.time() in auth_store ([@bdraco] - [#116879]) +- Refactor entity_platform polling to avoid double time fetch ([@bdraco] - [#116877]) +- Turn on thread safety checks in async_dispatcher_send ([@bdraco] - [#116867]) +- Keep august offline key up to date when it changes ([@bdraco] - [#116857]) +- Index auth token ids to avoid linear search ([@bdraco] - [#116583]) +- Switch out aiohttp-isal for aiohttp-fast-zlib to make isal optional ([@bdraco] - [#116814]) +- Abort Minecraft Server config flow if device is already configured ([@elmurato] - [#116852]) +- Store runtime data inside the config entry in AndroidTV ([@ollo69] - [#116895]) +- Bump Habitipy to 0.3.1 ([@tr4nt0r] - [#116378]) +- Bump bring-api to 0.7.1 ([@tr4nt0r] - [#115532]) +- Bump google-generativeai to v0.5.2 ([@tronikos] - [#116845]) +- Move thread safety check in issue_registry sooner ([@bdraco] - [#116899]) +- Only call conversation should_expose once ([@balloob] - [#116891]) +- Handle errors retrieving Ondilo data and bump ondilo to 0.5.0 ([@JeromeHXP] - [#115926]) +- Convert recorder init tests to use async API ([@emontnemery] - [#116918]) +- Store runtime data inside the config entry in AsusWrt ([@ollo69] - [#116889]) +- Reduce API calls to fetch Habitica tasks ([@tr4nt0r] - [#116897]) +- Add new sensors to IMGW-PIB integration ([@bieniu] - [#116631]) +- Add snapshot tests to Ondilo Ico ([@joostlek] - [#116929]) +- Convert recorder history tests to use async API ([@emontnemery] - [#116909]) +- Convert recorder statistics tests to use async API ([@emontnemery] - [#116925]) +- Simplify config entry check in SamsungTV ([@epenet] - [#116907]) +- Convert recorder util tests to use async API ([@emontnemery] - [#116926]) +- Convert recorder auto_repairs tests to use async API ([@emontnemery] - [#116927]) +- Fix search/replace mistake in recorder tests ([@emontnemery] - [#116933]) +- Store runtime data inside the config entry in Radio Browser ([@mib1185] - [#116821]) +- Small speed ups to async_get_integration ([@bdraco] - [#116900]) +- Set pH device class in Ondilo Ico ([@joostlek] - [#116930]) +- Fix wiz test warning ([@cdce8p] - [#116693]) +- Add dataclass to Ondilo Ico ([@joostlek] - [#116928]) +- Use runtime_data for elgato ([@cdce8p] - [#116614]) +- Remove deprecated WAQI state attributes ([@joostlek] - [#116595]) +- Use runtime_data for wled ([@cdce8p] - [#116615]) +- Use ConfigEntry runtime_data in TwenteMilieu ([@frenck] - [#116642]) +- AccuWeather tests refactoring ([@bieniu] - [#116923]) +- Allow the rounding to be optional in integral ([@elupus] - [#116884]) +- Store AccuWeather runtime data in config entry ([@bieniu] - [#116946]) +- Revert polling interval back to orginal value in Wolflink ([@mtielen] - [#116758]) +- Replace pylint protected-access with Ruff SLF001 ([@autinerd] - [#115735]) +- Snapshot Ondilo Ico devices ([@joostlek] - [#116932]) +- Handle exceptions in panic button for Yale Smart Alarm ([@gjohansson-ST] - [#116515]) +- Allow reconfiguration of integration sensor ([@elupus] - [#116740]) +- Remove ambiclimate integration ([@gjohansson-ST] - [#116410]) +- Use ConfigEntry runtime_data in devolo Home Network ([@Shutgun] - [#116694]) +- Correct formatting mqtt MQTT_DISCOVERY_DONE and MQTT_DISCOVERY_UPDATED message ([@jbouwh] - [#116947]) +- Bump orjson to 3.10.3 ([@bdraco] - [#116945]) +- Correct typo in MQTT translations ([@jbouwh] - [#116956]) +- Bump python-holidays to 0.48 ([@gjohansson-ST] - [#116951]) +- Make Idasen Desk react to bluetooth changes ([@abmantis] - [#115939]) +- Bump aioautomower to 2024.5.0 ([@Thomas55555] - [#116942]) +- Review AndroidTV decorator exception management ([@ollo69] - [#114133]) +- Upgrade to hdate 0.10.8 ([@SLaks] - [#116202]) +- Bump SQLAlchemy to 2.0.30 ([@bdraco] - [#116964]) +- Add HassDict implementation ([@cdce8p] - [#103844]) +- Add support for round-robin DNS ([@pemontto] - [#115218]) +- Fix flakey test in Husqvarna Automower ([@Thomas55555] - [#116981]) +- Update tqdm to 4.66.4 ([@cdce8p] - [#116984]) +- Replace pylint broad-except with Ruff BLE001 ([@autinerd] - [#116250]) +- Store Philips TV runtime data in config entry ([@bieniu] - [#116952]) +- Clean up Ondilo config flow ([@joostlek] - [#116931]) +- Update imports from alarm_control_panel ([@cdce8p] - [#117014]) +- Return raw API data for subaru device diagnostics ([@G-Two] - [#114119]) +- Use HassKey for registries ([@cdce8p] - [#117000]) +- Use HassKey for setup and bootstrap ([@cdce8p] - [#116998]) +- Use HassKey for helpers (2) ([@cdce8p] - [#117013]) +- Use HassKey for helpers (1) ([@cdce8p] - [#117012]) +- Improve energy platform typing ([@cdce8p] - [#117003]) +- Use HassKey for loader ([@cdce8p] - [#116999]) +- Only log loop client subscription log if log level is DEBUG ([@jbouwh] - [#117008]) +- Add SignificantChangeProtocol to improve platform typing ([@cdce8p] - [#117002]) +- Holiday update calendar once per day ([@gjohansson-ST] - [#116421]) +- Improve issue_registry event typing ([@cdce8p] - [#117023]) +- Add Tado reconfigure step ([@erwindouna] - [#115970]) +- Use entry runtime data on Filesize ([@gjohansson-ST] - [#116962]) +- Add Monzo integration ([@JakeMartin-ICL] - [#101731]) +- Use singleton helper for registries ([@bdraco] - [#117027]) +- Add MediaSourceProtocol to improve platform typing ([@cdce8p] - [#117001]) +- Add flow and rain sensor support to Hydrawise ([@thomaskistler] - [#116303]) +- Add climate temp ranges support for Airzone Cloud ([@Noltari] - [#115025]) +- Fix double executor in Filesize ([@gjohansson-ST] - [#117029]) +- Add Venstar HVAC stage sensor ([@jhollowe] - [#107510]) +- Store Airly runtime data in config entry ([@bieniu] - [#117031]) +- Store runtime data inside the config entry in Upnp ([@mib1185] - [#117030]) +- Store runtime data inside the config entry in Apple TV ([@mib1185] - [#117032]) +- Move thread safety in label_registry sooner ([@bdraco] - [#117026]) +- Fix capitalization in Monzo strings ([@joostlek] - [#117035]) +- Move thread safety in floor_registry sooner ([@bdraco] - [#117044]) +- Update eq3btsmart library dependency to 1.1.8 ([@EuleMitKeule] - [#117051]) +- Move thread safety check in category_registry sooner ([@bdraco] - [#117050]) +- Intent target matching and media player enhancements ([@synesthesiam] - [#115445]) +- Add service waze_travel_time.get_travel_times ([@eifinger] - [#108170]) +- Store runtime data inside the config entry in IPP ([@mib1185] - [#116765]) +- Set the quality scale to platinum for IMGW-PIB integration ([@bieniu] - [#116912]) +- Store Tractive data in `config_entry.runtime_data` ([@bieniu] - [#116781]) +- Use runtime_data in webmin ([@autinerd] - [#117058]) +- User eager task in github config flow ([@emontnemery] - [#117066]) +- Bump aiovodafone to 0.6.0 ([@chemelli74] - [#117064]) +- Apply late review on Synology DSM ([@mib1185] - [#117060]) +- Bump pylutron to 0.2.13 ([@joostlek] - [#117062]) +- Bump bleak to 0.22.0 ([@bdraco] - [#116955]) +- Convert Anova to cloud push ([@Lash-L] - [#109508]) +- Add an add template filter ([@Troon] - [#109884]) +- Correct state class of ecowitt hourly rain rate sensors ([@pantonvich] - [#110475]) +- Add `open` state to LockEntity ([@gjohansson-ST] - [#111968]) +- Fix nibe_heatpump climate for models without cooling support ([@tizianodeg] - [#114599]) +- Migrate baf to use config entry runtime_data ([@bdraco] - [#117081]) +- Add open and opening state support to MQTT lock ([@jbouwh] - [#117110]) +- Avoid storing Bluetooth scanner in hass.data ([@bdraco] - [#117074]) +- Migrate govee_ble to use config entry runtime_data ([@bdraco] - [#117076]) +- Avoid creating a task to clear the hass instance at test teardown ([@bdraco] - [#117103]) +- Avoid creating inner tasks to load storage ([@bdraco] - [#117099]) +- Speed up tests by making mock_get_source_ip session scoped ([@bdraco] - [#117096]) +- Migrate yalexs_ble to use config entry runtime_data ([@bdraco] - [#117082]) +- Migrate elkm1 to use config entry runtime_data ([@bdraco] - [#117077]) +- Bump python-roborock to 2.1.1 ([@Lash-L] - [#117078]) +- Export MQTT subscription helpers at integration level ([@jbouwh] - [#116150]) +- Enable Ruff RUF010 ([@autinerd] - [#115371]) +- Ignore Ruff SIM103 ([@autinerd] - [#115732]) +- Fix config entry _async_process_on_unload being called for forwarded platforms ([@bdraco] - [#117084]) +- Store runtime data inside the config entry in Tuya ([@mib1185] - [#116822]) +- Add test data for Zeo and Dyad devices to Roborock ([@Lash-L] - [#117054]) +- Add better testing to vacuum platform ([@Lash-L] - [#112523]) +- Use HassKey for importlib helper ([@cdce8p] - [#117116]) +- Move available property in BasePassiveBluetoothCoordinator to PassiveBluetoothDataUpdateCoordinator ([@bdraco] - [#117056]) +- Bump github/codeql-action from 3.25.3 to 3.25.4 (@dependabot - [#117127]) +- Add airgradient integration ([@joostlek] - [#114113]) +- Add base entity for Airgradient ([@joostlek] - [#117135]) +- Add screenlogic service tests ([@dieselrabbit] - [#116356]) +- Speed up test teardown when no config entries are loaded ([@bdraco] - [#117095]) +- Bump ruff to 0.4.4 ([@autinerd] - [#117154]) +- Raise ServiceValidationError in Nibe climate services ([@tizianodeg] - [#117171]) +- Improve base entity state in Vogel's MotionMount integration ([@RJPoelstra] - [#109043]) +- Add standard deviation calculation to group ([@CoRfr] - [#112076]) +- Refactor Teslemetry integration ([@Bre77] - [#112480]) +- Migrate file integration to config entry ([@jbouwh] - [#116861]) +- Add energy site coordinator to Teslemetry ([@Bre77] - [#117184]) +- Add ESPhome discovery via MQTT ([@Links2004] - [#116499]) +- Import TypedDict from typing ([@cdce8p] - [#117161]) +- Log some mqtt of the discovery logging at debug level ([@jbouwh] - [#117185]) +- Update media_player intent schema ([@Shulyaka] - [#116793]) +- Update SetPositionIntentHandler intent schema ([@Shulyaka] - [#116794]) +- Add update_without_throttle to ecobee number ([@marcolivierarsenault] - [#116504]) +- Fix File entry setup config parsing whole YAML config ([@jbouwh] - [#117206]) +- Ensure config entry setup lock is held when removing a config entry ([@bdraco] - [#117086]) +- Fix flakey sonos test teardown ([@bdraco] - [#117222]) +- Bump ical to 8.0.1 ([@allenporter] - [#117219]) +- Use async_get_loaded_integration in config_entries ([@bdraco] - [#117192]) +- Bump pyrainbird to 6.0.1 ([@allenporter] - [#117217]) +- Fix flakey advantage_air test ([@bdraco] - [#117224]) +- Only load translations for an integration once per test session ([@bdraco] - [#117118]) +- Add device class to Command Line cover ([@gjohansson-ST] - [#117183]) +- Prevent shutdown fault-log trace-back ([@systemcrash] - [#116735]) +- Speed up init and finish flow ([@bdraco] - [#117226]) +- Use MockConfigEntry in unifi tests ([@emontnemery] - [#117238]) +- Rename some runner tests ([@emontnemery] - [#117249]) +- Rename some translation helper tests ([@emontnemery] - [#117248]) +- Rename some rflink tests ([@emontnemery] - [#117247]) +- Rename some MQTT tests ([@emontnemery] - [#117246]) +- Sort asserts in config config_entries tests ([@emontnemery] - [#117244]) +- Bump homematicip to 1.1.1 ([@hahn-th] - [#117175]) +- Bump wolf-comm to 0.0.8 ([@mtielen] - [#117218]) +- Bump pyinsteon to 1.6.1 ([@teharris1] - [#117196]) +- Start using runtime_data for zwave_js ([@raman325] - [#117261]) +- Use mock_config_flow helper in config tests ([@emontnemery] - [#117245]) +- Use mock_config_flow helper in config_entries tests ([@emontnemery] - [#117241]) +- Use mock_config_flow helper in bootstrap tests ([@emontnemery] - [#117240]) +- Sort parameters to MockConfigEntry ([@emontnemery] - [#117239]) +- Add shared notify service migration repair helper ([@jbouwh] - [#117213]) +- Refactor V2C tests ([@joostlek] - [#117264]) +- Tweak config_entries tests ([@emontnemery] - [#117242]) +- Ensure config entry operations are always holding the lock ([@bdraco] - [#117214]) +- Fix docstring in Idasen Desk ([@abmantis] - [#117280]) +- Small speed up to setting up integrations and config entries ([@bdraco] - [#117278]) +- Use `MockConfigEntry` in hue tests ([@emontnemery] - [#117237]) +- Use a dictcomp to reconstruct DeviceInfo in the device_registry ([@bdraco] - [#117286]) +- Bump upcloud-api to 2.5.1 ([@scop] - [#117231]) +- Fix mimetypes doing blocking I/O in the event loop ([@bdraco] - [#117292]) +- Small speed ups to bootstrap tests ([@bdraco] - [#117285]) +- Improve bluetooth generic typing ([@cdce8p] - [#117157]) +- Spelling of controlling in mqtt valve tests ([@jbouwh] - [#117301]) +- Fix blocking I/O in the event loop to get MacOS system_info ([@bdraco] - [#117290]) +- Use entry runtime data in Teslemetry ([@Bre77] - [#117283]) +- Fix flume doing blocking I/O in the event loop ([@bdraco] - [#117293]) +- Fix import on File config entry and other improvements ([@jbouwh] - [#117210]) +- Fix typo in mqtt test name ([@jbouwh] - [#117305]) +- Migrate Tibber notify service ([@jbouwh] - [#116893]) +- Remove ConfigEntry runtime_data on unload ([@cdce8p] - [#117312]) +- Add test for radarr update failure ([@tkdrob] - [#116882]) +- Clean up aurora ([@joostlek] - [#117315]) +- Refactor asyncio loop protection to improve performance ([@bdraco] - [#117295]) +- Enable open protection in the event loop ([@bdraco] - [#117289]) +- Bump zwave-js-server-python to 0.56.0 ([@raman325] - [#117288]) +- Add camera recording service to blink ([@mback2k] - [#110612]) +- Improve error handling in Teslemetry ([@Bre77] - [#117336]) +- Add gh cli to dev container ([@balloob] - [#117321]) +- Fix typo and useless default in config_entries ([@emontnemery] - [#117346]) +- Implement runtime data for Plugwise ([@bouwew] - [#117172]) +- Remove migration of config entry data pre version 0.73 ([@emontnemery] - [#117345]) +- Alphabetize some parts of config_entries ([@emontnemery] - [#117347]) +- Remove options from FlowResult ([@emontnemery] - [#117351]) +- Add minor version + migration to config entry store ([@emontnemery] - [#117350]) +- Migrate File notify entity platform ([@jbouwh] - [#117215]) +- Implement support for SwitchBot Meter, MeterPlus, and Outdoor Meter ([@laurence-presland] - [#115522]) +- Support reconfigure flow in Nettigo Air Monitor integration ([@bieniu] - [#117318]) +- Update to arcam 1.5.2 ([@elupus] - [#117375]) +- Create helper for File config flow step handling ([@jbouwh] - [#117371]) +- Bump dbus-fast to 2.21.2 ([@bdraco] - [#117195]) +- Migrate restore_state to use the singleton helper ([@bdraco] - [#117385]) +- Pass loop to create_eager_task in loops from more coros ([@bdraco] - [#117390]) +- Import and cache supported feature enum flags only when needed ([@allenporter] - [#117270]) +- Use ConfigEntry runtime_data in Tailwind ([@frenck] - [#117404]) +- Update uv to 0.1.43 ([@cdce8p] - [#117405]) +- Update apprise to 1.8.0 ([@frenck] - [#117370]) +- Update types packages ([@cdce8p] - [#117407]) +- Use ConfigEntry runtime_data in advantage_air ([@epenet] - [#117408]) +- Bump github/codeql-action from 3.25.4 to 3.25.5 (@dependabot - [#117409]) +- Update gotailwind to 0.2.3 ([@frenck] - [#117402]) +- Use ConfigEntry runtime_data in aemet ([@epenet] - [#117411]) +- Use ConfigEntry runtime_data in agent_dvr ([@epenet] - [#117412]) +- Update pylint to 3.1.1 ([@cdce8p] - [#117416]) +- Move abode base entities to separate module ([@epenet] - [#117417]) +- Add climate platform to microBees ([@FedDam] - [#111152]) +- Add Viam image processing integration ([@HipsterBrown] - [#101786]) +- Speed up loading YAML ([@bdraco] - [#117388]) +- Update pytest warnings filter ([@cdce8p] - [#117413]) +- Allow templates for enabling automation triggers ([@farmio] - [#114458]) +- Add `knx.telegram` integration specific trigger; update KNX Interface device trigger ([@farmio] - [#107592]) +- Rename sharkiq coordinator module ([@epenet] - [#117429]) +- Use snapshot platform helper in Flexit bacnet ([@joostlek] - [#117428]) +- Move esphome coordinator to separate module ([@epenet] - [#117427]) +- Move abode service registration ([@epenet] - [#117418]) +- Adjust thread safety check messages to point to developer docs ([@bdraco] - [#117392]) +- Add diagnostic platform to utility_meter ([@dgomes] - [#114967]) +- Bump pyefergy to 22.5.0 ([@tkdrob] - [#117395]) +- Add context to `telegram_bot` events ([@Shulyaka] - [#109920]) +- Move evil_genius_labs coordinator to separate module ([@epenet] - [#117435]) +- Add ability to change heating programs for heat pumps in ViCare integration ([@CFenner] - [#110924]) +- Rename flo coordinator module ([@epenet] - [#117438]) +- Use integration fallback configuration for tado water heater fallback ([@ethemcemozkan] - [#111014]) +- Re-introduce webhook to tedee integration ([@zweckj] - [#110247]) +- Update SmartThings codeowners ([@andrewsayre] - [#117448]) +- Rename wemo coordinator module ([@epenet] - [#117437]) +- Add Assist timers ([@synesthesiam] - [#117199]) +- Refactor Linear tests ([@joostlek] - [#116336]) +- Pass device_id to intent handlers ([@synesthesiam] - [#117442]) +- Some minor cleanups in WLED ([@frenck] - [#117453]) +- Make UniFi use runtime data ([@Kane610] - [#117457]) +- Enable raising ConfigEntryAuthFailed on BMW coordinator init ([@rikroe] - [#116643]) +- Fix lying docstring in entity_platform ([@emontnemery] - [#117450]) +- Add PM10 sensor to AirNow ([@kamiyo] - [#117432]) +- Bump opower to 0.4.5 and use new account.id ([@c0mputerguru] - [#117330]) +- Bump youless_api to 1.1.1 ([@benvm] - [#117459]) +- Remove "device_id" slot from timers ([@synesthesiam] - [#117460]) +- Add water meter to Youless intergration ([@benvm] - [#117452]) +- Set integration type for aurora_abb_powerone ([@davet2001] - [#117462]) +- Separate Blue Current timestamp sensors ([@Floris272] - [#111942]) +- Fix brand ID for Rainforest Automation ([@cottsay] - [#113770]) +- Add integration for APsystems EZ1 microinverter ([@mawoka-myblock] - [#114531]) +- Fix intent_type type ([@balloob] - [#117469]) +- Improve thread safety check messages to better convey impact ([@bdraco] - [#117467]) +- Add websocket API to get list of recorded entities ([@bdraco] - [#92640]) +- Bump codecov/codecov-action from 4.3.1 to 4.4.0 (@dependabot - [#117472]) +- Split homeassistant_alerts constants and coordinator ([@epenet] - [#117475]) +- Rename gree coordinator module ([@epenet] - [#117474]) +- Add options flow to the airq integration ([@Sibgatulin] - [#109337]) +- Revert "Add Viam image processing integration" ([@emontnemery] - [#117477]) +- Revert "Bump opower to 0.4.5 and use new account.id" ([@frenck] - [#117476]) +- Rename add entities function in Aurora ([@joostlek] - [#117480]) +- Move ialarm coordinator to separate module ([@epenet] - [#117478]) +- Set integration type for generic ([@davet2001] - [#117464]) +- Add exception translations to System Bridge integration ([@timmo001] - [#112206]) +- Move gios coordinator to separate module ([@epenet] - [#117471]) +- Move idasen_desk coordinator to separate module ([@epenet] - [#117485]) +- Remove ignore-wrong-coordinator-module in pylint CI ([@epenet] - [#117479]) +- Rename mikrotik coordinator module ([@epenet] - [#117488]) +- Move melnor coordinator to separate module ([@epenet] - [#117486]) +- Move prusalink coordinators to separate module ([@epenet] - [#117495]) +- Move mill coordinator to separate module ([@epenet] - [#117493]) +- Move venstar coordinator to separate module ([@epenet] - [#117500]) +- Fix ghost events for Hue remotes ([@marcelveldt] - [#113047]) +- Android TV Remote: Support launching any app by its application ID/package name ([@tronikos] - [#116906]) +- Add Jellyfin audio_codec optionflow ([@d-ylee] - [#113036]) +- Improve error handing in kaiterra data retrieval when no aqi data is present ([@AnilDaoud] - [#112885]) +- Add alarm and connectivity binary_sensors to myuplink ([@astrandb] - [#111643]) +- Add select platform to Teslemetry ([@Bre77] - [#117422]) +- Post review comments on APsystems ([@mawoka-myblock] - [#117504]) +- Move vizio coordinator to separate module ([@epenet] - [#117498]) +- Move vallox coordinator to separate module ([@epenet] - [#117503]) +- Allow templates for enabling conditions ([@farmio] - [#117047]) +- Allow templates for enabling actions ([@farmio] - [#117049]) +- Add Reolink PIR entities ([@starkillerOG] - [#117507]) +- Add light platform to Linear garage door ([@IceBotYT] - [#111426]) +- Rename fritz coordinator module ([@epenet] - [#117440]) +- Do not register mqtt mock config flow with handlers ([@jpbede] - [#117521]) +- Set integration type for wyoming ([@balloob] - [#117519]) +- Fix the type of slot schema of intent handlers ([@balloob] - [#117520]) +- Add LLM tools ([@Shulyaka] - [#115464]) +- Don't prioritize "name" slot if it's a wildcard in default conversation agent ([@synesthesiam] - [#117518]) +- Bump bleak to 0.22.1 ([@bdraco] - [#117383]) +- Move google coordinator to separate module ([@epenet] - [#117473]) +- Add Webmin filesystem sensors ([@autinerd] - [#112660]) +- Move xbox coordinator to separate module ([@epenet] - [#117421]) +- Move switcher_kis coordinator to separate module ([@epenet] - [#117538]) +- Move gogogate2 coordinator to separate module ([@epenet] - [#117433]) +- Bump aioesphomeapi to 24.4.0 ([@gnumpi] - [#117543]) +- Bump adext to 0.4.3 ([@tichris0] - [#117496]) +- Move surepetcare coordinator to separate module ([@epenet] - [#117544]) +- Move upcloud coordinator to separate module ([@epenet] - [#117536]) +- Add functionality to Mastodon ([@thejeffreystone] - [#112862]) +- Only allow ethernet and wi-fi interfaces as unique ID in webmin ([@autinerd] - [#113084]) +- Improve ReloadServiceHelper typing ([@cdce8p] - [#117552]) +- Replace meaningless TypeVar usage ([@cdce8p] - [#117553]) +- Add Shelly motion sensor switch ([@chemelli74] - [#115312]) +- Move rainforest_eagle coordinator to separate module ([@epenet] - [#117556]) +- Move risco coordinator to separate module ([@epenet] - [#117549]) +- Improve recorder statistics error messages ([@dfaour] - [#113498]) +- Move pvpc coordinator to separate module ([@epenet] - [#117559]) +- Add area filter and rounded time to timers ([@synesthesiam] - [#117527]) +- Move pure_energie coordinator to separate module ([@epenet] - [#117560]) +- Update hass-nabucasa dependency to version 0.81.0 ([@ludeeus] - [#117568]) +- Use runtime data in Poolsense ([@joostlek] - [#117570]) +- Ensure gold and platinum integrations implement diagnostic ([@epenet] - [#117565]) +- Support reconfigure flow in Shelly integration ([@bieniu] - [#117525]) +- Refactor Poolsense config flow tests ([@joostlek] - [#117573]) +- Bump pyipp to 0.16.0 ([@ctalkington] - [#117583]) +- Add diagnostics for nws ([@MatthewFlamm] - [#117587]) +- Add Poolsense platform tests ([@joostlek] - [#117579]) +- Add Reolink battery entities ([@starkillerOG] - [#117506]) +- Use config entry runtime_data in nws ([@MatthewFlamm] - [#117593]) +- Mark HassJob target as Final ([@cdce8p] - [#117578]) +- Rework deCONZ services to load once and never unload ([@Kane610] - [#117592]) +- Remove old deCONZ entity cleanup ([@Kane610] - [#117590]) +- Rename openweathermap coordinator module ([@epenet] - [#117609]) +- Move opengarage coordinator to separate module ([@epenet] - [#117608]) +- Fix dlna_dmr task flood when player changes state ([@bdraco] - [#117606]) +- Bump actions/checkout from 4.1.4 to 4.1.6 (@dependabot - [#117612]) +- Fix Reolink battery translation_key unneeded ([@starkillerOG] - [#117616]) +- Bump pre-commit to 3.7.1 ([@epenet] - [#117619]) +- Rename hassio coordinator module ([@epenet] - [#117611]) +- Extract Monzo coordinator in separate module ([@joostlek] - [#117034]) +- Prevent `const.py` in coverage ignore list ([@epenet] - [#117625]) +- Update mypy-dev to 1.11.0a2 ([@cdce8p] - [#117630]) +- Use PEP 695 for simple type aliases ([@cdce8p] - [#117633]) +- Android TV Remote: Mention the TV will turn on in the reauth flow ([@tronikos] - [#117548]) +- Fix Tibber sensors state class ([@basbruss] - [#117085]) +- Move modern_forms coordinator to separate module ([@epenet] - [#117610]) +- Add snapshot tests to Balboa ([@joostlek] - [#117620]) +- Use PEP 695 type alias for ConfigEntry types ([@cdce8p] - [#117632]) +- Add snapshot tests to elmax ([@epenet] - [#117637]) +- Move elmax coordinator to separate module ([@epenet] - [#117425]) +- Fix icons and strings in Balboa ([@joostlek] - [#117618]) +- Adjust bootstrap script to use correct version of pre-commit ([@epenet] - [#117621]) +- Use PEP 695 for decorator typing (1) ([@cdce8p] - [#117638]) +- Use PEP 695 for decorator typing (3) ([@cdce8p] - [#117640]) +- Use PEP 695 for decorator typing (2) ([@cdce8p] - [#117639]) +- Move p1_monitor coordinator to separate module ([@epenet] - [#117562]) +- Add Google Gen AI Conversation Agent Entity ([@allenporter] - [#116362]) +- Bump pyduotecno to 2024.5.1 ([@Cereal2nd] - [#117643]) +- Fix Habitica doing blocking I/O in the event loop ([@tr4nt0r] - [#117647]) +- Add AlarmDecoder device info ([@tichris0] - [#117357]) +- Move tomorrowio coordinator to separate module ([@epenet] - [#117537]) +- Move philips_js coordinator to separate module ([@epenet] - [#117561]) +- Clean up some bad line wrapping in Hydrawise ([@dknowles2] - [#117671]) +- Add missing string `reconfigure_successful` for NAM reconfigure flow ([@bieniu] - [#117683]) +- Bump google-generativeai==0.5.4 ([@tronikos] - [#117680]) +- Use PEP 695 for decorator typing with type aliases (2) ([@cdce8p] - [#117663]) +- Use PEP 695 for decorator typing with type aliases (1) ([@cdce8p] - [#117662]) +- Use PEP 695 for function annotations (3) ([@cdce8p] - [#117660]) +- Use PEP 695 for function annotations (2) ([@cdce8p] - [#117659]) +- Use PEP 695 for function annotations (1) ([@cdce8p] - [#117658]) +- Improve YieldFixture typing ([@cdce8p] - [#117686]) +- Use PEP 695 for dispatcher helper typing ([@cdce8p] - [#117685]) +- Remove useless TypeVars ([@cdce8p] - [#117687]) +- Use generator expression in poolsense ([@joostlek] - [#117582]) +- Move plenticore coordinators to separate module ([@epenet] - [#117491]) +- Improve Monzo tests ([@joostlek] - [#117036]) +- Improve diagnostics in Teslemetry ([@Bre77] - [#117613]) +- Add `__pycache__` to gitignore ([@autinerd] - [#114056]) +- Refactor Aurora tests ([@joostlek] - [#117323]) +- Use remove_device helper in tasmota tests ([@epenet] - [#116617]) +- Allow manual delete of stale Renault vehicles ([@epenet] - [#116229]) +- Move entity definitions into own module in AVM Fritz!Tools ([@mib1185] - [#117701]) +- Add GitHub CoPilot to extensions devcontainer ([@balloob] - [#117699]) +- Remove AngellusMortis as code-owner Unifi Protect ([@balloob] - [#117708]) +- Avoid Shelly RPC reconnect during device shutdown ([@thecode] - [#117702]) +- Add API class to LLM helper ([@balloob] - [#117707]) +- Use SnmpEngine stored in hass.data by singleton in Brother integration ([@bieniu] - [#117043]) +- Bump PlexAPI to 4.15.13 ([@jjlawren] - [#117712]) +- Bump monzopy to 1.2.0 ([@JakeMartin-ICL] - [#117730]) +- Use reauth helper in devolo Home Network ([@Shutgun] - [#117736]) +- Bump aioshelly to 10.0.0 ([@thecode] - [#117728]) +- Use helper in Withings reauth ([@joostlek] - [#117727]) +- Use reauth helper in devolo Home Control ([@Shutgun] - [#117739]) +- Refactor tests for Brother integration ([@bieniu] - [#117377]) +- Bump pydiscovergy to 3.0.1 ([@jpbede] - [#117740]) +- LLM Tools support for Google Generative AI integration ([@Shulyaka] - [#117644]) +- Update elmax_api to v0.0.5 ([@albertogeniola] - [#117693]) +- Add turn_on to SamsungTV remote ([@epenet] - [#117403]) +- Fix missing type for mqtt websocket wrapper ([@bdraco] - [#117752]) +- Add setup time detail to diagnostics ([@bdraco] - [#117766]) +- Update pylint to 3.2.2 ([@cdce8p] - [#117770]) +- Move environment_canada coordinator to separate module ([@epenet] - [#117426]) +- Use PEP 695 for class annotations (1) ([@cdce8p] - [#117775]) +- Use PEP 695 for class annotations (2) ([@cdce8p] - [#117776]) +- Use PEP 695 for class annotations (4) ([@cdce8p] - [#117778]) +- Use PEP 695 for class annotations (3) ([@cdce8p] - [#117777]) +- Use PEP 695 for hass_dict annotations ([@cdce8p] - [#117779]) +- Use PEP 695 for covariant class annotations ([@cdce8p] - [#117780]) +- Fix blocking I/O in the event loop when loading timezones ([@bdraco] - [#117721]) +- Downgrade point quality scale to silver ([@epenet] - [#117783]) +- Downgrade tellduslive quality scale to silver ([@epenet] - [#117784]) +- Set integration_type to device for apsystems integration ([@mawoka-myblock] - [#117782]) +- Update mypy-dev to 1.11.0a3 ([@cdce8p] - [#117786]) +- Use PEP 695 misc ([@cdce8p] - [#117788]) +- Use PEP 695 for function annotations with scoping ([@cdce8p] - [#117787]) +- Enable UP040 ruff check ([@cdce8p] - [#117792]) +- Unpause media players that were paused outside voice ([@synesthesiam] - [#117575]) +- Use PEP 695 type alias in tests ([@cdce8p] - [#117797]) +- Remove quotes surrounding annotations ([@cdce8p] - [#117817]) +- Bump pynws to 1.8.1 for nws ([@MatthewFlamm] - [#117820]) +- Detect incorrect exception in forwarded platforms ([@bdraco] - [#117754]) +- Bump dbus-fast to 2.21.3 ([@bdraco] - [#117824]) +- Bump tesla-powerwall to 0.5.2 ([@bdraco] - [#117823]) +- Improve error message when template is rendered from wrong thread ([@bdraco] - [#117822]) +- Update scaffold templates to use runtime_data ([@cdce8p] - [#117819]) +- Improve zwave_js TypeVar usage ([@cdce8p] - [#117810]) +- Stop the nest subscriber on Home Assistant stop ([@allenporter] - [#117830]) +- Bump codecov/codecov-action from 4.4.0 to 4.4.1 (@dependabot - [#117836]) +- Refactor SamsungTV auth check ([@epenet] - [#117834]) +- Bump github/codeql-action from 3.25.5 to 3.25.6 (@dependabot - [#117835]) +- Tesla wall connector add sensors ([@bajansen] - [#117769]) +- Remove @ from codeowners when downloading diagnostics ([@bdraco] - [#117825]) +- Remove future import to fix broken typing.get_type_hints call ([@cdce8p] - [#117837]) +- Bump aioautomower to 2024.5.1 ([@Thomas55555] - [#117815]) +- Convert solax to use DataUpdateCoordinator ([@bdraco] - [#117767]) +- Use PEP 695 misc (2) ([@cdce8p] - [#117814]) +- Use uv instead of pip in development env ([@edenhaus] - [#113517]) +- Remove silver integrations from NO_DIAGNOSTICS ([@epenet] - [#117840]) +- Simplify samsungtv unload ([@epenet] - [#117838]) +- Small speed up to adding event bus listeners ([@bdraco] - [#117849]) +- Simplify service description cache logic ([@bdraco] - [#117846]) +- Cache area registry JSON serialize ([@bdraco] - [#117847]) +- Speed up async_get_loaded_integrations ([@bdraco] - [#117851]) +- Small speed up to logbook humanify ([@bdraco] - [#117854]) +- Add support for Glances v4 ([@wittypluck] - [#117664]) +- Add description to intent handlers and use in LLM helper ([@synesthesiam] - [#117864]) +- Add missing placeholder name to reauth ([@mkmer] - [#117869]) +- Address late feedback Google LLM ([@balloob] - [#117873]) +- Make Google AI model picker a dropdown ([@balloob] - [#117878]) +- Enable Ruff RET502 ([@autinerd] - [#115139]) +- Add `async_turn_on/off` methods for KNX climate entities ([@farmio] - [#117882]) +- Add data point type option to `knx.telegram` trigger ([@farmio] - [#117463]) +- Add value_template option to KNX expose ([@farmio] - [#117732]) +- Simplify and speed up mqtt_config_entry_enabled check ([@bdraco] - [#117886]) +- Fix mqtt timer churn ([@bdraco] - [#117885]) +- Reduce overhead to call get_mqtt_data ([@bdraco] - [#117887]) +- LLM Tools: Add device_id ([@Shulyaka] - [#117884]) +- Avoid creating tasks to subscribe to discovery in MQTT ([@bdraco] - [#117890]) +- LLM Tools support for OpenAI integration ([@Shulyaka] - [#117645]) +- Reduce overhead to validate mqtt topics ([@bdraco] - [#117891]) +- Support carbon dioxide and formaldehyde sensors in deCONZ ([@Kane610] - [#117877]) +- Small speed up to creating flows ([@bdraco] - [#117896]) +- Improve typing via hassfest serializer ([@jschlyter] - [#117382]) +- Add coordinator to SamsungTV ([@epenet] - [#117863]) +- Adjust conftest type hints ([@epenet] - [#117900]) +- Keep observation data valid for 60 min and retry with no data for nws ([@MatthewFlamm] - [#117109]) +- Add MAC cleanup to SamsungTV ([@epenet] - [#117906]) +- Adopt new runtime entry data model for AlarmDecoder ([@tichris0] - [#117856]) +- Refactor MQTT to replace get_mqtt_data with HassKey ([@bdraco] - [#117899]) +- Bump habluetooth to 3.1.0 ([@bdraco] - [#117905]) +- Remove duplicate code in SamsungTV ([@epenet] - [#117913]) +- Exclude modbus from diagnostics hassfest check ([@joostlek] - [#117855]) +- Fix performance regression with SignalType ([@cdce8p] - [#117920]) +- Add clear night to smhi ([@gjohansson-ST] - [#115998]) +- Use common title for reauth confirm in Whirlpool config flow ([@mkmer] - [#117924]) +- Google Generative AI: Handle response with empty parts in generate_content ([@tronikos] - [#117908]) +- Add switch for stay out zones in Husqvarna Automower ([@Thomas55555] - [#117809]) +- Fail if targeting all devices in the house in service intent handler ([@synesthesiam] - [#117930]) +- Speed up registry indices ([@bdraco] - [#117897]) +- Simplify SkyConnect setup flow ([@puddly] - [#117868]) +- Add lock to token validity check ([@joostlek] - [#117912]) +- Move nest diagnostic tests to use snapshots ([@allenporter] - [#117929]) +- Migrate issue registry to use singleton helper ([@bdraco] - [#117848]) +- Add available and state to SamsungTV remote ([@epenet] - [#117909]) +- Store runtime data inside the config entry in iBeacon ([@mib1185] - [#117936]) +- Add number entities for screenlogic values used in SI calc ([@dieselrabbit] - [#117812]) +- Send MEDIA_ANNOUNCE flag to ESPHome media_player ([@gnumpi] - [#116993]) +- Refactor shared mqtt schema's to new module ([@jbouwh] - [#117944]) +- Update LLM no tools message ([@balloob] - [#117935]) +- Refactor state_reported listener setup to avoid merge in async_fire_internal ([@bdraco] - [#117953]) +- Bump ruff to 0.4.5 ([@autinerd] - [#117958]) +- Allow to reconfigure integrations with `single_config_entry` set ([@jpbede] - [#117939]) +- Better handling of EADDRINUSE for Govee light ([@Galorhallen] - [#117943]) +- Add Azure data explorer ([@kaareseras] - [#68992]) +- Fix run-in-env script for not running in venv ([@farmio] - [#117961]) +- Simplify async_track_time_interval implementation ([@bdraco] - [#117956]) +- Bump airgradient to 0.4.1 ([@joostlek] - [#117963]) +- Improve fyta tests ([@dontinelli] - [#117661]) +- Cleanup pylint ignore ([@epenet] - [#117964]) +- Add snapshot tests to moehlenhoff_alpha2 ([@epenet] - [#117967]) +- Add switch platform to Teslemetry ([@Bre77] - [#117482]) +- Use SnapshotAssertion in rainmachine diagnostic tests ([@epenet] - [#117979]) +- Add snapshot platform tests to rainmachine ([@epenet] - [#117978]) +- Move rainmachine coordinator to separate module ([@epenet] - [#117983]) +- Fix turbojpeg init doing blocking I/O in the event loop ([@bdraco] - [#117971]) +- Cache serialize of manifest for loaded integrations ([@bdraco] - [#117965]) +- Deconz - Added trigger support for Aqara WB-R02D mini switch ([@agrauballe] - [#117917]) +- Bump to google-nest-sdm to 4.0.4 ([@allenporter] - [#117982]) +- Enable Switcher assume buttons for all devices ([@thecode] - [#117993]) +- Bump habluetooth to 3.1.1 ([@bdraco] - [#117992]) +- Add snapshot tests to omnilogic ([@epenet] - [#117986]) +- Move moehlenhoff_alpha2 coordinator to separate module ([@epenet] - [#117970]) +- Remove Switcher YAML import support ([@thecode] - [#117994]) +- Google gen updates ([@balloob] - [#117893]) +- Update codespell to 2.3.0 ([@cdce8p] - [#118001]) +- Add lock platform to Teslemetry ([@Bre77] - [#117344]) +- Remove unused snapshots [a-f] ([@Thomas55555] - [#117999]) +- Fix vallow test fixtures ([@cdce8p] - [#118003]) +- Move omnilogic coordinator to separate module ([@epenet] - [#118014]) +- Add binary sensor platform to Teslemetry ([@Bre77] - [#117230]) +- Switcher - use single_config_entry and register_discovery_flow in con… ([@thecode] - [#118000]) +- Add models to energy sites in Teslemetry ([@Bre77] - [#117419]) +- Add snapshot tests to plaato ([@epenet] - [#118017]) +- Daikin Aircon - Add strings and debug ([@kingy444] - [#116674]) +- Add sequence action for automations & scripts ([@frenck] - [#117690]) +- Move plaato coordinator to separate module ([@epenet] - [#118019]) +- Use snapshot in renault diagnostics tests ([@epenet] - [#118021]) +- Migrate OpenWeaterMap to new library (support API 3.0) ([@freekode] - [#116870]) +- Add logging to SamsungTV turn-on ([@epenet] - [#117962]) +- Update typing-extensions to 4.12.0 ([@cdce8p] - [#118020]) +- Avoid calling split_entity_id in event add/remove filters ([@bdraco] - [#118015]) +- Improve callable annotations ([@cdce8p] - [#118024]) +- Fix partial typing ([@cdce8p] - [#118022]) +- Update codespell ignore list ([@cdce8p] - [#118018]) +- Fix issue with device_class.capitalize() in point ([@fredrike] - [#117969]) +- Add missing Ecovacs life spans ([@Ulfmerbold2000] - [#117134]) +- Add snapshot tests to nuki ([@epenet] - [#117973]) +- Add error message to snapshot_platform helper ([@epenet] - [#117974]) +- Catch client connection error in Honeywell ([@mkmer] - [#117502]) +- Convert namedtuple to NamedTuple for smartthings ([@autinerd] - [#115395]) +- Refactor Husqvarna Automower ([@Thomas55555] - [#117938]) +- Move nuki coordinator to separate module ([@epenet] - [#117975]) +- Move TibberDataCoordinator to separate module ([@epenet] - [#118027]) +- Create bound callback_message_received method for handling mqtt callbacks ([@jbouwh] - [#117951]) +- Add Cover platform to Teslemetry ([@Bre77] - [#117340]) +- Remove duplicate tests in generic_thermostat ([@esciara] - [#105622]) +- Improve error logging on invalid MQTT entity state ([@jbouwh] - [#118006]) +- Add APRS object tracking ([@PhilRW] - [#113080]) +- Make co/co2 threshold configurable via entity_config ([@FWeinb] - [#112978]) +- Add config flow to Jewish Calendar ([@yuvalabou] - [#84464]) +- Add json cache to lovelace config ([@bdraco] - [#117843]) +- Improve annotation styling ([@cdce8p] - [#118032]) +- Use issue_registry fixture in core tests ([@epenet] - [#118042]) +- Update Rachio hose timer battery sensor ([@brg468] - [#118045]) +- Rename MQTT mixin classes ([@jbouwh] - [#118039]) +- Remove strict connection ([@edenhaus] - [#117933]) +- Use issue_registry fixture in component tests ([@epenet] - [#118041]) +- Change ZoneInfo to async_get_time_zone in fyta ([@dontinelli] - [#117996]) +- Add types to event tracker data ([@bdraco] - [#118010]) +- Exclude gold and platinum integrations from .coveragerc ([@epenet] - [#117563]) +- Fix intent helper test ([@synesthesiam] - [#118053]) +- Require registered device id for all timer intents ([@synesthesiam] - [#117946]) +- Remove unneeded asserts ([@balloob] - [#118056]) +- Update OpenAI defaults ([@balloob] - [#118059]) +- Allow llm API to render dynamic template prompt ([@balloob] - [#118055]) +- Add tests to Zeversolar integration ([@NECH2004] - [#117928]) +- Refactor mqtt callbacks for alarm_control_panel ([@jbouwh] - [#118037]) +- Refactor mqtt callbacks for cover ([@jbouwh] - [#118044]) +- Add activity type to appropriate RainMachine switches ([@bachya] - [#117875]) +- Significantly speed up single use callback dispatchers ([@bdraco] - [#117934]) +- Refactor mqtt callbacks for climate and water_heater ([@jbouwh] - [#118040]) +- Move recorder chunk utils to shared collection utils ([@jbouwh] - [#118065]) +- Consequently ignore empty MQTT state payloads and set state to `unknown` on "None" payload ([@jbouwh] - [#117813]) +- Split mqtt subscribe and unsubscribe calls to smaller chunks ([@jbouwh] - [#118035]) +- Avoid generating matchers that will never be used in MQTT ([@bdraco] - [#118068]) +- Avoid catch_log_exception overhead in MQTT for simple callbacks ([@bdraco] - [#118036]) +- Reduce duplicate code to handle mqtt message replies ([@bdraco] - [#118067]) +- Use defaultdict instead of setdefault in mqtt client ([@bdraco] - [#118070]) +- Fix lingering mqtt test ([@jbouwh] - [#118072]) +- Google Generative AI: add timeout to ensure we don't block HA startup ([@tronikos] - [#118066]) +- Add Google Generative AI safety settings ([@tronikos] - [#117679]) +- Add user name and location to the LLM assist prompt ([@Shulyaka] - [#118071]) +- Add device info to Google ([@balloob] - [#118074]) +- Speed up is_template_string by avoiding regex engine ([@bdraco] - [#118076]) +- Remove OrderedDict from entity_values as dict guarantees order on newer cpython ([@bdraco] - [#118081]) +- Speed up async_render_with_possible_json_value ([@bdraco] - [#118080]) +- Avoid template context manager overhead when template is already compiled ([@bdraco] - [#118079]) +- Remove unused code in template helper ([@bdraco] - [#118075]) +- Convert remaining mqtt attrs classes to dataclasses ([@bdraco] - [#118073]) +- Add device info to OpenAI ([@balloob] - [#118077]) +- Fix default Google AI prompt on initial setup ([@balloob] - [#118078]) +- Add no-API LLM prompt back to Google ([@balloob] - [#118082]) +- Add recommended model options to OpenAI ([@balloob] - [#118083]) +- Update Google safety defaults to match Google ([@balloob] - [#118084]) +- Flip prompts to put user prompt on top ([@balloob] - [#118085]) +- Bump velbusaio to 2024.5.1 ([@Cereal2nd] - [#118091]) +- Speed up removing MQTT subscriptions ([@bdraco] - [#118088]) +- Store runtime data inside the config entry in Spotify ([@mib1185] - [#117037]) +- Store runtime data inside the config entry in Forecast Solar ([@mib1185] - [#117033]) +- Adjust title of integration sensor ([@elupus] - [#116954]) +- Bump pyenvisalink version to 4.7 ([@allistermaguire] - [#118086]) +- Simplify mqtt discovery cooldown calculation ([@bdraco] - [#118095]) +- Migrate firmata to use async_unload_platforms ([@bdraco] - [#118098]) +- Migrate vera to use async_unload_platforms ([@bdraco] - [#118099]) +- Migrate zha to use async_unload_platforms ([@bdraco] - [#118100]) +- Migrate zwave_js to use async_unload_platforms ([@bdraco] - [#118101]) +- Switch mqtt to use async_unload_platforms ([@bdraco] - [#118097]) +- Store Switcher runtime data in config entry ([@thecode] - [#118054]) +- Small speed up to mqtt _async_queue_subscriptions ([@bdraco] - [#118094]) +- Allow Meraki API v2 or v2.1 ([@nopoz] - [#115828]) +- Freeze and fix plaato CI tests ([@jbouwh] - [#118103]) +- Use PEP 695 type alias for ConfigEntry type in Spotify ([@mib1185] - [#118106]) +- Add device tracker platform to Teslemetry ([@Bre77] - [#117341]) +- Use PEP 695 type alias for ConfigEntry type in Forecast Solar ([@mib1185] - [#118107]) +- Improve nws tests by centralizing and removing unneeded `patch`ing ([@MatthewFlamm] - [#118052]) +- Google Generative AI: 100% test coverage for conversation ([@tronikos] - [#118112]) +- Remove deprecated services from AVM Fritz!Box Tools ([@mib1185] - [#118108]) +- Add diagnostics support for Fronius ([@farmio] - [#117845]) +- Fix mqtt callback typing ([@cdce8p] - [#118104]) +- Add conversation agent debug tracing ([@allenporter] - [#118124]) +- Break long strings in LLM tools ([@Shulyaka] - [#118114]) +- Reach platinum level in Minecraft Server ([@elmurato] - [#105432]) +- Fix mqtt callback exception logging ([@jbouwh] - [#118138]) +- Rework mqtt callbacks for device_tracker ([@jbouwh] - [#118110]) +- Rework mqtt callbacks for fan ([@jbouwh] - [#118115]) +- Refactor mqtt callbacks for humidifier ([@jbouwh] - [#118116]) +- Refactor mqtt callbacks for lock ([@jbouwh] - [#118118]) +- Refactor mqtt callbacks for lawn_mower ([@jbouwh] - [#118117]) +- Refactor mqtt callbacks for update platform ([@jbouwh] - [#118131]) +- Refactor mqtt callbacks for siren ([@jbouwh] - [#118125]) +- Refactor mqtt callbacks for number ([@jbouwh] - [#118119]) +- Refactor mqtt callbacks for select platform ([@jbouwh] - [#118121]) +- Refactor mqtt callbacks for text ([@jbouwh] - [#118130]) +- Refactor mqtt callbacks for switch ([@jbouwh] - [#118127]) +- Refactor mqtt callbacks for vacuum ([@jbouwh] - [#118137]) +- Rework mqtt callbacks for camera, image and event ([@jbouwh] - [#118109]) +- Refactor mqtt callbacks for light basic, json and template schema ([@jbouwh] - [#118113]) +- Clean up Shelly unneccesary async_block_till_done calls ([@thecode] - [#118141]) +- Make mqtt internal subscription a normal function ([@bdraco] - [#118092]) +- Refactor mqtt callbacks for valve ([@jbouwh] - [#118140]) +- Clean up WebOS TV unneccesary async_block_till_done calls ([@thecode] - [#118142]) +- Remove code that is no longer used in mqtt ([@bdraco] - [#118143]) +- Bump aioswitcher to 3.4.3 ([@thecode] - [#118123]) +- Avoid constructing mqtt json attrs template if its not defined ([@bdraco] - [#118146]) +- Add button platform to Teslemetry ([@Bre77] - [#117227]) +- Add media player platform to Teslemetry ([@Bre77] - [#117394]) +- Bump py-sucks to 0.9.10 ([@mib1185] - [#118148]) +- Add number platform to Teslemetry ([@Bre77] - [#117470]) +- Clean up AVM Fritz!Box Tools unneccesary async_block_till_done call ([@mib1185] - [#118165]) +- Clean up PIhole unneccesary async_block_till_done call ([@mib1185] - [#118166]) +- Bump subarulink to 0.7.11 ([@G-Two] - [#117743]) +- Improve script disallowed recursion logging ([@bdraco] - [#118151]) +- Add update platform to Teslemetry ([@Bre77] - [#118145]) +- Fix parallel script execution in queued mode ([@bdraco] - [#118153]) +- Don't crash when firing event for timer for unregistered device ([@balloob] - [#118132]) +- Speed up template result parsing ([@bdraco] - [#118168]) +- Avoid expensive inspection of callbacks to setup mqtt subscriptions ([@bdraco] - [#118161]) +- Reduce duplicate publish code in mqtt ([@bdraco] - [#118163]) +- Fix unnecessary calls to update entity display_precision ([@bdraco] - [#118159]) +- Add render prompt method when no API selected ([@balloob] - [#118136]) +- Add repair for detached addon issues ([@mdegat01] - [#118064]) +- Add async_get_hass_or_none ([@bdraco] - [#118164]) +- Avoid constructing mqtt availability template objects when there is no template ([@bdraco] - [#118171]) +- Remove remove unreachable code in async_wait_for_mqtt_client ([@jbouwh] - [#118172]) +- Collapse websocket_api _state_diff into _state_diff_event ([@bdraco] - [#118170]) +- Use fixtures to setup UniFi config entries ([@Kane610] - [#118126]) +- Upgrade thethingsnetwork to v3 ([@angelnu] - [#113375]) +- Add Google Generative AI reauth flow ([@tronikos] - [#118096]) +- Move Jewish calendar constants to const file ([@tsvi] - [#118180]) +- Bump holidays to 0.49 ([@gjohansson-ST] - [#118181]) +- Simplify subscription mqtt entity platforms ([@jbouwh] - [#118177]) +- Simplify mqtt connection state dispatcher ([@bdraco] - [#118184]) +- Move sensor mqtt state update functions to bound methods ([@bdraco] - [#118188]) +- Simplify mqtt switch state message processor ([@bdraco] - [#118187]) +- Promote Google Generative AI to platinum quality ([@tronikos] - [#118158]) +- Fix mqtt switch types ([@bdraco] - [#118193]) +- Forward timer events to Wyoming satellites ([@synesthesiam] - [#118128]) +- Fix flaky test in Teslemetry ([@Bre77] - [#118196]) +- Avoid creating template objects in mqtt sensor if they are not configured ([@bdraco] - [#118194]) +- Standardize LLM instructions prompt ([@balloob] - [#118195]) +- Convert mqtt entity discovery to use callbacks ([@bdraco] - [#118200]) +- Pre-set the HassJob job_type cached_property if its known ([@bdraco] - [#118199]) +- Add (deep)copy support to read only dict ([@balloob] - [#118204]) +- Remove unneeded dispatcher in mqtt discovery ([@bdraco] - [#118205]) +- Teach Context about deepcopy ([@balloob] - [#118206]) +- Improve performance of verify_event_loop_thread ([@bdraco] - [#118198]) +- Remove unneeded time fetch in mqtt discovery ([@bdraco] - [#118208]) +- Add exposed entities to the Assist LLM API prompt ([@balloob] - [#118203]) +- Fix thundering herd of mqtt component setup tasks ([@bdraco] - [#118210]) +- Remove extra inner function for mqtt reload service ([@bdraco] - [#118211]) +- Create EventEntity for Folder Watcher ([@gjohansson-ST] - [#116526]) +- Use config entry runtime data in Scrape ([@gjohansson-ST] - [#118191]) +- Eagerly remove MQTT entities on reload ([@bdraco] - [#118213]) +- Remove legacy mqtt debug_info implementation ([@bdraco] - [#118212]) +- Fix mqtt chunk subscribe logging ([@bdraco] - [#118217]) +- Increase MQTT incoming buffer to 8MiB ([@bdraco] - [#118220]) +- Refactor Twitch tests ([@joostlek] - [#114330]) +- Remove translation and icon component path functions ([@bdraco] - [#118214]) +- Add config flow to Media Extractor ([@joostlek] - [#115717]) +- Remove platform setup from Jewish calendar ([@joostlek] - [#118226]) +- Bump bimmer_connected to 0.15.3 ([@rikroe] - [#118179]) +- Implement reconfigure step for enphase_envoy ([@catsmanac] - [#115781]) +- Try to read multiple packets in MQTT ([@bdraco] - [#118222]) +- Fix unique_id not being unique in HomeWizard ([@DCSBL] - [#117940]) +- Add key expiry disabled binary sensor to Tailscale ([@claha] - [#117667]) +- Bump yt-dlp to 2024.05.26 ([@joostlek] - [#118229]) +- Remove platform sensor from Jewish Calendar binary sensor ([@tsvi] - [#118231]) +- Add Fyta sensor tests ([@dontinelli] - [#117995]) +- Allow older vehicles to sleep in Teslemetry ([@Bre77] - [#117229]) +- Use area_registry fixture in component tests ([@epenet] - [#118236]) +- Fix XMPP giving up on first auth fail ([@shelvacu] - [#118224]) +- Enforce namespace import in components ([@epenet] - [#118218]) +- Bump `nettigo_air_monitor` to version 3.1.0 ([@bieniu] - [#118227]) +- Add quality scale (platinum) to tedee integration ([@zweckj] - [#106940]) +- Enforce namespace import in core ([@epenet] - [#118235]) +- Convert Feedreader to use an update coordinator ([@mib1185] - [#118007]) +- Add helper strings for myuplink application credentials ([@astrandb] - [#115349]) +- Migrate tedee to `entry.runtime_data` ([@zweckj] - [#118246]) +- Add diagnostics for fyta ([@dontinelli] - [#118234]) +- Add entry.runtime_data typing for Teslemetry ([@gjohansson-ST] - [#118253]) +- Add new lock states to tedee integration ([@zweckj] - [#117108]) +- Cleanup tag integration ([@gjohansson-ST] - [#118241]) +- Fix mqtt not publishing null payload payload to remove discovery ([@jbouwh] - [#118261]) +- Handle multiple function_call and text parts in Google Generative AI ([@tronikos] - [#118270]) +- Align max expected entities constant between modules ([@bdraco] - [#118102]) +- Make sure HassToggle and HassSetPosition have description ([@tronikos] - [#118267]) +- Bump aioesphomeapi to 24.5.0 ([@jesserockz] - [#118271]) +- LLM Assist API: Inline all exposed entities ([@balloob] - [#118273]) +- Rewrite flow handler to flow result conversion as a list comp ([@bdraco] - [#118269]) +- Make sure conversation entities have correct name in list output ([@balloob] - [#118272]) +- Fix freezing on HA startup when there are multiple Google Generative AI config entries ([@tronikos] - [#118282]) +- Fix rooms not being matched correctly in sharkiq.clean_room ([@benaclejames] - [#118277]) +- Add diagnostics to Google Generative AI ([@tronikos] - [#118262]) +- Migrate mqtt discovery subscribes to use internal helper ([@bdraco] - [#118279]) +- Mock llm prompts in test_default_prompt for Google Generative AI ([@tronikos] - [#118286]) +- Change strings to const in Jewish Calendar ([@tsvi] - [#118274]) +- Bump aiovlc to 0.3.2 ([@mib1185] - [#118258]) +- Fix flakey bootstrap test ([@bdraco] - [#118285]) +- Use entry.runtime_data in Tessie ([@Bre77] - [#118287]) +- Add additional Huawei LTE 5G sensors ([@scop] - [#108928]) +- Fix some typing errors in Bring integration ([@tr4nt0r] - [#115641]) +- Add DSMR Reader tests ([@erwindouna] - [#115808]) +- Migrate mqtt mixin async_added_to_hass inner functions to bound methods ([@bdraco] - [#118280]) +- Add diagnostics test to AndroidTV ([@ollo69] - [#117129]) +- Add Matter fan platform ([@lboue] - [#111212]) +- Bump reolink-aio to 0.8.11 ([@starkillerOG] - [#118294]) +- Fix Matter device ID for non-bridged composed device ([@marcelveldt] - [#118256]) +- Use registry fixtures in tests (tailscale) ([@epenet] - [#118301]) +- Add reconfigure step for vallox ([@slovdahl] - [#115915]) +- Use registry fixtures in tests (a-h) ([@epenet] - [#118288]) +- Use registry fixtures in tests (m-n) ([@epenet] - [#118291]) +- Use registry fixtures in tests (o-p) ([@epenet] - [#118292]) +- Use registry fixtures in scaffold ([@epenet] - [#118308]) +- Use registry fixtures in tests (t-u) ([@epenet] - [#118297]) +- Use registry fixtures in tests (r) ([@epenet] - [#118293]) +- Use registry fixtures in tests (v-y) ([@epenet] - [#118299]) +- Thread: Add more Thread vendor to brand mappings ([@Poshy163] - [#115888]) +- Use registry fixtures in tests (s) ([@epenet] - [#118295]) +- Add more supervisor info to system info panel ([@mdegat01] - [#115715]) +- Handle generic commands as area commands in the LLM Assist API ([@balloob] - [#118276]) +- Don't set 'assist in progess' flag on wake_word-end ([@chatziko] - [#113585]) +- Enforce namespace use for import conventions ([@epenet] - [#118215]) +- Bump intents and add tests for new error messages ([@synesthesiam] - [#118317]) +- Use registry fixtures in tests (z) ([@epenet] - [#118300]) +- Add more type hints to pylint plugin ([@epenet] - [#118319]) +- Add temperature slot to light turn on intent ([@synesthesiam] - [#118321]) +- Respect WyomingSatelliteMuteSwitch state on start ([@synesthesiam] - [#118320]) +- [esphome] Assist timers ([@jesserockz] - [#118275]) +- Raise UpdateFailed on fyta API error ([@dontinelli] - [#118318]) +- Add platforms to intent handlers ([@synesthesiam] - [#118328]) +- Speed up mqtt debug info on message callback ([@bdraco] - [#118303]) +- Filter timers more when pausing/unpausing ([@synesthesiam] - [#118331]) +- Mark sonos group update a background task ([@bdraco] - [#118333]) +- [esphome] 100% voice assistant test coverage ([@jesserockz] - [#118334]) +- Use None default for traccar server battery level sensor ([@ludeeus] - [#118324]) +- Several fixes for the Matter climate platform ([@marcelveldt] - [#118322]) +- Fix source_change not triggering an update ([@mj23000] - [#118312]) +- Update the recommended model for Google Gen AI ([@balloob] - [#118323]) +- Use del instead of pop in the entity platform remove ([@bdraco] - [#118337]) +- Replace pop calls with del where the result is discarded in mqtt ([@bdraco] - [#118338]) +- Replace pop calls with del where the result is discarded in entity ([@bdraco] - [#118340]) +- LLM Assist API to ignore intents if not needed for exposed entities or calling device ([@balloob] - [#118283]) +- Add Conversation command to timers ([@synesthesiam] - [#118325]) +- Tweak Assist LLM API prompt ([@balloob] - [#118343]) +- Small speed up to connecting dispatchers ([@bdraco] - [#118342]) +- Reduce the intent response data sent to LLMs ([@balloob] - [#118346]) +- Add cache to more complex entity filters ([@bdraco] - [#118344]) +- Improve websocket message coalescing to handle thundering herds better ([@bdraco] - [#118268]) +- Replace pop calls with del where the result is discarded in restore_state ([@bdraco] - [#118339]) +- Fix last_reported_timestamp not being updated when last_reported is changed ([@bdraco] - [#118341]) +- Use runtime_data in ping ([@jpbede] - [#118332]) +- Fix epic_games_store mystery game URL ([@Quentame] - [#118314]) +- Add smoke detector temperature to Yale Smart Alarm ([@gjohansson-ST] - [#116306]) +- Add august open action ([@m10x] - [#113795]) +- Add OSO Energy binary sensors ([@osohotwateriot] - [#117174]) +- Update zwave_js WS APIs for provisioning ([@raman325] - [#117400]) +- Improve typing for `calls` fixture in tests (a-l) ([@epenet] - [#118349]) +- Add ws endpoint to remove expiration date from refresh tokens ([@edenhaus] - [#117546]) +- Bump docker/login-action from 3.1.0 to 3.2.0 (@dependabot - [#118351]) +- Add Google assistant Gate device type ([@Bygood91] - [#118144]) +- Make Recorder dialect_name a cached_property ([@bdraco] - [#117922]) +- Rename calls fixture in calendar tests ([@epenet] - [#118353]) +- Rename calls fixture in mqtt tests ([@epenet] - [#118354]) +- Rename calls fixture in components tests ([@epenet] - [#118355]) +- Improve typing for `calls` fixture in tests (m-z) ([@epenet] - [#118350]) +- Adjust add-on installation error message ([@agners] - [#118309]) +- Rename service_calls fixture in template tests ([@epenet] - [#118358]) +- Add more tests to Yale Smart Alarm ([@gjohansson-ST] - [#116501]) +- Add DSMR Reader icons ([@erwindouna] - [#118329]) +- Add default code to alarm_control_panel ([@gjohansson-ST] - [#112540]) +- Discover new device at runtime in Plugwise ([@bouwew] - [#117688]) +- Allow MQTT device based auto discovery ([@jbouwh] - [#109030]) +- Extend image_upload to return the original image ([@Nezz] - [#116652]) +- Update pylaunches dependency to version 2.0.0 ([@ludeeus] - [#118362]) +- Set quality scale of fyta to platinum ([@dontinelli] - [#118307]) +- Fix issue when you have multiple Google Generative AI config entries and you remove one of them ([@tronikos] - [#118365]) +- Support in blueprint schema for input sections ([@karwosts] - [#110513]) +- Expose useful media player attributes to LLMs ([@tronikos] - [#118363]) +- Fix LLM tracing for Google Generative AI ([@tronikos] - [#118359]) +- Ask LLM to pass area name and domain ([@tronikos] - [#118357]) +- Default to gemini-1.5-flash-latest in Google Generative AI ([@tronikos] - [#118367]) +- Add LogCaptureFixture type hints in tests ([@epenet] - [#118372]) +- Add SnapshotAssertion type hints in tests ([@epenet] - [#118371]) +- Bump pyosoenergyapi to 1.1.4 ([@osohotwateriot] - [#118368]) +- Add AiohttpClientMocker type hints in tests ([@epenet] - [#118373]) +- Add ClientSessionGenerator type hints in tests ([@epenet] - [#118377]) +- Bump yt-dlp to 2024.05.27 ([@joostlek] - [#118378]) +- Add Android TV Remote debug logs to help with zeroconf issue ([@tronikos] - [#117960]) +- Rework and simplify the cleanup of orphan AVM Fritz!Tools entities ([@mib1185] - [#117706]) +- Convert unnecessary coroutines into functions ([@mj23000] - [#118311]) +- Bump ruff to 0.4.6 ([@autinerd] - [#118384]) +- Entity for Tags ([@gjohansson-ST] - [#115048]) +- Bump airgradient to 0.4.2 ([@joostlek] - [#118389]) +- Allow delayed commands to not have a device id ([@synesthesiam] - [#118390]) +- Bump frontend to 20240529.0 ([@bramkragten] - [#118392]) +- Bump Python Matter Server library to 6.1.0(b0) ([@marcelveldt] - [#118388]) +- Bump zha-quirks to 0.0.116 ([@TheJulianJES] - [#118393]) +- Add select entities to AirGradient ([@joostlek] - [#117136]) +- New official genie garage integration ([@swcloudgenie] - [#117020]) +- Add translation strings for Matter Fan presets ([@marcelveldt] - [#118401]) +- Fix light discovery for Matter dimmable plugin unit ([@marcelveldt] - [#118404]) +- Handle case where timer device id exists but is not registered (delayed command) ([@synesthesiam] - [#118410]) +- Ensure paho.mqtt.client is imported in the executor ([@bdraco] - [#118412]) +- Fix google_tasks doing blocking I/O in the event loop ([@bdraco] - [#118418]) +- Fix google_mail doing blocking I/O in the event loop ([@bdraco] - [#118421]) +- Fix workday doing blocking I/O in the event loop ([@bdraco] - [#118422]) +- Fix OpenWeatherMap migration ([@freekode] - [#118428]) +- Fix blocking I/O in the event loop in meteo_france ([@bdraco] - [#118429]) +- Bump opower to 0.4.6 ([@tronikos] - [#118434]) +- Fix google_mail doing blocking i/o in the event loop (take 2) ([@bdraco] - [#118441]) +- Add Total Volatile Organic Compounds (tVOC) matter discovery schema ([@kibergus] - [#116963]) +- Improve LLM prompt ([@tronikos] - [#118443]) +- Instruct LLM to not pass a list to the domain ([@tronikos] - [#118451]) +- Bump deebot-client to 7.3.0 ([@edenhaus] - [#118462]) +- Raise `ConfigEntryNotReady` when there is no `_id` in the Tractive data ([@bieniu] - [#118467]) +- Typo fix in media_extractor ([@lunmay] - [#118473]) +- Set enity_category to config for airgradient select entities ([@edenhaus] - [#118477]) +- Extend Matter sensor discovery schemas for Air Purifier / Air Quality devices ([@marcelveldt] - [#118483]) +- Mark Matter climate dry/fan mode support on Panasonic AC ([@marcelveldt] - [#118485]) +- Update frontend to 20240530.0 ([@bramkragten] - [#118489]) +- Adjustment of unit of measurement for light ([@dontinelli] - [#116695]) +- Add support for V2C Trydan 2.1.7 ([@dgomes] - [#117147]) +- Fix Jewish calendar unique id's ([@tsvi] - [#117985]) +- Log aiohttp error in rest_command ([@jpbede] - [#118453]) +- Fix evohome so it doesn't retrieve schedules unnecessarily ([@zxdavb] - [#118478]) +- Ignore the toggle intent ([@balloob] - [#118491]) +- Fix blocking call in holiday ([@gjohansson-ST] - [#118496]) +- Remove not needed hass object from Tag ([@gjohansson-ST] - [#118498]) +- Fix group platform dependencies ([@jbouwh] - [#118499]) +- Intent script: allow setting description and platforms ([@balloob] - [#118500]) +- Fix tado non-string unique id for device trackers ([@gjohansson-ST] - [#118505]) +- Fix key issue in config entry options in Openweathermap ([@gjohansson-ST] - [#118506]) +- Ignore deprecated open and close cover intents for LLMs ([@tronikos] - [#118515]) +- Fix LLMs asking which area when there is only one device ([@tronikos] - [#118518]) +- Improve LLM prompt ([@tronikos] - [#118520]) +- Fix unnecessary single quotes escaping in Google AI ([@tronikos] - [#118522]) +- Rename llm.ToolContext to llm.LLMContext ([@balloob] - [#118566]) +- Revert "Fix Tibber sensors state class" ([@basbruss] - [#118409]) +- Add Google Generative AI Conversation system prompt `user_name` and `llm_context` variables ([@Shulyaka] - [#118510]) +- Add typing for OpenAI client and fallout ([@zweckj] - [#118514]) +- Add OpenAI Conversation system prompt `user_name` and `llm_context` variables ([@Shulyaka] - [#118512]) +- Fix snmp doing blocking I/O in the event loop ([@bdraco] - [#118521]) +- Fix openweathermap config entry migration ([@bdraco] - [#118526]) +- Fix telegram doing blocking I/O in the event loop ([@luca-angemi] - [#118531]) +- Fix off_grid_vehicle_charging_reserve_percent in Teselemetry ([@Bre77] - [#118532]) +- Migrate openai_conversation to `entry.runtime_data` ([@zweckj] - [#118535]) +- Fix typo in OWM strings ([@joostlek] - [#118538]) +- Fix YAML deprecation breaking version in jewish calendar and media extractor ([@tsvi] - [#118546]) +- Fix KeyError in dlna_dmr SSDP config flow when checking existing config entries ([@chishm] - [#118549]) +- In Brother integration use SnmpEngine from SNMP integration ([@bieniu] - [#118554]) +- Add ability to replace connections in DeviceRegistry ([@epenet] - [#118555]) +- Fix openAI tool calls ([@balloob] - [#118577]) +- Ignore myuplink sensors without a description that provide non-numeric values ([@thytterdal] - [#115525]) +- Bump pyads to 3.4.0 ([@mrpasztoradam] - [#116934]) +- Update device connections in samsungtv ([@epenet] - [#118556]) +- Run ruff format for device registry ([@jpbede] - [#118582]) +- Avoid future exception during setup of Synology DSM ([@mib1185] - [#118583]) +- Stop instructing LLM to not pass the domain as a list ([@tronikos] - [#118590]) +- Add base prompt for LLMs ([@balloob] - [#118592]) +- Strip Google AI text responses ([@tronikos] - [#118593]) +- Use gemini-1.5-flash-latest in google_generative_ai_conversation.generate_content ([@tronikos] - [#118594]) +- Fix telegram bot send_document ([@luca-angemi] - [#118616]) +- Include a traceback for non-strict event loop blocking detection ([@bdraco] - [#118620]) +- Fix handling undecoded mqtt sensor payloads ([@jbouwh] - [#118633]) +- Fix incorrect placeholder in SharkIQ ([@joostlek] - [#118640]) +- Bump ZHA dependencies ([@puddly] - [#118658]) +- Fix entity state dispatching for Tag entities ([@gjohansson-ST] - [#118662]) +- Address late review comment in samsungtv ([@epenet] - [#118539]) +- Bump pydrawise to 2024.6.2 ([@dknowles2] - [#118608]) +- Automatically fill in slots based on LLM context ([@balloob] - [#118619]) +- Revert "Add websocket API to get list of recorded entities (#92640)" ([@bdraco] - [#118644]) +- Fixing device model compatibility issues. ([@matrixd2] - [#118686]) +- Bump python-roborock to 2.2.2 ([@piitaya] - [#118697]) +- Configure device in airgradient config flow ([@joostlek] - [#118699]) +- Disable both option in Airgradient select ([@joostlek] - [#118702]) +- Bump pyoverkiz to 1.13.11 ([@iMicknl] - [#118703]) +- Use ISO format when passing date to LLMs ([@tronikos] - [#118705]) +- Don't store tag_id in tag storage ([@emontnemery] - [#118707]) +- Remove unintended translation key from blink ([@mkmer] - [#118712]) +- Remove tag_id from tag store ([@emontnemery] - [#118713]) +- Address reviews comments in #117147 ([@dgomes] - [#118714]) +- Bump renault-api to 0.2.3 ([@epenet] - [#118718]) +- Tweak light service schema ([@emontnemery] - [#118720]) +- Rename Discovergy to inexogy ([@jpbede] - [#118724]) +- Resolve areas/floors to ids in intent_script ([@synesthesiam] - [#118734]) +- Update frontend to 20240603.0 ([@bramkragten] - [#118736]) +- Require firmware version 3.1.1 for airgradient ([@joostlek] - [#118744]) +- Remove dispatcher from Tag entity ([@balloob] - [#118671]) +- Harden evohome against failures to retrieve zone schedules ([@zxdavb] - [#118517]) +- Bump reolink-aio to 0.9.1 ([@starkillerOG] - [#118655]) +- Google Gen AI: Copy messages to avoid changing the trace data ([@balloob] - [#118745]) +- Revert "Allow MQTT device based auto discovery" ([@jbouwh] - [#118746]) +- Update OpenAI prompt on each interaction ([@balloob] - [#118747]) +- Bump intents to 2024.6.3 ([@synesthesiam] - [#118748]) +- Do not log mqtt origin info if the log level does not allow it ([@jbouwh] - [#118752]) +- Clean up exposed domains ([@synesthesiam] - [#118753]) +- Recover mqtt abbrevations optimizations ([@jbouwh] - [#118762]) +- Update hass-nabucasa to version 0.81.1 ([@ludeeus] - [#118768]) +- Bump airgradient to 0.4.3 ([@joostlek] - [#118776]) +- Initial cleanup for Aladdin connect ([@joostlek] - [#118777]) +- Use model from Aladdin Connect lib ([@joostlek] - [#118778]) +- Add coordinator to Aladdin Connect ([@joostlek] - [#118781]) +- Re-enable sensor platform for Aladdin Connect ([@joostlek] - [#118782]) +- Move Aladdin stale device removal to init module ([@joostlek] - [#118784]) +- Refactor fixture calling for BMW tests ([@rikroe] - [#118708]) +- Set lock state to unkown on BMW API error ([@rikroe] - [#118559]) +- Use snapshot_platform helper for BMW tests ([@rikroe] - [#118735]) +- Allow per-sensor unit conversion on BMW sensors ([@rikroe] - [#110272]) +- Fix calculation of Starlink sleep end setting ([@boswelja] - [#115507]) +- Fix updating options in Jewish Calendar ([@tsvi] - [#118643]) +- Include script description in LLM exposed entities ([@balloob] - [#118749]) +- Set unique id in aladdin connect config flow ([@joostlek] - [#118798]) +- Add missing FAN_ONLY mode to ccm15 ([@arturyak] - [#118804]) +- Check if Shelly `entry.runtime_data` is available ([@bieniu] - [#118805]) +- Bump Python Matter Server library to 6.1.0 ([@agners] - [#118806]) +- Update frontend to 20240604.0 ([@bramkragten] - [#118811]) +- Ensure name of task is logged for unhandled loop exceptions ([@bdraco] - [#118822]) +- Initialize the Sentry SDK within an import executor job to not block event loop ([@jpbede] - [#118830]) +- Fix Hydrawise sensor availability ([@PeteRager] - [#118669]) +- Conserve Reolink battery by not waking the camera on each update ([@starkillerOG] - [#118773]) +- Fix capitalization of protocols in Reolink option flow ([@frenck] - [#118839]) +- Fix the radio browser doing I/O in the event loop ([@balloob] - [#118842]) +- Bump python-roborock to 2.2.3 ([@ethemcemozkan] - [#118853]) +- Improve repair issue when notify service is still being used ([@jbouwh] - [#118855]) +- Fix TypeAliasType not callable in senz ([@cdce8p] - [#118872]) +- Update frontend to 20240605.0 ([@bramkragten] - [#118875]) +- Improve WS command validate_config ([@emontnemery] - [#118864]) +- Bump intents to 2024.6.5 ([@synesthesiam] - [#118890]) +- Replace slave by meter in v2c ([@edenhaus] - [#118893]) + +[#101731]: https://github.com/home-assistant/core/pull/101731 +[#101786]: https://github.com/home-assistant/core/pull/101786 +[#103844]: https://github.com/home-assistant/core/pull/103844 +[#105432]: https://github.com/home-assistant/core/pull/105432 +[#105622]: https://github.com/home-assistant/core/pull/105622 +[#106940]: https://github.com/home-assistant/core/pull/106940 +[#107078]: https://github.com/home-assistant/core/pull/107078 +[#107404]: https://github.com/home-assistant/core/pull/107404 +[#107510]: https://github.com/home-assistant/core/pull/107510 +[#107592]: https://github.com/home-assistant/core/pull/107592 +[#108170]: https://github.com/home-assistant/core/pull/108170 +[#108896]: https://github.com/home-assistant/core/pull/108896 +[#108928]: https://github.com/home-assistant/core/pull/108928 +[#109030]: https://github.com/home-assistant/core/pull/109030 +[#109043]: https://github.com/home-assistant/core/pull/109043 +[#109337]: https://github.com/home-assistant/core/pull/109337 +[#109508]: https://github.com/home-assistant/core/pull/109508 +[#109884]: https://github.com/home-assistant/core/pull/109884 +[#109920]: https://github.com/home-assistant/core/pull/109920 +[#110247]: https://github.com/home-assistant/core/pull/110247 +[#110272]: https://github.com/home-assistant/core/pull/110272 +[#110475]: https://github.com/home-assistant/core/pull/110475 +[#110513]: https://github.com/home-assistant/core/pull/110513 +[#110612]: https://github.com/home-assistant/core/pull/110612 +[#110924]: https://github.com/home-assistant/core/pull/110924 +[#111014]: https://github.com/home-assistant/core/pull/111014 +[#111152]: https://github.com/home-assistant/core/pull/111152 +[#111212]: https://github.com/home-assistant/core/pull/111212 +[#111426]: https://github.com/home-assistant/core/pull/111426 +[#111643]: https://github.com/home-assistant/core/pull/111643 +[#111942]: https://github.com/home-assistant/core/pull/111942 +[#111968]: https://github.com/home-assistant/core/pull/111968 +[#112076]: https://github.com/home-assistant/core/pull/112076 +[#112206]: https://github.com/home-assistant/core/pull/112206 +[#112480]: https://github.com/home-assistant/core/pull/112480 +[#112523]: https://github.com/home-assistant/core/pull/112523 +[#112540]: https://github.com/home-assistant/core/pull/112540 +[#112660]: https://github.com/home-assistant/core/pull/112660 +[#112862]: https://github.com/home-assistant/core/pull/112862 +[#112885]: https://github.com/home-assistant/core/pull/112885 +[#112978]: https://github.com/home-assistant/core/pull/112978 +[#113036]: https://github.com/home-assistant/core/pull/113036 +[#113047]: https://github.com/home-assistant/core/pull/113047 +[#113080]: https://github.com/home-assistant/core/pull/113080 +[#113084]: https://github.com/home-assistant/core/pull/113084 +[#113375]: https://github.com/home-assistant/core/pull/113375 +[#113498]: https://github.com/home-assistant/core/pull/113498 +[#113517]: https://github.com/home-assistant/core/pull/113517 +[#113585]: https://github.com/home-assistant/core/pull/113585 +[#113770]: https://github.com/home-assistant/core/pull/113770 +[#113774]: https://github.com/home-assistant/core/pull/113774 +[#113795]: https://github.com/home-assistant/core/pull/113795 +[#114056]: https://github.com/home-assistant/core/pull/114056 +[#114113]: https://github.com/home-assistant/core/pull/114113 +[#114119]: https://github.com/home-assistant/core/pull/114119 +[#114133]: https://github.com/home-assistant/core/pull/114133 +[#114330]: https://github.com/home-assistant/core/pull/114330 +[#114458]: https://github.com/home-assistant/core/pull/114458 +[#114530]: https://github.com/home-assistant/core/pull/114530 +[#114531]: https://github.com/home-assistant/core/pull/114531 +[#114599]: https://github.com/home-assistant/core/pull/114599 +[#114967]: https://github.com/home-assistant/core/pull/114967 +[#115025]: https://github.com/home-assistant/core/pull/115025 +[#115048]: https://github.com/home-assistant/core/pull/115048 +[#115139]: https://github.com/home-assistant/core/pull/115139 +[#115218]: https://github.com/home-assistant/core/pull/115218 +[#115239]: https://github.com/home-assistant/core/pull/115239 +[#115312]: https://github.com/home-assistant/core/pull/115312 +[#115349]: https://github.com/home-assistant/core/pull/115349 +[#115371]: https://github.com/home-assistant/core/pull/115371 +[#115374]: https://github.com/home-assistant/core/pull/115374 +[#115395]: https://github.com/home-assistant/core/pull/115395 +[#115399]: https://github.com/home-assistant/core/pull/115399 +[#115445]: https://github.com/home-assistant/core/pull/115445 +[#115464]: https://github.com/home-assistant/core/pull/115464 +[#115507]: https://github.com/home-assistant/core/pull/115507 +[#115522]: https://github.com/home-assistant/core/pull/115522 +[#115525]: https://github.com/home-assistant/core/pull/115525 +[#115532]: https://github.com/home-assistant/core/pull/115532 +[#115641]: https://github.com/home-assistant/core/pull/115641 +[#115669]: https://github.com/home-assistant/core/pull/115669 +[#115702]: https://github.com/home-assistant/core/pull/115702 +[#115715]: https://github.com/home-assistant/core/pull/115715 +[#115717]: https://github.com/home-assistant/core/pull/115717 +[#115732]: https://github.com/home-assistant/core/pull/115732 +[#115735]: https://github.com/home-assistant/core/pull/115735 +[#115781]: https://github.com/home-assistant/core/pull/115781 +[#115808]: https://github.com/home-assistant/core/pull/115808 +[#115828]: https://github.com/home-assistant/core/pull/115828 +[#115888]: https://github.com/home-assistant/core/pull/115888 +[#115915]: https://github.com/home-assistant/core/pull/115915 +[#115926]: https://github.com/home-assistant/core/pull/115926 +[#115939]: https://github.com/home-assistant/core/pull/115939 +[#115948]: https://github.com/home-assistant/core/pull/115948 +[#115969]: https://github.com/home-assistant/core/pull/115969 +[#115970]: https://github.com/home-assistant/core/pull/115970 +[#115998]: https://github.com/home-assistant/core/pull/115998 +[#116115]: https://github.com/home-assistant/core/pull/116115 +[#116120]: https://github.com/home-assistant/core/pull/116120 +[#116133]: https://github.com/home-assistant/core/pull/116133 +[#116147]: https://github.com/home-assistant/core/pull/116147 +[#116148]: https://github.com/home-assistant/core/pull/116148 +[#116150]: https://github.com/home-assistant/core/pull/116150 +[#116158]: https://github.com/home-assistant/core/pull/116158 +[#116159]: https://github.com/home-assistant/core/pull/116159 +[#116167]: https://github.com/home-assistant/core/pull/116167 +[#116169]: https://github.com/home-assistant/core/pull/116169 +[#116179]: https://github.com/home-assistant/core/pull/116179 +[#116185]: https://github.com/home-assistant/core/pull/116185 +[#116196]: https://github.com/home-assistant/core/pull/116196 +[#116197]: https://github.com/home-assistant/core/pull/116197 +[#116201]: https://github.com/home-assistant/core/pull/116201 +[#116202]: https://github.com/home-assistant/core/pull/116202 +[#116204]: https://github.com/home-assistant/core/pull/116204 +[#116207]: https://github.com/home-assistant/core/pull/116207 +[#116208]: https://github.com/home-assistant/core/pull/116208 +[#116209]: https://github.com/home-assistant/core/pull/116209 +[#116210]: https://github.com/home-assistant/core/pull/116210 +[#116211]: https://github.com/home-assistant/core/pull/116211 +[#116220]: https://github.com/home-assistant/core/pull/116220 +[#116229]: https://github.com/home-assistant/core/pull/116229 +[#116234]: https://github.com/home-assistant/core/pull/116234 +[#116238]: https://github.com/home-assistant/core/pull/116238 +[#116239]: https://github.com/home-assistant/core/pull/116239 +[#116240]: https://github.com/home-assistant/core/pull/116240 +[#116241]: https://github.com/home-assistant/core/pull/116241 +[#116250]: https://github.com/home-assistant/core/pull/116250 +[#116284]: https://github.com/home-assistant/core/pull/116284 +[#116292]: https://github.com/home-assistant/core/pull/116292 +[#116295]: https://github.com/home-assistant/core/pull/116295 +[#116296]: https://github.com/home-assistant/core/pull/116296 +[#116297]: https://github.com/home-assistant/core/pull/116297 +[#116298]: https://github.com/home-assistant/core/pull/116298 +[#116303]: https://github.com/home-assistant/core/pull/116303 +[#116306]: https://github.com/home-assistant/core/pull/116306 +[#116307]: https://github.com/home-assistant/core/pull/116307 +[#116308]: https://github.com/home-assistant/core/pull/116308 +[#116309]: https://github.com/home-assistant/core/pull/116309 +[#116310]: https://github.com/home-assistant/core/pull/116310 +[#116311]: https://github.com/home-assistant/core/pull/116311 +[#116312]: https://github.com/home-assistant/core/pull/116312 +[#116317]: https://github.com/home-assistant/core/pull/116317 +[#116318]: https://github.com/home-assistant/core/pull/116318 +[#116332]: https://github.com/home-assistant/core/pull/116332 +[#116336]: https://github.com/home-assistant/core/pull/116336 +[#116347]: https://github.com/home-assistant/core/pull/116347 +[#116348]: https://github.com/home-assistant/core/pull/116348 +[#116349]: https://github.com/home-assistant/core/pull/116349 +[#116350]: https://github.com/home-assistant/core/pull/116350 +[#116356]: https://github.com/home-assistant/core/pull/116356 +[#116360]: https://github.com/home-assistant/core/pull/116360 +[#116361]: https://github.com/home-assistant/core/pull/116361 +[#116362]: https://github.com/home-assistant/core/pull/116362 +[#116363]: https://github.com/home-assistant/core/pull/116363 +[#116364]: https://github.com/home-assistant/core/pull/116364 +[#116368]: https://github.com/home-assistant/core/pull/116368 +[#116373]: https://github.com/home-assistant/core/pull/116373 +[#116375]: https://github.com/home-assistant/core/pull/116375 +[#116376]: https://github.com/home-assistant/core/pull/116376 +[#116377]: https://github.com/home-assistant/core/pull/116377 +[#116378]: https://github.com/home-assistant/core/pull/116378 +[#116379]: https://github.com/home-assistant/core/pull/116379 +[#116380]: https://github.com/home-assistant/core/pull/116380 +[#116381]: https://github.com/home-assistant/core/pull/116381 +[#116382]: https://github.com/home-assistant/core/pull/116382 +[#116387]: https://github.com/home-assistant/core/pull/116387 +[#116388]: https://github.com/home-assistant/core/pull/116388 +[#116389]: https://github.com/home-assistant/core/pull/116389 +[#116395]: https://github.com/home-assistant/core/pull/116395 +[#116401]: https://github.com/home-assistant/core/pull/116401 +[#116405]: https://github.com/home-assistant/core/pull/116405 +[#116406]: https://github.com/home-assistant/core/pull/116406 +[#116410]: https://github.com/home-assistant/core/pull/116410 +[#116412]: https://github.com/home-assistant/core/pull/116412 +[#116413]: https://github.com/home-assistant/core/pull/116413 +[#116414]: https://github.com/home-assistant/core/pull/116414 +[#116416]: https://github.com/home-assistant/core/pull/116416 +[#116419]: https://github.com/home-assistant/core/pull/116419 +[#116421]: https://github.com/home-assistant/core/pull/116421 +[#116426]: https://github.com/home-assistant/core/pull/116426 +[#116427]: https://github.com/home-assistant/core/pull/116427 +[#116431]: https://github.com/home-assistant/core/pull/116431 +[#116433]: https://github.com/home-assistant/core/pull/116433 +[#116439]: https://github.com/home-assistant/core/pull/116439 +[#116441]: https://github.com/home-assistant/core/pull/116441 +[#116442]: https://github.com/home-assistant/core/pull/116442 +[#116445]: https://github.com/home-assistant/core/pull/116445 +[#116447]: https://github.com/home-assistant/core/pull/116447 +[#116448]: https://github.com/home-assistant/core/pull/116448 +[#116449]: https://github.com/home-assistant/core/pull/116449 +[#116450]: https://github.com/home-assistant/core/pull/116450 +[#116454]: https://github.com/home-assistant/core/pull/116454 +[#116456]: https://github.com/home-assistant/core/pull/116456 +[#116457]: https://github.com/home-assistant/core/pull/116457 +[#116459]: https://github.com/home-assistant/core/pull/116459 +[#116460]: https://github.com/home-assistant/core/pull/116460 +[#116468]: https://github.com/home-assistant/core/pull/116468 +[#116469]: https://github.com/home-assistant/core/pull/116469 +[#116477]: https://github.com/home-assistant/core/pull/116477 +[#116496]: https://github.com/home-assistant/core/pull/116496 +[#116499]: https://github.com/home-assistant/core/pull/116499 +[#116501]: https://github.com/home-assistant/core/pull/116501 +[#116504]: https://github.com/home-assistant/core/pull/116504 +[#116510]: https://github.com/home-assistant/core/pull/116510 +[#116511]: https://github.com/home-assistant/core/pull/116511 +[#116515]: https://github.com/home-assistant/core/pull/116515 +[#116517]: https://github.com/home-assistant/core/pull/116517 +[#116522]: https://github.com/home-assistant/core/pull/116522 +[#116523]: https://github.com/home-assistant/core/pull/116523 +[#116526]: https://github.com/home-assistant/core/pull/116526 +[#116530]: https://github.com/home-assistant/core/pull/116530 +[#116531]: https://github.com/home-assistant/core/pull/116531 +[#116532]: https://github.com/home-assistant/core/pull/116532 +[#116533]: https://github.com/home-assistant/core/pull/116533 +[#116534]: https://github.com/home-assistant/core/pull/116534 +[#116536]: https://github.com/home-assistant/core/pull/116536 +[#116548]: https://github.com/home-assistant/core/pull/116548 +[#116551]: https://github.com/home-assistant/core/pull/116551 +[#116552]: https://github.com/home-assistant/core/pull/116552 +[#116553]: https://github.com/home-assistant/core/pull/116553 +[#116554]: https://github.com/home-assistant/core/pull/116554 +[#116556]: https://github.com/home-assistant/core/pull/116556 +[#116557]: https://github.com/home-assistant/core/pull/116557 +[#116560]: https://github.com/home-assistant/core/pull/116560 +[#116561]: https://github.com/home-assistant/core/pull/116561 +[#116562]: https://github.com/home-assistant/core/pull/116562 +[#116563]: https://github.com/home-assistant/core/pull/116563 +[#116583]: https://github.com/home-assistant/core/pull/116583 +[#116592]: https://github.com/home-assistant/core/pull/116592 +[#116595]: https://github.com/home-assistant/core/pull/116595 +[#116604]: https://github.com/home-assistant/core/pull/116604 +[#116606]: https://github.com/home-assistant/core/pull/116606 +[#116607]: https://github.com/home-assistant/core/pull/116607 +[#116608]: https://github.com/home-assistant/core/pull/116608 +[#116610]: https://github.com/home-assistant/core/pull/116610 +[#116611]: https://github.com/home-assistant/core/pull/116611 +[#116612]: https://github.com/home-assistant/core/pull/116612 +[#116614]: https://github.com/home-assistant/core/pull/116614 +[#116615]: https://github.com/home-assistant/core/pull/116615 +[#116617]: https://github.com/home-assistant/core/pull/116617 +[#116618]: https://github.com/home-assistant/core/pull/116618 +[#116619]: https://github.com/home-assistant/core/pull/116619 +[#116620]: https://github.com/home-assistant/core/pull/116620 +[#116622]: https://github.com/home-assistant/core/pull/116622 +[#116623]: https://github.com/home-assistant/core/pull/116623 +[#116624]: https://github.com/home-assistant/core/pull/116624 +[#116625]: https://github.com/home-assistant/core/pull/116625 +[#116629]: https://github.com/home-assistant/core/pull/116629 +[#116630]: https://github.com/home-assistant/core/pull/116630 +[#116631]: https://github.com/home-assistant/core/pull/116631 +[#116633]: https://github.com/home-assistant/core/pull/116633 +[#116636]: https://github.com/home-assistant/core/pull/116636 +[#116638]: https://github.com/home-assistant/core/pull/116638 +[#116642]: https://github.com/home-assistant/core/pull/116642 +[#116643]: https://github.com/home-assistant/core/pull/116643 +[#116652]: https://github.com/home-assistant/core/pull/116652 +[#116653]: https://github.com/home-assistant/core/pull/116653 +[#116654]: https://github.com/home-assistant/core/pull/116654 +[#116657]: https://github.com/home-assistant/core/pull/116657 +[#116658]: https://github.com/home-assistant/core/pull/116658 +[#116659]: https://github.com/home-assistant/core/pull/116659 +[#116663]: https://github.com/home-assistant/core/pull/116663 +[#116671]: https://github.com/home-assistant/core/pull/116671 +[#116672]: https://github.com/home-assistant/core/pull/116672 +[#116674]: https://github.com/home-assistant/core/pull/116674 +[#116682]: https://github.com/home-assistant/core/pull/116682 +[#116686]: https://github.com/home-assistant/core/pull/116686 +[#116687]: https://github.com/home-assistant/core/pull/116687 +[#116688]: https://github.com/home-assistant/core/pull/116688 +[#116691]: https://github.com/home-assistant/core/pull/116691 +[#116693]: https://github.com/home-assistant/core/pull/116693 +[#116694]: https://github.com/home-assistant/core/pull/116694 +[#116695]: https://github.com/home-assistant/core/pull/116695 +[#116697]: https://github.com/home-assistant/core/pull/116697 +[#116699]: https://github.com/home-assistant/core/pull/116699 +[#116703]: https://github.com/home-assistant/core/pull/116703 +[#116714]: https://github.com/home-assistant/core/pull/116714 +[#116726]: https://github.com/home-assistant/core/pull/116726 +[#116729]: https://github.com/home-assistant/core/pull/116729 +[#116735]: https://github.com/home-assistant/core/pull/116735 +[#116740]: https://github.com/home-assistant/core/pull/116740 +[#116747]: https://github.com/home-assistant/core/pull/116747 +[#116749]: https://github.com/home-assistant/core/pull/116749 +[#116758]: https://github.com/home-assistant/core/pull/116758 +[#116760]: https://github.com/home-assistant/core/pull/116760 +[#116763]: https://github.com/home-assistant/core/pull/116763 +[#116764]: https://github.com/home-assistant/core/pull/116764 +[#116765]: https://github.com/home-assistant/core/pull/116765 +[#116767]: https://github.com/home-assistant/core/pull/116767 +[#116771]: https://github.com/home-assistant/core/pull/116771 +[#116772]: https://github.com/home-assistant/core/pull/116772 +[#116775]: https://github.com/home-assistant/core/pull/116775 +[#116778]: https://github.com/home-assistant/core/pull/116778 +[#116781]: https://github.com/home-assistant/core/pull/116781 +[#116787]: https://github.com/home-assistant/core/pull/116787 +[#116788]: https://github.com/home-assistant/core/pull/116788 +[#116790]: https://github.com/home-assistant/core/pull/116790 +[#116793]: https://github.com/home-assistant/core/pull/116793 +[#116794]: https://github.com/home-assistant/core/pull/116794 +[#116802]: https://github.com/home-assistant/core/pull/116802 +[#116803]: https://github.com/home-assistant/core/pull/116803 +[#116806]: https://github.com/home-assistant/core/pull/116806 +[#116808]: https://github.com/home-assistant/core/pull/116808 +[#116814]: https://github.com/home-assistant/core/pull/116814 +[#116815]: https://github.com/home-assistant/core/pull/116815 +[#116816]: https://github.com/home-assistant/core/pull/116816 +[#116818]: https://github.com/home-assistant/core/pull/116818 +[#116819]: https://github.com/home-assistant/core/pull/116819 +[#116820]: https://github.com/home-assistant/core/pull/116820 +[#116821]: https://github.com/home-assistant/core/pull/116821 +[#116822]: https://github.com/home-assistant/core/pull/116822 +[#116824]: https://github.com/home-assistant/core/pull/116824 +[#116827]: https://github.com/home-assistant/core/pull/116827 +[#116845]: https://github.com/home-assistant/core/pull/116845 +[#116848]: https://github.com/home-assistant/core/pull/116848 +[#116851]: https://github.com/home-assistant/core/pull/116851 +[#116852]: https://github.com/home-assistant/core/pull/116852 +[#116857]: https://github.com/home-assistant/core/pull/116857 +[#116861]: https://github.com/home-assistant/core/pull/116861 +[#116867]: https://github.com/home-assistant/core/pull/116867 +[#116870]: https://github.com/home-assistant/core/pull/116870 +[#116877]: https://github.com/home-assistant/core/pull/116877 +[#116879]: https://github.com/home-assistant/core/pull/116879 +[#116882]: https://github.com/home-assistant/core/pull/116882 +[#116884]: https://github.com/home-assistant/core/pull/116884 +[#116886]: https://github.com/home-assistant/core/pull/116886 +[#116889]: https://github.com/home-assistant/core/pull/116889 +[#116891]: https://github.com/home-assistant/core/pull/116891 +[#116893]: https://github.com/home-assistant/core/pull/116893 +[#116895]: https://github.com/home-assistant/core/pull/116895 +[#116897]: https://github.com/home-assistant/core/pull/116897 +[#116899]: https://github.com/home-assistant/core/pull/116899 +[#116900]: https://github.com/home-assistant/core/pull/116900 +[#116906]: https://github.com/home-assistant/core/pull/116906 +[#116907]: https://github.com/home-assistant/core/pull/116907 +[#116909]: https://github.com/home-assistant/core/pull/116909 +[#116912]: https://github.com/home-assistant/core/pull/116912 +[#116918]: https://github.com/home-assistant/core/pull/116918 +[#116923]: https://github.com/home-assistant/core/pull/116923 +[#116925]: https://github.com/home-assistant/core/pull/116925 +[#116926]: https://github.com/home-assistant/core/pull/116926 +[#116927]: https://github.com/home-assistant/core/pull/116927 +[#116928]: https://github.com/home-assistant/core/pull/116928 +[#116929]: https://github.com/home-assistant/core/pull/116929 +[#116930]: https://github.com/home-assistant/core/pull/116930 +[#116931]: https://github.com/home-assistant/core/pull/116931 +[#116932]: https://github.com/home-assistant/core/pull/116932 +[#116933]: https://github.com/home-assistant/core/pull/116933 +[#116934]: https://github.com/home-assistant/core/pull/116934 +[#116942]: https://github.com/home-assistant/core/pull/116942 +[#116945]: https://github.com/home-assistant/core/pull/116945 +[#116946]: https://github.com/home-assistant/core/pull/116946 +[#116947]: https://github.com/home-assistant/core/pull/116947 +[#116951]: https://github.com/home-assistant/core/pull/116951 +[#116952]: https://github.com/home-assistant/core/pull/116952 +[#116954]: https://github.com/home-assistant/core/pull/116954 +[#116955]: https://github.com/home-assistant/core/pull/116955 +[#116956]: https://github.com/home-assistant/core/pull/116956 +[#116962]: https://github.com/home-assistant/core/pull/116962 +[#116963]: https://github.com/home-assistant/core/pull/116963 +[#116964]: https://github.com/home-assistant/core/pull/116964 +[#116981]: https://github.com/home-assistant/core/pull/116981 +[#116984]: https://github.com/home-assistant/core/pull/116984 +[#116993]: https://github.com/home-assistant/core/pull/116993 +[#116998]: https://github.com/home-assistant/core/pull/116998 +[#116999]: https://github.com/home-assistant/core/pull/116999 +[#117000]: https://github.com/home-assistant/core/pull/117000 +[#117001]: https://github.com/home-assistant/core/pull/117001 +[#117002]: https://github.com/home-assistant/core/pull/117002 +[#117003]: https://github.com/home-assistant/core/pull/117003 +[#117008]: https://github.com/home-assistant/core/pull/117008 +[#117012]: https://github.com/home-assistant/core/pull/117012 +[#117013]: https://github.com/home-assistant/core/pull/117013 +[#117014]: https://github.com/home-assistant/core/pull/117014 +[#117020]: https://github.com/home-assistant/core/pull/117020 +[#117023]: https://github.com/home-assistant/core/pull/117023 +[#117026]: https://github.com/home-assistant/core/pull/117026 +[#117027]: https://github.com/home-assistant/core/pull/117027 +[#117029]: https://github.com/home-assistant/core/pull/117029 +[#117030]: https://github.com/home-assistant/core/pull/117030 +[#117031]: https://github.com/home-assistant/core/pull/117031 +[#117032]: https://github.com/home-assistant/core/pull/117032 +[#117033]: https://github.com/home-assistant/core/pull/117033 +[#117034]: https://github.com/home-assistant/core/pull/117034 +[#117035]: https://github.com/home-assistant/core/pull/117035 +[#117036]: https://github.com/home-assistant/core/pull/117036 +[#117037]: https://github.com/home-assistant/core/pull/117037 +[#117043]: https://github.com/home-assistant/core/pull/117043 +[#117044]: https://github.com/home-assistant/core/pull/117044 +[#117047]: https://github.com/home-assistant/core/pull/117047 +[#117049]: https://github.com/home-assistant/core/pull/117049 +[#117050]: https://github.com/home-assistant/core/pull/117050 +[#117051]: https://github.com/home-assistant/core/pull/117051 +[#117054]: https://github.com/home-assistant/core/pull/117054 +[#117056]: https://github.com/home-assistant/core/pull/117056 +[#117058]: https://github.com/home-assistant/core/pull/117058 +[#117060]: https://github.com/home-assistant/core/pull/117060 +[#117062]: https://github.com/home-assistant/core/pull/117062 +[#117064]: https://github.com/home-assistant/core/pull/117064 +[#117066]: https://github.com/home-assistant/core/pull/117066 +[#117074]: https://github.com/home-assistant/core/pull/117074 +[#117076]: https://github.com/home-assistant/core/pull/117076 +[#117077]: https://github.com/home-assistant/core/pull/117077 +[#117078]: https://github.com/home-assistant/core/pull/117078 +[#117081]: https://github.com/home-assistant/core/pull/117081 +[#117082]: https://github.com/home-assistant/core/pull/117082 +[#117084]: https://github.com/home-assistant/core/pull/117084 +[#117085]: https://github.com/home-assistant/core/pull/117085 +[#117086]: https://github.com/home-assistant/core/pull/117086 +[#117095]: https://github.com/home-assistant/core/pull/117095 +[#117096]: https://github.com/home-assistant/core/pull/117096 +[#117099]: https://github.com/home-assistant/core/pull/117099 +[#117103]: https://github.com/home-assistant/core/pull/117103 +[#117108]: https://github.com/home-assistant/core/pull/117108 +[#117109]: https://github.com/home-assistant/core/pull/117109 +[#117110]: https://github.com/home-assistant/core/pull/117110 +[#117116]: https://github.com/home-assistant/core/pull/117116 +[#117118]: https://github.com/home-assistant/core/pull/117118 +[#117127]: https://github.com/home-assistant/core/pull/117127 +[#117129]: https://github.com/home-assistant/core/pull/117129 +[#117134]: https://github.com/home-assistant/core/pull/117134 +[#117135]: https://github.com/home-assistant/core/pull/117135 +[#117136]: https://github.com/home-assistant/core/pull/117136 +[#117147]: https://github.com/home-assistant/core/pull/117147 +[#117154]: https://github.com/home-assistant/core/pull/117154 +[#117157]: https://github.com/home-assistant/core/pull/117157 +[#117161]: https://github.com/home-assistant/core/pull/117161 +[#117171]: https://github.com/home-assistant/core/pull/117171 +[#117172]: https://github.com/home-assistant/core/pull/117172 +[#117174]: https://github.com/home-assistant/core/pull/117174 +[#117175]: https://github.com/home-assistant/core/pull/117175 +[#117183]: https://github.com/home-assistant/core/pull/117183 +[#117184]: https://github.com/home-assistant/core/pull/117184 +[#117185]: https://github.com/home-assistant/core/pull/117185 +[#117192]: https://github.com/home-assistant/core/pull/117192 +[#117195]: https://github.com/home-assistant/core/pull/117195 +[#117196]: https://github.com/home-assistant/core/pull/117196 +[#117199]: https://github.com/home-assistant/core/pull/117199 +[#117206]: https://github.com/home-assistant/core/pull/117206 +[#117210]: https://github.com/home-assistant/core/pull/117210 +[#117213]: https://github.com/home-assistant/core/pull/117213 +[#117214]: https://github.com/home-assistant/core/pull/117214 +[#117215]: https://github.com/home-assistant/core/pull/117215 +[#117217]: https://github.com/home-assistant/core/pull/117217 +[#117218]: https://github.com/home-assistant/core/pull/117218 +[#117219]: https://github.com/home-assistant/core/pull/117219 +[#117222]: https://github.com/home-assistant/core/pull/117222 +[#117224]: https://github.com/home-assistant/core/pull/117224 +[#117226]: https://github.com/home-assistant/core/pull/117226 +[#117227]: https://github.com/home-assistant/core/pull/117227 +[#117229]: https://github.com/home-assistant/core/pull/117229 +[#117230]: https://github.com/home-assistant/core/pull/117230 +[#117231]: https://github.com/home-assistant/core/pull/117231 +[#117237]: https://github.com/home-assistant/core/pull/117237 +[#117238]: https://github.com/home-assistant/core/pull/117238 +[#117239]: https://github.com/home-assistant/core/pull/117239 +[#117240]: https://github.com/home-assistant/core/pull/117240 +[#117241]: https://github.com/home-assistant/core/pull/117241 +[#117242]: https://github.com/home-assistant/core/pull/117242 +[#117244]: https://github.com/home-assistant/core/pull/117244 +[#117245]: https://github.com/home-assistant/core/pull/117245 +[#117246]: https://github.com/home-assistant/core/pull/117246 +[#117247]: https://github.com/home-assistant/core/pull/117247 +[#117248]: https://github.com/home-assistant/core/pull/117248 +[#117249]: https://github.com/home-assistant/core/pull/117249 +[#117261]: https://github.com/home-assistant/core/pull/117261 +[#117264]: https://github.com/home-assistant/core/pull/117264 +[#117270]: https://github.com/home-assistant/core/pull/117270 +[#117278]: https://github.com/home-assistant/core/pull/117278 +[#117280]: https://github.com/home-assistant/core/pull/117280 +[#117283]: https://github.com/home-assistant/core/pull/117283 +[#117285]: https://github.com/home-assistant/core/pull/117285 +[#117286]: https://github.com/home-assistant/core/pull/117286 +[#117288]: https://github.com/home-assistant/core/pull/117288 +[#117289]: https://github.com/home-assistant/core/pull/117289 +[#117290]: https://github.com/home-assistant/core/pull/117290 +[#117292]: https://github.com/home-assistant/core/pull/117292 +[#117293]: https://github.com/home-assistant/core/pull/117293 +[#117295]: https://github.com/home-assistant/core/pull/117295 +[#117301]: https://github.com/home-assistant/core/pull/117301 +[#117305]: https://github.com/home-assistant/core/pull/117305 +[#117312]: https://github.com/home-assistant/core/pull/117312 +[#117315]: https://github.com/home-assistant/core/pull/117315 +[#117318]: https://github.com/home-assistant/core/pull/117318 +[#117321]: https://github.com/home-assistant/core/pull/117321 +[#117323]: https://github.com/home-assistant/core/pull/117323 +[#117330]: https://github.com/home-assistant/core/pull/117330 +[#117336]: https://github.com/home-assistant/core/pull/117336 +[#117340]: https://github.com/home-assistant/core/pull/117340 +[#117341]: https://github.com/home-assistant/core/pull/117341 +[#117344]: https://github.com/home-assistant/core/pull/117344 +[#117345]: https://github.com/home-assistant/core/pull/117345 +[#117346]: https://github.com/home-assistant/core/pull/117346 +[#117347]: https://github.com/home-assistant/core/pull/117347 +[#117350]: https://github.com/home-assistant/core/pull/117350 +[#117351]: https://github.com/home-assistant/core/pull/117351 +[#117357]: https://github.com/home-assistant/core/pull/117357 +[#117370]: https://github.com/home-assistant/core/pull/117370 +[#117371]: https://github.com/home-assistant/core/pull/117371 +[#117375]: https://github.com/home-assistant/core/pull/117375 +[#117377]: https://github.com/home-assistant/core/pull/117377 +[#117382]: https://github.com/home-assistant/core/pull/117382 +[#117383]: https://github.com/home-assistant/core/pull/117383 +[#117385]: https://github.com/home-assistant/core/pull/117385 +[#117388]: https://github.com/home-assistant/core/pull/117388 +[#117390]: https://github.com/home-assistant/core/pull/117390 +[#117392]: https://github.com/home-assistant/core/pull/117392 +[#117394]: https://github.com/home-assistant/core/pull/117394 +[#117395]: https://github.com/home-assistant/core/pull/117395 +[#117400]: https://github.com/home-assistant/core/pull/117400 +[#117402]: https://github.com/home-assistant/core/pull/117402 +[#117403]: https://github.com/home-assistant/core/pull/117403 +[#117404]: https://github.com/home-assistant/core/pull/117404 +[#117405]: https://github.com/home-assistant/core/pull/117405 +[#117407]: https://github.com/home-assistant/core/pull/117407 +[#117408]: https://github.com/home-assistant/core/pull/117408 +[#117409]: https://github.com/home-assistant/core/pull/117409 +[#117411]: https://github.com/home-assistant/core/pull/117411 +[#117412]: https://github.com/home-assistant/core/pull/117412 +[#117413]: https://github.com/home-assistant/core/pull/117413 +[#117416]: https://github.com/home-assistant/core/pull/117416 +[#117417]: https://github.com/home-assistant/core/pull/117417 +[#117418]: https://github.com/home-assistant/core/pull/117418 +[#117419]: https://github.com/home-assistant/core/pull/117419 +[#117421]: https://github.com/home-assistant/core/pull/117421 +[#117422]: https://github.com/home-assistant/core/pull/117422 +[#117425]: https://github.com/home-assistant/core/pull/117425 +[#117426]: https://github.com/home-assistant/core/pull/117426 +[#117427]: https://github.com/home-assistant/core/pull/117427 +[#117428]: https://github.com/home-assistant/core/pull/117428 +[#117429]: https://github.com/home-assistant/core/pull/117429 +[#117432]: https://github.com/home-assistant/core/pull/117432 +[#117433]: https://github.com/home-assistant/core/pull/117433 +[#117435]: https://github.com/home-assistant/core/pull/117435 +[#117437]: https://github.com/home-assistant/core/pull/117437 +[#117438]: https://github.com/home-assistant/core/pull/117438 +[#117440]: https://github.com/home-assistant/core/pull/117440 +[#117442]: https://github.com/home-assistant/core/pull/117442 +[#117448]: https://github.com/home-assistant/core/pull/117448 +[#117450]: https://github.com/home-assistant/core/pull/117450 +[#117452]: https://github.com/home-assistant/core/pull/117452 +[#117453]: https://github.com/home-assistant/core/pull/117453 +[#117457]: https://github.com/home-assistant/core/pull/117457 +[#117459]: https://github.com/home-assistant/core/pull/117459 +[#117460]: https://github.com/home-assistant/core/pull/117460 +[#117462]: https://github.com/home-assistant/core/pull/117462 +[#117463]: https://github.com/home-assistant/core/pull/117463 +[#117464]: https://github.com/home-assistant/core/pull/117464 +[#117467]: https://github.com/home-assistant/core/pull/117467 +[#117469]: https://github.com/home-assistant/core/pull/117469 +[#117470]: https://github.com/home-assistant/core/pull/117470 +[#117471]: https://github.com/home-assistant/core/pull/117471 +[#117472]: https://github.com/home-assistant/core/pull/117472 +[#117473]: https://github.com/home-assistant/core/pull/117473 +[#117474]: https://github.com/home-assistant/core/pull/117474 +[#117475]: https://github.com/home-assistant/core/pull/117475 +[#117476]: https://github.com/home-assistant/core/pull/117476 +[#117477]: https://github.com/home-assistant/core/pull/117477 +[#117478]: https://github.com/home-assistant/core/pull/117478 +[#117479]: https://github.com/home-assistant/core/pull/117479 +[#117480]: https://github.com/home-assistant/core/pull/117480 +[#117482]: https://github.com/home-assistant/core/pull/117482 +[#117485]: https://github.com/home-assistant/core/pull/117485 +[#117486]: https://github.com/home-assistant/core/pull/117486 +[#117488]: https://github.com/home-assistant/core/pull/117488 +[#117491]: https://github.com/home-assistant/core/pull/117491 +[#117493]: https://github.com/home-assistant/core/pull/117493 +[#117495]: https://github.com/home-assistant/core/pull/117495 +[#117496]: https://github.com/home-assistant/core/pull/117496 +[#117498]: https://github.com/home-assistant/core/pull/117498 +[#117500]: https://github.com/home-assistant/core/pull/117500 +[#117502]: https://github.com/home-assistant/core/pull/117502 +[#117503]: https://github.com/home-assistant/core/pull/117503 +[#117504]: https://github.com/home-assistant/core/pull/117504 +[#117506]: https://github.com/home-assistant/core/pull/117506 +[#117507]: https://github.com/home-assistant/core/pull/117507 +[#117518]: https://github.com/home-assistant/core/pull/117518 +[#117519]: https://github.com/home-assistant/core/pull/117519 +[#117520]: https://github.com/home-assistant/core/pull/117520 +[#117521]: https://github.com/home-assistant/core/pull/117521 +[#117525]: https://github.com/home-assistant/core/pull/117525 +[#117527]: https://github.com/home-assistant/core/pull/117527 +[#117536]: https://github.com/home-assistant/core/pull/117536 +[#117537]: https://github.com/home-assistant/core/pull/117537 +[#117538]: https://github.com/home-assistant/core/pull/117538 +[#117543]: https://github.com/home-assistant/core/pull/117543 +[#117544]: https://github.com/home-assistant/core/pull/117544 +[#117546]: https://github.com/home-assistant/core/pull/117546 +[#117548]: https://github.com/home-assistant/core/pull/117548 +[#117549]: https://github.com/home-assistant/core/pull/117549 +[#117552]: https://github.com/home-assistant/core/pull/117552 +[#117553]: https://github.com/home-assistant/core/pull/117553 +[#117556]: https://github.com/home-assistant/core/pull/117556 +[#117559]: https://github.com/home-assistant/core/pull/117559 +[#117560]: https://github.com/home-assistant/core/pull/117560 +[#117561]: https://github.com/home-assistant/core/pull/117561 +[#117562]: https://github.com/home-assistant/core/pull/117562 +[#117563]: https://github.com/home-assistant/core/pull/117563 +[#117565]: https://github.com/home-assistant/core/pull/117565 +[#117568]: https://github.com/home-assistant/core/pull/117568 +[#117570]: https://github.com/home-assistant/core/pull/117570 +[#117573]: https://github.com/home-assistant/core/pull/117573 +[#117575]: https://github.com/home-assistant/core/pull/117575 +[#117578]: https://github.com/home-assistant/core/pull/117578 +[#117579]: https://github.com/home-assistant/core/pull/117579 +[#117582]: https://github.com/home-assistant/core/pull/117582 +[#117583]: https://github.com/home-assistant/core/pull/117583 +[#117587]: https://github.com/home-assistant/core/pull/117587 +[#117590]: https://github.com/home-assistant/core/pull/117590 +[#117592]: https://github.com/home-assistant/core/pull/117592 +[#117593]: https://github.com/home-assistant/core/pull/117593 +[#117606]: https://github.com/home-assistant/core/pull/117606 +[#117608]: https://github.com/home-assistant/core/pull/117608 +[#117609]: https://github.com/home-assistant/core/pull/117609 +[#117610]: https://github.com/home-assistant/core/pull/117610 +[#117611]: https://github.com/home-assistant/core/pull/117611 +[#117612]: https://github.com/home-assistant/core/pull/117612 +[#117613]: https://github.com/home-assistant/core/pull/117613 +[#117616]: https://github.com/home-assistant/core/pull/117616 +[#117618]: https://github.com/home-assistant/core/pull/117618 +[#117619]: https://github.com/home-assistant/core/pull/117619 +[#117620]: https://github.com/home-assistant/core/pull/117620 +[#117621]: https://github.com/home-assistant/core/pull/117621 +[#117625]: https://github.com/home-assistant/core/pull/117625 +[#117630]: https://github.com/home-assistant/core/pull/117630 +[#117632]: https://github.com/home-assistant/core/pull/117632 +[#117633]: https://github.com/home-assistant/core/pull/117633 +[#117637]: https://github.com/home-assistant/core/pull/117637 +[#117638]: https://github.com/home-assistant/core/pull/117638 +[#117639]: https://github.com/home-assistant/core/pull/117639 +[#117640]: https://github.com/home-assistant/core/pull/117640 +[#117643]: https://github.com/home-assistant/core/pull/117643 +[#117644]: https://github.com/home-assistant/core/pull/117644 +[#117645]: https://github.com/home-assistant/core/pull/117645 +[#117647]: https://github.com/home-assistant/core/pull/117647 +[#117658]: https://github.com/home-assistant/core/pull/117658 +[#117659]: https://github.com/home-assistant/core/pull/117659 +[#117660]: https://github.com/home-assistant/core/pull/117660 +[#117661]: https://github.com/home-assistant/core/pull/117661 +[#117662]: https://github.com/home-assistant/core/pull/117662 +[#117663]: https://github.com/home-assistant/core/pull/117663 +[#117664]: https://github.com/home-assistant/core/pull/117664 +[#117667]: https://github.com/home-assistant/core/pull/117667 +[#117671]: https://github.com/home-assistant/core/pull/117671 +[#117679]: https://github.com/home-assistant/core/pull/117679 +[#117680]: https://github.com/home-assistant/core/pull/117680 +[#117683]: https://github.com/home-assistant/core/pull/117683 +[#117685]: https://github.com/home-assistant/core/pull/117685 +[#117686]: https://github.com/home-assistant/core/pull/117686 +[#117687]: https://github.com/home-assistant/core/pull/117687 +[#117688]: https://github.com/home-assistant/core/pull/117688 +[#117690]: https://github.com/home-assistant/core/pull/117690 +[#117693]: https://github.com/home-assistant/core/pull/117693 +[#117699]: https://github.com/home-assistant/core/pull/117699 +[#117701]: https://github.com/home-assistant/core/pull/117701 +[#117702]: https://github.com/home-assistant/core/pull/117702 +[#117706]: https://github.com/home-assistant/core/pull/117706 +[#117707]: https://github.com/home-assistant/core/pull/117707 +[#117708]: https://github.com/home-assistant/core/pull/117708 +[#117712]: https://github.com/home-assistant/core/pull/117712 +[#117721]: https://github.com/home-assistant/core/pull/117721 +[#117727]: https://github.com/home-assistant/core/pull/117727 +[#117728]: https://github.com/home-assistant/core/pull/117728 +[#117730]: https://github.com/home-assistant/core/pull/117730 +[#117732]: https://github.com/home-assistant/core/pull/117732 +[#117736]: https://github.com/home-assistant/core/pull/117736 +[#117739]: https://github.com/home-assistant/core/pull/117739 +[#117740]: https://github.com/home-assistant/core/pull/117740 +[#117743]: https://github.com/home-assistant/core/pull/117743 +[#117752]: https://github.com/home-assistant/core/pull/117752 +[#117754]: https://github.com/home-assistant/core/pull/117754 +[#117766]: https://github.com/home-assistant/core/pull/117766 +[#117767]: https://github.com/home-assistant/core/pull/117767 +[#117769]: https://github.com/home-assistant/core/pull/117769 +[#117770]: https://github.com/home-assistant/core/pull/117770 +[#117775]: https://github.com/home-assistant/core/pull/117775 +[#117776]: https://github.com/home-assistant/core/pull/117776 +[#117777]: https://github.com/home-assistant/core/pull/117777 +[#117778]: https://github.com/home-assistant/core/pull/117778 +[#117779]: https://github.com/home-assistant/core/pull/117779 +[#117780]: https://github.com/home-assistant/core/pull/117780 +[#117782]: https://github.com/home-assistant/core/pull/117782 +[#117783]: https://github.com/home-assistant/core/pull/117783 +[#117784]: https://github.com/home-assistant/core/pull/117784 +[#117786]: https://github.com/home-assistant/core/pull/117786 +[#117787]: https://github.com/home-assistant/core/pull/117787 +[#117788]: https://github.com/home-assistant/core/pull/117788 +[#117792]: https://github.com/home-assistant/core/pull/117792 +[#117797]: https://github.com/home-assistant/core/pull/117797 +[#117809]: https://github.com/home-assistant/core/pull/117809 +[#117810]: https://github.com/home-assistant/core/pull/117810 +[#117812]: https://github.com/home-assistant/core/pull/117812 +[#117813]: https://github.com/home-assistant/core/pull/117813 +[#117814]: https://github.com/home-assistant/core/pull/117814 +[#117815]: https://github.com/home-assistant/core/pull/117815 +[#117817]: https://github.com/home-assistant/core/pull/117817 +[#117819]: https://github.com/home-assistant/core/pull/117819 +[#117820]: https://github.com/home-assistant/core/pull/117820 +[#117822]: https://github.com/home-assistant/core/pull/117822 +[#117823]: https://github.com/home-assistant/core/pull/117823 +[#117824]: https://github.com/home-assistant/core/pull/117824 +[#117825]: https://github.com/home-assistant/core/pull/117825 +[#117830]: https://github.com/home-assistant/core/pull/117830 +[#117834]: https://github.com/home-assistant/core/pull/117834 +[#117835]: https://github.com/home-assistant/core/pull/117835 +[#117836]: https://github.com/home-assistant/core/pull/117836 +[#117837]: https://github.com/home-assistant/core/pull/117837 +[#117838]: https://github.com/home-assistant/core/pull/117838 +[#117840]: https://github.com/home-assistant/core/pull/117840 +[#117843]: https://github.com/home-assistant/core/pull/117843 +[#117845]: https://github.com/home-assistant/core/pull/117845 +[#117846]: https://github.com/home-assistant/core/pull/117846 +[#117847]: https://github.com/home-assistant/core/pull/117847 +[#117848]: https://github.com/home-assistant/core/pull/117848 +[#117849]: https://github.com/home-assistant/core/pull/117849 +[#117851]: https://github.com/home-assistant/core/pull/117851 +[#117854]: https://github.com/home-assistant/core/pull/117854 +[#117855]: https://github.com/home-assistant/core/pull/117855 +[#117856]: https://github.com/home-assistant/core/pull/117856 +[#117863]: https://github.com/home-assistant/core/pull/117863 +[#117864]: https://github.com/home-assistant/core/pull/117864 +[#117868]: https://github.com/home-assistant/core/pull/117868 +[#117869]: https://github.com/home-assistant/core/pull/117869 +[#117873]: https://github.com/home-assistant/core/pull/117873 +[#117875]: https://github.com/home-assistant/core/pull/117875 +[#117877]: https://github.com/home-assistant/core/pull/117877 +[#117878]: https://github.com/home-assistant/core/pull/117878 +[#117882]: https://github.com/home-assistant/core/pull/117882 +[#117884]: https://github.com/home-assistant/core/pull/117884 +[#117885]: https://github.com/home-assistant/core/pull/117885 +[#117886]: https://github.com/home-assistant/core/pull/117886 +[#117887]: https://github.com/home-assistant/core/pull/117887 +[#117890]: https://github.com/home-assistant/core/pull/117890 +[#117891]: https://github.com/home-assistant/core/pull/117891 +[#117893]: https://github.com/home-assistant/core/pull/117893 +[#117896]: https://github.com/home-assistant/core/pull/117896 +[#117897]: https://github.com/home-assistant/core/pull/117897 +[#117899]: https://github.com/home-assistant/core/pull/117899 +[#117900]: https://github.com/home-assistant/core/pull/117900 +[#117905]: https://github.com/home-assistant/core/pull/117905 +[#117906]: https://github.com/home-assistant/core/pull/117906 +[#117908]: https://github.com/home-assistant/core/pull/117908 +[#117909]: https://github.com/home-assistant/core/pull/117909 +[#117912]: https://github.com/home-assistant/core/pull/117912 +[#117913]: https://github.com/home-assistant/core/pull/117913 +[#117917]: https://github.com/home-assistant/core/pull/117917 +[#117920]: https://github.com/home-assistant/core/pull/117920 +[#117922]: https://github.com/home-assistant/core/pull/117922 +[#117924]: https://github.com/home-assistant/core/pull/117924 +[#117928]: https://github.com/home-assistant/core/pull/117928 +[#117929]: https://github.com/home-assistant/core/pull/117929 +[#117930]: https://github.com/home-assistant/core/pull/117930 +[#117933]: https://github.com/home-assistant/core/pull/117933 +[#117934]: https://github.com/home-assistant/core/pull/117934 +[#117935]: https://github.com/home-assistant/core/pull/117935 +[#117936]: https://github.com/home-assistant/core/pull/117936 +[#117938]: https://github.com/home-assistant/core/pull/117938 +[#117939]: https://github.com/home-assistant/core/pull/117939 +[#117940]: https://github.com/home-assistant/core/pull/117940 +[#117943]: https://github.com/home-assistant/core/pull/117943 +[#117944]: https://github.com/home-assistant/core/pull/117944 +[#117946]: https://github.com/home-assistant/core/pull/117946 +[#117951]: https://github.com/home-assistant/core/pull/117951 +[#117953]: https://github.com/home-assistant/core/pull/117953 +[#117956]: https://github.com/home-assistant/core/pull/117956 +[#117958]: https://github.com/home-assistant/core/pull/117958 +[#117960]: https://github.com/home-assistant/core/pull/117960 +[#117961]: https://github.com/home-assistant/core/pull/117961 +[#117962]: https://github.com/home-assistant/core/pull/117962 +[#117963]: https://github.com/home-assistant/core/pull/117963 +[#117964]: https://github.com/home-assistant/core/pull/117964 +[#117965]: https://github.com/home-assistant/core/pull/117965 +[#117967]: https://github.com/home-assistant/core/pull/117967 +[#117969]: https://github.com/home-assistant/core/pull/117969 +[#117970]: https://github.com/home-assistant/core/pull/117970 +[#117971]: https://github.com/home-assistant/core/pull/117971 +[#117973]: https://github.com/home-assistant/core/pull/117973 +[#117974]: https://github.com/home-assistant/core/pull/117974 +[#117975]: https://github.com/home-assistant/core/pull/117975 +[#117978]: https://github.com/home-assistant/core/pull/117978 +[#117979]: https://github.com/home-assistant/core/pull/117979 +[#117982]: https://github.com/home-assistant/core/pull/117982 +[#117983]: https://github.com/home-assistant/core/pull/117983 +[#117985]: https://github.com/home-assistant/core/pull/117985 +[#117986]: https://github.com/home-assistant/core/pull/117986 +[#117992]: https://github.com/home-assistant/core/pull/117992 +[#117993]: https://github.com/home-assistant/core/pull/117993 +[#117994]: https://github.com/home-assistant/core/pull/117994 +[#117995]: https://github.com/home-assistant/core/pull/117995 +[#117996]: https://github.com/home-assistant/core/pull/117996 +[#117999]: https://github.com/home-assistant/core/pull/117999 +[#118000]: https://github.com/home-assistant/core/pull/118000 +[#118001]: https://github.com/home-assistant/core/pull/118001 +[#118003]: https://github.com/home-assistant/core/pull/118003 +[#118006]: https://github.com/home-assistant/core/pull/118006 +[#118007]: https://github.com/home-assistant/core/pull/118007 +[#118010]: https://github.com/home-assistant/core/pull/118010 +[#118014]: https://github.com/home-assistant/core/pull/118014 +[#118015]: https://github.com/home-assistant/core/pull/118015 +[#118017]: https://github.com/home-assistant/core/pull/118017 +[#118018]: https://github.com/home-assistant/core/pull/118018 +[#118019]: https://github.com/home-assistant/core/pull/118019 +[#118020]: https://github.com/home-assistant/core/pull/118020 +[#118021]: https://github.com/home-assistant/core/pull/118021 +[#118022]: https://github.com/home-assistant/core/pull/118022 +[#118024]: https://github.com/home-assistant/core/pull/118024 +[#118027]: https://github.com/home-assistant/core/pull/118027 +[#118032]: https://github.com/home-assistant/core/pull/118032 +[#118035]: https://github.com/home-assistant/core/pull/118035 +[#118036]: https://github.com/home-assistant/core/pull/118036 +[#118037]: https://github.com/home-assistant/core/pull/118037 +[#118039]: https://github.com/home-assistant/core/pull/118039 +[#118040]: https://github.com/home-assistant/core/pull/118040 +[#118041]: https://github.com/home-assistant/core/pull/118041 +[#118042]: https://github.com/home-assistant/core/pull/118042 +[#118044]: https://github.com/home-assistant/core/pull/118044 +[#118045]: https://github.com/home-assistant/core/pull/118045 +[#118052]: https://github.com/home-assistant/core/pull/118052 +[#118053]: https://github.com/home-assistant/core/pull/118053 +[#118054]: https://github.com/home-assistant/core/pull/118054 +[#118055]: https://github.com/home-assistant/core/pull/118055 +[#118056]: https://github.com/home-assistant/core/pull/118056 +[#118059]: https://github.com/home-assistant/core/pull/118059 +[#118064]: https://github.com/home-assistant/core/pull/118064 +[#118065]: https://github.com/home-assistant/core/pull/118065 +[#118066]: https://github.com/home-assistant/core/pull/118066 +[#118067]: https://github.com/home-assistant/core/pull/118067 +[#118068]: https://github.com/home-assistant/core/pull/118068 +[#118070]: https://github.com/home-assistant/core/pull/118070 +[#118071]: https://github.com/home-assistant/core/pull/118071 +[#118072]: https://github.com/home-assistant/core/pull/118072 +[#118073]: https://github.com/home-assistant/core/pull/118073 +[#118074]: https://github.com/home-assistant/core/pull/118074 +[#118075]: https://github.com/home-assistant/core/pull/118075 +[#118076]: https://github.com/home-assistant/core/pull/118076 +[#118077]: https://github.com/home-assistant/core/pull/118077 +[#118078]: https://github.com/home-assistant/core/pull/118078 +[#118079]: https://github.com/home-assistant/core/pull/118079 +[#118080]: https://github.com/home-assistant/core/pull/118080 +[#118081]: https://github.com/home-assistant/core/pull/118081 +[#118082]: https://github.com/home-assistant/core/pull/118082 +[#118083]: https://github.com/home-assistant/core/pull/118083 +[#118084]: https://github.com/home-assistant/core/pull/118084 +[#118085]: https://github.com/home-assistant/core/pull/118085 +[#118086]: https://github.com/home-assistant/core/pull/118086 +[#118088]: https://github.com/home-assistant/core/pull/118088 +[#118091]: https://github.com/home-assistant/core/pull/118091 +[#118092]: https://github.com/home-assistant/core/pull/118092 +[#118094]: https://github.com/home-assistant/core/pull/118094 +[#118095]: https://github.com/home-assistant/core/pull/118095 +[#118096]: https://github.com/home-assistant/core/pull/118096 +[#118097]: https://github.com/home-assistant/core/pull/118097 +[#118098]: https://github.com/home-assistant/core/pull/118098 +[#118099]: https://github.com/home-assistant/core/pull/118099 +[#118100]: https://github.com/home-assistant/core/pull/118100 +[#118101]: https://github.com/home-assistant/core/pull/118101 +[#118102]: https://github.com/home-assistant/core/pull/118102 +[#118103]: https://github.com/home-assistant/core/pull/118103 +[#118104]: https://github.com/home-assistant/core/pull/118104 +[#118106]: https://github.com/home-assistant/core/pull/118106 +[#118107]: https://github.com/home-assistant/core/pull/118107 +[#118108]: https://github.com/home-assistant/core/pull/118108 +[#118109]: https://github.com/home-assistant/core/pull/118109 +[#118110]: https://github.com/home-assistant/core/pull/118110 +[#118112]: https://github.com/home-assistant/core/pull/118112 +[#118113]: https://github.com/home-assistant/core/pull/118113 +[#118114]: https://github.com/home-assistant/core/pull/118114 +[#118115]: https://github.com/home-assistant/core/pull/118115 +[#118116]: https://github.com/home-assistant/core/pull/118116 +[#118117]: https://github.com/home-assistant/core/pull/118117 +[#118118]: https://github.com/home-assistant/core/pull/118118 +[#118119]: https://github.com/home-assistant/core/pull/118119 +[#118121]: https://github.com/home-assistant/core/pull/118121 +[#118123]: https://github.com/home-assistant/core/pull/118123 +[#118124]: https://github.com/home-assistant/core/pull/118124 +[#118125]: https://github.com/home-assistant/core/pull/118125 +[#118126]: https://github.com/home-assistant/core/pull/118126 +[#118127]: https://github.com/home-assistant/core/pull/118127 +[#118128]: https://github.com/home-assistant/core/pull/118128 +[#118130]: https://github.com/home-assistant/core/pull/118130 +[#118131]: https://github.com/home-assistant/core/pull/118131 +[#118132]: https://github.com/home-assistant/core/pull/118132 +[#118136]: https://github.com/home-assistant/core/pull/118136 +[#118137]: https://github.com/home-assistant/core/pull/118137 +[#118138]: https://github.com/home-assistant/core/pull/118138 +[#118140]: https://github.com/home-assistant/core/pull/118140 +[#118141]: https://github.com/home-assistant/core/pull/118141 +[#118142]: https://github.com/home-assistant/core/pull/118142 +[#118143]: https://github.com/home-assistant/core/pull/118143 +[#118144]: https://github.com/home-assistant/core/pull/118144 +[#118145]: https://github.com/home-assistant/core/pull/118145 +[#118146]: https://github.com/home-assistant/core/pull/118146 +[#118148]: https://github.com/home-assistant/core/pull/118148 +[#118151]: https://github.com/home-assistant/core/pull/118151 +[#118153]: https://github.com/home-assistant/core/pull/118153 +[#118158]: https://github.com/home-assistant/core/pull/118158 +[#118159]: https://github.com/home-assistant/core/pull/118159 +[#118161]: https://github.com/home-assistant/core/pull/118161 +[#118163]: https://github.com/home-assistant/core/pull/118163 +[#118164]: https://github.com/home-assistant/core/pull/118164 +[#118165]: https://github.com/home-assistant/core/pull/118165 +[#118166]: https://github.com/home-assistant/core/pull/118166 +[#118168]: https://github.com/home-assistant/core/pull/118168 +[#118170]: https://github.com/home-assistant/core/pull/118170 +[#118171]: https://github.com/home-assistant/core/pull/118171 +[#118172]: https://github.com/home-assistant/core/pull/118172 +[#118177]: https://github.com/home-assistant/core/pull/118177 +[#118179]: https://github.com/home-assistant/core/pull/118179 +[#118180]: https://github.com/home-assistant/core/pull/118180 +[#118181]: https://github.com/home-assistant/core/pull/118181 +[#118184]: https://github.com/home-assistant/core/pull/118184 +[#118187]: https://github.com/home-assistant/core/pull/118187 +[#118188]: https://github.com/home-assistant/core/pull/118188 +[#118191]: https://github.com/home-assistant/core/pull/118191 +[#118193]: https://github.com/home-assistant/core/pull/118193 +[#118194]: https://github.com/home-assistant/core/pull/118194 +[#118195]: https://github.com/home-assistant/core/pull/118195 +[#118196]: https://github.com/home-assistant/core/pull/118196 +[#118198]: https://github.com/home-assistant/core/pull/118198 +[#118199]: https://github.com/home-assistant/core/pull/118199 +[#118200]: https://github.com/home-assistant/core/pull/118200 +[#118203]: https://github.com/home-assistant/core/pull/118203 +[#118204]: https://github.com/home-assistant/core/pull/118204 +[#118205]: https://github.com/home-assistant/core/pull/118205 +[#118206]: https://github.com/home-assistant/core/pull/118206 +[#118208]: https://github.com/home-assistant/core/pull/118208 +[#118210]: https://github.com/home-assistant/core/pull/118210 +[#118211]: https://github.com/home-assistant/core/pull/118211 +[#118212]: https://github.com/home-assistant/core/pull/118212 +[#118213]: https://github.com/home-assistant/core/pull/118213 +[#118214]: https://github.com/home-assistant/core/pull/118214 +[#118215]: https://github.com/home-assistant/core/pull/118215 +[#118217]: https://github.com/home-assistant/core/pull/118217 +[#118218]: https://github.com/home-assistant/core/pull/118218 +[#118220]: https://github.com/home-assistant/core/pull/118220 +[#118222]: https://github.com/home-assistant/core/pull/118222 +[#118224]: https://github.com/home-assistant/core/pull/118224 +[#118226]: https://github.com/home-assistant/core/pull/118226 +[#118227]: https://github.com/home-assistant/core/pull/118227 +[#118229]: https://github.com/home-assistant/core/pull/118229 +[#118231]: https://github.com/home-assistant/core/pull/118231 +[#118234]: https://github.com/home-assistant/core/pull/118234 +[#118235]: https://github.com/home-assistant/core/pull/118235 +[#118236]: https://github.com/home-assistant/core/pull/118236 +[#118241]: https://github.com/home-assistant/core/pull/118241 +[#118246]: https://github.com/home-assistant/core/pull/118246 +[#118253]: https://github.com/home-assistant/core/pull/118253 +[#118256]: https://github.com/home-assistant/core/pull/118256 +[#118258]: https://github.com/home-assistant/core/pull/118258 +[#118261]: https://github.com/home-assistant/core/pull/118261 +[#118262]: https://github.com/home-assistant/core/pull/118262 +[#118267]: https://github.com/home-assistant/core/pull/118267 +[#118268]: https://github.com/home-assistant/core/pull/118268 +[#118269]: https://github.com/home-assistant/core/pull/118269 +[#118270]: https://github.com/home-assistant/core/pull/118270 +[#118271]: https://github.com/home-assistant/core/pull/118271 +[#118272]: https://github.com/home-assistant/core/pull/118272 +[#118273]: https://github.com/home-assistant/core/pull/118273 +[#118274]: https://github.com/home-assistant/core/pull/118274 +[#118275]: https://github.com/home-assistant/core/pull/118275 +[#118276]: https://github.com/home-assistant/core/pull/118276 +[#118277]: https://github.com/home-assistant/core/pull/118277 +[#118279]: https://github.com/home-assistant/core/pull/118279 +[#118280]: https://github.com/home-assistant/core/pull/118280 +[#118282]: https://github.com/home-assistant/core/pull/118282 +[#118283]: https://github.com/home-assistant/core/pull/118283 +[#118285]: https://github.com/home-assistant/core/pull/118285 +[#118286]: https://github.com/home-assistant/core/pull/118286 +[#118287]: https://github.com/home-assistant/core/pull/118287 +[#118288]: https://github.com/home-assistant/core/pull/118288 +[#118291]: https://github.com/home-assistant/core/pull/118291 +[#118292]: https://github.com/home-assistant/core/pull/118292 +[#118293]: https://github.com/home-assistant/core/pull/118293 +[#118294]: https://github.com/home-assistant/core/pull/118294 +[#118295]: https://github.com/home-assistant/core/pull/118295 +[#118297]: https://github.com/home-assistant/core/pull/118297 +[#118299]: https://github.com/home-assistant/core/pull/118299 +[#118300]: https://github.com/home-assistant/core/pull/118300 +[#118301]: https://github.com/home-assistant/core/pull/118301 +[#118303]: https://github.com/home-assistant/core/pull/118303 +[#118307]: https://github.com/home-assistant/core/pull/118307 +[#118308]: https://github.com/home-assistant/core/pull/118308 +[#118309]: https://github.com/home-assistant/core/pull/118309 +[#118311]: https://github.com/home-assistant/core/pull/118311 +[#118312]: https://github.com/home-assistant/core/pull/118312 +[#118314]: https://github.com/home-assistant/core/pull/118314 +[#118317]: https://github.com/home-assistant/core/pull/118317 +[#118318]: https://github.com/home-assistant/core/pull/118318 +[#118319]: https://github.com/home-assistant/core/pull/118319 +[#118320]: https://github.com/home-assistant/core/pull/118320 +[#118321]: https://github.com/home-assistant/core/pull/118321 +[#118322]: https://github.com/home-assistant/core/pull/118322 +[#118323]: https://github.com/home-assistant/core/pull/118323 +[#118324]: https://github.com/home-assistant/core/pull/118324 +[#118325]: https://github.com/home-assistant/core/pull/118325 +[#118328]: https://github.com/home-assistant/core/pull/118328 +[#118329]: https://github.com/home-assistant/core/pull/118329 +[#118331]: https://github.com/home-assistant/core/pull/118331 +[#118332]: https://github.com/home-assistant/core/pull/118332 +[#118333]: https://github.com/home-assistant/core/pull/118333 +[#118334]: https://github.com/home-assistant/core/pull/118334 +[#118337]: https://github.com/home-assistant/core/pull/118337 +[#118338]: https://github.com/home-assistant/core/pull/118338 +[#118339]: https://github.com/home-assistant/core/pull/118339 +[#118340]: https://github.com/home-assistant/core/pull/118340 +[#118341]: https://github.com/home-assistant/core/pull/118341 +[#118342]: https://github.com/home-assistant/core/pull/118342 +[#118343]: https://github.com/home-assistant/core/pull/118343 +[#118344]: https://github.com/home-assistant/core/pull/118344 +[#118346]: https://github.com/home-assistant/core/pull/118346 +[#118349]: https://github.com/home-assistant/core/pull/118349 +[#118350]: https://github.com/home-assistant/core/pull/118350 +[#118351]: https://github.com/home-assistant/core/pull/118351 +[#118353]: https://github.com/home-assistant/core/pull/118353 +[#118354]: https://github.com/home-assistant/core/pull/118354 +[#118355]: https://github.com/home-assistant/core/pull/118355 +[#118357]: https://github.com/home-assistant/core/pull/118357 +[#118358]: https://github.com/home-assistant/core/pull/118358 +[#118359]: https://github.com/home-assistant/core/pull/118359 +[#118362]: https://github.com/home-assistant/core/pull/118362 +[#118363]: https://github.com/home-assistant/core/pull/118363 +[#118365]: https://github.com/home-assistant/core/pull/118365 +[#118367]: https://github.com/home-assistant/core/pull/118367 +[#118368]: https://github.com/home-assistant/core/pull/118368 +[#118371]: https://github.com/home-assistant/core/pull/118371 +[#118372]: https://github.com/home-assistant/core/pull/118372 +[#118373]: https://github.com/home-assistant/core/pull/118373 +[#118377]: https://github.com/home-assistant/core/pull/118377 +[#118378]: https://github.com/home-assistant/core/pull/118378 +[#118384]: https://github.com/home-assistant/core/pull/118384 +[#118388]: https://github.com/home-assistant/core/pull/118388 +[#118389]: https://github.com/home-assistant/core/pull/118389 +[#118390]: https://github.com/home-assistant/core/pull/118390 +[#118392]: https://github.com/home-assistant/core/pull/118392 +[#118393]: https://github.com/home-assistant/core/pull/118393 +[#118401]: https://github.com/home-assistant/core/pull/118401 +[#118404]: https://github.com/home-assistant/core/pull/118404 +[#118409]: https://github.com/home-assistant/core/pull/118409 +[#118410]: https://github.com/home-assistant/core/pull/118410 +[#118412]: https://github.com/home-assistant/core/pull/118412 +[#118418]: https://github.com/home-assistant/core/pull/118418 +[#118421]: https://github.com/home-assistant/core/pull/118421 +[#118422]: https://github.com/home-assistant/core/pull/118422 +[#118428]: https://github.com/home-assistant/core/pull/118428 +[#118429]: https://github.com/home-assistant/core/pull/118429 +[#118434]: https://github.com/home-assistant/core/pull/118434 +[#118441]: https://github.com/home-assistant/core/pull/118441 +[#118443]: https://github.com/home-assistant/core/pull/118443 +[#118451]: https://github.com/home-assistant/core/pull/118451 +[#118453]: https://github.com/home-assistant/core/pull/118453 +[#118462]: https://github.com/home-assistant/core/pull/118462 +[#118467]: https://github.com/home-assistant/core/pull/118467 +[#118473]: https://github.com/home-assistant/core/pull/118473 +[#118477]: https://github.com/home-assistant/core/pull/118477 +[#118478]: https://github.com/home-assistant/core/pull/118478 +[#118483]: https://github.com/home-assistant/core/pull/118483 +[#118485]: https://github.com/home-assistant/core/pull/118485 +[#118489]: https://github.com/home-assistant/core/pull/118489 +[#118491]: https://github.com/home-assistant/core/pull/118491 +[#118496]: https://github.com/home-assistant/core/pull/118496 +[#118498]: https://github.com/home-assistant/core/pull/118498 +[#118499]: https://github.com/home-assistant/core/pull/118499 +[#118500]: https://github.com/home-assistant/core/pull/118500 +[#118505]: https://github.com/home-assistant/core/pull/118505 +[#118506]: https://github.com/home-assistant/core/pull/118506 +[#118510]: https://github.com/home-assistant/core/pull/118510 +[#118512]: https://github.com/home-assistant/core/pull/118512 +[#118514]: https://github.com/home-assistant/core/pull/118514 +[#118515]: https://github.com/home-assistant/core/pull/118515 +[#118517]: https://github.com/home-assistant/core/pull/118517 +[#118518]: https://github.com/home-assistant/core/pull/118518 +[#118520]: https://github.com/home-assistant/core/pull/118520 +[#118521]: https://github.com/home-assistant/core/pull/118521 +[#118522]: https://github.com/home-assistant/core/pull/118522 +[#118526]: https://github.com/home-assistant/core/pull/118526 +[#118531]: https://github.com/home-assistant/core/pull/118531 +[#118532]: https://github.com/home-assistant/core/pull/118532 +[#118535]: https://github.com/home-assistant/core/pull/118535 +[#118538]: https://github.com/home-assistant/core/pull/118538 +[#118539]: https://github.com/home-assistant/core/pull/118539 +[#118546]: https://github.com/home-assistant/core/pull/118546 +[#118549]: https://github.com/home-assistant/core/pull/118549 +[#118554]: https://github.com/home-assistant/core/pull/118554 +[#118555]: https://github.com/home-assistant/core/pull/118555 +[#118556]: https://github.com/home-assistant/core/pull/118556 +[#118559]: https://github.com/home-assistant/core/pull/118559 +[#118566]: https://github.com/home-assistant/core/pull/118566 +[#118577]: https://github.com/home-assistant/core/pull/118577 +[#118582]: https://github.com/home-assistant/core/pull/118582 +[#118583]: https://github.com/home-assistant/core/pull/118583 +[#118590]: https://github.com/home-assistant/core/pull/118590 +[#118592]: https://github.com/home-assistant/core/pull/118592 +[#118593]: https://github.com/home-assistant/core/pull/118593 +[#118594]: https://github.com/home-assistant/core/pull/118594 +[#118608]: https://github.com/home-assistant/core/pull/118608 +[#118616]: https://github.com/home-assistant/core/pull/118616 +[#118619]: https://github.com/home-assistant/core/pull/118619 +[#118620]: https://github.com/home-assistant/core/pull/118620 +[#118633]: https://github.com/home-assistant/core/pull/118633 +[#118640]: https://github.com/home-assistant/core/pull/118640 +[#118643]: https://github.com/home-assistant/core/pull/118643 +[#118644]: https://github.com/home-assistant/core/pull/118644 +[#118655]: https://github.com/home-assistant/core/pull/118655 +[#118658]: https://github.com/home-assistant/core/pull/118658 +[#118662]: https://github.com/home-assistant/core/pull/118662 +[#118669]: https://github.com/home-assistant/core/pull/118669 +[#118671]: https://github.com/home-assistant/core/pull/118671 +[#118686]: https://github.com/home-assistant/core/pull/118686 +[#118697]: https://github.com/home-assistant/core/pull/118697 +[#118699]: https://github.com/home-assistant/core/pull/118699 +[#118702]: https://github.com/home-assistant/core/pull/118702 +[#118703]: https://github.com/home-assistant/core/pull/118703 +[#118705]: https://github.com/home-assistant/core/pull/118705 +[#118707]: https://github.com/home-assistant/core/pull/118707 +[#118708]: https://github.com/home-assistant/core/pull/118708 +[#118712]: https://github.com/home-assistant/core/pull/118712 +[#118713]: https://github.com/home-assistant/core/pull/118713 +[#118714]: https://github.com/home-assistant/core/pull/118714 +[#118718]: https://github.com/home-assistant/core/pull/118718 +[#118720]: https://github.com/home-assistant/core/pull/118720 +[#118724]: https://github.com/home-assistant/core/pull/118724 +[#118734]: https://github.com/home-assistant/core/pull/118734 +[#118735]: https://github.com/home-assistant/core/pull/118735 +[#118736]: https://github.com/home-assistant/core/pull/118736 +[#118744]: https://github.com/home-assistant/core/pull/118744 +[#118745]: https://github.com/home-assistant/core/pull/118745 +[#118746]: https://github.com/home-assistant/core/pull/118746 +[#118747]: https://github.com/home-assistant/core/pull/118747 +[#118748]: https://github.com/home-assistant/core/pull/118748 +[#118749]: https://github.com/home-assistant/core/pull/118749 +[#118752]: https://github.com/home-assistant/core/pull/118752 +[#118753]: https://github.com/home-assistant/core/pull/118753 +[#118762]: https://github.com/home-assistant/core/pull/118762 +[#118768]: https://github.com/home-assistant/core/pull/118768 +[#118773]: https://github.com/home-assistant/core/pull/118773 +[#118776]: https://github.com/home-assistant/core/pull/118776 +[#118777]: https://github.com/home-assistant/core/pull/118777 +[#118778]: https://github.com/home-assistant/core/pull/118778 +[#118781]: https://github.com/home-assistant/core/pull/118781 +[#118782]: https://github.com/home-assistant/core/pull/118782 +[#118784]: https://github.com/home-assistant/core/pull/118784 +[#118798]: https://github.com/home-assistant/core/pull/118798 +[#118804]: https://github.com/home-assistant/core/pull/118804 +[#118805]: https://github.com/home-assistant/core/pull/118805 +[#118806]: https://github.com/home-assistant/core/pull/118806 +[#118811]: https://github.com/home-assistant/core/pull/118811 +[#118822]: https://github.com/home-assistant/core/pull/118822 +[#118830]: https://github.com/home-assistant/core/pull/118830 +[#118839]: https://github.com/home-assistant/core/pull/118839 +[#118842]: https://github.com/home-assistant/core/pull/118842 +[#118853]: https://github.com/home-assistant/core/pull/118853 +[#118855]: https://github.com/home-assistant/core/pull/118855 +[#118864]: https://github.com/home-assistant/core/pull/118864 +[#118872]: https://github.com/home-assistant/core/pull/118872 +[#118875]: https://github.com/home-assistant/core/pull/118875 +[#118890]: https://github.com/home-assistant/core/pull/118890 +[#118893]: https://github.com/home-assistant/core/pull/118893 +[#68992]: https://github.com/home-assistant/core/pull/68992 +[#84464]: https://github.com/home-assistant/core/pull/84464 +[#92640]: https://github.com/home-assistant/core/pull/92640 +[@AngellusMortis]: https://github.com/AngellusMortis +[@AnilDaoud]: https://github.com/AnilDaoud +[@Anrijs]: https://github.com/Anrijs +[@Bre77]: https://github.com/Bre77 +[@Bygood91]: https://github.com/Bygood91 +[@CFenner]: https://github.com/CFenner +[@Cereal2nd]: https://github.com/Cereal2nd +[@CoRfr]: https://github.com/CoRfr +[@DCSBL]: https://github.com/DCSBL +[@EuleMitKeule]: https://github.com/EuleMitKeule +[@FWeinb]: https://github.com/FWeinb +[@FedDam]: https://github.com/FedDam +[@Floris272]: https://github.com/Floris272 +[@G-Two]: https://github.com/G-Two +[@Galorhallen]: https://github.com/Galorhallen +[@GuySie]: https://github.com/GuySie +[@HipsterBrown]: https://github.com/HipsterBrown +[@IceBotYT]: https://github.com/IceBotYT +[@JakeMartin-ICL]: https://github.com/JakeMartin-ICL +[@JeromeHXP]: https://github.com/JeromeHXP +[@JonDeeming]: https://github.com/JonDeeming +[@Kane610]: https://github.com/Kane610 +[@Lash-L]: https://github.com/Lash-L +[@Links2004]: https://github.com/Links2004 +[@MatthewFlamm]: https://github.com/MatthewFlamm +[@NECH2004]: https://github.com/NECH2004 +[@NasaGeek]: https://github.com/NasaGeek +[@Nezz]: https://github.com/Nezz +[@Noltari]: https://github.com/Noltari +[@PeteRager]: https://github.com/PeteRager +[@PhilRW]: https://github.com/PhilRW +[@Poshy163]: https://github.com/Poshy163 +[@Quentame]: https://github.com/Quentame +[@RJPoelstra]: https://github.com/RJPoelstra +[@SLaks]: https://github.com/SLaks +[@Shulyaka]: https://github.com/Shulyaka +[@Shutgun]: https://github.com/Shutgun +[@Sibgatulin]: https://github.com/Sibgatulin +[@TheJulianJES]: https://github.com/TheJulianJES +[@Thomas55555]: https://github.com/Thomas55555 +[@Troon]: https://github.com/Troon +[@Ulfmerbold2000]: https://github.com/Ulfmerbold2000 +[@abmantis]: https://github.com/abmantis +[@agners]: https://github.com/agners +[@agrauballe]: https://github.com/agrauballe +[@albertogeniola]: https://github.com/albertogeniola +[@allenporter]: https://github.com/allenporter +[@allistermaguire]: https://github.com/allistermaguire +[@andarotajo]: https://github.com/andarotajo +[@andrewsayre]: https://github.com/andrewsayre +[@angelnu]: https://github.com/angelnu +[@arturyak]: https://github.com/arturyak +[@astrandb]: https://github.com/astrandb +[@austinmroczek]: https://github.com/austinmroczek +[@autinerd]: https://github.com/autinerd +[@bachya]: https://github.com/bachya +[@bajansen]: https://github.com/bajansen +[@balloob]: https://github.com/balloob +[@basbruss]: https://github.com/basbruss +[@bdraco]: https://github.com/bdraco +[@benaclejames]: https://github.com/benaclejames +[@benvm]: https://github.com/benvm +[@bieniu]: https://github.com/bieniu +[@blob810]: https://github.com/blob810 +[@boswelja]: https://github.com/boswelja +[@bouwew]: https://github.com/bouwew +[@bramkragten]: https://github.com/bramkragten +[@brg468]: https://github.com/brg468 +[@c0mputerguru]: https://github.com/c0mputerguru +[@catsmanac]: https://github.com/catsmanac +[@cdce8p]: https://github.com/cdce8p +[@chatziko]: https://github.com/chatziko +[@chemelli74]: https://github.com/chemelli74 +[@chishm]: https://github.com/chishm +[@claha]: https://github.com/claha +[@cottsay]: https://github.com/cottsay +[@ctalkington]: https://github.com/ctalkington +[@d-ylee]: https://github.com/d-ylee +[@davet2001]: https://github.com/davet2001 +[@dfaour]: https://github.com/dfaour +[@dgomes]: https://github.com/dgomes +[@dieselrabbit]: https://github.com/dieselrabbit +[@dknowles2]: https://github.com/dknowles2 +[@dontinelli]: https://github.com/dontinelli +[@edenhaus]: https://github.com/edenhaus +[@eifinger]: https://github.com/eifinger +[@elmurato]: https://github.com/elmurato +[@elupus]: https://github.com/elupus +[@emontnemery]: https://github.com/emontnemery +[@epenet]: https://github.com/epenet +[@erwindouna]: https://github.com/erwindouna +[@esciara]: https://github.com/esciara +[@ethemcemozkan]: https://github.com/ethemcemozkan +[@farmio]: https://github.com/farmio +[@fredrike]: https://github.com/fredrike +[@freekode]: https://github.com/freekode +[@frenck]: https://github.com/frenck +[@gjohansson-ST]: https://github.com/gjohansson-ST +[@gnumpi]: https://github.com/gnumpi +[@hahn-th]: https://github.com/hahn-th +[@iMicknl]: https://github.com/iMicknl +[@jbouwh]: https://github.com/jbouwh +[@jesserockz]: https://github.com/jesserockz +[@jhollowe]: https://github.com/jhollowe +[@jjlawren]: https://github.com/jjlawren +[@joostlek]: https://github.com/joostlek +[@jpbede]: https://github.com/jpbede +[@jschlyter]: https://github.com/jschlyter +[@kaareseras]: https://github.com/kaareseras +[@kamiyo]: https://github.com/kamiyo +[@karwosts]: https://github.com/karwosts +[@kibergus]: https://github.com/kibergus +[@kingy444]: https://github.com/kingy444 +[@laurence-presland]: https://github.com/laurence-presland +[@lboue]: https://github.com/lboue +[@luca-angemi]: https://github.com/luca-angemi +[@ludeeus]: https://github.com/ludeeus +[@lunmay]: https://github.com/lunmay +[@m10x]: https://github.com/m10x +[@marcelveldt]: https://github.com/marcelveldt +[@marcolivierarsenault]: https://github.com/marcolivierarsenault +[@matrixd2]: https://github.com/matrixd2 +[@mawoka-myblock]: https://github.com/mawoka-myblock +[@mback2k]: https://github.com/mback2k +[@mdegat01]: https://github.com/mdegat01 +[@mib1185]: https://github.com/mib1185 +[@mj23000]: https://github.com/mj23000 +[@mkmer]: https://github.com/mkmer +[@mrpasztoradam]: https://github.com/mrpasztoradam +[@mtielen]: https://github.com/mtielen +[@nopoz]: https://github.com/nopoz +[@ollo69]: https://github.com/ollo69 +[@osohotwateriot]: https://github.com/osohotwateriot +[@pantonvich]: https://github.com/pantonvich +[@pemontto]: https://github.com/pemontto +[@pfrazer]: https://github.com/pfrazer +[@piitaya]: https://github.com/piitaya +[@prabhjotsbhatia-ca]: https://github.com/prabhjotsbhatia-ca +[@puddly]: https://github.com/puddly +[@rale]: https://github.com/rale +[@raman325]: https://github.com/raman325 +[@rikroe]: https://github.com/rikroe +[@scop]: https://github.com/scop +[@shelvacu]: https://github.com/shelvacu +[@slovdahl]: https://github.com/slovdahl +[@starkillerOG]: https://github.com/starkillerOG +[@swcloudgenie]: https://github.com/swcloudgenie +[@synesthesiam]: https://github.com/synesthesiam +[@systemcrash]: https://github.com/systemcrash +[@teharris1]: https://github.com/teharris1 +[@thecode]: https://github.com/thecode +[@thejeffreystone]: https://github.com/thejeffreystone +[@thomaskistler]: https://github.com/thomaskistler +[@thytterdal]: https://github.com/thytterdal +[@tichris0]: https://github.com/tichris0 +[@timmo001]: https://github.com/timmo001 +[@tizianodeg]: https://github.com/tizianodeg +[@tkdrob]: https://github.com/tkdrob +[@tr4nt0r]: https://github.com/tr4nt0r +[@tronikos]: https://github.com/tronikos +[@tsvi]: https://github.com/tsvi +[@wittypluck]: https://github.com/wittypluck +[@yuvalabou]: https://github.com/yuvalabou +[@zweckj]: https://github.com/zweckj +[@zxdavb]: https://github.com/zxdavb +[abode docs]: /integrations/abode/ +[accuweather docs]: /integrations/accuweather/ +[acmeda docs]: /integrations/acmeda/ +[ads docs]: /integrations/ads/ +[advantage_air docs]: /integrations/advantage_air/ +[aemet docs]: /integrations/aemet/ +[aftership docs]: /integrations/aftership/ +[agent_dvr docs]: /integrations/agent_dvr/ +[airgradient docs]: /integrations/airgradient/ +[airly docs]: /integrations/airly/ +[airnow docs]: /integrations/airnow/ +[airq docs]: /integrations/airq/ +[airthings docs]: /integrations/airthings/ +[airthings_ble docs]: /integrations/airthings_ble/ +[airtouch5 docs]: /integrations/airtouch5/ +[airvisual_pro docs]: /integrations/airvisual_pro/ +[airzone_cloud docs]: /integrations/airzone_cloud/ +[aladdin_connect docs]: /integrations/aladdin_connect/ +[alarm_control_panel docs]: /integrations/alarm_control_panel/ +[alarmdecoder docs]: /integrations/alarmdecoder/ +[ambiclimate docs]: /integrations/ambiclimate/ +[ambient_station docs]: /integrations/ambient_station/ +[analytics_insights docs]: /integrations/analytics_insights/ +[androidtv docs]: /integrations/androidtv/ +[androidtv_remote docs]: /integrations/androidtv_remote/ +[anova docs]: /integrations/anova/ +[apple_tv docs]: /integrations/apple_tv/ +[apprise docs]: /integrations/apprise/ +[aprs docs]: /integrations/aprs/ +[apsystems docs]: /integrations/apsystems/ +[aranet docs]: /integrations/aranet/ +[arcam_fmj docs]: /integrations/arcam_fmj/ +[asuswrt docs]: /integrations/asuswrt/ +[august docs]: /integrations/august/ +[aurora docs]: /integrations/aurora/ +[aurora_abb_powerone docs]: /integrations/aurora_abb_powerone/ +[auth docs]: /integrations/auth/ +[axis docs]: /integrations/axis/ +[azure_data_explorer docs]: /integrations/azure_data_explorer/ +[baf docs]: /integrations/baf/ +[balboa docs]: /integrations/balboa/ +[bang_olufsen docs]: /integrations/bang_olufsen/ +[blink docs]: /integrations/blink/ +[blue_current docs]: /integrations/blue_current/ +[blueprint docs]: /integrations/blueprint/ +[bluetooth docs]: /integrations/bluetooth/ +[bmw_connected_drive docs]: /integrations/bmw_connected_drive/ +[bond docs]: /integrations/bond/ +[bosch_shc docs]: /integrations/bosch_shc/ +[braviatv docs]: /integrations/braviatv/ +[bring docs]: /integrations/bring/ +[brother docs]: /integrations/brother/ +[bthome docs]: /integrations/bthome/ +[calendar docs]: /integrations/calendar/ +[camera docs]: /integrations/camera/ +[ccm15 docs]: /integrations/ccm15/ +[cert_expiry docs]: /integrations/cert_expiry/ +[climate docs]: /integrations/climate/ +[cloud docs]: /integrations/cloud/ +[co2signal docs]: /integrations/co2signal/ +[command_line docs]: /integrations/command_line/ +[config docs]: /integrations/config/ +[conversation docs]: /integrations/conversation/ +[cover docs]: /integrations/cover/ +[daikin docs]: /integrations/daikin/ +[deconz docs]: /integrations/deconz/ +[demo docs]: /integrations/demo/ +[devolo_home_control docs]: /integrations/devolo_home_control/ +[devolo_home_network docs]: /integrations/devolo_home_network/ +[dhcp docs]: /integrations/dhcp/ +[diagnostics docs]: /integrations/diagnostics/ +[discovergy docs]: /integrations/discovergy/ +[dlna_dmr docs]: /integrations/dlna_dmr/ +[dnsip docs]: /integrations/dnsip/ +[drop_connect docs]: /integrations/drop_connect/ +[dsmr_reader docs]: /integrations/dsmr_reader/ +[duotecno docs]: /integrations/duotecno/ +[dwd_weather_warnings docs]: /integrations/dwd_weather_warnings/ +[ecobee docs]: /integrations/ecobee/ +[ecovacs docs]: /integrations/ecovacs/ +[ecowitt docs]: /integrations/ecowitt/ +[efergy docs]: /integrations/efergy/ +[elgato docs]: /integrations/elgato/ +[elkm1 docs]: /integrations/elkm1/ +[elmax docs]: /integrations/elmax/ +[emonitor docs]: /integrations/emonitor/ +[energy docs]: /integrations/energy/ +[enphase_envoy docs]: /integrations/enphase_envoy/ +[environment_canada docs]: /integrations/environment_canada/ +[envisalink docs]: /integrations/envisalink/ +[epic_games_store docs]: /integrations/epic_games_store/ +[eq3btsmart docs]: /integrations/eq3btsmart/ +[esphome docs]: /integrations/esphome/ +[evil_genius_labs docs]: /integrations/evil_genius_labs/ +[evohome docs]: /integrations/evohome/ +[feedreader docs]: /integrations/feedreader/ +[file docs]: /integrations/file/ +[filesize docs]: /integrations/filesize/ +[firmata docs]: /integrations/firmata/ +[fitbit docs]: /integrations/fitbit/ +[flexit_bacnet docs]: /integrations/flexit_bacnet/ +[flo docs]: /integrations/flo/ +[flume docs]: /integrations/flume/ +[folder_watcher docs]: /integrations/folder_watcher/ +[forecast_solar docs]: /integrations/forecast_solar/ +[fritz docs]: /integrations/fritz/ +[fritzbox docs]: /integrations/fritzbox/ +[fritzbox_callmonitor docs]: /integrations/fritzbox_callmonitor/ +[fronius docs]: /integrations/fronius/ +[frontend docs]: /integrations/frontend/ +[fyta docs]: /integrations/fyta/ +[generic docs]: /integrations/generic/ +[generic_hygrostat docs]: /integrations/generic_hygrostat/ +[generic_thermostat docs]: /integrations/generic_thermostat/ +[gios docs]: /integrations/gios/ +[github docs]: /integrations/github/ +[glances docs]: /integrations/glances/ +[gogogate2 docs]: /integrations/gogogate2/ +[google docs]: /integrations/google/ +[google_assistant docs]: /integrations/google_assistant/ +[google_generative_ai_conversation docs]: /integrations/google_generative_ai_conversation/ +[google_mail docs]: /integrations/google_mail/ +[google_tasks docs]: /integrations/google_tasks/ +[google_translate docs]: /integrations/google_translate/ +[govee_ble docs]: /integrations/govee_ble/ +[govee_light_local docs]: /integrations/govee_light_local/ +[gree docs]: /integrations/gree/ +[group docs]: /integrations/group/ +[guardian docs]: /integrations/guardian/ +[habitica docs]: /integrations/habitica/ +[harmony docs]: /integrations/harmony/ +[hassio docs]: /integrations/hassio/ +[hdmi_cec docs]: /integrations/hdmi_cec/ +[history docs]: /integrations/history/ +[holiday docs]: /integrations/holiday/ +[homeassistant docs]: /integrations/homeassistant/ +[homeassistant_alerts docs]: /integrations/homeassistant_alerts/ +[homeassistant_sky_connect docs]: /integrations/homeassistant_sky_connect/ +[homekit docs]: /integrations/homekit/ +[homematicip_cloud docs]: /integrations/homematicip_cloud/ +[homewizard docs]: /integrations/homewizard/ +[honeywell docs]: /integrations/honeywell/ +[http docs]: /integrations/http/ +[huawei_lte docs]: /integrations/huawei_lte/ +[hue docs]: /integrations/hue/ +[husqvarna_automower docs]: /integrations/husqvarna_automower/ +[hydrawise docs]: /integrations/hydrawise/ +[ialarm docs]: /integrations/ialarm/ +[ibeacon docs]: /integrations/ibeacon/ +[idasen_desk docs]: /integrations/idasen_desk/ +[image_upload docs]: /integrations/image_upload/ +[imgw_pib docs]: /integrations/imgw_pib/ +[input_datetime docs]: /integrations/input_datetime/ +[insteon docs]: /integrations/insteon/ +[integration docs]: /integrations/integration/ +[intent docs]: /integrations/intent/ +[intent_script docs]: /integrations/intent_script/ +[ipp docs]: /integrations/ipp/ +[iqvia docs]: /integrations/iqvia/ +[isal docs]: /integrations/isal/ +[jellyfin docs]: /integrations/jellyfin/ +[jewish_calendar docs]: /integrations/jewish_calendar/ +[kaiterra docs]: /integrations/kaiterra/ +[kitchen_sink docs]: /integrations/kitchen_sink/ +[knx docs]: /integrations/knx/ +[kostal_plenticore docs]: /integrations/kostal_plenticore/ +[lamarzocco docs]: /integrations/lamarzocco/ +[launch_library docs]: /integrations/launch_library/ +[light docs]: /integrations/light/ +[linear_garage_door docs]: /integrations/linear_garage_door/ +[local_calendar docs]: /integrations/local_calendar/ +[local_todo docs]: /integrations/local_todo/ +[lock docs]: /integrations/lock/ +[logbook docs]: /integrations/logbook/ +[lovelace docs]: /integrations/lovelace/ +[luftdaten docs]: /integrations/luftdaten/ +[lutron docs]: /integrations/lutron/ +[manual_mqtt docs]: /integrations/manual_mqtt/ +[mastodon docs]: /integrations/mastodon/ +[matter docs]: /integrations/matter/ +[media_extractor docs]: /integrations/media_extractor/ +[media_player docs]: /integrations/media_player/ +[media_source docs]: /integrations/media_source/ +[melnor docs]: /integrations/melnor/ +[meraki docs]: /integrations/meraki/ +[met docs]: /integrations/met/ +[meteo_france docs]: /integrations/meteo_france/ +[metoffice docs]: /integrations/metoffice/ +[microBees docs]: /integrations/microBees/ +[mikrotik docs]: /integrations/mikrotik/ +[mill docs]: /integrations/mill/ +[minecraft_server docs]: /integrations/minecraft_server/ +[modern_forms docs]: /integrations/modern_forms/ +[moehlenhoff_alpha2 docs]: /integrations/moehlenhoff_alpha2/ +[monzo docs]: /integrations/monzo/ +[motionmount docs]: /integrations/motionmount/ +[mqtt docs]: /integrations/mqtt/ +[myuplink docs]: /integrations/myuplink/ +[nam docs]: /integrations/nam/ +[nest docs]: /integrations/nest/ +[nextcloud docs]: /integrations/nextcloud/ +[nextdns docs]: /integrations/nextdns/ +[nibe_heatpump docs]: /integrations/nibe_heatpump/ +[notify docs]: /integrations/notify/ +[nuki docs]: /integrations/nuki/ +[number docs]: /integrations/number/ +[nut docs]: /integrations/nut/ +[nws docs]: /integrations/nws/ +[ollama docs]: /integrations/ollama/ +[omnilogic docs]: /integrations/omnilogic/ +[onboarding docs]: /integrations/onboarding/ +[ondilo_ico docs]: /integrations/ondilo_ico/ +[onewire docs]: /integrations/onewire/ +[openai_conversation docs]: /integrations/openai_conversation/ +[opengarage docs]: /integrations/opengarage/ +[openweathermap docs]: /integrations/openweathermap/ +[opower docs]: /integrations/opower/ +[osoenergy docs]: /integrations/osoenergy/ +[overkiz docs]: /integrations/overkiz/ +[p1_monitor docs]: /integrations/p1_monitor/ +[pegel_online docs]: /integrations/pegel_online/ +[philips_js docs]: /integrations/philips_js/ +[pi_hole docs]: /integrations/pi_hole/ +[ping docs]: /integrations/ping/ +[plaato docs]: /integrations/plaato/ +[plex docs]: /integrations/plex/ +[plugwise docs]: /integrations/plugwise/ +[point docs]: /integrations/point/ +[poolsense docs]: /integrations/poolsense/ +[powerwall docs]: /integrations/powerwall/ +[profiler docs]: /integrations/profiler/ +[proximity docs]: /integrations/proximity/ +[prusalink docs]: /integrations/prusalink/ +[pure_energie docs]: /integrations/pure_energie/ +[pvpc_hourly_pricing docs]: /integrations/pvpc_hourly_pricing/ +[rachio docs]: /integrations/rachio/ +[radarr docs]: /integrations/radarr/ +[radio_browser docs]: /integrations/radio_browser/ +[rainbird docs]: /integrations/rainbird/ +[rainforest_eagle docs]: /integrations/rainforest_eagle/ +[rainmachine docs]: /integrations/rainmachine/ +[recorder docs]: /integrations/recorder/ +[renault docs]: /integrations/renault/ +[reolink docs]: /integrations/reolink/ +[repairs docs]: /integrations/repairs/ +[rest_command docs]: /integrations/rest_command/ +[rflink docs]: /integrations/rflink/ +[risco docs]: /integrations/risco/ +[roborock docs]: /integrations/roborock/ +[rtsp_to_webrtc docs]: /integrations/rtsp_to_webrtc/ +[samsungtv docs]: /integrations/samsungtv/ +[scrape docs]: /integrations/scrape/ +[screenlogic docs]: /integrations/screenlogic/ +[script docs]: /integrations/script/ +[sensibo docs]: /integrations/sensibo/ +[sensor docs]: /integrations/sensor/ +[sentry docs]: /integrations/sentry/ +[senz docs]: /integrations/senz/ +[serial docs]: /integrations/serial/ +[sharkiq docs]: /integrations/sharkiq/ +[shelly docs]: /integrations/shelly/ +[smartthings docs]: /integrations/smartthings/ +[smhi docs]: /integrations/smhi/ +[snapcast docs]: /integrations/snapcast/ +[snmp docs]: /integrations/snmp/ +[solax docs]: /integrations/solax/ +[sonos docs]: /integrations/sonos/ +[speedtestdotnet docs]: /integrations/speedtestdotnet/ +[spotify docs]: /integrations/spotify/ +[sql docs]: /integrations/sql/ +[starlink docs]: /integrations/starlink/ +[subaru docs]: /integrations/subaru/ +[sun docs]: /integrations/sun/ +[surepetcare docs]: /integrations/surepetcare/ +[switchbot_cloud docs]: /integrations/switchbot_cloud/ +[switcher_kis docs]: /integrations/switcher_kis/ +[synology_dsm docs]: /integrations/synology_dsm/ +[system_bridge docs]: /integrations/system_bridge/ +[systemmonitor docs]: /integrations/systemmonitor/ +[tado docs]: /integrations/tado/ +[tag docs]: /integrations/tag/ +[tailscale docs]: /integrations/tailscale/ +[tailwind docs]: /integrations/tailwind/ +[tankerkoenig docs]: /integrations/tankerkoenig/ +[tasmota docs]: /integrations/tasmota/ +[tedee docs]: /integrations/tedee/ +[telegram_bot docs]: /integrations/telegram_bot/ +[tellduslive docs]: /integrations/tellduslive/ +[template docs]: /integrations/template/ +[tesla_wall_connector docs]: /integrations/tesla_wall_connector/ +[teslemetry docs]: /integrations/teslemetry/ +[tessie docs]: /integrations/tessie/ +[thethingsnetwork docs]: /integrations/thethingsnetwork/ +[thread docs]: /integrations/thread/ +[tibber docs]: /integrations/tibber/ +[tolo docs]: /integrations/tolo/ +[tomorrowio docs]: /integrations/tomorrowio/ +[totalconnect docs]: /integrations/totalconnect/ +[traccar_server docs]: /integrations/traccar_server/ +[tractive docs]: /integrations/tractive/ +[trafikverket_camera docs]: /integrations/trafikverket_camera/ +[trafikverket_ferry docs]: /integrations/trafikverket_ferry/ +[trafikverket_train docs]: /integrations/trafikverket_train/ +[trafikverket_weatherstation docs]: /integrations/trafikverket_weatherstation/ +[tuya docs]: /integrations/tuya/ +[twentemilieu docs]: /integrations/twentemilieu/ +[twitch docs]: /integrations/twitch/ +[unifi docs]: /integrations/unifi/ +[unifiprotect docs]: /integrations/unifiprotect/ +[universal docs]: /integrations/universal/ +[upcloud docs]: /integrations/upcloud/ +[upnp docs]: /integrations/upnp/ +[utility_meter docs]: /integrations/utility_meter/ +[v2c docs]: /integrations/v2c/ +[vacuum docs]: /integrations/vacuum/ +[vallox docs]: /integrations/vallox/ +[velbus docs]: /integrations/velbus/ +[venstar docs]: /integrations/venstar/ +[vera docs]: /integrations/vera/ +[vesync docs]: /integrations/vesync/ +[viam docs]: /integrations/viam/ +[vicare docs]: /integrations/vicare/ +[vizio docs]: /integrations/vizio/ +[vlc_telnet docs]: /integrations/vlc_telnet/ +[vodafone_station docs]: /integrations/vodafone_station/ +[waqi docs]: /integrations/waqi/ +[water_heater docs]: /integrations/water_heater/ +[waze_travel_time docs]: /integrations/waze_travel_time/ +[weather docs]: /integrations/weather/ +[webmin docs]: /integrations/webmin/ +[webostv docs]: /integrations/webostv/ +[websocket_api docs]: /integrations/websocket_api/ +[wemo docs]: /integrations/wemo/ +[whirlpool docs]: /integrations/whirlpool/ +[withings docs]: /integrations/withings/ +[wiz docs]: /integrations/wiz/ +[wled docs]: /integrations/wled/ +[wolflink docs]: /integrations/wolflink/ +[workday docs]: /integrations/workday/ +[wyoming docs]: /integrations/wyoming/ +[xbox docs]: /integrations/xbox/ +[xiaomi_ble docs]: /integrations/xiaomi_ble/ +[xmpp docs]: /integrations/xmpp/ +[yale_smart_alarm docs]: /integrations/yale_smart_alarm/ +[yalexs_ble docs]: /integrations/yalexs_ble/ +[yolink docs]: /integrations/yolink/ +[youless docs]: /integrations/youless/ +[youtube docs]: /integrations/youtube/ +[zamg docs]: /integrations/zamg/ +[zeversolar docs]: /integrations/zeversolar/ +[zha docs]: /integrations/zha/ +[zodiac docs]: /integrations/zodiac/ +[zone docs]: /integrations/zone/ +[zwave_js docs]: /integrations/zwave_js/ \ No newline at end of file