Commit graph

50357 commits

Author SHA1 Message Date
Joost Lekkerkerker
cecb12a93c
Remove name from faa_delays (#107418) 2024-01-07 11:27:13 +01:00
RJPoelstra
c833f275d6
Add select platform to Vogel's MotionMount integration (#107132) 2024-01-06 23:44:28 -10:00
Marc Mueller
e4ff51fa9a
Enable strict typing for youtube (#107440) 2024-01-07 10:43:54 +01:00
Marc Mueller
d8c79964c8
Enable strict typing for waqi (#107439) 2024-01-07 10:43:42 +01:00
Marc Mueller
be68feffdd
Enable strict typing for enphase_envoy (#107436) 2024-01-06 23:42:38 -10:00
Marc Mueller
5a39503acc
Enable strict typing for led_ble (#107437) 2024-01-06 23:41:54 -10:00
Marc Mueller
de3fde5901
Enable strict typing for oralb (#107438) 2024-01-06 23:41:31 -10:00
Aaron Bach
c96f9864c5
Remove leftover Guardian mixin (#107424) 2024-01-06 23:06:45 -07:00
Aaron Bach
e446857001
Clean up buggy Guardian switch context managers (#107426) 2024-01-06 23:06:28 -07:00
Aaron Bach
50fbcaf20f
Streamline exception handling in Guardian (#107053) 2024-01-06 12:56:19 -10:00
Elvio
fce869248c
Update Apprise to 1.7.1 (#107383) 2024-01-06 23:44:20 +01:00
Brandon Rothweiler
3f2170bd06
Bump py-aosmith to 1.0.6 (#107409) 2024-01-06 12:01:11 -10:00
Marc Mueller
4ea8c174f5
Improve homekit_controller typing (#107381) 2024-01-06 11:02:30 -10:00
Ben Morton
427f7a7866
Add support for the Spotify DJ (#107268)
* Add support for the Spotify DJ playlist by mocking the playlist response
Add error handling for playlist lookup to ensure it doesn't break current playback state loading

* Run linters
Add exception type to playlist lookup error handling

* Fix typo in comment

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-01-06 17:22:46 +01:00
Brandon Rothweiler
4af47a4815
Add diagnostics to A. O. Smith integration (#106343)
* Add diagnostics to A. O. Smith integration

* Bump py-aosmith to 1.0.4

* remove redactions from test fixture
2024-01-06 17:16:24 +01:00
Marc-Olivier Arsenault
94885b9868
remove marcolivierarsenault from ecobee codeowners (#107377) 2024-01-06 16:29:50 +01:00
Josef Zweck
7385da626e
Add new locks automatically to tedee integration (#107372)
* remove removed locks

* move duplicated code to function

* remove entities by removing device

* add new locks automatically

* add locks from coordinator

* remove other PR stuff

* add pullspring lock to test for coverage

* requested changes
2024-01-06 16:02:07 +01:00
Sid
9b1a8a1129
enigma2: fix exception when device in deep sleep, fix previous track (#107296)
enigma2: fix exception when device in deep sleep; previous track
2024-01-06 11:18:32 +01:00
Joost Lekkerkerker
a03ac3ddcd
Fix passing correct location id to streamlabs water (#107291) 2024-01-06 10:50:06 +01:00
Marc Mueller
3086d33261
Fix rainforest_raven typing (#107309) 2024-01-06 10:41:25 +01:00
Marc Mueller
902d5a79ca
Enable strict typing for p1_monitor (#107301) 2024-01-06 10:38:50 +01:00
Marc Mueller
135a718a0e
Enable strict typing for energyzero (#107300) 2024-01-06 10:33:22 +01:00
Marc Mueller
28c0c2d2ad
Enable strict typing for easyenergy (#107299) 2024-01-06 10:31:55 +01:00
J. Nick Koston
851ad21d11
Small cleanup to zeroconf properties matcher (#107342)
* Small cleanup to zeroconf properties matcher

- Switch to dict.items() to avoid dict key lookup
- return early when a match is rejected

* tweak
2024-01-06 10:16:57 +01:00
Aidan Timson
ba60290431
Fix support for play/pause functionality in System Bridge (#103423)
Fix support for play/pause functionality
2024-01-06 10:06:23 +01:00
jimmyd-be
ee67c97274
Add time entity to Renson (#105031)
* Add time entity to Renson

* Update homeassistant/components/renson/time.py

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

* remove deleted sensors from strings.json

* Fix Ruff issue

* Fixed loading issue

* Try to fix frozen error

* Revert "Try to fix frozen error"

This reverts commit 803104c2925e6d5acecc0a9d45170a0c85ee7f0e.

* Try to fix frozen error

* Revert "Try to fix frozen error"

This reverts commit 8ba2dcce9444fadcf6bf79e86295f93359b6d7b8.

* Update homeassistant/components/renson/time.py

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

* Change import + api argument

* use _attr_has_entity_name

* Update homeassistant/components/renson/time.py

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

---------

Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Jan-Philipp Benecke <github@bnck.me>
2024-01-06 09:27:34 +01:00
Paulus Schoutsen
f1d2868fd0
Add API to fetch Assist devices (#107333)
* Add API to fetch Assist devices

* Revert some changes to fixture, make a single fixture for an Assist device
2024-01-05 23:30:18 -05:00
nic
6201e81eca
Bump zm-py version to v0.5.3 for zoneminder (#107331)
zm-py version bump for zoneminder

Signed-off-by: Nic Boet <nic@boet.cc>
2024-01-05 19:19:35 -08:00
J. Nick Koston
c86d1b03fc
Disable thermobeacon voltage sensors by default (#107326) 2024-01-05 16:06:31 -10:00
Joost Lekkerkerker
49284fb469
Fix duplicate unique_ids in emonitor (#107320) 2024-01-05 13:33:04 -10:00
Shay Levy
ad3c78f848
Fix Shelly missing Gen value for older devices (#107294) 2024-01-05 13:32:04 -10:00
David F. Mulcahey
2ed9397611
Fix assertion error when unloading ZHA with pollable entities (#107311) 2024-01-05 16:53:43 -05:00
Joost Lekkerkerker
2b43271c3b
Move Lutron entry data to typed class (#107256)
* Move Lutron entry data to typed class

* Move Lutron entry data to typed class

* Exclude file

* Update homeassistant/components/lutron/__init__.py

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

---------

Co-authored-by: Jan-Philipp Benecke <github@bnck.me>
2024-01-05 22:04:10 +01:00
Roman Sivriver
bb03579bd9
Fix typo in recorder strings.json (#107278) 2024-01-05 20:39:04 +01:00
Joost Lekkerkerker
9672ca5719
Extract LutronDevice into separate file (#107285) 2024-01-05 20:38:02 +01:00
wilburCforce
52653220e3
Add code owner for Lutron (#107280)
* hassfest enable

* update code owner

* fix code owner typo

* removed garbage
2024-01-05 20:07:08 +01:00
J. Nick Koston
81458dbf6f
Add test coverage for ESPHome state subscription (#107045) 2024-01-05 19:51:49 +01:00
Jan-Philipp Benecke
c81f909ee3
Use call_soon_threadsafe in mqtt client unsubscribe callback (#107266) 2024-01-05 19:45:56 +01:00
Michael Hansen
a600a0e023
Expose all areas to Assist and ignore empty aliases (#107267)
* Expose all areas to Assist

* Skip empty entity/area aliases
2024-01-05 13:45:41 -05:00
J. Nick Koston
24ee64e20c
Convert cert_expiry to use asyncio (#106919) 2024-01-05 08:03:53 -10:00
Marc Mueller
833cddc8f5
Improve conversation typing (#106905) 2024-01-05 18:40:34 +01:00
Marc Mueller
b2a4de6eed
Enable strict typing for duotecno (#107261) 2024-01-05 18:39:18 +01:00
Marc Mueller
de72bbfaad
Enable strict typing for minecraft_server (#107262) 2024-01-05 18:38:31 +01:00
Joost Lekkerkerker
3a94dd6578
Migrate Suez Water to has entity name (#107251) 2024-01-05 18:36:21 +01:00
Marc Mueller
f0b47bf00c
Enable strict typing for downloader (#107263) 2024-01-05 18:35:05 +01:00
Marc Mueller
221fa48ea5
Improve denonavr typing (#106907) 2024-01-05 18:34:32 +01:00
Joost Lekkerkerker
3d338b5719
Sort Lutron platforms (#107257) 2024-01-05 17:31:50 +01:00
SLaks
9be9bbad61
Allow selecting of counter entities in derivative/integration config flow (#105321) 2024-01-05 16:46:12 +01:00
wilburCforce
be6cf7d3ae
Add Lutron config flow (#98489)
* rough in structure for config_flow

* updated json files

* initial conversion to config_flow

* minor updates

* Update binary_sensor.py

* Update config_flow.py

* Update __init__.py

* updates beased on requested changes

* Update const.py

added doc note for ruff

* updated based on suggestions

* updated load xmldb for efficiency

* updated references

* removed unneeded file

* updated config flow to use GUID from XML DB

* minor update to change logging

* updated based on PR feedback

* reverted change for line 30 based on testing

* corrected user_input

* updated based on latest comments

* exception handling

* added raising of issues for config flow

* updated issues strings

* config flow test shell - needs work

* minor changes

* Update strings.json

* Update config_flow.py

* Update __init__.py

* Create conftest.py

* Update test_config_flow.py

* Update test_config_flow.py

* Update config_flow.py

* Update strings.json

* Update requirements_test_all.txt

* Update strings.json

* Update strings.json

* Update config_flow.py

* Update test_config_flow.py

* Update config_flow.py

* Create test_init.py

* Update __init__.py

* Delete tests/components/lutron/test_init.py

* Update strings.json

* updated import parts and tested

* updated strings to improve user feedback

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-01-05 16:39:14 +01:00
Alexander Somov
d754ea7e22
Add new Rabbit Air integration (#66130)
* Add new Rabbit Air integration

* Remove py.typed file

It is not needed and was just accidentally added to the commit.

* Enable strict type checking for rabbitair component

Keeping the code fully type hinted is a good idea.

* Add missing type annotations

* Remove translation file

* Prevent data to be added to hass.data if refresh fails

* Reload the config entry when the options change

* Add missing type parameters for generics

* Avoid using assert in production code

* Move zeroconf to optional dependencies

* Remove unnecessary logging

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

* Remove unused keys from the manifest

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

* Replace property with attr

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

* Allow to return None for power

The type of the is_on property now allows this.

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

* Remove unnecessary method call

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

* Update the python library

The new version properly re-exports names from the package root.

* Remove options flow

Scan interval should not be part of integration configuration. This was
the only option, so the options flow can be fully removed.

* Replace properties with attrs

* Remove multiline ternary operator

* Use NamedTuple for hass.data

* Remove unused logger variable

* Move async_setup_entry up in the file

* Adjust debouncer settings to use request_refresh

* Prevent status updates during the cooldown period

* Move device polling code to the update coordinator

* Fix the problem with the switch jumping back and forth

The UI seems to have a timeout of 2 seconds somewhere, which is just a
little bit less than what we normally need to get an updated state. So
the power switch would jump to its previous state and then immediately
return to the new state.

* Update the python library

The new version fixes errors when multiple requests are executed
simultaneously.

* Fix incorrect check for pending call in debouncer

This caused the polling to stop.

* Fix tests

* Update .coveragerc to exclude new file.
* Remove test for Options Flow.

* Update the existing entry when device access details change

* Add Zeroconf discovery step

* Fix tests

The ZeroconfServiceInfo constructor now requires one more argument.

* Fix typing for CoordinatorEntity

* Fix signature of async_turn_on

* Fix depreciation warnings

* Fix manifest formatting

* Fix warning about debouncer typing

relates to 5ae5ae5392

* Wait for config entry platform forwards

* Apply some of the suggested changes

* Do not put the MAC address in the title. Use a fixed title instead.
* Do not format the MAC to use as a unique ID.
* Do not catch exceptions in _async_update_data().
* Remove unused _entry field in the base entity class.
* Use the standard attribute self._attr_is_on to keep the power state.

* Store the MAC in the config entry data

* Change the order of except clauses

OSError is an ancestor class of TimeoutError, so TimeoutError should be
handled first

* Fix depreciation warnings

* Fix tests

The ZeroconfServiceInfo constructor arguments have changed.

* Fix DeviceInfo import

* Rename the method to make it clearer what it does

* Apply suggestions from code review

* Fix tests

* Change speed/mode logic to use is_on from the base class

* A zero value is more appropriate than None

since None means "unknown", but we actually know that the speed is zero
when the power is off.

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-01-05 16:34:28 +01:00