Commit Graph

25137 Commits (improve_trigger_validation)

Author SHA1 Message Date
Jan Bouwhuis e389ff2537
Allow float for device_tracker location accuracy (#143604) 2025-04-24 23:09:18 +02:00
J. Nick Koston 5a6ce34352
Improve ESPHome test typing (#143617) 2025-04-24 10:41:37 -10:00
Paulus Schoutsen fdcb88977a
Add voice styles to HA Cloud (#143605)
* Add voice styles to HA Cloud

* Add seperator and extract util
2025-04-24 16:23:15 -04:00
Stefan Agner a584ccb8f7
Remove add-on changelog from cached information (#143526) 2025-04-24 22:14:46 +02:00
Shay Levy 575db4665d
Fix Switcher review comments (#143607) 2025-04-24 21:54:25 +02:00
J. Nick Koston 3aa1c60fe3
ESPHome quality improvements round 2 (#143613)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-04-24 09:51:33 -10:00
J. Nick Koston 01e2c3272b
Improve error message when ESPHome reconfigure selects an unexpected device (#143608) 2025-04-24 08:44:02 -10:00
J. Nick Koston 5afcd3e54e
Remove the previously deprecated ESPHome assist in progress binary sensor (#143536) 2025-04-24 08:43:48 -10:00
Abílio Costa 6457d46107
Raise `ConfigEntryNotReady` when fetching Whirlpool appliances fails (#143601) 2025-04-24 21:25:15 +03:00
Paulus Schoutsen fa80c0a88d
Bump hass-nabucasa to 0.96.0 (#143542)
* Bump hass-nabucasa to 0.96.0

* Adjust for new voice info format
2025-04-24 13:12:11 -04:00
Abílio Costa f86e85b931
Use None for Unknown state in Whirlpool sensor (#143582) 2025-04-24 15:12:45 +01:00
Åke Strandberg eb4fa635bf
Add miele light platform (#143119)
* WIP

* Add light platform

* Address review comments

* Address review and improve tests

* Address review comments in tests
2025-04-24 15:02:39 +02:00
Åke Strandberg e4fe7ba985
Fix bug in miele diagnostics (#143569)
Fix bug when redacting identifiers in diagnostics
2025-04-24 14:16:31 +02:00
Retha Runolfsson a55a6e5c48
Add diagnostics for switchbot integration (#143389) 2025-04-23 21:02:44 -10:00
Retha Runolfsson f7e3e207b7
Add parallel updates in lock and lock unit tests for switchbot integration (#143391)
Co-authored-by: J. Nick Koston <nick@koston.org>
2025-04-23 19:49:09 -10:00
Erwin Douna 6f0c59f1be
Tado bump 0.18.14 & race condition fix (#143531)
* Bump PyTado 0.18.14

* Add test
2025-04-24 08:44:17 +03:00
Abílio Costa e8c4d08b25
Make Whirlpool test check for success after failure (#143525) 2025-04-23 21:00:32 +03:00
J. Nick Koston 36081c69e0
Break apart zeroconf integration to prepare for WebSocket API (#143490) 2025-04-23 07:47:37 -10:00
J. Nick Koston 65db3c1164
Fix display issues with ESPHome encryption key steps (#143483) 2025-04-23 18:39:32 +02:00
Maciej Bieniek 11f02e48d7
Use aioshelly method to set the target temperature for Shelly BLU TRV (#143504) 2025-04-23 18:37:29 +02:00
Stefan Agner e41283a40a
Handle Tailscale hosts without client connectivity details (#143505) 2025-04-23 18:36:55 +02:00
Abílio Costa 738e39413d
Fix KeyError in energy websocket (#143519) 2025-04-23 18:34:48 +02:00
Robert Resch 199a274c80
Remove deprecated `hass.helpers` (#143514) 2025-04-23 17:24:25 +02:00
Manu f6d8868eb6
Fix some minor issues and nitpicks in ntfy integration (#143516)
Fix nitpicks
2025-04-23 16:28:58 +02:00
Michael 253cc377b4
Remove boost and off temperature workaround from AVM Fritz!SmartHome (#142863)
* remove workaround

* remove hvacmode from mapping dict
2025-04-23 16:12:35 +02:00
J. Diego Rodríguez Royo 1bfd585f3c
Adjust Home Connect max executions parameters (#143509)
Adjust max executions parameters to ensure that 1000 calls per day are not reached
2025-04-23 15:52:53 +02:00
Tobias Sauerwein 839eb0fe14
Bump pyatmo to 9.0.0 (#143512)
* wip

* fix

* fix

* fix

---------

Co-authored-by: Joostlek <joostlek@outlook.com>
2025-04-23 16:24:03 +03:00
Manu 3c174ce329
Add ntfy (ntfy.sh) integration (#135152)
Co-authored-by: Robert Resch <robert@resch.dev>
2025-04-23 14:52:13 +02:00
turakamou beab4e0d7c
Fix device tracker of freebox component to get devices from all interfaces (#142668) 2025-04-23 11:14:37 +01:00
Maciej Bieniek b785d5297a
Use aioshelly methods with Shelly RPC text and select entities (#143464) 2025-04-22 22:07:05 -10:00
epenet 6f9c8b2aa0
Add exception translations to Renault (#143452) 2025-04-23 08:40:31 +02:00
tdfountain 0b2e5cd253
Move device registry into function declaration for tests in NUT (#143349) 2025-04-22 13:11:14 -10:00
Manu bf1c138a3c
Fix some mistakes in the Habitica tests (#143465) 2025-04-22 20:53:09 +02:00
Paulus Schoutsen 00fc3e2c29
ESPHome Assist Satellite share TTS url in RUN_START (#143460) 2025-04-22 14:22:31 -04:00
Andre Lengwenus e56f6fafdc
Remove redundant parameter from config_entry data of LCN integration (#135912) 2025-04-22 18:00:30 +02:00
Paulus Schoutsen 8aa30b0ccb
Migrate VoIP to use Assist Pipeline TTS tokens (#139671)
* Migrate VoIP to use pipeline token

* migrate announcements to use TTS token
2025-04-22 10:24:24 -04:00
Manu 871a7c87bf
Fix error in diagnostics test in ista EcoTrend integration (#143456) 2025-04-22 15:52:25 +02:00
Marc Mueller 72337e4c77
Fix lg_thinq RuntimeWarning in tests (#143448) 2025-04-22 14:22:04 +02:00
Manu aedd60e74f
Add diagnostics platform to ista EcoTrend (#143428) 2025-04-22 14:12:43 +02:00
Manu 9249ea0dbb
Abort reauth flow on unique id mismatch in ista EcoTrend integration (#143430) 2025-04-22 14:11:09 +02:00
Josef Zweck 357ec7034e
Roll back changes on upload failure in onedrive (#143012) 2025-04-22 14:10:52 +02:00
Manu ccd1a08aca
Clear statistics on entry removal in ista EcoTrend integration (#143433) 2025-04-22 13:57:28 +02:00
Manu 6c7317fbc3
Increase test coverage in ista EcoTrend integration (#143426)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2025-04-22 13:37:13 +02:00
Josef Zweck 159e55296f
Make backup listing more resilient for onedrive (#143010)
Co-authored-by: Erwin Douna <e.douna@gmail.com>
2025-04-22 13:36:59 +02:00
Brett Adams 2e2faeb612
Add remaining Binary Sensor entities to Teslemetry (#143384) 2025-04-22 13:16:29 +02:00
Josef Zweck def11f9959
Change lamarzocco general update frequency (#143417) 2025-04-22 12:52:27 +02:00
Maciej Bieniek 88821b1d0e
Use aioshelly methods with Shelly RPC number entities (#142482) 2025-04-22 12:44:02 +02:00
epenet 06cc505956
Remember previous input in renault config flow (#143438) 2025-04-22 12:39:13 +02:00
epenet a3605921c9
De-duplicate test helper function (#143437)
* De-duplicate test helper function

* One more
2025-04-22 12:04:12 +02:00
Michael e9269a1d33
Remove deprecated yaml import from local file (#143405) 2025-04-22 11:50:28 +02:00
Michael 39807abc7d
Remove deprecated yaml import from Canary (#143410) 2025-04-22 11:49:01 +02:00
Michael fbe2370df7
Remove deprecated action call addon_update from Supervisor (#143404)
remove deprecated action call addon_update
2025-04-22 10:39:17 +02:00
Abílio Costa 44f2897919
Use `spec` for Whirlpool mocks (#143416)
Use `spec` to cleanup unecessary mock function definitions.
2025-04-22 10:07:18 +03:00
Norbert Rittel 2f6ad8ea4a
Fix sentence-casing in `intellifire` (#143435)
* Fix sentence-casing in `intellifire`

* Update test_sensor.ambr

* Update test_binary_sensor.ambr
2025-04-22 10:05:01 +03:00
Josef Zweck 1064588c00
Add last cleaned sensor to lamarzocco (#143414) 2025-04-22 07:02:16 +02:00
Markus Adrario f0cf620854
Add Homee wind_monitoring_state to numbers (#139848) 2025-04-21 21:21:15 +02:00
Michael 7030000348
Remove deprecated yaml import from Smarty (#143406)
remove deprecated yaml import
2025-04-21 18:20:57 +03:00
J. Nick Koston 849121a124
Improve human-readable name for new/reauth/reconfig in ESPHome (#143302)
* Improve human-readable prompt when requesting ESPHome credentials

Users reported difficulty identifying which device needs reauthentication, especially when names are similar (e.g., `power-meter` vs `power-meter-EEFF`). Previously, only the hostname was shown, which led to confusion. This change includes the config entry title or friendly name—when available—in the prompt to make device identification easier.

* Update homeassistant/components/esphome/config_flow.py

* add missing cover

* tweaks

* one more

* one more

* cover

* some are ``, some are not, make them all ``

* Apply suggestions from code review

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2025-04-21 10:25:14 -04:00
J. Nick Koston ba6ce28d3c
Add DHCP discovery subscribe websocket API (#143106)
* Add DHCP discovery subscribe websocket API

* fix circular import

* fixes

* fixes

* fixes

* reduce

* reduce

* reduce

* fix tests

* fix tests

* rework

* tests

* reduce number of lines changed

* reduce
2025-04-21 10:25:04 -04:00
J. Nick Koston 6698b3a1dc
Improve ESPHome abort messages for already-configured devices (#143289)
* Improve ESPHome abort messages for already-configured devices

Users often struggle to identify which ESPHome device is already configured—especially when replacing a device or renaming an existing one.
This PR improves the abort messages to include more helpful details, so users can pinpoint the conflicting device without needing to dig through the `core.config_entries` file manually.

* Update homeassistant/components/esphome/strings.json
2025-04-21 09:41:15 -04:00
J. Nick Koston 352ef0d009
Correct handling of entities with empty name for ESPHome devices (#143366)
Correct handling of empty name for ESPHome devices

If the name was set to "", ESPHome should treat this as if the
name is empty. Since protobuf treats empty fields as "" we need
to handle this as `None` internally as otherwise it leads to
friendly names like "Friendly Name " with a trailing space and
unexpected entity_id formats

fixes #132532
2025-04-21 09:38:29 -04:00
Simone Chemelli 7ea8827e69
Fix typos in UptimeRobot tests (#143397) 2025-04-21 14:11:51 +02:00
mdcdr 694c768666
Fix utility_meter wrong/old value on reset (#142951)
Co-authored-by: Erwin Douna <e.douna@gmail.com>
Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>
2025-04-21 12:45:57 +01:00
Retha Runolfsson da8339066b
Add light unit tests for switchbot (#140436) 2025-04-21 11:07:03 +01:00
Simone Chemelli ee3ee5b165
Fix Vodafone Station config entry unload (#143371) 2025-04-20 23:56:09 +02:00
Norbert Rittel 1ad60881cb
Fix spelling of "off-grid" in `tesla_fleet` (#143359)
* Fix spelling of "off-grid" in `tesla_fleet`

* Update test_number.ambr
2025-04-20 21:21:51 +03:00
Norbert Rittel 18cd389c77
Fix spelling of "off-grid" in `tessie` (#143358)
* Fix spelling of "off-grid" in `tessie`

* Update test_number.ambr
2025-04-20 21:21:29 +03:00
Norbert Rittel 26ea97cb44
Fix spelling of "off-grid" and "on-grid" in `teslemetry` (#143357)
* Fix spelling of "off-grid" and "on-grid" in `teslemetry`

* Update test_number.ambr
2025-04-20 21:21:06 +03:00
Norbert Rittel d7f6db5efd
Fix spelling of "off-grid" in `apsystems` (#143356)
* Fix spelling of "off-grid" in `apsystems`

* Update test_binary_sensor.ambr
2025-04-20 21:20:43 +03:00
karwosts 8699e69ae5
Optimize sliding window history_stats to not re-query the database every interval (#143279)
Co-authored-by: J. Nick Koston <nick@koston.org>
2025-04-20 08:08:28 -10:00
Marc Mueller a749ecceed
Add helper method to clear logger overwrites for tests (#143301) 2025-04-20 09:28:30 +02:00
Mick Vleeshouwer 6b09fe2377
Support new local token generation method in Overkiz (#143181)
* Initial implementation of new token method for Local API

* Improve translations

* Update text

* Bugfix

* Bugfix

* Bugfixes

* Fixes

* Bugfix

* Bugfix

* Fix

* small fix

* Fix tests

* Refactor token usage in Overkiz config flow tests

* Refactor local API configuration flow tests for clarity and update reauthentication logic

* Improve comments

* Update tests

* Update homeassistant/components/overkiz/strings.json

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

---------

Co-authored-by: Josef Zweck <josef@zweck.dev>
2025-04-20 06:29:18 +02:00
tdfountain eb642e8a06
Remove unused variable in test util for NUT (#143304) 2025-04-19 16:22:10 -10:00
tdfountain b97d8e163d
Fix type of port in test util for NUT (#143303) 2025-04-19 16:13:05 -10:00
tdfountain 7c0d2832cd
Add remove device support to NUT (#143293) 2025-04-19 16:07:42 -10:00
Marc Mueller 5843e63878
Add contextmanager to reset logger after set_level call in tests (#143295) 2025-04-20 02:13:01 +02:00
Marc Mueller 961f8afe53
Remove debug option in unifiprotect tests (#143296) 2025-04-19 14:00:22 -10:00
tdfountain 37769b94cd
Remove unnecessary persistent notification in test case for NUT (#143298)
Remove unnecessary persistent notification
2025-04-20 01:55:26 +02:00
Marc Mueller 8f4435019b
Reset logging level in esphome test (#143291) 2025-04-19 23:59:45 +02:00
Thomas55555 012f6b660c
Add more states to error sensor in Husqvarna Automower (#143270)
* Add more states to error sensor in Husqvarna Automower

* Use new common state

* tests and duplicates
2025-04-19 21:16:01 +02:00
Thomas55555 84a8c1312f
Add entity categories to Husqvarna Automower sensors (#143277) 2025-04-19 21:13:24 +02:00
Norbert Rittel a9e77dc0db
Use common state for "Error", fix sentence-casing in `tplink_omada` (#143278)
* Use common state for "Error", fix sentence-casing in `tplink_omada`

- replace "Error" with common state reference
- correct missing sentence-casing in several strings

* Update test_switch.ambr
2025-04-19 21:12:14 +02:00
Abílio Costa 626eb77060
Replace literals with consts in Govee Light Local tests (#143280) 2025-04-19 21:11:36 +02:00
Abílio Costa 7674f6b5aa
Turn on after setting parameters in Govee Light Local (#143233) 2025-04-19 19:56:56 +01:00
Maciej Bieniek 4e852911aa
Add `tracker power saving` binary sensor to Tractive integration (#142718)
* Add power saving binary sensor

* Update tests

* tracker_state_reason is not always present in hardware event
2025-04-19 17:30:15 +02:00
Paulus Schoutsen 30ab068bfe
Wyoming to use tokens instead of media source IDs for TTS (#139668)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2025-04-19 12:50:41 +02:00
Tsvi Mostovicz 6499ad6cdb
Cleanup tests for Jewish calendar integration (#138793) 2025-04-19 12:46:04 +02:00
Paulus Schoutsen 6f99b1d69b
TTS to use ffmpeg in streaming fashion (#140536) 2025-04-19 12:41:52 +02:00
J. Nick Koston 42c4ed85a1
Remove legacy format exception for ESPHome entity naming (#143049) 2025-04-19 12:41:07 +02:00
J. Nick Koston 3e3697dc7a
Add reconfigure support to ESPHome (#143132) 2025-04-19 12:40:07 +02:00
Allen Porter 3da77726d0
Allow selection of multiple LLM APIs in Anthropic (#143190) 2025-04-19 12:34:51 +02:00
Josef Zweck 9b8a35dbb3
Add sensors to lamarzocco (#143156)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-04-19 12:30:22 +02:00
Josef Zweck 7c7f18b501
Add preinfusion settings to lamarzocco (#143159) 2025-04-19 12:29:08 +02:00
Josef Zweck 09131d8647
Add more features to lamarzocco updates (#143157) 2025-04-19 12:07:11 +02:00
Josef Zweck 9c9c115d1a
Add websocket connectivity binary sensor to lamarzocco (#143161) 2025-04-19 11:52:56 +02:00
LG-ThinQ-Integration 83f2acddf8
Raise ConfigEntryNotReady mqtt setup fails In LG ThinQ (#140488)
Co-authored-by: yunseon.park <yunseon.park@lge.com>
2025-04-19 11:50:13 +02:00
Allen Porter 4483025856
Update Google Generative AI to allow multiple LLM APIs (#143191) 2025-04-19 11:44:12 +02:00
Allen Porter 61e4be4456
Update OpenAI conversation agent to allow multiple LLM APIs (#143189) 2025-04-19 11:43:27 +02:00
Retha Runolfsson f11f4510a2
Add switchot switches unit test with restore state (#143250) 2025-04-19 11:39:52 +02:00
Brett Adams 7c3df46570
Add typed listeners to Teslemetry binary sensor platform (#142238) 2025-04-19 11:29:14 +02:00
Josef Zweck 44450f9d7d
Fix reconfigure flow for lamarzocco (#143152) 2025-04-19 11:07:45 +02:00
Brett Adams c34e280fc2
Add typed listeners to Teslemetry sensor platform (#142236) 2025-04-19 10:56:29 +02:00
Joost Lekkerkerker d8d9449e2b
Fix SmartThings soundbar without media playback (#143170) 2025-04-19 09:53:31 +02:00
tmenguy c422bcf1e2
Make renault scan interval dynamic (#142964)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2025-04-19 09:51:41 +02:00
Retha Runolfsson 27b7fb6f91
Add humidifier unit test for switchbot (#143207) 2025-04-19 09:48:01 +02:00
J. Nick Koston a7922690c4
Adjust cover reproduce state to prefer setting positions if supported (#143226) 2025-04-18 11:34:33 -10:00
Jan Bouwhuis 2b4c5178f4
Fix Intergas climate entity category (#143240) 2025-04-18 22:09:50 +02:00
J. Nick Koston 59588f960d
Fix flakey Bluetooth options flow tests (#143215) 2025-04-18 10:08:17 -10:00
Joost Lekkerkerker d3b335f53f
Fix missing binary sensor for CoolSelect+ in SmartThings (#143216) 2025-04-18 20:41:18 +03:00
J. Nick Koston 9b1ab34352
Fix hassio mocking in ESPHome dashboard tests (#143212) 2025-04-18 14:11:36 +02:00
J. Nick Koston 221a8597da
Make unknown media source exception translatable (#143208) 2025-04-18 01:17:56 -10:00
J. Diego Rodríguez Royo 60293648dc
Create Home Connect active and selected program entities only when there are programs (#143185)
* Create active and selected program entities only when there are programs

* Test improvements
2025-04-18 00:09:52 +02:00
Josef Zweck b88bf74e13
Cleanup lamarzocco tests (#143176) 2025-04-17 20:53:47 +02:00
peteS-UK 8355727eb1
Fix for media content type case in Squeezebox (#143099) 2025-04-17 18:56:28 +02:00
Abílio Costa c0b2193718
Use freezer for time change in Whirlpool config flow test (#143162) 2025-04-17 16:14:21 +02:00
Abílio Costa f9bb7e404e
Improve Whirlpool config flow test completeness and naming (#143118) 2025-04-17 13:40:57 +01:00
Josef Zweck bbb8a1bacc
Migrate lamarzocco to pylamarzocco 2.0.0 (#142098)
* Migrate lamarzocco to pylamarzocco 2.0.0

* bump manifest

* Remove CONF_TOKEN

* remove icons

* Rename coordiantor

* use none for token

* Bump version

* Move first get settings

* remove sensor snapshots

* Change iot_class from cloud_polling to cloud_push

* Update integrations.json

* Re-add release url

* Remove extra icon, fix native step

* fomat

* Rename const

* review comments

* Update tests/components/lamarzocco/test_config_flow.py

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

* add unique id check

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-04-17 13:34:06 +02:00
Petar Petrov 0aaa4fa79b
Create empty Z-Wave JS device on smart start provisioning (#140872)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-04-17 13:18:48 +02:00
Paul Bottein 4ed81fb03f
Use firmware name from device class for matter update entity (#143140)
* Use firmware name from device class for matter update entity

* Update tests
2025-04-17 12:50:10 +02:00
Åke Strandberg 7d13c2d854
Add miele diagnostics platform (#142900) 2025-04-17 11:42:07 +02:00
Petar Petrov cadbb623c7
New ZWave-JS migration flow (#142717)
* ZwaveJS radio migration flow

* Partial migration flow

* basic migration flow

* report exact progress to frontend

* Display backup file path

* string tweak

* update tests

* improve exception handling

* radio -> controller

* test tweak

* test tweak

* clean up and test error handling

* more tests

* test progress

* PR comments

* fix tests

* test restore progress

* more coverage

* coverage

* coverage

* make mypy happy

* PR comments

* Apply suggestions from code review

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

* ruff

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-04-17 10:14:47 +02:00
J. Nick Koston 6a36fc75cf
Fix flakey ESPHome dashboard tests (attempt 2) (#143123)
These tests do not need a config entry, only the integration
to be set up. Since I cannot replicate the issue locally after
1000 runs, I switched it to use async_setup_component to minimize
the potential problem area and hopefully fix the flakey test

I also modified the test to explictly set up hassio to ensure
the patch is effective since we have to patch a late import

last observed flake: https://github.com/home-assistant/core/actions/runs/14503715101/job/40689452294?pr=143106
2025-04-17 08:36:34 +02:00
Josef Zweck bf69d4e0a8
Add search to media_player (#140321)
* Add search to media_player

* rename attr

* Add searchable property

* add pagination parameters

* Add suggested changes

* Apply suggestions

* Fix cast tests

* Fix first set of components

* update snapshot

* More tests

* more test fixes

* Rename attr

* first own test

* Add to google test

* Add service test

* Rename search query arg

* Add required feature to search service

* remove kwarg

* Update homeassistant/components/media_player/__init__.py

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>

* fix hue test

---------

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2025-04-16 23:09:16 +02:00
Guido Schmitz 3c1d93f503
Use entity_registry_enabled_by_default fixture in devolo Home Network (#143108) 2025-04-16 21:12:50 +02:00
Guido Schmitz 9fb7542a6f
Remove old test in devolo Home Network (#143095) 2025-04-16 17:29:44 +01:00
Guido Schmitz 42277955fa
Use icon translations in devolo Home Network device tracker (#143089) 2025-04-16 15:38:26 +02:00
Abílio Costa 950c332e36
Fix wrong return type in Whirlpool test helper (#143085) 2025-04-16 14:10:25 +02:00
Simone Chemelli 44d6f0bc2b
Increase uptime deviation for Shelly (#142996)
* Increase uptime deviation for Shelly

* fix test

* make troubleshooting easy

* change deviation interval

* increase deviation to 1m
2025-04-16 14:02:27 +02:00
rappenze 9bff88ad3e
Add diagnostics to fibaro integration (#143003)
* Add diagnostics to fibaro

* Enhance diagnostic test

---------

Co-authored-by: Josef Zweck <josef@zweck.dev>
2025-04-16 14:52:42 +03:00
Guido Schmitz 8de23b9559
Raise on failed switching in devolo Home Network (#143072) 2025-04-16 13:49:37 +02:00
Abílio Costa fbba0d9a21
Remove unused fixtures from Whirlpool (#143082) 2025-04-16 13:39:28 +02:00
Abílio Costa 5beb415ada
Refactor Whirlpool climate tests (#142689) 2025-04-16 12:03:40 +01:00
J. Nick Koston c32654db18
Add translated exception for ESPHome action call failures (#143067) 2025-04-15 21:19:05 -10:00
J. Nick Koston f68111c59f
Fix flakey ESPHome dashboard setup test (#143057) 2025-04-16 07:59:09 +02:00
Kamil Breguła 1d845623a8
Add links to enable Google Calendar API (#142377)
* Add links to enable Google Calendar API

* Update tests
2025-04-15 21:24:32 -06:00
J. Nick Koston ae306893ff
Handle name conflicts in ESPHome config flow (#142966) 2025-04-15 08:09:51 -10:00
Sid 285f7ec696
Add number platform to eheimdigital (#142835)
* Add number platform to eheimdigital

* Pylint

* Review

* Update homeassistant/components/eheimdigital/number.py

* Update homeassistant/components/eheimdigital/number.py

* Review

---------

Co-authored-by: Josef Zweck <josef@zweck.dev>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-04-15 16:45:56 +02:00
Brian Choromanski 595508bf7d
Check that time_pattern interval matcher is not zero (#142630)
Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2025-04-15 14:50:11 +01:00
Marc Mueller 4950bda406
Fix homeaticip_cloud RuntimeWarnings (#142961) 2025-04-14 23:32:52 +02:00
starkillerOG cf1cbc6d75
Add Reolink recording packing time (#142847) 2025-04-14 22:22:21 +02:00
Michael e418491f19
Add support for device sub units in AVM Fritz!SmartHome (#142845) 2025-04-14 22:19:14 +02:00
J. Nick Koston 8cb62341ef
Fix race to rename entity (#142584) 2025-04-14 21:42:23 +02:00
starkillerOG 40fd7cf852
Select correct Reolink device uid (#142864)
* Select correct device_uid

* Fix styling

* restructure

* Add test

* Update test_util.py

* Add explanation string
2025-04-14 20:12:34 +02:00
J. Nick Koston 9ce44845fe
Add a repair for ESPHome device conflicts (#142507) 2025-04-14 07:10:05 -10:00
cdnninja 82efa0893f
Vesync Display Switch Feature (#137493)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-04-14 17:26:21 +02:00
Hervé Cauwelier efc44d83bb
Add wind gust attribute to Météo France weather entity (#136839) 2025-04-14 15:41:10 +02:00
Petro31 9b274a0bc4
Correct template fan optimistic mode and supported features (#142414) 2025-04-14 15:40:29 +02:00
Barry vd. Heuvel aeca2842fe
Add WeHeat Flow sensors for pumps (#139390)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-04-14 15:39:44 +02:00
Emily Love Watson d44d07ffcf
Kulersky refactor to new Bluetooth subsystem (#142309)
Co-authored-by: J. Nick Koston <nick@koston.org>
2025-04-14 15:38:34 +02:00
karwosts 6a95abb831
Add effects translation/icon for Demo light (#142862) 2025-04-14 15:14:00 +02:00
hahn-th 6d74a6aa19
Refactor homematicip_cloud connection (#139081) 2025-04-14 15:01:55 +02:00
Joost Lekkerkerker 83c3275054
Remove deprecated state attributes in seventeentrack (#142622) 2025-04-14 14:40:08 +02:00
Joost Lekkerkerker b3eb0301ae
Remove YAML import in Point (#142627) 2025-04-14 14:37:45 +02:00
Joost Lekkerkerker f00dfd32d4
Remove config import in EmonCMS (#142624) 2025-04-14 14:30:41 +02:00
J. Nick Koston 514363f1c5
Use configured names in HomeKit for child accessories (#142531) 2025-04-14 14:24:43 +02:00
cdnninja f84f6aa713
Fix vesync purifier 131 tests (#142860) 2025-04-14 13:58:54 +02:00
Stefano Angeleri c8972a2234
Fix powerwall display of actual remaining battery, instead of reserved capacity (#142391) 2025-04-14 12:59:28 +02:00
Joost Lekkerkerker 583eb1a80e
Remove state attributes in Totalconnect (#142625) 2025-04-14 12:24:32 +02:00
J. Nick Koston 908a7c6991
Fix flakey bluetooth options flow tests (#142920) 2025-04-14 12:07:47 +02:00
J. Nick Koston 53b991fb54
Add preset modes to HKC fans (#142528) 2025-04-14 11:40:54 +02:00
J. Nick Koston a6643d8fb3
Add support for InkBird IAM-T1 (#142824) 2025-04-13 22:31:38 -10:00
J. Nick Koston 6f02550ac3
Include HKC BLE MAC in device info when available (#141900)
* Include HKC BLE MAC in device info when available

* update tests

* cover

* dry

* dry

* dry
2025-04-14 10:14:48 +02:00
J. Nick Koston 1aa996d5f0
Add debug logging to homekit when an sensor entity cannot be classified (#142707)
* Add debug logging to homekit when an sensor entity cannot be classified

In #132937 many hours were spent investigating an issue which
turned out to be that the entity did not have a device class
at startup because the group integration does not set the device
class if any of the underlying entities state is invalid.

closes #132937

* coverage

* Update tests/components/homekit/test_get_accessories.py
2025-04-14 10:12:27 +02:00
J. Nick Koston a340646e1e
Avoid starting ESPHome reauth when an unexpected device is found at the last address (#142814)
* Bump aioesphomeapi to 29.10.0

changelog: https://github.com/esphome/aioesphomeapi/compare/v29.9.0...v29.10.0

* Avoid starting ESPHome reauth when an unexpected device is found at the last address

fixes #133956

* coverage
2025-04-14 10:10:07 +02:00
J. Nick Koston 8767599ad4
Validate ESPHome mac address before updating IP on discovery (#142878)
* Bump aioesphomeapi to 29.10.0

changelog: https://github.com/esphome/aioesphomeapi/compare/v29.9.0...v29.10.0

* Validate ESPHome mac address before updating IP on discovery

In some cases the data coming in from discovery may be
stale since there is a small race window if devices
get new IP allocations. Since some routers do not update
their names right away and zeroconf has a non-zero TTL
there is a small window where the discovery data can be
stale. This is a rare condition but it does happen. With
aioesphomeapi 29.10.0+ and ESPHome 2025.4.x+ we can validate
the mac address even without the correct encryption key
which allows us to be able to always validate the MAC
before updating the IP from any discovery method.

* tweaks

* fix test
2025-04-14 10:02:46 +02:00
Joost Lekkerkerker 6d5c000e1f
Set entity categories for some entities in Syncthru (#142828)
Set entity categories for some entities
2025-04-14 09:51:41 +02:00
J. Nick Koston 8bcc4f4c82
Avoid setting up ESPHome dashboard if its been uninstalled (#142904)
* Avoid setting up ESPHome dashboard if its been uninstalled

* tweaks

* coverage

* coverage

* fix
2025-04-14 09:49:21 +02:00
J. Nick Koston 3389ee4b80
Bump inkbird-ble to 0.13.0 (#142885)
* Bump inkbird-ble to 0.12.0

changelog: https://github.com/Bluetooth-Devices/inkbird-ble/compare/v0.11.0...v0.12.0

* map discovery as well

* fix merge

* fix merge error

* bump again for more cleanups

* fix tests
2025-04-14 09:37:42 +02:00
Åke Strandberg cc6e2ef3f7
Spelling corrections in miele integration (#142907)
Spelling corrections
2025-04-14 09:36:02 +02:00
Glenn Waters 1a1c95af12
Bump Environment Canada library to 0.10.1 (#142882) 2025-04-13 18:39:50 -10:00
Allen Porter 658299ee21
Strip whitespace from new todo list item names (#142889)
Strip whitspace from new todo list item names
2025-04-13 17:42:42 -07:00
Allen Porter d91528648f
Update ollama to allow selecting mutiple LLM APIs (#142445)
* Update ollama to allow selecting mutiple LLM APIs

* Update homeassistant/helpers/llm.py

* Avoid gather since these don't do I/O

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2025-04-13 15:37:46 -07:00
J. Nick Koston 8b88272bc0
Add async_set_updated_data method to PassiveBluetoothProcessorCoordinator (#142879) 2025-04-13 11:08:22 -10:00
Jan Bouwhuis 7cf63d1985
Add transition and flash feature flags for MQTT JSON light (#142692) 2025-04-13 21:39:40 +02:00
Åke Strandberg 0b02b43b11
Add integration for Miele (#142498) 2025-04-13 21:09:41 +02:00
Simone Chemelli b25a0e2272
Small cleanup for Vodafone Station (#142867) 2025-04-13 18:57:00 +02:00
Mathijs van de Nes d6b4f1c95d
Ensure no ALPN is negotiated for SMTP (#142296) 2025-04-12 12:02:07 -10:00
Joost Lekkerkerker cba0cf0609
Migrate Syncthru to runtime data (#142775) 2025-04-12 20:59:59 +02:00
Joost Lekkerkerker ebe71a1a38
Add diagnostics support to Syncthru (#142776) 2025-04-12 20:22:12 +02:00
Joost Lekkerkerker 6feb9d4b4e
Add entity translations to Syncthru (#142774)
* Add entity translations to Syncthru

* Add entity translations to Syncthru

* Fix
2025-04-12 20:19:49 +02:00
Dionisis Toulatos 3489ea30dd
Fix MQTT device discovery when using node_id (#142784)
* Fix device discovery when using node_id

* tests

---------

Co-authored-by: jbouwh <jan@jbsoft.nl>
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2025-04-12 19:30:06 +02:00
J. Diego Rodríguez Royo eb19c7af32
Disable Home Connect appliance refresh when frequent disconnects are detected (#142615)
* Disable specific updates for an appliance when is done repeatedly

* Fix deprecation issues fix tests

* Fix message

* Avoid fetching appliance info also

* Apply suggestions

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

* Create specific RepairFlow for enabling appliance's updates

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-04-12 14:58:35 +02:00
Erik Montnemery 234c4c1958
Move backup backup onboarding API to an onboarding platform (#142713)
* Move backup backup onboarding API to an onboarding platform

* Move additional test from onboarding to backup

* Remove backup tests from onboarding
2025-04-12 09:41:54 +02:00
Robert Svensson c18d96e2f5
UniFi redact WLAN password (#142767)
* Recact password key word in WLAN diagnostic data

* Fix testdata
2025-04-12 01:15:15 +03:00
Manu b01eac3ba5
Fix error in recurrence calculation of Habitica integration (#142759)
Fix error in rrule calculation of Habitica integration
2025-04-11 19:39:40 +02:00
Simone Chemelli a3341c4330
Add full test coverage for Comelit humidifier platform (#141852)
* Add full test coverage for Comelit humidifier platform

* clean

* update snapshot

* apply review comment
2025-04-11 18:23:03 +02:00
Allen Porter ca07975ead
Fix Anthropic bug parsing a streaming response with no json (#142745) 2025-04-11 17:30:12 +02:00
Joost Lekkerkerker 7b78f6db17
Fix SmartThings gas meter (#142741) 2025-04-11 17:24:39 +02:00
Simone Chemelli 5816a24577
Cleanup snapshot call in tests (#142750) 2025-04-11 17:21:12 +02:00
Erik Montnemery 0105332476
Add WS command integration/wait (#142040)
* Add WS command integration/wait

* Add test

* Update homeassistant/components/websocket_api/commands.py

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

* Use helper setup.async_wait_component

* Add onboarding view

* Revert "Add onboarding view"

This reverts commit df3a1a0580.

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-04-11 16:09:15 +02:00
Erik Montnemery 4aca9cd66b
Move cloud onboarding API to an onboarding platform (#141978)
* Move cloud onboarding API to an onboarding platform

* Address review comments

* Add tests

* Move cloud onboarding tests to the cloud integration

* Address review comments

* Don't wait for platforms

* Add test

* Remove useless check for CLOUD_DATA
2025-04-11 16:02:27 +02:00
Martin Hjelmare cd45c5d886
Avoid Z-Wave config entry unload in test teardown (#142732) 2025-04-11 16:37:47 +03:00
Erik Montnemery 3b437c9b84
Add onboarding view /api/onboarding/integration/wait (#142688) 2025-04-11 13:43:18 +02:00
Martin Hjelmare af8ecdd48d
Improve Z-Wave reconfigure flow (#142475) 2025-04-11 12:15:11 +02:00
starkillerOG 16d9ccd423
Reolink migrate unique ID debugging (#142723)
* Filter out unexpected unique_ids

* correct

* Add test

* fix styling
2025-04-11 11:42:18 +02:00
Simone Chemelli e1d223f726
Add exceptions translation to SamsungTV (#142406)
* Add exceptions translation to SmasungTV

* Update strings.json

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

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2025-04-11 11:32:19 +02:00
Jan Bouwhuis 32da8c52f7
Add test to assert different private key types are accepted and stored correctly in MQTT config flow (#142703) 2025-04-11 00:58:48 +02:00
Jan Bouwhuis ea38639395
Validate MQTT device tracker location data before assigning (#141980)
* Validate MQTT device tracker location data before assigning

* Log warning for invalid gps_accuracy
2025-04-10 22:32:17 +02:00
Joost Lekkerkerker bf0d2e9bd2
Extract Syncthru coordinator in separate file (#142620) 2025-04-10 21:24:38 +02:00
Joost Lekkerkerker 6fafafbed0
Improve Syncthru config flow tests (#142618) 2025-04-10 21:16:12 +02:00
Erik Montnemery 5a09847596
Add backup support to the hassio OS update entity (#142580)
* Add backup support to the hassio OS update entity

* Remove meaningless assert
2025-04-10 20:56:02 +02:00
Jan Bouwhuis 505dfcbcd9
Use shorthand attributes for MQTT device tracker entity (#142671) 2025-04-10 19:51:36 +02:00
Erik Montnemery d4dbd76a0a
Revert "Add onboarding view /api/onboarding/integration/wait" (#142680)
This reverts commit 956cac8f1a.
2025-04-10 19:15:54 +02:00
Erik Montnemery eee6e8a2c3
Add WS command config_entries/flow/subscribe (#142459) 2025-04-10 16:58:46 +02:00
Abílio Costa a26cdef427
Refactor Whirlpool sensor tests (#142437) 2025-04-10 15:47:28 +01:00
Yuxin Wang 844515787b
Fallback to config entry ID as unique ID when serialno is not available for APCUPSD (#130852) 2025-04-10 16:45:46 +02:00
Erik Montnemery d5476a1da1
Store update settings in hassio store (#142526) 2025-04-10 11:55:07 +02:00
cnico ea50bbeb11
Flipr - Removal of obsolete code. (#142504)
Removal of obsolete code.
2025-04-10 10:48:03 +02:00
Imeon-Energy b51bb668c6
Add imeon inverter integration (#130958)
* Initial commit prototype with empty inverters

* Use modern methods and global variable for character strings

* Platform that get the value of the meter in an entity

* Add check if inverter already configured

* Add tests for config_flow

* Update "imeon_inverter_api" in manifest.json

* Update "imeon_inverter_api" in requirements_all.txt

* Remove async_setup, clean comments, use of const PLATFORM

* Use of global variable and remove configuration of device name

* Use of entry.data instead of user_input variable

* Remove services.yaml

* No quality scale

* Use of common string

* Add sensors, use of EntityDescription and '_attr_device_info'

* Remove name from config_flow tests

* Use sentence case and change integration from hub to device

* Check connection before add platform in config_flow

* Use of _async_setup and minor changes

* Improve sensor description

* Add quality_scale.yaml

* Update the quality_scale.json

* Add tests for host invalid, route invalid, exception and invalid auth

* Type more precisely 'DataUpdateCoordinator'

* Don't use 'self.data' directly in coordinator and minor corrections

* Complete full quality_scale.yaml

* Use of fixtures in the tests

* Add snapshot tests for sensors

* Refactor the try except and use serial as unique id

* Change API version

* Add test for sensor

* Mock the api to generate the snapshot

* New type for async_add_entries

* Except timeout error for get_serial

* Add test for get_serial timeout error

* Move store data out of the try

* Use sentence case

* Use of fixtures

* Use separates fixtures

* Mock the api

* Put sensors fake data in json fixture file

* Use of a const interval, remove except timeout, enhance lisibility

* Try to use same fixture in test_config_flow

* Try use same fixture for all mock of inverter

* Modify the fixture in the context manager, correct the tests

* Fixture return mock.__aenter__ directly

* Adjust code clarity

* Bring all tests to either ABORT or CREATE_ENTRY

* Make the try except more concise

* Synthetize exception tests into one

* Add code clarity

* Nitpick with the tests

* Use unique id sensor

* Log an error on unknown error

* Remove useless comments, disable always_update and better use of timeout

* Adjust units, set the model and software version

* Set full name for Battery SOC and use ip instead of url

* Use of host instead of IP

* Fix the unit of economy factor

* Reduce mornitoring data display precision and update snapshots

* Remove unused variable HUBs

* Fix device info

* Set address label 'Host or IP'

* Fix the config_flow tests

* Re evaluate the quality_scale

* Use of 'host' instead of 'address'

* Make inverter discoverable by ssdp

* Add test ssdp configuration already exist

* Add exemption in quality scale

* Test abort ssdp if serial is unknown

* Handle update error

* Raise other exceptions

* Handle ClientError and ValueError from the api

* Update homeassistant/components/imeon_inverter/quality_scale.yaml

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Josef Zweck <josef@zweck.dev>
2025-04-10 08:25:35 +02:00
Abílio Costa dd97d5bc7e
Move Whirlpool test and clean unused code (#142617) 2025-04-10 00:59:00 +02:00
Maarten Staa 9fe306f056
Add support for air purifiers in HomeKit (#142467)
* Add support for air purifier type in HomeKit.

Any fan and PM2.5 in the same device will be treated as an air purifier.

type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.

* Refactor to make AirPurifier class extend Fan.

* Ensure all chars are added before creating service

* Add support for switching automatic mode.

* Add test for auto/manual switch

* Add support for air purifier type in HomeKit.

Any fan and PM2.5 in the same device will be treated as an air purifier.

type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.

* Add support for air purifier type in HomeKit.

Any fan and PM2.5 in the same device will be treated as an air purifier.

type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.

* Refactor to make AirPurifier class extend Fan.

* Ensure all chars are added before creating service

* Add support for switching automatic mode.

* Add test for auto/manual switch

* Add support for air purifier type in HomeKit.

Any fan and PM2.5 in the same device will be treated as an air purifier.

type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.

* Improve fan config: allow setting fan type (fan or air purifier)

Be more explicit than assuming a fan is an air purifier if it has a PM2.5 sensor. Set defaults based on the presence of sensors.

* Fix return type annotation for fan/air purifier create_services

* Allow linking air purifier filter level/change indicator

* Remove no longer needed if statement in fan init

* Fix up types and clean up code

* Update homekit tests to account for air purifiers

* Fix pylint errors

* Fix mypy errors

* Improve type annotations

* Improve readability of auto preset mode discovery

* Test air purifier with 'Auto' preset mode

* Handle case with a single preset mode

* Test air purifier edge cases: state updates to same value, and removed linked entities

* Don't create 'auto mode' switch for air purifiers

This is already exposed as a target mode on the air purifier service itself

* Handle unavailable states in air purifier

Also don't remove device class when updating state in test

* Reduce branching in air purifier test

* Split up air purifier tests for with and without auto presets, to reduce branching

* Handle unavailable states in air purifier more explicitly

* Use constant for ignored state values

* Use a set for ignored_states

* Update tests/components/homekit/test_type_air_purifiers.py

---------

Co-authored-by: Andrew Kurowski <62596884+ak6i@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick+github@koston.org>
Co-authored-by: J. Nick Koston <nick@koston.org>
2025-04-09 10:20:21 -10:00
Christopher Fenner 76015740f8
Fix Quickmode handling in ViCare integration (#142561)
* only check quickmode if supported

* update snapshot

* revert
2025-04-09 20:36:41 +02:00
Simone Chemelli 816edb66c7
Add full test coverage for Fritz config_flow (#142418) 2025-04-09 20:22:26 +02:00
Joost Lekkerkerker ba629fbddb
Add Syncthru platform tests (#142596) 2025-04-09 12:00:56 -05:00
Erwin Douna b058b2574f
SMA add DHCP discovery (#135843)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-04-09 16:24:30 +02:00
Erik Montnemery 3ca1f07cc4
Remove meaningless asserts in some hassio tests (#142583) 2025-04-09 12:13:56 +02:00
Maciej Bieniek 06a2de4d1c
Fix Shelly initialization if device runs large script (#142487)
* Don't check the whole script to see if it generates events

* Fix tests

---------

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2025-04-08 20:53:44 -10:00
Joost Lekkerkerker 528ca49368
Improve Syncthru tests (#142338) 2025-04-08 23:55:00 +02:00
Abílio Costa f872dc8948
Use base entity class for Whirlpool climate (#142548)
* Use base entity class for Whirlpool climate

* Set model_id instead of model
2025-04-09 00:39:45 +03:00
Norbert Rittel 6c1f9e39c4
Improve friendly names of `rf_strength` and `wifi_strength` in `netatmo` (#141673)
* Improve friendly names of `rf_strength` and `wifi_strength` in `netatmo`

- Replace "Radio" with "RF strength" for `rf_strength`
- Replace "Wi-Fi" with "Wi-Fi strength" for `wifi_strength`

* Update test_sensor.ambr

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.ambr
2025-04-08 18:16:20 +02:00
J. Nick Koston 626935ee14
Move inkbird coordinator logic into coordinator.py (#142517)
* Move inkbird coordinator logic into coordinator.py

Not a functional change, one to one relocation

* Move inkbird coordinator logic into coordinator.py

Not a functional change, one to one copy

* Move inkbird coordinator logic into coordinator.py

Not a functional change, one to one copy
2025-04-08 16:59:01 +02:00
Martin Hjelmare 38bf06e179
Improve parameters in Z-Wave init tests (#142532) 2025-04-08 15:18:22 +01:00
Erik Montnemery 0ed7348d2d
Fix typos in hassio (#142529) 2025-04-08 15:05:19 +02:00
Martin Hjelmare cb09207cd7
Improve Supervisor addon_running test fixture (#142525) 2025-04-08 14:03:16 +02:00
Sanjay Govind 894cc7cc4d
Add sensor platform to bosch_alarm (#142151)
* add sensor platform to bosch_alarm

* add icon translations for sensors

* translate entity names

* translate entity names

* translate entity names

* update snapshots

* translate ready to arm sensor

* translate ready to arm sensor

* update tests

* update translations

* remove history sensor, we will replace it with an events sensor later

* fix tests

* fix tests

* fix tests

* update tests

* fix sensor links

* only call async_add_entities once

* convert area alarms to sensors based on type

* add sensor for alarms

* add icons

* cleanup area sensor

* add available

* loop over dict

* use entity description

* use entity description

* clean up entity descriptions

* observe_alarms and observe_ready

* refactor alarm_control_panel to use base entity

* remove more old sensors

* add unit of measurement

* update test snapshots

* use correct observer
2025-04-08 13:55:43 +02:00
Jan Bouwhuis 26663756a5
Allow max to be equal with min for mqtt number config validation (#142522) 2025-04-08 12:00:05 +02:00
tronikos 167e766811
Add translations for connection closed errors in Android TV Remote (#142523) 2025-04-08 10:10:23 +02:00
J. Nick Koston 08304ca5f3
Small improvements to the repairs testing helpers (#142511)
- Fix incorrect type on flow_id and issue_id
- Show the error when something goes wrong
2025-04-08 09:59:39 +02:00
Maciej Bieniek 480d645650
Bump aioshelly to version 13.4.1 (#142477)
* Bymp aioshelly to 13.4.1

* Catch InvalidHostError

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2025-04-08 08:58:08 +02:00
Martin Hjelmare dacc4c230d
Add more Z-Wave USB discovery (#142460) 2025-04-08 09:30:43 +03:00
Sanjay Govind cb07e64b47
Add reconfig flow to bosch_alarm (#142451)
* add reconfig flow to bosch_alarm

* change translation string key

* change translation string key

* cleanup

* cleanup

* Update homeassistant/components/bosch_alarm/config_flow.py

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

* fix linting

---------

Co-authored-by: Josef Zweck <josef@zweck.dev>
2025-04-08 08:22:39 +02:00
Ivan Lopez Hernandez c14380247b
Handle None on the response candidates in Google Generative AI (#142497)
* Added type checking on the candidates list

* Made error message a constant
2025-04-07 21:20:54 -07:00
J. Diego Rodríguez Royo 7ad13c8897
Delete Home Connect deprecated binary door sensor (#142490) 2025-04-07 20:23:38 +02:00
rappenze a787c6a31e
Add state multiplexer in fibaro integration (#139649)
* Add state multiplexer in fibaro integration

* Add unload test

* Adjust code comments

* Add event entity test

* .
2025-04-07 18:53:35 +02:00
G Johansson f2e4bcea19
Add subdiv aliases to workday (#133608)
* Add subdiv aliases to workday

* Fix

* Add lib test
2025-04-07 18:24:07 +02:00
RJPoelstra cd2313d2ca
Add tests to MotionMount integration (#137540)
* Add entity tests

* Add __init__ tests

* Cleanup

* Rename mock_motionmount_config_flow to mock_motionmount

* Remove unneeded PropertyMock

* Set defaults on mock_motionmount

* Test proper device is created

* Check whether proper device is created from test_init.py, also without mac

* Find callback and use that to update name
2025-04-07 18:16:44 +02:00
Retha Runolfsson 79b984d612
Add switchbot roller shade and hubmini matter support (#142168)
* Add roller shade and hubmini matter support

* add unit tests

* fix adv data
2025-04-07 16:25:00 +02:00
Erik Montnemery 2ed70ef241
Use mock_config_flow test helper in config tests (#142461) 2025-04-07 12:27:15 +02:00
J. Nick Koston 04dfa45db0
Add GATT polling support to INKBird (#142307)
* Add GATT polling support to INKBird

* reduce

* fixes

* coverage

* dry

* reduce

* reduce
2025-04-07 10:18:46 +02:00
J. Nick Koston 8d82ef8e36
Fix HKC showing hvac_action as idle when fan is active and heat cool target is off (#142443)
* Fix HKC showing hvac_action as idle when fan is active and heat cool target is off

fixes #142442

* comment relocation
2025-04-07 10:11:15 +02:00
Álvaro Fernández Rojas 7c488f1e54
Add thermostat battery and signal sensors for Airzone integration (#142390)
* airzone: add thermostat battery/signal sensors

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* tests: airzone: use snapshot_platform for sensors

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone: rename sensor strength

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-04-06 20:07:46 +02:00
Sid b35a44a0e0
Add sensor platform to eheimdigital (#138809)
* Add fan platform to eheimdigital

* Fix pylint

* Convert fan to sensor platform

* Remove unnecessary changes

* Add state update test

* Review

* Review

* Review
2025-04-06 14:46:19 +02:00
J. Nick Koston d7ca168b77
Fix flapping logger test (#142367)
The websocket_api logger might get adjusted from other tests
so we cannot be sure its set at debug in this test
2025-04-06 00:09:11 -10:00
Álvaro Fernández Rojas 62845fe4a7
Update aioairzone to v1.0.0 (#142385)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2025-04-06 11:01:26 +03:00
J. Nick Koston dcef86a30d
Add DHCP discovery support to Bond (#142372)
* Add DHCP discovery support to Bond

* fixes

* unique ids are always upper

* raise_on_progress=False for user

* Update tests/components/bond/test_config_flow.py

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

* assert unique id

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-04-05 14:22:23 -10:00
tdfountain cd7d7cd35c
Add reconfiguration flow to NUT (#142127)
* Add reconfiguration flow

* Check host/port/alias without comparing strings

* Replace repeat strings with references
2025-04-05 11:02:46 -10:00
Robert Resch 33cbebc727
Add some Xiaomi BLE sensor translations (#142109) 2025-04-05 10:51:43 -10:00
Arie Catsman 6da37691ff
Improve enphase_envoy diagnostics error handling to retain collected data (#142255)
Improve enphase_envoy Diagnostics error handling to retain collected data
2025-04-05 10:51:22 -10:00
Andrew Sayre 660cbc136f
Add move queue item HEOS entity service (#142301) 2025-04-05 15:05:01 -05:00
Sanjay Govind 9692d637ca
Add reauth flow to bosch_alarm (#142251)
* add reauth flow

* fix tests

* move not happy flow to its own test

* reference existing strings

* Update test_config_flow.py
2025-04-05 14:26:35 +02:00
elmurato 904265bca7
Add reauth flow to Pterodactyl (#142285)
* Add reauth flow

* Add common function to validate connection in config flow

* Fix remaining review findings
2025-04-05 13:56:52 +02:00
J. Nick Koston 1d10c81ff3
Add coverage to flux_led to ensure a user flow can replace an ignored entry (#142103)
* Ensure a flux_led user flow can replace an ignored entry

Allow ignored devices to be selected in the user step and replace the ignored entry.

Same as #137056 and #137052 but for flux_led

* works as-is was a problem with core.config_entries
2025-04-04 23:27:05 +02:00
J. Nick Koston 0abe57edaa
Avoid checking if debug logging is enabled on every WebSocket message (#142258)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2025-04-04 22:28:55 +02:00
Petro31 8d95fb3b31
Fix empty actions (#142292)
* Apply fix

* Add tests for alarm button cover lock

* update light

* add number tests

* test select

* add switch tests

* test vacuum

* update lock test
2025-04-04 22:17:52 +02:00
Franck Nijhof 69e241d2e6
Add Docker host networking issue detection (#142259)
* Add Docker host networking issue detection

* Update homeassistant/components/network/strings.json

Co-authored-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* Process review comments

---------

Co-authored-by: Jan-Philipp Benecke <jan-philipp@bnck.me>
2025-04-04 22:03:02 +02:00
Robert Resch 64e1735647
Fix circular mean by always storing and using the weighted one (#142208)
* Fix circular mean by always storing and using the weighted one

* fix

* Fix test
2025-04-04 21:19:15 +02:00
Ludovic BOUÉ 3c60bff7dc
Add support for Matter EVSE devicetype (#137189)
* Binary sensors

* Add tests

* Update strings

* Enable testing

* Add command_timeout to MatterEntityDescription

* Add entities

* Update strings.json

* Add sensors

* Add tests

* Move command_timeout keyword to MatterGenericCommandSwitch

* Icons

* Update snapshots

* Add tests for switch entity

* Fix switch tests

* Rename states

* Update strings.json

* Update snapshot

* Rename charging switch

* Remove MatterEntity

* Update strings.json

* Update snapshots

* Update snaphots 2/2

* Update strings

* Update test binary
2025-04-04 17:57:22 +02:00
Marc Mueller a05785529f
Fix RuntimeWarning in homeassistant_hardware (#142269) 2025-04-04 08:39:54 -04:00
Josef Zweck a407a3c98d
Fix skyconnect tests (#142262)
fix tests
2025-04-04 12:32:14 +02:00
Erwin Douna 986095482f
Tado add diagnostics platform (#142225)
* Add diagnostics platform

* Fix

* Update

* Fix
2025-04-04 12:16:19 +02:00
J. Diego Rodríguez Royo 5ca0441771
Do not fetch disconnected Home Connect appliances (#142200)
* Do not fetch disconnected Home Connect appliances

* Apply suggestions

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

* Update docstring

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-04-04 09:56:40 +02:00
Brett Adams 88455702bb
Slow down polling in Tesla Fleet (#142130)
* Slow down polling

* Fix tests
2025-04-04 08:51:09 +02:00
puddly 7152c86591
Hide broken ZBT-1 config entries on the hardware page (#142110)
* Hide bad ZBT-1 config entries on the hardware page

* Set up the bad config entry in the unit test

* Roll into a list comprehension

* Remove constant changes

* Fix condition in unit test
2025-04-04 03:09:13 +02:00
Ivan Lopez Hernandez 30e50d261d
Made Google Search enable dependent on Assist availability (#141712)
* Made Google Search enable dependent on Assist availability

* Show error instead of rendering again

* Cleanup test code
2025-04-03 16:23:59 -04:00
Joost Lekkerkerker 380fb6176b
Add preset mode to SmartThings climate (#142180)
* Add preset mode to SmartThings climate

* Add preset mode to SmartThings climate
2025-04-03 20:12:24 +02:00
Abílio Costa b2af1084f9
Update Whirlpool to 0.20.0 (#142119) 2025-04-03 15:35:37 +01:00
Sanjay Govind 7a9a4db8d7
Add diagnostics for bosch alam integration (#142165)
* add diagnostics to bosch_alarm

* use snapshot
2025-04-03 12:05:08 +02:00
elmurato 4a562b5085
Improve exception handling in Pterodactyl (#141955)
Improve exception handling
2025-04-03 08:45:06 +02:00
Michael 33d895bc7d
Use snapshot_platform in all platform test modules for AVM Fritz!SmartHome (#142093)
use snapshot_platform in all platform test modules
2025-04-03 00:14:07 +02:00
Erik Montnemery ec96e54f87
Avoid unnecessary reload in apple_tv reauth flow (#142079) 2025-04-02 10:39:35 -10:00
Michael 6b34c38d21
Fix state class for battery sensors in AVM Fritz!SmartHome (#142078)
* set proper state class for battery sensor

* fix tests
2025-04-02 17:00:29 +02:00
Marcel van der Veldt 0871bf13a4
Deprecate None effect instead of breaking it for Hue (#142073)
* Deprecate effect none instead of breaking it for Hue

* add guard for unknown effect value

* revert guard

* Fix

* Add test

* Add test

* Add test

---------

Co-authored-by: Joostlek <joostlek@outlook.com>
2025-04-02 15:39:31 +02:00
Joost Lekkerkerker 833a8be2d1
Improve SmartThings switch deprecation (#142072) 2025-04-02 15:33:17 +02:00
Erik Montnemery dfd86d56ec
Convert test fixtures to async (#142052) 2025-04-02 14:05:07 +02:00
Joost Lekkerkerker 93ea88f3de
Improve SmartThings sensor deprecation (#142070)
* Improve SmartThings sensor deprecation

* Improve SmartThings sensor deprecation

* Improve SmartThings sensor deprecation
2025-04-02 13:56:23 +02:00
Petro31 36857b4b20
Fix weather templates using new style configuration (#136677) 2025-04-02 12:38:48 +02:00
Erik Montnemery e02a6f2f19
Convert alexa test fixtures to async (#142054) 2025-04-02 11:00:13 +02:00
puddly 6a012498a5
Fix entity names for HA hardware firmware update entities (#142029)
* Fix entity names for HA hardware firmware update entities

* Fix unit tests
2025-04-01 18:43:01 -04:00
puddly 74c2060c49
Skip firmware config flow confirmation if the hardware is in use (#142017)
* Auto-confirm the discovery if we detect that the device is already in use

* Add a unit test
2025-04-01 21:39:25 +01:00
puddly 91c53e9c52
Fix data in old SkyConnect integration config entries or delete them (#141959)
* Delete old SkyConnect integration config entries

* Try migrating, if possible

* Do not delete config entries, log a failure
2025-04-01 20:27:06 +02:00
Abílio Costa 704777444c
Refactor Whirlpool sensor platform (#141958)
* Refactor Whirlpool sensor platform

* Rename sensor classes

* Remove unused logging

* Split washer dryer translation keys to use icon translations

* Address review comments

* Remove entity name; fix sentence casing
2025-04-01 20:02:24 +02:00
Mikko Koo c28a6a867d
Fix nordpool Not to return Unknown if price is exactly 0 (#140647)
* now the price will return even if it is exactly 0

* now the price will return even if it is exactly 0

* now the price will return even if it is exactly 0

* clean code

* clean code

* update testing code coverage

* change zero testing to SE4

* remove row duplicate

* fix date comments

* improve testing

* simplify if-return-0

* remove unnecessary tests

* order testing rows

* restore test_sensor_no_next_price

* remove_average_price_test

* fix test name
2025-04-01 19:45:23 +02:00
Joost Lekkerkerker 4bfc96c02b
Improve SmartThings deprecation (#141939)
* Improve SmartThings deprecation

* Improve SmartThings deprecation
2025-04-01 19:36:14 +02:00
Jan Bouwhuis faac51d219
Improve error handling and logging on MQTT update entity state updates when template rederings fails (#141960) 2025-04-01 19:22:32 +02:00
Markus Adrario 426e9846d9
Add Homee climate platform (#141616)
* Add climate platform

* Add climate tests

* Add service tests

* Add snapshot test

* Code optimazitions 1

* Add test for current preset mode.

* code optimization 2

* code optimization 3

* small tweaks

* another small tweak

* Last minute changes

* Update tests/components/homee/test_climate.py

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

* fix review comments

* typo

* more review fixes.

* maybe final review fixes.

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2025-04-01 18:08:36 +02:00
tmenguy da9b3dc68b
Better throttling handling for the Renault API (#141667)
* Added some better throttling handling for the Renault API, it fixes #106777 HA ticket

* Added some better throttling handling for the Renault API, it fixes #106777 HA ticket, test fixing

* Update homeassistant/components/renault/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/renault/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/renault/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/renault/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/renault/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/renault/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/renault/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/renault/renault_hub.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* bigger testsuite for  #106777 HA ticket

* bigger testsuite for  #106777 HA ticket

* bigger testsuite for  #106777 HA ticket

* bigger testsuite for  #106777 HA ticket

* Adjust tests

* Update homeassistant/components/renault/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/renault/renault_hub.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/renault/renault_hub.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/renault/test_sensor.py

* Update tests/components/renault/test_sensor.py

* Update tests/components/renault/test_sensor.py

* requested changes  #106777 HA ticket

* Use unkown

* Fix test

* Fix test again

* Reduce and fix

* Use assumed_state

* requested changes  #106777 HA ticket

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2025-04-01 17:14:21 +02:00
Simone Chemelli aaafdee56f
Remove un-necessary wait for background tasks in Comelit tests (#142000) 2025-04-01 16:05:46 +02:00
Louis Christ 32ee31b8c7
Use saved volume when selecting preset in bluesound integration (#141079)
* Use load_preset to select preset as source

* Add tests

* Fix

---------

Co-authored-by: Joostlek <joostlek@outlook.com>
2025-04-01 14:41:24 +02:00
Erik Montnemery 2427b77363
Use send_json_auto_id in websocket_api tests (#141994) 2025-04-01 14:31:49 +02:00
Paulus Schoutsen cbcd1929dd
Move Z-Wave JS smoke, CO, CO2, Heat, Water problem entities to diagnostic (#129922)
* Move Z-Wave JS smoke, CO, CO2, Heat, Water problem entities to diagnostic

* Update link + states

* Specify problem class explicitly instead of catch-all

* Heat alarm test is not a problem

* Also split out smoke alarm

* Document mapping rule

* add tests

* format

* update test

* review comments

* remove idle state from doc as it is ignored

---------

Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
2025-04-01 11:37:59 +02:00
epenet 3155c1cd4f
Add tests for renault QuotaLimitException (#141985) 2025-04-01 11:01:13 +02:00
Ben Jones 363b88407c
Handle empty or missing state values for MQTT light entities using 'template' schema (#141177)
* check for empty or missing values when processing state messages for MQTT light entities using 'template' schema

* normalise warning logs

* add tests (one is still failing and I can't work out why)

* fix test

* improve test coverage after PR review

* improve test coverage after PR review
2025-03-31 23:16:22 +02:00
puddly b758dc202f
Reload the ZBT-1 integration on USB state changes (#141287)
* Reload the config entry when the ZBT-1 is unplugged

* Register the USB event handler globally to react better to re-plugs

* Fix existing unit tests

* Add an empty `CONFIG_SCHEMA`

* Add a unit test

* Fix unit tests

* Fix unit tests for Linux

* Address most review comments

* Address remaining review comments
2025-03-31 09:10:24 -10:00
Michael Hansen 28dbf6e3dc
Add preannounce boolean for announce/start conversation (#141930)
* Add preannounce boolean

* Fix disabling preannounce in wizard

* Fix casing

* Fix type of preannounce_media_id

* Adjust description of preannounce_media_id
2025-03-31 20:29:07 +02:00
Erik Montnemery 4071eb76c7
Revert PR 136314 (Cleanup map references in lovelace) (#141928)
* Revert PR 136314 (Cleanup map references in lovelace)

* Update homeassistant/components/lovelace/__init__.py

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

* Fix dashboard creation

* Update homeassistant/components/lovelace/__init__.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-03-31 18:33:45 +02:00
Michael 58af3545f4
Correct further sensor categorizations in AVM Fritz!Box tools (#141911)
mark margin and attenuation as diagnostic and disable them by default
2025-03-31 13:18:44 +02:00
Joost Lekkerkerker fba11d8016
Don't create SmartThings entities for disabled components (#141909) 2025-03-31 13:36:46 +03:00
Erik Montnemery 86622cd29d
Remove unnecessary imports of http integration (#141899)
* Remove unnecessary imports of http integration

* Check reason for test failures

* Revert "Check reason for test failures"

This reverts commit 5ccf356ab0.

* Update tests
2025-03-31 11:30:20 +01:00
Joost Lekkerkerker c91a1d0fce
Fix SmartThings being able to understand incomplete DRLC (#141907) 2025-03-31 12:20:06 +02:00
Dan Raper 778a2891ce
Bump ohmepy to 1.5.1 (#141879)
* Bump ohmepy to 1.5.1

* Fix types for ohmepy version change
2025-03-31 11:44:01 +02:00
Retha Runolfsson 560c719b0f
Add switchbot cover unit tests (#140265)
* add cover unit tests

* Add unit test for SwitchBot cover

* fix: use mock_restore_cache to mock the last state

* modify unit tests

* modify scripts as suggest

* improve readability

* adjust patch target per review comments

* adjust patch target per review comments

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2025-03-31 11:42:31 +02:00
Franck Nijhof d5ab86edbf
Fix SmartThings climate entity missing off HAVC mode (#141700)
* Fix smartthing climate entity missing off HAVC mode:

* Fix tests

* Fix test

---------

Co-authored-by: Joostlek <joostlek@outlook.com>
2025-03-31 11:41:52 +02:00
Thomas55555 6aeb7f36f6
Handle 403 error in remote calendar (#141839)
* Handle 403 error in remote calendar

* tests
2025-03-31 11:40:14 +02:00
Erik Montnemery f6308368b0
Test behavior of statistic_during_period when circular mean is undefined (#141554)
* Test behavior of statistic_during_period when circular mean is undefined

* Improve comment
2025-03-31 10:43:57 +02:00
pglab-electronics c0e8f14745
Update support to external library pypglab to version 0.0.5 (#141876)
update support to external library pypglab to version 0.0.5
2025-03-31 10:25:48 +02:00
Marc Mueller 0be881bca6
Fix test RuntimeWarnings for homeassistant_hardware (#141884) 2025-03-31 07:24:02 +02:00
Paulus Schoutsen e88b321741
Ensure user always has first turn for Google Gen AI (#141893) 2025-03-30 23:31:45 -04:00
Allen Porter 0c4cb27fe9
Add OAuth support for Model Context Protocol (mcp) integration (#141874)
* Add authentication support for Model Context Protocol (mcp) integration

* Update homeassistant/components/mcp/application_credentials.py

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

* Handle MCP servers with ports

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2025-03-30 23:14:52 -04:00
J. Nick Koston 1639163c2e
Handle encryption being disabled on an ESPHome device (#141887)
fixes #121442
2025-03-30 21:25:24 -04:00
Marc Mueller 7336178e03
Fix test RuntimeWarnings for hassio (#141883) 2025-03-30 12:00:48 -10:00
tdfountain 1c16fb8e42
Set and check unique id of config in NUT (#141783)
* Set and check unique id in config

* Update homeassistant/components/nut/config_flow.py

Set unique ID and abort only if value is defined

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

* Add duplicate ID test case for multiple devices

* Add unique ID check to config flow step for UPS

* Update homeassistant/components/nut/__init__.py

Fix to only set config_entries unique ID if not None

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

* Remove duplicate config flow call

---------

Co-authored-by: J. Nick Koston <nick+github@koston.org>
Co-authored-by: J. Nick Koston <nick@koston.org>
2025-03-30 11:41:56 -10:00
tdfountain e81a08916a
Remove scan interval option from NUT (#141845)
Remove scan interval option and test case, migrate config and add migration test case
2025-03-30 22:34:45 +02:00
John Karabudak 85d2e3d006
Fix LLM to speed up prefill (#141156)
* fix: two minor LLM changes to speed up prefill

- moved the current date/time to the end of the prompt
- started sorting all entities by last_changed

* addressed PR comments

* fixed tests

* reduced scope of try/catch in LLM prompt

* addressed more PR comments

* fixed Anthropic test

* addressed another PR comment

* fixed remainder of tests
2025-03-30 13:30:40 -07:00
Eli Sand 5106548f2c
Fix generic_thermostat so it doesn't turn on when current temp is within target temp range (#138209)
* Don't turn on thermostat if temp is equal to target temp.

* Update strings to reflect logic change.

* Fix logic and add zero tolerance tests.

* Include tests for cool mode

* Removed unnecessary async_block_till_done calls
2025-03-30 19:43:13 +01:00
Lucas Mindêllo de Andrade 3d49000c75
Remove sunweg integration (#124230)
* chore(sunweg): remove sunweg integration

* Update homeassistant/components/sunweg/strings.json

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

* Update homeassistant/components/sunweg/manifest.json

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

* feat: added async remove entry

* Clean setup_entry; add tests

---------

Co-authored-by: Abílio Costa <abmantis@users.noreply.github.com>
Co-authored-by: abmantis <amfcalt@gmail.com>
2025-03-30 18:11:09 +01:00
Michael 963ea6141c
Fix the entity category for max throughput sensors in AVM Fritz!Box Tools (#141838)
correct the entity category for max throughput sensors
2025-03-30 17:46:03 +02:00
Paulus Schoutsen 86be626c69
Migrate ESPHome to use token instead of media source ID for legacy Assist Pipelines (#139665)
Migrate legacy ESPHome devices to use TTS token

Co-authored-by: Franck Nijhof <git@frenck.dev>
2025-03-30 16:53:49 +02:00
Michal Schwarz b3564b6cff
Fix order of palettes, presets and playlists in WLED integration (#132207)
* Fix order of palettes, presets and playlists in WLED integration

* fix tests: update palette items order

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
2025-03-30 16:14:56 +02:00
Marlon acbee815be
Update apsystems library to support battery inverter (#140086)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2025-03-30 16:11:22 +02:00
Allen Porter 4463e4c42b
Move roborock unique id to be based on roborock userid instead of email (#141337)
* Move roborock unique id to be based on roborock userid instead of email

* Remove unnecessary data update

* Update tests

* Add tests coverage for removal of config entry

* Use config entry migration

* Remove unused fixtues

* Remove unnecessary logging
2025-03-30 16:04:28 +02:00
Simone Chemelli 5e1bbd8bff
Add full test coverage for Comelit climate platform (#140460)
* Add climate tests for Comelit

* fix climate and humidifier

* fix code and tests

* fix humidifier

* apply review comment

* align post merge

* add more tests

* typo

* apply review comment

* ruff
2025-03-30 15:15:26 +02:00
Michael 4761207097
Add boost preset to AVM Fritz!SmartHome climate entities (#141802)
* add boost preset to climate entities

* add set boost preset test
2025-03-30 15:03:26 +02:00
Simone Chemelli b4a6ca63b3
Add full test coverage for Comelit sensor platform (#141813) 2025-03-30 15:02:15 +02:00
Simone Chemelli d3257d96d0
Add full test coverage for Comelit light platform (#141736)
* Add full test coverage for Comelit light platform

* cleanup
2025-03-30 14:59:56 +02:00
Aidan Timson 578fece13e
Fix System Bridge wait timeout wait condition (#141811)
* Fix System Bridge wait timeout wait condition

* Add DataMissingException as a timeout condition

* Add tests
2025-03-30 14:57:53 +02:00
Norbert Rittel 0eeb6b5fd5
Replace "Idle" with common state in `backup`, fix sentence-case (#141814)
* Replace "Idle" with common state in `backup`, fix sentence-case

* Update test_sensors.ambr
2025-03-30 14:56:36 +02:00
Norbert Rittel 8f96ccc835
Fix sentence-casing in a few strings of `bmw_connected_drive` (#141816)
* Fix sentence-casing in a few strings of `bmw_connected_drive`

Also replace "Standby" state with common string reference.

* Update test_select.ambr
2025-03-30 15:13:35 +03:00
Simone Chemelli 9ee79b87ee
Add full test coverage for Comelit switch platform (#141738)
* Add full test coverage for Comelit switch platform

* cleanup
2025-03-30 12:10:41 +02:00
Simone Chemelli 600aedc9a1
Add tests for Comelit cover platform (#141740)
* Add  tests for Comelit cover platform

* cleanup up
2025-03-30 12:04:00 +02:00
J. Nick Koston 65261de7cc
Migrate emulated_roku to use runtime_data to fix flakey tests (#141795) 2025-03-30 11:55:58 +02:00
J. Nick Koston d4970f81aa
Cleanup ESPHome update tests to avoid accessing integration internals (#141786)
We should not access DomainData directly in the test
2025-03-29 22:30:06 -10:00
tdfountain 7fbf15edc9
Add ambient state translations in NUT (#141772)
Add ambient state translations
2025-03-29 21:00:53 -10:00
tdfountain 2be2d54a5c
Replace hard coded attributes with constants for test cases in NUT (#141774)
Replace hard coded attributes with constants
2025-03-29 15:19:41 -10:00
puddly a219445751
Add helper methods to simplify USB integration testing (#141733)
* Add some helper methods to simplify USB integration testing

* Re-export `usb_device_from_port`
2025-03-29 11:26:37 -10:00
Simone Chemelli 43b83c855f
Align code styling in Vodafone Station tests (#141745) 2025-03-29 18:42:12 +01:00
Marcel van der Veldt 20e2de200f
Always set pause feature on Music Assistant mediaplayers (#141686) 2025-03-29 18:39:59 +01:00
J. Nick Koston 6d48fc183a
Fix ESPHome update entities being loaded before device_info is available (#141704)
* Fix ESPHome update entities being loaded before device_info is available

Since we load platforms when restoring config, the update
platform could be loaded before the connection to the
device was finished which meant device_info could still
be empty. Wait until device_info is available to
load the update platform.

fixes #135906

* Apply suggestions from code review

* move comment

* Update entry_data.py

Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>

---------

Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>
2025-03-29 17:53:01 +01:00
J. Nick Koston ea8392a4a1
Fix ESPHome entities not being removed when the ESPHome config removes an entire platform (#141708)
* Fix old ESPHome entities not being removed when configuration changes

fixes #140756

* make sure all callbacks fire

* make sure all callbacks fire

* make sure all callbacks fire

* make sure all callbacks fire

* revert

* cover
2025-03-29 17:48:51 +01:00
Simone Chemelli bcd296822d
Add full test coverage for Comelit alarm control panel (#141371)
* Add full test coverage for Comelit alarm control panel

* fix methods description

* revert unwanted change

* apply review comment
2025-03-29 17:29:37 +01:00
Martin Hjelmare 2549e2cc0f
Patch Z-Wave platforms in humidifier tests (#141732) 2025-03-29 17:59:13 +03:00
J. Diego Rodríguez Royo 09f6246d1b
Dynamically add Home Connect event sensors (#141198)
* Dynamically add Home Connect event sensors to HA

* Add and remove listeners on paired and depaired events

* Apply suggestion

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

* Update test

* Adjust English

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2025-03-29 12:53:34 +01:00
Joost Lekkerkerker d88f7b8600
Only trigger events on button updates in SmartThings (#141720)
Only trigger events on button updates
2025-03-29 10:17:38 +01:00
Franck Nijhof fcd4d3e2df
Add ability to subscribe to own YouTube channels (#141693) 2025-03-28 19:59:24 -04:00
Marcel van der Veldt f7a0a9fa41
Bump music assistant client to 1.2.0 (#141668)
* Bump music assistant client to 1.2.0

* Update test fixtures
2025-03-28 22:43:31 +01:00
puddly 5283e1a39f
Handle all firmware types for ZBT-1 and Yellow update entities (#141674)
Handle other firmware types
2025-03-28 20:38:16 +01:00
J. Nick Koston fd9f002e9f
Increase websocket_api allowed peak time to 10s (#141680)
* Increase websocket_api allowed peak time to 10s

fixes #141624

During integration reload or startup, we can end up sending a message for
each entity being created for integrations that create them from an external
source (ie MQTT) because the messages come in one at a time. This can overload
the loop and/or client for more than 5s. While we have done significant work
to optimize for this path, we are at the limit at what we can expect clients
to be able to process in the time window, so increase the time window.

* adjust test
2025-03-28 20:32:00 +01:00
Dan Raper 82b463b22f
Get Ohme to gold quality (#140617)
* Add reconfigure step, diagnostics and default disabled entities to Ohme

* Formatting

* Update tests

* Bugfixes and add tests for diagnostics and reconfigure

* Remove diagnostics changes

* Remove reconfigure changes

* Pull upstream strings.json
2025-03-28 18:41:00 +00:00
Jason Hunter 7ae397a211
Update Duke Energy package to fix integration (#141669)
* Update Duke Energy package to fix integration

* fix tests
2025-03-28 18:33:59 +00:00
puddly afb7fe0d40
Include ZBT-1 and Yellow in device registry (#141623)
* Add the Yellow and ZBT-1 to the device registry

* Unload platforms

* Fix unit tests

* Rename the Yellow update entity to `Radio firmware`

* Rename `EmberZNet` to `EmberZNet Zigbee`

* Prefix the `sw_version` with the firmware type and clean up

* Fix unit tests

* Remove unnecessary `always_update=False` from data update coordinator
2025-03-28 18:00:05 +01:00
Andrew Sayre ba00707d89
Add HEOS entity service to remove queue items (#141495)
* Add remove queue items service

* Tests

* Correct casing of ID

* Match docs
2025-03-28 11:09:01 -05:00