Commit Graph
79200 Commits
Author SHA1 Message Date
Marc MuellerandGitHub 4e9bfd1f4a Update pytest-sugar to 1.0.0 (#111271) 2024-02-24 14:35:58 +01:00
Marc MuellerandGitHub e7ab416ab9 Update pytest-socket to 0.7.0 (#111270) 2024-02-24 14:35:27 +01:00
Marc MuellerandGitHub d70c013ea6 Update pipdeptree to 2.15.1 (#111269) 2024-02-24 08:34:48 -05:00
Cyrill RaccaudandGitHub 22480a7894 Fix bring! comment pep8 conformity (#111276)
fix bring comment pep8 conformity
2024-02-24 08:18:54 -05:00
Joakim SørensenandGitHub 79572c0a5d Subscribe to Traccar Server events (#111262)
* Subscribe to Traccar Server events

* No need to unsubscribe on error

* typo

* rename _attrs

* arg type

* reorder return type

* more spesific

* Update stale docstring
2024-02-24 12:35:32 +01:00
ee57c924f2 Bump pysnmp-lextudio library to version 6.0.2 (#111193)
* Bump pysnmp-lextudio to version 6.0.2

* Update gen_requirements_all.py

---------

Co-authored-by: Maciej Bieniek <478555+bieniu@users.noreply.github.com>
2024-02-24 11:30:00 +01:00
G JohanssonandGitHub d08fc1f342 Add debugging to coordinator output in System Monitor (#111244) 2024-02-24 09:36:22 +01:00
J. Nick KostonandGitHub 883d5a0842 Bump cryptography to 42.0.5 (#111259)
changelog: https://github.com/pyca/cryptography/compare/42.0.3...42.0.5
2024-02-24 08:49:46 +01:00
J. Nick KostonandGitHub 5d6687503e Bump orjson to 3.9.15 (#111233)
changelog: https://github.com/ijl/orjson/compare/3.9.14...3.9.15
2024-02-24 08:47:29 +01:00
J. Nick KostonandGitHub 5b8591ec7e Avoid reschedule churn in Storage.async_delay_save (#111091)
* Avoid circular import in Storage.async_delay_save

We call Storage.async_delay_save for every entity being added or removed
from the registry. The late import took more time than everything else
in the function.

* Avoid reschedule churn in Storage.async_delay_save

When we are adding or removing entities we will call async_delay_save
quite often which has to add and remove a TimerHandle on the event loop
which can add up when there are a lot of registry items changing.

If the timer handle still has 80% of the time remaining on it
we will avoid resceduling and let it fire at the time the
original async_delay_save call was made. This ensures we
do not force the event loop to rebuild its heapq because
too many timer handlers were cancelled at once

* div0

* add coverage for 0 since we had none

* fix bad conflict

* tweaks

* tweaks

* tweaks

* tweaks

* tweaks

* tweaks

* more test fixes

* mqtt tests rely on event loop overhead
2024-02-24 08:46:00 +01:00
J. Nick KostonandGitHub ff0e0b3e77 Convert debouncer async_shutdown to be a normal function (#111257)
* Convert debouncer async_shutdown to be a normal function

nothing was being awaited here and the shutdown call was only used
in integrations marked internal and other internals. Its possible
that a custom component might have been using the method but it
seemed uncommon enough that it did not warrent marking as a breaking
change. The update coordinator is no longer awaiting anything in
async_shutdown either now but it seemed likely that this use
would get subclassed.

* fix
2024-02-24 08:37:33 +01:00
Teemu RandGitHub e0490a3ade Improve tplink authenticate description wording (#111250) 2024-02-23 15:19:28 -10:00
J. Nick KostonandGitHub b60ca4260c Fix bluetooth manager stop missing callback decorator (#111232) 2024-02-23 12:58:55 -10:00
David F. MulcaheyandGitHub 5d4dc63118 Bump ZHA dependencies (#111227) 2024-02-23 17:57:39 -05:00
J. Nick KostonandGitHub 40774101d3 Avoid creating task per device when adding legacy device trackers (#111220) 2024-02-23 23:47:43 +01:00
Marc MuellerandGitHub 5f8ef37f2d Update pylint to 3.0.4 (#111229)
* Update pylint to 3.0.4

* Use yield from

* Remove unnecessary pylint disable comments
2024-02-23 23:46:00 +01:00
rlippmannandGitHub efd1ed86ae Code improvements for microbees component (#111208) 2024-02-23 12:35:56 -10:00
d9addc45f9 Avoid scheduling a task to add each entity when not using update_before_add (#110951)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-02-23 10:49:26 -10:00
J. Nick KostonandGitHub 3aecec5082 Avoid rechecking for missing platforms in the loader (#111204) 2024-02-23 10:48:47 -10:00
9e46c2e2b3 Isolate systemmonitor from psutil shared state (#111110)
* Isolate systemmonitor from psutil shared state

* Mods

* typing

* Fix tests

* Fix read temp issue

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-23 20:53:48 +01:00
Niklas RothandGitHub 2ff0102bce Bump python-hpilo to 4.4.3 (#110325)
* Update hpilo version in requirements_all.txt (#109581)

The issue with the deprecated and now removed ssl.wrap_socket function was fixed years ago in the library

* Update hpilo version in manifest.json (#109581)
2024-02-23 20:51:29 +01:00
J. Nick KostonandGitHub 125de17a09 Avoid linear search to remove from the entity registry index (#111138)
Avoid linear search to remove from entity registry index

Because the entity registry index needs to preserve insertion order
for backwards compat, a list was used for the index. Because some
config entries/devices/areas have a large amount of entities, removing
the entities, the O(n) time complexity of removing from a list can
slow down reloads. As python has no orderedset in stdlib, use
a dict since it preserves insertion order has O(1) add/remove
time complexity for the average case
2024-02-23 13:57:59 -05:00
J. Nick KostonandGitHub b5a2df1951 Refactor keyed event trackers to reduce future refactoring risk (#111150)
* Refactor keyed event trackers to avoid refactoring risk

Follow to https://github.com/home-assistant/core/pull/110978#discussion_r1496771106

I had to do some type ignores because of the EventType vs Event
which is hopefully not going to be needed after the next mypy

* delete constants only used one in other const

* no field

* fixes

* less refactoring later

* less refactoring later

* keep const
2024-02-23 13:55:02 -05:00
J. Nick KostonandGitHub 5e16602595 Refactor storage collections to reduce tasks during startup (#111182)
* Make adding entities in storage collection a normal function

Nothing is awaited when adding

* cleanup

* cleanup

* cleanup

* cleanup

* reduce

* reduce

* reduce

* reduce

* tweak
2024-02-23 13:50:25 -05:00
J. Nick KostonandGitHub 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 KostonandGitHub 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
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 KostonandGitHub b9ed315cf7 Avoid yalexs_ble delaying startup when the lock is not advertising (#111167) 2024-02-23 13:35:17 -05:00
J. Nick KostonandGitHub 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. MulcaheyandGitHub 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 KostonandGitHub 59066c1770 Migrate zha to use Debouncer.async_schedule_call (#111103) 2024-02-23 07:28:23 -10:00
J. Nick KostonandGitHub 3ecbd05ac0 Avoid creating tasks to register hassio panels (#111206)
panel_custom never suspends so we can avoid the overhead of
creating and scheduling tasks
https://github.com/home-assistant/core/blob/e398accc3e2758080a39261adf07a71b9754676e/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 KostonandGitHub 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 MuellerandGitHub dd51b0c6cc Update beautifulsoup4 to 4.12.3 (#111195) 2024-02-23 13:42:32 +01:00
Marc MuellerandGitHub 55e39d48eb Update coverage to 7.4.2 (#111194) 2024-02-23 13:22:19 +01:00
Joost LekkerkerkerandGitHub 730d805876 Enable SIM114 ruff rule (#111125) 2024-02-23 13:21:59 +01:00
dependabot[bot]andGitHub 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 RojasandGitHub 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ørensenandGitHub 512bc7c699 Bump pytraccar from 2.1.0 to 2.1.1 (#111188) 2024-02-23 11:57:41 +01:00
J. Nick KostonandGitHub 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 KushnirandGitHub 87fed65fb3 Bump roombapy to 1.6.13 (#111187) 2024-02-23 10:42:13 +01:00
J. Nick KostonandGitHub 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 BouwhuisandGitHub afa4e76248 Optimize mqtt device cleanup (#111170)
Thnx
2024-02-23 07:29:50 +01:00
jjlawrenandGitHub 8d4569ff55 Bump plexapi to 4.15.10 (#111180) 2024-02-23 07:03:07 +01:00
Mike O'DriscollandGitHub eb9eff404d Fix stale sensors for Recollect Waste (#111174) 2024-02-22 22:05:30 -07:00
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 KostonandGitHub 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 DonougheandGitHub 6712621b95 Update pylutron-caseta to 0.20.0 (#111169) 2024-02-22 14:44:30 -10:00
Christopher BaileyandGitHub ae60f59bed Add metadata for UniFi Protect Media Source (#109389) 2024-02-22 14:44:16 -10:00
ollo69andGitHub f0f3773858 Add base class AndroidTVEntity to AndroidTV (#105945) 2024-02-22 12:38:38 -10:00