* Improve performance of _async_when_setup
Use an event filter to avoid creating a task until the
filter matches
* Improve performance of _async_when_setup
Use an event filter to avoid creating a task until the
filter matches
* Add translation keys for binary sensor names
* Update version_available string in system_bridge component
* Remove unused code in SystemBridgeBinarySensor class
* Restrict SystemBridgeBinarySensorEntityDescription name type to str
* Refactor binary sensor entity descriptions and remove unused translation keys
* WIP test
* WIP
* WIP Reauth flow. Test fail otherways OK.
* Minor adjustments to tests
* Merge
* Merge
* Next level...
* Cleanup according to review
* It works!
* Simplify setup
* Remove default
* Remove files from PR
* Add back test_init
* Add back test_sensor
* Adjust error message
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
reverts #110751 and replaces it with a change to wait for the
assist_pipeline.async_pipeline_from_audio_stream to be called
which will actually solve the problem and unblock #110743
* Add breeze switch
* Cleanup code
* Replace switch entity with new fan entity
* Revert "Replace switch entity with new fan entity"
This reverts commit 4fc1ac22e67091a7e980aefd217652f2a88bed17.
* Add toggle service to climate
* Fix mqtt test
* Add comments
* Fix rebase
* Remove not needed properties
* Fix toggle service
* Fix test
* Test
* Mod mqtt test
---------
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Make context in data entry flow possible to modify for subclasses
* mypy
* Make get_context
* base view
* Review comments
* Remove context from options flow
* Add media player play file option
* Add media playback from HA
* Remove volume capability
* Add missing imports
* Apply suggestions from code review
* Update homeassistant/components/dunehd/media_player.py
* Apply suggestions from code review
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Fix recorder ws_info blocking the event loop
Fixes
```
2024-02-15 06:37:55.423 WARNING (MainThread) [asyncio] Executing <Task pending name=websocket_api.async:ws_info coro=<_handle_async_response() running at /usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py:26> wait_for=<_GatheringFuture pending cb=[Task.task_wakeup()] created at /usr/local/lib/python3.12/asyncio/tasks.py:712> cb=[set.remove()] created at /usr/src/homeassistant/homeassistant/core.py:653> took 0.332 seconds
```
* no instance did not actually work
fixes
```
File "/usr/src/homeassistant/homeassistant/components/elkm1/__init__.py", line 416, in _set_time_service
_getelk(service).panel.set_time(dt_util.now())
File "/usr/local/lib/python3.11/site-packages/elkm1_lib/panel.py", line 55, in set_time
self._connection.send(rw_encode(datetime))
File "/usr/local/lib/python3.11/site-packages/elkm1_lib/connection.py", line 152, in send
self._send(QueuedWrite(msg.message, msg.response_command), priority_send)
File "/usr/local/lib/python3.11/site-packages/elkm1_lib/connection.py", line 148, in _send
self._check_write_queue.set()
File "/usr/local/lib/python3.11/asyncio/locks.py", line 192, in set
fut.set_result(True)
File "/usr/local/lib/python3.11/asyncio/base_events.py", line 763, in call_soon
self._check_thread()
File "/usr/local/lib/python3.11/asyncio/base_events.py", line 800, in _check_thread
raise RuntimeError(
RuntimeError: Non-thread-safe operation invoked on an event loop other than the current one
```
We only called format_mac on the mac address if we connected
to the device during entry creation. Since the format of the
mac address from DHCP discovery did not match the format saved
in the unique id, the IP would not get updated and a second
discovery would appear
Thankfully the creation path does format the mac so we did not
create any entries with an inconsistantly formatted unique id
fixes#110460