Commit graph

21270 commits

Author SHA1 Message Date
J. Nick Koston
5d5f311898
Move thread safety check in issue_registry sooner (#116899) 2024-05-05 20:32:55 -05:00
elmurato
2e52a7c4c0
Abort Minecraft Server config flow if device is already configured (#116852)
* Abort config flow if device is already configured

* Fix review findings

* Rename newly added test case
2024-05-06 00:21:50 +02:00
J. Nick Koston
673bbc1372
Switch out aiohttp-isal for aiohttp-fast-zlib to make isal optional (#116814)
* Switch out aiohttp-isal for aiohttp-fast-zlib to make isal optional

aiohttp-isal does not work on core installs where the system has 32bit userland and a 64bit kernel because we have no way to detect this configuration or handle it.

fixes #116681

* Update homeassistant/components/isal/manifest.json

* Update homeassistant/components/isal/manifest.json

* hassfest

* isal

* fixes

* Apply suggestions from code review

* make sure isal is updated before http

* fix tests

* late import
2024-05-05 17:06:12 -04:00
J. Nick Koston
a57f4b8f42
Index auth token ids to avoid linear search (#116583)
* Index auth token ids to avoid linear search

* async_remove_refresh_token

* coverage
2024-05-05 16:47:26 -04:00
J. Nick Koston
2964471e19
Keep august offline key up to date when it changes (#116857)
We only did discovery for the key at setup time. If it
changed, a reloaded of the integration was needed to
update the key. We now update it every time we update
the lock detail.
2024-05-05 16:33:55 -04:00
J. Nick Koston
91fa8b50cc
Turn on thread safety checks in async_dispatcher_send (#116867)
* Turn on thread safety checks in async_dispatcher_send

We keep seeing issues where async_dispatcher_send is called from
a thread which means we call the callback function on the other
side in the thread as well which usually leads to a crash

* Turn on thread safety checks in async_dispatcher_send

We keep seeing issues where async_dispatcher_send is called from
a thread which means we call the callback function on the other
side in the thread as well which usually leads to a crash

* adjust
2024-05-05 16:29:43 -04:00
J. Nick Koston
b41b1bb998
Refactor entity_platform polling to avoid double time fetch (#116877)
* Refactor entity_platform polling to avoid double time fetch

Replace async_track_time_interval with loop.call_later
to avoid the useless time fetch every time the listener
fired since we always throw it away

* fix test
2024-05-05 16:28:01 -04:00
J. Nick Koston
6339c63176
Improve recorder and worker thread matching in RecorderPool (#116886)
* Improve recorder and worker thread matching in RecorderPool

Previously we would look at the name of the threads. This
was a brittle if because other integrations may name their
thread Recorder or DbWorker. Instead we now use explict thread
ids which ensures there will never be a conflict

* fix

* fixes

* fixes
2024-05-05 16:25:10 -04:00
Michael
203d110787
Remove timeout option and set timeout static to 30 seconds in Synology DSM (#116815)
* remove timeout option, set timeout static to 30 seconds

* be slightly faster :)
2024-05-05 18:51:35 +02:00
Mr. Bubbles
b53081dc51
Add update coordinator for Habitica integration (#116427)
* Add DataUpdateCoordinator and exception handling for service

* remove unnecessary lines

* revert changes to service

* remove type check

* store coordinator in config_entry

* add exception translations

* update HabiticaData

* Update homeassistant/components/habitica/__init__.py

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

* Update homeassistant/components/habitica/sensor.py

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

* remove auth exception

* fixes

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-05-05 17:02:28 +02:00
Maciej Bieniek
3498cb3ced
Increase test coverage for Total Connect (#116851)
Increase test coverage

Co-authored-by: Maciej Bieniek <478555+bieniu@users.noreply.github.com>
2024-05-05 15:37:24 +02:00
Joost Lekkerkerker
486bb6d89f
Use parametrize in drop connect sensor tests (#107078)
* Use parametrize in drop connect sensor tests

* Use parametrize in drop connect sensor tests

* Make common helper

* Assert the whole entity state

* fix

---------

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
Co-authored-by: jbouwh <jan@jbsoft.nl>
2024-05-05 14:10:34 +02:00
Joost Lekkerkerker
7d5aa03bf0
Move Totalconnect coordinator to separate module (#116368)
* Move Totalconnect coordinator to separate module

* Move Totalconnect coordinator to separate module

* Move Totalconnect coordinator to separate module
2024-05-05 13:05:36 +02:00
J. Nick Koston
0380116ef6
Improve logging of _TrackPointUTCTime objects (#116711) 2024-05-04 17:35:44 -05:00
Michael
90a3c2e357
Store runtime data inside the config entry in NUT (#116771)
* store runtime data inside the config entry

* remove unsued constants

* add test for InvalidDeviceAutomationConfig exception

* assert entry

* add more specific type hint
2024-05-04 23:08:01 +02:00
Michael
4a25e67234
Store runtime data inside the config entry in Pi-Hole (#116806) 2024-05-04 22:52:13 +02:00
Michael
55ffc82be1
Store runtime data inside the config entry in Speedtest.net (#116802) 2024-05-04 22:32:53 +02:00
mkmer
2132b170f2
Update unique_id to string in Honeywell (#116726)
* Update unique_id to string

* Update homeassistant/components/honeywell/climate.py

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

* Update homeassistant/components/honeywell/climate.py

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

* Update homeassistant/components/honeywell/climate.py

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

* Add typing for devices

* Add tests

* Use methods to verify unique_id

* Update tests/components/honeywell/test_climate.py

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-05-04 14:18:50 +02:00
Michael
e5543e3b95
Store runtime data inside the config entry in DWD (#116764) 2024-05-04 12:36:28 +02:00
Sid
a5df229715
Bump ruff to 0.4.3 (#116749) 2024-05-04 11:56:40 +02:00
Robert Svensson
81a269f4f5
Use runtime_data in Axis integration (#116729)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2024-05-03 21:52:37 +02:00
Jan-Philipp Benecke
ce8cea86a2
Use ConfigEntry runtime_data in Discovergy (#116671) 2024-05-03 21:29:35 +02:00
Erik Montnemery
e9b9d2d545
Convert recorder entity registry tests to use async API (#116448)
* Convert recorder entity registry tests to use async API

* Address review comment

* Make sure recorder is patch is set up before hass fixture
2024-05-03 14:10:58 +02:00
Erik Montnemery
f309064a7f
Convert sensor recorder tests to use async API (#116373)
* Convert sensor recorder tests to use async API

* Fix accidentally renamed test

* Avoid unnecessary calls to async_wait_recording_done

* Avoid auto-commits for every state change

* Make sure recorder patches are set up before hass fixture
2024-05-03 14:07:38 +02:00
Guido Schmitz
cb26e3c633
Use ConfigEntry runtime_data in devolo Home Control (#116672) 2024-05-03 13:55:04 +02:00
Guido Schmitz
79d50a0685
Add test for HA stop to devolo Home Control (#116682)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2024-05-03 13:36:15 +02:00
Marc Mueller
28ab45d5d8
Fix snapcast test warning (#116687) 2024-05-03 13:29:05 +02:00
Marc Mueller
15b24dfbc2
Fix fyta test warning (#116688) 2024-05-03 13:28:36 +02:00
Marc Mueller
4a2b595cc8
Fix fyta test timezone handling (#116689) 2024-05-03 13:07:12 +02:00
MatthewFlamm
6413376ccb
Fix nws forecast coordinators and remove legacy forecast handling (#115857)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-05-03 13:06:40 +02:00
J. Nick Koston
2b2b46c774
Bump habluetooth to 3.0.1 (#116663) 2024-05-03 12:15:51 +02:00
Jan Bouwhuis
84308c9e53
Add title feature to notify entity platform (#116426)
* Add title feature to notify entity platform

* Add overload variants

* Remove overloads, update signatures

* Improve test coverage

* Apply suggestions from code review

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

* Do not use const

* fix typo

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-05-03 11:17:28 +02:00
Erik Montnemery
27fcf72275
Convert history tests to use async API (#116447)
* Convert history tests to use async API

* Add new fixture to help patch recorder

* Modify

* Modify

* Update tests/conftest.py

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

* Rename fixture

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-05-03 08:14:46 +02:00
J. Nick Koston
c07f02534b
Migrate bluetooth to use the singleton helper (#116629) 2024-05-02 19:35:16 -05:00
Marc-Olivier Arsenault
0e23d0439b
Add ecobee ventilator 20 min timer (#115969)
* add 20 min timer Ecobee

* modify local value with estimated time

* add ecobee test switch

* removed manual setting of data

* Add no throttle updates

* add more test cases

* move timezone calculation in update function

* update attribute based on feedback

* use timezone for time comparaison

* add location data to tests

* remove is_on function

* update python-ecobee-api lib

* remove uncessary checks

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-05-03 02:08:25 +02:00
Erik Montnemery
b013d6ade9
Fix flaky hassio test (#116658) 2024-05-02 16:24:14 -05:00
Jan Bouwhuis
41b688645a
Refactor group state logic (#116318)
* Refactor group state logic

* Fix

* Add helper and tests for groups with entity platforms multiple ON states

* Adress comments

* Do not store object and avoid linear search

* User dataclass, cleanup multiline ternary

* Add test cases for grouped groups

* Remove dead code

* typo in comment

* Update metjod and module docstr
2024-05-02 21:55:46 +02:00
Jan Bouwhuis
bedd5c1cef
Cleanup removed MQTT broker settings (#116633) 2024-05-02 20:37:21 +02:00
Maciej Bieniek
37d9ed899d
Add binary_sensor platform to IMGW-PIB integration (#116624)
* Add binary_sensor platform

* Add tests

* Remove state attributes

* Remove attrs from strings.json

* Use base entity class

---------

Co-authored-by: Maciej Bieniek <478555+bieniu@users.noreply.github.com>
2024-05-02 16:16:26 +02:00
Marc Mueller
ef242f2883
Use runtime_data for bond (#116611) 2024-05-02 07:38:59 -05:00
Marc Mueller
63a45035dd
Use runtime_data for ambient_station (#116608) 2024-05-02 13:42:16 +02:00
Marc Mueller
5e8c9d66fb
Use runtime_data for airvisual_pro (#116607) 2024-05-02 13:41:32 +02:00
blob810
1170ce1296
Add shutter tilt support for Shelly Wave Shutter QNSH-001P10 (#116211)
* Add shutter tilt support for Shelly Wave Shutter QNSH-001P10

* Add shelly_europe_ltd_qnsh_001p10_state.json fixture

* Update test_discovery.py

* Load shelly wave shutter 001p10 node fixture

* Update test_discovery.py

Check if entity of first node exists.

* Update test_discovery.py

Add additional comments

* Clean whitespace

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-05-02 11:02:35 +02:00
J. Nick Koston
041456759f
Remove duplicate mid handling in MQTT (#116531) 2024-05-01 15:18:44 -05:00
Joost Lekkerkerker
e68901235b
Store runtime data in entry in Analytics Insights (#116441) 2024-05-01 22:13:38 +02:00
Maciej Bieniek
ae6a497cd1
Add diagnostics platform to IMGW-PIB integration (#116551)
* Add diagnostics

* Add tests

---------

Co-authored-by: Maciej Bieniek <478555+bieniu@users.noreply.github.com>
2024-05-01 21:06:22 +02:00
Michael
c5cac8fed4
Store runtime data inside the config entry in AVM Fritz!Smarthome (#116523) 2024-05-01 20:51:39 +02:00
J. Nick Koston
f73c55b434
Ensure mqtt handler is restored if its already registered in bootstrap test (#116549) 2024-05-01 20:22:18 +02:00
J. Nick Koston
573cd8e94a
Ensure mock mqtt handler is cleaned up after test_bootstrap_dependencies (#116544) 2024-05-01 19:45:47 +02:00
G Johansson
51f9e661a4
Workday only update once a day (#116419)
* Workday only update once a day

* Fix tests
2024-05-01 17:11:47 +02:00