1
0
mirror of https://github.com/elisspace/core.git synced 2026-08-29 23:52:02 +00:00
Commit Graph

13824 Commits

Author SHA1 Message Date
J. Nick Koston
c2b770bcb9 Load pending state attributes and event data ids at startup (#88444)
* Load pending state attributes and event data ids at startup

Since we queue all events to be processed after startup
we can have a thundering herd of queries to prime the
LRUs of event data and state attributes ids. Since we
know we are about to process a chunk of events we can
fetch all the ids in two queries

* lru

* fix hang

* Fix recorder LRU being destroyed if event session is reopened

We would clear the LRU in _close_event_session but
it would never get replaced with an LRU again so
it would leak memory if the event session is reopened

* Fix recorder LRU being destroyed if event session is reopened

We would clear the LRU in _close_event_session but
it would never get replaced with an LRU again so
it would leak memory if the event session is reopened

* cleanup
2023-02-19 21:26:38 -05:00
Franck Nijhof
c4f92f5ad4 Cleanup use of test fixtures in LaMetric tests (#88453)
Cleanup use of test fixture in LaMetric tests
2023-02-19 21:15:07 -05:00
Franck Nijhof
172d505314 Refactor Whois tests (#88456) 2023-02-19 21:14:10 -05:00
Franck Nijhof
037b3ebd26 Refactor EnergyZero tests (#88458) 2023-02-19 21:11:05 -05:00
J. Nick Koston
3533e77ec9 Fix using MariaDB slow range select workaround with Postgresql (#88459)
* Mark PostgreSQL range select as fast

Currently we were using the slow range select workaround for
PostgreSQL that was original developed for MariaDB but
its actually slower on PostgreSQ

fixes #83253

* Mark PostgreSQL range select as fast

Currently we were using the slow range select workaround for
PostgreSQL that was original developed for MariaDB but
its actually slower on PostgreSQ

fixes #83253
2023-02-19 21:08:43 -05:00
Franck Nijhof
68e1aaa0be Refactor Elgato tests (#88376) 2023-02-19 20:14:18 +01:00
J. Nick Koston
a9731a7b26 Make the recorder LRU adjustment threadsafe (#88443) 2023-02-19 19:30:08 +01:00
J. Nick Koston
9df00bd285 Adjust recorder LRU cache to align with the number of entities (#88350)
* Adjust size of recorder LRU based on number of entities

If there are a large number of entities the cache would
get thrashed as there were more state attributes being
recorded than the size of the cache. This meant we had
to go back to the database to do lookups frequently when
an instance has more than 2048 entities that change
frequently

* add a test

* do not actually record 4096 states

* patch target

* patch target
2023-02-19 00:02:36 -05:00
Teemu R
1d928f05fa Update python-kasa to 0.5.1 (#88416) 2023-02-18 22:39:08 -06:00
J. Nick Koston
3ca9f3c0d5 Only build the recorder SupportedDialect enum once (#88402)
Every call to dialect_name was creating a new enum object
in the recorder
2023-02-18 20:21:14 -05:00
Tom Harris
d84fde8c54 Insteon scenes (#87803)
* Add Insteon scene support

* Bump to pyinsteon 1.3.1

* Add tests

* Bump Insteon Panel to 0.3.1

* Change docstring
2023-02-18 15:52:49 +01:00
epenet
1128041899 Add type hints to integration tests (zwave_js) (#88311) 2023-02-18 14:59:26 +01:00
Erik Montnemery
83e5bf7ae8 Use entity_sources to determine integration in recorder platforms (#88382) 2023-02-18 07:21:41 -06:00
Guido Schmitz
1279868bf5 Bump devolo_plc_api to 1.2.0 (#88348) 2023-02-18 13:34:26 +01:00
Jon Caruana
e5e551f4ea Code quality/test improvement to available attributes of LiteJet (#86683)
* PR feedback, and add related tests.

* PR feedback.

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-02-18 12:43:32 +01:00
J. Nick Koston
289bab6f87 Make recorder platform attribute exclude integration aware (#88357) 2023-02-18 10:08:59 +01:00
Franck Nijhof
1e05697080 Enable Ruff B007 (#88356)
* Enable Ruff B007

* Adjust existing cases
2023-02-17 21:08:18 -05:00
Franck Nijhof
6891eb7ed1 Add support for snapshot testing (#88323)
* Add support for snapshot testing

* Use snapshots in Elgato diagnostics test

* Use snapshots in Elgato sensor test

* Fix flake8 warning

* Slightly improve serialized output

* Remove snapshot naming in elgato sensor tests

* Improve snapshoting of via_device_id in device registry item

* Update pylint typehints plugin for snapshot fixture typing

* Use snapshots in Elgato configflow test

* Use snapshots in Bluetooth repair issue tests
2023-02-17 16:35:55 -05:00
Michael Hansen
325674ec44 Only expose default cloud domains in Assist default agent (#88274)
* Only expose default cloud domains in default agent

* Copy exposed domain list to conversation

* Implement requested changes

* Add test for exposed devices/areas
2023-02-17 16:19:22 -05:00
J. Nick Koston
331102e592 Dismiss discoveries when the underlying device disappears (#88340)
* Implement discovery removals

Bluetooth, HomeKit, SSDP, and Zeroconf now implement
dismissing discoveries when the underlying discovered
device disappears

* cover

* add zeroconf test

* cover

* cover bluetooth

* fix rediscover
2023-02-17 15:51:19 -05:00
epenet
a16e298599 Adjust json imports in tests (#88248) 2023-02-17 19:13:48 +01:00
epenet
7427d4f323 Add type hints to integration tests (zha) (#88309) 2023-02-17 18:54:26 +01:00
epenet
185cd61cbd Add type hints to integration tests (recorder) (#88313) 2023-02-17 18:50:09 +01:00
epenet
0a80ac19bc Add type hints to integration tests (part 18) (#88174) 2023-02-17 18:45:48 +01:00
Paulus Schoutsen
f465561536 Fix dangling task for cast (#88285) 2023-02-17 18:43:40 +01:00
dcmeglio
da046f93f4 Add additional characteristics for Airversa Homekit Air Purifiers (#85660) 2023-02-17 15:55:31 +00:00
epenet
5b80b1f55a Add type hints to integration tests (part 25) (#88308) 2023-02-17 16:52:28 +01:00
epenet
9a5f88f55f Add type hints to integration tests (part 23) (#88235) 2023-02-17 16:40:46 +01:00
epenet
aa50096a31 Add type hints to integration tests (part 24) (#88307) 2023-02-17 16:34:53 +01:00
Erik Montnemery
9989a4787b Fix recorder platform tests (#88330) 2023-02-17 08:22:15 -06:00
Erik Montnemery
273d289e03 Fix sleepiq test to not contact the API (#88315)
* Fix sleepiq test to not contact the API

* Add an autosue fixture for config entry setup
2023-02-17 12:32:27 +01:00
J. Nick Koston
b9f29c27ab Cleanup stale recorder code (#88275)
- Removes dead commit function
- Small cleanup to debug handling in execute
2023-02-16 23:12:11 -05:00
J. Nick Koston
2ce631733a Switch ld2410_ble to use no_devices_found (#88270) 2023-02-16 22:52:57 +01:00
J. Nick Koston
a059cd7f80 Switch keymitt_ble to use no_devices_found (#88271)
* Switch keymitt_ble to use no_devices_found

* Switch keymitt_ble to use no_devices_found
2023-02-16 22:52:29 +01:00
J. Nick Koston
06b1bf9c92 Switch led_ble to use no_devices_found (#88269) 2023-02-16 22:51:57 +01:00
J. Nick Koston
ffa7cac38e Switch switchbot to use no_devices_found (#88268) 2023-02-16 22:51:27 +01:00
J. Nick Koston
b2a1df19a0 Switch yalexs_ble to use no_devices_found (#88267) 2023-02-16 22:50:49 +01:00
Michael Hansen
dc30210237 Use blocking in intent service calls and verify results (#88035)
* Use blocking in service calls and verify result

* Block for 2 seconds and update states after

* Small timeout in service call to allow exceptions

* Move sun test
2023-02-16 14:01:41 -05:00
epenet
8c821c8969 Add JSON support to load_fixture (#88076)
* Add JSON support to load_fixture

* More tests

* Remove lru_cache on load_json
2023-02-16 19:40:47 +01:00
Paulus Schoutsen
bc2b35765e Stop processing when we hit bad encryption in mobile app (#88150)
* Stop processing when we hit bad encryption

* Accept webhook payload that is a list

* Rename functions because we import them

* Revert a debug thing

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-02-16 13:05:16 -05:00
Jan Bouwhuis
57738fbb8c Replace deprecated SSLContext constant PROTOCOL_TLS in mqtt (#88214)
Replace deprecated SSLContext constants
2023-02-16 13:01:28 -05:00
J. Nick Koston
d2277fa6db Fix restore of MQTT subscriptions from reload (#88220) 2023-02-16 11:14:26 -06:00
epenet
88cfbf6a34 Add type hints to integration tests (part 22) (#88234) 2023-02-16 14:08:03 +01:00
epenet
ba23816a0c Inverse json import logic (#88099)
* Fix helpers and util

* Adjust components

* Move back errors

* Add report

* mypy

* mypy

* Assert deprecation messages

* Move test_json_loads_object

* Adjust tests

* Fix rebase

* Adjust pylint plugin

* Fix plugin

* Adjust references

* Adjust backup tests
2023-02-16 11:37:57 +01:00
epenet
dab8557951 Add type hints to integration tests (part 21) (#88233) 2023-02-16 11:15:26 +01:00
Brandon Rothweiler
0748e12341 Fix capitalization of OwnTone integration (#88219) 2023-02-16 10:16:32 +01:00
J. Nick Koston
c83ea297b5 Refactor zeroconf task handling (#88204)
* Refactor zeroconf task handling

- Avoid the need to create tasks for most callbacks
- Fixes the untracked task that could get unexpectedly GCed

* be consistant

* be consistant

* fix zeroconf tests

* runtime

* Revert "runtime"

This reverts commit 19e6b6183759279490efbed3129dffd447dc4808.

* precalc

* refactor

* tweak

* update tests
2023-02-15 21:44:11 -05:00
Franck Nijhof
d3ed8de232 Update Ruff to v0.0.247 (#88210)
* Update Ruff to v0.0.247

* Fix new found violations
2023-02-15 16:46:03 -05:00
Marcel van der Veldt
dfe0ededa0 Bump python-matter-server to 2.1.0 (#88192)
* Bump python-matter-server to 2.1.0

* Fix tests

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-02-15 13:23:03 -05:00
J. Nick Koston
c8b827b46b Fix aprs tests with python 3.11 (#88189)
* Fix aprs tests with python 3.11

* hints
2023-02-15 13:03:48 -05:00