Commit Graph

71022 Commits (2c6aa80bc7db5e473f02d0eebafc1910db3c3e43)

Author SHA1 Message Date
J. Nick Koston fc36c48acc
Bump sensorpush-ble to 1.6.2 (#107410) 2024-01-07 22:06:12 -10:00
Joost Lekkerkerker eaac01bc76
Introduce heat area property in moehlenhoff alpha2 (#107488) 2024-01-08 08:17:28 +01:00
Joost Lekkerkerker 8b0c96a212
Clean up met config flow (#107480) 2024-01-08 08:11:30 +01:00
Joost Lekkerkerker f2483bf660
Use constants in Alpha2 config flow (#107518) 2024-01-08 08:05:51 +01:00
J. Nick Koston efffbc08aa
Add support for bluetooth local name matchers shorter than 3 chars (#107411) 2024-01-07 18:25:56 -10:00
J. Nick Koston 69307374f4
Signficantly reduce executor contention during bootstrap (#107312)
* Signficantly reduce executor contention during bootstrap

At startup we have a thundering herd wanting to use the executor
to load manifiest.json. Since we know which integrations we are
about to load in each resolver step, group the manifest loads
into single executor jobs by calling async_get_integrations on
the deps of the integrations after they are resolved.

In practice this reduced the number of executor jobs
by 80% during bootstrap

* merge

* naming

* tweak

* tweak

* not enough contention to be worth it there

* refactor to avoid waiting

* refactor to avoid waiting

* tweaks

* tweaks

* tweak

* background is fine

* comment
2024-01-07 22:55:40 -05:00
J. Nick Koston acf78664e2
Reduce overhead to compile statistics (#106927)
* Reduce overhead to compile statistics

statistics uses LazyState for compatibility with State when pulling
data from the database.

After the previous round of refactoring to modern history, the setters
are never called and can be removed.

* reduce
2024-01-07 22:36:49 -05:00
J. Nick Koston d04e2d56da
Add support for JSON fragments (#107213) 2024-01-07 17:36:31 -10:00
J. Nick Koston 50edc334de
Refactor sensor recorder _get_sensor_states to check for state class first (#107046)
The state class check is cheap and the entity filter check is much
more expensive, so do the state class check first
2024-01-07 22:36:03 -05:00
J. Nick Koston 0b9992260a
Improve logbook context augment performance (#106926)
Makes LazyEventPartialState a bit lazier since almost all the
properties are never called.
2024-01-07 22:35:28 -05:00
J. Nick Koston d8c6534aff
Refactor recorder for common event case (#106753)
Almost 99% of items that are put into the recorder queue are
Events. Avoid wrapping them in tasks since we have to unwrap
them right away and its must faster to check for both RecorderTask
and Events since events are the common case.
2024-01-07 22:31:40 -05:00
J. Nick Koston 368feec712
Refactor translations to reduce dict lookups (#107425)
* Refactor translations to reduce dict lookups

All of our cache lookups used:

`cache[language][O(component)][category]`

The cache was designed as

`cache[language][component][category][flatted_key]`

The lookups are now

`cache[language][category][O(component)]`

The cache is now stored as

`cache[language][category][component][flatted_key]`

This allows the catch fetch to avoid looking up
the category each loop

* already a set, and we do not mutate
2024-01-07 22:29:27 -05:00
Matthias Alphart f53109f513
Move KNX service registration to `async_setup` (#106635) 2024-01-07 23:26:46 +01:00
Joost Lekkerkerker 426a1511d5
Mark Ring battery and signal strength sensors as diagnostic (#107503) 2024-01-07 23:14:38 +01:00
tronikos 810c6ea5ae
Google Generative AI: Add a service for prompts consisting of text and images using Gemini Pro Vision (#105789)
* Bump google-generativeai to 0.3.1

* Migrate to the new API and default to gemini-pro

* Add max output tokens option

* Add generate_content service

* Add  tests

* additional checks

* async read_bytes

* Add tests for all errors
2024-01-07 16:21:27 -05:00
Marc Mueller fd52172c33
Improve harmony typing (#107447) 2024-01-07 09:35:55 -10:00
Matthias Alphart a9b51f0255
Fix KNX telegram device trigger not firing after integration reload (#107388) 2024-01-07 20:32:17 +01:00
David Bonnes 2a8444b245
Fix evohome high_precision temps not retreived consistently (#107366)
* initial commit

* doctweak

* remove hint

* doctweak
2024-01-07 20:04:14 +01:00
J. Nick Koston 75d591593d
Remove calls to distribution and legacy zip support from package util (#107427) 2024-01-07 07:39:48 -10:00
J. Nick Koston 901b9365b4
Small cleanups to ESPHome callbacks (#107428) 2024-01-07 07:39:33 -10:00
Joost Lekkerkerker 15ce70606f
Add typing to Lutron platforms (#107408)
* Add typing to Lutron platforms

* Update homeassistant/components/lutron/switch.py

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* Update homeassistant/components/lutron/__init__.py

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* Update homeassistant/components/lutron/entity.py

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* Update homeassistant/components/lutron/scene.py

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* Fix typing

* Fix typing

---------

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2024-01-07 17:48:23 +01:00
Cyrill Raccaud 3139e92696
Fix Swiss public transport initial data for attributes (#107452)
faster initial data for attributes
2024-01-07 16:19:58 +01:00
Cyrill Raccaud da8ce7bbf3
Fix local_todo typo (#107454)
local todo typo
2024-01-07 14:20:37 +01:00
G Johansson 840089b8ac
Handle OSError during setup for System Monitor (#107396)
* Handle OSError during setup for System Monitor

* Clean string copy

* debug

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-01-07 13:15:34 +01:00
Raman Gupta d19037a36b
Clean up zwave_js test_removed_device test (#107346) 2024-01-07 12:26:08 +01:00
Marc Mueller cd8adfc84e
Improve flume typing (#107444) 2024-01-07 11:39:41 +01:00
Joost Lekkerkerker cecb12a93c
Remove name from faa_delays (#107418) 2024-01-07 11:27:13 +01:00
Michael 84b20edeca
Add missing wifi data in AVM!Fritz Tools tests (#107373) 2024-01-07 10:51:31 +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
Jan Bouwhuis d6aaaf1f1a
Only mock config_entries.HANDLERS for the current test in mock_config_flow (#107357) 2024-01-06 11:46:12 +01:00
J. Nick Koston 65985c4e0b
Fix name of 64bit intel/amd arch in builder and wheels workflow (#107335) 2024-01-06 11:30:20 +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