Commit Graph

48288 Commits (b1288a885d975f08c404c1cc388a37e8e9bc74f0)

Author SHA1 Message Date
quthla b1288a885d
Bump yeelight to 0.7.11 (#94879)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-19 18:38:42 -05:00
J. Nick Koston 1206f2c1da
Fix memory leaks in websocket api (#94780)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-19 18:27:22 -05:00
boozer2 51326bd8c7
Add Switchbot Indoor/Outdoor Meter (#94836)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-19 13:35:44 -05:00
Jan Bouwhuis 8b6d2fc3ce
Remove unreachable template validation for imap config flow (#94862) 2023-06-19 20:20:10 +02:00
Jan Bouwhuis ce8217acf5
Explicitly opt-in to device name in the imap integration (#94861) 2023-06-19 19:58:41 +02:00
Erik Montnemery 5303bef83e
Add image entity component (#90564) 2023-06-19 17:03:48 +02:00
Erik Montnemery 43c4dec3ed
Explicitly opt-in to device name in the demo integration (#94647) 2023-06-19 15:56:48 +02:00
Erik Montnemery 3ee63ba2c2
Add tests for kitchen_sink sensor platform (#94724)
* Add tests for kitchen_sink sensor platform

* Address review comments
2023-06-19 14:16:18 +02:00
Erik Montnemery e49c2fde14
Add tests for kitchen_sink lock platform (#94723) 2023-06-19 13:24:36 +02:00
Mike Heath d3bf52c136
Register Fully Kiosk services regardless of setup result (#88647)
* Register services at integration level

If HA is unable to connect to Fully Kiosk, the services don't get
registered. This can cause repair to create notifications saying
that the 'fully_kiosk.load_url' service is unknown.

Fixes #85444

* Validate config entry is loaded

* Refactor service invocation

Raises `HomeAssistantError` when the user provides an device id that is
not in the device registry or a device that is not a Fully Kiosk
device. If the device's config entry is not loaded, a warning is
logged.

* Update homeassistant/components/fully_kiosk/services.py

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

* Assert HomeAssistantError when integration unloaded

* Remove unused import

* Set CONFIG_SCHEMA

* Update homeassistant/components/fully_kiosk/__init__.py

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

* Add test for non fkb devices targets in service calls

* Apply suggestions from code review

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-19 13:12:04 +02:00
J. Nick Koston a027a01535
Log a traceback when importing a component fails (#94778)
`2023-06-17 12:44:37.961 ERROR (MainThread) [homeassistant.setup] Setup failed for switchbot: Unable to import component: cannot import name DEFAULT_CIPHERS from urllib3.util.ssl_ (/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/urllib3/util/ssl_.py)` is not very helpful as it does not show which module tried to import.

adding a traceback makes it more obvious, and since ImportError is usually not something
the user can easily solve, it makes issue reports much more helpful

```
DEFAULT_CIPHERS from urllib3.util.ssl_ (/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/urllib3/util/ssl_.py)
Traceback (most recent call last):
  File "/Users/bdraco/home-assistant/homeassistant/setup.py", line 213, in _async_setup_component
    component = integration.get_component()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/loader.py", line 813, in get_component
    ComponentProtocol, importlib.import_module(self.pkg_path)
                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Cellar/python@3.11/3.11.3/Frameworks/Python.framework/Versions/3.11/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/Users/bdraco/home-assistant/homeassistant/components/switchbot/__init__.py", line 5, in <module>
    import switchbot
  File "/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/switchbot/__init__.py", line 22, in <module>
    from .devices.lock import SwitchbotLock
  File "/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/switchbot/devices/lock.py", line 12, in <module>
    import boto3
  File "/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/boto3/__init__.py", line 16, in <module>
    from boto3.session import Session
  File "/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/boto3/session.py", line 17, in <module>
    import botocore.session
  File "/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/botocore/session.py", line 29, in <module>
    import botocore.credentials
  File "/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/botocore/credentials.py", line 34, in <module>
    from botocore.config import Config
  File "/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/botocore/config.py", line 16, in <module>
    from botocore.endpoint import DEFAULT_TIMEOUT, MAX_POOL_CONNECTIONS
  File "/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/botocore/endpoint.py", line 22, in <module>
    from botocore.awsrequest import create_request_object
  File "/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/botocore/awsrequest.py", line 24, in <module>
    import botocore.utils
  File "/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/botocore/utils.py", line 32, in <module>
    import botocore.httpsession
  File "/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/botocore/httpsession.py", line 10, in <module>
    from urllib3.util.ssl_ import (
ImportError: cannot import name DEFAULT_CIPHERS from urllib3.util.ssl_ (/Users/bdraco/home-assistant/venv/lib/python3.11/site-packages/urllib3/util/ssl_.py)
```
2023-06-19 13:10:39 +02:00
Maciej Bieniek c7e460ccab
Return `None` as BraviaTV media_player/remote entity name (#94804) 2023-06-19 12:04:50 +02:00
Maciej Bieniek 546139e491
Return `None` as Accuweather weather entity name (#94803) 2023-06-19 12:04:25 +02:00
J. Nick Koston 80d4f90e70
Add missing abort string to apple_tv (#94818) 2023-06-19 11:51:39 +02:00
Joost Lekkerkerker a7f3bde3ac
Add Twitch codeowner (#94851) 2023-06-19 11:51:04 +02:00
Erik Montnemery 17797c04c3
Explicitly opt-in to device name in the uptime integration (#94846) 2023-06-19 11:47:54 +02:00
Erik Montnemery c7d636a371
Explicitly opt-in to device name in the season integration (#94845) 2023-06-19 11:47:44 +02:00
Erik Montnemery 76a5e6d7ce
Explicitly opt-in to device name in the cpuspeed integration (#94844) 2023-06-19 11:47:29 +02:00
Erik Montnemery e6a7ff97c8
Explicitly opt-in to device name in the cast integration (#94847) 2023-06-19 11:04:59 +02:00
J. Nick Koston 24add59d15
Bump zeroconf to 0.69.0 (#94828)
changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.68.0...0.69.0
2023-06-19 07:39:03 +02:00
Maciej Bieniek 15ddf69c6a
Bump Shelly backend library to version 5.4.0 (#94829)
Bump aioshelly to version 5.4.0
2023-06-19 00:10:29 +02:00
Ernst Klamer 13a217ad89
Bump bthome to 2.12.0 (#94822) 2023-06-18 15:06:09 -05:00
J. Nick Koston 5834d70037
Bump zeroconf to 0.68.0 (#94786) 2023-06-18 09:33:42 -05:00
starkillerOG ee7f44b3da
Bump reolink-aio to 0.7.1 (#94761) 2023-06-18 13:13:21 +02:00
Richard Kroegel 52f49fc32d
bmw_conected_drive: Allow WASHING_FLUID in condition based service (#94762)
Allow WASHING_FLUID
2023-06-18 09:19:31 +02:00
Joost Lekkerkerker 9f83e4b2de
Make YouTube select lower quality thumbnails (#94652)
* Make YouTube select lower quality thumbnails

* Make YouTube select lower quality thumbnails

* Make YouTube select lower quality thumbnails

* Make YouTube select lower quality thumbnails

* Add tests

* Add tests

* Add tests

* Add tests

* Add tests
2023-06-17 21:59:06 -04:00
Eric Severance 7f7b7aee6d
pyWeMo serialnumber is deprecated, use serial_number (#94791) 2023-06-17 20:59:19 -04:00
Ian Foster 0513117a11
Add hub to keyboard_remote manifest (#94788)
added hub to keyboard_remote manifest
2023-06-17 23:07:18 +02:00
J. Nick Koston be638d3772
Bump recommended esphome version for bluetooth to 2023.6.0 (#94773)
2023.6.0 is needed for #94138 to work
2023-06-17 16:23:33 -04:00
J. Nick Koston b5e1d35e18
Bump cryptography to 41.0.1 and PyOpenSSL to 23.2.0 (#94777)
changelog: https://cryptography.io/en/latest/changelog/
changelog: https://www.pyopenssl.org/en/latest/changelog.html
2023-06-17 16:23:06 -04:00
disforw 71e8ee52e5
Fix QNAP Sensor Entity Descriptions (#94749) 2023-06-17 16:06:28 +02:00
Allen Porter c4284c07b6
Allow scripts to capture service response data in variables (#94757)
* Allow scripts service actions to save return values

* Simplify script service response data

* Rename result_variable to response_variable based on feedback
2023-06-16 22:59:44 -04:00
J. Nick Koston 68cf796be8
Speed up entity service calls (#94731)
* Speed up entity service calls

- Avoid permissions check if the caller is an admin
- Use set intersection instead of linear search of entity platforms to find entities

* tweak

* fix light test to not use an admin user
2023-06-16 21:07:57 -04:00
Michał Modzelewski 3778e1cd77
Support launching app deep links in apple_tv integration (#94705) 2023-06-16 13:05:46 -05:00
Jan Čermák d7755a92c3
Fix warning from rapt_ble caused by payload version 2 (#94718) 2023-06-16 12:12:52 -05:00
Allen Porter 84c66b3cad
Add support for services to return data (#94401)
* Add support for service calls with resopnse data.

Update the service calls to allow returning responses with data,
with an initial use case supporting basic service calls usable
within script.

* Revert enttiy platform/component changes

* Remove unnecessary comma diff

* Revert additional unnecessary changes

* Simplify service call

* Simplify and fix typing and revert whitespace

* Clarify typing intent

* Revert more entity service calls

* Revert additional entity service changes

* Set blocking=True for group notify service call

* Revert unnecessary changes

* Reverting more whitespace changes

* Revert more service changes

* Add test coverage for None return case

* Add parameter to service calls indicating return values were requested

* Update tests/test_core.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Add additional service call tests

* Update test comment

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-06-16 12:43:35 -04:00
Allen Porter 12129e9d21
Update service call return values and error handling (#94657)
* Update return signature of service calls

* Add timeout error handling in websocket api for service calls

* Update recorder tests to remove assertion on service call

* Remove timeout behavior and update callers that depend on it today

* Fix tests

* Add missing else

* await coro directly

* Fix more tests

* Update the intent task to use wait instead of timeout

* Remove script service call limits and limit constants

* Update tests that depend on service call limits

* Use wait instead of wait_for and add test

* Update homeassistant/helpers/intent.py

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

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-16 07:01:40 -07:00
Erik Montnemery 950b25bf42
Remove unnecessary assert from Entity (#94711) 2023-06-16 14:07:25 +02:00
Matthias Alphart 0ac50b4933
Update xknxproject to 3.2.0: support ETS 4 project files (#94692)
Update xknxproject to 3.2.0
2023-06-16 10:16:31 +02:00
Tom Harris ea0e1c54d6
Handle Insteon events correctly (#94549)
Make events generalized
2023-06-16 09:35:44 +02:00
Raman Gupta 934e1a1603
Fix zwave_js trigger event reattach logic (#94702) 2023-06-16 09:35:29 +02:00
Alistair Tudor 843a15b1bb
Fix unit for Habitica text sensors (#94550) 2023-06-16 09:33:02 +02:00
Joost Lekkerkerker 4eefbfd4f2
Add strings for YouTube reauthentication (#94655) 2023-06-16 09:10:55 +02:00
G Johansson 72c1273d25
Fix Command Line update twice issue (#94672)
Command Line update twice issue
2023-06-16 09:08:51 +02:00
Franck Nijhof be05a749c5
Add preheating HVAC action to climate (#94677)
* Add preheating HVAC action to climate

* Fix MQTT tests
2023-06-15 22:16:12 -04:00
J. Nick Koston 26be0fab78
Fix debouncer not scheduling timer when wrapped function raises (#94689)
* Fix debouncer not scheduling timer when callback function raises

* test coro as well

* preen
2023-06-15 22:15:49 -04:00
J. Nick Koston 34b725bb99
Debounce discoveries to improve event loop stability at the started event (#94690)
* Debounce discoveries to improve event loop stability at the started event

The first one is immediate and anything that fires within the next
second will be debounced to only happen once every second

* fix mock
2023-06-15 22:15:07 -04:00
J. Nick Koston 7e3510800d
Bump bluetooth-data-tools to 1.2.0 (#94696)
changelog: https://github.com/Bluetooth-Devices/bluetooth-data-tools/compare/v1.1.0...v1.2.0

benchmark (0.4.0) currently in 2023.6.x: Parsing 100000 bluetooth messages took 8.928823958034627 seconds
benchmark (1.2.0) this PR: Parsing 100000 bluetooth messages took 1.6808899159659632 seconds
2023-06-15 22:11:14 -04:00
Dirk Sarodnick 3440c1615d
Fix bluetooth tracker asyncio usage (#94695)
* fix for asyncio usage

fixes the error "Passing coroutines is forbidden, use tasks explicitly", caused by passing an async function into asyncio.wait directly instead of creating a task for it.

* removes unnecessary default param

* corrects formatting for black
2023-06-15 22:10:04 -04:00
J. Nick Koston 45bf1235d8
Remove airplay filter now that apple tv supports airplay 2 (#94693)
remove airplay filter
2023-06-15 22:09:10 -04:00