Full changelog for Home Assistant Core 2025.1
These are all the changes included in the Home Assistant Core 2025.1 release.
For a summary in a more readable format: Release notes blog for this release.
- Bump version to 2025.1.0dev0 (@cdce8p
- #131751 )  - Remove unreachable code in Habitica (@tr4nt0r
- #131778 )  - Add translations for units of measurement to Habitica integration (@tr4nt0r
- #131761 )  - Add units of measurement to Bring integration (@tr4nt0r
- #131763 )  - Log warning if via_device reference not exists when creating or updating a device registry entry (@jbouwh
- #131746 )  - Enable strict typing for Schlage (@dknowles2
- #131734 )  - Store Schlage runtime data in entry.runtime_data (@dknowles2
- #131731 )  - Set parallel updates in IronOS integration (@tr4nt0r
- #131721 )  - Remove deprecated camera constants (@edenhaus
- #131796 )  - Remvove deprecated core constants (@edenhaus
- #131803 )  - Remove deprecated automation constants (@edenhaus
- #131792 )  - Remove deprecated binary sensor constants (@edenhaus
- #131793 )  - Remove deprecated device registry constants (@edenhaus
- #131802 )  - Remove deprecated alarm control panel constants (@edenhaus
- #131790 )  - Remove deprecated home assistant const constants (@edenhaus
- #131799 )  - Remove deprecated water heater constants (@edenhaus
- #131805 )  - Remove deprecated remote constants (@edenhaus
- #131809 )  - Remove deprecated cover constants (@edenhaus
- #131797 )  - Remove deprecated siren constants (@edenhaus
- #131807 )  - Remove deprecated number constants (@edenhaus
- #131810 )  - Remove deprecated lock constants (@edenhaus
- #131812 )  - Fix group flaky test (@epenet
- #131815 )  - Cleanup deprecated exception in websocket tests (@epenet
- #131808 )  - Rename constant in tests/components/recorder/test_migration_from_schema_32.py (@emontnemery
- #131819 )  - Delay “Split tests for full run” in CI (@epenet
- #131813 )  - Remove deprecated switch constants (@edenhaus
- #131806 )  - Use common string for items unit in Bring (@tr4nt0r
- #131834 )  - Add comments in homeassistant/components/recorder/migration.py (@emontnemery
- #131820 )  - Remove deprecated device tracker constants (@edenhaus
- #131846 )  - Add unit translations to Ista EcoTrend integration (@tr4nt0r
- #131768 )  - Remove deprecated fan constants (@edenhaus
- #131845 )  - Remove deprecated humidifier constants (@edenhaus
- #131844 )  - Deprecate dt_util.utc_to_timestamp (@emontnemery
- #131787 )  - Add config flow rules to quality_scale hassfest validation (@epenet
- #131791 )  - Remove unnecessary hass.data defaults from Rainbird (@allenporter
- #131858 )  - Add diagnostics rule to quality_scale hassfest validation (@epenet
- #131859 )  - Correction of prices update time in Tibber integration (with CLA now) (@rd-blue
- #131861 )  - Use ConfigEntry.runtime_data in Nest (@allenporter
- #131871 )  - Remove deprecated sensor constants (@edenhaus
- #131843 )  - Add data descriptions to Nice G.O. config flow (@IceBotYT
- #131865 )  - Add strict_typing rule to quality_scale hassfest validation (@epenet
- #131877 )  - Remove deprecated data entry flow constants (@edenhaus
- #131800 )  - Remove deprecated climate constants (@edenhaus
- #131798 )  - Refactor calendars in Habitica (@tr4nt0r
- #131020 )  - Add documentation URL to quality_scale hassfest validation (@epenet
- #131879 )  - Add unique_config_entry rule to quality_scale hassfest validation (@epenet
- #131878 )  - Ensure Schlage exceptions are translated (@dknowles2
- #131733 )  - Add discovery rule to quality_scale hassfest validation (@epenet
- #131890 )  - Add runtime_data rule to quality_scale hassfest validation (@allenporter
- #131857 )  - Bump pynecil to v1.0.1 (@tr4nt0r
- #131935 )  - Bump ruff to 0.8.1 (@autinerd
- #131927 )  - Use typed ConfigEntry in discovergy (@epenet
- #131891 )  - Add missing state_class in IronOS (@tr4nt0r
- #131928 )  - Use HomeAssistant error in the right cases (@Diegorro98
- #131923 )  - Make uploaded images browsable in media (@karwosts
- #131468 )  - Add config flow to NHC (@VandeurenGlenn
- #130554 )  - Improvements for bluetooth device for lamarzocco (@zweckj
- #131875 )  - Add support for 
linked_doorbell_sensorto HomeKit locks (@krauseerl- #131660 )  - Make the full conversation input available to sentence triggers (@balloob
- #131982 )  - Match “delete” with “create” in the action descriptions (@NoRi2909
- #131989 )  - Add final translations to mqtt exceptions (@jbouwh
- #131933 )  - Reduce time syscalls needed to insert new statistics (@bdraco
- #131984 )  - Use typed ConfigEntry in lamarzocco (@epenet
- #131892 )  - Use typed ConfigEntry in tedee (@epenet
- #131893 )  - Use typed ConfigEntry in twentemilieu (@epenet
- #131894 )  - Cleanup pylint obsolete import checks (@epenet
- #131904 )  - Add exception translation for entity action not supported (@jbouwh
- #131956 )  - Improve renault config-flow translation strings (@epenet
- #131706 )  - Improve renault config flow tests (@epenet
- #131698 )  - Improve recorder migration logging (@emontnemery
- #132006 )  - Remove unnecessary assignment in Recorder._process_state_changed_event_into_session (@emontnemery
- #132011 )  - Clarify description of fan actions, fix typo (@NoRi2909
- #132023 )  - Set parallel updates for BMW entities (@rikroe
- #132019 )  - Fix description of ‘clear_completed_items’ to use “remove” (@NoRi2909
- #132014 )  - Add pre-commit VSCode task (@dotvav
- #131637 )  - Add additional data_descriptions for Fully Kiosk Browser fields (@cgarwood
- #131716 )  - Add reauthentication flow for Autarco integration (@klaasnicolaas
- #131816 )  - Change library to livisi (@joostlek
- #132001 )  - Improve service names and descriptions for ‘remote_connect’ and ‘remote_disconnect’ in Home Assistant Cloud (@yazan-abdalrahman
- #131993 )  - Bump cryptography to 44.0.0 and pyOpenSSL to 24.3.0 (@bdraco
- #132035 )  - Use typed config entry in rainbird (@epenet
- #132031 )  - Use typed config entry in imap (@epenet
- #132029 )  - Remove CONF_NAME from config entry in solarlog (@dontinelli
- #131738 )  - Use runtime data in HEOS (@andrewsayre
- #132030 )  - Set PARALLEL_UPDATES in renault and bump quality scale (@epenet
- #132047 )  - Bump webio_api to 0.1.11 (@nasWebio
- #131730 )  - Update livisi to 0.0.24 (@cdce8p
- #132058 )  - Add additional number entities to IronOS (@tr4nt0r
- #131943 )  - Bump zwave-js-server-python to 0.60.0 (@MindFreeze
- #132059 )  - Bump dawidd6/action-download-artifact from 6 to 7 (@dependabot - #132040
)  - Reboot host to aiohasupervisor (@mdegat01
- #130391 )  - Update mypy-dev to 1.14.0a5 (@cdce8p
- #132063 )  - Change wording in config flow dialog for fyta (@dontinelli
- #132075 )  - Remove option to update settings using second config flow in Reolink (@starkillerOG
- #131695 )  - Ensure Schlage config entry uniqueness (@dknowles2
- #131732 )  - Record Plugwise Quality Scale (@CoMPaTech
- #131888 )  - Add Reolink quality scale yaml (@starkillerOG
- #131123 )  - Fix type hints in IronOS coordinators (@tr4nt0r
- #132107 )  - Cleanup dead code in renault coordinator (@epenet
- #132078 )  - Improve Renault reauth test (@epenet
- #132077 )  - Rename ‘Reolink IP NVR/camera’ to ‘Reolink’ (@starkillerOG
- #132113 )  - Add data description to Nord pool config flow (@gjohansson-ST
- #132115 )  - Drop operating mode property in sharkiq (@gjohansson-ST
- #132097 )  - Remove unneeded step from reauth in Reolink (@starkillerOG
- #132143 )  - Revert “bump hassil and intents” (@epenet
- #132138 )  - Move set_room_setpoint to opentherm_gw hub (@mvn23
- #132152 )  - Bump syrupy to 4.8.0 (@epenet
- #132134 )  - Plugwise fixes from quality review (@CoMPaTech
- #132158 )  - Bump renault-api to 0.2.8 (@epenet
- #132135 )  - Support Z-Wave JS abort S2 bootstrapping (@MindFreeze
- #132140 )  - Set PARALLEL_UPDATES for all BMW platforms (@rikroe
- #132088 )  - Improve Reolink config flow tests (@starkillerOG
- #131693 )  - Bump voip-utils (@synesthesiam
- #132110 )  - Cleanup dead code in renault (@epenet
- #132172 )  - Bump nettigo-air-monitor to version 4.0.0 (@bieniu
- #132106 )  - Reapply “bump hassil and intents” (#132138) (@epenet
- #132151 )  - Dump pip freeze in CI (@epenet
- #132173 )  - Use typed config entry in SABnzbd coordinator (@jpbede
- #132098 )  - Pass config entry directly to update coordinator in Sensibo (@gjohansson-ST
- #132114 )  - Fix check dirty in Prepare dependencies CI (@epenet
- #132180 )  - Add initial quality scale for TotalConnect (@austinmroczek
- #132012 )  - Refactor roomba to set vacuums in vacuum file (@gjohansson-ST
- #132102 )  - Add dhcp discovery for fyta (@dontinelli
- #132185 )  - Remove support for live recorder data migration of entity IDs (@emontnemery
- #131952 )  - Bump pytest to 8.3.4 (@epenet
- #132179 )  - Generic Thermostat Add Target Min Max to UI config (@hughsaunders
- #131168 )  - Fix mypy issue in airzone cloud (@gjohansson-ST
- #132208 )  - Update test_config_flow for solarlog (@dontinelli
- #132104 )  - Fix next mypy issue in airzone_cloud (@gjohansson-ST
- #132217 )  - Improve BMWDataUpdateCoordinator typing (@rikroe
- #132087 )  - Add powerfox integration (@klaasnicolaas
- #131640 )  - Add missing data description for solarlog (@dontinelli
- #131712 )  - Bump pynecil to v2.0.2 (@tr4nt0r
- #132221 )  - Plugwise quality docs benchmark data update and removal (@CoMPaTech
- #132082 )  - Suez water add quality_scale.yaml (@jb101010-2
- #131360 )  - Add quality scale for fyta (@dontinelli
- #131508 )  - Add quality scale for Mastodon (@andrew-codechimp
- #131357 )  - Add quality_scale.yaml for Google Photos integration (@allenporter
- #131329 )  - Add reauthentication flow for Powerfox integration (@klaasnicolaas
- #132225 )  - Bump onvif-zeep-async to 3.1.13 (@jterrace
- #132229 )  - Add diagnostics to Powerfox integration (@klaasnicolaas
- #132226 )  - Use typed config entry in fyta (@epenet
- #132248 )  - Use typed config entry in mastodon (@epenet
- #132249 )  - Fix Visual Studio Code tasks to use selected Python interpreter (@masto
- #132219 )  - Improve discovery rule in IQS validation (@epenet
- #132251 )  - Pass config entry to UpdateCoordinator in yale_smart_alarm (@gjohansson-ST
- #132205 )  - Catch exceptions on entry setup for Autarco integration (@klaasnicolaas
- #132227 )  - Fix sensibo test coverage to 100% (@gjohansson-ST
- #132202 )  - Improve tests of recorder util resolve_period (@emontnemery
- #132259 )  - Bump github/codeql-action from 3.27.5 to 3.27.6 (@dependabot - #132237
)  - Add IronOS quality scale record (@tr4nt0r
- #131598 )  - Refactor Snapcast client and group classes to use a common base clase (@mill1000
- #124499 )  - Set new polling interval for Powerfox integration (@klaasnicolaas
- #132263 )  - Add ista EcoTrend quality scale record (@tr4nt0r
- #131580 )  - Record current IQS state for Cambridge Audio (@noahhusby
- #131080 )  - Add quality scale for Husqvarna Automower (@Thomas55555
- #131560 )  - Fix test_dump_log_object timeouts in the CI (@bdraco
- #132234 )  - Add Bring! quality scale record (@tr4nt0r
- #131584 )  - Check token scope earlier in Husqvarna Automower (@Thomas55555
- #132289 )  - Refactor template lock to only return LockState or None (@gjohansson-ST
- #132093 )  - Clean up common modules in Husqvarna Automower (@Thomas55555
- #132290 )  - Add support for onvif tplink person and vehicle events (@jterrace
- #130769 )  - Bump aiosomecomfort to 0.0.28 in Honeywell (@mkmer
- #132294 )  - Use config_entry.runtime_data in Honeywell (@mkmer
- #132297 )  - Set command_line quality scale to legacy (@gjohansson-ST
- #132306 )  - Fix runtime data in Cambridge Audio (@noahhusby
- #132285 )  - Add quality scale to Onkyo (@arturpragacz
- #131322 )  - Remove stale requirement for androidtv (@tofuSCHNITZEL
- #132319 )  - Revert “Pin rpds-py to 0.21.0 to fix CI” (@epenet
- #132331 )  - Bump pylamarzocco to 1.3.2 (@zweckj
- #132344 )  - Remove dead code in fritzbox_callmonitor (@epenet
- #132353 )  - Fix missing AV info in Onkyo (@arturpragacz
- #132328 )  - Use typed config entry in husqvarna_automower (@epenet
- #132346 )  - Remove deprecated supported features warning in FanEntity (@epenet
- #132369 )  - Remove deprecated supported features warning in 
ClimateEntity(@gjohansson-ST- #132206 )  - Mark test-before-setup as exempt in mqtt (@epenet
- #132334 )  - Remove yaml import from feedreader integration (@jbouwh
- #132278 )  - Remove yaml import from incomfort integration after deprecation time (@jbouwh
- #132275 )  - Add data description for Onkyo config flow (@arturpragacz
- #132349 )  - Remove deprecated supported features warning in CoverEntity (@epenet
- #132367 )  - Avoid access to 
self.context["source"]in integration config flows (@epenet- #132355 )  - Remove _enable_turn_on_off_backwards_compatibility A-F (@gjohansson-ST
- #132417 )  - Remove _enable_turn_on_off_backwards_compatibility G-M (@gjohansson-ST
- #132418 )  - Remove _enable_turn_on_off_backwards_compatibility N-S (@gjohansson-ST
- #132422 )  - Remove _enable_turn_on_off_backwards_compatibility T-Z (@gjohansson-ST
- #132423 )  - Remove yaml import from hive (@epenet
- #132354 )  - Remove deprecated integration dte_energy_bridge (@jbouwh
- #132276 )  - Update mypy-dev to 1.14.0a6 (@cdce8p
- #132440 )  - Bump actions/cache from 4.1.2 to 4.2.0 (@dependabot - #132419
)  - Handle Z-Wave JS S2 inclusion via Inclusion Controller (@MindFreeze
- #132073 )  - Fix flaky CI from azure_event_hub (@epenet
- #132461 )  - Log warning on use of deprecated light constants (@epenet
- #132387 )  - Adjust scope of zha global quirks fixture (@epenet
- #132463 )  - Implement new state property for vacuum which is using an enum (@gjohansson-ST
- #126353 )  - Bump codecov/codecov-action from 5.0.7 to 5.1.1 (@dependabot - #132455
)  - Set parallel updates in Bring integration (@tr4nt0r
- #132504 )  - Move light constants to separate module (@epenet
- #132473 )  - Add tests for media player support_* properties (@epenet
- #132458 )  - Remove deprecated supported features warning in LightEntity (@epenet
- #132371 )  - Add check for unique id mismatch in reauth of Bring integration (@tr4nt0r
- #132499 )  - Add more models to Tesla Fleet (@Bre77
- #132430 )  - Remove default OAuth implementation from Tesla Fleet (@Bre77
- #132431 )  - Bump actions/attest-build-provenance from 1.4.4 to 2.0.0 (@dependabot - #132332
)  - Remove migration for tag (@gjohansson-ST
- #132200 )  - Small cleanup in sensibo (@gjohansson-ST
- #132118 )  - Cache AST module parsing in hassfest (@epenet
- #132244 )  - Remove not needed name from yale_smart_alarm (@gjohansson-ST
- #132204 )  - Improve recorder util resolve_period (@emontnemery
- #132264 )  - Remove support for live recorder data migration of event type IDs (@emontnemery
- #131826 )  - Remove native_unit_of_measurement from Onewire counters (@jrieger
- #132076 )  - Removes previously deprecated simulated integration (@gjohansson-ST
- #132111 )  - Add parallel-updates rule to quality_scale validation (@epenet
- #132041 )  - Use build in unit of measurement in HomeWizard ‘Water usage’ sensor (@DCSBL
- #132261 )  - Plugwise add missing translation (@CoMPaTech
- #132239 )  - Add exception handlers to Home Connect action calls (@Diegorro98
- #131895 )  - Update go2rtc-client to 0.1.2 (@frenck
- #132517 )  - Use device area/floor in intent_script (@arturpragacz
- #130644 )  - Set PARALLEL_UPDATES in Bring sensor platform (@jpbede
- #132538 )  - Bump pylamarzocco to 1.3.3 (@zweckj
- #132534 )  - Bump uiprotect to 6.7.0 (@RaHehl
- #132565 )  - Use runtime_data in Whirlpool (@mkmer
- #132613 )  - Add tests to Nord Pool (@gjohansson-ST
- #132468 )  - Plugwise Quality improvements (@CoMPaTech
- #132175 )  - Bump nsapi to 3.1.2 (@hugoideler
- #132596 )  - Bump homematicip from 1.1.3 to 1.1.5 (@hahn-th
- #132537 )  - Increase test coverage in apsystems coordinator (@Thomas55555
- #132631 )  - Bump actions/attest-build-provenance from 2.0.0 to 2.0.1 (@dependabot - #132661
)  - Remove deprecated supported features warning in Camera (@epenet
- #132640 )  - Use ast_parse_module in parallel_updates IQS rule (@epenet
- #132646 )  - Remove Stookalert integration (@frenck
- #132569 )  - Remove not needed code check in yale_smart_alarm (@gjohansson-ST
- #132649 )  - Remove deprecated supported features warning in Remote (@epenet
- #132643 )  - Remove deprecated supported features warning in Humidifier (@epenet
- #132641 )  - Remove deprecated supported features warning in Lock (@epenet
- #132642 )  - Remove YAML support from vizio (@epenet
- #132351 )  - Remove deprecated supported features warning in AlarmControlPanel (@epenet
- #132665 )  - Remove deprecated supported features warning in Siren (@epenet
- #132666 )  - Remove deprecated supported features warning in Vacuum (@epenet
- #132670 )  - Remove deprecated supported features warning in WaterHeater (@epenet
- #132668 )  - Add tip connected detection to IronOS (@tr4nt0r
- #131946 )  - Remove deprecated supported features warning in Update (@epenet
- #132667 )  - Add slightly more detailed descriptions for Counter actions (@NoRi2909
- #132576 )  - Set quality scale to silver for Husqvarna Automower (@Thomas55555
- #132293 )  - Use ATTR_COLOR_TEMP_KELVIN in emulated_hue light (@epenet
- #132693 )  - Use ATTR_COLOR_TEMP_KELVIN in baf light (@epenet
- #132692 )  - Move SABnzbd action setup to async_setup (@jpbede
- #132629 )  - Add binary platform to IronOS (@tr4nt0r
- #132691 )  - Increase test coverage in yale_smart_alarm (@gjohansson-ST
- #132650 )  - Palazzetti power control (@dotvav
- #131833 )  - Fix reading of max mireds from Matter lights (@epenet
- #132710 )  - Change to module function in statistics (@gjohansson-ST
- #132648 )  - Set unique_id in myuplink config entry (@astrandb
- #132672 )  - Migrate opple lights to use Kelvin (@epenet
- #132697 )  - Use kelvin attributes in baf (@epenet
- #132725 )  - Add myself as code owner to statistics (@gjohansson-ST
- #132719 )  - Update pylint to 3.3.2 and astroid to 3.3.6 (@cdce8p
- #132718 )  - Add Starlink consumption sensors (@davidrapan
- #132262 )  - Migrate flux_led lights to use Kelvin (@epenet
- #132687 )  - Migrate switchbot lights to use Kelvin (@epenet
- #132695 )  - Bump uiprotect to 6.8.0 (@RaHehl
- #132735 )  - Use ATTR_COLOR_TEMP_KELVIN in alexa (@epenet
- #132733 )  - Improve Plugwise tests (@CoMPaTech
- #132677 )  - Plugwise improve exception translations (@CoMPaTech
- #132663 )  - Add Watergate Sonic Local Integration (@adam-the-hero
- #129686 )  - Remove YAML support from cert_expiry (@epenet
- #132350 )  - Improve name and description of Include list, fix 
holidayskeyword name (@NoRi2909- #132188 )  - Add Ituran integration (@shmuelzon
- #129067 )  - Add reconfigure flow to Cambridge Audio (@noahhusby
- #131091 )  - Fix 
LazyStatecompatibility withStateunder_cached_propertychange (@bdraco- #132752 )  - Migrate deconz lights to use Kelvin (@epenet
- #132698 )  - Add quality scale to myUplink - reflect current state (@astrandb
- #131686 )  - Mark Cambridge Audio quality scale as platinum (@noahhusby
- #132762 )  - Add clearer descriptions to all Timer actions (@NoRi2909
- #132571 )  - Migrate limitlessled lights to use Kelvin (@epenet
- #132689 )  - Remove old compatibility code (and add new warning) in lifx (@epenet
- #132730 )  - Migrate smartthings lights to use Kelvin (@epenet
- #132699 )  - Migrate hive lights to use Kelvin (@epenet
- #132686 )  - Change BMW reauth/reconfigure to only allow password (@rikroe
- #132767 )  - Remove deprecated supported features warning in MediaPlayer (@epenet
- #132365 )  - Use local ATTR_KELVIN constant in yeelight (@epenet
- #132731 )  - Add missing 
last_reported_timestamptoLazyState(@bdraco- #132761 )  - Remove legacy behavior from Teslemetry (@Bre77
- #132760 )  - Update demetriek to v1.0.0 (@frenck
- #132765 )  - Improve description of ‘vapid_email’ field (@NoRi2909
- #131349 )  - Use consistent UI name for system_log.clear action (@NoRi2909
- #132083 )  - Migrate osramlightify lights to use Kelvin (@epenet
- #132688 )  - Migrate matter lights to use Kelvin (@epenet
- #132685 )  - Set Nord Pool device as a service (@gjohansson-ST
- #132717 )  - Suez_water: close session after config flow (@jb101010-2
- #132714 )  - Migrate abode lights to use Kelvin (@epenet
- #132690 )  - Add new api to fetch sentence triggers (@balloob
- #132764 )  - Migrate elgato lights to use Kelvin (@epenet
- #132789 )  - Change fields allowed to change in options flow for Mold indicator (@gjohansson-ST
- #132400 )  - Add Starlink usage sensors (@davidrapan
- #132738 )  - Bump actions/attest-build-provenance from 2.0.1 to 2.1.0 (@dependabot - #132788
)  - Migrate homekit_controller lights to use Kelvin (@epenet
- #132792 )  - Remove sleep and forbidden handling from Teslemetry (@Bre77
- #132784 )  - Migrate eufy lights to use Kelvin (@epenet
- #132790 )  - Migrate blebox lights to use Kelvin (@epenet
- #132787 )  - Migrate mired attributes to kelvin in limitlessled (@epenet
- #132785 )  - Migrate iglo lights to use Kelvin (@epenet
- #132796 )  - Update ciso8601 to v2.3.2 (@frenck
- #132793 )  - bump pyituran to 0.1.4 (@shmuelzon
- #132791 )  - Add diagnostics platform to Russound RIO (@noahhusby
- #132776 )  - Bump aioswitcher to 5.1.0 (@YogevBokobza
- #132753 )  - Use UnitOfEnergy.KILO_CALORIE in Tractive integration (@bieniu
- #131909 )  - Migrate wiz lights to use Kelvin (@epenet
- #132809 )  - Migrate wemo lights to use Kelvin (@epenet
- #132808 )  - Migrate tuya lights to use Kelvin (@epenet
- #132803 )  - Migrate tradfri lights to use Kelvin (@epenet
- #132800 )  - Migrate template lights to use Kelvin (@epenet
- #132799 )  - Migrate homematic lights to use Kelvin (@epenet
- #132794 )  - Migrate nanoleaf lights to use Kelvin (@epenet
- #132797 )  - Address misc comments from myuplink quality scale review (@astrandb
- #132802 )  - Migrate yeelight lights to use Kelvin (@epenet
- #132814 )  - Migrate xiaomi_miio lights to use Kelvin (@epenet
- #132811 )  - Update pvo to v2.2.0 (@frenck
- #132812 )  - Migrate vesync lights to use Kelvin (@epenet
- #132806 )  - Use “remove” in description of “Clear playlist” action (@NoRi2909
- #132079 )  - Migrate zwave_js lights to use Kelvin (@epenet
- #132818 )  - Remove config flow option to set mydevolo URL (@Shutgun
- #132821 )  - Update gotailwind to v0.3.0 (@frenck
- #132817 )  - Add missing Kelvin attributes to mqtt ignore list (@epenet
- #132820 )  - Improve myuplink tests to reach full coverage for all modules (@astrandb
- #131937 )  - Update wled to v0.21.0 (@frenck
- #132822 )  - Address review comment on myuplink tests (@astrandb
- #132819 )  - Add check for typed ConfigEntry in quality scale validation (@epenet
- #132028 )  - spaceapi: fix sensor values (@Xiretza
- #132099 )  - Migrate hue lights to use Kelvin (@epenet
- #132835 )  - Add exception translations for Fronius (@farmio
- #132830 )  - Add data descriptions to devolo Home Control (@Shutgun
- #132703 )  - Cleanup unnecessary mired attributes in esphome (@epenet
- #132833 )  - Fix wrong name attribute in mqtt ignore list (@epenet
- #132831 )  - Plugwise improve platform tests (@CoMPaTech
- #132748 )  - Add a quality scale for fitbit integration (@allenporter
- #131326 )  - Add beolink_join source_id parameter to Bang & Olufsen (@mj23000
- #132377 )  - Bump mozart-api to 4.1.1.116.4 (@mj23000
- #132859 )  - Add retry to api calls in Nord Pool (@gjohansson-ST
- #132768 )  - Bump pydantic to 2.10.3 and update required deps (@bdraco
- #131963 )  - Use floats instead of datetime in statistics (@gjohansson-ST
- #132746 )  - Add quality scale to Nord Pool (@gjohansson-ST
- #132415 )  - Set config-flow rule in IQS to todo in Bring integration (@tr4nt0r
- #132855 )  - Migrate demo lights to use Kelvin (@epenet
- #132837 )  - Add model_id to flexit (bacnet) entity (@lellky
- #132875 )  - Update numpy to 2.2.0 (@cdce8p
- #132874 )  - Test the google tasks api connection in setup (@allenporter
- #132657 )  - Use runtime_data for roku (@ctalkington
- #132781 )  - Fix typo in water heater integration (@lboue
- #132891 )  - Bump github/codeql-action from 3.27.6 to 3.27.7 (@dependabot - #132900
)  - Refactor light significant change to use kelvin attribute (@epenet
- #132853 )  - Remove old codeowner no longer working on the integration (@shapournemati-iotty
- #132807 )  - Fix docker hassfest (@edenhaus
- #132823 )  - Migrate flux to use Kelvin over Mireds (@epenet
- #132839 )  - Add remaining test coverage to yale_smart_alarm (@gjohansson-ST
- #132869 )  - Migrate tasmota lights to use Kelvin (@epenet
- #132798 )  - Migrate zha lights to use Kelvin (@epenet
- #132816 )  - Enable pydantic.v1 mypy plugin (@cdce8p
- #132907 )  - upgrade iottycloud lib to 0.3.0 (@shapournemati-iotty
- #132836 )  - Allow bytearray for mqtt payload type (@cdce8p
- #132906 )  - Use snapshot tests for remaining myuplink platforms (@astrandb
- #132915 )  - Create quality_scale.yaml from integration scaffold script (@farmio
- #132199 )  - Velbus add quality_scale.yaml (@cereal2nd
- #131377 )  - Set quality_scale for myUplink to Silver (@astrandb
- #132923 )  - Adjust lifx to use local _ATTR_COLOR_TEMP constant (@epenet
- #132840 )  - Add data description to suez_water config flow (@jb101010-2
- #132466 )  - Migrate mqtt lights to use Kelvin (@epenet
- #132828 )  - Split the velbus services code in its own file (@cereal2nd
- #131375 )  - Fix mqtt light attributes (@epenet
- #132941 )  - Set go2rtc quality scale to internal (@edenhaus
- #132945 )  - Update xknx to 3.4.0 (@farmio
- #132943 )  - Add Dutch locale on supported Alexa interfaces (@jbouwh
- #132936 )  - Record current IQS state for Russound RIO (@noahhusby
- #131219 )  - Add quality scale for nest integration (@allenporter
- #131330 )  - Improve coverage in light reproduce state (@epenet
- #132929 )  - Trigger full ci run on global mypy config change (@cdce8p
- #132909 )  - Remove port from Elgato configuration flow (@frenck
- #132961 )  - Bump pylamarzocco to 1.4.0 (@zweckj
- #132917 )  - Add parallel updates & use typed config entry for Russound RIO (@noahhusby
- #132958 )  - Update quality scale for nordpool (@gjohansson-ST
- #132964 )  - Merge feature branch with backup changes to dev (@emontnemery
- #132954 )  - Add reconfiguration flow to myuplink (@astrandb
- #132970 )  - Set strict typing for myuplink (@astrandb
- #132972 )  - Add missing body height icon in Withings integration (@CFenner
- #132991 )  - Introduce parallel updates for Plugwise (@CoMPaTech
- #132940 )  - Enforce strict typing for Russound RIO (@noahhusby
- #132982 )  - Improve config flow test coverage for Russound RIO (@noahhusby
- #132981 )  - Set parallel updates for roku (@ctalkington
- #132892 )  - Set parallel updates in Elgato (@frenck
- #132998 )  - Migrate elgato light tests to use Kelvin (@epenet
- #133004 )  - Move coordinator for TwenteMilieu into own module (@frenck
- #133000 )  - Bump velbusaio to 2024.12.0 (@cereal2nd
- #132989 )  - Use ConfigEntry runtime_data in EnergyZero (@klaasnicolaas
- #132979 )  - Don’t use kitchen_sink integration in config entries tests (@emontnemery
- #133012 )  - Fix config entry import in Twente Milieu diagnostic (@frenck
- #133017 )  - Migrate google_assistant color_temp handlers to use Kelvin (@epenet
- #132997 )  - Add reconfigure flow for Powerfox integration (@klaasnicolaas
- #132260 )  - Improve diagnostics code of EnergyZero integration (@klaasnicolaas
- #133019 )  - Migrate tplink light tests to use Kelvin (@epenet
- #133026 )  - Small test cleanups in Twente Milieu (@frenck
- #133028 )  - Adjust backup agent platform (@emontnemery
- #132944 )  - Migrate template light tests to use Kelvin (@epenet
- #133025 )  - Explicitly pass config entry to coordinator in Elgato (@frenck
- #133014 )  - Clean up Elgato config flow tests (@frenck
- #133045 )  - Bump hass-nabucasa from 0.86.0 to 0.87.0 (@klejejs
- #133043 )  - Improve husqvarna_automower decorator typing (@cdce8p
- #133047 )  - Add data descriptions to Twente Milieu config flow (@frenck
- #133046 )  - Fix music_assistant decorator typing (@cdce8p
- #133044 )  - Bump ruff to 0.8.2 (@autinerd
- #133041 )  - Small test improvements to Tailwind tests (@frenck
- #133051 )  - Bump uv to 0.5.8 (@edenhaus
- #133036 )  - Migrate emulated_hue light tests to use Kelvin (@epenet
- #133006 )  - Migrate esphome light tests to use Kelvin (@epenet
- #133008 )  - Migrate homekit light tests to use Kelvin (@epenet
- #133011 )  - Improve Callable annotations (@cdce8p
- #133050 )  - Use PEP 695 TypeVar syntax (@cdce8p
- #133049 )  - Migrate mqtt light tests to use Kelvin (@epenet
- #133035 )  - Adjust light test helpers to use Kelvin, and cleanup unused helpers (@epenet
- #133048 )  - Remove reference to self.min/max_mireds in mqtt light (@epenet
- #133055 )  - Fix load of backup store (@emontnemery
- #133024 )  - Bump velbusaio to 2024.12.1 (@cereal2nd
- #133056 )  - Migrate deconz light tests to use Kelvin (@epenet
- #133002 )  - Fix backup strategy retention filter (@MartinHjelmare
- #133060 )  - Add HEOS quality scale (@andrewsayre
- #132311 )  - Update demetriek to v1.1.0 (@frenck
- #133064 )  - Explicitly pass config entry to coordinator in Tailwind (@frenck
- #133065 )  - Migrate group light tests to use Kelvin (@epenet
- #133010 )  - Use ConfigEntry runtime_data in easyEnergy (@klaasnicolaas
- #133053 )  - Improve auth generic typing (@cdce8p
- #133061 )  - Add support for subentries to config entries (@emontnemery
- #117355 )  - Migrate wiz light tests to use Kelvin (@epenet
- #133032 )  - Migrate abode light tests to use Kelvin (@epenet
- #133001 )  - Add new integration slide_local (@dontinelli
- #132632 )  - Migrate flux_led light tests to use Kelvin (@epenet
- #133009 )  - Add Cookidoo integration (@miaucl
- #129800 )  - Migrate wemo light tests to use Kelvin (@epenet
- #133031 )  - Migrate tradfri light tests to use Kelvin (@epenet
- #133030 )  - Migrate yeelight light tests to use Kelvin (@epenet
- #133033 )  - Migrate zwave_js light tests to use Kelvin (@epenet
- #133034 )  - Promote Twente Milieu quality scale to silver (@frenck
- #133074 )  - Migrate demo light tests to use Kelvin (@epenet
- #133003 )  - Migrate switch_as_x light tests to use Kelvin (@epenet
- #133023 )  - Migrate smartthings light tests to use Kelvin (@epenet
- #133022 )  - Use runtime_data in velbus (@cereal2nd
- #132988 )  - Small improvements to the AdGuard tests (@frenck
- #133073 )  - Add source zone exclusion to Russound RIO (@noahhusby
- #130392 )  - Refactor light reproduce state to use kelvin attribute (@epenet
- #132854 )  - Migrate alexa color_temp handlers to use Kelvin (@epenet
- #132995 )  - Migrate lifx light tests to use Kelvin (@epenet
- #133020 )  - Improve Solar.Forecast configuration flow tests (@frenck
- #133077 )  - Add test-before-setup rule to quality_scale validation (@epenet
- #132255 )  - Fix CI failure in russound_rio (@epenet
- #133081 )  - Update Rainbird quality scale grading on the Silver quality checks (@allenporter
- #131498 )  - Use correct ATTR_KELVIN constant in yeelight tests (@epenet
- #133088 )  - Bump github/codeql-action from 3.27.7 to 3.27.9 (@dependabot - #133104
)  - Move config entry type of energyzero integration (@klaasnicolaas
- #133094 )  - Remove unused constant from blink (@epenet
- #133109 )  - Handle step size correctly in myuplink number platform (@astrandb
- #133016 )  - Bump watchdog to 6.0.0 (@mweinelt
- #132895 )  - Update devcontainer to Python 3.13 (@cdce8p
- #132313 )  - Velbus docs quality bump (@cereal2nd
- #133070 )  - Simplify access to hass in service calls (@epenet
- #133062 )  - Use internal min/max mireds in template (@epenet
- #133113 )  - Add mWh as unit of measurement for Matter energy sensors (@agners
- #133005 )  - Remove HEOS yaml import (@andrewsayre
- #133082 )  - Remove 
native_unit_of_measurementfrom rfxtrx counters (@jrieger- #133108 )  - Replace functools.partial with ServiceCall.hass in knx (@epenet
- #133111 )  - Add data/data_description translation checks (@epenet
- #131705 )  - Raise issue for deprecated imperial unit system (@gjohansson-ST
- #130979 )  - Fix failing CI due to Russound Rio incorrect IQS (@frenck
- #133118 )  - Add a quality scale for Google Tasks (@allenporter
- #131497 )  - Cookidoo reauth config flow for silver (@miaucl
- #133110 )  - Fix typo in 
WaterHeaterEntityDescriptionname (@lboue- #132888 )  - Add contact vip info to fritzbox_callmonitor sensor (@cdce8p
- #132913 )  - Push Nibe package to 2.14.0 (@martijnrusschen
- #133125 )  - Make Twitch sensor state and attributes translatable (@jpbede
- #133127 )  - Update open-meteo to v0.3.2 (@frenck
- #133122 )  - Reduce functools.partial with ServiceCall.hass in energyzero (@epenet
- #133134 )  - Replace functools.partial with ServiceCall.hass in unifiprotect (@epenet
- #133131 )  - Replace functools.partial with ServiceCall.hass in tibber (@epenet
- #133132 )  - Reduce functools.partial with ServiceCall.hass in easyenergy (@epenet
- #133133 )  - Improve data description and title for Cookidoo integration (@miaucl
- #133106 )  - Bump velbusaio to 2024.12.2 (@cereal2nd
- #133130 )  - Fix typos in devolo Home Network tests (@Shutgun
- #133139 )  - Set quality scale to silver for Powerfox integration (@klaasnicolaas
- #133095 )  - Add warning when light entities do not provide kelvin attributes or properties (@epenet
- #132723 )  - Fix missing password for slide_local (@dontinelli
- #133142 )  - Bump PyViCare to 2.38.0 (@CFenner
- #133126 )  - Velbus test before setup (@cereal2nd
- #133069 )  - Add reconfigure flow to MQTT (@jbouwh
- #132246 )  - Deprecate light constants (@epenet
- #132680 )  - Fix Tailwind config entry typing in async_unload_entry signature (@frenck
- #133153 )  - Bump ruff to 0.8.3 (@autinerd
- #133163 )  - Update debugpy to 1.8.11 (@frenck
- #133169 )  - Add STT error code for cloud authentication failure (@synesthesiam
- #133170 )  - Add response slot to HassRespond intent (@synesthesiam
- #133162 )  - Add eheimdigital integration (@autinerd
- #126757 )  - Bump uiprotect to 7.0.2 (@bdraco
- #132975 )  - Improve Slide Local device tests (@joostlek
- #133197 )  - Bump openwebifpy to 4.3.0 (@autinerd
- #133188 )  - Add reconfiguration to slide_local (@dontinelli
- #133182 )  - Add button entity to slide_local (@dontinelli
- #133141 )  - Add Ohme integration (@dan-r
- #132574 )  - Switcher move _async_call_api to entity.py (@YogevBokobza
- #132877 )  - Suez_water: add removal instructions (@jb101010-2
- #133206 )  - Bump pynecil to 2.1.0 (@tr4nt0r
- #133211 )  - Update Fronius translations (@farmio
- #132876 )  - set PARALLEL_UPDATES to 1 for enphase_envoy (@catsmanac
- #132373 )  - Suez_water: store coordinator in runtime_data (@jb101010-2
- #133204 )  - Fix pydantic warnings in purpleair (@cdce8p
- #133247 )  - Bump aioautomower to 2024.12.0 (@Thomas55555
- #132962 )  - Fix enigma2 integration for devices not reporting MAC address (@autinerd
- #133226 )  - Enhance translation strings in fibaro (@rappenze
- #133234 )  - Replace aiogithub dependency with pynecil update check (@tr4nt0r
- #133213 )  - Use entry.runtime_data in fibaro (@rappenze
- #133235 )  - Fix lingering mqtt device_trigger unload entry test (@jbouwh
- #133202 )  - Replace “this” with “a” to fix Install Update action description (@NoRi2909
- #133210 )  - Improve BMW translations (@rikroe
- #133236 )  - Update elevenlabs to 1.9.0 (@cdce8p
- #133264 )  - Mark Google Tasks action-exceptions quality scale as done (@allenporter
- #133253 )  - Bump pymodbus version 3.7.4 (@crug80
- #133175 )  - Don’t update existing Fronius config entries from config flow (@farmio
- #132886 )  - Improve MQTT json color_temp validation (@jbouwh
- #133174 )  - Update quality scale documentation rules in IronOS integration (@tr4nt0r
- #133245 )  - Add button platform to Ohme (@dan-r
- #133267 )  - Use typed BMWConfigEntry (@rikroe
- #133272 )  - Fix two typos in KEF strings (@NoRi2909
- #133294 )  - Bump pynordpool 0.2.3 (@gjohansson-ST
- #133277 )  - Explicitly set 
PARALLEL_UPDATESfor Google Tasks (@allenporter- #133296 )  - Refactor Onkyo tests to patch underlying pyeiscp library (@eclair4151
- #132653 )  - Update quality scale for Nord Pool (@gjohansson-ST
- #133282 )  - Bump plugwise to v1.6.4 and adapt (@bouwew
- #133293 )  - Fix typo “configurered” in MQTT (@NoRi2909
- #133295 )  - Improve Fronius tests (@farmio
- #132872 )  - Mark Google Tasks 
test-before-setupquality scale rule asdone(@allenporter- #133298 )  - Adjust MQTT tests not to assert on deprecated color_temp attribute (@jbouwh
- #133198 )  - Fix missing Fronius data_description translation for reconfigure flow (@farmio
- #133304 )  - Increase test coverage for google tasks init (@allenporter
- #133252 )  - Full test coverage for Vodafone Station button platform (@chemelli74
- #133281 )  - Cleanup tests for tedee (@zweckj
- #133306 )  - Split coordinator in lamarzocco (@zweckj
- #133208 )  - Conversation: Use [] when we know key exists (@balloob
- #133305 )  - Update docker base image to 2024.12.1 (@cdce8p
- #133323 )  - Set default min/max color temperature in abode lights (@epenet
- #133331 )  - Set default min/max color temperature in demo lights (@epenet
- #133330 )  - Add reconfigure flow to Roku (@ctalkington
- #132986 )  - Set default min/max color temperature in wemo lights (@epenet
- #133338 )  - Avoid string manipulations in hassio backup reader/writer (@emontnemery
- #133339 )  - Set default min/max color temperature in deconz lights (@epenet
- #133333 )  - Use 
ConfigEntry.runtime_datain Twitch (@jpbede- #133337 )  - Set default min/max color temperature in matter lights (@epenet
- #133340 )  - Suez_water: mark reached bronze scale level (@jb101010-2
- #133352 )  - Set default min/max color temperature in homekit_controller lights (@epenet
- #133334 )  - Reduce false-positives in test-before-setup IQS check (@epenet
- #133349 )  - Add Idasen Desk quality scale record (@abmantis
- #132368 )  - Add Habitica quality scale record (@tr4nt0r
- #131429 )  - Record current IQS state for LaMetric (@frenck
- #133040 )  - Use unique_id in devolo Home Network tests (@Shutgun
- #133147 )  - Update myuplink quality scale (@astrandb
- #133083 )  - Velbus finish config-flow-test-coverage (@cereal2nd
- #133149 )  - Add reauth flow to Ituran (@shmuelzon
- #132755 )  - Remove custom “unknown” state from Fronius Enum sensor (@farmio
- #133361 )  - Velbus add PARALLEL_UPDATES to all platforms (@cereal2nd
- #133155 )  - Update hassio backup agents on mount added or removed (@emontnemery
- #133344 )  - Translate exception messages in myUplink (@astrandb
- #131626 )  - Add HEOS reconfigure flow (@andrewsayre
- #133326 )  - Set default min/max color temperature in mqtt lights (@epenet
- #133356 )  - Increase backup upload timeout (@ludeeus
- #132990 )  - Add quality scale to ElevenLabs (@sorgfresser
- #133276 )  - Remove support for live recorder data post migration of entity IDs (@emontnemery
- #133370 )  - Gives a friendly name to emoncms entities if unit is not specified (@alexandrecuer
- #133358 )  - Add switch platform to local_slide (@dontinelli
- #133369 )  - Load sun via entity component (@gjohansson-ST
- #132598 )  - Improvements to the LaMetric config flow tests (@frenck
- #133383 )  - Add required domain to vacuum intents (@synesthesiam
- #133166 )  - Update axis to v64 (@cdce8p
- #133385 )  - Remove setup entry mock assert from LaMetric config flow (@frenck
- #133387 )  - Add reauth flow to Ohme (@dan-r
- #133275 )  - Nord Pool iqs platinum (@gjohansson-ST
- #133389 )  - Add Matter battery replacement description (@lboue
- #132974 )  - Update mypy-dev to 1.14.0a7 (@cdce8p
- #133390 )  - Fix issue when no data, where the integer sensor value is given a string (@vche
- #132123 )  - Add tests for Habitica integration (@tr4nt0r
- #131780 )  - Fix mqtt reconfigure flow (@jbouwh
- #133315 )  - Add palazzetti status sensor (@dotvav
- #131348 )  - Fix incorrect schema in config tests (@epenet
- #133404 )  - Add quality_scale.yaml to enphase_envoy (@catsmanac
- #132489 )  - Fix schema translation checks for nested config-flow sections (@epenet
- #133392 )  - Check if requirement is typed in strict_typing IQS validation (@epenet
- #133415 )  - Bump aiohasupervisor to version 0.2.2b2 (@emontnemery
- #133417 )  - Add reconfigure to Cookidoo integration (@miaucl
- #133144 )  - Improve hassio backup agent test coverage (@emontnemery
- #133424 )  - Improve hassio backup agent test coverage (@emontnemery
- #133426 )  - Mark lamarzocco as platinum quality (@zweckj
- #131609 )  - Mark acaia as platinum quality (@zweckj
- #131723 )  - Record current IQS scale for Tailwind (@frenck
- #133158 )  - Add MFA login flow support for cloud component (@klejejs
- #132497 )  - Record current IQS state for SABnzbd (@jpbede
- #131656 )  - Add quality scale for Fronius (@farmio
- #131770 )  - Adapt hassio backup agent to supervisor changes (@emontnemery
- #133428 )  - Fix two occurrences of “HomeAssistant” adding the missing space (@NoRi2909
- #133435 )  - Don’t raise when removing non-existing cloud backup (@emontnemery
- #133429 )  - Remove three duplicated space characters in strings.json (@NoRi2909
- #133436 )  - Add transmission download path to events + add_torrent service (@DrBlokmeister
- #121371 )  - Support units and filters in async_get_travel_times_service for waze_travel_time (@eifinger
- #130776 )  - Simplify modern_forms config flow (part 2) (@epenet
- #130494 )  - Distinct sources per zone in Onkyo (@arturpragacz
- #130547 )  - Clean up backups after manual backup (@emontnemery
- #133434 )  - Don’t run recorder data migration on new databases (@emontnemery
- #133412 )  - Improve empty state handling for SomfyThermostat in Overkiz (@iMicknl
- #131700 )  - Add optional category in OptionsFlow to holiday (@gjohansson-ST
- #129514 )  - Add missing CozyTouch servers to ConfigFlow expection handler in Overkiz (@iMicknl
- #131696 )  - Limit unique_id migration to platform for BMW (@rikroe
- #131582 )  - Remove unused constants from SABnzbd (@jpbede
- #133445 )  - Allow only single instance of energyzero integration (@klaasnicolaas
- #133443 )  - Use entity services in bluesound integration (@LouisChrist
- #129266 )  - Differentiate File integration entries by prefixing the title with the platform instead (@benjamin-dcs
- #131016 )  - Mark docs-removal-instructions for SABnzbd as done (@jpbede
- #133446 )  - Allow only single instance of easyenergy integration (@klaasnicolaas
- #133447 )  - Do not remove services when last config entry is unloaded in SABnzbd (@jpbede
- #133449 )  - Fix reconfigure in Nord Pool (@gjohansson-ST
- #133431 )  - Add Get price service to Nord Pool (@gjohansson-ST
- #130185 )  - Add integration_type to Idasen Desk (@abmantis
- #132486 )  - Bump actions/upload-artifact from 4.4.3 to 4.5.0 (@dependabot - #133461
)  - Add sensors to Ituran integration (@shmuelzon
- #133359 )  - Add reconfigure flow to Russound RIO (@noahhusby
- #133091 )  - Add support for ACB batteries to Enphase Envoy (@catsmanac
- #131298 )  - Improve test coverage for Russound RIO (@noahhusby
- #133096 )  - Lift SABnzbd to bronze quality scale (@jpbede
- #133453 )  - Use a common base entity for Idasen Desk (@abmantis
- #132496 )  - Add ssdp discovery to Onkyo (@eclair4151
- #131066 )  - Fix test-before-setup IQS check (@epenet
- #133467 )  - Handle Home Connect error at diagnostics (@Diegorro98
- #131644 )  - Bump pypalazzetti to 0.1.15 (@dotvav
- #133433 )  - Add name to cloud connection info response (@ludeeus
- #133468 )  - Use enum instead of string for button entities key in Overkiz (@iMicknl
- #133472 )  - Add identify device class in Overkiz (@iMicknl
- #133474 )  - Set the with_strategy_settings to None for unknown backups (@emontnemery
- #133466 )  - Change device class from Volume to Volume Storage in Overkiz (@iMicknl
- #133473 )  - Add test button for SmokeSensor in Overkiz (@iMicknl
- #133476 )  - Add support for SwitchBot Relay Switch 1 and Relay Switch 1PM (@greyeee
- #132327 )  - Rename test file to singular form (@joostlek
- #133482 )  - Revert “Add support for subentries to config entries” (@emontnemery
- #133470 )  - Remove uneeded logger param from Idasen Desk Coordinator (@abmantis
- #133485 )  - Allow data description in sections (@basbruss
- #128965 )  - Deprecate Home Connect program switches (@Diegorro98
- #131641 )  - Add device_id parameter to LCN actions (service calls) (@alengwenus
- #129590 )  - Add entity translations to devolo Home Control (@Shutgun
- #132927 )  - Complete adding custom integration action sections support to hassfest (@mj23000
- #132443 )  - Add sensors platform to Watergate integration (@adam-the-hero
- #133015 )  - Add ability to translate ENUM sensor states in Unifi integration (@bieniu
- #131921 )  - Change log level of connection failure to info (@philipdouglas
- #132625 )  - Add diagnostics to slide_local (@dontinelli
- #133488 )  - Add (de)humidifier platform to Honeywell (@mkmer
- #132287 )  - Add exceptions and translations for slide_local (@dontinelli
- #133490 )  - Update quality scale for Russound RIO (@noahhusby
- #133093 )  - Rename strategy backup to automatic backup (@emontnemery
- #133489 )  - Increase Squeezebox config_flow test coverage to 100% (@peteS-UK
- #133484 )  - add exception translation to enphase_envoy (@catsmanac
- #132483 )  - Store automatic backup flag in backup metadata (@emontnemery
- #133500 )  - Add Peblar Rocksolid EV Chargers integration (@frenck
- #133501 )  - weatherkit: use stale data for up to an hour if updates fail (@tjhorner
- #130398 )  - Add select platform to IronOS (@tr4nt0r
- #132218 )  - Add tests for already_configured erros in IronOS integration (@tr4nt0r
- #132265 )  - Update number platform values before add in APSystems and add tests (@Thomas55555
- #131938 )  - Add “cancel room setpoint override” button to opentherm_gw (@mvn23
- #132162 )  - Use Switcher _async_call_api in climate (@thecode
- #133230 )  - Fix the local_file.update_file_path action’s name and description (@NoRi2909
- #133509 )  - Reolink translate errors (@starkillerOG
- #132301 )  - Add tests for cover and increase test coverage for slide_local (@dontinelli
- #133515 )  - Ensure indices needed by data migrators exist (@emontnemery
- #133367 )  - Bump PyViCare to 2.39.0 (@CFenner
- #133519 )  - Bump uiprotect to 7.1.0 (@RaHehl
- #133520 )  - Reolink platinum quality scale (@starkillerOG
- #133514 )  - Fix names and description of two actions (@NoRi2909
- #133528 )  - Bump idasen-ha to 2.6.3 (@abmantis
- #133508 )  - Improve field descriptions for Download file action (@NoRi2909
- #133413 )  - Add integration setup tests to Peblar Rocksolid EV Chargers (@frenck
- #133532 )  - Simplify Idasen Desk entity properties (@abmantis
- #133536 )  - Add zeroconf discovery to Peblar Rocksolid EV chargers (@frenck
- #133529 )  - Optimize start time state queries for PostgreSQL (@bdraco
- #133228 )  - Use mV and mA as units for electrical power measurement in Matter (@agners
- #133505 )  - Set default min/max color temperature in hue lights (@epenet
- #133548 )  - Revert “Update docker base image to 2024.12.1” (@frenck
- #133552 )  - Add comment motivating magic number for MySQL error codes (@emontnemery
- #133516 )  - Bump pydantic to 2.10.4 (@bdraco
- #133539 )  - Revert “Optimize start time state queries for PostgreSQL” (@bdraco
- #133555 )  - Fulfill IQS rule config-flow in ViCare integration (@CFenner
- #133524 )  - Create repair issues when automatic backup fails (@emontnemery
- #133513 )  - Update Home Assistant base image to 2024.12.0 (@frenck
- #133558 )  - Grammar fixes for action names and descriptions (@NoRi2909
- #133559 )  - Change ‘GSuite’ to ‘Workspace’, fix ‘Start’ field label (@NoRi2909
- #133554 )  - Bump codecov/codecov-action from 5.1.1 to 5.1.2 (@dependabot - #133547
)  - Replace start time state query with single correlated scalar subquery (@bdraco
- #133553 )  - Revert “Revert “Improve recorder history queries (#131702)”” (@emontnemery
- #133561 )  - Revert “Revert “Simplify recorder RecorderRunsManager (#131785)”” (@emontnemery
- #133564 )  - Add mW as unit of measurement for Matter electrical power sensors (@agners
- #133504 )  - Set Russound RIO quality scale to silver (@noahhusby
- #133494 )  - Bump pylamarzocco to 1.4.1 (@zweckj
- #133557 )  - Fix boot loop after restoring backup (@emontnemery
- #133581 )  - Improve Google Tasks coordinator updates behavior (@allenporter
- #133316 )  - Update Airgradient quality scale (@joostlek
- #133569 )  - Add data descriptions to Mealie integration (@andrew-codechimp
- #133590 )  - Set default min/max color temperature in template lights (@epenet
- #133549 )  - Add basic UniFi Protect AiPort support (@RaHehl
- #133523 )  - Improve Airgradient config flow tests (@joostlek
- #133594 )  - Bump yalexs-ble to 2.5.6 (@bdraco
- #133593 )  - Update Idasen Desk user flow step strings (@abmantis
- #133605 )  - Fix Watergate Water meter volume sensor (@adam-the-hero
- #133606 )  - Mark 
docs-installation-parametersfor SABnzbd as done (@jpbede- #133609 )  - Bump PyViCare to 2.39.1 (@CFenner
- #133619 )  - Remove lower bound for history start time state query (@bdraco
- #133607 )  - Fixes and code cleanup for IronOS integration (@tr4nt0r
- #133579 )  - Add min/max price sensor to Nord Pool (@gjohansson-ST
- #133534 )  - Add async_register_backup_agents_listener to cloud/backup (@ludeeus
- #133584 )  - Define setpoints as constants in flexit_bacnet (@lellky
- #133580 )  - Switch to official Zabbix Python API (@kruton
- #131674 )  - Bump aiohasupervisor to version 0.2.2b3 (@emontnemery
- #133631 )  - Add scale support to lamarzocco (@zweckj
- #133335 )  - Upgrade QS from bronze to silver for slide_local (@dontinelli
- #133560 )  - Record Knocki quality scale (@joostlek
- #133582 )  - Record Mealie quality scale (@joostlek
- #133587 )  - Record NYT Games quality scale (@joostlek
- #133592 )  - Add Swiss Public Transport quality scale record (@miaucl
- #131629 )  - Fix homeassistant_included flag for local backups (@emontnemery
- #133640 )  - Fix reading extra metadata for local backups (@emontnemery
- #133643 )  - Record Analytics Insights quality scale (@joostlek
- #133571 )  - Reject duplicates in WS command backup/config/update (@emontnemery
- #133650 )  - Fix inconsistent spelling of “PIN” vs. “pin” (@NoRi2909
- #133656 )  - Fix inconsistent spelling of “PIN” vs. “pin” (@NoRi2909
- #133655 )  - Add Mealie to strict typing (@joostlek
- #133644 )  - Fix inconsistent spelling of “PIN” and “ID” (@NoRi2909
- #133653 )  - Fix logic in backup retention filter (@emontnemery
- #133654 )  - Bump aiohasupervisor to version 0.2.2b4 (@emontnemery
- #133652 )  - Add outlet device class to iotty switch entity (@shapournemati-iotty
- #132912 )  - Validate password before restoring backup (@emontnemery
- #133647 )  - Fix target temperature for AtlanticElectricalTowelDryer in Overkiz (@iMicknl
- #133657 )  - Add translations to Mealie exceptions (@joostlek
- #133648 )  - Bump pypck to 0.8.1 (@alengwenus
- #133646 )  - Add missing await in Minecraft Server (@elmurato
- #133670 )  - Add check for client errors to stream component (@sdb9696
- #132866 )  - Replace tests for Idasen Desk with parameterized test (@abmantis
- #133672 )  - Improve recorder data migrator tests (@emontnemery
- #133628 )  - Reword invoke_pin action to avoid misunderstanding with “PIN” (@NoRi2909
- #133665 )  - Add parallel updates to Mealie (@joostlek
- #133660 )  - Bump intents to 2024.12.20 (@synesthesiam
- #133676 )  - Allow Filter title to be translated (@gjohansson-ST
- #128929 )  - Update Roborock to 2.8.4 (@Lash-L
- #133680 )  - Fix Mealie test coverage (@joostlek
- #133659 )  - Bump PySwitchbot to 0.55.2 (@bdraco
- #133690 )  - Add initial support for SwitchBot relay switch (@greyeee
- #130863 )  - Add entity translation strings for ScreenLogic (@dieselrabbit
- #130708 )  - Bump Ohme library version to 1.2.0 (@dan-r
- #133666 )  - iaqualink: fix load_verify_locations() blocking call (@flz
- #133459 )  - Use common mock fixture in Idasen Desk config flow tests (@abmantis
- #133679 )  - Adjust the default backup name (@emontnemery
- #133668 )  - Improve HEOS group handling (@andrewsayre
- #132213 )  - Simplify query to find oldest state (@bdraco
- #133700 )  - Improve purge performance for PostgreSQL with large databases (@bdraco
- #133699 )  - Update the Google Tasks quality scale with documentation improvements (@allenporter
- #133701 )  - Add update platform to Peblar Rocksolid EV Chargers integration (@frenck
- #133570 )  - Fix inconsistent use of “pin” vs. “PIN” (@NoRi2909
- #133685 )  - Replace lowercase “pin” in error message with the correct “PIN” (@NoRi2909
- #133684 )  - Change “pin” to “PIN” for consistency with common string (@NoRi2909
- #133682 )  - Change “pin” to correct “PIN” for consistent translations (@NoRi2909
- #133681 )  - Handle WebsocketConnectionError during mqtt auto reconnect (@bdraco
- #133697 )  - Improve BMW config flow (@rikroe
- #133705 )  - Allow lamarzocco to reconnect websocket (@zweckj
- #133635 )  - Enable AEMET data cache (@Noltari
- #131226 )  - Add diagnostic to Peblar Rocksolid EV Chargers integration (@frenck
- #133706 )  - Use MAC address in Twinkly 
DeviceInfo.connections(@bieniu- #133708 )  - Add sensors tests for Peblar Rocksolid EV Chargers (@frenck
- #133710 )  - Adjust freezer tick in settings tests of IronOS integration (@tr4nt0r
- #133707 )  - Fix section translations check (@arturpragacz
- #133683 )  - Store Twinkly runtime data in config entry (@bieniu
- #133714 )  - Add updates tests for Peblar Rocksolid EV Chargers (@frenck
- #133712 )  - Test color_temp updates are processed when an mqtt json light is turned off (@jbouwh
- #133715 )  - Fix test coverage in workday (@gjohansson-ST
- #133616 )  - Add device test for Peblar Rocksolid EV Chargers (@frenck
- #133713 )  - Use super constructor self.config_entry in enphase_envoy coordinator (@catsmanac
- #133718 )  - Use mac address in Twinkly for unique id (@joostlek
- #133717 )  - Fix spelling of “Gateway PIN” and remove two excessive spaces (@NoRi2909
- #133716 )  - Add select platform to Peblar Rocksolid EV Chargers integration (@frenck
- #133720 )  - KNX: Option to select specific tunnel endpoint on TCP connections (@farmio
- #131996 )  - Update aiohasupervisor to 0.2.2b5 (@frenck
- #133722 )  - Add power and energy related sensors to Peblar Rocksolid EV Chargers (@frenck
- #133729 )  - Update AEMET-OpenData to v0.6.4 (@Noltari
- #133723 )  - Add missing asserts to enphase_envoy config flow test (@catsmanac
- #133730 )  - Reuse title of deleted enphase_envoy config entry if present (@catsmanac
- #133611 )  - Replace two outdated occurrences of “service” with “action” (@NoRi2909
- #133728 )  - Replace “service” with “action” in Z-Wave action descriptions (@NoRi2909
- #133727 )  - Add reconfiguration flow to Plugwise (@CoMPaTech
- #132878 )  - Bump tplink python-kasa dependency to 0.9.0 (@sdb9696
- #133735 )  - Change niko_home_control library to nhc to get push updates (@VandeurenGlenn
- #132750 )  - Add DHCP discovery to Withings (@joostlek
- #133737 )  - Add number platform to Peblar Rocksolid EV Chargers integration (@frenck
- #133739 )  - Add switch platform to Peblar Rocksolid EV Chargers integration (@frenck
- #133749 )  - Update peblar to v0.3.0 (@frenck
- #133751 )  - Fix Peblar current limit user setting value (@frenck
- #133753 )  - Add binary sensor platform to Peblar Rocksolid EV Chargers integration (@frenck
- #133755 )  - Add more sensors to Peblar Rocksolid EV Chargers integration (@frenck
- #133754 )  - Add reauthentication support to Peblar Rocksolid EV Chargers integration (@frenck
- #133757 )  - Replace queries using distinct with correlated scalar subqueries to significantly improve purge performance (@bdraco
- #133748 )  - Reduce complexity to find unused data_ids and attributes_ids for db engines with slow range select (@bdraco
- #133752 )  - TotalConnect use entry.runtime_data (@austinmroczek
- #133756 )  - Bump pyOverkiz to 1.15.4 (@iMicknl
- #133769 )  - Add additional Hitachi sensors to Overkiz (@iMicknl
- #133772 )  - Update integration quality scale for Peblar Rocksolid EV Chargers (@frenck
- #133764 )  - Merge similar tests to parameterized tests for enphase_envoy (@catsmanac
- #133740 )  - Migrate to runtime data in Overkiz (@iMicknl
- #133760 )  - Add support for HitachiAirToWaterHeatingZone in Overkiz (@iMicknl
- #133768 )  - Use new UnitOfEnergy constants in Overkiz (@iMicknl
- #133778 )  - Fix binary_sensor typing in Overkiz (@iMicknl
- #133782 )  - Add button platform to Peblar Rocksolid EV Chargers integration (@frenck
- #133780 )  - Refactor Twinkly tests (@joostlek
- #133725 )  - Update quality-scale status for enphase_envoy config_flow missing data descriptions (@catsmanac
- #133726 )  - Set parallel updates for Peblar Rocksolid EV Chargers integration (@frenck
- #133786 )  - Fix errors in HitachiDHW in Overkiz (@iMicknl
- #133765 )  - Add base entity for Niko Home Control (@joostlek
- #133744 )  - Remove myself from govee_ble codeowners (@PierreAronnax
- #133790 )  - Add base entity to Peblar Rocksolid EV Chargers integration (@frenck
- #133794 )  - Add reconfigure flow to Peblar Rocksolid EV Chargers integration (@frenck
- #133785 )  - Add button error handling for Peblar Rocksolid EV Chargers (@frenck
- #133802 )  - Use feature checks in tplink integration (@sdb9696
- #133795 )  - Add config flow stream preview to generic camera (@davet2001
- #122563 )  - Bump Weheat to 2024.12.22 (@jesperraemaekers
- #133796 )  - Bump PySwitchbot to 0.55.3 (@bdraco
- #133812 )  - Bump async-upnp-client to 0.42.0 (@StevenLooman
- #133806 )  - Add Compressor, Inside Unit and Energy Output fields to Weheat (@barryvdh
- #129632 )  - Show device name in Twinkly discovery (@joostlek
- #133814 )  - Add binary states for Weheat indoor unit (@barryvdh
- #133811 )  - Add select error handling for Peblar Rocksolid EV Chargers (@frenck
- #133804 )  - Fix typo in ElevenLabs (@sorgfresser
- #133819 )  - Remove unneeded type for enphase_envoy coordinator in async_unload_entry (@catsmanac
- #133817 )  - Add switch error handling for Peblar Rocksolid EV Chargers (@frenck
- #133805 )  - Add number error handling for Peblar Rocksolid EV Chargers (@frenck
- #133803 )  - Add get_user_keyring_info service to UniFi Protect integration (@RaHehl
- #133138 )  - Remove unused fixture from LCN tests (@alengwenus
- #133821 )  - Bump flux_led to 1.1.0 (@bdraco
- #133818 )  - Add camera platform to tplink integration (@sdb9696
- #129180 )  - Add reconfigure flow to slide_local (@dontinelli
- #133669 )  - Add already exists config flow tests for Ecovacs (@edenhaus
- #133572 )  - Add media browsing to Cambridge Audio (@noahhusby
- #129106 )  - Load data for multiple days in Nord Pool (@gjohansson-ST
- #133371 )  - Unifiprotect Add user information retrieval for NFC and fingerprint events (@RaHehl
- #132604 )  - Add pan/tilt features to tplink integration (@sdb9696
- #133829 )  - Bump pylamarzocco to 1.4.2 (@zweckj
- #133826 )  - Add Switchbot Water Leak Detector (BLE) (@luc-ass
- #133799 )  - Add light tests for Niko Home Control (@joostlek
- #133750 )  - Bump pyOverkiz to 1.15.5 (@iMicknl
- #133835 )  - Make To-do action names and descriptions consistent with HA standard (@NoRi2909
- #133734 )  - Reload on connection lost for LCN integration (@alengwenus
- #133638 )  - Suez_water: fix yesterday sensor extra_state invalid typing (@jb101010-2
- #133425 )  - Add data descriptions to Config Flow in Overkiz (@iMicknl
- #133758 )  - Add detection switches to tplink integration (@sdb9696
- #133828 )  - Unifiprotect: add error message if the get_user_keyring_info permissions are not sufficient (@RaHehl
- #133841 )  - Bump protobuf to 5.29.2 (@bdraco
- #133839 )  - Bump anyio to 4.7.0 (@bdraco
- #133842 )  - Fulfill IQS rule runtime-data in ViCare integration (@CFenner
- #133633 )  - Add backup the list of integrations platforms to preload (@bdraco
- #133856 )  - Add backup to the list of storage preloads (@bdraco
- #133855 )  - Bump ZHA to 0.0.43 (@TheJulianJES
- #133854 )  - Ensure late import in backup of hassio.backup does not block the event loop (@bdraco
- #133857 )  - Fix TypeError in maxcube climate action inference logic (@mweinelt
- #133853 )  - Ignore devices (bravias) with ‘video’ service_type for songpal discovery (@rytilahti
- #133724 )  - Bump github/codeql-action from 3.27.9 to 3.28.0 (@dependabot - #133862
)  - Ensure icalendar==6.1.0 is installed for caldav integration (@jon6fingrs
- #133541 )  - Bump PySwitchbot to 0.55.4 (@bdraco
- #133861 )  - Add translated enum entity for Fronius error code (@farmio
- #133394 )  - Adding initial support for Tuya Electric Fireplaces (@mrtlhfr
- #133503 )  - Upgrade QS from silver to gold for slide_local (@dontinelli
- #133863 )  - Add Leak detect entity for YoLink water meter controller (@matrixd2
- #131682 )  - Use user defined charge limit for charge limit range in Peblar (@DCSBL
- #133868 )  - Add actions with response values to Music Assistant (@marcelveldt
- #133521 )  - Add coordinator error handling for Peblar Rocksolid EV Chargers (@frenck
- #133809 )  - Mark Peblar Rocksolid EV Chargers Platinum (@frenck
- #133823 )  - Add compatibility code for deprecated WaterHeaterEntityEntityDescription (@epenet
- #133351 )  - Add coordinator to Twinkly (@joostlek
- #133793 )  - Respect ESPHome ClimateTrait supports_current_temperature (@Omniflux
- #132149 )  - Bump deebot-client to 10.0.1 (@edenhaus
- #133634 )  - ElevenLabs invalid api key config flow testing (@sorgfresser
- #133822 )  - Fix tplink camera entity unique id (@sdb9696
- #133880 )  - Improve firmware update required issue (@starkillerOG
- #133878 )  - Add cover to the niko_home_control integration (@VandeurenGlenn
- #133801 )  - Add AEMET Weather Radar images (@Noltari
- #131386 )  - Add Ecovacs station entities (@edenhaus
- #133876 )  - Set Fronius integration quality scale to gold (@farmio
- #133884 )  - Update frontend to 20241223.1 (@bramkragten
- #133886 )  - Make tplink entities unavailable if camera is off (@sdb9696
- #133877 )  - Use SD stream for tplink mpeg stream (@sdb9696
- #133879 )  - Streamline Peblar translations (@DCSBL
- #133883 )  - Preload supported color properties in fritzbox lights (@mib1185
- #133798 )  - Catch ClientConnectorError and TimeOutError in APSystems (@Thomas55555
- #132027 )  - Fix a history stats bug when window and tracked state change simultaneously (@karwosts
- #133770 )  - Add Harvey virtual integration (@Jordi1990
- #133874 )  - Map RGB+CCT to RGB for WLED (@mmrazik
- #133900 )  - Sort integration platforms preload list (@bdraco
- #133905 )  - Ensure cloud and recorder backup platforms do not have to wait for the import executor (@bdraco
- #133907 )  - Fix duplicate call to async_register_preload_platform (@bdraco
- #133909 )  - Add cronsim to default dependencies (@abmantis
- #133913 )  - Slow down polling in Teslemetry (@Bre77
- #133924 )  - Fix missing % in string for generic camera (@davet2001
- #133925 )  - Fix Peblar import in data coordinator (@frenck
- #133926 )  - Stop using shared aiohttp client session for Subaru integration (@G-Two
- #133931 )  - Fix reload modbus component issue (@crug80
- #133820 )  - Hive: Fix error when device goes offline (@KJonline
- #133848 )  - fix “Slow” response leads to “Could not find a charging station” #124129 (@dannerph
- #133889 )  - Update apprise to v1.9.1 (@frenck
- #133936 )  - Use SignedSession in Xbox (@joostlek
- #133938 )  - Update Jinja2 to 3.1.5 (@cdce8p
- #133951 )  - Update frontend to 20241224.0 (@bramkragten
- #133963 )  - Fix swiss public transport line field none (@miaucl
- #133964 )  - Ensure all states have been migrated to use timestamps (@bdraco
- #134007 )  - Bump pylamarzocco to 1.4.3 (@zweckj
- #134008 )  - Improve Google Tasks error messages (@allenporter
- #134023 )  - Fix Nord Pool empty response (@gjohansson-ST
- #134033 )  - Cleanup devices in Nord Pool from reconfiguration (@gjohansson-ST
- #134043 )  - Bump aiorussound to 4.1.1 (@noahhusby
- #134058 )  - Change SimpliSafe websocket reconnection log to 
DEBUG-level (@bachya- #134063 )  - Remove timeout from Russound RIO initialization (@noahhusby
- #134070 )  - Fix KNX config flow translations and add data descriptions (@farmio
- #134078 )  - Make google tasks recoverable (@joostlek
- #134092 )  - Make elevenlabs recoverable (@joostlek
- #134094 )  - Bump python-homeassistant-analytics to 0.8.1 (@joostlek
- #134101 )  - Bump 
pytileto 2024.12.0 (@bachya- #134103 )  - Bump yt-dlp to 2024.12.23 (@joostlek
- #134131 )  - Add missing device classes in scrape (@gjohansson-ST
- #134141 )  - Update knx-frontend to 2024.12.26.233449 (@farmio
- #134184 )  - Make PEGELONLINE recoverable (@mib1185
- #134199 )  - Make feedreader recoverable (@mib1185
- #134202 )  - Fix Wake on LAN Port input as Box instead of Slider (@luc-ass
- #134216 )  - Bump VoIP utils to 0.2.2 (@synesthesiam
- #134219 )  - Bump frontend to 20241229.0 (@balloob
- #134225 )  - Bump pyvlx to 0.2.26 (@pawlizio
- #115483 )  - Make triggers and condition for monetary sensor consistent (@NoRi2909
- #131184 )  - Quickly process unavailable metrics in Prometheus (@agoode
- #133219 )  - Bump elmax-api (@albertogeniola
- #133845 )  - Fix duplicate sensor disk entities in Systemmonitor (@gjohansson-ST
- #134139 )  - Fix Onkyo volume rounding (@arturpragacz
- #134157 )  - Bump opower to 0.8.7 (@tronikos
- #134228 )  - Bump aiopegelonline to 0.1.1 (@mib1185
- #134230 )  - Avoid KeyError for ignored entries in async_step_zeroconf of Android TV Remote (@tronikos
- #134250 )  - Fix 400 This voice does not support speaking rate or pitch parameters at this time for Google Cloud Journey voices (@tronikos
- #134255 )  - Bump pylamarzocco to 1.4.5 (@zweckj
- #134259 )  - ollama: update to 0.4.5 (@FliegendeWurst
- #134265 )  - Remove excessive period at end of action name (@NoRi2909
- #134272 )  - Bump aiomealie to 0.9.5 (@andrew-codechimp
- #134274 )  - Update frontend to 20241230.0 (@bramkragten
- #134284 )  - Improve Mealie set mealplan service (@joostlek
- #130606 )  - Update Flick Electric API (@ZephireNZ
- #133475 )  - Add stream preview to options flow in generic camera (@davet2001
- #133927 )  - Bump aiocomelit to 0.10.1 (@chemelli74
- #134214 )  - Handle missing application credentials in Tesla Fleet (@Bre77
- #134237 )  - Allow automations to pass any conversation_id for Google Generative AI (@tronikos
- #134251 )  - Set backup manager state to completed when restore is finished (@bramkragten
- #134283 )  - Bump reolink-aio to 0.11.6 (@starkillerOG
- #134286 )  - Bump pysynthru version to 0.8.0 (@nielstron
- #134294 )  - Bump aioshelly to 12.2.0 (@chemelli74
- #134352 )  - Bump hassil to 2.1.0 (@synesthesiam
- #134359 )  - Revert speech seconds to 0.3 (@synesthesiam
- #134360 )  - Update frontend to 20241231.0 (@bramkragten
- #134363 )  - Bump pylamarzocco to 1.4.6 (@zweckj
- #134367 )  - Improve is docker env checks (@candrews
- #132404 )  - Handle backup errors more consistently (@MartinHjelmare
- #133522 )  - Improve support for Aprilaire S86WMUPR (@chamberlain2007
- #133974 )  - Add new ID LAP-V201S-AEUR for Vital200S AirPurifier in Vesync integration (@by-cx
- #133999 )  - Vesync unload error when not all platforms used (@cdnninja
- #134166 )  - Improve Supervisor backup error handling (@agners
- #134346 )  - Bump zabbix-utils to 2.0.2 (@kruton
- #134373 )  - Check vehicle metadata (@Bre77
- #134381 )  - Add state attributes translations to GIOS (@krzysdabro
- #134390 )  - Fix SQL sensor name (@gjohansson-ST
- #134414 )  - Bump intents to 2025.1.1 (@synesthesiam
- #134424 )  - Bump ZHA to 0.0.44 (@TheJulianJES
- #134427 )  - Improve hassio backup create and restore parameter checks (@emontnemery
- #134434 )  - Export IncorrectPasswordError from backup integration (@emontnemery
- #134436 )  - Adjust language in backup integration (@emontnemery
- #134440 )  - Initialize AppleTVConfigFlow.identifiers (@emontnemery
- #134443 )  - Bump aioacaia to 0.1.12 (@zweckj
- #134454 )  - Update frontend to 20250102.0 (@bramkragten
- #134462 )  - open_meteo: correct UTC timezone handling in hourly forecast (@aagit
- #129664 )  - Include host in Peblar EV-Charger discovery setup description (@DCSBL
- #133954 )  - Don’t start recorder if a database from the future is used (@emontnemery
- #134467 )  - Bump deebot-client to 10.1.0 (@edenhaus
- #134470 )  - Fix a few small typos in peblar (@NoRi2909
- #134481 )  - Update peblar to 0.3.1 (@frenck
- #134486 )  - Fix input_datetime.set_datetime not accepting 0 timestamp value (@frenck
- #134489 )  - Bump aioacaia to 0.1.13 (@zweckj
- #134496 )  - Fix backup dir not existing (@balloob
- #134506 )  - Add error prints for recorder fatal errors (@emontnemery
- #134517 )  - Improve recorder schema migration error test (@emontnemery
- #134518 )  - Handle deCONZ color temp 0 is never used when calculating kelvin CT (@Kane610
- #134521 )  - Fix activating backup retention config on startup (@emontnemery
- #134523 )  - Update peblar to v0.3.2 (@frenck
- #134524 )  - Only load Peblar customization update entity when present (@frenck
- #134526 )  - Add Reolink proxy for playback (@starkillerOG
- #133916 )  - Simplify error handling when creating backup (@emontnemery
- #134528 )  - Add backup as after_dependency of frontend (@emontnemery
- #134534 )  - Set Ituran to silver (@joostlek
- #134538 )  - Avoid early COMPLETED event when restoring backup (@emontnemery
- #134546 )  - Log cloud backup agent file list (@emontnemery
- #134556 )  - Update frontend to 20250103.0 (@bramkragten
- #134561 )  - Cherry pick single file from #134020 to fix generic component tests (@edenhaus
- #134569 )  - Bump whirlpool-sixth-sense to 0.18.11 (@abmantis
- #134562 )  
Release 2025.1.1 - January 7
- Matter Battery replacement icon (@lboue
- #134460 )  - Small fix to allow playing of expandable favorites on Squeezebox (@peteS-UK
- #134572 )  - Bump bleak-esphome to 2.0.0 (@bdraco
- #134580 )  - Bump uiprotect to version 7.2.0 (@RaHehl
- #134587 )  - Mention case-sensitivity in tplink credentials prompt (@rytilahti
- #134606 )  - Fix Flick Electric authentication (@ZephireNZ
- #134611 )  - Fix hive color tunable light (@epenet
- #134628 )  - Set logging in manifest for Cookidoo (@miaucl
- #134645 )  - Remove call to remove slide (@joostlek
- #134647 )  - Update twentemilieu to 2.2.1 (@frenck
- #134651 )  - Fix Reolink playback of recodings (@starkillerOG
- #134652 )  - Update peblar to 0.3.3 (@frenck
- #134658 )  - Bump cookidoo-api library to 0.11.1 of for Cookidoo (@miaucl
- #134661 )  - Update demetriek to 1.1.1 (@frenck
- #134663 )  - Cookidoo exotic domains (@miaucl
- #134676 )  - Iterate over a copy of the list of programs at Home Connect select setup entry (@Diegorro98
- #134684 )  - Change from host to ip in zeroconf discovery for slide_local (@dontinelli
- #134709 )  - Bump ZHA to 0.0.45 (@TheJulianJES
- #134726 )  - Bump openwebifpy to 4.3.1 (@autinerd
- #134746 )  - Fix swapped letter order in “°F” and “°C” temperature units (@NoRi2909
- #134750 )  - Bumb python-homewizard-energy to 7.0.1 (@DCSBL
- #134753 )  - Register base device entry during coordinator setup in AVM Fritz!Tools integration (@mib1185
- #134764 )  - Bump pysuezV2 to 2.0.1 (@jb101010-2
- #134769 )  - Fix missing sentence-casing etc. in several strings (@NoRi2909
- #134775 )  - Raise ImportError in python_script (@gjohansson-ST
- #134792 )  - Replace “id” with “ID” for consistency across HA (@NoRi2909
- #134798 )  - Fix a few typos or grammar issues in asus_wrt (@NoRi2909
- #134813 )  - Bump uiprotect to version 7.4.1 (@RaHehl
- #134829 )  - Bump habluetooth to 3.7.0 (@bdraco
- #134833 )  - Fix how function arguments are passed on actions at Home Connect (@Diegorro98
- #134845 )  - Bump aiolifx-themes to update colors (@Djelibeybi
- #134846 )  - Update Roborock config flow message when an account is already configured (@allenporter
- #134854 )  - Log upload BackupAgentError (@ludeeus
- #134865 )  - Log cloud backup upload response status (@ludeeus
- #134871 )  - Bump solax to 3.2.3 (@squishykid
- #134876 )  - Add extra failure exceptions during roborock setup (@Lash-L
- #134889 )  - Use uppercase for “ID” and sentence-case for “name” / “icon” (@NoRi2909
- #134890 )  - Bump python-kasa to 0.9.1 (@sdb9696
- #134893 )  - Add 
bring_apito loggers in Bring integration (@tr4nt0r- #134897 )  - Fix wrong power limit decimal place in IronOS (@tr4nt0r
- #134902 )  - Update frontend to 20250106.0 (@bramkragten
- #134905 )  - Bump powerfox to v1.1.0 (@klaasnicolaas
- #134730 )  - Bump powerfox to v1.2.0 (@klaasnicolaas
- #134908 )  - Bump holidays to 0.64 (@gjohansson-ST
- #134922 )  - Revert “Remove deprecated supported features warning in LightEntity” (@arturpragacz
- #134927 )  - Revert “Remove deprecated supported features warning in …” (multiple) (@frenck
- #134933 )  
Release 2025.1.2 - January 9
- Fix Météo-France setup in non French cities (because of failed next rain sensor) (@Quentame
- #134782 )  - Increase cloud backup download timeout (@ludeeus
- #134961 )  - Fix ZHA “referencing a non existing 
via_device” warning (@puddly- #135008 )  - Catch errors in automation (instead of raise unexpected error) in Overkiz (@iMicknl
- #135026 )  - Fix channel retrieval for Reolink DUO V1 connected to a NVR (@starkillerOG
- #135035 )  - Bump aioautomower to 2025.1.0 (@Thomas55555
- #135039 )  - Bump cookidoo-api to 0.12.2 (@miaucl
- #135045 )  - Implement upload retry logic in CloudBackupAgent (@ludeeus
- #135062 )  - Add jitter to backup start time to avoid thundering herd (@emontnemery
- #135065 )  - Bump pysuezV2 to 2.0.3 (@jb101010-2
- #135080 )  - Fix Flick Electric Pricing (@ZephireNZ
- #135154 )  - Update frontend to 20250109.0 (@bramkragten
- #135235 )  
Release 2025.1.3 - January 20
- Fix DiscoveryFlowHandler when discovery_function returns bool (@kgraefe
- #133563 )  - Aprilaire - Fix humidifier showing when it is not available (@chamberlain2007
- #133984 )  - Gracefully handle webhook unsubscription if error occurs while contacting Withings (@dcmeglio
- #134271 )  - Image entity key error when camera is ignored in EZVIZ (@RenierM26
- #134343 )  - Bump pyaussiebb to 0.1.5 (@Bre77
- #134943 )  - Fix Watergate Power supply mode description and MQTT/Wifi uptimes (@adam-the-hero
- #135085 )  - Fix missing comma in ollama MODEL_NAMES (@epenet
- #135262 )  - Bump Freebox to 1.2.2 (@Quentame
- #135313 )  - Actually use translated entity names in Lametric (@joostlek
- #135381 )  - Fix descriptions of send_message action of Bring! integration (@NoRi2909
- #135446 )  - Bump switchbot-api to 2.3.1 (@SeraphicRav
- #135451 )  - Fix incorrect cast in HitachiAirToWaterHeatingZone in Overkiz (@iMicknl
- #135468 )  - Replace pyhiveapi with pyhive-integration (@KJonline
- #135482 )  - Fix referenced objects in script sequences (@arturpragacz
- #135499 )  - Use STT/TTS languages for LLM fallback (@synesthesiam
- #135533 )  - Bump demetriek to 1.2.0 (@joostlek
- #135580 )  - Use device supplied ranges in LaMetric (@joostlek
- #135590 )  - Bump elkm1-lib to 2.2.11 (@gwww
- #135616 )  - Fix mqtt number state validation (@jbouwh
- #135621 )  - Add reauthentication to SmartThings (@joostlek
- #135673 )  - Handle invalid HS color values in HomeKit Bridge (@bdraco
- #135739 )  - Update aioairzone to v0.9.9 (@Noltari
- #135866 )  - Remove device_class from NFC and fingerprint event descriptions (@RaHehl
- #135867 )  - Prevent HomeKit from going unavailable when min/max is reversed (@bdraco
- #135892 )  - Bump onvif-zeep-async to 3.2.2 (@bdraco
- #135898 )  - Round brightness in Niko Home Control (@VandeurenGlenn
- #135920 )  - Update NHC lib to v0.3.4 (@VandeurenGlenn
- #135923 )  - Update knx-frontend to 2025.1.18.164225 (@farmio
- #135941 )  - Bump aiooui to 0.1.8 (@bdraco
- #135945 )  - Bump aiooui to 0.1.9 (@bdraco
- #135956 )  - Fix switchbot cloud library logger (@joostlek
- #135987 )  - Correct type for off delay in rfxtrx (@elupus
- #135994 )  - Handle invalid datetime in onvif (@bdraco
- #136014 )  - Bump aioraven to 0.7.1 (@cottsay
- #136017 )  - Bump onvif-zeep-async to 3.2.3 (@bdraco
- #136022 )  - Bump yt-dlp to 2025.01.15 (@joostlek
- #136072 )  - Bump deebot-client to 11.0.0 (@edenhaus
- #136073 )  - Always include SSL folder in backups (@emontnemery
- #136080 )  
Release 2025.1.4 - January 24
- Update Hydrawise maximum watering duration to meet the app limits (@mattdoran
- #136050 )  - Bump holidays to 0.65 (@gjohansson-ST
- #136122 )  - Handle width and height placeholders in the thumbnail URL (@Makrit
- #136227 )  - Fix slave id equal to 0 (@crug80
- #136263 )  - Handle LinkPlay devices with no mac (@silamon
- #136272 )  - Fallback to None for literal “Blank” serial number for APCUPSD integration (@yuxincs
- #136297 )  - Update peblar to v0.4.0 (@frenck
- #136329 )  - Avoid keyerror on incomplete api data in myuplink (@astrandb
- #136333 )  - Update frontend to 20250109.1 (@piitaya
- #136339 )  - Update frontend to 20250109.2 (@piitaya
- #136348 )  - Bump aiowithings to 3.1.5 (@joostlek
- #136350 )  - Bump powerfox to v1.2.1 (@klaasnicolaas
- #136366 )