Commit graph

73296 commits

Author SHA1 Message Date
J. Nick Koston
b3a8a75e75
Improve performance of filtering HomeKit entities (#111201)
Get the underlying filter with get_filter to avoid the wrapper
2024-02-23 13:42:01 -05:00
J. Nick Koston
3877a56d23
Avoid creating tasks for automation and script validation (#111181)
These functions created tasks to run small validators, and the cost of
creating all the tasks was more expensive than running the validators
themselves. Since the code is unlikely to suspend its more efficient to
await them in series.
2024-02-23 13:41:36 -05:00
J. Nick Koston
5d421e249f
YAML loader performance improvements (#111199)
* YAML loader performance improvements

- Cache the name of the loader since we call it multiple
  times for every line

- Add a fast path for scalar tags since they are the
  most common

* Update homeassistant/util/yaml/loader.py

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

* remove unreachable code

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-02-23 13:37:09 -05:00
J. Nick Koston
b9ed315cf7
Avoid yalexs_ble delaying startup when the lock is not advertising (#111167) 2024-02-23 13:35:17 -05:00
J. Nick Koston
b6b5b1f788
Fix race in ESPHome entity test (#111179)
This test relied on the event loop overhead. Change it
to listen for the state to change instead
2024-02-23 13:34:46 -05:00
David F. Mulcahey
d485e8967b
Add device counter entities to ZHA (#111175)
* Add counter entities to the ZHA coordinator device

* rework to prepare for non coordinator device counters

* counter entity test

* update log lines

* disable by default
2024-02-23 13:22:47 -05:00
J. Nick Koston
59066c1770
Migrate zha to use Debouncer.async_schedule_call (#111103) 2024-02-23 07:28:23 -10:00
J. Nick Koston
3ecbd05ac0
Avoid creating tasks to register hassio panels (#111206)
panel_custom never suspends so we can avoid the overhead of
creating and scheduling tasks
e398accc3e/homeassistant/components/panel_custom/__init__.py (L74)

panel_custom.async_register_panel could be converted to a normal function but it
would be a breaking change
2024-02-23 16:50:39 +01:00
J. Nick Koston
e398accc3e
Convert hassio websocket_apis that did not await to normal functions (#111173)
* Convert hassio websocket_apis that did not await to normal functions

* Convert hassio websocket_apis that did not await to normal functions
2024-02-23 15:27:17 +01:00
Marc Mueller
dd51b0c6cc
Update beautifulsoup4 to 4.12.3 (#111195) 2024-02-23 13:42:32 +01:00
Marc Mueller
55e39d48eb
Update coverage to 7.4.2 (#111194) 2024-02-23 13:22:19 +01:00
Joost Lekkerkerker
730d805876
Enable SIM114 ruff rule (#111125) 2024-02-23 13:21:59 +01:00
dependabot[bot]
26fac184b4
Bump github/codeql-action from 3.24.3 to 3.24.4 (#111184) 2024-02-23 12:15:42 +01:00
Álvaro Fernández Rojas
d12335a3aa
Update AEMET-OpenData to v0.5.1 (#111191)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-02-23 11:59:09 +01:00
Joakim Sørensen
512bc7c699
Bump pytraccar from 2.1.0 to 2.1.1 (#111188) 2024-02-23 11:57:41 +01:00
J. Nick Koston
70d7f74f35
Convert hardware system status websocket api to a normal function (#111172)
* Convert hardware system status websocket api to a normal function

Nothing is awaited here

* tweak
2024-02-23 11:48:13 +01:00
Andriy Kushnir
87fed65fb3
Bump roombapy to 1.6.13 (#111187) 2024-02-23 10:42:13 +01:00
J. Nick Koston
68d1fbaadc
Fix race in openalpr_cloud tests (#111185)
The test would end before setup was finished and the setup
would get cancelled
2024-02-23 09:28:20 +01:00
Jan Bouwhuis
afa4e76248
Optimize mqtt device cleanup (#111170)
Thnx
2024-02-23 07:29:50 +01:00
jjlawren
8d4569ff55
Bump plexapi to 4.15.10 (#111180) 2024-02-23 07:03:07 +01:00
Mike O'Driscoll
eb9eff404d
Fix stale sensors for Recollect Waste (#111174) 2024-02-22 22:05:30 -07:00
kingy444
83859bd342
Rework how shade updates are processed in powerview (#110928)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-22 15:58:37 -10:00
J. Nick Koston
98a8714705
Improve error reporting in tplink config flow (#111166)
* Improve error reporting in tplink config flow

* coverage, fixes
2024-02-23 02:38:46 +01:00
Matthew Donoughe
6712621b95
Update pylutron-caseta to 0.20.0 (#111169) 2024-02-22 14:44:30 -10:00
Christopher Bailey
ae60f59bed
Add metadata for UniFi Protect Media Source (#109389) 2024-02-22 14:44:16 -10:00
ollo69
f0f3773858
Add base class AndroidTVEntity to AndroidTV (#105945) 2024-02-22 12:38:38 -10:00
J. Nick Koston
2ef71289b9
Avoid creating tasks for dependencies already being setup (#111034)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-02-22 12:34:46 -10:00
J. Nick Koston
32cd3ad862
Fix lingering timer in enphase_envoy test (#111165) 2024-02-22 12:33:44 -10:00
J. Nick Koston
fb7da1ba83
Simplify ESPHome entity removal process (#111076) 2024-02-22 11:39:53 -10:00
Maciej Bieniek
bccd9bd21f
Bump brother library to version 4.0.0 (#111157)
* Bump library

* Update code to the new library version

* Improve diagnostics

* Fix tests

---------

Co-authored-by: Maciej Bieniek <478555+bieniu@users.noreply.github.com>
2024-02-22 23:27:24 +02:00
Åke Strandberg
3be83bf2f5
Correct myUplink dash replacement (#111143)
* Corrected dash replacement

* Fix comment
2024-02-22 22:26:08 +01:00
J. Nick Koston
36c11119cf
Refactor Debouncer usage in august (#111102) 2024-02-22 11:23:14 -10:00
Álvaro Fernández Rojas
78f3f67e3a
Update AEMET-OpenData to v0.5.0 (#111155)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-02-22 21:47:21 +02:00
Christopher Fenner
88e9870f1c
Add number entities to change heat pump program temperatures in ViCare integration (#109315)
* add HeatingProgram type

* use HeatingProgram type

* add heatpump number sensors

* use HeatingProgram type

* Update strings.json

* rename HeatingProgram to Program

* remove commented code

* rename heating program type

* simplify

* Apply suggestions from code review

* Update strings.json

* Update const.py

* fix

* add heating program type

* correct imports

* Revert "fix"

This reverts commit 857dda59da.

* Apply suggestions from code review

* Update strings.json
2024-02-22 18:58:38 +01:00
rkruisselbrink
c1b4a21821
Bump rova to 0.4.0 (#111131)
* Bump rova to 0.4.0

* Apply suggestions from code review

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-02-22 19:55:45 +02:00
Mr. Bubbles
eeeabfb440
bump bring-api to 0.4.1 (#111149) 2024-02-22 19:54:56 +02:00
J. Nick Koston
5bf8086a2b
Cache formatting of mac addresses (#111140) 2024-02-22 07:09:56 -10:00
Christopher Bailey
b740783f8d
Bump pyunifiprotect to 4.23.3 (#111059) 2024-02-22 05:57:42 -10:00
Shay Levy
6bbd8c7f7b
Remove filter of -1 in Shelly block based sensors (#111116) 2024-02-22 17:48:14 +02:00
Artem Draft
a7a19786cc
Handle media position in Bravia TV (#107080)
Handle media position in BraviaTV
2024-02-22 16:22:07 +01:00
Jan-Philipp Benecke
ef66560744
Use async_update_reload_and_abort helper in discord (#111104) 2024-02-22 16:11:46 +01:00
Joakim Sørensen
8f83426895
Revert "Move backup/* WS commands to the backup integration" (#111136)
Revert "Move backup/* WS commands to the backup integration (#110651)"

This reverts commit ec4e6c3a74.
2024-02-22 16:08:30 +01:00
David Knowles
8bf0466151
Bump pydrawise to 2024.2.0 (#111080) 2024-02-22 13:00:25 +01:00
Malte Franken
5f9d46205c
Bump georss-qld-bushfire-alert-client to 0.7 (#111075)
* bump georss-qld-bushfire-alert-client to 0.7

* fix tests
2024-02-22 12:58:54 +01:00
Åke Strandberg
58269fefea
Replace dash with hard hyphen in myuplink entity names (#111074)
Replace dash with hard hyphen in entity names
2024-02-22 12:56:42 +01:00
Álvaro Fernández Rojas
b72d64a3dc
Disable AEMET legacy options (#107795)
* aemet: disable legacy options

This enables proper timezone handling:
- Atlantic/Canary for the Canary Islands.
- Europe/Madrid for the Iberian Peninsula.

Also provides daily data for the current day after AEMET stops providing the
full day interval, which is normally after midday (12:00).
This is a breaking change because with the previous behaviour the daily data
for the current day wasn't available after midday and now it will be.
What the integration library does to workaround this is to fallback to the
12-24 interval data if the the 00-24 is no longer provided by the API.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Fix AEMET tests with v0.4.8

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-02-22 12:52:57 +01:00
Thomas55555
85be94e0a9
Add switch platform for husqvarna_automower (#110139)
* Add switch platform for husqvarna_automower

* Use RestrictedReasons const

* Typing

* Add snapshot testing

* Invert switch

* Test sucessfull servie calls

* Assert client mock calls

* Use getattr

* Update snapshot

* Add available property

* Add a new base class for control entities

* Make switch unavailabe if mower in error state

* Sort platforms

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-22 12:34:24 +01:00
dependabot[bot]
6fc4eea0e7
Bump dawidd6/action-download-artifact from 3.1.1 to 3.1.2 (#111120) 2024-02-22 11:50:45 +01:00
Federico D'Amico
6af7d7de41
Bump microBeesPy to 0.3.2 (#111067)
Bump microBeesPy 0.3.2
2024-02-22 11:34:48 +01:00
Åke Strandberg
c167001861
Add myuplink switch platform (#110810)
* Add switch platform

* Add mypulink switch platform

* Update tests according to review

* Address more review comments

* Adjust types

* More typing

* Fix typo

* Use constants in tests

* Revert constants

* Catch aiohttp.ClientError when API call fails

* Add test case for failed async_set_device_points call

* Test api failures for both toggle directions

* Use parametrize for testing switching
2024-02-22 11:27:46 +01:00