Commit Graph

27060 Commits (freeze_timeout_installing_packages)

Author SHA1 Message Date
Allen Porter f864f71028
Remove nest event media files that are no longer referenced (#141295)
* Remove nest event media files that are no longer referenced

* Fix double glob
2025-03-24 21:08:54 -04:00
Allen Porter 204b1e1f24
Add a Google Calendar birthdays calendar (#141300) 2025-03-24 21:06:45 -04:00
Michael Hansen 33198cd704
Add preannounce_media_id to Assist Satellite (#141317)
Add preannounce_media_id
2025-03-24 17:04:13 -04:00
Andrew Scott 61a76b4064
Jellyfin: display album primary art instead of artist backdrop (#141246)
* Jellyfin: Properly display album primary art instead of artist backdrop when playing music

* add test for album art urls, fix existing tests that broke because they have extraneous "album*" fields for non-album items.

* fix snapshot test
2025-03-24 21:33:34 +01:00
SLaks c8f839068c
Bump google-genai to 1.7.0 (#140770)
Gemini: Upgrade google-genai to support generating images
2025-03-24 10:52:16 -07:00
Erik Montnemery 3132cba51f
Improve tests of backup exclusion (#141303) 2025-03-24 18:10:08 +01:00
Simone Chemelli 6661218220
Add device reconfigure to Vodafone Station config flow (#141221)
* Add device reconfigure to Vodafone Station config flow

* remove unreachable code

* apply review comment
2025-03-24 12:03:29 -05:00
Artur Pragacz 8904f174d2
Remove unused util module in conversation (#141293) 2025-03-24 17:27:27 +01:00
Michael Hansen 4472dc533d
Don't filter nevermind for fallback (#141294) 2025-03-24 17:26:35 +01:00
Maciej Bieniek 1166c9d927
Do not return `router` as `source_type` for Tractive `device_tracker` entity (#141188)
* Do not return router as source_type

* Add test

* Update stale docstring

---------

Co-authored-by: Andrew Sayre <6730289+andrewsayre@users.noreply.github.com>
2025-03-24 17:16:59 +01:00
Maciej Bieniek 95cc3e31f5
Add exceptions translations for Shelly integration (#141071)
* Add exceptions translations

* Improve exception strings for update platform

* Fix tests

* Improve device_communication_error

* Remove error placeholder

* Improve tests

* Fix test_rpc_set_state_errors

* Strings improvement

* Remove `device`

* Remove `entity`

* Fix tests
2025-03-24 17:16:29 +01:00
Thomas55555 c3bab1f316
Add downtime and uptime sensors for Husqvarna Automower (#140804)
* Add downtime and uptime sensors for Husqvarna Automower

* add strings
2025-03-24 11:08:39 -05:00
Denis Shulyaka cb9692f3fb
Raise error when max tokens reached for openai_conversation (#140214)
* Handle ResponseIncompleteEvent

* Updated error text

* Fix tests

* Update conversation.py

* ruff

* More tests

* Handle ResponseFailed and ResponseError

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2025-03-24 15:49:34 +01:00
Joost Lekkerkerker 90623bbaff
Deprecate fridge door sensor in SmartThings (#141275) 2025-03-24 15:49:10 +01:00
Joost Lekkerkerker 69a375776a
Add wrinkle prevent binary sensor active to SmartThings (#141289)
* Add wrinkle prevent binary sensor active to SmartThings

* Fix
2025-03-24 15:48:18 +01:00
Joost Lekkerkerker 06382f33e0
Add command to SmartThings button unique id (#141281)
* Add command to SmartThings button unique id

* Add command to SmartThings button unique id
2025-03-24 15:42:26 +01:00
Norbert Rittel b3e3d77d7c
Fix spelling of "Power factor" and capitalization in `enphase_envoy` (#141285)
* Fix spelling of "Power factor" and capitalization in `enphase_envoy`

* Update test_sensor.ambr
2025-03-24 15:38:59 +01:00
Jan Bouwhuis e192bfb62e
Do not deepcopy section schema when applying suggested values (#141280)
Do not deep copy section schema when appying suggested values
2025-03-24 15:32:57 +01:00
Erwin Douna 358f78c7cd
Tado migrate to OAuth Device Flow (#140761)
* Bump PyTado 0.19.0

* Initial setup

* Current state

* Update to PyTado 0.18.8

* First concept for review

* Fix

* Fix

* Fix

* First concept for review

* Bump PyTado to 0.18.9

* Remove redundant part

* Initial test setup

* Authentication exceptions

* Fix

* Fix

* Fix

* Update version to 2

* All migration code

* Small tuning

* Add reauth unique ID check

* Add reauth test

* 100% on config flow

* Making tests working on new device flow

* Fix

* Fix

* Fix

* Update homeassistant/components/tado/strings.json

* Update homeassistant/components/tado/strings.json

---------

Co-authored-by: Joostlek <joostlek@outlook.com>
Co-authored-by: Josef Zweck <josef@zweck.dev>
2025-03-24 14:28:12 +01:00
Michael e96e95c32d
Add sensor platform to backup integration (#138663)
* add sensor platform to backup integration

* adjust namings, remove system integration flag

* add first simple test

* apply review comments

* fix test

* add sensor tests

* adjustements to use backup helper

* remove obsolet async_get_manager from init

* unsubscribe from events on entry unload

* add configuration_url

* fix doc string

* fix sensor tests

* mark async_unsubscribe as callback

* set integration_type service

* extend sensor test

* set integration_type on correct integration :)

* fix after online conflict resolution

* add sensor update tests

* simplify the sensor update tests

* avoid io during tests

* Add comment

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-03-24 12:54:16 +01:00
Joost Lekkerkerker 265a2ace90
Add Bubble soak switch to SmartThings (#141139)
* Add Bubble soak switch to SmartThings

* Fix
2025-03-24 12:43:53 +01:00
karwosts 1ae2cebeb1
Support for hierarchy of individual energy devices (#132616)
* Support for hierarchy of individual energy devices

* update DeviceConsumption dict

* change name parent to 'included_in'

* Break comment

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-03-24 12:37:55 +01:00
Martin Hjelmare 75cd32b742
Fix backup tests typing warnings (#141274) 2025-03-24 12:36:57 +01:00
Martin Hjelmare 86ff540db9
Patch Z-Wave platforms in custom event tests (#141268)
Patch Z-Wave platforms in custom events tests
2025-03-24 12:19:29 +01:00
Jan Bouwhuis 0f60fd8c40
Test data entry flow form showing suggested values (#141249)
Add test with from showing suggested values to data entry flow tests
2025-03-24 10:36:02 +01:00
Erik Montnemery ab9d29bf9d
Remove reauth persistent notification (#140932)
* Remove persistent notification created when starting reauth

* Update netatmo tests
2025-03-24 09:29:14 +01:00
Joost Lekkerkerker 12e001cf2b
Add binary sensors for fridge doors in SmartThings (#141252)
* Add binary sensors for fridge doors

* Add binary sensors for fridge doors

* Add binary sensors for fridge doors

* Add binary sensors for fridge doors
2025-03-24 10:28:10 +02:00
Pieter Viljoen d65392a374
ConfigSubEntryFlow _get_reconfigure_entry() -> _get_entry() (#141017)
* ConfigSubEntryFlow _get_reconfigure_entry() -> _get_entry()

* Update MQTT test

* Fix test_config_entries

* Minimize changes to keep existing tests working

* Re-revert and update negative test instead
2025-03-24 09:24:43 +01:00
Erik Montnemery f4d57e3722
Add cloud onboarding views (#139422)
* Add cloud onboarding views

* Break import cycle when running hassfest

* Add exemption to hassfest for onboarding using cloud

* Adjust according to discussion

* Fix copy-paste errors

* Add tests

* Fix stale docstring

* Import cloud loally
2025-03-24 08:41:19 +01:00
Mirko Liebender d3b8dbb76c
Google gen ai fix for empty chat log messages (#136019) (#140315)
* Google gen ai fix for empty chat log messages (#136019)

* Google gen ai test for empty chat history fields (#136019)
2025-03-23 22:27:35 -07:00
Ivan Lopez Hernandez 6a7fa3769d
Add Google Search tool in Google Generative AI (#140772)
* Added Google Search grounding

* Added testing
2025-03-23 22:23:52 -07:00
Thomas55555 b171439098
Bump aioautomower to 2025.3.2 (#141211)
* Bump aioautomower to 2025.3.2

* requirements

* adjust test
2025-03-23 22:19:16 +01:00
Jan Bouwhuis 93010ab5c9
Ensure suggested values are added to section schema in data entry fow (#141227) 2025-03-23 22:14:06 +01:00
Michael Hansen 2883f0a1e8
Bump intents to 2025.3.23 (#141241) 2025-03-23 22:12:05 +01:00
Maciej Bieniek 1f122ea54d
Improve error handling and add exception translations for Nettigo Air Monitor integration (#141183)
* Add update_error

* Add device_communication_error

* Add auth_error

* Add device_communication_action_error

* Coverage
2025-03-23 21:23:11 +02:00
Norbert Rittel 1d36279e79
Use correct unit symbol "min" for minutes in `systemmonitor` integration (#141236)
* Use correct unit symbol "min" for minutes in `systemmonitor` integration

* Update test_sensor.ambr

* Remove accidentially added, excessive space character
2025-03-23 21:08:25 +02:00
Allen Porter c451518959
Fix google calendar working location event filtering (#141222) 2025-03-23 09:07:42 -07:00
Allen Porter f14b76c54b
Add Gemini/OpenAI token stats to the conversation trace (#141118)
* Add gemini token status to the conversation trace

* Add OpenAI Token Stats

* Revert input_tokens_details since its not in the openai version yet

* Fix ruff lint errors
2025-03-23 12:03:06 -04:00
Norbert Rittel f94b55b608
Fixes to user-facing strings of `azure_devops` integration (#141208)
* Fixes to user-facing strings of `azure_devops` integration

- capitalize abbreviations "ID" and "URL"
- sentence-case "project"
- consistently capitalize "Personal Access Token" as a name

* Update test_sensor.ambr
2025-03-23 16:22:57 +02:00
Martin Hjelmare fdaba003ce
Patch Z-Wave platforms in event tests (#141209) 2025-03-23 16:22:18 +02:00
Michael 6b724603c8
Remove orphan fuel type settings from Tankerkoening (#141207)
remove orphan fule type settings
2025-03-23 15:01:53 +01:00
Martin Hjelmare 588d6ad4cf
Patch Z-Wave platforms in cover tests (#141205) 2025-03-23 15:35:29 +02:00
Martin Hjelmare 34504f45a5
Patch Z-Wave platforms in climate tests (#141204) 2025-03-23 15:15:09 +02:00
Artur Pragacz 798ee60ae5
Make variables action not restricted to local scopes (#141114)
Make variables action in scripts not restricted to local scopes
2025-03-23 14:07:52 +01:00
J. Diego Rodríguez Royo d8a5881eaa
Home Connect test improvements (#141135)
* Home Connect test improvements

* Remove `appliance_ha_id` fixture in favour of `appliance` fixture
2025-03-23 11:33:55 +01:00
tdfountain 9e86ca2e9e
Add Switch platform and PDU dynamic outlet switches to NUT (#141159) 2025-03-22 19:27:52 -10:00
Luke Lashley e2e80a850c
Add dhcp discovery to Roborock (#141148)
* Add discovery to Roborock

* Update homeassistant/components/roborock/config_flow.py

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* MR comments

* go back to removing the ":"

* change method of getting devices

---------

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2025-03-22 21:21:43 -07:00
tdfountain ddd67a7e58
Add PDU dynamic outlet buttons to NUT (#140317) 2025-03-22 13:04:20 -10:00
Allen Porter 4e2dfba45f
Omit state from the Assist LLM prompts (#141034)
* Omit state from the Assist LLM prompts

* Add back the stateful prompt
2025-03-22 15:41:51 -04:00
Thomas55555 61e30d0e91
Add diagnostics to remote calendar (#141111)
* Add diagnostics

* add diagnostics

* address review

* ruff

* ruff

* use raw ics data

* mypy

* mypy

* naming

* redact ics

* ruff

* simpify

* reduce data

* ruff
2025-03-22 12:27:48 -07:00
Joost Lekkerkerker f245bbd8dd
Add door state binary sensor to SmartThings (#141143) 2025-03-22 20:04:21 +01:00
Joost Lekkerkerker b47d3076cc
Add oven stop button to SmartThings (#141142) 2025-03-22 20:51:41 +02:00
Joost Lekkerkerker c56b087d0c
Add Dryer Wrinkle Prevent switch to SmartThings (#141085)
* Add Dryer Wrinkle Prevent switch to SmartThings

* Fix
2025-03-22 19:05:21 +01:00
Joost Lekkerkerker 4b4d75063c
Add number platform to SmartThings (#141063)
* Add select platform to SmartThings

* Add number platform to SmartThings

* Fix

* Fix

* Fix

* Fix
2025-03-22 19:03:26 +01:00
Joost Lekkerkerker 931ce8951e
Use category to define SmartThings binary sensor device class (#141075)
* Use category to define SmartThings binary sensor device class

* Fix
2025-03-22 12:41:15 -05:00
Andrew Sayre ec4de0dcce
Always allow browsing TuneIn for HEOS (#141131)
* Always allow browsing TuneIn

* Update test snapshots

* Retry CI
2025-03-22 18:14:42 +01:00
Joost Lekkerkerker 1b8b348eff
Add select platform to SmartThings (#141115)
* Add select platform to SmartThings

* Add select platform to SmartThings
2025-03-22 18:03:50 +01:00
Joost Lekkerkerker 765691c84d
Add power binary sensor for SmartThings (#141126) 2025-03-22 17:59:15 +01:00
Joost Lekkerkerker 1492c59abe
Delete deleted devices on runtime in SmartThings (#141080) 2025-03-22 13:12:37 +01:00
Joost Lekkerkerker 5961a46fc0
Start reauth for SmartThings if token expired (#141082) 2025-03-22 13:12:24 +01:00
J. Diego Rodríguez Royo 9d9b352631
Move Home Connect service actions to a services.py (#141100)
* Move Home Connect service actions to a actions.py

* Rename actions.py to services.py

* Move more fuctions to module level
2025-03-22 12:35:46 +01:00
J. Nick Koston 6027a26761
Add SSLContext.set_default_verify_paths to asyncio blocking detection (#140648)
This one loads a significant number of files from /etc/ssl
2025-03-21 11:50:18 -10:00
tdfountain 2571725eb9
Add metered PDU dynamic outlet sensors to NUT (#140179)
* Add metered PDU dynamic outlet sensors

* Make deep copy and improve efficiency of loops

* Improve performance by creating new dict

Co-authored-by: J. Nick Koston <nick+github@koston.org>

* Remove unused import copy

* Use outlet name (if available) in friendly name and remove as separate sensor

---------

Co-authored-by: J. Nick Koston <nick+github@koston.org>
2025-03-21 11:41:43 -10:00
Joost Lekkerkerker 276e2e8f59
Move device creation in SmartThings (#141074)
Move device creation
2025-03-21 19:32:05 +02:00
Joost Lekkerkerker e78e873892
Add update platform to SmartThings (#141070)
* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* fix

* fix

* Add AC tests

* Add thermostat tests

* Add cover tests

* Add device tests

* Add light tests

* Add rest of the tests

* Add update

* Add oauth

* Add oauth tests

* Add oauth tests

* Add oauth tests

* Add oauth tests

* Bump version

* Add rest of the tests

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Add test fixtures

* Add test fixtures
2025-03-21 17:01:13 +01:00
Joost Lekkerkerker 74ed0e8011
Add support for PM1.0 in SmartThings (#141061)
* Add support for PM1.0 in SmartThings

* Add test fixtures

* Add test fixtures
2025-03-21 16:29:00 +01:00
Joost Lekkerkerker f84a46680d
Add event platform to SmartThings (#141066)
* Add event platform to SmartThings

* Add event platform to SmartThings

* Fix
2025-03-21 16:20:42 +01:00
Joost Lekkerkerker a9cbc72ce5
Add child lock to SmartThings (#140200)
* Add kids lock to SmartThings

* Add kids lock to SmartThings

* Fix

* Fix
2025-03-21 14:03:44 +01:00
Luke Lashley 466ec0b596
Fix failing Roborock test (#141059)
Fix the falky test
2025-03-21 05:31:17 -07:00
Wouter 858f0e6657
Fixed issue where the device was already disconnected when setting up the event platform (#140722)
* Changed where the script events are collected to remove any device communication from async_setup_entry

* Implemented improvements and added a test to test whats happends when script_getcode fails

* Renamed script_events to rpc_script_event to make clear this is only for RPC devices

Co-authored-by: Shay Levy <levyshay1@gmail.com>

---------

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2025-03-21 14:13:56 +02:00
Jan-Philipp Benecke 4ed2689678
Handle wrong WebDAV URL more gracefully in config flow (#141040) 2025-03-21 12:25:26 +02:00
fwestenberg 1fafe81d20
Update Stookwijzer diagnostics and description (#141041)
Update diagnostics and description
2025-03-21 12:20:15 +02:00
Maciej Bieniek 2785688f57
Add `calibrate` button for Shelly BLU TRV (#140578)
* Initial commit

* Refactor

* Call async_add_entities() once

* Type

* Cleaning

* `supported` is not needed here

* Add error handling

* Add test

* Fix name

* Change class name

* Change method name

* Move BLU_TRV_TIMEOUT

* Fix BLU_TRV_TIMEOUT import

* Coverage

* Use test snapshots

* Support error translations

* Fix tests

* Introduce ShellyBaseButton class

* Rename press_method to _press_method

* Improve exception strings
2025-03-21 10:14:20 +01:00
puddly 110500b860
Bump ZHA to 0.0.53 (#141025)
* Bump ZHA to 0.0.53

* Regenerate snapshot
2025-03-21 07:44:57 +01:00
Allen Porter a83bf4f514
Add a GetHomeState tool to return the current state of the home (#140971)
* Add a GetHomeState tool to return the current state of the home

* Fix check for exposing entities

* Add "all" to get home state description
2025-03-20 19:37:54 -07:00
Luke Lashley a388863e62
Remove stale devices automatically for Roborock (#140991)
* Remove stale devices

* Add test

* extra test + fix networking patch bug
2025-03-20 18:28:37 -07:00
Abílio Costa d12b4a1460
Log a warning for modules that log too often (#139708)
* Log a warning for modules that log too often

* Improve var naming

* Increase time window; improve log info

* Fix zha type

* Fix typo

* Ignore debug logs

* Use timer to avoid now() calls

* Switch to async_track_time_interval

* Allow using base QueueLister

* Add test for counters reset

* Make var names consistent; reduce message/time ratio

* Use log times instead of timer

* Simplify reset test

* Warn only once per module

* Remove uneeded counter reset
2025-03-20 14:53:53 -10:00
starkillerOG 5d1c8ea537
Reolink fix playback headers (#141015) 2025-03-20 20:45:07 +01:00
Maciej Bieniek 53f1dd8adf
Improve error handling and add exception translations for NextDNS integration (#141005)
* Add exception translations

* Coverage

* Add missing auth_error

* Coverage

* Use async_start_reauth

* Fix test

* Remove method placeholder
2025-03-20 20:33:45 +02:00
Norbert Rittel a338205b73
Fix sentence-casing of "round-trip time" sensors in `ping` (#141012)
* Fix sentence-casing of "round-trip time" sensors in `ping`

Also add a hyphen for better English grammar.

* Update test_sensor.ambr
2025-03-20 20:30:28 +02:00
poucz a030502489
Add MQTT cover stop tilt (#139912)
* Stop tilt move.

Stop tilt use same payload as cover - payload_stop

* Add test for STOP_TILT

* Tilt action

* Revert "Tilt action"

This reverts commit 7ce4fbb086.

* Update tests/components/mqtt/test_cover.py

Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>

* Update homeassistant/components/mqtt/cover.py

Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>

* Append CONF_PAYLOAD_STOP_TILT

* Update homeassistant/components/mqtt/cover.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Test for new payload

* Update tests/components/mqtt/test_cover.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Update tests/components/mqtt/test_cover.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Ruff format

* abbreviation

---------

Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2025-03-20 18:20:12 +00:00
EnjoyingM f9bb250621
Wolf Smartset: Adding Heatpump Parameters: Frequency, RPM and Flow rate (#140844)
* Add missing Heatpump parameters and units

* Fix merge issue

* Fix snapshot

* Removing bundle_id as extra state attribute till functionality is needed and updating api translation with missing phrase

* Fix translations for listparameters

* Fix translations for listparameters
2025-03-20 18:46:04 +01:00
Abílio Costa eca10ea591
Improve Withings sleep and weight default units (#140665) 2025-03-20 18:45:52 +01:00
Norbert Rittel 4bbd49af53
Capitalize "PIN to Drive" feature name in `teslemetry` (#141011)
* Capitalize "PIN to Drive" as feature name in `teslemetry`

Fixes the spelling of "PIN" for consistency and turns "PIN to Drive" into the feature name that Tesla uses (in English).

* Update test_binary_sensor.ambr
2025-03-20 19:20:08 +02:00
peteS-UK e48a25e952
Add button platform for Squeezebox integration (#140697)
* initial

* trans key correction

* base class updates

* model tidy up

* Update homeassistant/components/squeezebox/strings.json

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Update homeassistant/components/squeezebox/entity.py

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Update homeassistant/components/squeezebox/media_player.py

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Update homeassistant/components/squeezebox/media_player.py

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Update homeassistant/components/squeezebox/button.py

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* review updates

* update

* move manufacturer to library

* updates

* list concat

* review updates

* Update tests/components/squeezebox/test_button.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-03-20 17:18:08 +01:00
Martin Hjelmare a835c85f59
Patch Z-Wave platforms in button tests (#141001) 2025-03-20 16:37:02 +02:00
Luke Lashley 2a4ed9ace7
Add translations for Roborock Exceptions (#140964)
* Add translations to a few exceptions

* match existing wording

* fix regex

* consolidate errors

* fix test
2025-03-20 07:14:45 -07:00
Petro31 212d39ba19
Migrate template switch to new style (#140324)
* Migrate template switch to new style

* update tests

* Update tests

* Add config flow migration

* comment fixes

* revert entity config migration
2025-03-20 15:12:43 +01:00
Martin Hjelmare 5f84fc3ee5
Patch Z-Wave platforms in binary sensor tests (#140992) 2025-03-20 16:06:21 +02:00
Artur Pragacz c9b27cf26e
Detect early base platforms in bootstrap (#140359)
* Detect early base platforms in bootstrap

* Address feedback

* Address feedback
2025-03-20 12:56:45 +01:00
Martin Hjelmare df0125abdd
Patch Z-Wave platforms in api tests (#140988) 2025-03-20 12:54:40 +01:00
Martin Hjelmare d8a4a97ee0
Allow patching Z-Wave platforms specifically in tests (#140987) 2025-03-20 12:19:14 +01:00
starkillerOG a20601a1f0
Bump reolink-aio to 0.12.3 (#140789)
* Add password length restriction

* Bump reolink-aio to 0.12.3

* Add repair issue for too long password

* finish password too long repair issue

* add test
2025-03-20 11:39:57 +01:00
Joost Lekkerkerker 827d5256c6
Bump pySmartThings to 2.7.4 (#140720)
* Bump pySmartThings to 2.7.3

* Bump pySmartThings to 2.7.3

* Fix

* Fix

* Fix
2025-03-20 11:02:51 +01:00
Franck Nijhof c6d3928ed1
Add template function: combine (#140948)
* Add template function: combine

* Add test to take away concern raised
2025-03-20 10:29:40 +01:00
Petar Petrov 3fb0290fba
Remove unused params in "zwave_js/provision_smart_start_node" API (#140982) 2025-03-20 10:19:26 +01:00
Martin Hjelmare 2674b02bfa
Refactor zwave_js config entry setup (#107635)
* Refactor zwave_js config entry setup

* Fix blocking update test

* Address timeout comment

* Remove platform tasks

* Replace deprecated async_add_job

* Use ConfigEntry.async_on_state_change

* Use modern config entry methods

* Clarify exception message

* Test listen error after config entry setup

* Test listen failure during setup after forward entry

* Test not reloading when hass is stopping

* Test client disconnect is called on entry unload

* Fix and test client not connected during driver setup

* Fix and test driver ready timeout

* Stringify listen task exception when logging

* Use identity compare

* Guard for closed connection

* Consolidate listen task checking and tests
2025-03-20 10:16:48 +01:00
J. Diego Rodríguez Royo 2ec80fd1ca
Fix initial fetch of Home Connect appliance data to handle API rate limit errors (#139379)
* Fix initial fetch of appliance data to handle API rate limit errors

* Apply comments

* Delete stale function

* Handle api rate limit error at options fetching

* Update appliances after stream non-breaking error

* Always initialize coordinator data

* Improve device update

* Update test description

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-03-20 09:39:28 +01:00
Ivan Lopez Hernandez d9cf2750d5
Ensure file is correctly uploaded by the GenAI SDK (#140969)
Opened the file outside of the SDK
2025-03-19 22:58:19 -07:00
J. Nick Koston a600bc5e57
Add turn on/off support to HomeKit TVs (#140957)
* Add turn on/off support to HomeKit TVs

* 0 = off, 1 = on, not a bool

* add coverage

* update snapshot
2025-03-19 11:19:04 -10:00
Joost Lekkerkerker 4344e9d604
Add remote control status to SmartThings (#140197)
* Add remote control status to SmartThings

* Add remote control status to SmartThings

* Fix
2025-03-19 18:23:15 +00:00
J. Diego Rodríguez Royo 8afd9c0c44
Handle API rate limit error on Home Connect entities fetch (#139384)
* Handle API rate limit error on entities fetch

* Apply suggestions

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Add decorator (does not work)

* Fix decorator

* Apply suggestions

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Add test

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-03-19 18:53:14 +01:00
Erik Montnemery 05c61b7ec3
Rename BackupManager last_non_idle_event to last_action_event (#140291)
* Rename BackupManager last_non_idle_event to last_action_event

* Update snapshots
2025-03-19 17:28:40 +01:00
jukrebs 2c9eb288e3
Add capability to display updated firmware versions in Home Assistant (#140524)
* add firmware version update

* incoperate review feedback
2025-03-19 16:51:39 +01:00
Erik Montnemery 6211e378c3
Fix flaky cast tests (#140928) 2025-03-19 16:50:09 +02:00
Erik Montnemery 6434befdcd
Fix misleading airthings_ble test (#140933) 2025-03-19 15:12:43 +01:00
starkillerOG 334359871d
Add Reolink home hub scene select entity (#140823) 2025-03-19 14:34:49 +01:00
Josef Zweck 3fd17c802c
Bump pylamarzocco to 1.4.9 (#140916) 2025-03-19 11:25:12 +01:00
Erik Montnemery 793e36635b
Improve google cast known hosts configuration (#140913) 2025-03-19 10:07:47 +01:00
Manu caf81eecd3
Bump bring-api to v1.1.0 (#140906) 2025-03-18 20:25:41 -10:00
Luke Lashley 254622878a
Add Roborock entity with the name of the current room (#140895)
* Add current room entity

* Update homeassistant/components/roborock/models.py

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* Update homeassistant/components/roborock/models.py

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* use current_room property

* remove select changes

---------

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2025-03-18 18:48:34 -07:00
starkillerOG f8ab4d0238
Fix warnings in Reolink tests (#140878) 2025-03-18 16:47:33 +01:00
starkillerOG 4564d2537b
Fix flakey reolink test (#140877) 2025-03-18 17:38:34 +02:00
Maikel Punie 4176776d70
Fix optional password in Velbus config flow (#140615)
* Fix velbusconfigflow

* add tests

* Paramtize the tests

* Removed duplicate test in favor of another case

* more comments
2025-03-18 14:49:27 +00:00
Luke Lashley 1cae866da9
Update Roborock Map on status change (#140873)
* update map on status change

* Update tests/components/roborock/test_image.py

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* update code to handle state logic within async_update_data

* Update homeassistant/components/roborock/coordinator.py

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* move previous_state and allow update on None

---------

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2025-03-18 07:34:02 -07:00
Petar Petrov 516aaa741d
Add Z-Wave JS lookup_device API (#140802)
* ZwaveJS lookup_device API

* add FailedCommand test

* test tweak
2025-03-18 12:05:10 +01:00
Simone Chemelli 12f5bd2aea
Add dedicated sensors for extra_state_attributes in Shelly integration (#140793)
* Add dedicated sensors for extra_state_attributes in Shelly integration

* add tests

* apply review comment

* fix text syntax

* add gas test

* update strings

* add icons
2025-03-18 11:48:18 +01:00
Dan Raper 30c19ec373
Add reconfigure flow to Ohme (#140835)
* Add reconfigure flow to Ohme

* Remove incorrect unique ID check from ohme reconfig
2025-03-18 10:36:21 +01:00
EnjoyingM 5438532780
Bump wolf-comm to 0.0.23 (#140840)
* Bump wolf-comm to 0.0.23

* fix test for new lib
2025-03-18 11:22:32 +02:00
starkillerOG fdd36e457d
Add Reolink day night state sensor (#140825)
* Add day night state sensor

* Update test_diagnostics.ambr
2025-03-18 11:19:45 +02:00
Norbert Rittel 36d42760a4
Fix capitalization in `nextcloud` entity names (#140856)
* Fix capitalization in `nextcloud` entity names

Use uppercase for abbreviations, sentence-case for words.

* Update test_sensor.ambr
2025-03-18 11:07:05 +02:00
Luke Lashley ea259ffa66
Add event to Snoo (#140827) 2025-03-18 09:35:57 +01:00
Jan Schneider 52054d69c7
Update moehlenhoff-alpha2 to 1.4.0 (#140829)
* Update moehlenhoff-alpha2 to 1.4.0

* Fix test
2025-03-18 09:32:28 +01:00
Dan Raper 74992344d5
Add diagnostics for Ohme (#140833) 2025-03-18 09:31:08 +01:00
Luke Lashley 0eac679a5a
Move MapData to Coordinator for Roborock (#140766)
* Move MapData to Coordinator

* seeing if mypy likes this

* delete dead code

* Some MR comments

* remove MapData and always update on startup if we don't have a stored map.

* don't do on demand updates

* remove unneeded logic and pull out map save

* Apply suggestions from code review

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* see if mypy is happy

---------

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2025-03-17 19:34:47 -07:00
Allen Porter 412705302d
Update MCP server to make the stateless API implicit (#140753)
* Update MCP server to not register the stateless API, but use it implicitly as an Assist API replacement

* Ensure backwards compatibility with old registration
2025-03-17 16:38:21 -05:00
Andrew Sayre 52d86ede3e
Add ability to browse (and play) HEOS media (#140433)
* Add browse and play

* Tests

* Add tests involving media source
2025-03-17 14:10:56 -05:00
Erik Montnemery 290dab25bf
Don't raise in ConfigFlow.async_set_unique_id if the other flow is a reauth flow (#140723)
* Don't raise in ConfigFlow.async_set_unique_id if the other flow is a reauth flow

* Improve test
2025-03-17 09:04:30 -10:00
Thomas55555 9a0837593a
Improve test coverage and add comment for loading in executor for remote calendar (#140807)
Improve calendar loading by executing in a separate thread and add test for CalendarParseError
2025-03-17 17:38:40 +01:00
Shay Levy 9b57a831f7
Fix Shelly Air lamp life sensor (#140799) 2025-03-17 17:33:11 +02:00
starkillerOG 18bd8b561a
Add Reolink smart ai binary sensors (#140408)
* Add Crossline smart AI binary sensor

* Add intrusion, lingering, forgotten item, item taken detection

* Use unique_index instead of location for unique_id

* Add test

* Apply suggestions from code review

Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>

* Name changes

* Update homeassistant/components/reolink/binary_sensor.py

Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>

* Use smart_type instead of key

* Use occupancy translation instead of gas (point to the same thing).

* Revert "Use occupancy translation instead of gas (point to the same thing)."

This reverts commit 9caf796585.

* fix styling

---------

Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>
2025-03-17 14:49:13 +00:00
Stephan van Rooij 76aef5be9f
Add PKCE implementation in oauth2 helper (#139509)
* Update config_entry_oauth2_flow.py

* Specify type on request_data

* Added LocalOAuth2ImplementationWithPkce

* LocalOAuth2ImplementationWithPkce works more like specs

* fix: Adding tests for pkce flow and feedback applied

* fix last test for pkce

* Clean test_abort_if_oauth_with_pkce_rejected

* Improve assertion of code verifier and code challenge

* Break long docstrings

* Shorten docstring

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-03-17 14:16:52 +01:00
Indu Prakash a5913147e7
Add support for fan night light in VeSync (#140637)
* style: rename humidifier night const

* fix: separate night light for fan and humidifier

Check for the presence of set_night_light_brightness and
set_night_light to indentify humidifier and fan devices.

set_night_light is defined on VeSyncAirBypass and
set_night_light_brightness is defined on VeSyncHumid200300S.

update test
2025-03-17 10:32:52 +01:00
Johnny Willemsen a9949aece0
Fix typo in Homee (#140759)
* Update strings.json

Fixed typo

* Update homeassistant/components/homee/strings.json

* Fix

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-03-16 22:27:35 +01:00
Luke Lashley 15e983e997
Add snoo switches (#140748)
* Add snoo switches

* change naming

* change wording
2025-03-16 22:24:49 +01:00
Luke Lashley a40bb2790e
Move Roborock map refresh to coordinator (#140758)
Move refresh coordinator to coordinator
2025-03-16 14:15:04 -07:00
Joost Lekkerkerker bbe2a95b3d
Deprecate Valve binary sensor in SmartThings (#140751)
Deprecate Valve binary sensor
2025-03-16 22:29:03 +02:00
Luke Lashley b0db7b432e
Move Roborock MapParser to coordinator (#140750)
Move MapParser to coordinator
2025-03-16 12:55:00 -07:00
Markus Adrario 42f0e70cde
Add Homee binary sensor platform (#140088)
* binary-sensor initial

* Add binary sensor tests

* small string changes

* fix review comments

* review change 1
2025-03-16 20:13:36 +01:00
Joost Lekkerkerker d061f4ee05
Fix SmartThings ACs without supported AC modes (#140744) 2025-03-16 20:06:50 +01:00
Manu 46973f0446
Redact emails and names in Bring! diagnostics (#140746) 2025-03-16 20:00:10 +01:00
starkillerOG b5fa3e74c0
Add option to specify Reolink Basic Service Port (#137603)
* Allow changing the baichuan port

* styling

* Add description

* Add tests

* Review feedback

* capital letters

Co-authored-by: Robert Resch <robert@resch.dev>

---------

Co-authored-by: Robert Resch <robert@resch.dev>
2025-03-16 19:51:06 +01:00
Denis Shulyaka bb7b5b9ccb
OpenAI Responses API (#140713) 2025-03-16 13:18:18 -04:00
Luke Lashley 214d14b06b
Add binary sensor to Snoo (#140729)
* Add binary sensor

* Update homeassistant/components/snoo/binary_sensor.py

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-03-16 16:57:21 +01:00
Pete Sage d560083e15
Album art not available for Sonos media library favorites (#140557)
* get album art uri for favorites

* add tests

* update typing

* update typing

* update typing

* simplify
2025-03-16 14:09:21 +01:00
Dan Raper d365092bcc
Add price cap support to Ohme (#140537)
* Add price cap support

* Change service input to box mode

* Add icon for set_price_cap service

* Improve test coverage

* Change ohme service description wording
2025-03-16 14:05:08 +01:00
Luke Lashley 4e0985e1a7
Add Select entity to Snoo (#140638) 2025-03-16 14:00:43 +01:00
Pete Sage 5f8564bfc5
Fix audiobooks always start from beginning on Sonos (#140663)
* play audible favorite

* play audible favorite

* simplify tests
2025-03-16 10:11:08 +01:00
Jan-Philipp Benecke 7b9ea63f17
Split out yaml loading into own package (#140683)
* Split out yaml loading into library

* Code review

* Code review

* Fix check config script
2025-03-15 22:26:18 -04:00
Thomas55555 4050c216ed
Add Remote calendar integration (#138862)
* Add remote_calendar with storage

* Use coordinator and remove storage

* cleanup

* cleanup

* remove init from config_flow

* add some tests

* some fixes

* test-before-setup

* fix error handling

* remove unneeded code

* fix updates

* load calendar in the event loop

* allow redirects

* test_update_failed

* tests

* address review

* use error from local_calendar

* adress more comments

* remove unique_id

* add unique entity_id

* add excemption

* abort_entries_match

* unique_id

* add ,

* cleanup

* deduplicate call

* don't raise for status end de-nest

* multiline

* test

* tests

* use raise_for_status again

* use respx

* just use config_entry argument that already is defined

* Also assert on the config entry result title and data

* improve config_flow

* update quality scale

* address review

---------

Co-authored-by: Allen Porter <allen@thebends.org>
2025-03-15 18:57:45 -07:00
J. Nick Koston d69bcc02b0
Pass scanner mode to shelly Bluetooth scanner (#140689)
habluetooth will eventually be able to make better decisions
on how to route data based on the scanning mode.
2025-03-15 12:00:23 -10:00
Thomas55555 ed0b1f58dc
Bump aioautomower to 2025.3.1 (#140682) 2025-03-15 21:30:19 +01:00
Joost Lekkerkerker 43898d7845
Add valve platform to SmartThings (#140195)
* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* Refactor SmartThings

* fix

* fix

* Add AC tests

* Add thermostat tests

* Add cover tests

* Add device tests

* Add light tests

* Add rest of the tests

* Add valve

* Add oauth

* Add oauth tests

* Add oauth tests

* Add oauth tests

* Add oauth tests

* Bump version

* Add rest of the tests

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Finalize

* Fix

* Fix
2025-03-15 20:28:51 +01:00
Joost Lekkerkerker bff73ee5f8
Add EHS test fixture to SmartThings (#140199) 2025-03-15 20:28:04 +01:00
Jeff Terrace 02a75edf1d
Add onvif parser support for reolink package and hikvision alarm (#140669) 2025-03-15 09:03:40 -10:00
EnjoyingM c1c8deed0c
Fix sensor values for Power and Energy for Wolf Heatpumps (#139007)
* Add sensor values for Power and Energy

* test

* test

* Sensor test

* Fix test

* fix test

* Fixing test coverage

* refactored

* WolfllinkSensorEntityDescriptions and updated tests

* fix test

* Add name_fn and test_sensor adoptions

* fix test coverage

* Revert "fix test coverage"

This reverts commit 2405751f5a.

* resolve requested changes and fix test

* Fix Snapshot

* clean up

* Fixed unknown state in snapshot test
2025-03-15 19:56:45 +01:00
Simone Chemelli 2fd91e7f9c
Remove unknown from Shelly sensor state (#140597) 2025-03-15 18:10:35 +01:00
Joost Lekkerkerker b7e2e041bc
Make Oven setpoint follow temperature UoM in SmartThings (#140666) 2025-03-15 15:08:21 +01:00
J. Diego Rodríguez Royo 940625505f
Handle non documented options at Home Connect select entities (#140608)
* Allow non documented options at select entities

* Don't allow undocumented options
2025-03-15 14:17:16 +01:00
Tim Laing 13b6cfa438
Add generate content service for OpenAI to match Google AI (#122818)
* Aded Generate Content Service for OpenAI to match Google AI

* Fixed code for commit checks

* Addressed code review comments

* Address review comments

* Addressed @balloob review comments.

* Address futher review comments from @balloob
2025-03-14 22:54:49 -04:00
J. Nick Koston 5dc1a321dd
Rework cover reproduce_state to consider supported features (#140558)
* Handle open/closed state in reproduce_state for tilt only covers

fixes #137144

* cleanups

* cleanups

* cleanups

* cleanups

* cleanups

* cleanups

* cleanups

* cleanups

* cleanups

* cleanups

* cleanups

* cleanups

* rework

* rework

* rework

* rework

* more coverage

* more coverage

* more coverage

* more coverage

* more coverage

* more coverage

* more coverage

* more coverage

* more coverage

* more coverage

* more coverage

* back compat

* back compat

* back compat

* cleanups

* cleanups

* cleanups

* cleanups

* comments

* comments
2025-03-14 22:14:09 -04:00
Denis Shulyaka 07e7672b78
Anthropic conversation extended thinking support (#139662)
* Anthropic conversation extended thinking support

* update conversation snapshots

* Add conversation test

* Update openai_conversation snapshots

* Removed metadata

* Removed metadata

* Removed thinking

* cosmetic fix

* combine user messages

* Apply suggestions from code review

* Add tests for chat_log messages conversion

* s/THINKING_BUDGET_TOKENS/THINKING_BUDGET/

* Apply suggestions from code review

* Update tests

* Update homeassistant/components/anthropic/strings.json

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* apply suggestions from code review

---------

Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2025-03-14 22:07:59 -04:00
Luke Lashley baafcf48dc
Separate Roborock entities to a new dock device (#140612)
* Seperate entities to a new dock device

* update entity names

* Update homeassistant/components/roborock/coordinator.py

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2025-03-14 22:06:09 -04:00
Jeff Terrace 11e15b1405
Move redundant attribute and key error handling to event parser caller (#140630) 2025-03-14 14:16:35 -10:00
puddly 537302ce56
ZBT-1 and Yellow firmware update entities for Zigbee/Thread (#138505)
* Initial implementation of hardware update model

* Fixes

* WIP: change the `homeassistant_sky_connect` integration type

* More fixes

* WIP

* Display firmware info in the device page

* Make progress more responsive

* WIP: Yellow

* Abstract the bootloader reset type

* Clean up comments

* Make the Yellow integration non-hardware

* Use the correct radio device for Yellow

* Avoid hardcoding strings

* Use `FIRMWARE_VERSION` within config flows

* Fix up unit tests

* Revert integration type changes

* Rewrite hardware ownership context manager name, for clarity

* Move manifest parsing logic into a new package

Pass the correct type to the firmware API library

* Create and delete entities instead of mutating the entity description

* Move entity replacement into a `async_setup_entry` callback

* Change update entity category from "diagnostic" to "config"

* Have the client library handle firmware fetching

* Switch from dispatcher to `async_on_state_change`

* Remove unnecessary type annotation on base update entity

* Simplify state recomputation

* Remove device registry code, since the devices will not be visible

* Further simplify state computation

* Give the device-less update entity a more descriptive name

* Limit state changes to integer increments when sending firmware update progress

* Re-raise `HomeAssistantError` if there is a problem during flashing

* Remove unnecessary state write during entity creation

* Rename `_maybe_recompute_state` to `_update_attributes`

* Bump the flasher to 0.0.30

* Add some tests

* Ensure the update entity has a sensible name

* Initial ZBT-1 unit tests

* Replace `_update_config_entry_after_install` with a more explicit `_firmware_info_callback` override

* Write the firmware version to the config entry as well

* Test the hardware update platform independently

* Add unit tests to the Yellow and ZBT-1 integrations

* Load firmware info from the config entry when creating the update entity

* Test entity state restoration

* Test the reloading of integrations marked as "owning"

* Test installation failure cases

* Test firmware type change callback failure case

* Address review comments
2025-03-15 00:28:02 +01:00
Michel van de Wetering 160b98bd28
Fix media_player Toggle when in idle (#78192)
* Remove idle as off state

* Fix merge mistake

* Fix merge mistake

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2025-03-14 17:24:39 +01:00
Manu 78a04776e4
Add update_daily action to Habitica integration (#140328)
* add update_daily action

* day strings
2025-03-14 16:49:56 +01:00
Paul Bottein 324f208d68
Add lawn mower support to Google Assistant (#140530)
* Add lawn mower support to google assistant

* Update snapshots

* Sort alphabetically

* Refactor service call

* Refactor service call

* Feedback
2025-03-14 15:22:23 +00:00
Brett Adams 251bb30dc7
Add streaming media platform to Teslemetry (#140482)
* Update media player

* Add media player platform with tests and bump firmware
2025-03-14 15:27:18 +01:00
Petar Petrov de0efd61d1
Add Z-Wave JS NVM backup and restore API (#139233)
* ZWaveJS: NVM backup and restore API

* remove unused const

* test fix

* switch to WS commands

* Backup & restore MVP

* Use base64 data directly

* update tests

* fix mistake

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* PR comments

* update tests

* more tests

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-03-14 15:17:23 +01:00
Erik Montnemery 08fc6dcff6
Allow configuring ignored devices from improve_ble user flow (#140595) 2025-03-14 16:05:58 +02:00
Erik Montnemery 96a6d88dca
Allow configuring ignored devices from dormakaba_dkey user flow (#140596) 2025-03-14 16:01:43 +02:00
Luke Lashley 1bd8ff884e
Improve Snoo testing (#139302)
* improve snoo testing

* change to asyncMock method of testing

* Apply suggestions from code review

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* address comments

* Apply suggestions from code review

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* adress comments

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-03-14 14:58:55 +01:00
Jan Bouwhuis a8f1df3e55
Add availability support for MQTT subentries (#138673)
* Add availability support for MQTT subentries

* Update homeassistant/components/mqtt/config_flow.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/components/mqtt/config_flow.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/components/mqtt/config_flow.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/components/mqtt/strings.json

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2025-03-14 14:56:27 +01:00
Luke Lashley 7ff842fc37
Add dynamic update interval to Roborock (#140563)
* Add dynamic update interval to Roborock

* mr comments

* update time intervals

* Set A01 to 1 minute

* set interval to 30
2025-03-14 06:55:18 -07:00
Brett Adams 220bd5a27f
Fix time to full charge in Teslemetry (#137996)
* Fix streaming full charge

* ruff
2025-03-14 14:48:17 +01:00
Brett Adams 4e759e59a4
Add streaming switches to Teslemetry (#137145)
* Add streaming switches

* Add switch tests

* Update snapshot

* Fix sentry

* update test docstring
2025-03-14 14:41:09 +01:00
Jan Bouwhuis bd4d0ec4b8
Add initial MQTT subentry support for notify entities (#138461)
* Add initial MQTT subentry support for notify entities

* Fix componts assigment is reset on device config. Translation tweaks

* Rephrase

* Go to summary menu when components are set up already - add test

* Fix suggested device info on config flow

* Invert

* Simplify subentry config flow and omit menu

* Use constants instead of literals

* More constants

* Teak some translations

* Only show save when the the entry is dirty

* Do not trigger an entry reload twice

* Remove encoding, entity_category

* Remove icon from mqtt subentry flow

* Separate entity settings and MQTT specific settings

* Remove object_id and refactor

* Migrate translations

* Make subconfig flow test extensible

* Make sub reconfig flow tests extensible

* Rename entity_platform_config step to mqtt_platform_config

* Make component unique ID independent from the name

* Move code for update of component data to helper

* Follow up on code review

* Skip dirty stuff

* Fix rebase issues #1

* Do not allow reconfig for entity platform/name, default QoS and refactor tests

* Add entity platform and entity name label to basic entity config dialog

* Rename to exclude_from_reconfig and make reconfig option not optional
2025-03-14 14:00:07 +01:00
Joost Lekkerkerker dcc63a6f2e
Bump ruff to 0.10.0 (#140541)
* Bump ruff to 0.10.0

* Bump ruff to 0.10.0

* Bump ruff to 0.10.0

* Bump ruff to 0.10.0

* Update pyproject.toml

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* Fix

---------

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2025-03-14 12:32:50 +00:00
Petar Petrov ae8709be21
Expose ZWaveJS`supports_long_range` to the frontend (#140489)
* Expose ZWaveJS`supports_long_range` to the frontend

* update test
2025-03-14 12:19:49 +01:00
Maciej Bieniek 5ea7c113b0
Use test snapshots for Shelly climate (#140582) 2025-03-14 11:15:38 +01:00
Norbert Rittel 8726be31ff
Use correct unit symbol "min" for minutes in `webmin` integration (#140448)
* Use correct unit symbol "min" for minutes in `webmin` integration

Replace the unit symbol "m" which stands for meter with the correct SI uni symbol "min".

* Update test_sensor.ambr

* Update test_sensor.ambr (2)
2025-03-14 10:28:37 +01:00
Jan-Philipp Benecke 99b140f73f
Remove WebDAV properties and rely on metadata file (#140539) 2025-03-14 10:21:16 +01:00
Louis Christ d952e8186f
Use only IPv4 for zeroconf in bluesound integration (#140226)
* Use only ipv4 for zeroconf

* Fix tests

* Use only ip_address for ip version check

* Add test

* Reduce test
2025-03-14 10:20:16 +01:00
Marc Mueller f48d94ce34
Use TypeVar default for Generator (#140506) 2025-03-14 10:08:39 +01:00
J. Nick Koston 23f4f97603
Bump habluetooth to 3.27.0 (#140569)
changelog: https://github.com/Bluetooth-Devices/habluetooth/compare/v3.25.1...v3.27.0
2025-03-13 22:57:24 -10:00
Petro31 84667fd32d
Migrate template light to new style (#140326)
* Migrate template light to new style

* add modern templates to tests

* fix comments
2025-03-14 09:00:46 +01:00
Joost Lekkerkerker 058aed96d2
Fix windowShadeLevel capability in SmartThings (#140552) 2025-03-14 01:28:08 +02:00
Joost Lekkerkerker b1285fcc4e
Set unit of measurement for SmartThings oven setpoint (#140560) 2025-03-14 01:28:01 +02:00
Marc Mueller 5cf3bea8fe
Fix unnecessary-dict-comprehension-for-iterable (C420) (#140555) 2025-03-13 23:32:00 +01:00
Marc Mueller b48ab77a38
Fix call on root logger (LOG015) (#140556) 2025-03-13 23:02:26 +01:00
Paul Bottein cdead8661d
Add lawn mower support to HomeKit (#140438)
Add lawn mower support to homekit
2025-03-13 10:27:00 -10:00
Shay Levy 87f726141a
Fix ollama history trimming test (#140538) 2025-03-13 19:41:45 +00:00
Maciej Bieniek fa57d57215
Fix Shelly diagnostics for devices without WebSocket Outbound support (#140501)
* Don't assume that `ws` is always in config

* Fix device
2025-03-13 20:58:09 +02:00
Paulus Schoutsen 55895df54d
Switch more TTS core to async generators (#140432)
* Switch more TTS core to async generators

* Document a design choice

* robust

* Add more tests

* Update comment

* Clarify and document TTSCache variables
2025-03-13 13:24:44 -04:00
Paulus Schoutsen f32bb1a318
Assist satellite to use TTS tokens for announcements (#140336)
* Migrate Assist Satellite to use token

* Fix tests

* Fix tests
2025-03-13 08:36:38 -05:00
Erik Montnemery 427aa55789
Correct fallback to state in state machine when processing statistics (#140396) 2025-03-13 09:28:15 +01:00
Pieter Viljoen ffa6f42c0e
Use `runtime_data` to store coordinator state (#140486)
Use runtime-data to save coordinator state
2025-03-13 08:52:42 +01:00
Pete Sage 1f6658fca0
Prevent ipv6 discovery messages for Sonos (#139648) 2025-03-12 15:19:09 -04:00
dontinelli d3376f31d0
Bump fyta_cli to 0.7.1 (#140452) 2025-03-12 15:29:43 +01:00
J. Nick Koston 06019e7995
Split timeout in lutron_caseta to increase configure timeout (#138875) 2025-03-12 10:59:36 +00:00
Austin Mroczek 2f1ff5ab95
TotalConnect refactor tests (#140240)
* refactor button

* refactor test_options_flow
2025-03-12 09:52:28 +02:00
epenet 593ae48aa2
Migrate mqtt tests to use unit system (#140376)
* Migrate mqtt tests to use unit system

* Fix param list

* Missed one

---------

Co-authored-by: jbouwh <jan@jbsoft.nl>
2025-03-12 09:47:34 +02:00
Jan-Philipp Benecke 0b41d056d3
Only do WebDAV path migration when path differs (#140402) 2025-03-11 20:05:02 +01:00
Andrew Sayre d8bcba9ef0
Enable HEOS automatic failover (#140394)
Failover
2025-03-11 13:00:43 -05:00
epenet a13911e00e
Rename test helpers module in mqtt (#140375)
* Rename test helpers module in mqtt

* missed a file
2025-03-11 18:00:51 +01:00
Paulus Schoutsen 0ba5711603
Add TTS token to TTS-END event (#140333) 2025-03-11 17:54:39 +01:00
Lincoln Kirchoff 95afebceb4
Add modbus climate hvac action (#139864)
* Added the hvac action attribute for modbus climate entities.

* Fixed issue in hvac action unit test, was incorrectly referencing the hvac mode attribute.

* Fixed the modbus climate test for hvac action, it now correctly checks that hvac actions in the config match HVACActions.

* Made changes recommended by @crug80 to remove dead code and to add ability to use input or holding register for hvac action.

* Moved action test case in test_climate.py

* Updated comment for `test_service_climate_action_update`

* Fixed ruff formatting error.

* Addressed request to update labels from `state_*` to `action_*`
2025-03-11 15:27:47 +00:00
Joost Lekkerkerker 71159c755f
Delete subscription on shutdown of SmartThings (#140135)
* Cache subscription url in SmartThings

* Cache subscription url in SmartThings

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Fix

* Bump pysmartthings to 2.7.1

* 2.7.2

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-03-11 15:33:32 +01:00
Luke Lashley 3c57b12cd1
Fix bug with all Roborock maps being set to the wrong map when empty (#138493)
* Fix bug with all maps being set to the same when empty

* fix parens

* fix other parens

* rework some of the logic

* few small updates

* Remove test that is no longer relevant

* remove updated time bump
2025-03-11 07:31:20 -07:00
Pete Sage 6c54f8dff2
Fix browsing Audible Favorites in Sonos (#140378)
* initial commit

* updates

* update test data
2025-03-11 14:56:41 +01:00
Joost Lekkerkerker 536109251e
Make sure SmartThings light can deal with unknown states (#140190)
* Fix

* add comment

* Make light unknown

* Make light unknown
2025-03-11 14:47:13 +01:00
epenet 1c242a6602
Migrate homekit tests to use unit system (#140372) 2025-03-11 15:10:20 +02:00
Joost Lekkerkerker 0e7a083847
Handle incomplete power consumption reports in SmartThings (#140370) 2025-03-11 14:10:06 +01:00
epenet 25d6974137
Migrate balboa tests to use unit system (#140371) 2025-03-11 15:09:50 +02:00
Jan-Philipp Benecke d2124db3ec
Fix double space quoting in WebDAV (#140364) 2025-03-11 14:06:44 +01:00
Joost Lekkerkerker bc6d342919
Fix no temperature unit in SmartThings (#140363) 2025-03-11 14:03:15 +01:00
epenet daaa1486fc
Migrate lg_thinq tests to use unit system (#140365) 2025-03-11 14:54:21 +02:00
epenet 7826bb9323
Migrate google_assistant tests to use unit system (#140366) 2025-03-11 13:51:56 +01:00
epenet 289e94f270
Migrate gree tests to use unit system (#140358) 2025-03-11 14:38:44 +02:00
epenet b160ce21fc
Migrate google_assistant tests to use unit system (#140357) 2025-03-11 13:21:00 +01:00
Maciej Bieniek 98cf936ff5
Improve config flow for GIOS (#139935)
* Initial commit

* Use TYPE_CHECKING

* Update strings

* Remove default value

* Improve tests
2025-03-11 13:52:40 +02:00
Norbert Rittel 3199b538ee
Capitalize "HVAC" abbreviation in `fritzbox` integration (#140344)
* Capitalize "HVAC" abbreviation in `fritzbox` integration

* Update test_climate.py

* Update test_climate.py (2)
2025-03-11 11:12:22 +01:00
Artur Pragacz 4f25296c50
Improve dependencies resolution (#138502)
* Improve dependencies resolution

* Improve tests

* Better docstrings

* Fix comment

* Improve tests

* Improve logging

* Address feedback

* Address feedback

* Address feedback

* Address feedback

* Address feedback

* Simplify error handling

* small log change

* Add comment

* Address feedback

* shorter comments

* Add test
2025-03-11 10:12:23 +01:00
Tsvi Mostovicz 52408e67b2
Update hdate dependency to 1.0.3 (#137247)
* Update hdate version

* Update code to reflect changes from hdate==1.0.0

* Fix some tests

* Fix parasha tests

* Fix  holiday tests

* Cleanup holidays changes

* Zmanim objects should now access the local attribute

* Fix binary sensors

* Update test values on upcoming shabbat times

* Update hdate to 1.0.1

* Adapt to changes from 1.0.0 -> 1.0.1

* Change shabbat candle lighthing test scenario to 40 minutes as expected in Jerusalem

* Update to version 1.0.2

* Update keys based on updated nomenclature in library

* Update HolidayDatabase .get_all_names in test

* Make holiday type an ordered set

* Fix freeze_time

* Fix imports

* Fix tests and minor change

* Update hdate version 1.0.3, add migration method

* Fix migration code

* Add test for migration

* The change is not backwards compatible if config is not restored
2025-03-11 09:43:29 +01:00
Andrew Sayre 6e2148193a
Bump pyheos to v1.0.3 (#140310)
Bump pyheos v1.0.3
2025-03-11 09:18:31 +01:00
Andrew Jackson cdff2e4648
Add strict typing of post to Mastodon (#140299)
* Type post API

* Update quality scale
2025-03-11 09:11:46 +01:00
Antoine Reversat 37213503b1
Do not add outside temperature sensor for FGLair if reading is None (#140298)
* Do not add outside temperature sensor if reading is None

* Fix comments
2025-03-10 22:16:44 +00:00
Norbert Rittel bf50ee9b5e
Capitalize abbreviations in `lektrico` integration (#140311)
* Capitalize abbreviations in `lektrico` integration

* Update test_number.ambr

* Update test_binary_sensor.ambr

* Update test_binary_sensor.ambr

* Update test_number.ambr
2025-03-10 22:12:47 +00:00
Andrew Jackson 290116029b
Add strict typing of account & instance to Mastodon (#139739)
Add strict typing of account & instance
2025-03-10 15:54:18 +01:00
Brett Adams 8620309f9e
Add streaming to Teslemetry update platform (#140021)
* Update platform

* Tests

* fix tests
2025-03-10 15:06:40 +01:00
Erik Montnemery 219b441be0
Don't allow creating backups if Home Assistant is not running (#139499)
* Don't allow creating backups if hass is not running

* Revert "Don't allow creating backups if hass is not running"

This reverts commit 1bf545eb25.

* Set backup manager to idle only after Home Assistant has started

* Update according to discussion, add tests

* Add more test
2025-03-10 14:40:08 +01:00
Joost Lekkerkerker 76e76a417c
Fix dryer operating state in SmartThings (#140277) 2025-03-10 12:19:18 +01:00
Jan Bouwhuis 6284a83a34
Fix `client_id` not generated when connecting to the MQTT broker (#140264)
Fix client_id not generated when connecting to the MQTT broker
2025-03-10 11:04:49 +01:00
Maciej Bieniek e831b1b230
Add support for BH1750 illuminance sensor in Nettigo Air Monitor integration (#140242)
* Add support for BH1750 illuminance sensor

* Update strings

* Update test snapshot
2025-03-10 10:38:44 +02:00
Felipe Santos 8192f2ef2e
Fix ONVIF camera entities ids getting shuffled on reload (#139676) 2025-03-09 17:17:55 -10:00
Maciej Bieniek b3d640982d
Bump `nettigo_air_monitor` to version 4.1.0 (#140241)
* Bump nam to 4.1.0

* Update test snapshot
2025-03-10 01:29:25 +02:00
David Bonnes 93982241a2
Bump evohome-async to 1.0.4 to fix #140194 (#140230)
bump client, add test for fix  #140194
2025-03-09 23:45:47 +02:00
J. Diego Rodríguez Royo 1766f87620
Refresh Home Connect token during config entry setup (#140233)
* Refresh token during config entry setup

* Test 500 error

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-03-09 21:59:09 +01:00
Keith ff622af888
Add locking and unlocking feature to igloohome integration (#136002)
* - Added lock platform
- Added creation of IgloohomeLockEntity when bridge devices are included.

* - Migrated retrieval of linked_bridge utility to utils module.
- Added ability for lock to update it's own linked bridge automatically

* - Added mock bridge device to test fixture

* - Added snapshot test for lock module

* - Added bridge with no linked devices
- Added test for util.get_linked_bridge

* - Added handling of errors from API call

* - Bump igloohome-api to v0.1.0

* - Minor change

* - Removed async update for locks. Focus on MVP

* - Removed need for update on entity creation

* - Updated snapshot test

* - Updated snapshot

* - Updated to use walrus during lock entity creation
- Updated callback class for async_setup_entry based on lint suggestion

* - Set _attr_name as None
- Updated snapshot test

* Update homeassistant/components/igloohome/lock.py

* Update homeassistant/components/igloohome/lock.py

---------

Co-authored-by: Josef Zweck <josef@zweck.dev>
2025-03-09 20:47:13 +01:00
Martin Hjelmare f3a43e273a
Fix mysensors climate target temps (#140220)
* Test hvac node only hvac

* Assert supported features in all climate tests

* Fix mysensors climate target temperatures
2025-03-09 20:11:13 +01:00
msm595 befcd63221
Fix the order of the group members attribute of the Music Assistant integration (#140204) 2025-03-09 16:07:35 +01:00
Maciej Bieniek 8a67e89e91
Improve category map for air quality and pollen sensors in AccuWeather (#140193)
* Fix typo

* Improve category map for air quality and pollen

* Update test snapshot
2025-03-09 16:18:26 +02:00
Franck Nijhof e8069e1c07
Add template functions: md5, sha1, sha256, sha512 (#140192) 2025-03-09 16:15:27 +02:00
Jan Bouwhuis 1a46edffaa
Deprecate use of invalid unit of measurement for mqtt sensor (#140164)
* Deprecate use of invalid unit of measurement for mqtt sensor

* Update learn more URL to point to user docs instead

* typo
2025-03-09 14:20:31 +01:00
Manu e2d4e8b65d
Add create_todo action to Habitica integration (#140090) 2025-03-09 13:47:15 +01:00
Simone Chemelli 03aff0d662
Use CONF_* const in Shelly tests (#140189) 2025-03-09 13:07:20 +01:00
J. Nick Koston d9d47f7203
Migrate shelly Bluetooth scanner to use correct MAC address (#140180) 2025-03-09 13:28:56 +02:00
Artur Pragacz f0c5e00cc1
Fix conversation trigger with variables (#140066) 2025-03-08 22:23:24 -05:00
Jan Bouwhuis 0d3011f0fb
Revert "Check if the unit of measurement is valid before creating the entity" (#140155)
Revert "Check if the unit of measurement is valid before creating the entity …"

This reverts commit 99e1a7a676.
2025-03-08 23:04:05 +01:00
Franck Nijhof 9aa8a786a5
Add template function: flatten (#140157) 2025-03-08 11:14:27 -10:00
Matthias Alphart 62c025fd12
Use HAs configured timezone for KNX expose time (#140158)
* Use HAs configured timezone for KNX expose time

* use `hass.config.async_set_time_zone` in tests
2025-03-08 21:46:15 +01:00
Franck Nijhof e54febdc1e
Add template function: typeof (#140081) 2025-03-08 09:16:21 -10:00
Jan Bouwhuis d94bdb7ecd
Fix MQTT JSON light not reporting color temp status if color is not supported (#140113) 2025-03-08 09:15:56 -10:00
Maciej Bieniek 06fd6442b6
Use the set language for condition sensors in Accuweather integration (#140107)
* Use the set language for condition sensors

* Update strings

* Update test snapshots

* Add missing string
2025-03-08 21:03:25 +02:00
Joost Lekkerkerker b910bc7802
Set device class for Oven Completion time in SmartThings (#140139) 2025-03-08 20:58:10 +02:00
Luke Lashley 6754bf2466
Send Roborock commands via cloud api when needed (#138496)
* Send via cloud api when needed

* Extract logic to helper function

* change to class method
2025-03-08 10:04:40 -08:00
Joost Lekkerkerker 105d9d5970
Handle None options in SmartThings (#140110)
* Handle None options in SmartThings

* Handle None options in SmartThings
2025-03-08 14:59:10 +01:00
Andrew Sayre 81e6b93529
Fix HEOS user initiated setup when discovery is waiting confirmation (#140119) 2025-03-08 14:57:44 +01:00
Joost Lekkerkerker f209d75f2c
Support null supported Thermostat modes in SmartThings (#140101) 2025-03-08 11:27:26 +01:00
Joost Lekkerkerker ea33925afc
Check support for thermostat operating state in SmartThings (#140103) 2025-03-08 11:22:09 +01:00
Andrew Sayre deea19db51
Fix HEOS discovery error when previously ignored (#140091)
Abort ignored discovery
2025-03-07 23:31:32 -05:00
J. Nick Koston e2c050ed40
Cache sensor precision calculation (#140019) 2025-03-07 16:14:22 -10:00
Franck Nijhof d4f205c366
Add template function: shuffle (#140077) 2025-03-07 20:36:17 -05:00
Petro31 293d455cba
Add check for invalid options with specific platforms (#140082) 2025-03-08 00:09:04 +01:00
Simone Chemelli 99b5adaef1
Cleanup add_to_hass method in Shelly tests (part 1) (#140075) 2025-03-07 23:04:49 +01:00
Josef Zweck 3b03a37f3b
Add file upload service to OneDrive (#139092)
* Add file upload service to OneDrive

* fix

* Add test

* docstring

* docstring

* Fix capitalization in description text.
2025-03-07 20:05:13 +01:00
Manu 3ccb7d80f3
Add `update_todo` action to Habitica (#139799)
* update_todo action

* fix strings
2025-03-07 19:40:17 +01:00
Joost Lekkerkerker e51154ae69
Restore SmartThings button event (#140044)
* Restore SmartThings button event

* Fix
2025-03-07 15:46:00 +01:00
Martin Hjelmare 27964e16c1
Clean up ondilo ico oauth2 (#139927) 2025-03-07 15:26:40 +01:00
Joost Lekkerkerker 0aa09a2d51
Only keep valid powerConsumptionReports in SmartThings (#140049)
* power consumption report

* Only keep valid powerConsumptionReports in SmartThings
2025-03-07 15:04:46 +01:00
Joost Lekkerkerker 62e45e393d
Fix SmartThings thermostat climate check (#140046)
* Fix SmartThings thermostat climate check

* Add tests
2025-03-07 14:56:31 +01:00
Brett Adams 935890e4e0
Fix shift state default in Teslemetry and Tessie (#140018)
* Fix again

* Fix Tessie

* Update snap
2025-03-07 13:28:21 +01:00
Abílio Costa 82d5304b45
Update whirlpool-sixth-sense to 0.19.1 (#139987) 2025-03-07 13:13:35 +01:00
David Bonnes c834944ee7
Fix evohome to gracefully handle null schedules (#140036)
* extend tests to catch null schedules

* add fixture with null schedule

* remove null schedules for now

* fic the typing for _schedule attr (is list, not dict)

* add valid schedule to fixture

* update ssetpoints only if there is a schedule

* snapshot to match last change

* refactor: dont update switchpoints if no schedule

* add in warnings for null schedules

* add fixture for DHW without schedule
2025-03-07 13:04:04 +01:00
Joost Lekkerkerker 73ef240921
Fix SmartThings disabling working capabilities (#140039) 2025-03-07 12:55:32 +01:00
Paulus Schoutsen d47481a30e
Track when an LLM expects to continue a conversation (#139810)
* Track when an LLM expects to continue a conversation

* Strip content

* Address comments
2025-03-06 22:52:29 -05:00
J. Diego Rodríguez Royo 3dd1fadc7d
Check operation state on Home Connect program sensor update (#140011)
Check operation state on program sensor update
2025-03-07 01:50:06 +01:00
Ivan Lopez Hernandez 2aa584ce39
Correctly retrieve only loaded Google Generative AI config_entries (#139999)
* Correctly retrieve only loaded config_entries

* Ruff
2025-03-06 13:17:33 -08:00
Markus Adrario eaad8ec49d
Add Homee select platform (#139534)
* homee select initial

* Finish select tests

* Add motor rotation

* fix snapshot after translation compilation

* string improvement

* last fixes

* fix review comments

* remove restore last known state

* readd wind monitoring state

* fix strings

* remove problematic selects

* remove motor rotation from strings

* fix review comments

* Update tests/components/homee/test_select.py

Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>

* add PARALLEL_UPDATES

* parallel updates for select, not light.

---------

Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>
2025-03-06 18:56:17 +00:00
Jan Bouwhuis 99e1a7a676
Check if the unit of measurement is valid before creating the entity (#139932) 2025-03-06 18:52:46 +01:00
Martin Hjelmare 4ff2309a90
Use mysensors config entry async_on_unload (#139978)
* Use config entry on unload in mysensors

* Test mysensors config entry load and unload

* Fix docstring
2025-03-06 18:50:47 +01:00
Joost Lekkerkerker 4bafdf5e4b
Add config entry level diagnostics to SmartThings (#139939)
* Add config entry level diagnostics to SmartThings

* Add config entry level diagnostics to SmartThings

* Add config entry level diagnostics to SmartThings
2025-03-06 18:48:39 +01:00
Joost Lekkerkerker f38a32477e
Fix SmartThings fan (#139962) 2025-03-06 18:47:37 +01:00
Regev Brody df1563daaf
Add Roborock buttons for starting routines (#139845) 2025-03-06 17:18:37 +00:00
Joost Lekkerkerker 9549b1488e
Fix SmartThings dust sensor UoM (#139977) 2025-03-06 17:52:05 +01:00
Erik Montnemery 6ba45a32c0
Update typing of `BackupAgent.async_get_backup` (#139923)
* Update typing of BackupAgent.async_get_backup

* Remove manual reset of frame helper
2025-03-06 17:25:34 +01:00
Artur Pragacz 88f18fdfdc
Improve loader dependency tests (#139916) 2025-03-06 15:20:08 +01:00
epenet 377e0a64d1
Reset helpers.frame._REPORTED_INTEGRATIONS in between tests (#139924)
* Reset helpers.frame._REPORTED_INTEGRATIONS in between tests

* Rename

* Apply suggestions from code review

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2025-03-06 13:57:13 +01:00
Ishima 485da61d3c
Check support for demand load control in SmartThings AC (#139616)
* Check support for demand load control in SmartThings AC

* Fix

---------

Co-authored-by: Joostlek <joostlek@outlook.com>
2025-03-06 13:42:23 +01:00
Joost Lekkerkerker edc763b7d2
Bump pysmartthings to 2.6.1 (#139936)
* Bump pysmartthings to 2.6.1

* Bump pysmartthings to 2.6.1
2025-03-06 13:22:49 +01:00
Erik Montnemery c51e644203
Prioritize integration_domain passed to helper.frame.report_usage (#139819)
* Prioritize integration_domain passed to helper.frame.report_usage

* Update tests

* Update tests

* Improve docstring

* Rename according to suggestion
2025-03-06 13:16:50 +01:00
Martin Hjelmare 6455daf092
Set Ondilo ICO diagnostic sensors (#139934) 2025-03-06 12:30:42 +01:00
Joost Lekkerkerker 052eed6bb3
Deduplicate climate modes in SmartThings (#139930)
* Deduplicate climate modes in SmartThings

* Deduplicate climate modes in SmartThings
2025-03-06 12:20:53 +01:00
epenet 83dd1af6d2
Drop report method from frame helper (#139920)
* Drop report method from frame helper

* Adjust test_prevent_flooding

* Adjust test_report_missing_integration_frame

* Adjust test_report_error_if_integration

* Remove test_report
2025-03-06 11:25:22 +01:00
Manu f2b07ea886
Add support for IronOS v2.23 (#139903)
Add support for IronOS 2.23
2025-03-06 11:23:10 +01:00
Petro31 aec6868af1
Add abstract class to trigger based template entities (#139650)
* add abstract class to trigger based template entities

* updates after merge of parent PR

* add comments

* add tests
2025-03-06 08:00:11 +01:00
Ivan Lopez Hernandez 8e35783164
Trim the Schema allowed keys to match the Public Gemini API docs. (#139876)
* Trim the Schema allowed types to match the Public API docs, not the SDK types as those do not match

* Testing
2025-03-05 18:34:11 -08:00
pglab-electronics cc30823726
Reimplement PGLab sensor to use a coordinator (#139789)
* Reimplement PGLab sensor to use a coordinator

* fix spelling mistake on coordinator name

* rename createDiscoverDeviceInfo function in snake_case

* adding suffix pglab_ to PGLabBaseEntity/PGLabEntity constructor parameters

* Fix docs of PGLabEntity::async_added_to_hass

* make coordinator able to return the sensor native value

* renaming PGLABConfigEntry in PGLabConfigEntry to be consistent with the integration naming

* renamed entry function arguments to config_entry to be less confusing

* pass config_entry to constructor of base class of PGLabSensorsCoordinator

* set the return value type of get_sensor_value

* store coordinator as regular instance attribute

* Avoid to access directly entity from discovery module

* Rearrange get_sensor_value return types
2025-03-05 20:33:59 +01:00
Erik Montnemery cc5c8bf5e3
Make helpers.frame.report_usage work when called from any thread (#139836)
* Make helpers.frame.report_usage work when called from any thread

* Address review comments, update tests

* Add test

* Update test

* Update recorder test

* Update tests
2025-03-05 19:37:34 +01:00
Erik Montnemery cfaf18f942
Improve the mock_integration_frame test fixture (#139850)
* Improve the mock_integration_frame test fixture

* Update test
2025-03-05 18:42:34 +01:00
Erik Montnemery 0f3409bd09
Fix stale test name in vacuum (#139853) 2025-03-05 17:07:43 +01:00
Erik Montnemery 1552aec416
Improve frame helper tests (#139843) 2025-03-05 16:13:09 +01:00
Allen Porter c0e5a549b6
Revert "Add scene support to roborock (#137203)" (#139840)
This reverts commit 379bf10675.
2025-03-05 14:36:20 +01:00
tdfountain 1c1a950c05
Add conditional support for ambient sensors in NUT (#139675)
* Conditionally remove ambient sensors if not present

* Create ambient sensors list and use list comprehension

* Update homeassistant/components/nut/sensor.py

Co-authored-by: J. Nick Koston <nick@koston.org>

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2025-03-05 12:12:56 +00:00
LG-ThinQ-Integration df2248bb82
Get temperature data appropriate for hass.config.unit in LG ThinQ (#137626)
* Get temperature data appropriate for hass.config.unit

* Modify temperature_unit for init

* Modify unit's map

* Fix ruff error

---------

Co-authored-by: yunseon.park <yunseon.park@lge.com>
2025-03-05 12:13:11 +01:00
Dan Raper 5f88354cb3
Add vehicle select to Ohme (#139795)
* Add vehicle select to Ohme

* mypy fixes

* Update homeassistant/components/ohme/select.py

Co-authored-by: Josef Zweck <josef@zweck.dev>

---------

Co-authored-by: Josef Zweck <josef@zweck.dev>
2025-03-05 10:59:47 +01:00
Erik Montnemery 09561aeb39
Improve frame helper tests (#139821) 2025-03-05 10:43:29 +01:00
Simone Chemelli 366c5c3f10
Improve unique_id tests for Shelly block devices (#139778)
* Improve unique_id tests for Shelly block devices

* type test

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2025-03-04 14:03:38 -10:00
Martin Hjelmare c671862d3f
Improve Home Connect appliances test fixture (#139787)
Improve Home Connect appliances fixture
2025-03-05 00:45:58 +01:00
Manu 50ba93042b
Add create_habit action to Habitica integration (#139673) 2025-03-04 21:43:49 +00:00
Erik Montnemery 3b9bb96784
Align google_drive with changes in BackupAgent (#139767) 2025-03-04 11:45:10 -08:00
epenet 7359013db0
Move ForkedDaapdUpdater setup to __init__ module (#139733)
* Move ForkedDaapdUpdater setup to __init__ module

* Adjust tests

* One more
2025-03-04 20:24:36 +01:00
Martin Hjelmare e8099fd3b2
Fix home connect available (#139760)
* Fix home connect available

* Extend and clarify test

* Do not change connected state on stream interrupted
2025-03-04 19:26:20 +01:00
Erik Montnemery e86fc88631
Minor improvement of hassio backup tests (#139775) 2025-03-04 18:20:55 +01:00
Erik Montnemery e55757dc82
Simplify error handling in BackupAgent when a backup is not found (#139754)
Simplify error handling in BackupAgent when backup is not found
2025-03-04 15:56:12 +01:00
Paulus Schoutsen c51a2317e1
Add timer support to VoIP (#139763) 2025-03-04 15:48:10 +01:00
Paulus Schoutsen 8a97c2bfca
VoIP block non-TTS announcements (#139658)
* VoIP block non-TTS announcements

* Migrate VoIP to use pipeline token
2025-03-04 08:02:58 -05:00
J. Nick Koston d38e046494
Bump bleak-esphome to 2.10.2 (#139731)
* Bump bleak-esphome to 2.10.0

changelog: https://github.com/Bluetooth-Devices/bleak-esphome/compare/v2.9.0...v2.10.0

* again for wheel fix

* disable name check since its a binary now
2025-03-04 11:49:44 +01:00
Markus Adrario 23dac3933f
Fix Homee brightness sensors reporting in percent (#139409)
* fix brigtness sensor having percent as unit.

* add test for percent-brightness-sensor

* remove valve position and update tests

* Removed test, because covered by Snapshots

* fix review comments

* move device calss to init.

* fix test

* fix review comments

* add battery sensor back to test fixture

* fix
2025-03-04 11:40:36 +01:00
J. Diego Rodríguez Royo 973fee9fe1
Delete refresh after a non-breaking error at event stream at Home Connect (#139740)
* Delete refresh after non-breaking error

And improve how many time does it take to retry to open stream

* Update tests
2025-03-04 11:07:44 +01:00
Marcel van der Veldt 9f780a5308
Fix ability to remove orphan device in Music Assistant integration (#139431)
* Fix ability to remove orphan device in Music Assistant integration

* Add test

* Remove orphaned device entries at startup as well

* adjust mocked client
2025-03-04 09:56:42 +01:00
Abílio Costa d87c963db5
Prevent zero interval in Calendar get_events service (#139378)
* Prevent zero interval in Calendar get_events service

* Fix holiday calendar tests

* Remove redundant entity_id

* Use translation for exception

* Replace check with voluptuous validator

* Revert strings.xml
2025-03-04 09:52:29 +01:00
Petro31 890d3f4af4
Add a base class for template entities to inherit from (#139645)
* add-abstract-template-entity-base-class

* review 1 changes
2025-03-04 07:23:05 +01:00
StaleLoafOfBread 890c672f8c
Add charging binary_sensor so front end can render battery icon properly (#139684)
* Add charging binary sensor

* Add charging binary sensor test
2025-03-03 20:21:05 +01:00
Simone Chemelli e28e4d210f
Bump aiocomelit to 0.11.2 (#139707) 2025-03-03 20:19:09 +01:00
Joost Lekkerkerker dcd2d42894
Abort SmartThings flow if default_config is not enabled (#139700)
* Abort SmartThings flow if default_config is not enabled

* Abort SmartThings flow if default_config is not enabled

* Abort SmartThings flow if default_config is not enabled
2025-03-03 20:07:07 +01:00
Elias Wernicke 62b6be900f
Add complete item intent function for todo component (#127806)
* add complete item intent

* fix error and add tests

* fix merge conflict

* improve error tests

* improve error tests

* add response_key

* add check for non completed

---------

Co-authored-by: Michael Hansen <mike@rhasspy.org>
2025-03-03 12:16:43 -06:00
Simone Chemelli aaecb47125
Add strict typing to Comelit (#139455)
* Add quality scale and strict typing to Comelit

* mypy

* fix strings

* remove quality scale

* revert quality scale changes

* improve typing

* letfover

* update typing based on new lib

* align to platform

* cleanup

* apply review comments (part 1)

* apply review comment ( part 2)

* apply review comments

* align

* align test data

* TypedDict

* better casting
2025-03-03 17:57:42 +01:00
Erik Montnemery 20e48054cf
Fix stale docstrings in onboarding tests (#139696) 2025-03-03 15:08:39 +00:00
cs12ag ee486c269c
Fix unique identifiers where multiple IKEA Tradfri gateways are in use (#136060)
* Create unique identifiers where multiple gateways are in use

Resolving issue https://github.com/home-assistant/core/issues/134497

* Added migration function to __init__.py

Added migration function to execute upon initialisation, to:
a) remove the erroneously-added config)_entry added to the device (gateway B gets added as a config_entry to a device associated to gateway A), and
b) swap out the non-unique identifiers for genuinely unique identifiers.

* Added tests to simulate migration from bad data scenario (i.e. explicitly executing migrate_entity_unique_ids() from __init__.py)

* Ammendments suggested in first review

* Changes after second review

* Rewrite of test_migrate_config_entry_and_identifiers after feedback

* Converted migrate function into major version, updated tests

* Finalised variable naming convention per feedback, added test to validate config entry migrated to v2

* Hopefully final changes for cosmetic / comment stucture

* Further code-coverage in test_migrate_config_entry_and_identifiers()

* Minor test corrections

* Added test for non-tradfri identifiers
2025-03-03 14:06:25 +01:00
Paulus Schoutsen aee891434f
Avoid duplicate chat log content (#139679) 2025-03-03 11:46:40 +01:00
Elias Wernicke 5ae7109561
Increase test coverage for todo intent (#135960)
* move intent tests to file

* add tests for errors
2025-03-02 22:04:25 +01:00
hydazz 4602c0a1c3
Add Night mode and `HVACAction` to Advantage Air (#137475)
* add night mode toggle

* populate AC's action

* set hvac action on zones

* update tests

* show zones as off if AC is off

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
2025-03-02 21:59:44 +01:00
karwosts fa40d02a07
Add model_id filter to device selector (#135646)
* Add model_id filter to device selector

* Rerun CI
2025-03-02 21:15:37 +01:00
Niklas Neesen 8536f2b4cb
Fix vicare exception for specific ventilation device type (#138343)
* fix for exception for specific ventilation device type + tests

* fix for exception for specific ventilation device type + tests

* New Testset just for fan

* update test_sensor.ambr
2025-03-02 20:57:13 +01:00
Nathan Spencer f76e295204
Add fault event to balboa (#138623)
* Add fault sensor to balboa

* Use an event instead of sensor for faults

* Don't set fault initially in conftest

* Use event type per fault message code

* Set fault to None in conftest
2025-03-02 20:24:27 +01:00
Joost Lekkerkerker fca4ef3b1e
Fix scope comparison in SmartThings (#139652) 2025-03-02 19:52:37 +01:00
Simon Lamon 40099547ef
Add typing/async to NMBS (#139002)
* Add typing/async to NMBS

* Fix tests

* Boolean fields

* Update homeassistant/components/nmbs/sensor.py

Co-authored-by: Jorim Tielemans <tielemans.jorim@gmail.com>

---------

Co-authored-by: Shay Levy <levyshay1@gmail.com>
Co-authored-by: Jorim Tielemans <tielemans.jorim@gmail.com>
2025-03-02 17:36:37 +01:00
mvn23 de4540c68e
Remove deprecated entity migration from opentherm_gw (#139641) 2025-03-02 17:28:11 +01:00
mvn23 d006d33dc0
Remove deprecated device migration from opentherm_gw (#139612) 2025-03-02 16:52:25 +01:00
J. Nick Koston 4c8a58f7cc
Fix broken link in ESPHome BLE repair (#139639)
ESPHome always uses .0 in the URL for the changelog,
and we never had a patch version in the stable
BLE version field so we need to switch it to
.0 for the URL.
2025-03-02 16:50:35 +01:00
MarioZG 8d6178ffa6
Add last updated attribute to UK transport train sensor (#139352)
added last updated attribute to train sensor

Co-authored-by: Franck Nijhof <git@frenck.dev>
2025-03-02 16:48:57 +01:00
Manu 0a3562aca3
Add prefix path support to pyLoad integration (#139139)
* Add prefix path configuration support

* fix typo

* formatting

* uppercase

* changes

* redact host
2025-03-02 16:45:57 +01:00
J. Nick Koston c9abe76023
Use multiple indexed group-by queries to get start time states for MySQL (#138786)
* tweaks

* mysql

* mysql

* Update homeassistant/components/recorder/history/modern.py

* Update homeassistant/components/recorder/history/modern.py

* Update homeassistant/components/recorder/const.py

* Update homeassistant/components/recorder/statistics.py

* Apply suggestions from code review

* mysql

* mysql

* cover

* make sure db is fully init on old schema

* fixes

* fixes

* coverage

* coverage

* coverage

* s/slow_dependant_subquery/slow_dependent_subquery/g

* reword

* comment that callers are responsible for staying under the limit

* comment that callers are responsible for staying under the limit

* switch to kwargs

* reduce branching complexity

* split stats query

* preen

* split tests

* split tests
2025-03-02 15:13:06 +01:00
rappenze 5ac3fe6ee1
Fibaro integration refactorings (#139624)
* Fibaro integration refactorings

* Fix execute_action

* Add test

* more tests

* Add tests

* Fix test

* More tests
2025-03-02 14:38:56 +01:00
Joost Lekkerkerker 3eadfcc01d
Still request scopes in SmartThings (#139626)
Still request scopes
2025-03-02 14:17:56 +01:00
Manu b0b5567316
Add `update_habit` action to Habitica integration (#139311)
* Add update_habit action

* icons
2025-03-02 14:04:13 +01:00
Jan Bouwhuis 220509fd6c
Fix body text of imap message not available in custom event data template (#139609) 2025-03-01 23:00:22 -05:00
Paulus Schoutsen 7293ae5d51
Fix type for ESPHome assist satellite events (#139618) 2025-03-01 22:59:14 -05:00
wittypluck 4a7fd89abd
Bump pyopenweathermap to 0.2.2 and remove deprecated API version v2.5 (#139599)
* Bump pyopenweathermap

* Remove deprecated API mode v2.5
2025-03-02 02:32:55 +01:00
G Johansson e3eb6051de
Fix duplicate unique id issue in Sensibo (#139582)
* Fix duplicate unique id issue in Sensibo

* Fixes

* Mods
2025-03-02 00:04:13 +01:00
J. Nick Koston 89b655c192
Fix handling of NaN float values for current humidity in ESPHome (#139600)
fixes #131837
2025-03-01 16:13:04 -06:00
Tatham Oddie f7927f9da1
Introduce demo valve (#138187) 2025-03-01 22:54:48 +01:00
Simone Chemelli 13918f07d8
Switch cleanup for Shelly (part 2) (#138922)
* Switch cleanup for Shelly (part 2)

* apply review comment

* Update tests/components/shelly/test_climate.py

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>

* apply review comments

---------

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>
2025-03-01 22:39:19 +01:00
Denis Shulyaka 1786bb9903
Use model list to check anthropic API key (#139307)
Anthropic model list
2025-03-01 22:28:48 +01:00
Manu 3588784f1e
Add create_reward action to Habitica integration (#139304)
Add create_reward action to Habitica
2025-03-01 22:27:31 +01:00
Paulus Schoutsen 2cce1b024e
Migrate Assist Pipeline to use TTS stream (#139542)
* Migrate Pipeline to use TTS stream

* Fix tests
2025-03-01 21:43:00 +01:00
peteS-UK c168695323
Clean up squeezebox build_item_response part 1 (#139321)
* initial

* final

* is internal change

* test data coverage

* Review fixes

* final
2025-03-01 14:18:30 -06:00
Jan Bouwhuis 913a4ee9ba
Improve certificate handling in MQTT config flow (#137234)
* Improve mqtt broker certificate handling in config flow

* Expand test cases
2025-03-01 21:14:08 +01:00
Joost Lekkerkerker b3f14d72c0
Don't require not needed scopes in SmartThings (#139576)
* Don't require not needed scopes

* Don't require not needed scopes
2025-03-01 20:47:42 +01:00
M-A 9fe08f292d
Bump env_canada to 0.8.0 (#138237)
* Bump env_canada to 0.8.0

* Fix requirements*.txt

* Grepped more

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
2025-03-01 19:58:45 +01:00
mvn23 9a331de878
Remove deprecated import from configuration.yaml from opentherm_gw (#139581)
* Remove deprecated import from configuration.yaml in opentherm_gw

* Remove tests for removed funcionality from opentherm_gw
2025-03-01 19:45:07 +01:00
Jan Bouwhuis 2de941bc11
Fix - Allow brightness only light MQTT json light to be set up using the `brightness` flag or via `supported_color_modes` (#139585)
* Fix - Allow brightness only light MQTT json light to be set up using the `brightness` flag or via  `supported_color_modes`

* Improve comment
2025-03-01 19:35:39 +01:00
Guido Schmitz 91eba0855e
Handle IPv6 URLs in devolo Home Network (#139191)
* Handle IPv6 URLs in devolo Home Network

* Use yarl
2025-03-01 13:29:50 +01:00
Joost Lekkerkerker 1852052dff
Add suggested area to SmartThings (#139570)
* Add suggested area to SmartThings

* Add suggested areas to SmartThings
2025-03-01 13:05:58 +01:00
Joost Lekkerkerker fe5cd5c55c
Validate scopes in SmartThings config flow (#139569) 2025-03-01 12:47:58 +01:00
Filip Agh 18217a594f
Fix update data for multiple Gree devices (#139469)
fix sync date for multiple devices

do not use handler for explicit update devices as internal communication lib do not provide which device is updated
use ha update loop

copy data object to prevent rewrite data from internal lib

allow more time to process response before log warning about long wait for response and make log message more clear
2025-03-01 11:50:24 +01:00
Juan Grande 8e7960fa0e
Fix bug in derivative sensor when source sensor's state is constant (#139230)
Previously, when the source sensor's state remains constant, the derivative
sensor repeats its latest value indefinitely.

This patch fixes this bug by consuming the state_reported event and updating
the sensor's output even when the source sensor doesn't change its state.
2025-03-01 09:10:35 +01:00
Joost Lekkerkerker d6750624ce
Add SmartThings hub connections (#139549) 2025-02-28 23:32:09 +01:00
J. Nick Koston 577b22374a
Revert polling changes to HomeKit Controller (#139550)
This reverts #116200

We changed the polling logic to avoid polling if all chars are marked as watchable
to avoid crashing the firmware on a very limited set of devices as it was
more in line with what iOS does. In the end, the user ended up replacing
the device in #116143 because it turned out to be unreliable in other
ways. The vendor has since issued a firmware update that may resolve
the problem with all of these devices.

In practice it turns out many more devices
report that chars are evented and never send events. After a few months
of data and reports the trade-off does not seem worth it since
users are having to set up manual polling on a wide range of
devices. The amount of devices with evented chars that do not
actually send state vastly exceeds the number of devices that
might crash if they are polled too often so restore the previous
behavior

fixes #138561
fixes #100331
fixes #124529
fixes #123456
fixes #130763
fixes #124099
fixes #124916
fixes #135434
fixes #125273
fixes #124099
fixes #119617
2025-02-28 23:25:50 +01:00
J. Nick Koston ee1fe2cae4
Bump bleak-esphome to 2.9.0 (#139467)
* Bump bleak-esphome to 2.9.0

changelog: https://github.com/Bluetooth-Devices/bleak-esphome/compare/v2.8.0...v2.9.0

* fixes
2025-02-28 16:17:44 -06:00
Joost Lekkerkerker db05aa17d3
Add SmartThings Viper device info (#139548) 2025-02-28 23:03:57 +01:00
Joost Lekkerkerker 2d6068b842
Create device for the hub in SmartThings (#139545)
* Create device for the hub in SmartThings

* Create device for the hub in SmartThings

* Create device for the hub in SmartThings
2025-02-28 22:58:35 +01:00
Joost Lekkerkerker 00b7c4f9ef
Improve SmartThings OCF device info (#139547) 2025-02-28 23:30:57 +02:00
StaleLoafOfBread ed06831e9d
Fix alert not respecting can_acknowledge setting (#139483)
* fix(alert): check can_ack prior to acking

* fix(alert): add test for when can_acknowledge=False

* fix(alert): warn on can_ack blocking an ack

* Raise error when trying to acknowledge alert with can_acknowledge set to False

* Rewrite can_ack check as guard

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Make can_ack service error msg human readable because it will show up in the UI

* format with ruff

* Make pytest aware of service error when acking an unackable alert

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2025-02-28 20:59:35 +01:00
Cameron Ring 0f615bbe4f
Add OptionsFlowHandler test for Lutron (#139463) 2025-02-28 20:50:39 +01:00
J. Nick Koston 5a6ffe1901
Update Bluetooth remote config entries if the MAC is corrected (#139457)
* fix ble mac

* fixes

* fixes

* fixes

* restore deleted test
2025-02-28 20:49:31 +01:00
rappenze 6ce48eab45
Use new pyfibaro library features (#139476) 2025-02-28 20:47:03 +01:00
Simone Chemelli 437e545116
Rework Comelit tests (#139475)
* Rework Comelit tests

* allign

* restore coverage
2025-02-28 20:45:47 +01:00
Paulus Schoutsen 1a80934593
Move TTS entity to own file (#139538)
* Move entity to own file

* Move entity tests
2025-02-28 20:40:13 +01:00
Joost Lekkerkerker 455363871f
Use last event as color mode in SmartThings (#139473)
* Use last event as color mode in SmartThings

* Use last event as color mode in SmartThings

* Fix
2025-02-28 20:39:49 +01:00
Joost Lekkerkerker 39bc37d225
Remove orphan devices on startup in SmartThings (#139541) 2025-02-28 20:33:25 +01:00
Paulus Schoutsen 90fc6ffdbf
Add support for continue conversation in Assist Pipeline (#139480)
* Add support for continue conversation in Assist Pipeline

* Also forward to ESPHome

* Update snapshot

* And mobile app
2025-02-28 13:15:31 -06:00
Joost Lekkerkerker 086c91485f
Set SmartThings delta energy to Total (#139474) 2025-02-28 20:03:24 +01:00
Paulus Schoutsen 70bb56e0fc
Text-to-Speech refactor (#139482)
* Refactor TTS

* More cleanup

* Cleanup

* Consolidate more

* Inline another function

* Inline another function

* Improve cleanup
2025-02-28 12:36:12 -06:00
Michael Hansen 49c27ae7bc
Check area temperature sensors in get temperature intent (#139221)
* Check area temperature sensors in get temperature intent

* Fix candidate check

* Add new code back in

* Remove cruft from climate
2025-02-28 13:02:30 -05:00
Michael Hansen fca19a3ec1
Move climate intent to homeassistant integration (#139371)
* Move climate intent to homeassistant integration

* Move get temperature intent to intent integration

* Clean up old test
2025-02-28 10:25:38 -05:00
Josef Zweck 0681652aec
Add diagnostics to onedrive (#139516)
* Add diagnostics to onedrive

* redact PII

* add raw data
2025-02-28 16:18:57 +01:00
Erik Montnemery 228a4eb391
Improve error handling in CoreBackupReaderWriter (#139508) 2025-02-28 14:25:35 +01:00
epenet 030a1460de
Log a warning when replacing existing config entry with same unique id (#130567)
* Log a warning when replacing existing config entry with same unique id

* Exclude mobile_app

* Ignore custom integrations

* Apply suggestions from code review

* Apply suggestions from code review

* Update config_entries.py

* Fix handler

* Adjust and add tests

* Apply suggestions from code review

* Apply suggestions from code review

* Update comment

* Update config_entries.py

* Apply suggestions from code review
2025-02-28 14:20:39 +01:00
Marcel van der Veldt b79c6e772a
Add new mediatypes to Music Assistant integration (#139338)
* Bump Music Assistant client to 1.1.0

* Add some casts to help mypy

* Add handling of the new media types in Music Assistant

* mypy cleanup

* lint

* update snapshot

* Adjust tests

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
2025-02-28 14:17:02 +01:00
Petro31 a296c5e9ad
Add floor_entities function and filter (#136509)
Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>
2025-02-28 11:44:01 +00:00
pglab-electronics 12cb349160
Add Sensor to PG LAB Integration (#138802) 2025-02-28 11:07:01 +00:00
Erik Montnemery 5cf56ec113
Adjust recorder backup platform tests (#139492) 2025-02-28 11:44:58 +01:00
Erik Montnemery 1be9836663
Fail recorder.backup.async_pre_backup if Home Assistant is not running (#139491)
Fail recorder.backup.async_pre_backup if hass is not running
2025-02-28 11:44:16 +01:00
Jan-Philipp Benecke 9d10e0e054
Change webdav namespace to absolut URI (#139456)
* Change webdav namespace to absolut URI

* Add const file
2025-02-28 11:18:16 +01:00
Joost Lekkerkerker 6953c20a65
Set SmartThings suggested display precision (#139470) 2025-02-28 09:15:13 +01:00
Ivan Lopez Hernandez 4e8186491c
Fix Gemini Schema validation for #139416 (#139478)
Fixed Schema validation for issue #139477
2025-02-27 19:10:42 -08:00
J. Nick Koston 0afdd9556f
Bump aioesphomeapi to 29.3.1 (#139465) 2025-02-27 21:45:13 +00:00