Commit Graph

73877 Commits (cb397cecb1c18e84f4fb81352f387cad9ee02a7d)

Author SHA1 Message Date
J. Nick Koston f4b2c9b569
Fix async_get_component loading in the executor when the module is already loaded (#112153) 2024-03-03 17:56:50 -10:00
J. Nick Koston bef8376f83
Use MockConfigEntry in hue tests (#112149)
needed for https://github.com/home-assistant/core/pull/112141
2024-03-03 21:21:33 -05:00
J. Nick Koston 331989de4c
Migrate condition/state/trigger helper to use async_get_platform (#112144)
Currently these would always load the platform in the loop
if it was not already loaded
2024-03-03 21:20:47 -05:00
J. Nick Koston f1eab3f11f
Preload config flow if it exists when loading a component (#112145)
Since config_entries always requires the config_flow to be loaded
to check for migrations, load it if we know it exists when loading
the underlying integration
2024-03-03 21:16:50 -05:00
J. Nick Koston d50b4ccd62
Split up hassio coordinator and data into new file to allow preload (#112147)
* Split up hassio coordinator and data into new file to allow preload

Since we cannot mark hassio as having a config_flow, it will
not get preloaded and since cloud will almost always load right
after it and block the import executor, we want to preload
the hassio config_flow and platform modules so the other
dependants can continue on while cloud is being imported
to not delay startup

* tweak

* tweak
2024-03-03 21:16:02 -05:00
Robert Svensson ec8d23d0af
Fix places not changed to hub in Axis tests (#112128) 2024-03-03 20:45:06 -05:00
Allen Porter 5cb5a1141f
Limit rainbird aiohttp client session to a single connection (#112146)
Limit rainbird to a single open http connection
2024-03-03 19:54:05 -05:00
David F. Mulcahey f9e00ed45b
Fix ZHA groups page (#112140)
* Fix ZHA groups page

* test
2024-03-03 19:17:02 -05:00
J. Nick Koston 60f81c8340
Fix async_prepare_setup_platform test (#112143) 2024-03-03 14:16:44 -10:00
starkillerOG 68f17b5eab
Add Reolink PTZ patrol start/stop (#112129) 2024-03-03 23:13:40 +01:00
J. Nick Koston d6cbadba3e
Ensure setup loads top level component before platforms (#112057) 2024-03-03 11:42:16 -10:00
Joost Lekkerkerker 3c960b7d4e
Add icon translations to Melnor (#111906)
* Use default icon for Melnor

* Use default icon for Melnor
2024-03-03 21:33:33 +01:00
J. Nick Koston ec1400d392
Fix flakey tplink test (#112135)
The test here was assuming the first slow was the one it
wanted, but sometimes the other flow wins the race
2024-03-03 21:29:45 +01:00
J. Nick Koston ba9733e90b
Try to preload the config platform when loading a component (#112104) 2024-03-03 10:23:08 -10:00
starkillerOG 372886bf6c
Add package detection to Reolink (#112126)
Add package detection
2024-03-03 12:58:28 -05:00
J. Nick Koston da6eca7b68
Avoid compiling entity service schema when passed defaults (#112099)
* Avoid compiling entity service schema when passed defaults

* dry
2024-03-03 12:50:04 -05:00
J. Nick Koston 0a462071c8
Import screenlogic in the executor to avoid blocking the loop (#112097) 2024-03-03 12:48:28 -05:00
J. Nick Koston 9af12a0639
Avoid calling async_get_component twice for each component being setup (#112096)
We already have the component so we can pass it to
async_process_component_config to avoid having to
look it up again
2024-03-03 12:48:07 -05:00
starkillerOG 72efb3dab5
Bump reolink-aio to 0.8.9 (#112124)
* Update strings.json

* Bump reolink-aio to 0.8.9
2024-03-03 12:47:09 -05:00
Jan-Philipp Benecke f20e1ad560
Exclude tankerkoenig attributes from recording (#112109) 2024-03-03 12:46:51 -05:00
Robert Svensson 4eb24b2db7
Clean up setup and teardown of Axis integration (#112120) 2024-03-03 12:42:44 -05:00
Luke Lashley 74f1420410
Add the ability to resume cleaning on start button (#112122) 2024-03-03 12:41:31 -05:00
Michael 409dc02d36
Ignore failing gas stations in Tankerkoening (#112125) 2024-03-03 18:29:02 +01:00
G Johansson cdd7b94a95
Move all System Monitor updates into single Data Update Coordinator (#112055) 2024-03-03 07:24:04 -10:00
J. Nick Koston faee9d996d
Import steamist in the executor to avoid blocking the loop (#112111) 2024-03-03 07:21:55 -10:00
Jan-Philipp Benecke 911cf60678
Address late review for Ping (#112123)
* Address late review for Ping

* Fix import
2024-03-03 18:10:22 +01:00
J. Nick Koston a37c82e34c
Add comment to integration platform helper about blocking I/O (#112103) 2024-03-03 07:00:35 -10:00
David F. Mulcahey 7af82161a0
Bump Zigpy to 0.63.4 (#112117) 2024-03-03 11:31:23 -05:00
Joakim Plate 13653be09b
Add event platform to rfxtrx (#111526) 2024-03-03 17:15:54 +01:00
J. Nick Koston 9fff638311
Load wyoming in the executor to avoid blocking the event loop (#112107) 2024-03-03 08:56:08 -06:00
Åke Strandberg 073fcfcd6f
Add tests for number of devices created in myuplink (#111816)
* Add tests for number of devices created

* Change default fixture to 2 devices in one system

* Update snapshot

* Change deviuce to test

* Merge tests to one module
2024-03-03 14:27:24 +01:00
Joost Lekkerkerker f02e60533d
Add icon translations to Nexia (#111980)
* Add icon translations to Nexia

* Add icon translations to Nexia
2024-03-03 14:08:33 +01:00
Joost Lekkerkerker 895dc6fce1
Add icon translations to Nextbus (#111981) 2024-03-03 14:08:19 +01:00
Álvaro Fernández Rojas 25ba046ff1
Fix flakey airzone_cloud tests by avoiding creation of the websocket (#112102) 2024-03-03 00:56:14 -10:00
Matrix 2f223ae377
Add YoLInk YS7905-UC Support (#111709)
* Add YS7905-UC Support

* Fix as suggestion
2024-03-03 11:11:45 +01:00
Jan-Philipp Benecke 25551fa938
Move Ping binary sensor attributes to sensor entities (#112004)
* Move Ping binary sensor attributes to sensor entities

* Process code review

* Update snapshot
2024-03-03 11:08:28 +01:00
J. Nick Koston 6a243d6705
Preload platform integrations to better group executor usage (#112010) 2024-03-02 23:03:35 -10:00
J. Nick Koston c8cb0ff61d
Avoid trying to import platforms that do not exist (#112028)
* Avoid trying to import platforms that do not exist

* adjust

* fixes

* cleanup

* cleanup

* cleanup

* Apply suggestions from code review

* docs

* fixes

* fixes

* comment

* coverage

* coverage

* coverage

* Switch config to use async_get_component

This was another path where integrations that were marked to load in the executor
would be loaded in the loop

* Switch config to use async_get_component/async_get_platform

This was another path where integrations that were marked to load in the executor
would be loaded in the loop

* merge

* refactor

* refactor

* coverage

* preen

* preen
2024-03-02 22:14:28 -05:00
David Knowles a253991c6d
Bump pydrawise to 2024.3.0 (#112066) 2024-03-02 22:00:50 -05:00
J. Nick Koston dc3c7c95f7
Import stream in the executor to avoid blocking the event loop (#112078)
* Import stream in the executor to avoid blocking the event loop

This one has some large deps

* one more place

* avoid call if no change

* just in case
2024-03-02 22:00:28 -05:00
J. Nick Koston aaa2d8745f
Import template in the executor to avoid blocking the event loop (#112070)
Importing template has a very long dep tree
2024-03-02 21:59:34 -05:00
J. Nick Koston 2fe12ade4c
Ensure all homekit_controller controllers are imported in advance (#112079)
* Ensure all homekit_controllers are imported in advance

We want to avoid importing them in the event loop later

* Ensure all homekit_controllers are imported in advance

We want to avoid importing them in the event loop later
2024-03-02 21:56:33 -05:00
J. Nick Koston 131068358a
Import yeelight in the executor to avoid blocking the event loop (#112080) 2024-03-02 21:55:55 -05:00
J. Nick Koston f415746e26
Import caldav in the executor to avoid blocking the event loop (#112081)
2024-03-02 18:21:51.794 DEBUG (MainThread) [homeassistant.loader] Component caldav import took 0.676 seconds (loaded_executor=False)
2024-03-02 21:55:20 -05:00
J. Nick Koston 8d2fe73faa
Fix bootstrap being fetched three times during unifiprotect startup (#112082)
We always fetch it to check if the device is online.
Avoid fetching it again for migration by passing
it to the migrators
2024-03-02 21:55:04 -05:00
J. Nick Koston ea9c969d15
Fix executor being overloaded in caldav (#112084)
Migrate to using a single executor job instead of creating
one per calendar. If the user had a lot of calendars the
executor would get overloaded
2024-03-02 21:53:51 -05:00
J. Nick Koston 08c96efebe
Import baf in the executor to avoid blocking the event loop (#112086) 2024-03-02 21:52:40 -05:00
J. Nick Koston 5e5da2bf3a
Import integrations using sense-energy in the executor to avoid loop blocking (#112087)
Import integrations using sense-enegy in the executor to avoid blocking the event loop
2024-03-02 21:52:11 -05:00
J. Nick Koston a07f6d9d76
Import smtp in the executor to avoid blocking the loop (#112089)
This one has no external requirements, but the email imports
from stdlib take ~0.6s on a green
2024-03-02 21:51:45 -05:00
J. Nick Koston 6421a08ba8
Avoid expensive inspect calls in config validators (#112085)
* Avoid expensive inspect calls in config validators

inspect has a performance problem https://github.com/python/cpython/issues/92041

We now avoid calling inspect unless we are going to log

* remove unused

* reduce

* get_integration_logger
2024-03-02 21:50:35 -05:00