* Show WebRTC cameras in the media browser
* Only show webrtc cameras with source in the browser
* Address code review
* Refactor BrowseMediaSource creation
* Refactor
* Address code review
* Refactor integration startup time tracking to reduce overhead
- Use monotonic time for watching integration startup time as it avoids incorrect values if time moves backwards because of ntp during startup and reduces many time conversions since we want durations in seconds and not local time
- Use loop scheduling instead of a task
- Moves all the dispatcher logic into the new _WatchPendingSetups
* websocket as well
* tweaks
* simplify logic
* preserve logic
* preserve logic
* lint
* adjust
* Avoid creating tasks for checking integrations platforms
This is a followup to #110743 to avoid creating a task to check
if the integration platform exists. We created tasks because
we needed to await async_get_integrations but since its always
called from EVENT_COMPONENT_LOADED firing, we can use the
async_get_loaded_integration version which does not need
to be awaited. This eliminates one task for every loaded
component
* there is no more race risk
* reduce
* coro or callback
* reduce
* tweak
* race safe
* fix type
* fixes
* use built-in helper to make it smaller
* use built-in helper to make it smaller
* use built-in helper to make it smaller
* add coverage to ensure exceptions are logged
* improve readability a bit
* platforms
* Improve performance of async_get_integration_with_requirements
- Migrate to the future pattern instead of using asyncio.Event
- Use sets in a few places to avoid linear searching
- Check the cache when processing deps so we do not
create tasks to process requirements for deps that
have already been processed
* name
* add concurrency test
* Update homeassistant/requirements.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/requirements.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/requirements.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/requirements.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* reset_mock
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* 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