Commit Graph
72621 Commits
Author SHA1 Message Date
J. Nick KostonandGitHub 16653ff5d0 Group loading of translations for integrations to reduce executor jobs at startup (#110674) 2024-02-17 21:08:55 -06:00
J. Nick KostonandGitHub def6c5c21c Refactor integration startup time tracking to reduce overhead (#110136)
* Refactor integration startup time tracking to reduce overhead

- Use monotonic time for watching integration startup time as it avoids incorrect values if time moves backwards because of ntp during startup and reduces many time conversions since we want durations in seconds and not local time

- Use loop scheduling instead of a task

- Moves all the dispatcher logic into the new _WatchPendingSetups

* websocket as well

* tweaks

* simplify logic

* preserve logic

* preserve logic

* lint

* adjust
2024-02-17 21:47:55 -05:00
J. Nick KostonandGitHub 9bc130c131 Ensure translations for other integrations can be loaded if one integration fails (#110748)
* load failure

* merge
2024-02-17 21:01:36 -05:00
J. Nick KostonandGitHub 0a01161cdd Cache JSON representation of ConfigEntry objects (#110823)
* Cache JSON representation of ConfigEntry objects

* fix recursive set

* tweak

* adjust

* order
2024-02-17 20:52:39 -05:00
J. Nick KostonandGitHub 0d4c82b54d Convert Integration platforms processors where nothing is awaited to callbacks (#110825)
Convert Integration platforms processors where nothing is awaited callbacks
2024-02-17 20:49:47 -05:00
J. Nick KostonandGitHub 165d79b553 Add typing of EVENT_COMPONENT_LOADED to integration_platform helper (#110826) 2024-02-17 20:48:46 -05:00
Aarni KoskelaandGitHub 5d23a1f84f Enable augmented-assignment operations in scripts (#108081) 2024-02-17 20:32:23 -05:00
J. Nick KostonandGitHub 33ff6b5b6e Avoid creating tasks for checking integrations platforms (#110795)
* Avoid creating tasks for checking integrations platforms

This is a followup to #110743 to avoid creating a task to check
if the integration platform exists. We created tasks because
we needed to await async_get_integrations but since its always
called from EVENT_COMPONENT_LOADED firing, we can use the
async_get_loaded_integration version which does not need
to be awaited. This eliminates one task for every loaded
component

* there is no more race risk

* reduce

* coro or callback

* reduce

* tweak

* race safe

* fix type

* fixes

* use built-in helper to make it smaller

* use built-in helper to make it smaller

* use built-in helper to make it smaller

* add coverage to ensure exceptions are logged

* improve readability a bit

* platforms
2024-02-18 01:07:18 +01:00
Cody CandGitHub a656e14b20 Fix Local Calendar changing user-specified capitalisation of calendar names (#108454)
When you create a Local Calendar, say, "Home Maintenance", the integration overrides this to instead be "Home maintenance".
2024-02-17 16:03:13 -08:00
J. Nick KostonandGitHub 0d6f4058ca Add typing for EVENT_COMPONENT_LOADED (#110812) 2024-02-17 23:03:52 +01:00
Allen PorterandGitHub bf1b5252c0 Bump ical to 7.0.0 (#110811) 2024-02-17 22:58:59 +01:00
Allen PorterandGitHub 80abe7bfff Bump pyrainbird to 4.0.2 (#110814) 2024-02-17 22:56:09 +01:00
Joost LekkerkerkerandGitHub 1417428880 Remove unneeded mock from Epion (#110815) 2024-02-17 22:53:38 +01:00
4570eed6f6 Add floor registry (#110741)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-17 21:21:15 +01:00
1ded412061 Add modbus option to manage different setPoint registers (#107600)
Co-authored-by: jan iversen <jancasacondor@gmail.com>
2024-02-17 19:48:42 +01:00
53944235d2 Improve performance of async_get_integration_with_requirements (#110770)
* Improve performance of async_get_integration_with_requirements

- Migrate to the future pattern instead of using asyncio.Event
- Use sets in a few places to avoid linear searching
- Check the cache when processing deps so we do not
  create tasks to process requirements for deps that
  have already been processed

* name

* add concurrency test

* Update homeassistant/requirements.py

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

* Update homeassistant/requirements.py

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

* Update homeassistant/requirements.py

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

* Update homeassistant/requirements.py

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

* reset_mock

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-17 19:26:41 +01:00
aa8d8402b4 Cleanups in entity registry tests (#110788)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-17 19:07:46 +01:00
SidandGitHub 926a634ebf Handle deep standby and poweroffs of enigma2 devices gracefully (#107462)
* handle deep standby and poweroff of enigma2 devices gracefully

* address review comments

* remove warning on deep standby

* use contextlib.suppress
2024-02-17 18:23:29 +01:00
J. Nick KostonandGitHub 664285b9d4 Small performance improvement in tracking template results (#110622)
- Avoid inner function creation each refresh
- remove extra unneeded checks from ratelimit
2024-02-17 18:08:24 +01:00
J. Nick KostonandGitHub 094fd3d918 Simplify ConfigFlow._async_current_entries (#110799)
async_entries supports the flags needed for this function so we
can now hand it off instead
2024-02-17 18:04:27 +01:00
J. Nick KostonandGitHub b8143a7944 Improve performance of _async_when_setup (#110791)
* Improve performance of _async_when_setup

Use an event filter to avoid creating a task until the
filter matches

* Improve performance of _async_when_setup

Use an event filter to avoid creating a task until the
filter matches
2024-02-17 17:46:06 +01:00
J. Nick KostonandGitHub c4653be2fa Make template trigger callbacks when nothing needs to be awaited (#110771)
async_initialize_triggers supports a coro or a callback, and in most
cases the user will not have configured a script so we can avoid
creating a task
2024-02-17 17:37:46 +01:00
Arie CatsmanandGitHub a4150fe8b2 Enable Enphase Envoy authentication credentials update (#110474) 2024-02-17 09:58:25 -06:00
6e2f64fdc2 Add number platform to powerview to control velocity on gen 3 hubs (#110724)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-17 09:52:13 -06:00
Aidan TimsonandGitHub 4aafe14d4c Fix translations for binary sensors in System Bridge (#110095)
* Add translation keys for binary sensor names

* Update version_available string in system_bridge component

* Remove unused code in SystemBridgeBinarySensor class

* Restrict SystemBridgeBinarySensorEntityDescription name type to str

* Refactor binary sensor entity descriptions and remove unused translation keys
2024-02-17 16:10:29 +01:00
Aaron BachandGitHub 258f8bfed0 Ensure Tile timestamps are reported as UTC (#110773) 2024-02-17 07:43:28 -07:00
Shay LevyandGitHub 833c0ee723 Cleanup Shelly async_setup_block_attribute_entities (#110792) 2024-02-17 08:29:35 -06:00
Franck NijhofandGitHub 0fbadc274a Cleanups in device registry tests (#110786) 2024-02-17 14:06:53 +01:00
J. Nick KostonandGitHub 42cf081582 Avoid creating tasks to load integration platforms that do not exist (#110743) 2024-02-17 07:02:51 -06:00
Franck NijhofandGitHub df3556f0d8 Cleanups in area registry tests (#110785)
* Cleanups in area registry tests

* Adjust typing
2024-02-17 13:20:33 +01:00
Chris TalkingtonandGitHub 3491dd68b5 Update rokuecp to 0.19.1 (#110670) 2024-02-17 13:01:47 +01:00
J. Nick KostonandGitHub 9b1ba19354 Bump aioesphomeapi to 21.0.3 (#110772) 2024-02-17 11:09:10 +01:00
J. Nick KostonandGitHub 0bf95df4d6 Avoid creating tasks to setup ignored and disabled config entries (#110756)
* Avoid creating tasks to setup ignored and disabled config entries

* lint
2024-02-17 10:34:03 +01:00
f5dad1d312 Add myuplink reauth flow (#110587)
* WIP test

* WIP

* WIP Reauth flow. Test fail otherways OK.

* Minor adjustments to tests

* Merge

* Merge

* Next level...

* Cleanup according to review

* It works!

* Simplify setup

* Remove default

* Remove files from PR

* Add back test_init

* Add back test_sensor

* Adjust error message

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-17 10:18:53 +01:00
J. Nick KostonandGitHub d99a7e2825 Fix race in wyoming test (#110766)
reverts #110751 and replaces it with a change to wait for the
assist_pipeline.async_pipeline_from_audio_stream to be called
which will actually solve the problem and unblock #110743
2024-02-17 08:24:21 +01:00
MichaelandGitHub aa5695a859 Bump aiopegelonline to 0.0.9 (#110760)
bump aiopegelonline to 0.0.9
2024-02-17 01:12:53 +01:00
50770ce436 Refactor config integration to use normal functions for setup (#110750)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-16 18:12:33 -06:00
Malte FrankenandGitHub d7f650ed7c Bump georss-ign-sismologia-client to 0.8 (#110501)
* bump georss-ign-sismologia-client to 0.8

* fixed tests
2024-02-17 00:52:58 +02:00
Kanchana MandGitHub bc5ec4f2a3 Fix flo sensor native unit (#110745)
* use flow rate unit enums for proper unit conversions

* update typo for device class
2024-02-16 23:18:27 +01:00
J. Nick KostonandGitHub 5adb9240c5 Wait for client to be created in wyoming tests (#110751)
* Add missing async_block_till_done in wyoming tests

* better fix

* better fix

* better fix

* better fix
2024-02-16 22:48:47 +01:00
MichaelandGitHub 58a6f26f66 Fix scene activation with climate entities with None attribute values (#110684)
don't call service with attribute None
2024-02-16 22:27:55 +01:00
J. Nick KostonandGitHub 5292c3408e Bump cryptography to 42.0.3 (#110728) 2024-02-16 20:37:40 +01:00
Franck NijhofandGitHub 788b53534f Run codeql on schedule only (#110729) 2024-02-16 19:32:36 +01:00
J. Nick KostonandGitHub 2cb0249f0a Add filter to translation event listeners to avoid creating tasks (#110732) 2024-02-16 12:13:23 -06:00
jimmyd-beandGitHub 6f74ea9186 Add breeze switch to Renson integration (#101641)
* Add breeze switch

* Cleanup code

* Replace switch entity with new fan entity

* Revert "Replace switch entity with new fan entity"

This reverts commit 4fc1ac22e67091a7e980aefd217652f2a88bed17.
2024-02-16 17:56:09 +01:00
d449eadac3 Guard ConfigEntry from being mutated externally without using the built-in interfaces (#110023)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-16 10:15:05 -06:00
J. Nick KostonandGitHub 4c11371898 Adjust ConfigEntry.async_setup comments to be more clear (#110726) 2024-02-16 10:13:35 -06:00
Franck NijhofandGitHub ef9f117baa Stop building Python 3.11 wheels (#110727) 2024-02-16 17:11:05 +01:00
J. Nick KostonandGitHub 53062a81cc Simplify loading of icons (#110687) 2024-02-16 16:51:14 +01:00
Erik MontnemeryandGitHub a0ead2b861 Remove hourly weather entity from met.no (#97023) 2024-02-16 16:46:37 +01:00