* Restore previous behavior of only waiting for new tasks at shutdown
* cleanup
* do a swap instead
* await canceled tasks
* await canceled tasks
* fix
* not needed since we no longer clear
* log it
* reword
* wait for airvisual
* tests
* Fix unifiprotect discovery running at shutdown
Move the discovery start into `async_setup` so we only
start discovery once reguardless of how many config entries
for unifiprotect they have (or how many times they reload).
Always make discovery a background task so it does not get
to block shutdown
* missing decorator
* use DataUpdateCoordinator for islamic_prayer_times
Add suggested type hints
remove uneccassry options setup
* Use entity_description for sensors
* move coordinator into separate file, sensor_descptions to sensor.py
* add strict typing
* revert strict typing
* fix test coverage
* revert unrelated file changes
* fix sorting
* Update code based on review
* add missing type hint
* more missing type hints
* Update homeassistant/components/islamic_prayer_times/coordinator.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* remove config_entry parameter
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Expose the Yellow-internal radio and multi-PAN addon as named serial ports
* Remove the serial number if it isn't available
* Use consistent names for the addon and Zigbee radio
* Add `homeassistant_hardware` and `_yellow` as `after_dependencies`
* Handle `hassio` not existing when listing serial ports
* Add unit tests
* Refactor discovery of entities to support composed and bridged devices
* Bump library version to 3.1.0
* move discovery schemas to platforms
* optimize a tiny bit
* simplify even more
* fixed bug in light platform
* fix color control logic
* fix some issues
* Update homeassistant/components/matter/discovery.py
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
* fix some tests
* fix light test
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
* Add support for firmware target in zwave_js FirmwareUploadView
fix
* Update tests/components/zwave_js/test_api.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/components/zwave_js/test_api.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/components/zwave_js/test_api.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update tests/components/zwave_js/test_api.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* fix types
* Switch back to using Any
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Bump python-matter-server to 3.0.0
Include all fixes for the changed api schema of the library
* fix test fixtures
* remove invalid data from fixtures
* fix some of the tests
* fix binary sensor bug
* fix sensor bug
* fix switch test
* fix tests
* adjust bugs and typos
* Initial diagnostics
* Include MLP of local OTBR
* Add dep on pyroute2
* Move pyroute2 onto executor
* More comments
* Read thread data direct from zeroconf cache
* Get neighbour cache for known BR's
* isort
* mypy
* Add diagnostic test
* rel import
* Fix pylint
* Restore coverage in discovery.py
* Add WS command config/entity_registry/list_for_display
* Make more keys in the display dict optional
* Move disabled_by check to ws command handler
* Hide hidden_by if not hidden
* Use send_json_auto_id in the new test
* Don't include entities which have no data needed for display
* Include platform for entries with translation_key
* Manage KNX Keyfile from UI
* migrate config entry to use new keyfile
* Revert "migrate config entry to use new keyfile"
use same config style as before instead of entry version migration
* clean up uploaded file when integration is removed
* change default filename
* revert to previous step name
* remove empty directory on unload
* Add tests for init.
* Add more test init.
* Fix test init side_effect.
* Add test sensor.
* Fix sensor test file name.
* Fix sensor test.
* Add binary sensor test.
* Fix comments and styling.
* Remove apcupsd from omissions in coveragerc.
* Add a test case for binary sensor when STATFLAG is not available.
* Complete type annotations for test files.
* Revert "Remove apcupsd from omissions in coveragerc."
This reverts commit 66b05fcb8829619a771a650a3d70174089e15d91.
* 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
* 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
* 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