Commit Graph

81604 Commits (88d79d35ebe44d2050cf72570301f3f14ca29327)

Author SHA1 Message Date
Erik Montnemery 88d79d35eb
Simplify bring todo service schema (#124206) 2024-08-19 10:18:09 +02:00
epenet 25d33e96cc
Add missing hass type hint in component tests (g) (#124203) 2024-08-19 00:29:26 -07:00
tdfountain 1fdcbc3f15
Fix comment typo for _serial_from_status() in NUT (#124175)
Fix comment typo for _serial_from_status()
2024-08-18 22:14:54 +01:00
G Johansson 05aeb3fbd1
Bump yalesmartalarmclient to 0.4.0 (#124165)
* Bump yalesmartalarmclient to 0.4.0

* Fix various
2024-08-18 22:41:45 +02:00
G Johansson 50f9c1e5a4
Fix Pure AQI value sensor in Sensibo (#124151)
* fix Pure AQI value sensor in Sensibo

* Fix tests

* Make enum
2024-08-18 22:41:31 +02:00
Dylan Corrales 02b26ac4e6
Add state for alarm_control_panel in Prometheus (#123753)
* Prometheus: Add state for alarm_control_panel

* Prometheus: Add pytest for alarm_control_panel
2024-08-18 22:11:37 +02:00
G Johansson 11d2258afc
Improve code quality in Manual alarm (#123142)
* Improve code quality in Manual alarm

* Review

* Remove helper

* Remove unique id

* Reset demo and fix unique id

* next_state variable

* Fixes

* Is helper

* Fix unique id

* exception message

* Fix mypy
2024-08-18 21:31:44 +02:00
J. Nick Koston 14c2ca85ec
Refactor websocket handler to reduce complexity (#124174) 2024-08-18 14:17:17 -05:00
ilan 1010edf4bd
Add reconfigure flow to Madvr (#122477)
* feat: add reconfigure

* feat: add reconfigure step

* fix: don't abort unique on reconfigure

* fix: add success string

* fix: improve reconfigure

* fix: entry will never be none

* fix: update ip in abort

* fix: check unique id on reconfigure

* feat: add test in case of new device

* fix: fail reconfigure if mac changes

* fix: abort instead of form

* feat: use is, dont mock config flow

* fix: implement comments
2024-08-18 21:17:10 +02:00
Erik Montnemery 9e8260736b
Fix schema for input_datetime.set_datetime action (#124108) 2024-08-18 21:14:57 +02:00
Erik Montnemery 06d1bbc20f
Update recorder tests to async (#124161) 2024-08-18 21:14:41 +02:00
epenet 135ebaafa0
Add missing hass type hint in august tests (#124062) 2024-08-18 13:21:38 -05:00
Erik Montnemery ce2ffde22e
Update sensor recorder tests to async (#124061) 2024-08-18 13:20:58 -05:00
G Johansson 7d5ddbf51c
Bump python-holidays to 0.54 (#124170) 2024-08-18 20:05:41 +02:00
Ryan Mattson df58068e84
Update aiolyric to 2.0.1 (#123424)
update aiolyric to 2.0.1
2024-08-18 20:05:30 +02:00
epenet 7d326ff076
Add missing hass type hint in component tests (d) (#124074) 2024-08-18 18:57:29 +02:00
Shay Levy 49c59339d9
Shelly RPC - do not stop BLE scanner if a sleeping device (#124147) 2024-08-18 18:35:02 +03:00
John Hollowell 4ab3f1f41f
Add Venstar air filter sensors (#115832)
* Add sensors for HVAC filter usage

The number of hours and the number of days are not linked.
The number of hours is a sum of the hours the filter has been in use (fan running). The days is just the number of days since the filter was reset.

* Update filter sensors' names

* Split consumables entity descriptions and move names to translations

* Scale filterHours to match real-world time

It looks like the integer returned by the thermostat is actually 100 times the number of hours.

* Address review comments/changes
2024-08-18 17:22:44 +02:00
Artur Pragacz e6c61f207d
Rework Onkyo discovery and interview (#120668)
* Rework Onkyo discovery and interview

* Move class outside setup function

* Revert changing default name

* Rename to volume resolution
2024-08-18 17:14:33 +02:00
Lenn 4e7e896601
Disable entities for Motiontionblinds Bluetooth (#124159)
* Set entity_registry_enabled_default to False for RSSI sensor

* Use entity description

* Update homeassistant/components/motionblinds_ble/sensor.py

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

* Update homeassistant/components/motionblinds_ble/sensor.py

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

* Use entity_registry_enabled_by_default fixture for tests

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-08-18 17:14:05 +02:00
IceBotYT 55cf3b60eb
Add light platform to Nice G.O. (#124019)
* Add light platform to Nice G.O.

* Update homeassistant/components/nice_go/light.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-08-18 15:57:05 +02:00
epenet 1a628588b4
Improve type hints in scripts/auth (#124049) 2024-08-18 15:43:15 +02:00
epenet ba3872ff87
Add missing hass type in tests/*.py (#124048) 2024-08-18 15:42:41 +02:00
Eric Trudeau 69843e9ac4
Add support for Levoit EverestAir air purifiers (#123428) 2024-08-18 15:42:05 +02:00
J. Nick Koston a4fb4e76cb
Bump aiohttp to 3.10.4 (#124137)
changelog: https://github.com/aio-libs/aiohttp/compare/v3.10.3...v3.10.4
2024-08-18 08:39:56 -05:00
epenet 489ceab4b5
Add missing hass type hint in component tests (b) (#124065) 2024-08-18 15:39:26 +02:00
Antoine Reversat 1afed8ae15
Add Fujitsu FGLair integration (#109335)
* Add support for Fujitsu HVAC devices

* Add the entity code to .coveragerc

* Only include code that can fail in the try/except block

Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>

* Remove empty keys from manifest

* Remove VERSION as it's already the default

* Remve the get_devices function and use asyncio.gather to parallelize dev updates

* Move initial step to a function

* Let KeyError bubble up. If we are passed an invalid mode it's probably worth raising an exception.

* Await the gather

* Use the async version of the refresh_auth call

* Use the serial number as unique id

* Use HA constant for precision

* Use dev instead of self._dev

* Move to property decorated methods

* Remove bidict dependency

* Setup one config entry for our api credentials instead of per device

* Remove bidict from requirements

* Signout and remove our api object on unload

* Use app credentials from ayla_iot_unofficial

* Use entry_id as a key to store our API object

* Delete unused code

* Create reverse mappings from forward mapping instead of hardcoding them

* Clean up the property methods

* Only import part of config_entries we are using

* Implement suggested changes

* Fix tests to use new API consts

* Add support for reauth

* Use a coordinator instead of doing per-entity refresh

* Auto is equivalent to HEAT_COOL not AUTO

* Add ON and OFF to list of supported features

* Use the mock_setup_entry fixture for the reauth tests

* Parametrize testing of config flow exceptions

* Only wrap fallable code in try/except

* Add tests for coordinator

* Use self.coordinator_context instead of self._dev.device_serial_number

* Move timeout to ayla_iot_unofficial

* Add description for is_europe field

* Bump version of ayla-iot-unofficial

* Remove turn_on/turn_off warning

* Move coordinator creating to __init__

* Add the type of coordinator to the CoordiatorEntity

* Update docstring for FujitsuHVACDevice constructor

* Fix missed self._dev to dev

* Abort instead of showing the form again with an error when usernames are different

* Remove useless argument

* Fix tests

* Implement some suggestions

* Use a device property the maps to the coordinator data

* Fix api sign out when unloading the entry

* Address comments

* Fix device lookup

* Move API sign in to coordinator setup

* Get rid of FujitsuHVACConfigData

* Fix async_setup_entry signature

* Fix mock_ayla_api

* Cleanup common errors

* Add test to check that re adding the same account fails

* Also patch new_ayla_api in __init__.py

* Create a fixture to generate test devices

* Add a setup_integration function that does the setup for a mock config entry

* Rework unit tests for the coordinator

* Fix typos

* Use hass session

* Rework reauth config flow to only modify password

* Update name to be more use-friendly

* Fix wrong type for entry in async_unload_entry

* Let TimeoutError bubble up as teh base class handles it

* Make the mock ayla api return some devices by default

* Move test to test_climate.py

* Move tests to test_init.py

* Remove reauth flow

* Remove useless mock setup

* Make our mock devices look real

* Fix tests

* Rename fujitsu_hvac to fujitsu_fglair and rename the integration to FGLair

* Add the Fujitsu brand

* Add a helper function to generate an entity_id from a device

* Use entity_id to remove hardcoded entity ids

* Add a test to increase code coverage

---------

Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-08-18 15:37:33 +02:00
cdnninja 10c27c3189
Add Alt Core300s model to vesync integration (#124091) 2024-08-18 15:36:03 +02:00
epenet 975363b660
Add missing hass type hint in component tests (c) (#124067) 2024-08-18 15:35:31 +02:00
epenet c8797298ea
Add missing hass type hint in component tests (e) (#124075) 2024-08-18 15:34:59 +02:00
Duco Sebel 565f271c5c
Bumb python-homewizard-energy to 6.3.0 (#124150) 2024-08-18 15:21:04 +02:00
Michael 0c5a3fab22
Cleanup the Fritz!Smarthome light entity (#123488)
* use self.data when ever possible

* use short hand attributes for color mode and supported color modes

* color mode can change during runtime

* group executer jobs
2024-08-18 14:53:35 +02:00
Daniel Rozycki 04b0760e27
Skip NextBus update if integration is still loading (#123564)
* Skip NextBus update if integration is still loading

Fixes a race between the loading thread and
update thread leading to an unrecoverable error

* Use async_at_started

* Use local copy of _route_stops to avoid NextBus race condition

* Update homeassistant/components/nextbus/coordinator.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-08-18 14:24:44 +02:00
MarkGodwin e3287b93a5
Bump tplink-omada-api to 1.4.2 (#124136)
Fix for bad pre-registered clients
2024-08-18 14:23:47 +02:00
epenet c4fee124b3
Add missing hass type hint in flux tests (#124078) 2024-08-18 13:53:59 +02:00
Maciej Bieniek ec0012209d
Add missing sensors for Shelly Plus RGBW PM (#123589)
* Add missing sensors for Shelly Plus RGBW PM

* Add tests
2024-08-18 12:58:51 +03:00
Michael 59d72bb4ed
Use better config validation for integrations with legacy setup method, but only config entry setup (#123203)
use config_entry_only_config_schema over cv.removed

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-08-18 00:49:39 +02:00
J. Nick Koston 3b2893f2f4
Fix blocking I/O while validating core config schema (#124125) 2024-08-17 15:14:28 -05:00
Erik Montnemery 63d1cc10e2
Update homeassistant integration tests to async (#124117) 2024-08-17 12:11:32 -07:00
Allen Porter d72d4286db
Bump nest to 4.0.7 to increase subscriber deadline (#124131)
Bump nest to 4.0.7
2024-08-17 12:11:19 -07:00
Jordi 23fb4b50c9
Add brand selection to support additional brands who use the same API for AquaCell integration (#121817)
* Support harvey brand

* Update tests

* Moved the brand selection step to the same step as credentials

* Update tests/components/aquacell/test_init.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-08-17 20:45:24 +02:00
Erik Montnemery 08a76133c2
Simplify water_heater.set_temperature service schema (#124101) 2024-08-17 19:24:35 +02:00
J. Nick Koston 08234efedf
Bump aiohomekit to 3.2.3 (#124115) 2024-08-17 10:32:58 -05:00
J. Nick Koston 1bab373707
Revert "Exclude aiohappyeyeballs from license check" (#124116) 2024-08-17 10:10:45 -05:00
Artem Draft 85a47ffb68
Bump pybravia to 0.3.4 (#124113) 2024-08-17 16:30:26 +02:00
Pete Sage 153eef16bb
Add Sonos Test for plex media player enqueue options (#124120)
initial commit
2024-08-17 16:29:27 +02:00
Pete Sage 7efd8089c8
Add Sonos test for media_player play, pause, stop, previous, next (#122978)
* initial commit

* update to use constant

* retrigger checks
2024-08-17 13:47:27 +02:00
Erik Montnemery 533442f33e
Add async friendly helper for validating config schemas (#123800)
* Add async friendly helper for validating config schemas

* Improve docstrings

* Add tests
2024-08-17 11:01:49 +02:00
Erik Montnemery a7bca9bcea
Use BIGINT SQL type for ID columns (#123973)
Redo recorder ID migration from INT to BIGINT
2024-08-17 11:01:14 +02:00
Erik Montnemery 6c01e4b99c
Use BaseEventLoop._thread_id instead of a custom attribute (#124054)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-08-17 10:59:39 +02:00