Compare commits

...

7411 Commits

Author SHA1 Message Date
Franck Nijhof
04829f0a1b Bumped version to 2023.10.0b3 2023-09-30 10:54:01 +02:00
Raman Gupta
01182e8a5c Fix zwave_js firmware update logic (#101143)
* Fix zwave_js firmware update logic

* add comment

* tweak implementation for ssame outcome
2023-09-30 10:53:50 +02:00
Joost Lekkerkerker
af041d2900 Bump aiowaqi to 1.1.1 (#101129) 2023-09-30 10:53:46 +02:00
Joost Lekkerkerker
822af4d40d Return None when value is not known in OpenHardwareMonitor (#101127)
* Return None when value is not known

* Add to coverage
2023-09-30 10:53:43 +02:00
Franck Nijhof
730acb34f2 Revert pin on AlexaPy (#101123) 2023-09-30 10:53:39 +02:00
Joost Lekkerkerker
b5eb158697 Correct youtube stream selector in media extractor (#101119) 2023-09-30 10:53:36 +02:00
Joost Lekkerkerker
d216fbddae Add logging to media extractor to know the selected stream (#101117) 2023-09-30 10:53:32 +02:00
Joost Lekkerkerker
d84d83a42a Migrate WAQI unique id (#101112)
* Migrate unique_id

* Add docstring
2023-09-30 10:53:29 +02:00
Franck Nijhof
c1ade85d65 Pin charset-normalizer in our package constraints (#101107) 2023-09-30 10:53:25 +02:00
Franck Nijhof
124eda6906 Correct binary ignore for charset-normalizer to charset_normalizer (#101106) 2023-09-30 10:53:22 +02:00
Stefan Agner
65c7b30720 Stop the Home Assistant Core container by default (#101105) 2023-09-30 10:53:18 +02:00
Franck Nijhof
1d2c570a01 Ignore binary distribution wheels for charset-normalizer (#101104) 2023-09-30 10:53:15 +02:00
Marc Mueller
2cc229ce42 Fix circular dependency on homeassistant (#101099) 2023-09-30 10:53:12 +02:00
Franck Nijhof
73356ae232 Use pep 503 compatible wheels index for builds (#101096) 2023-09-30 10:53:09 +02:00
Franck Nijhof
bfd7275972 Update Home Assistant base image to 2023.09.0 (#101092) 2023-09-30 10:53:05 +02:00
jjlawren
ef3bd0100c Bump plexapi to 4.15.3 (#101088)
* Bump plexapi to 4.15.3

* Update tests for updated account endpoint

* Update tests for updated resources endpoint

* Switch to non-web client fixture

* Set __qualname__ attribute for new library behavior
2023-09-30 10:53:01 +02:00
TheJulianJES
3f57c33f32 Fix ZHA exception when writing cie_addr during configuration (#101087)
Fix ZHA exception when writing `cie_addr`
2023-09-30 10:52:58 +02:00
Matthias Alphart
bae3379938 Update xknxproject to 3.3.0 (#101081) 2023-09-30 10:52:55 +02:00
Michael Hansen
85838c6af9 Use wake word description if available (#101079) 2023-09-30 10:52:52 +02:00
TJ Horner
9c0bc57fed Add native precipitation unit for weatherkit (#101073) 2023-09-30 10:52:48 +02:00
tronikos
97448eff8f Bump opower to 0.0.35 (#101072) 2023-09-30 10:52:42 +02:00
Paul Bottein
2f6fefefa7 Update frontend to 20230928.0 (#101067) 2023-09-30 10:52:36 +02:00
Franck Nijhof
d8f96d7709 Bumped version to 2023.10.0b2 2023-09-28 20:05:38 +02:00
Joost Lekkerkerker
fff3c6c6e9 Bump aiowaqi to 1.1.0 (#99751)
* Bump aiowaqi to 1.1.0

* Fix hassfest

* Fix tests
2023-09-28 20:03:43 +02:00
Michael Hansen
17362e1954 Remove fma instructions from webrtc-noise-gain (#101060) 2023-09-28 20:03:21 +02:00
TJ Horner
1bbd4662b7 Bump apple_weatherkit to 1.0.4 (#101057) 2023-09-28 20:03:18 +02:00
Joost Lekkerkerker
ad8033c0f2 Don't show withings repair if it's not in YAML (#101054) 2023-09-28 20:03:15 +02:00
Álvaro Fernández Rojas
081f194f6a Update aioairzone-cloud to v0.2.3 (#101052)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-09-28 20:03:12 +02:00
Joost Lekkerkerker
f13059eaf5 Pin pydantic to 1.10.12 (#101044) 2023-09-28 20:03:08 +02:00
Joost Lekkerkerker
0147108b89 Fix onvif creating a new entity for every new event (#101035)
Use topic value as topic
2023-09-28 20:03:05 +02:00
Jesse Hills
ffad30734b ESPHome: dont send error when wake word is aborted (#101032)
* ESPHome dont send error when wake word is aborted

* Add test
2023-09-28 20:03:02 +02:00
Erik Montnemery
5bd306392f Add LED control support to Home Assistant Green (#100922)
* Add LED control support to Home Assistant Green

* Add strings.json

* Sort alphabetically

* Reorder LED schema

* Improve test coverage

* Apply suggestions from code review

Co-authored-by: Stefan Agner <stefan@agner.ch>

* Sort + fix test

* Remove reboot menu

---------

Co-authored-by: Stefan Agner <stefan@agner.ch>
2023-09-28 20:02:59 +02:00
Tereza Tomcova
d6c42ee8e7 Bump PySwitchbot to 0.40.0 to support Curtain 3 (#100619) 2023-09-28 20:02:55 +02:00
Joost Lekkerkerker
35eaebd182 Add feature to add measuring station via number in waqi (#99992)
* Add feature to add measuring station via number

* Add feature to add measuring station via number

* Add feature to add measuring station via number
2023-09-28 20:02:52 +02:00
tyjtyj
81e8ca130f Fix google maps device_tracker same last seen timestamp (#99963)
* Update device_tracker.py 

This fix the google_maps does not show current location when HA started/restarted and also fix unnecessary update when last_seen timestamp is the same. 
Unnecessary update is causing proximity sensor switching from between stationary and certain direction.

* Remove elif

* Fix Black check

* fix black check

* Update device_tracker.py

Better patch

* Update device_tracker.py

* Update device_tracker.py

Fix Black

* Update device_tracker.py

change warning to debug
2023-09-28 20:02:48 +02:00
lennart24
9ab340047d Add shutter_tilt support for Fibaro FGR 223 (#96283)
* add support for shutter_tilt for Fibaro FGR 223
add tests for fgr 223

* Adjust comments and docstring

---------

Co-authored-by: Lennart <18117505+Ced4@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-28 19:50:52 +02:00
Paulus Schoutsen
b02f64196b Bumped version to 2023.10.0b1 2023-09-27 21:00:57 -04:00
Michael Hansen
af37de46bd Use webrtc-noise-gain without AVX2 (#101028) 2023-09-27 21:00:50 -04:00
Marc Mueller
be93793db9 Update pyweatherflowudp to 1.4.3 (#101022) 2023-09-27 21:00:49 -04:00
J. Nick Koston
c287564e68 Fix HomeKit handling of unavailable state (#101021) 2023-09-27 21:00:48 -04:00
Jan Bouwhuis
115c3d6e49 Fix handling reload with invalid mqtt config (#101015)
Fix handling reload whith invalid mqtt config
2023-09-27 21:00:47 -04:00
Marcel van der Veldt
415042f356 Adopt Hue integration to latest changes in Hue firmware (#101001) 2023-09-27 21:00:46 -04:00
steffenrapp
dde4b07c29 Add homeassistant reload_all translatable service name and description (#100437)
* Update services.yaml

* Update strings.json

* Update strings.json
2023-09-27 21:00:45 -04:00
Jan-Philipp Benecke
10e8173d4e Restore state of trend sensor (#100332)
* Restoring state of trend sensor

* Handle unknown state & parametrize tests
2023-09-27 21:00:44 -04:00
Franck Nijhof
e7fbd3b54b Bumped version to 2023.10.0b0 2023-09-27 18:14:30 +02:00
Diogo Morgado
4066f657d3 Add "UV Index" to IPMA (#100383)
* Bump pyipma to 3.0.7

* Add uv index sensor to IPMA
2023-09-27 17:45:21 +02:00
Simone Chemelli
5541181969 Address Comelit cover late review (#101008)
address late review
2023-09-27 17:38:14 +02:00
Jeef
577b664c3b Add WeatherFlow integration (#75530)
* merge upstream

* Update homeassistant/components/weatherflow/__init__.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* feat: Removing unused keys

* feat: Addressing PR to remove DEFAULT_HOST from init

* feat: Addressing PR abort case

* feat: Ensure there is a default host always

* feat: Addressing PR comments and fixing entity names via local testing

* feat: Tested units

* feat: updated variable names to hopefully add some clarity to the function

* feat: added more var names for clarity

* feat: Fixed abort

* Update homeassistant/components/weatherflow/__init__.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* feat: Removed an unnecessary line

* feat: Test updates

* feat: Removed unreachable code

* feat: Tons of improvements

* removed debug code

* feat: small tweaks

* feat: Fixed density into HA Compatibility

* feat: Handled the options incorrectly... now fixed

* feat: Handled the options incorrectly... now fixed

* Update homeassistant/components/weatherflow/manifest.json

Co-authored-by: J. Nick Koston <nick@koston.org>

* Cleaned up callback in __init__
Cleaning up config_flow as well

* feat: Cleaned up a stupid test

* feat: Simulating a timeout event

* feat: Triggering timeout in mocking

* feat: trying to pass tests

* refactor: Moved code around so easier to test

* Update homeassistant/components/weatherflow/__init__.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* feat: Incremental changes moving along well

* feat: Last fix before re-review

* feat: Hopefully the tests shall pass

* feat: Remove domian from unique id

* feat: Fixed entity name

* feat: Removed unneeded lambda - to make thread safe

* Working version...

* working

* working

* feat: Remove tuff

* feat: Removed dual call

* Update homeassistant/components/weatherflow/sensor.py

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

* Update homeassistant/components/weatherflow/strings.json

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

* feat: updates based on pr

* feat: removed some self refrences

* feat: Mod RSSI

* feat: Removed the custom Air Density (will add in a later PR)

* feat: Significant cleanup of config flow

* feat: Reworked the configflwo with the help of Joostlek

* feat: Updated test coverage

* feat: Removing bakcing lib attribute

* Update homeassistant/components/weatherflow/sensor.py

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

* Update homeassistant/components/weatherflow/sensor.py

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

* Update homeassistant/components/weatherflow/sensor.py

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

* Update homeassistant/components/weatherflow/sensor.py

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

* Update homeassistant/components/weatherflow/sensor.py

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

* feat: Updated translations

* feat: Renamed CUSTOM to VOC

* feat: Extreme simplification of config flow

* feat: Pushing incremental changes

* feat: Fixing test coverage

* feat: Added lambda expressions for attributes and removed the custom AirDensity sensor

* Update homeassistant/components/weatherflow/sensor.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update homeassistant/components/weatherflow/sensor.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* feat: Removed default lambda expression from raw_data_conv_fn

* feat: Added back default variable for lambda

* feat: Updated tests accordingly

* feat: Updated tests

* made sure to patch correct import

* made sure to patch correct import

* feat: Fixed up tests ... added missing asserts

* feat: Dropped model

* Update homeassistant/components/weatherflow/sensor.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Refactor: Updated code

* refactor: Removed commented code

* feat: close out all tests

* feat: Fixing the patch

* feat: Removed a bunch of stuff

* feat: Cleaning up tests even more

* fixed patch and paramaterized a test

* feat: Addressing most recent comments

* updates help of joostlek

* feat: Updated coverage for const

* Update homeassistant/components/weatherflow/strings.json

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

* Update homeassistant/components/weatherflow/strings.json

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

* Update homeassistant/components/weatherflow/strings.json

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

* Update homeassistant/components/weatherflow/strings.json

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

* Update homeassistant/components/weatherflow/strings.json

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

* Update homeassistant/components/weatherflow/sensor.py

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

* Update homeassistant/components/weatherflow/sensor.py

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

* Update homeassistant/components/weatherflow/strings.json

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

* Update homeassistant/components/weatherflow/sensor.py

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

* feat: Addressing more PR issues... probably still a few remain

* using const logger

* Update homeassistant/components/weatherflow/strings.json

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

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-27 17:28:05 +02:00
J. Nick Koston
b21451b3d1 Bump dbus-fast to 2.11.0 (#101005) 2023-09-27 10:23:06 -05:00
Álvaro Fernández Rojas
3178eac9cc Implement Airzone Cloud Zone climate support (#100792)
* Implement Airzone Cloud Zone climate support

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: add entity naming

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: implement requested changes

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-09-27 17:20:21 +02:00
Marc Mueller
c59404b5bc Fix additional test cases for Python 3.12 (#101006) 2023-09-27 17:19:20 +02:00
nachonam
9fdc8494b6 Add Freebox Home binary sensors (#92196)
Co-authored-by: Quentame <polletquentin74@me.com>
2023-09-27 17:11:31 +02:00
Joost Lekkerkerker
8b5bfd8cee Add test helper for cloud status updates (#100993)
* Add helper for cloud status updates

* Move import
2023-09-27 17:08:51 +02:00
Joost Lekkerkerker
25a80cd46f Add config flow to Twitch (#93451)
* Update twitch API

* Update twitchAPI

* Add tests

* Apply suggestions from code review

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Fix coverage

* Move Twitch constants to separate file

* Move Twitch constants to separate file

* Move Twitch constants to separate file

* Add application credentials

* Add config flow

* Try to add tests

* Add strings

* Add tests

* Add tests

* Improve tests

* Fix tests

* Extract Twitch client creation

* Fix reauth

* Remove import flow

* Remove import flow

* Remove reauth

* Update

* Fix Ruff

* Fix feedback

* Add strings

* Add reauth

* Do stuff in init

* Fix stuff

* Fix stuff

* Fix stuff

* Fix stuff

* Fix stuff

* Start with tests

* Test coverage

* Test coverage

* Remove strings

* Cleanup

* Fix feedback

* Fix feedback

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-09-27 15:45:52 +02:00
amitfin
91fcbb41b0 Skip timestamp check of the SIA events (#100660) 2023-09-27 15:13:38 +02:00
Luke Lashley
92694c53e0 Increase MyQ update interval (#100977) 2023-09-27 15:02:19 +02:00
Joost Lekkerkerker
7cb555739f Exclude manifest files from youtube media extraction (#100771)
* Exclude manifest files from youtube media extraction

* Simplify

* Fix
2023-09-27 14:48:03 +02:00
Joost Lekkerkerker
03827bda1e Use async_at_started in Withings (#100994)
* Use async_at_started in Withings

* Make nice
2023-09-27 14:13:11 +02:00
Erik Montnemery
f232ddb85e Bump py-dormakaba-dkey to 1.0.5 (#100992) 2023-09-27 13:57:28 +02:00
Jan-Philipp Benecke
96151e7faa Use local time instead of UTC time as default backup filenames (#100959)
Use local time instead of UTC for the backup name
2023-09-27 13:32:30 +02:00
Robert Svensson
01b5854968 Rework UniFi websocket (#100614)
* Rework websocket management

* remove unnecessary fixture

* Remove controller from mock_unifi_websocket

* Mock api.login in reconnect method

* Remove unnecessary edits

* Minor clean up

* Bump aiounifi to v63

* Wait on task cancellation
2023-09-27 10:56:24 +02:00
Jan-Philipp Benecke
134c005168 Add typing to poolsense (#100984) 2023-09-27 10:14:51 +02:00
G Johansson
43954d660b Add trigger weather template (#100824)
* Add trigger weather template

* Add tests

* mod dataclass

* Remove legacy forecast

* Fix test failure

* sorting

* add hourly test

* Add tests

* Add and fix tests

* Improve tests

---------

Co-authored-by: Erik <erik@montnemery.com>
2023-09-27 10:11:57 +02:00
Joost Lekkerkerker
fd53e116bb Add config flow to color extractor (#100862) 2023-09-27 10:11:42 +02:00
Jan Bouwhuis
0f38cd5794 Allow to reset an mqtt lock to an unknown state (#100985) 2023-09-27 09:50:01 +02:00
Joost Lekkerkerker
d2bcf88bbf Set device name as entity name for Comelit lights (#100986)
Fix entity name for Comelit lights
2023-09-27 09:39:57 +02:00
Marty Sun
4788dd2905 Add "start_irrigation" service for Yardian (#100257)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-27 08:59:15 +02:00
Simone Chemelli
d70308ae9f Add cover support to Comelit (#100904)
* add cover support to Comelit

* coveragerc

* Update homeassistant/components/comelit/cover.py

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

* Update homeassistant/components/comelit/cover.py

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

* Update homeassistant/components/comelit/cover.py

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-27 08:56:38 +02:00
Simone Chemelli
db5943ad6d Improve Comelit login with PIN (#100860)
* improve login

* library bump
2023-09-27 08:52:46 +02:00
Franck Nijhof
0afb060c24 Merge branch 'master' into dev 2023-09-27 08:51:27 +02:00
Joost Lekkerkerker
e5567c09b9 Deprecate Withings YAML (#100967) 2023-09-27 08:33:43 +02:00
Raman Gupta
70e3da207a Automatically enable/disable zwave_js server logging in lib (#100837)
* Bump zwave-js-server-python to 0.52.0

* Add WS command to enabled zwave_js server logging in lib

* enable and disable server logging automatically

* fix conditionals

* fix tests

* Add logging

* small tweaks

* Add logger as a dependency

* fix test

* Prepare for movement of event constant

* Add constant so tests pass
2023-09-27 01:17:52 -04:00
Raman Gupta
067b94899f Move EVENT_LOGGING_CHANGED to constants (#100974)
* Move EVENT_LOGGING_CHANGED to constants

* fix test

* remove logger as dependency for bluetooth and fix test
2023-09-27 01:06:14 -04:00
Jan-Philipp Benecke
009349acf0 Move poolsense base entity to its own file (#100981) 2023-09-27 07:04:20 +02:00
puddly
4e4d4992bf Bump ZHA dependencies (#100979) 2023-09-26 23:39:07 -05:00
TheJulianJES
93e2d4b74c Bump zha-quirks to 0.0.104 (#100975) 2023-09-26 23:20:23 -04:00
Michael Hansen
af8367a8c6 Send Wyoming Detect message during wake word detection (#100968)
* Send Detect message with desired wake word

* Add tests

* Fix test
2023-09-26 19:24:02 -05:00
Bram Kragten
9b574fd2c9 Update frontend to 20230926.0 (#100969) 2023-09-26 19:24:42 -04:00
Raman Gupta
65f307fe9c Add endpoint to zwave_js_notification event (#100951) 2023-09-26 18:48:59 -04:00
Michael Hansen
8a9b2f4515 Bump to webrtc-noise-gain 1.2.1 for 32-bit builds (#100942)
* Bump to 1.2.0 for 32-bit builds

* Bugfix with 1.2.1
2023-09-26 17:14:48 -05:00
Simone Chemelli
b617451a25 Add button platform to Vodafone Station (#100941)
* button platform initial commit

* fix is_suitable

* cleanup

* coveragerc

* add translations

* remove redundant key
2023-09-27 00:09:42 +02:00
Steven Looman
ad17f1622c Bump async-upnp-client to 0.36.1 (#100961) 2023-09-26 16:32:37 -05:00
Jan-Philipp Benecke
eab428f0e2 Move poolsense coordinator to its own file (#100964) 2023-09-26 23:28:25 +02:00
Jesse Hills
4c21aa18db Add audio_settings for pipeline from ESPHome device (#100894)
* Add audio_settings for pipeline from ESPHome device

* ruff fixes

* Bump aioesphomeapi 17.0.0

* Mypy

* Fix tests

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-09-26 16:27:26 -05:00
Michael Hammer
f899e5159b KNX: Provide project data and parser version via websocket (#100676)
* feat(knxproject-explore): providing knxproject via websocket, also xknxproject version in info mesage

* feat(knxproject-explore): adding test case

* reverted back adding of xknxproject version

* fix(): Enriching get project test case to check against FIXTURE

* feat(knxproject-explore): providing knxproject via websocket, also xknxproject version in info mesage

* feat(knxproject-explore): adding test case

* reverted back adding of xknxproject version

* fix(): Enriching get project test case to check against FIXTURE
2023-09-26 23:17:37 +02:00
Raman Gupta
176f5dc2d6 Bump zwave-js-server-python to 0.52.0 (#100833)
* Bump zwave-js-server-python to 0.52.0

* remove old function

* fix tests
2023-09-26 17:05:54 -04:00
Jan Bouwhuis
59a26010ba Cleanup redundant mqtt entity constructors (#100939)
* Remove redundant mqtt entity constructors

* Remove unrelated change

* Follow up comment

* Revert changes to mqtt update platform

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-26 23:03:11 +02:00
Jan-Philipp Benecke
d387308f3c Move motion blinds coordinator to its own file (#100952) 2023-09-26 22:50:46 +02:00
Jan Bouwhuis
8ec11910af Allow discovery config update mqtt update entities (#100957) 2023-09-26 15:21:27 -05:00
Joost Lekkerkerker
0f95de997f Support cloudhooks in Withings (#100916)
* Support cloudhooks in Withings

* Support cloudhooks in Withings

* Support cloudhooks in Withings

* Remove strings
2023-09-26 21:52:18 +02:00
Luke Lashley
42b006a108 Update MyQ to use python-myq 3.1.9 (#100949) 2023-09-26 14:48:36 -05:00
Erik Montnemery
b281fa17fc Simplify wake_word/info + improve test coverage (#100902)
* Simplify wake_word/info + improve test coverage

* Fix test

* Revert unrelated changes
2023-09-26 14:07:27 -05:00
Edouard Lafargue
4028596977 Add Medcom Bluetooth integration (#100289)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-26 13:41:34 -05:00
Simone Chemelli
60dd5f1d50 Bump aiovodafone to 0.3.1 (#100944) 2023-09-26 20:27:34 +02:00
Erik Montnemery
a9bcfe5700 Abort wake word detection when assist pipeline is modified (#100918) 2023-09-26 20:24:55 +02:00
Jan Bouwhuis
9254eea9e2 Remove unused attribute for MQTT lawn_mower (#100946)
Remove unused attributes for MQTT lawn_mower
2023-09-26 20:18:52 +02:00
Simone Chemelli
e18ff03244 Improve Vodafone Station setup dialog messages (#100937) 2023-09-26 20:16:50 +02:00
Jan Bouwhuis
4d7e3d2b0f Remove redundant initial assigment for mqtt siren (#100945) 2023-09-26 20:07:54 +02:00
Olen
e921e4a662 Move fetching of sw_version for Twinkly (#100286) 2023-09-26 20:04:17 +02:00
Joost Lekkerkerker
c7e4604cfd Call async added to hass super in Airvisual (#100449) 2023-09-26 20:03:44 +02:00
Jan-Philipp Benecke
d94b09655b Use snapshot assertion for wiz diagnostics test (#99154) 2023-09-26 20:03:22 +02:00
Joost Lekkerkerker
bdfdeb2bc0 Call async added to hass super in Risco (#100444) 2023-09-26 20:02:00 +02:00
Joost Lekkerkerker
ae7ede1253 Call async added to hass super in Smart Meter Texas (#100445) 2023-09-26 20:01:33 +02:00
Joost Lekkerkerker
9be5005a70 Use automatic title during config flow setup in Aurora (#99199) 2023-09-26 20:00:23 +02:00
Joost Lekkerkerker
bc665a1368 Remove setting name in AnthemAV config flow (#99148) 2023-09-26 19:58:47 +02:00
Jan Bouwhuis
20a2e129fb Intialize mqtt lock in an unknown state in pessimistic mode (#100943)
Intialize mqtt lock as unknown in pessimistic mode
2023-09-26 19:53:45 +02:00
Erik Montnemery
734c4e8e32 Rename WakeWord.ww_id to WakeWord.id (#100903)
* Rename WakeWord.ww_id to WakeWord.wake_word_id

* Revert unrelated changes

* Rename to id

* Correct rebase
2023-09-26 19:12:16 +02:00
Joost Lekkerkerker
074eb966dd Add config flow to AfterShip (#100872)
* Add config flow to Aftership

* Add config flow to Aftership

* Fix schema

* Update homeassistant/components/aftership/strings.json

Co-authored-by: Robert Resch <robert@resch.dev>

* Fix feedback

---------

Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-26 18:05:23 +02:00
Michael
18fad569e0 Add support to remove orphan devices in AVM FRITZ!SmartHome (#100739) 2023-09-26 18:01:01 +02:00
Bram Kragten
82fdd8313f Update frontend manifest for new icons (#100936) 2023-09-26 17:53:26 +02:00
Joost Lekkerkerker
59207be5f8 Add body_exists to MockRequest in aiohttp util (#100932)
* Add body_exists to MockRequest in aiohttp util

* Add body_exists to MockRequest in aiohttp util

* Add body_exists to MockRequest in aiohttp util
2023-09-26 17:52:29 +02:00
Rami Mosleh
785b46af22 Add re-auth flow to glances integration (#100929)
* Add reauth flow to glances integration.

* add reauth string

* add reauth strings
2023-09-26 17:46:12 +02:00
Erik Montnemery
c823e407fd Tweak test wake_word.test_init.test_detected_entity (#100910) 2023-09-26 10:42:08 -05:00
J. Nick Koston
6551e52225 Bump zeroconf to 0.115.0 (#100931) 2023-09-26 10:08:27 -05:00
J. Nick Koston
c9a55c7f84 Cache the latest short term stat id for each metadata_id on each run (#100535) 2023-09-26 09:57:59 -05:00
J. Nick Koston
4b39bf7e5b Small cleanup to isy994 extra_state_attributes (#100935) 2023-09-26 09:57:25 -05:00
Allen Porter
822251a642 Update fitbit client to use asyncio (#100933) 2023-09-26 07:50:42 -07:00
Erik Montnemery
bd40cbcb21 Tweak pipeline.multiply_volume (#100905) 2023-09-26 09:19:57 -05:00
Rami Mosleh
31e9ca0099 Handle authorization error in glances config flow (#100866)
* Handle authroization error in glances config flow

* Remove validate_input method and expections

* update tests
2023-09-26 14:51:04 +02:00
Joost Lekkerkerker
91bc65be9c Add entity translations to SRP Energy (#99011) 2023-09-26 14:47:19 +02:00
David Knowles
73cfe659ea Make Hydrawise compliant with new naming standards (#100921)
* Make Hydrawise compliant with new naming standards

* Update binary_sensor.py

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-26 14:34:43 +02:00
Álvaro Fernández Rojas
29da43b9a9 Bump aioairzone-cloud to 0.2.2 (#100915)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-09-26 14:04:50 +02:00
steffenrapp
2165f0a538 Add missing input_button service translation (#100387) 2023-09-26 13:58:58 +02:00
Joost Lekkerkerker
4ffac3e7ed Cleanup Withings const import (#100914) 2023-09-26 13:16:37 +02:00
Marc Mueller
bd7a86a0a6 Remove async-timeout as core dependency (#100912) 2023-09-26 05:57:10 -05:00
Erik Montnemery
4df14b2625 Remove duplicated call to PipelineRun.end from PipelineInput.execute (#100909)
Remove duplicated call to PipelineRun.end from PipelineInput.execute
2023-09-26 12:38:25 +02:00
Dennis
e5a151c4c3 Add state classes to Tomorrowio sensors (#100692) 2023-09-26 12:33:39 +02:00
J. Nick Koston
667f4b1ca8 Mark Bluetooth scanner as not scanning when watchdog timeout is reached (#100738) 2023-09-26 05:29:46 -05:00
Marc Mueller
f837e6722c Update cryptography to 41.0.4 (#100911) 2023-09-26 05:27:56 -05:00
Joost Lekkerkerker
f21d924dd5 Add entity translations to Wallbox (#99021)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-26 11:41:40 +02:00
Erik Montnemery
1e76d37cee Rename PipelineData.pipeline_runs to pipeline_debug (#100907) 2023-09-26 11:35:51 +02:00
Joost Lekkerkerker
b0a7e68984 Rename Withings coordinator file (#100899)
Rename common.py to coordinator.py
2023-09-26 10:59:45 +02:00
Maikel Punie
249e20f8e5 Bump pyduotecno to 2023.9.0 (#100900) 2023-09-26 10:57:13 +02:00
Joost Lekkerkerker
4f63c7934b Add coordinator to Withings (#100378)
* Add coordinator to Withings

* Add coordinator to Withings

* Fix tests

* Remove common files

* Fix tests

* Fix tests

* Rename to Entity

* Fix

* Rename webhook handler

* Fix

* Fix external url

* Update homeassistant/components/withings/entity.py

Co-authored-by: Luke Lashley <conway220@gmail.com>

* Update homeassistant/components/withings/entity.py

Co-authored-by: Luke Lashley <conway220@gmail.com>

* Update homeassistant/components/withings/entity.py

Co-authored-by: Luke Lashley <conway220@gmail.com>

* Update homeassistant/components/withings/entity.py

Co-authored-by: Luke Lashley <conway220@gmail.com>

* fix imports

* Simplify

* Simplify

* Fix feedback

* Test if this makes changes clearer

* Test if this makes changes clearer

* Fix tests

* Remove name

* Fix feedback

---------

Co-authored-by: Luke Lashley <conway220@gmail.com>
2023-09-26 09:17:11 +02:00
David Knowles
8ba6fd7935 Add device info to Hydrawise (#100828)
* Add device info to Hydrawise

* Apply suggestions from code review

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

* Remove _attr_has_entity_name

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-26 09:15:20 +02:00
G Johansson
7b1b189f3e Add date range to Workday (#96255) 2023-09-26 08:21:36 +02:00
Jan-Philipp Benecke
9c1944f830 Enable strict typing in london underground (#100563)
* Enable strict typing in london underground

* Change typing from Any

* Remove redundant cast

* Change from Mapping to dict
2023-09-26 08:13:59 +02:00
Paulus Schoutsen
c5c5d9ed0c Allow fetching wake word entity info (#100893) 2023-09-25 21:33:04 -05:00
Allen Porter
fa2d77407a Add Rain Bird irrigation calendar (#87604)
* Initial version of a calendar for the rainbird integration

* Improve calendar support

* Revert changes to test fixtures

* Address ruff error

* Fix background task scheduling

* Use pytest.mark.freezetime to move to test setup

* Address PR feedback

* Make refresh a member

* Merge rainbird and calendar changes

* Increase test coverage

* Readability improvements

* Simplify timezone handling
2023-09-25 20:27:38 -04:00
Allen Porter
18f29993c5 Simplify fitbit unit system and conversions (#100825)
* Simplify fitbit unit conversions

* Use enum values in unit system schema

* Use fitbit unit system enums
2023-09-25 20:08:59 -04:00
Michael Hansen
785618909a Use webrtc-noise-gain for audio enhancement in Assist pipelines (#100698)
* Use webrtc-noise-gain instead of webrtcvad package

* Switching to ProcessedAudioChunk

* Refactor VAD and fix tests

* Add vad no chunking test

* Add test that runs audio enhancements
2023-09-25 20:03:50 -04:00
Jan Bouwhuis
a4f7f3ba7e Make sure time is changed in mqtt event test (#100889) 2023-09-26 00:32:12 +02:00
Jc2k
9fe6cd61df Bump aiohomekit to 3.0.5 (#100886) 2023-09-25 23:08:38 +01:00
Jc2k
cae19431d1 Simplify homekit_controller tests with snapshots (#100885) 2023-09-25 16:26:27 -05:00
Jan Bouwhuis
c5b32d6307 Add doorbell event to google_assistant (#97123)
* First attempt async_report_state_all

* Move notificationSupportedByAgent to SYNC response

* Make notificationSupportedByAgent conditional

* Add generic sync_options method

* Report event

* Add event_type as ID

* User UUID, imlement query_notifications

* Refactor query_notifications

* Add test

* MyPy

* Unreachable code

* Tweak

* Correct notification message

* Timestamp was wrong unit, it should be in seconds
* Can only allow doorbell class, since it's the only type

* Fix test

* Remove unrelated changes - improve coverage

* Additional tests

---------

Co-authored-by: Joakim Plate <elupus@ecce.se>
2023-09-25 23:20:02 +02:00
J. Nick Koston
6387263007 Bump async-upnp-client to 0.36.0 (#100881) 2023-09-25 16:19:40 -05:00
J. Nick Koston
d5c22bec82 Bump zeroconf to 0.114.0 (#100880) 2023-09-25 16:19:24 -05:00
J. Nick Koston
dbdc513aa5 Bump dbus-fast to 2.10.0 (#100879) 2023-09-25 16:19:03 -05:00
Joost Lekkerkerker
15f40f2c5a Bump yt-dlp to 2023.9.24 (#100884) 2023-09-25 23:06:48 +02:00
Jan Bouwhuis
90bf20c6f8 Add type hints for intent_script integration (#99393)
* Add type hints for intent_script integration

* Correct 2nd typo

* omit total=False as all options are set
2023-09-25 23:01:53 +02:00
Jan Bouwhuis
60b8775f4a Avoid redundant calls to async_write_ha_state in mqtt siren (#100813)
* Avoid redundant calls to async_write_ha_state

* Add comment
2023-09-25 22:36:13 +02:00
Jan-Philipp Benecke
2eefd21dcc Parametrize more co2signal config flow tests (#100882)
* Clean up co2signal tests

* Some more clean up

* Use named parameter ids of parametrize
2023-09-25 22:21:40 +02:00
Jan Bouwhuis
a242a1c107 Add tests for mqtt image (#100793)
* Rework mqtt image writing state

* Revert mixin changes, add attr

* Revert code changes
2023-09-25 22:20:32 +02:00
Jan Bouwhuis
7258bc6457 Avoid redundant calls to async_write_ha_state in mqtt vacuum (#100799)
* Avoid redundant calls to async_write_ha_state

* Add comment

* Rephrase
2023-09-25 22:17:29 +02:00
J. Nick Koston
969d6b852e Bump led-ble to 1.0.1 (#100873) 2023-09-25 14:34:02 -05:00
Jan-Philipp Benecke
b9a3863645 Handle json decode exception in co2signal (#100857)
* Handle json decode exception in co2signal

* Update homeassistant/components/co2signal/coordinator.py

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

* Fix import

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-25 21:21:01 +02:00
Jan Bouwhuis
ea1108503d Rework and fix mqtt siren writing state and attributes (#100871)
Rework mqtt siren writing state and attributes
2023-09-25 21:08:14 +02:00
Erik Montnemery
d76c5ed351 Use wake word settings in assist pipeline runs (#100864) 2023-09-25 12:58:10 -04:00
Marc Mueller
11e8bf0b9c Update types packages (#100850) 2023-09-25 18:53:22 +02:00
Jan Bouwhuis
30c7e7fbdf Avoid redundant calls to async_ha_write_state mqtt update platform (#100819)
Avoid redundant calls to async_ha_write_state
2023-09-25 18:08:02 +02:00
Jan Bouwhuis
cd3d3b76a3 Avoid redundant calls to async_ha_write_state in mqtt text (#100816)
Avoid redundant calls to async_ha_write_state
2023-09-25 18:07:24 +02:00
Jan Bouwhuis
8d10cdce4e Avoid redundant calls to async_ha_write_state in mqtt switch (#100815)
Avoid redundant calls to async_ha_write_state
2023-09-25 18:06:19 +02:00
Jan Bouwhuis
33d45b3454 Avoid redundant calls to async_write_ha_state in mqtt select (#100809)
Avoid redundant calls to async_write_ha_state
2023-09-25 18:05:42 +02:00
Jan Bouwhuis
180f248370 Avoid redundant calls to async_write_ha_state in mqtt number (#100808)
Avoid redundant calls to async_write_ha_state
2023-09-25 18:05:14 +02:00
Jan Bouwhuis
98cc2e8098 Avoid redundant calls to async_write_ha_state in mqtt lock (#100802)
Avoid redundant calls to async_write_ha_state
2023-09-25 18:04:33 +02:00
Jan Bouwhuis
ce02cbefc9 Avoid redundant calls to async_write_ha_state in mqtt lawn_mower (#100795)
Avoid redundant calls to async_write_ha_state
2023-09-25 18:03:52 +02:00
Jc2k
014fb61743 Fix missing device class on Velux Windows (#100863) 2023-09-25 11:03:11 -05:00
Jan Bouwhuis
002be37257 Rework and added tests for mqtt event (#100769)
Use write_state_on_attr_change and add tests
2023-09-25 18:02:17 +02:00
Jan Bouwhuis
f83a597603 Avoid redundant calls to async_write_ha_state in mqtt humidifier (#100781)
Avoid redundant calls to async_write_ha_state
2023-09-25 18:00:08 +02:00
Jan Bouwhuis
3da4815522 Avoid redundant calls to async_write_ha_state for mqtt fan (#100777)
Avoid redundant calls to async_write_ha_state
2023-09-25 17:59:33 +02:00
elmurato
84451e858e Simplify Minecraft Server SRV handling (#100726) 2023-09-25 17:56:26 +02:00
Erik Montnemery
803d24ad1a Rename wake_word.async_default_engine to wake_word.async_default_entity (#100855)
* Rename wake_word.async_default_engine to wake_word.async_default_entity

* tweak

* Some more rename

* Update tests
2023-09-25 17:08:37 +02:00
Jc2k
8ed0f05270 Add duration and sensitivity configuration for Eve Motion (#100861) 2023-09-25 09:52:27 -05:00
J. Nick Koston
4c255677c3 Add support for receivers to HomeKit (#100717) 2023-09-25 09:36:01 -05:00
J. Nick Koston
c1b9400833 Provide a better model for HomeKit service entries (#100848) 2023-09-25 09:34:53 -05:00
Jc2k
fb174f8063 Add valve position sensor for Eve Thermo (#100856) 2023-09-25 09:27:18 -05:00
Marc Mueller
dd302b291d Update pylint to 2.17.6 (#100849) 2023-09-25 09:14:07 -05:00
Erik Montnemery
5a3efb9149 Store wakeword settings in assist pipelines (#100847)
* Store wakeword settings in assist pipelines

* wakeword -> wake_word

* Remove unneeded variable
2023-09-25 16:07:26 +02:00
Jc2k
7334bc7c9b Add a select entity for homekit temperature display units (#100853) 2023-09-25 08:53:01 -05:00
Paulus Schoutsen
23b239ba77 Allow passing a wake word ID to detect wake word (#100832)
* Allow passing a wake word ID to detect wake word

* Do not inject default wake words in wake_word integration
2023-09-25 15:33:54 +02:00
Maikel Punie
8a44adb447 Add binary sensors for duotecno (#100844)
* Add binary sensors for duotecno

* Add comments
2023-09-25 13:34:39 +02:00
Kevin Worrel
77007ef091 Explicitly define ScreenLogic entity descriptions (#100173) 2023-09-25 06:26:26 -05:00
Alex Yao
2ae07096d2 Address late review on Life360 button (#100740) 2023-09-25 06:09:16 -05:00
Maikel Punie
19854ded16 Add duotecno climate (#99333)
* Add duotecno climate

* Add climate to .coveragerc

* Update homeassistant/components/duotecno/climate.py

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

* Update homeassistant/components/duotecno/climate.py

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

* more comments

* more comments

* more comments

* more comments

* fix typo

* Add translation key

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-25 12:52:51 +02:00
dependabot[bot]
2a443648fc Bump actions/checkout from 4.0.0 to 4.1.0 (#100836)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-25 11:01:12 +02:00
G Johansson
8d50be379c Create repairs in Workday if country or province is wrong (#98753)
* Repairs workday

* fix if not province exist

* Tests repairs

* Add tests

* Finalize tests

* Fix feedback

* simplify

* Less translations
2023-09-25 08:59:15 +02:00
G Johansson
c414e52b55 Change duration for timer.start service to only change running duration (#99628)
* Get back duration for timer

* running duration

* Mods

* Finish

* Fix start call

* remove restore idle

* running duration not None

* fix tests
2023-09-25 08:57:02 +02:00
J. Nick Koston
6b19602322 Bump aioesphomeapi to 16.0.6 (#100826)
changelog: https://github.com/esphome/aioesphomeapi/compare/v16.0.5...v16.0.6
2023-09-25 07:22:42 +02:00
Aaron Bach
7a6f337b01 Add missing SimpliSafe binary sensors (#100820) 2023-09-24 15:17:45 -06:00
Daniel Trnka
09729e8c46 Add Mysensors battery sensor (#100749)
* Move child related stuff to MySensorsChildEntity

* Dispatch signal for newly discovered MySensors node

* Create battery entity for each MySensors node

* Removed ATTR_BATTERY_LEVEL attribute from each node sensor

Attribute is redundant with newly introduced battery sensor entity

* Apply suggestions from code review

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-24 22:50:13 +02:00
Nathan Spencer
6d624ecb46 Bump pylitterbot to 2023.4.8 (#100811) 2023-09-24 22:46:43 +02:00
Allen Porter
66ebb479ea Rewrite fitbit sensor API response value parsing (#100782)
* Cleanup fitbit sensor API parsing

* Remove API code that is not used yet

* Remove dead code for battery levels

Small API parsing cleanup

* Address PR feedback

* Update homeassistant/components/fitbit/sensor.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-24 22:37:48 +02:00
Álvaro Fernández Rojas
5549f697cf Update AEMET-OpenData to v0.4.5 (#100818)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-09-24 22:18:31 +02:00
J. Nick Koston
b9e8566608 Bump bluetooth-data-tools to 0.12.0 (#100794) 2023-09-24 20:29:29 +02:00
Jc2k
0c89f5953f Preserve private ble device broadcast interval when MAC address rotates (#100796) 2023-09-24 19:24:12 +01:00
Franck Nijhof
0cbd46592a 2023.9.3 (#100755) 2023-09-24 18:58:43 +02:00
Scott Colby
49715f300a Allow workday sensor to be configured without a country (#93048)
* Merge branch 'dev' into workday_without_country

* ruff

* remove province check

* Remove not needed test

* Mod config flow

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-09-24 16:13:45 +02:00
Simone Chemelli
49b8937bb3 Fix Comelit device info (#100587) 2023-09-24 14:54:10 +02:00
Simone Chemelli
b19a0fb2e9 Fix Comelit device info (#100587) 2023-09-24 14:51:56 +02:00
Franck Nijhof
0ae285c404 Update home-assistant/builder to 2023.09.0 (#100797) 2023-09-24 14:50:50 +02:00
G Johansson
f22ecf2a09 Add strong to fan mode for Sensibo (#100773) 2023-09-24 14:50:47 +02:00
David Knowles
0eac0bb3c5 Bump pyschlage to 2023.9.1 (#100760) 2023-09-24 14:50:43 +02:00
David Knowles
25cb835faf Bump pyschlage to 2023.9.0 (#99624) 2023-09-24 14:50:38 +02:00
Franck Nijhof
4fb482610b Update home-assistant/wheels to 2023.09.1 (#100758)
* Update home-assistant/wheels to 2023.09.0

* Update home-assistant/wheels to 2023.09.1
2023-09-24 14:48:24 +02:00
sdb9696
1779222062 Bump ring-doorbell to 0.7.3 (#100688)
Bump ring to 0.7.3
2023-09-24 14:48:20 +02:00
Allen Porter
caacdabd3d Fix rainbird unique id (#99704)
* Don't set a unique id for devices with no serial

* Add additional check for the same config entry host/port when there is no serial

* Update homeassistant/components/rainbird/config_flow.py

Co-authored-by: Robert Resch <robert@resch.dev>

* Update tests/components/rainbird/test_config_flow.py

Co-authored-by: Robert Resch <robert@resch.dev>

* Update tests/components/rainbird/test_config_flow.py

Co-authored-by: Robert Resch <robert@resch.dev>

---------

Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-24 14:48:17 +02:00
Erik Montnemery
0dc21504f5 Remove support for excluding attributes in recorder platforms (#100679) 2023-09-24 14:45:06 +02:00
Franck Nijhof
1b1901cb6d Update home-assistant/builder to 2023.09.0 (#100797) 2023-09-24 14:36:02 +02:00
Jan Bouwhuis
edb28be964 Avoid redundant calls to async_write_ha_state in mqtt device_tracker (#100767)
Avoid redundant calls to async_ha_write_state
2023-09-24 12:52:13 +02:00
Jc2k
f0375eb97e Expose bluetooth availability tracking interval controls to integrations (#100774) 2023-09-24 10:45:25 +02:00
AtomBrake
eb020dd66c Update powerwall password description (#100389)
Update strings.json

Updated wording of how to find password on newer model gateways
2023-09-24 08:02:48 +02:00
Nathan Tilley
d453f3809c Clean up FAA Delays constants (#100788)
Move const to platform
2023-09-24 07:02:34 +02:00
Allen Porter
ae29ddee74 Add more test coverage for fitbit sensors (#100776) 2023-09-23 15:38:53 -07:00
Nathan Tilley
451c085587 Bump faadelays to 2023.8.0 (#100700)
* Update component to use new API version

* Revert new features, implement #95546, bump library

* Revert #95546 changes, remove NOTAM
2023-09-24 00:06:49 +02:00
David Knowles
f8a8fe760d Add config flow to Hydrawise (#95589)
* Add config flow to Hydrawise

* Raise an issue when a YAML config is detected

* Add a test for YAML import

* Add missing __init__.py

* Update CODEOWNERS

* Update requirements_test_all.txt

* Add config flow data to strings.json

* Hande scan_interval not being in YAML on import

* Fix requirements

* Update deprecation dates

* Update requirements_test_all.txt

* Changes from review

* Update homeassistant/components/hydrawise/__init__.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Add already_configured to strings.json

* Add back setup_platform functions

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Add back setup_platform

* Update requirements_test_all.txt

* Run black on hydrawise/*.py

* Add missing import of HOMEASSISTANT_DOMAIN

* Use more specific errors in config flow

* Add additional tests

* Update config flow to use pydrawise.legacy

* Re-work YAML deprecation issues

* Revert some changes to binary_sensor, as requested in review

* Changes requested during review

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Remove unused STE_USER_DATA_SCHEMA

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Update comment in setup_platform

* Re-work the config flow again

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Update tests

* Add back the _default_watering_timer attribute

* Bump deprecation dates

* Update requirements_test_all.txt

* Update CODEOWNERS

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-24 00:03:07 +02:00
G Johansson
28dc17c0b3 Refactor Sensibo tests to use snapshot (#100775) 2023-09-23 23:37:02 +02:00
Allen Porter
8d8c7187d3 Fix rainbird unique id (#99704)
* Don't set a unique id for devices with no serial

* Add additional check for the same config entry host/port when there is no serial

* Update homeassistant/components/rainbird/config_flow.py

Co-authored-by: Robert Resch <robert@resch.dev>

* Update tests/components/rainbird/test_config_flow.py

Co-authored-by: Robert Resch <robert@resch.dev>

* Update tests/components/rainbird/test_config_flow.py

Co-authored-by: Robert Resch <robert@resch.dev>

---------

Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-23 23:14:57 +02:00
G Johansson
1f66fc013c Add strong to fan mode for Sensibo (#100773) 2023-09-23 23:08:07 +02:00
G Johansson
06ade74711 Bump pysensibo 1.0.35 (#100245)
* Bump pysensibo 1.0.34

* 1.0.35

* Mod tests

* revert refactoring

* Fix tests
2023-09-23 23:01:08 +02:00
Joost Lekkerkerker
4a86892d82 Fix fitbit test code owner (#100772) 2023-09-23 13:49:08 -07:00
sdb9696
1fce60bd6f Bump ring-doorbell to 0.7.3 (#100688)
Bump ring to 0.7.3
2023-09-23 21:21:34 +02:00
Joost Lekkerkerker
ba6a92756a Call async added to hass super in Flo (#100453) 2023-09-23 12:05:53 -07:00
Allen Porter
781bc5b3bc Add tests for fitbit integration (#100765)
* Add tests for fitbit integration

* Update coveragerc

* Update test requirements
2023-09-23 12:04:44 -07:00
Joost Lekkerkerker
71aef4e95a Add media extractor tests (#100462)
* Add tests for media extractor

* Complete test coverage

* Fix test dep
2023-09-23 12:04:29 -07:00
David Knowles
a826f26642 Bump pyschlage to 2023.9.1 (#100760) 2023-09-23 20:37:57 +02:00
Allen Porter
d833c1a598 Add myself as a fitbit codeowner (#100766) 2023-09-23 20:32:52 +02:00
rappenze
a2730fb29d Fibaro finish separation of scenes (#100734) 2023-09-23 19:13:03 +02:00
Jan Bouwhuis
14b39c3bcf Correct some typo's in MQTT issue string (#100759) 2023-09-23 19:05:52 +02:00
Franck Nijhof
6383cafeb9 Update home-assistant/wheels to 2023.09.1 (#100758)
* Update home-assistant/wheels to 2023.09.0

* Update home-assistant/wheels to 2023.09.1
2023-09-23 17:38:21 +02:00
Maciej Bieniek
5c5dff034c Add event platform for Shelly gen1 devices (#100655)
* Initial commit

* Use description.key

* Add translations

* Check event_types

* Rename input_id to channel

* Fix removeal confition

* Add tests

* Sort classes and consts

* Use ShellyBlockEntity class

* Update tests

* Update homeassistant/components/shelly/event.py

Co-authored-by: Shay Levy <levyshay1@gmail.com>

---------

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2023-09-23 16:03:57 +02:00
Franck Nijhof
527c7b21fd Bumped version to 2023.9.3 2023-09-23 13:47:05 +02:00
G Johansson
ce8062041f Fix weather template forecast attributes (#100748) 2023-09-23 13:46:00 +02:00
Michael Hansen
862a26afad Bump intents to 2023.9.22 (#100737) 2023-09-23 13:45:57 +02:00
puddly
c07a112601 Bump ZHA dependencies (#100732) 2023-09-23 13:45:53 +02:00
Erik Montnemery
88f379d08f Fix handling of unit system change in sensor (#100715) 2023-09-23 13:45:50 +02:00
Simone Chemelli
bb8850e8cf Bump aiocomelit to 0.0.8 (#100714)
* Bump aiocomelit to 0.0.8

* fix import

* fix tests
2023-09-23 13:45:47 +02:00
Jan Bouwhuis
556e40add5 Fix mqtt light rgbww update without state topic (#100707)
* Fix mqtt light rgbww update without state topic

* Add @callback decprator and correct mired conv
2023-09-23 13:45:44 +02:00
Raman Gupta
161e9d10bd Bump zwave-js-server-python to 0.51.3 (#100665) 2023-09-23 13:45:40 +02:00
Luke Lashley
fae063086c Bump python-roborock to 0.34.1 (#100652)
bump to 34.1
2023-09-23 13:45:37 +02:00
Robin Li
4f4f6c92d3 Fix ecobee aux_heat_off always returns to HEAT (#100630) 2023-09-23 13:45:34 +02:00
Raman Gupta
08f46ad61f Adjust hassfest.manifest based on config.action (#100577) 2023-09-23 13:45:31 +02:00
Luke Lashley
9d25ca33bb Fix Roborock send command service calling not being enum (#100574) 2023-09-23 13:45:25 +02:00
Teemu R
c059b1960e Fix xiaomi_miio button platform regression (#100527) 2023-09-23 13:45:22 +02:00
Markus Friedli
0a343037a7 Fix broken reconnect capability of fritzbox_callmonitor (#100526) 2023-09-23 13:45:18 +02:00
Joost Lekkerkerker
93081bcbea Only get meteo france alert coordinator if it exists (#100493)
Only get meteo france coordinator if it exists
2023-09-23 13:45:15 +02:00
J.P. Krauss
fcd9ae5a01 Fix error is measurement is not sent by AirNow (#100477) 2023-09-23 13:45:12 +02:00
Kevin Stillhammer
13028e50ea bump pywaze to 0.5.0 (#100456) 2023-09-23 13:45:08 +02:00
Robert Resch
74dbcae92f Fix timer reload description (#100433)
Fix copy/paste error of #100388
2023-09-23 13:45:05 +02:00
Matrix
d6c365014a Bump yolink-api to 0.3.1 (#100426) 2023-09-23 13:45:02 +02:00
Diogo Gomes
ba30e6fb1c Fix current condition in IPMA (#100412)
always use hourly forecast to retrieve current weather condition. fix #100393
2023-09-23 13:44:58 +02:00
steffenrapp
3e34fc3b82 Add missing timer service translation (#100388) 2023-09-23 13:44:55 +02:00
starkillerOG
e1ab0fe295 Bump reolink-aio to 0.7.10 (#100376) 2023-09-23 13:44:52 +02:00
starkillerOG
66a1522d88 Try Reolink ONVIF long polling if ONVIF push not supported (#100375) 2023-09-23 13:44:48 +02:00
Ståle Storø Hauknes
50a41f516d Fix Airthings ble migration (#100362)
* Import Platform for tests

* Migration bugfix

* Store new unique id as a variable in tests

* Add comments to tests
2023-09-23 13:44:45 +02:00
Guido Schmitz
94ef5f751f Fix timeout issue in devolo_home_network (#100350) 2023-09-23 13:44:41 +02:00
Joakim Plate
4d1ca93973 Remove _next_refresh variable in update coordinator (#100323)
* Remove _next_refresh variable

* Adjust tomorrowio
2023-09-23 13:43:56 +02:00
Daniel Hjelseth Høyer
57cfd2ef03 Update Mill library to 0.11.5, handle rate limiting (#100315) 2023-09-23 13:42:58 +02:00
J. Nick Koston
66dbcc04eb Bump yalexs to 1.9.0 (#100305) 2023-09-23 13:40:34 +02:00
J. Nick Koston
fed7fc9597 Bump yalexs-ble to 2.3.0 (#100007) 2023-09-23 13:40:11 +02:00
Charles Garwood
ef0d8da4ce Bump pyenphase to 1.11.4 (#100288) 2023-09-23 13:37:26 +02:00
Erik Montnemery
29ba5a4292 Future proof assist_pipeline.Pipeline (#100277) 2023-09-23 13:37:23 +02:00
Aarni Koskela
9e0d23f9a8 Bump sensirion-ble to 0.1.1 (#100271)
Bump to sensirion-ble==0.1.1

Fixes akx/sensirion-ble#6

Refs https://github.com/home-assistant/core/issues/93678#issuecomment-1694522112
2023-09-23 13:37:19 +02:00
Charles Garwood
9ec6e63384 Bump pyenphase to 1.11.3 (#100255) 2023-09-23 13:37:16 +02:00
Charles Garwood
daf21d677a Bump pyenphase to 1.11.2 (#100249)
* Bump pyenphase to 1.11.1

* Apply suggestions from code review

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-23 13:37:13 +02:00
Luke Lashley
64d5993434 Fix incorrect off peak translation key for Roborock (#100246)
fix incorrect translation key
2023-09-23 13:37:09 +02:00
starkillerOG
c9bee8233e Bump pynetgear to 0.10.10 (#100242) 2023-09-23 13:37:06 +02:00
Luke Lashley
094666005e Bump python-roborock to 0.34.0 (#100236) 2023-09-23 13:37:03 +02:00
starkillerOG
d2b5ffc9fc Netgear catch no info error (#100212) 2023-09-23 13:37:00 +02:00
Diogo Gomes
f50d47121e Always update unit of measurement of the utility_meter on state change (#99102) 2023-09-23 13:36:51 +02:00
G Johansson
173b70c850 Fix weather template forecast attributes (#100748) 2023-09-23 13:30:11 +02:00
Erik Montnemery
7a1ee98bb6 Fix handling of unit system change in sensor (#100715) 2023-09-23 13:28:14 +02:00
Shay Levy
439ca60cb6 Fix Shelly Gen2 event get input name method (#100733) 2023-09-23 12:45:41 +03:00
puddly
44fd60bd53 Bump ZHA dependencies (#100732) 2023-09-23 09:53:56 +02:00
Kevin Worrel
a087ea8b3d Bump screenlogicpy to v0.9.1 (#100744) 2023-09-23 09:40:07 +02:00
Abílio Costa
2ef69d1504 Improve Idasen Desk "no devices found" message (#100742) 2023-09-23 09:37:03 +02:00
Michael Hansen
b0c9ff033e Bump intents to 2023.9.22 (#100737) 2023-09-23 02:29:00 +02:00
rappenze
ad3cd72323 Remove unneeded instance check (#100736) 2023-09-23 00:42:32 +02:00
Jan Bouwhuis
c6d62faff3 Avoid redundant calls to async_write_ha_state in mqtt cover (#100720)
Avoid redundant calls to async_write_ha_state
2023-09-22 22:47:07 +02:00
Simone Chemelli
55c6d41d41 Bump aiocomelit to 0.0.8 (#100714)
* Bump aiocomelit to 0.0.8

* fix import

* fix tests
2023-09-22 23:38:33 +03:00
Olen
debee28856 Only get state once for all August sensor-tests (#100721) 2023-09-22 21:31:17 +02:00
Simone Chemelli
964192d246 Bump aiovodafone to 0.3.0 (#100729) 2023-09-22 21:21:44 +02:00
Joost Lekkerkerker
76cc04e52b Remove obsolete methods in HVV departures (#100451)
* Call async added to hass super in HVV departures

* Remove obsolete methods
2023-09-22 16:55:07 +02:00
Olen
2a49b6ca7e Add more august actions (#100667) 2023-09-22 14:42:17 +02:00
starkillerOG
8474c25cf1 Reolink remove unneeded str() (#100718) 2023-09-22 14:20:34 +02:00
Jan Bouwhuis
4c65c92fb0 Use shorthand attrs for MQTT cover (#100710)
* User shorthand attrs for MQTT cover

* Cleanup constructor

* Cleanup constructor
2023-09-22 13:41:31 +02:00
Daniel Weeber
4133162053 Add device class to denonavr (#100711)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-22 13:39:32 +02:00
Jan Bouwhuis
5b422daf36 Avoid redundant calls to async_write_ha_state in MQTT light (#100690)
* Limit state writes for mqtt light

* Additional tests and review follow up
2023-09-22 13:32:30 +02:00
Jan Bouwhuis
87ae5add8a Fix mqtt light rgbww update without state topic (#100707)
* Fix mqtt light rgbww update without state topic

* Add @callback decprator and correct mired conv
2023-09-22 13:31:29 +02:00
Joost Lekkerkerker
d30a5f4d54 Move samsung tv device class outside of constructor (#100712) 2023-09-22 12:45:22 +02:00
Pedro Januário
794736b503 Add switch platform to ecoforest integration (#100708)
* add switch platform to ecoforest integration

* ignore switch.py from coverage

* rename mixin

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

* update translations

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

* remove translation key

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

* move attr name to description

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

* fix broken change

* use entity description action

* use lambda with awaitable

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-22 12:20:48 +02:00
Jan Bouwhuis
a66ad39c4e Assign color_mode for mqtt light as ColorMode (#100709) 2023-09-22 12:09:37 +02:00
Jan Bouwhuis
384adb1c87 Avoid redundant calls to async_write_ha_state in MQTT climate & water_heater (#100696)
Limit state writes for mqtt climate & water_heater
2023-09-22 11:22:57 +02:00
Jan Bouwhuis
1041610a70 Avoid redundant calls to async_write_ha_state in MQTT mqtt alarm_control_panel (#100691)
Limit state writes for mqtt alarm_control_panel
2023-09-22 11:22:09 +02:00
J. Nick Koston
1dadfcd52c Avoid polling in sun sensor entities (#100693) 2023-09-22 11:16:37 +02:00
Pedro Januário
86a692bb22 Add additional sensors to ecoforest integration (#100681)
* add ecoforest additional sensors

* add ecoforest additional sensors

* use StateType

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

* use StateType

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

* update cpu temp translation

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

* use common translation

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

* use common on translation

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

* use common standby translation

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

* update strings

* update strings

* import state type

* relabel preheating

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

* add cpu temp disable by default

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-22 11:08:09 +02:00
Pedro Januário
cd30286913 Add number platform to ecoforest (#100694)
* add power number entity to ecoforest integration

* fix number.py header

* minor fixes

* change power to power level

* update comment for native value prop

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

* exclude number.py from coverage

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-21 22:36:39 +02:00
Bouwe Westerdijk
5cf5f5b4cf Add missing step-differentiation for the Plugwise temperature_offset (#100654) 2023-09-21 19:31:53 +02:00
c0ffeeca7
f973d4cc26 ZHA multiprotocol detected message: add info (#100686) 2023-09-21 19:23:02 +02:00
Bouwe Westerdijk
a609df2914 Update plugwise to v0.33.0 (#100689) 2023-09-21 19:19:03 +02:00
jimmyd-be
e57156dd9c Add Renson button entity (#99494)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-21 17:55:30 +02:00
Erik Montnemery
ab060b86d1 Remove async_process_integration_platform_for_component (#100680) 2023-09-21 17:06:41 +02:00
c0ffeeca7
1c7b3cb2d5 ZHA multiprotocol detected - fix typo (#100683) 2023-09-21 17:02:39 +02:00
Luke Lashley
e2bfa9f9cd Add last clean sensors to Roborock (#100661)
* Add water shortage binary sensor

* add last clean sensors

* fix tests

* fix tests again

* remove accidentally added binary sensor
2023-09-21 16:00:15 +02:00
Luke Lashley
6e0ab35f85 Add water shortage binary sensor (#100662) 2023-09-21 15:43:17 +02:00
Jan-Philipp Benecke
a08b74c550 Move coolmaster coordinator to its own file (#100425) 2023-09-21 15:20:58 +02:00
Pedro Januário
c170babba6 Add ecoforest integration (#100647)
* Add ecoforest integration

* fix file title

* remove host default from schema, hints will be given in the documentation

* moved input validation to async_step_user

* ensure we can receive device data while doing entry setup

* remove unecessary check before unique id is set

* added shorter syntax for async create entry

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

* use variable to set unique id

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

* Use _attr_has_entity_name from base entity

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

* remove unecessary comments in coordinator

* use shorthand for device information

* remove empty objects from manifest

* remove unecessary flag

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

* use _async_abort_entries_match to ensure device is not duplicated

* remove unecessary host attr

* fixed coordinator host attr to be used by entities to identify device

* remove unecessary assert

* use default device class temperature trasnlation key

* reuse base entity description

* use device serial number as identifier

* remove unused code

* Improve logging message

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

* Remove unused errors

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

* Raise a generic update failed

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

* use coordinator directly

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

* No need to check for serial number

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

* rename variable

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

* use renamed variable

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

* improve assertion

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

* use serial number in entity unique id

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

* raise config entry not ready on setup when error in connection

* improve test readability

* Improve python syntax

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

* abort when device already configured with same serial number

* improve tests

* fix test name

* use coordinator data

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

* improve asserts

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

* fix ci

* improve error handling

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-21 15:18:55 +02:00
Erik Montnemery
df73850f56 Move definition of attributes excluded from history to entity classes (#100430)
* Move definition of attributes excluded from history to entity classes

* Revert change which should be in a follow-up PR

* Fix sun unrecorded attributes

* Fix input_select unrecorded attributes
2023-09-21 15:02:47 +02:00
Jan Bouwhuis
aed3ba3acd Avoid redundant calls to async_ha_write_state in MQTT (binary) sensor (#100438)
* Only call `async_ha_write_state` on changes.

* Make helper class

* Use UndefinedType

* Remove del

* Integrate monitor into MqttEntity

* Track extra state attributes and availability

* Add `__slots__`

* Add monitor to MqttAttributes and MqttAvailability

* Write out loop

* Add test

* Make common test and parameterize

* Add test for last_reset attribute

* MqttMonitorEntity base class

* Rename attr and update docstr `track` method.

* correction doct

* Implement as a decorator

* Move tracking functions into decorator

* Rename decorator

* Follow up comment
2023-09-21 13:33:26 +02:00
Fletcher
11c4c37cf9 Add Slack thread/reply support (#93384) 2023-09-21 11:06:55 +02:00
Robert Resch
e4742c04f2 Fix missspelled package names (#100670) 2023-09-21 10:57:23 +02:00
Mike
15caf2ac03 Add support for Levoit Vital200s purifier (#100613) 2023-09-21 10:53:18 +02:00
Jan-Philipp Benecke
715d8dcb98 Add test to london underground (#100562)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-21 10:44:32 +02:00
J. Nick Koston
59daceafd2 Avoid calling extract_stack in system_log since it does blocking I/O (#100455) 2023-09-21 09:48:41 +02:00
elmurato
f2fc62138a Clean-up Minecraft Server constants (#100666) 2023-09-21 08:40:07 +02:00
Raman Gupta
9f56aec267 Bump zwave-js-server-python to 0.51.3 (#100665) 2023-09-21 02:13:48 -04:00
anonion
5c1a3998ae Add Enmax virtual integration to Opower (#100503)
* add enmax virtual integration supported by opower

* update integrations.json
2023-09-21 06:59:05 +02:00
Luke Lashley
ed3cdca454 Bump python-roborock to 0.34.1 (#100652)
bump to 34.1
2023-09-20 22:02:00 +02:00
dependabot[bot]
0525454738 Bump tibdex/github-app-token from 2.0.0 to 2.1.0 (#100632)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-20 20:47:38 +02:00
Andrei Demian
6752af8f27 Bump ismartgate to 5.0.1 (#100636) 2023-09-20 19:44:11 +02:00
J. Nick Koston
a03ad87cfb Avoid ConfigEntry lookups in hass.config_entries.async_entries for domain index (#100598) 2023-09-20 18:43:15 +02:00
J. Nick Koston
1f0c9a48d2 Update doorbird zeroconf checks to use stdlib ipaddress methods (#100623) 2023-09-20 18:35:55 +02:00
Erik Montnemery
fbcc5318c5 Move attributes to be excluded from recording to entity classes (#100239)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-20 18:09:12 +02:00
J. Nick Koston
ec5675ff4b Fix hkid matching in homekit_controller when zeroconf value is not upper case (#100641) 2023-09-20 17:37:13 +02:00
Luke Lashley
77001b26de Add second test device for Roborock (#100565) 2023-09-20 17:17:32 +02:00
J. Nick Koston
6f8734167f Bump SQLAlchemy to 2.0.21 (#99745) 2023-09-20 16:19:53 +02:00
J. Nick Koston
8b5129a7d9 Bump dbus-fast to 2.9.0 (#100638) 2023-09-20 13:58:34 +02:00
Robin Li
7014ed3453 Fix ecobee aux_heat_off always returns to HEAT (#100630) 2023-09-20 13:53:05 +02:00
J. Nick Koston
d675825b5a Avoid double lookups with data_entry_flow indices (#100627) 2023-09-20 11:55:51 +02:00
J. Nick Koston
06c7f0959c Update dhcp to use stdlib ipaddress methods (#100625) 2023-09-20 11:54:24 +02:00
J. Nick Koston
33f748493e Update enphase_envoy zeroconf checks to use stdlib ipaddress methods (#100624) 2023-09-20 09:49:16 +02:00
Jan-Philipp Benecke
7af62c35f5 Move faa_delays coordinator to its own file (#100548) 2023-09-20 08:59:49 +02:00
Jan-Philipp Benecke
03af467918 Move renson coordinator to its own file (#100610) 2023-09-20 08:47:20 +02:00
Abílio Costa
bd9bab000e Add integration for IKEA Idasen Desk (#99173)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-20 02:44:35 +02:00
J. Nick Koston
6c095a963d Switch config flows use newer zeroconf methods to check IP Addresses (#100568) 2023-09-20 01:08:58 +02:00
J. Nick Koston
1d5905b591 Use is for UNDEFINED check in async_update_entry (#100599) 2023-09-20 01:08:32 +02:00
elmurato
f1a70189ac Clean-up Minecraft Server tests (#100615)
Remove patching of getmac, fix typo
2023-09-19 22:14:21 +02:00
Maciej Bieniek
c099ec19f2 Add missing translations for Shelly event type states (#100608)
Add missing translations for event type
2023-09-19 20:30:18 +02:00
J. Nick Koston
0eca433004 Update zeroconf discovery to use IPAddress objects to avoid conversions (#100567) 2023-09-19 18:58:46 +02:00
Joost Lekkerkerker
8dd3d6f989 Call async added to hass super in Livisi (#100446) 2023-09-19 17:40:55 +02:00
Raman Gupta
2ad0fd1ce1 Adjust hassfest.manifest based on config.action (#100577) 2023-09-19 17:30:38 +02:00
Teemu R
7c4f08e6b3 Fix xiaomi_miio button platform regression (#100527) 2023-09-19 17:15:43 +02:00
Ian
c3f74ae022 Add config-flow to NextBus (#92149) 2023-09-19 17:10:29 +02:00
Joost Lekkerkerker
d9227a7e3d Add Spotify code owner (#100597) 2023-09-19 16:43:00 +02:00
Luke Lashley
ea78f419a9 Fix Roborock send command service calling not being enum (#100574) 2023-09-19 16:35:23 +02:00
elmurato
a2a62839bc Add DataUpdateCoordinator to Minecraft Server (#100075) 2023-09-19 15:59:58 +02:00
Jan-Philipp Benecke
2b8690d8bc Remove platform const in co2signal coordinator (#100592) 2023-09-19 12:44:09 +02:00
Joost Lekkerkerker
11a90016d0 Change Hue zigbee connectivity sensor into an enum (#98632) 2023-09-19 12:08:13 +02:00
Joost Lekkerkerker
f01c71e514 Fix lyric feedback (#100586) 2023-09-19 11:40:05 +02:00
Jan-Philipp Benecke
cf6eddee74 Move uptimerobot coordinator to its own file (#100558)
* Move uptimerobot coordinator to its own file

* Fix import of coordinator in platforms
2023-09-19 09:45:56 +02:00
Simone Chemelli
2722e5ddaa Add Vodafone Station sensor platform (#99948)
* Vodafone: add sensor platform

* fix for model VOX30 v1

* fix, cleanup, 2 new sensors

* apply review comments

* apply last review comment
2023-09-18 21:31:04 +02:00
Marc Mueller
37288d7788 Add pylint plugin to check for calls to base implementation (#100432) 2023-09-18 13:39:36 -05:00
rappenze
ddd62a8f63 Fibaro streamline hass.data entry (#100547)
* Fibaro streamline hass.data entry

* Fix tests
2023-09-18 20:22:23 +02:00
J. Nick Koston
fa1a1715c9 Drop codeowner for LIFX (#100556) 2023-09-18 10:08:49 -05:00
J. Nick Koston
49d742ce31 Drop codeowner for Magic Home/flux_led (#100557) 2023-09-18 10:08:38 -05:00
Jan-Philipp Benecke
adf34bdf8b Set co2signal integration type to service (#100543) 2023-09-18 12:56:35 +02:00
Joost Lekkerkerker
ec6c374761 Clean up lyric sensor platform (#100495)
* Clean up lyric sensor platform

* Clean up lyric sensor platform

* Clean up lyric sensor platform

* Update homeassistant/components/lyric/sensor.py

Co-authored-by: Aidan Timson <aidan@timmo.dev>

* Update homeassistant/components/lyric/sensor.py

Co-authored-by: Aidan Timson <aidan@timmo.dev>

* Update homeassistant/components/lyric/sensor.py

Co-authored-by: Aidan Timson <aidan@timmo.dev>

* Update homeassistant/components/lyric/sensor.py

Co-authored-by: Aidan Timson <aidan@timmo.dev>

---------

Co-authored-by: Aidan Timson <aidan@timmo.dev>
2023-09-18 12:42:31 +02:00
jan iversen
6ac1305c64 Adjust codeowners in modbus (#100474) 2023-09-18 12:39:09 +02:00
Marc Mueller
306f39b053 Update pytest warnings filter (#100546) 2023-09-18 12:26:16 +02:00
Marc Mueller
08c4e82cf9 Update typing-extensions to 4.8.0 (#100545) 2023-09-18 11:58:47 +02:00
Jan-Philipp Benecke
dc2afb71ae Move co2signal coordinator to its own file (#100541)
* Move co2signal coordinator to its own file

* Fix import
2023-09-18 11:56:28 +02:00
steffenrapp
45c0dc6854 Add missing conversation service translation (#100308)
* Update services.yaml

* Update strings.json

* Update services.yaml

* Update strings.json

* Update strings.json

* fix translation keys

* Fix translation keys
2023-09-18 11:44:41 +02:00
Ville Skyttä
902f997ee0 Fix google invalid token expiry test init for UTC offsets > 0 (#100533)
```
$ python3 -q
>>> import datetime, time
>>> time.tzname
('EET', 'EEST')
>>> datetime.datetime.max.timestamp()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: year 10000 is out of range
```
2023-09-18 12:39:43 +03:00
Marc Mueller
f41e3a2beb Remove duplicate mobile_app client fixture (#100530) 2023-09-18 10:52:43 +02:00
Glenn Waters
276d245409 Bump elkm1-lib to 2.2.6 (#100537) 2023-09-17 20:39:23 -05:00
Maciej Bieniek
f6243a1f79 Add event platform for Shelly gen2 devices (#99659)
* Add event platform for gen2 devices

* Add tests

* Add removal condition

* Simplify RpcEventDescription; fix availability

* Improve names and docstrings

* Improve the event entity name

* Use async_on_remove()

* Improve tests coverage

* Improve tests coverage

* Prefix the entity name with the device name in the old way

* Black

* Use DeviceInfo object
2023-09-18 00:38:08 +02:00
Marc Mueller
6acb182c38 Fix full black run condition [ci] (#100532) 2023-09-17 17:05:29 -05:00
starkillerOG
868afc037e Try Reolink ONVIF long polling if ONVIF push not supported (#100375) 2023-09-17 22:28:52 +02:00
Markus Friedli
dd1dc52994 Fix broken reconnect capability of fritzbox_callmonitor (#100526) 2023-09-17 20:00:09 +02:00
Ville Skyttä
2794ab1782 Fix huawei_lte current month up/download sensor error on delete (#100506)
Deleting one of them prematurely deleted the last reset item
subscription that is shared between the two.
2023-09-17 18:11:44 +02:00
tronikos
7aa02b8621 Bump opower to 0.0.34 (#100501) 2023-09-17 09:50:17 -05:00
Marc Mueller
48f9a38c74 Update numpy to 1.26.0 (#100512) 2023-09-17 09:49:21 -05:00
Dennis
ddeb2854aa Added device class to speedtestdotnet sensor entities. (#100500)
Added device class to sensor entities.
2023-09-16 15:40:16 -07:00
jan iversen
9931f45532 Deprecate modbus parameter retry_on_empty (#100292) 2023-09-16 21:14:52 +02:00
Jieyu Yan
81af45347f Add fan modes in Lyric integration (#100420)
* Add fan modes in Lyric integration

* add fan_mode only when available

* move supported_features to init

* mapped fan_modes to built-in modes

* log KeyError for fan_modes
2023-09-16 20:58:00 +02:00
Joost Lekkerkerker
f715f5c76f Only get meteo france alert coordinator if it exists (#100493)
Only get meteo france coordinator if it exists
2023-09-16 18:48:41 +02:00
J.P. Krauss
01ecef7f05 Fix error is measurement is not sent by AirNow (#100477) 2023-09-16 18:16:15 +02:00
Kevin
c8265a86b2 Bump python-androidtv to 0.0.72 (#100441)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-16 10:12:00 -05:00
J. Nick Koston
8a98a0e830 Avoid writing unifiprotect state when nothing has changed (#100439) 2023-09-16 09:57:43 -05:00
Joost Lekkerkerker
7b71d27637 Pass function correctly to Withings API (#100391)
* Pass function correctly to Withings API

* Add more typing
2023-09-16 16:20:24 +02:00
Ravaka Razafimanantsoa
f99dedfb42 Add switchbot cloud integration (#99607)
* Switches via API

* Using external library

* UT and checlist

* Updating file .coveragerc

* Update homeassistant/components/switchbot_via_api/switch.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update homeassistant/components/switchbot_via_api/switch.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update homeassistant/components/switchbot_via_api/switch.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Review fixes

* Apply suggestions from code review

Co-authored-by: J. Nick Koston <nick@koston.org>

* This base class shouldn't know about Remote

* Fixing suggestion

* Sometimes, the state from the API is not updated immediately

* Review changes

* Some review changes

* Review changes

* Review change: Adding type on commands

* Parameterizing some tests

* Review changes

* Updating .coveragerc

* Fixing error handling in coordinator

* Review changes

* Review changes

* Adding switchbot brand

* Apply suggestions from code review

Co-authored-by: J. Nick Koston <nick@koston.org>

* Review changes

* Adding strict typing

* Removing log in constructor

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-16 16:00:41 +02:00
jan iversen
568974fcc4 Modbus 100% test coverage (again) (#100482) 2023-09-16 14:00:22 +02:00
jan iversen
48dc81eff0 Simplify code, due to better error catching in modbus. (#100483) 2023-09-16 13:49:37 +02:00
Joost Lekkerkerker
30d604c851 Use central logger in Withings (#100406) 2023-09-16 13:46:11 +02:00
Jan-Philipp Benecke
16cc87bf45 Move flipr base entity to its own file (#100481)
* Move flipr base entity to its own file

* Add forgotten __init__.py
2023-09-16 11:55:49 +02:00
Jan-Philipp Benecke
b5c6e82374 Move co2signal models to their own file (#100478) 2023-09-16 11:49:49 +02:00
Jan-Philipp Benecke
57337b5cee Move flipr coordinator to its own file (#100467) 2023-09-16 11:19:49 +02:00
Jan-Philipp Benecke
024db6dadf Move cert_expiry coordinator to its own file (#100472)
* Move cert_expiry coordinator to its own file

* Add missing patched config flow test
2023-09-16 11:19:05 +02:00
Jan-Philipp Benecke
c504ca906d Move co2signal exceptions to their own file (#100473)
* Move co2signal exceptions to their own file

* Add myself as codeowner
2023-09-16 11:18:19 +02:00
Jan Bouwhuis
9747e0091f Use shorthand attrs for device_class zwave_js sensor (#100414)
* Use shorthand attrs zwave_js sensor

* Simplify
2023-09-16 10:13:27 +02:00
jan iversen
d25f45a957 Harden modbus against lib errors (#100469) 2023-09-16 09:57:55 +02:00
Joost Lekkerkerker
a111988232 Make codespell ignore snapshots (#100463) 2023-09-15 20:39:14 +02:00
J. Nick Koston
a4e0444b95 Bump sense-energy to 0.12.2 (#100459) 2023-09-15 13:38:14 -05:00
Kevin Stillhammer
c9975852bb bump pywaze to 0.5.0 (#100456) 2023-09-15 19:03:04 +02:00
Matrix
06949b181f Bump yolink-api to 0.3.1 (#100426) 2023-09-15 17:20:30 +02:00
jan iversen
fd83f7d87f Add test for modbus CONF_DEVICE_ADDR (#100435) 2023-09-15 16:12:44 +02:00
Robert Resch
b329439fff Fix timer reload description (#100433)
Fix copy/paste error of #100388
2023-09-15 16:05:56 +02:00
jan iversen
9eb0b844bc Test VIRTUAL_COUNT parameter (#100434) 2023-09-15 15:02:24 +02:00
steffenrapp
b4c095e944 Add missing timer service translation (#100388) 2023-09-15 14:42:27 +02:00
Seth
5ac149a760 Remove state class from RainMachine TIMESTAMP sensors (#100400) 2023-09-15 14:33:17 +02:00
jan iversen
ec2364ef43 Add virtual_count == slave_count in modbus configuration (#100398)
* Add virtual_count as config parameter.

* Review (other PR) comments.

* Review.

* Review comment.
2023-09-15 14:00:02 +02:00
jan iversen
c173ebd11a Add device_address to modbus configuration (#100399) 2023-09-15 13:49:33 +02:00
Joost Lekkerkerker
1737b27dd4 Generate withings webhook ID in config flow (#100395) 2023-09-15 12:58:56 +02:00
Erik Montnemery
d1afcd773f Revert "Cache entity properties that are never expected to change in the base class" (#100422)
Revert "Cache entity properties that are never expected to change in the base class (#95315)"

This reverts commit 042776ebb8.
2023-09-15 11:25:24 +02:00
Jan-Philipp Benecke
7723a9b36b Move airtouch4 coordinator to its own file (#100424) 2023-09-15 10:04:41 +02:00
TJ Horner
a8013836e1 Bump apple_weatherkit to 1.0.3 (#100416) 2023-09-15 08:28:27 +02:00
Erik Montnemery
a70235046a Tweak datetime service schema (#100380) 2023-09-15 08:07:27 +02:00
Diogo Gomes
9470c71d49 Fix current condition in IPMA (#100412)
always use hourly forecast to retrieve current weather condition. fix #100393
2023-09-15 07:52:50 +02:00
Jan-Philipp Benecke
772ac9766b Move awair coordinators to their own file (#100411)
* Move awair coordinators to their file

* Add awair/coordinator.py to .coveragerc
2023-09-15 07:52:29 +02:00
J. Nick Koston
b68ceb3ce4 Use more shorthand attributes in hyperion (#100213)
* Use more shorthand attributes in hyperion

There are likely some more here, but I only did the safe ones

* Update homeassistant/components/hyperion/switch.py

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

* Apply suggestions from code review

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-15 02:28:59 +00:00
J. Nick Koston
6a9c9ca735 Improve performance of mqtt_room (#100408) 2023-09-14 17:55:56 -05:00
J. Nick Koston
042776ebb8 Cache entity properties that are never expected to change in the base class (#95315) 2023-09-14 17:48:48 -05:00
Joakim Plate
5f20725fd5 Remove _next_refresh variable in update coordinator (#100323)
* Remove _next_refresh variable

* Adjust tomorrowio
2023-09-14 22:32:50 +02:00
J. Nick Koston
df74ed0d40 Bump bleak-retry-connector to 3.2.1 (#100377) 2023-09-14 15:13:15 -05:00
Jan Bouwhuis
23faa0882f Avoid multiline ternary use (#100381) 2023-09-14 22:10:28 +02:00
Joost Lekkerkerker
c34c4f8f03 Reload on Withings options flow update (#100397)
* Reload on Withings options flow update

* Remove reload from reauth
2023-09-14 21:54:49 +02:00
Jan-Philipp Benecke
157647dc44 Move solarlog coordinator to own file (#100402) 2023-09-14 21:52:21 +02:00
Joost Lekkerkerker
a62f16b4cc Remove obsolete strings from Withings (#100396) 2023-09-14 21:41:34 +02:00
starkillerOG
3f2a660dab Bump reolink-aio to 0.7.10 (#100376) 2023-09-14 21:24:23 +02:00
Robert Svensson
f909199125 Remove hard coded Icon from Unifi device scanner (#100401) 2023-09-14 20:13:46 +02:00
J. Nick Koston
1d4b731603 Bump zeroconf to 0.112.0 (#100386) 2023-09-14 12:40:47 -05:00
Jan Bouwhuis
6701a449bd Use shorthand attrs for tasmota (#100390) 2023-09-14 18:17:23 +02:00
Jan Bouwhuis
8b7061b634 Short handed device class for overkiz cover (#100394) 2023-09-14 11:10:31 -05:00
Jan Bouwhuis
89eec9990b Use shorthand device_type attr for plaato sensors (#100385) 2023-09-14 09:55:47 -05:00
jan iversen
d4a2927ebe Solve racing problem in modbus test (#100287)
* Test racing problem.

* review comment.

* Revert to approved state.

This reverts commit 983d9d68e8.
2023-09-14 16:03:32 +02:00
starkillerOG
7ea2087c45 Add Netgear entity translations (#100367)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-14 13:58:53 +02:00
Joost Lekkerkerker
6fc1407613 Extract Withings API specifics in own class (#100363)
* Extract Withings API specifics in own class

* Extract Withings API specifics in own class

* Ignore api test coverage

* fix feedback
2023-09-14 13:31:54 +02:00
Ståle Storø Hauknes
b858658516 Fix Airthings ble migration (#100362)
* Import Platform for tests

* Migration bugfix

* Store new unique id as a variable in tests

* Add comments to tests
2023-09-14 12:51:06 +02:00
Guido Schmitz
8a8f1aff83 Remove useless timeout guards in devolo_home_network (#100364) 2023-09-14 12:35:21 +02:00
Jan Rieger
f305661dd7 Change service set_location to use number input selectors (#100360) 2023-09-14 12:13:19 +02:00
starkillerOG
98c9edc00c Netgear cleanup (#99505)
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-14 12:06:40 +02:00
Guido Schmitz
b84076d3d6 Fix timeout issue in devolo_home_network (#100350) 2023-09-14 10:28:45 +02:00
Franck Nijhof
b0f32a3547 Update apprise to 1.5.0 (#100351) 2023-09-14 10:10:31 +02:00
Erik Montnemery
4f58df1929 Drop useless passing of update_method to DataUpdateCoordinator (#100355) 2023-09-14 10:09:55 +02:00
Franck Nijhof
85fafcad11 Update awesomeversion to 23.8.0 (#100349) 2023-09-14 10:07:09 +02:00
Joost Lekkerkerker
4a48a92cba Use f-string instead of concatenation in Velux (#100353) 2023-09-14 10:06:43 +02:00
Jan Rieger
840d881c25 Add icon to GPSD (#100347) 2023-09-14 09:27:16 +02:00
Joost Lekkerkerker
923d945267 Use shorthand attributes in Smappee (#99837) 2023-09-14 09:25:21 +02:00
Marty Sun
6692a37f0d Add missing __init__.py file in yardian test folder (#100345) 2023-09-14 09:04:12 +02:00
J. Nick Koston
182976f5d3 Use more shorthand attributes in threshold binary_sensor (#100343) 2023-09-14 09:03:39 +02:00
J. Nick Koston
58bb624b24 Bump zeroconf to 0.111.0 (#100340) 2023-09-14 07:54:17 +02:00
mkmer
c265d3f3cc Late review for honeywell (#100299)
* Late review for honeywell

* Actually test same id different domain

* Update homeassistant/components/honeywell/climate.py

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

* Update climate.py

* Refactor dont_remove

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-14 06:22:28 +02:00
J. Nick Koston
547f32818c Make core States use cached_property (#100312)
Need to validate this is worth removing __slots__
2023-09-13 20:33:25 -04:00
J. Nick Koston
3cc9410a62 Bump grpcio to 1.58.0 (#100314)
* Bump grpcio to 1.58.0

attempt to fix nightly

https://github.com/home-assistant/core/actions/runs/6167125867/job/16737677629

```
```

* forgot the script as well
2023-09-13 20:26:55 -04:00
J. Nick Koston
3be4edd647 Use shorthand attributes in saj (#100317)
supports #95315
2023-09-13 20:26:22 -04:00
J. Nick Koston
fe8156f013 Bump protobuf to 4.24.3 (#100329)
changelog: https://github.com/protocolbuffers/protobuf/compare/v24.0...v24.3
2023-09-13 20:25:52 -04:00
J. Nick Koston
f0e607869a Use shorthand attributes for supla cover device class (#100337)
from #95315
2023-09-13 20:25:33 -04:00
Jan Bouwhuis
01410c9fbb Shorthanded attrs for met integration (#100334) 2023-09-13 17:11:47 -05:00
Jan Bouwhuis
a7c6abfed1 Use shorthand atts for met_eireann (#100335) 2023-09-13 17:11:27 -05:00
Franck Nijhof
a02fcbc5c4 Update sentry-sdk to 1.31.0 (#100293) 2023-09-13 23:37:48 +02:00
J. Nick Koston
fe5eba9b31 Use cached_property in device registry (#100309) 2023-09-13 15:36:07 -05:00
Jan-Philipp Benecke
72f5c0741b Add missing sms coordinator to .coveragerc (#100327) 2023-09-13 15:29:16 -05:00
J. Nick Koston
ef6d77586a Bump python-amcrest to 1.9.8 (#100324) 2023-09-13 15:01:28 -05:00
Jan-Philipp Benecke
7b204ca36b Use snapshot assertion for nexia diagnostics test (#100328) 2023-09-13 15:00:29 -05:00
J. Nick Koston
877eedf6d7 Use cached_property in entity_registry (#100302) 2023-09-13 14:38:40 -05:00
J. Nick Koston
d8d756dd7d Bump dbus-fast to 2.7.0 (#100321) 2023-09-13 14:33:42 -05:00
Daniel Hjelseth Høyer
9ceeadc715 Update Mill library to 0.11.5, handle rate limiting (#100315) 2023-09-13 21:09:29 +02:00
Quentame
8625bf7894 Add some tests to Freebox (#99755) 2023-09-13 20:22:47 +02:00
J. Nick Koston
9631c0ba2b Use short hand attributes in onvif camera (#100319)
see #95315
2023-09-13 20:19:01 +02:00
Robert Svensson
7b00265cfe Remove legacy UniFi PoE client clean up (#100318) 2023-09-13 20:14:03 +02:00
Paulus Schoutsen
23a891ebb1 Update Roborock entity categories (#100316) 2023-09-13 13:43:28 -04:00
Jan Bouwhuis
0d33cba823 Use shorthand attrs in template integration (#100301) 2023-09-13 12:30:43 -05:00
Franck Nijhof
d17957ac1a Update debugpy to 1.8.0 (#100311) 2023-09-13 11:59:35 -05:00
J. Nick Koston
6a2dd4fe74 Bump yalexs to 1.9.0 (#100305) 2023-09-13 11:25:10 -05:00
Erik Montnemery
c3d1cdd0e9 Improve UserDict in device and entity registries (#100307) 2023-09-13 11:09:34 -05:00
Jan Rieger
ee65aa91e8 Allow setting the elevation in set_location (#99978)
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-09-13 18:09:12 +02:00
Joost Lekkerkerker
f6b094dfee Add options flow to Withings (#100300) 2023-09-13 18:08:15 +02:00
Erik Montnemery
6057fe5926 Replace StateMachine._domain_index with a UserDict (#100270)
* Replace StateMachine._domain_index with a UserDict

* Access the UserDict's backing dict directly

* Optimize
2023-09-13 18:05:17 +02:00
J. Nick Koston
d0feb063ec Fix missing super async_added_to_hass in lookin (#100296) 2023-09-13 10:03:36 -05:00
Jan Bouwhuis
871800778f Use shorthand attrs for velux (#100294)
* Use shorthand attrs for velux

* Update homeassistant/components/velux/cover.py

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

* black

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-13 16:50:33 +02:00
Jan Bouwhuis
f2f45380a9 Use shorthand attrs in iaqualink (#100281)
* Use shorthand attrs in iaqualink

* Use super

* Update homeassistant/components/iaqualink/light.py

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

* Remove self

* More follow ups

* Remove cast and type check

* Update homeassistant/components/iaqualink/__init__.py

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-13 16:34:14 +02:00
Charles Garwood
c3a7aee48e Bump pyenphase to 1.11.4 (#100288) 2023-09-13 16:04:34 +02:00
Joost Lekkerkerker
8498cdfb3c Remove profile from Withings config flow (#100202)
* Remove profile from Withings config flow

* Add config flow migration

* Add config flow migration

* Remove datamanager profile

* Remove datamanager profile

* Add manufacturer

* Remove migration

* Remove migration

* Fix feedback
2023-09-13 15:49:36 +02:00
starkillerOG
80aa19263b Netgear catch no info error (#100212) 2023-09-13 15:32:03 +02:00
Jan Bouwhuis
d44db6ee68 Use shorthand attrs for xbox base_sensor (#100290) 2023-09-13 15:10:35 +02:00
Franck Nijhof
65c9e5ee13 Update mutagen to 1.47.0 (#100284) 2023-09-13 14:40:27 +02:00
Franck Nijhof
afa0152261 Update syrupy to 4.5.0 (#100283) 2023-09-13 14:40:01 +02:00
Joost Lekkerkerker
38e013a90e Remove NZBGet configurable scan interval (#98869) 2023-09-13 14:15:40 +02:00
Jan Bouwhuis
d638efdcfc Use shorthanded attrs for vera sensor (#100269)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-09-13 13:50:00 +02:00
Jan Bouwhuis
9f3b1a8d44 Use hass.loop.create_future() in zha (#100056)
* Use hass.loop.create_future() in zha

* Remove not needed method
2023-09-13 13:32:00 +02:00
Kevin Stillhammer
958b923783 Limit waze_travel_time to 1 call every 0.5s (#100191) 2023-09-13 13:29:20 +02:00
Jan-Philipp Benecke
1f1411b6a5 Move sms coordinators to their own file (#100276) 2023-09-13 13:22:37 +02:00
Jan Bouwhuis
705ee3032b Use shorthanded attrs for yamaha_musiccast select (#100273) 2023-09-13 13:13:27 +02:00
Olen
7fe78fe9e4 Add diagnostics to Twinkly (#100146) 2023-09-13 13:09:57 +02:00
Erik Montnemery
684b2d4537 Improve type hint in entity_registry (#100278) 2023-09-13 12:42:06 +02:00
Erik Montnemery
4f8e28a781 Future proof assist_pipeline.Pipeline (#100277) 2023-09-13 12:41:28 +02:00
Joost Lekkerkerker
29d8be510e Test speedtest.net config entry lifecycle (#100280) 2023-09-13 12:40:26 +02:00
Erik Montnemery
aedd06b9a9 Tweak entity/source WS command handler (#100272) 2023-09-13 11:14:01 +02:00
Aarni Koskela
e5de7eacad Bump sensirion-ble to 0.1.1 (#100271)
Bump to sensirion-ble==0.1.1

Fixes akx/sensirion-ble#6

Refs https://github.com/home-assistant/core/issues/93678#issuecomment-1694522112
2023-09-13 10:21:55 +02:00
dependabot[bot]
1c10091d62 Bump docker/login-action from 2.2.0 to 3.0.0 (#100264)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-13 09:34:45 +02:00
TJ Horner
dd95b51d10 Address weatherkit late review comments (#100265)
* Address review comments from original weatherkit PR

* Use .get() for optional fields
2023-09-13 09:22:58 +02:00
John Hollowell
e87603aa59 Correct Venstar firmware version to use device's FW version instead of API version (#98493) 2023-09-13 08:35:59 +02:00
Luke Lashley
09f58ec396 Bump python-roborock to 0.34.0 (#100236) 2023-09-13 08:33:48 +02:00
TJ Horner
756f542ac6 Update apple_weatherkit to 1.0.2 (#100254) 2023-09-13 08:18:07 +02:00
Charles Garwood
270df003fe Bump pyenphase to 1.11.3 (#100255) 2023-09-13 08:15:33 +02:00
Marc Mueller
f5aa2559d7 Fix pylint config warning (#100251) 2023-09-13 08:14:01 +02:00
Marc Mueller
2518fbc973 Update jsonpath to 0.82.2 (#100252) 2023-09-13 01:41:50 +02:00
Simone Chemelli
fe85b20502 SamsungTV: Add unique_id for when missing (legacy models) (#96829)
* Add unique_id for when missing (legacy models)

* add comment

* update tests, thx @epenet
2023-09-13 01:24:49 +02:00
Luke Lashley
5272387bd3 Fix incorrect off peak translation key for Roborock (#100246)
fix incorrect translation key
2023-09-13 01:16:31 +02:00
Charles Garwood
f344000ef9 Bump pyenphase to 1.11.2 (#100249)
* Bump pyenphase to 1.11.1

* Apply suggestions from code review

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-13 00:17:29 +02:00
J. Nick Koston
bbcae19d0e Disable always responding to all SSDP M-SEARCH requests with the root device (#100224) 2023-09-12 17:15:13 -05:00
starkillerOG
8aa689ebae Bump pynetgear to 0.10.10 (#100242) 2023-09-12 23:36:44 +02:00
J. Nick Koston
fc75172d79 Bump async-upnp-client to 0.35.1 (#100248) 2023-09-12 16:35:39 -05:00
Joost Lekkerkerker
904913c1a6 Use shorthand attributes in VLC telnet (#99916)
* Use shorthand attributes in VLC telnet

* Apply suggestions from code review

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

* fix mypy

* Attempt 3

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-12 22:37:51 +02:00
J. Nick Koston
1b40a56e2b Update ecobee zeroconf/homekit discovery (#100091) 2023-09-12 22:24:38 +02:00
Ville Skyttä
fa0b999d08 Upgrade ruff to 0.0.289 (#100238) 2023-09-12 22:22:10 +02:00
Jan Rieger
f2fac40019 Add strict typing to GPSD (#100030)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-09-12 22:21:58 +02:00
Jan Bouwhuis
e3837cd1e0 Use shorthand attr for mqtt assumed_state (#100241) 2023-09-12 22:21:13 +02:00
Paulus Schoutsen
c6ed235010 2023.9.2 (#100223) 2023-09-12 15:41:50 -04:00
Jan Bouwhuis
eb0ab3de93 User shorthand attr for mqtt alarm_control_panel (#100234) 2023-09-12 21:28:29 +02:00
Joost Lekkerkerker
458a3f0df2 Remove restore functionality in Speedtest.net (#96950) 2023-09-12 21:12:01 +02:00
Tom Harris
f9ce315d1b Support for Insteon 4 button KeypadLink device (#100132) 2023-09-12 21:10:40 +02:00
Álvaro Fernández Rojas
d417a27c85 Add meteoclimatic sensor statistics (#100186) 2023-09-12 21:08:58 +02:00
Allen Porter
368a1a944a Remove the uniqueid from todoist (#100206) 2023-09-12 21:08:13 +02:00
Erik Montnemery
bbcbb2e322 Improve Entity._suggest_report_issue (#100204) 2023-09-12 21:07:32 +02:00
Joost Lekkerkerker
76c569c62d Clean up variables in Soundtouch (#99859) 2023-09-12 21:00:05 +02:00
J. Nick Koston
5e2bf2b015 Set dynalite cover device class in constructor (#100232) 2023-09-12 20:57:57 +02:00
Joost Lekkerkerker
8fe5a5a398 Introduce base class for Trafikverket camera (#100114)
* Introduce base class for Trafikverket camera

* fix feedback

* Fix feedback
2023-09-12 20:48:47 +02:00
Erik Montnemery
09ad1a9a36 Remove unnecessary block use of pylint disable in components p-z (#100192) 2023-09-12 20:47:48 +02:00
Jan Bouwhuis
5fcb69e004 Use shorthanded attributes for MQTT cover (#100230) 2023-09-12 13:46:43 -05:00
Erik Montnemery
51576b7214 Improve typing of entity.entity_sources (#99407)
* Improve typing of entity.entity_sources

* Calculate entity info source when generating WS response

* Adjust typing

* Update tests
2023-09-12 20:41:26 +02:00
J. Nick Koston
cc252f705f Use short handle attributes for device class in netatmo cover (#100228) 2023-09-12 13:34:50 -05:00
mkmer
693a271e40 Clean up device registry for climate devices that no longer exist in Honeywell (#100072) 2023-09-12 20:29:47 +02:00
Joost Lekkerkerker
9672cdf3a9 Add entity translations to WLED (#99056) 2023-09-12 20:19:45 +02:00
J. Nick Koston
70c6bceaee Use short hand entity_registry_enabled_default in nws (#100227)
* Use short hand entity_registry_enabled_default in nws

see https://github.com/home-assistant/core/pull/95315

* Update homeassistant/components/nws/sensor.py
2023-09-12 20:12:14 +02:00
dependabot[bot]
93f3bc6c2b Bump sigstore/cosign-installer from 3.1.1 to 3.1.2 (#99563)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-12 20:11:12 +02:00
James Chaloupka
a9891e40fd Update Deprecated Selector Syntax (#99308) 2023-09-12 20:10:32 +02:00
Joost Lekkerkerker
69ac8a0a2b Use shorthand attributes in NWS (#99620) 2023-09-12 13:05:57 -05:00
J. Nick Koston
9c775a8a24 Set roku media player device class in constructor (#100225) 2023-09-12 12:58:20 -05:00
J. Nick Koston
42c35da818 Use more shorthand properties in homematicip_cloud (#100210) 2023-09-12 19:45:53 +02:00
J. Nick Koston
6a7d5a0fd4 Use more shorthand attributes in huawei_lte binary_sensor (#100211) 2023-09-12 19:45:44 +02:00
Jan Rieger
74a57e8676 Use more common translations (#100135) 2023-09-12 19:44:31 +02:00
uvjustin
5021c69886 Update Stream logging on EVENT_LOGGING_CHANGED (#99256) 2023-09-12 19:38:11 +02:00
J. Nick Koston
8af7475f73 Set TriggerBaseEntity device_class in init (#100216) 2023-09-12 19:36:56 +02:00
hahn-th
f5c0c7bf27 Bump homematicip_cloud to 1.0.15 (#99387) 2023-09-12 19:33:42 +02:00
Erik Montnemery
44af34083b Remove unnecessary pylint disable in tado (#100196) 2023-09-12 19:27:53 +02:00
Joost Lekkerkerker
a09372590f Use shorthand attributes in Smartthings (#100215) 2023-09-12 12:26:33 -05:00
Paulus Schoutsen
583ea2fed4 Bumped version to 2023.9.2 2023-09-12 13:01:31 -04:00
Joakim Sørensen
7b9ae6755a Bump hass-nabucasa from 0.70.0 to 0.71.0 (#100193)
Bump hass-nabucasa from 0.70.0 to 0.71.1
2023-09-12 13:01:31 -04:00
Jan Bouwhuis
e84a4661b0 Add intial property to imap_content event data (#100171)
* Add initial property to imap event data

* Simplify loop

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

* MyPy

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-12 18:54:32 +02:00
René Klomp
86bccf769e Add Entity Descriptions to SMA integration (#58707)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-12 11:30:55 -05:00
Jan Bouwhuis
63647d96dd Fix entity name attribute on mqtt entity is not removed on update (#100187)
Fix entity name attribute is not remove on update
2023-09-12 12:04:56 -04:00
Vincent Knoop Pathuis
f13ce5daff Bump Ultraheat to version 0.5.7 (#100172) 2023-09-12 12:04:55 -04:00
Erik Montnemery
1b494fb4ba Bump hatasmota to 0.7.3 (#100169) 2023-09-12 12:04:54 -04:00
Erik Montnemery
3c27283fc1 Adjust tasmota sensor device class and icon mapping (#100168) 2023-09-12 12:04:53 -04:00
Raman Gupta
1cd80c5b78 Bump zwave-js-server-python to 0.51.2 (#100159) 2023-09-12 12:04:52 -04:00
puddly
68b0f05758 Bump ZHA dependencies (#100156) 2023-09-12 12:04:51 -04:00
Michael
d1bc6df14f Fix AVM Fritz!Tools update entity (#100151)
* move update entity to coordinator

* fix tests
2023-09-12 12:04:50 -04:00
Robert Svensson
5068846fc9 Fix devices not always reporting IP - bump aiounifi to v62 (#100149) 2023-09-12 12:04:49 -04:00
Bram Kragten
04549925c2 Update frontend to 20230911.0 (#100139) 2023-09-12 12:04:48 -04:00
Erik Montnemery
8e2fa67cfd Bump hatasmota to 0.7.2 (#100129) 2023-09-12 12:04:47 -04:00
Erik Montnemery
7a4a792b7b Fix TriggerEntity.async_added_to_hass (#100119) 2023-09-12 12:04:45 -04:00
Greig Sheridan
df718ca509 Remove duplicated word in enphase description text (#100098) 2023-09-12 12:04:44 -04:00
Mike Degatano
2cb84274ec Fix addon slug validation (#100070)
* Fix addon slug validation

* Don't redefine compile
2023-09-12 12:04:43 -04:00
Simone Chemelli
55a4346460 Remove Comelit alarm data retrieval (#100067)
fix: remove alarm data retrieval
2023-09-12 12:04:42 -04:00
Simone Chemelli
a651e9df1d Bump aiovodafone to 0.2.0 (#100062)
bump aiovodafone to 0.2.0
2023-09-12 12:04:41 -04:00
Aidan Timson
a19bc71300 Bump systembridgeconnector to 3.8.2 (#100051)
Update systembridgeconnector to 3.8.2
2023-09-12 12:04:40 -04:00
Kevin Stillhammer
82a5615d7d Bump pywaze to 0.4.0 (#99995)
bump pywaze from 0.3.0 to 0.4.0
2023-09-12 12:04:39 -04:00
jan iversen
42f62485cf Bump pymodbus to v3.5.2 (#99988) 2023-09-12 12:04:38 -04:00
J. Nick Koston
3d09e859fc Avoid probing ipp printers for unique_id when it is available via mdns (#99982)
* Avoid probing ipp printers for unique_id when it is available via mdns

We would always probe the device in the ipp flow and than
abort if it was already configured. We avoid the probe for
most printers.

* dry

* coverage

* fix test

* add test for updating host
2023-09-12 12:04:37 -04:00
J. Nick Koston
f200ba7a86 Bump bluetooth-auto-recovery to 1.2.3 (#99979)
fixes #99977
2023-09-12 12:04:36 -04:00
Bouwe Westerdijk
7cdb4ec852 Bump plugwise to v0.32.2 (#99973)
* Bump plugwise to v0.32.2

* Adapt number.py to the backend updates

* Update related test-cases

* Update plugwise test-fixtures

* Update test_diagnostics.py
2023-09-12 12:04:35 -04:00
Raman Gupta
e6c2833032 Handle disconnects in zwave_js repair flow (#99964)
* Handle disconnects in zwave_js repair flow

* Combine logic to reduce LoC

* only check once
2023-09-12 12:04:33 -04:00
Luke Lashley
0f9d00e4aa Bump python-roborock to 33.2 (#99962)
bump to 33.2
2023-09-12 12:04:32 -04:00
J. Nick Koston
02831ad94f Bump bleak to 0.21.1 (#99960) 2023-09-12 12:04:31 -04:00
Marc Mueller
e597a6b640 Update RestrictedPython to 6.2 (#99955) 2023-09-12 12:04:30 -04:00
Ståle Storø Hauknes
f0b6367444 Airthings BLE unique id migration (#99832)
* Fix sensor unique id

* Add sensor identifiers

* Migrate entities to new unique id

* Fix linting issues

* Fix crash when migrating entity fails

* Change how entities are migrated

* Remve debug logging

* Remove unneeded async

* Remove migration code from init file

* Add migration code to sensor.py

* Adjust for loops to improve speed

* Bugfixes, improve documentation

* Remove old comment

* Remove unused function parameter

* Address PR feedback

* Add tests

* Improve tests and test data

* Refactor test

* Update logger level

Co-authored-by: J. Nick Koston <nick@koston.org>

* Adjust PR comments

* Address more PR comments

* Address PR comments and adjust tests

* Fix PR comment

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-12 12:04:29 -04:00
puddly
8e6ec01bfb Cache device trigger info during ZHA startup (#99764)
* Do not connect to the radio hardware within `_connect_zigpy_app`

* Make `connect_zigpy_app` public

* Create radio manager instances from config entries

* Cache device triggers on startup

* reorg zha init

* don't reuse gateway

* don't nuke yaml configuration

* review comments

* Fix existing unit tests

* Ensure `app.shutdown` is called, not just `app.disconnect`

* Revert creating group entities and device registry entries early

* Add unit tests

---------

Co-authored-by: David F. Mulcahey <david.mulcahey@icloud.com>
2023-09-12 12:04:28 -04:00
Tiit Rätsep
4c125fda9d Fix Soma cover tilt (#99717) 2023-09-12 12:04:27 -04:00
jan iversen
7235de1a0c Make modbus retry fast on read errors (#99576)
* Fast retry on read errors.

* Review comments.
2023-09-12 12:04:26 -04:00
jan iversen
d399ebb8e1 Read modbus data before scan_interval (#99243)
Read before scan_interval.
2023-09-12 12:04:25 -04:00
Michael Arthur
367d893fc8 Bugfix: Electric Kiwi reduce interval so oauth doesn't expire (#99489)
decrease interval time as EK have broken/changed their oauth again
2023-09-12 12:02:03 -04:00
jan iversen
d5ff05bdf5 Remove modbus pragma no cover and solve nan (#99221)
* Remove pragma no cover.

* Ruff !

* Review comments.

* update test.

* Review.

* review.

* Add slave test.
2023-09-12 12:02:02 -04:00
Joost Lekkerkerker
71c4f675e0 Use shorthand attributes in SPC (#100217) 2023-09-12 11:01:05 -05:00
Joost Lekkerkerker
4e202eb376 Use shorthand attributes in Yamaha Musiccast (#100220) 2023-09-12 10:35:01 -05:00
Joost Lekkerkerker
6545fba549 Use shorthand attributes in Universal (#100219) 2023-09-12 10:34:41 -05:00
Erik Montnemery
6485320bc4 Improve type annotations in websocket_api tests (#100198) 2023-09-12 17:31:25 +02:00
Joost Lekkerkerker
75951dd67b Use shorthand attributes in Point (#100214) 2023-09-12 10:15:36 -05:00
Joost Lekkerkerker
54c034185f Use shorthand attributes in Isy994 (#100209) 2023-09-12 10:13:13 -05:00
Erik Montnemery
6e6680dc4d Enable asyncio debug mode in tests (#100197) 2023-09-12 10:12:22 -05:00
J. Nick Koston
83ef5450e9 Use shorthand attributes in garadget cover (#100207) 2023-09-12 10:05:31 -05:00
J. Nick Koston
e2f7b3c6f8 Use shorthand attributes in buienradar camera (#100205) 2023-09-12 10:05:15 -05:00
J. Nick Koston
085a584d98 Use shorthand attributes in geniushub sensor (#100208) 2023-09-12 10:04:35 -05:00
Joost Lekkerkerker
4e17901fef Use shorthand attribute in Bloomsky (#100203) 2023-09-12 16:37:35 +02:00
Erik Montnemery
d495208995 Remove unnecessary block use of pylint disable in onvif (#100194) 2023-09-12 09:19:26 -05:00
jan iversen
c178388956 Remove modbus pragma no cover and solve nan (#99221)
* Remove pragma no cover.

* Ruff !

* Review comments.

* update test.

* Review.

* review.

* Add slave test.
2023-09-12 16:05:59 +02:00
jan iversen
9acca1bf58 Make modbus retry fast on read errors (#99576)
* Fast retry on read errors.

* Review comments.
2023-09-12 10:01:15 -04:00
Ståle Storø Hauknes
198532d51d Airthings BLE unique id migration (#99832)
* Fix sensor unique id

* Add sensor identifiers

* Migrate entities to new unique id

* Fix linting issues

* Fix crash when migrating entity fails

* Change how entities are migrated

* Remve debug logging

* Remove unneeded async

* Remove migration code from init file

* Add migration code to sensor.py

* Adjust for loops to improve speed

* Bugfixes, improve documentation

* Remove old comment

* Remove unused function parameter

* Address PR feedback

* Add tests

* Improve tests and test data

* Refactor test

* Update logger level

Co-authored-by: J. Nick Koston <nick@koston.org>

* Adjust PR comments

* Address more PR comments

* Address PR comments and adjust tests

* Fix PR comment

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-12 09:59:54 -04:00
Mike Degatano
2b62285eee Fix addon slug validation (#100070)
* Fix addon slug validation

* Don't redefine compile
2023-09-12 09:59:12 -04:00
Joakim Sørensen
1e2b0b65af Bump hass-nabucasa from 0.70.0 to 0.71.0 (#100193)
Bump hass-nabucasa from 0.70.0 to 0.71.1
2023-09-12 09:58:25 -04:00
Erik Montnemery
fabb098ec3 Simplify WS command entity/source (#99439) 2023-09-12 15:39:11 +02:00
Joost Lekkerkerker
e143bdf2f5 Use shorthand attributes in Vera (#99893) 2023-09-12 15:23:12 +02:00
Jan Bouwhuis
6b265120b3 Fix entity name attribute on mqtt entity is not removed on update (#100187)
Fix entity name attribute is not remove on update
2023-09-12 15:22:37 +02:00
Joost Lekkerkerker
76c3a638c4 Use shorthand attributes in Smarttub (#99839) 2023-09-12 15:17:57 +02:00
Joost Lekkerkerker
b5275016d4 Use shorthand attributes in Twinkly (#99891) 2023-09-12 15:08:18 +02:00
Joost Lekkerkerker
1ccf9cc400 Use shorthand attributes in Squeezebox (#99863) 2023-09-12 15:02:29 +02:00
Joost Lekkerkerker
1cf2f2f8b8 Use shorthand attributes in Songpal (#99849) 2023-09-12 15:00:11 +02:00
Joost Lekkerkerker
1ca505c228 Use shorthand attributes in Wiffi (#99919) 2023-09-12 14:58:03 +02:00
jan iversen
26ada30720 Remove default from deprecated close_comm_on_error (#100188) 2023-09-12 14:12:45 +02:00
Erik Montnemery
6b628f2d29 Remove unnecessary block use of pylint disable in components a-o (#100190) 2023-09-12 14:02:50 +02:00
jan iversen
71207e112e Bring modbus naming in sync with standard (#99285) 2023-09-12 10:59:50 +02:00
Vincent Knoop Pathuis
fead9d3a92 Bump Ultraheat to version 0.5.7 (#100172) 2023-09-12 10:45:35 +02:00
dependabot[bot]
0cd73e397b Bump tibdex/github-app-token from 1.8.2 to 2.0.0 (#100099)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-12 10:43:13 +02:00
Erik Montnemery
5bcb4f07a0 Bump hatasmota to 0.7.3 (#100169) 2023-09-12 09:58:05 +02:00
Joost Lekkerkerker
27c430bbac Use shorthand attributes in Smart meter texas (#99838)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-12 09:36:07 +02:00
Alex Yao
5ba573a1b4 Add Life360 Location Update Button (#99559)
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: alexyao2015 <alexyao2015@users.noreply.github.com>
2023-09-12 09:34:11 +02:00
Álvaro Fernández Rojas
da13afbd3c Add missing AEMET wind gust speed (#100157) 2023-09-12 09:08:06 +02:00
Erik Montnemery
80b03b4acb Adjust tasmota sensor device class and icon mapping (#100168) 2023-09-12 08:59:39 +02:00
J. Nick Koston
e8ed4c1ace Bump dbus-fast to 2.6.0 (#100163)
changelog: https://github.com/Bluetooth-Devices/dbus-fast/compare/v2.4.0...v2.6.0
2023-09-12 08:56:02 +02:00
Allen Porter
183b77973f Add configuration flow to Todoist integration (#100094)
* Add config flow to todoist

* Fix service calls for todoist

* Fix configuration entry test setup

* Bump test coverage to 100%

* Apply pr feedback
2023-09-11 22:56:08 -07:00
Raman Gupta
8e43f79f19 Bump zwave-js-server-python to 0.51.2 (#100159) 2023-09-11 23:03:47 -04:00
Jan-Philipp Benecke
5d46e22591 Move airly coordinator to its own file (#99545) 2023-09-11 21:52:02 -05:00
J. Nick Koston
140af44e31 Bump dbus-fast to 2.4.0 (#100158) 2023-09-11 21:40:32 -05:00
J. Nick Koston
a20d1a357f Avoid probing ipp printers for unique_id when it is available via mdns (#99982)
* Avoid probing ipp printers for unique_id when it is available via mdns

We would always probe the device in the ipp flow and than
abort if it was already configured. We avoid the probe for
most printers.

* dry

* coverage

* fix test

* add test for updating host
2023-09-11 22:34:23 -04:00
Michael
3d28c6d636 Fix AVM Fritz!Tools update entity (#100151)
* move update entity to coordinator

* fix tests
2023-09-11 22:30:50 -04:00
puddly
15b9963a24 Bump ZHA dependencies (#100156) 2023-09-11 22:23:55 -04:00
Raman Gupta
e231da42e1 Handle disconnects in zwave_js repair flow (#99964)
* Handle disconnects in zwave_js repair flow

* Combine logic to reduce LoC

* only check once
2023-09-12 04:21:44 +02:00
Bram Kragten
e0e05f9546 Update frontend to 20230911.0 (#100139) 2023-09-11 23:06:21 +02:00
Jan-Philipp Benecke
4779cdf2ae Let the discovergy config flow test end with create entry (#100153) 2023-09-11 23:06:06 +02:00
Álvaro Fernández Rojas
851dc4cdf4 Use library for condition/wind direction conversions (#100117)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-09-11 22:26:58 +02:00
Joost Lekkerkerker
c347c78b6d Split Withings common file out to their own file (#100150)
* Split common out in logical pieces

* Split common out in logical pieces

* Split common out in logical pieces
2023-09-11 22:25:08 +02:00
Jan-Philipp Benecke
5a56adb3f5 Refactor discovergy config flow test to use parametrize (#100115)
* Refactor discovergy config flow test to use parametrize

* Formatting

* Implement code review sugesstions
2023-09-11 21:53:07 +02:00
Robert Svensson
13cd873e38 Fix devices not always reporting IP - bump aiounifi to v62 (#100149) 2023-09-11 21:50:29 +02:00
J. Nick Koston
0571a75c99 Bump zeroconf to 0.108.0 (#100148) 2023-09-11 14:42:13 -05:00
puddly
cbb28b6943 Migrate internal ZHA data to a dataclasses (#100127)
* Cache device triggers on startup

* reorg zha init

* don't reuse gateway

* don't nuke yaml configuration

* review comments

* Add unit tests

* Do not cache device and entity registries

* [WIP] Wrap ZHA data in a dataclass

* [WIP] Get unit tests passing

* Use a helper function for getting the gateway object to fix annotations

* Remove `bridge_id`

* Fix typing issues with entity references in group websocket info

* Use `Platform` instead of `str` for entity platform matching

* Use `get_zha_gateway` in a few more places

* Fix flaky unit test

* Use `slots` for ZHA data

Co-authored-by: J. Nick Koston <nick@koston.org>

---------

Co-authored-by: David F. Mulcahey <david.mulcahey@icloud.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-11 21:39:33 +02:00
Joost Lekkerkerker
5c206de906 Decouple Withings webhook tests from YAML (#100143) 2023-09-11 14:06:20 -05:00
Niels Perfors
ad5e9e9f5b Remove code owner Verisure (#100145) 2023-09-11 13:43:59 -05:00
J. Nick Koston
d5fc92eb90 Bump zeroconf to 0.107.0 (#100134)
changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.105.0...0.107.0
2023-09-11 20:34:35 +02:00
J. Nick Koston
fdb9ac20c3 Migrate mobile_app to use json helper (#100136) 2023-09-11 12:08:48 -05:00
TJ Horner
17db20fdd7 Add Apple WeatherKit integration (#99895) 2023-09-11 12:06:55 -05:00
J. Nick Koston
0fe88d60ac Guard expensive debug logging with isEnabledFor in alexa (#100137) 2023-09-11 11:39:10 -05:00
Erik Montnemery
18e08bc79f Bump hatasmota to 0.7.2 (#100129) 2023-09-11 11:35:48 -05:00
starkillerOG
56678851af Fix inverse naming of function in Reolink (#100113) 2023-09-11 18:03:22 +02:00
Erik Montnemery
6ccb74997c Fix ScrapeSensor.async_added_to_hass (#100125) 2023-09-11 16:58:56 +02:00
Álvaro Fernández Rojas
9c65e59cc8 Remove AEMET daily precipitation sensor test (#100118) 2023-09-11 09:46:59 -05:00
Robert Svensson
d8445a79fc UniFi streamline loading platforms (#100071)
* Streamline loading platforms

* Move platform registration logic to UnifiController class
2023-09-11 15:55:27 +02:00
J. Nick Koston
791482406c Cleanup isinstance checks in zeroconf (#100090) 2023-09-11 08:13:25 -05:00
J. Nick Koston
f4a7bb47fe Bump zeroconf to 0.105.0 (#100084) 2023-09-11 08:09:29 -05:00
J. Nick Koston
64fde640ca Bump pyunifiprotect to 4.20.0 (#100092) 2023-09-11 08:08:19 -05:00
puddly
a6f325d05a Cache device trigger info during ZHA startup (#99764)
* Do not connect to the radio hardware within `_connect_zigpy_app`

* Make `connect_zigpy_app` public

* Create radio manager instances from config entries

* Cache device triggers on startup

* reorg zha init

* don't reuse gateway

* don't nuke yaml configuration

* review comments

* Fix existing unit tests

* Ensure `app.shutdown` is called, not just `app.disconnect`

* Revert creating group entities and device registry entries early

* Add unit tests

---------

Co-authored-by: David F. Mulcahey <david.mulcahey@icloud.com>
2023-09-11 14:36:01 +02:00
Erik Montnemery
42046a3ce2 Fix TriggerEntity.async_added_to_hass (#100119) 2023-09-11 14:33:43 +02:00
Joost Lekkerkerker
a6e9bf830c Decouple Withings binary sensor test from YAML (#100120) 2023-09-11 13:58:47 +02:00
Joost Lekkerkerker
5781e5e03e Use json to store Withings test data fixtures (#99998)
* Decouple Withings sensor tests from yaml

* Improve Withings config flow tests

* Improve Withings config flow tests

* Fix feedback

* Use fixtures to store Withings testdata structures

* Use fixtures to store Withings testdata structures

* Use JSON

* Fix

* Use load_json_object_fixture
2023-09-11 12:36:37 +02:00
Marc Mueller
58072189fc Update black to 23.9.1 (#100108) 2023-09-11 12:14:50 +02:00
Tiit Rätsep
10bb8f5396 Fix Soma cover tilt (#99717) 2023-09-11 11:15:46 +02:00
Jan-Philipp Benecke
a4cb06d09f Also handle DiscovergyClientError as UpdateFailed (#100038)
* Also handle DiscovergyClientError as UpdateFailed

* Change AccessTokenExpired to InvalidLogin

* Also add DiscovergyClientError to config flow and tests
2023-09-11 11:00:50 +02:00
Jan Bouwhuis
20d0ebe3fa Add TYPE_CHECKING condition on type assertions for mqtt (#100107)
Add TYPE_CHECKING condition on type assertions
2023-09-11 10:58:33 +02:00
Rami Mosleh
eb0099dee8 Move smtp constants to const.py (#99542) 2023-09-11 09:36:55 +02:00
Joost Lekkerkerker
43fe8d16c3 Use shorthand attributes in ZAMG (#99925)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-11 09:32:43 +02:00
Greig Sheridan
f121e891fd Remove duplicated word in enphase description text (#100098) 2023-09-11 09:16:21 +02:00
Simone Chemelli
0fb678abfc Remove Comelit alarm data retrieval (#100067)
fix: remove alarm data retrieval
2023-09-11 08:49:10 +02:00
Michael Arthur
8beace265b Add unit tests for sensors Electric Kiwi (#97723)
* add unit tests for sensors

* newline long strings

* unit test check and move time

* rename entry to entity

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

* add types to test

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

* fix newlined f strings

* remove if statement

* add some more explaination

* Update datetime

Co-authored-by: Robert Resch <robert@resch.dev>

* Simpler time update

Co-authored-by: Robert Resch <robert@resch.dev>

* add missing datetime import

* Update docustring - grammar

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

* address comments and issues raised

* address docstrings too long

* Fix docstring

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-11 01:30:25 +02:00
jimmyd-be
6c45f43c5d Renson number entity (#99358)
* Starting number sensor

* Filter change config

* Add translation to number entity

* add number entity to .coveragerc

* Moved has_entity_name to description + changed name of entity

* Add self.coordinator.async_request_refresh() after changing value

* Add device calss and unit of measurement to number entity
2023-09-11 01:24:57 +02:00
G Johansson
73a695d857 Fix incorrect docstring in TV Camera sensor test (#100083) 2023-09-11 01:22:33 +02:00
G Johansson
954293f77e Add binary sensors to Trafikverket Camera (#100082) 2023-09-11 01:12:19 +02:00
G Johansson
0fae65abde Fix missed name to translation key in Sensibo (#100080) 2023-09-11 01:10:59 +02:00
G Johansson
4ebb6bb823 Add sensors to Trafikverket Camera (#100078)
* Add sensors to Trafikverket Camera

* Remove active

* Fix test len
2023-09-11 00:56:12 +02:00
Matrix
45fc158823 Add yolink siren battery entity (#99310) 2023-09-11 00:31:58 +02:00
J. Nick Koston
80e05716c0 Bump dbus-fast to 2.2.0 (#100076) 2023-09-10 16:38:39 -05:00
dependabot[bot]
4474face88 Bump tibdex/github-app-token from 1.8.0 to 1.8.2 (#99434)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-10 22:23:18 +02:00
J. Nick Koston
2bda34b98a Bump flux_led to 1.0.4 (#100050) 2023-09-10 21:45:37 +02:00
J. Nick Koston
02a4289c6e Bump zeroconf to 0.104.0 (#100068) 2023-09-10 21:32:40 +02:00
J. Nick Koston
3b8d99dcd8 Add __slots__ to translation cache (#100069) 2023-09-10 20:46:55 +02:00
Álvaro Fernández Rojas
3238386f48 Add water heater support to Airzone (#98401)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-10 12:31:11 -05:00
Simone Chemelli
a5a82b94ac Bump aiovodafone to 0.2.0 (#100062)
bump aiovodafone to 0.2.0
2023-09-10 19:09:21 +02:00
J. Nick Koston
4f0cd5589c Bump aiohomekit to 3.0.3 (#100047) 2023-09-10 12:01:12 -05:00
Tony
3b25262d6c Address ruckus_unleashed late review (#99411) 2023-09-10 18:49:17 +02:00
Jan-Philipp Benecke
7acc606dd8 Remove unnecessary argument from discovergy coordinator (#100058) 2023-09-10 11:25:55 -05:00
Jan Bouwhuis
63852c565f Use hass.loop.create_future() in envisalink (#100057) 2023-09-10 11:25:25 -05:00
J. Nick Koston
50382a609c Create recorder futures with loop.create_future() (#100049) 2023-09-10 11:24:57 -05:00
Aidan Timson
51899ce5ad Add System Bridge notifications (#82318)
* System bridge notifications

Add notify platform

Add file to coverage

Restore and fix lint after rebase

Cleanup

Use entity to register notify service

Fix pylint

Update package to 3.6.0 and add audio actions

Update package to fix conflict

Remove addition

* Run pre-commit run --all-files

* Update homeassistant/components/system_bridge/notify.py

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

* Format

* Fix

* Remove duplicate import

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-10 17:32:52 +02:00
Jan Bouwhuis
6899245020 Use hass.loop.create_future() for bluetooth (#100054) 2023-09-10 17:16:16 +02:00
Jan Bouwhuis
1a5f093397 Uer hass.loop.create_future() for MQTT client (#100053) 2023-09-10 17:15:46 +02:00
Joost Lekkerkerker
05635c913f Add device to OpenUV (#100027) 2023-09-10 17:10:45 +02:00
Aidan Timson
140bc03fb1 Bump systembridgeconnector to 3.8.2 (#100051)
Update systembridgeconnector to 3.8.2
2023-09-10 17:02:42 +02:00
Joost Lekkerkerker
b165c28a7c Improve Withings config flow tests (#99697)
* Decouple Withings sensor tests from yaml

* Improve Withings config flow tests

* Improve Withings config flow tests

* Fix feedback

* Rename CONF_PROFILE to PROFILE
2023-09-10 16:18:45 +02:00
Yuxiang Zhu
739eb28b90 Make homekit RTP/RTCP source ports more deterministic (#99989) 2023-09-10 09:07:35 -05:00
mkmer
59e87c0864 Raise HomeAssistantError/ValueError for service calls in Honeywell (#100041) 2023-09-10 15:58:59 +02:00
mkmer
d56ad14673 Add diagnostic platform to Honeywell (#100046)
Add diagnostic platform
2023-09-10 15:49:56 +02:00
Marc Mueller
ccca12cf31 Update bthome-ble to 3.1.1 (#100042) 2023-09-10 08:42:47 -05:00
Diogo Gomes
553cdfbf99 Always update unit of measurement of the utility_meter on state change (#99102) 2023-09-10 08:29:38 -05:00
J. Nick Koston
5e81499855 Avoid json_decoder_fallback in /api/states (#100018) 2023-09-10 08:25:23 -05:00
J. Nick Koston
ad4619c038 Speed up serializing event messages (#100017) 2023-09-10 08:25:13 -05:00
fender4645
e4af50f955 Add debug message to doods (#100002)
* Debug message if no detections found or
no output file configured

* fix formatting

* black

---------

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2023-09-10 12:58:18 +02:00
Bouwe Westerdijk
446ca2e9ad Enable strict typing in Plugwise (#100033)
Add plugwise to .strict-typing
2023-09-10 12:16:59 +02:00
Bouwe Westerdijk
c01a9987b5 Add Plugwise temperature_offset number (#100029)
Add temperature_offset number
2023-09-10 11:34:09 +02:00
elmurato
1f3b3b1be3 Add sensor entity descriptions in Minecraft Server (#99971)
* Add sensor entity descriptions

* Fix review findings

* Fix type of value function to avoid inline lambda if conditions and add attribute function to avoid extra sensor entity class

* Correct name of binary sensor base entity

* Simplify adding of entities in platforms

* Do not use keyword arguments while adding entities
2023-09-10 10:20:26 +02:00
J. Nick Koston
4153181cd3 Bump aiodiscover to 1.5.1 (#100020)
changelog: https://github.com/bdraco/aiodiscover/compare/v1.4.16...v1.5.1
2023-09-10 10:17:59 +02:00
J. Nick Koston
3b588a839c Bump zeroconf to 0.103.0 (#100012) 2023-09-09 19:49:26 -05:00
Luke Lashley
602e36aa12 Add new sensors to Roborock (#99983)
* Add 3 new sensor types

* add state options for dock error

* add unit of measurement
2023-09-10 00:40:28 +02:00
Kevin Worrel
092580a3ed Bump screenlogicpy to v0.9.0 (#92475)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-09 17:39:54 -05:00
Joost Lekkerkerker
8de3945bd4 Fix renamed code owner for Versasense (#99976)
Fix renamed code owner
2023-09-10 00:38:57 +02:00
Joost Lekkerkerker
6c613fd255 Move static attributes outside of ws66i constructor (#99922)
Move static attributes outside of ws66i cosntructor
2023-09-10 00:38:43 +02:00
Joost Lekkerkerker
4bc079b219 Use snapshot assertion in Plugwise diagnostic test (#100008)
* Use snapshot assertion in Plugwise diagnostic test

* Use snapshot assertion in Plugwise diagnostic test
2023-09-10 00:38:17 +02:00
J. Nick Koston
e3f228ea52 Switch config_entries to use loop.create_future() (#100011) 2023-09-09 17:34:49 -05:00
J. Nick Koston
b370244ed4 Switch ESPHome Bluetooth to use loop.create_future() (#100010) 2023-09-09 17:34:31 -05:00
J. Nick Koston
b66437ff7b Bump yalexs-ble to 2.3.0 (#100007) 2023-09-09 17:34:11 -05:00
Bouwe Westerdijk
081d0bdce5 Bump plugwise to v0.32.2 (#99973)
* Bump plugwise to v0.32.2

* Adapt number.py to the backend updates

* Update related test-cases

* Update plugwise test-fixtures

* Update test_diagnostics.py
2023-09-09 23:50:26 +02:00
Joost Lekkerkerker
af8fd6c2d9 Restore airtouch4 codeowner (#99984) 2023-09-09 23:22:03 +02:00
Joost Lekkerkerker
eeaca8ae3c Use shorthand attributes in Vicare (#99915) 2023-09-09 23:18:41 +02:00
elmurato
23f4ccd4f1 Fix late review findings in Minecraft Server (#99865) 2023-09-09 22:32:13 +02:00
J. Nick Koston
aff49cb67a Bump bluetooth-auto-recovery to 1.2.3 (#99979)
fixes #99977
2023-09-09 19:23:15 +02:00
Kevin Stillhammer
862506af61 Bump pywaze to 0.4.0 (#99995)
bump pywaze from 0.3.0 to 0.4.0
2023-09-09 19:16:27 +02:00
Joost Lekkerkerker
a62ffeaa99 Decouple Withings sensor tests from yaml (#99691)
* Decouple Withings sensor tests from yaml

* Fix feedback

* Add pytest fixture

* Update tests/components/withings/test_sensor.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Update snapshots

* Update snapshots

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-09-09 19:11:28 +02:00
Joost Lekkerkerker
868fdd81da Add entity translations to withings (#99194)
* Add entity translations to Withings

* Add entity translations to Withings
2023-09-09 18:48:09 +02:00
jan iversen
743ce46311 Deprecate CLOSE_COMM_ON_ERROR (#99946) 2023-09-09 18:34:01 +02:00
Luke Lashley
71726130c3 Add binary sensors to Roborock (#99990)
* init binary sensors commit

* add binary sensors

* fix test

* Apply suggestions from code review

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-09 18:12:14 +02:00
Joost Lekkerkerker
9be16d9d42 Add config flow to WAQI (#98220)
* Migrate WAQI to aiowaqi library

* Migrate WAQI to aiowaqi library

* Migrate WAQI to aiowaqi library

* Add config flow to WAQI

* Finish config flow

* Add tests

* Add tests

* Fix ruff

* Add issues on failing to import

* Add issues on failing to import

* Add issues on failing to import

* Add importing issue

* Finish coverage

* Remove url from translation string

* Fix feedback

* Fix feedback
2023-09-09 17:49:54 +02:00
jan iversen
fdddbd7363 Bump pymodbus to v3.5.2 (#99988) 2023-09-09 17:45:19 +02:00
J. Nick Koston
bb2cdbe7bc Change SSDP discovery scan interval to 10 minutes (#99975)
* Change SSDP discovery scan interval to 10 minutes

The first version used a scan interval of 1 minute which we
increased to 2 minutes because it generated too much traffic.

We kept it at 2 minutes because Sonos historicly needed to
get SSDP discovery to stay alive. This is no longer the case
as Sonos has multiple ways to keep from going unavailable:

- mDNS support was added
- We now listen for SSDP alive and good bye all the time
- Each incoming packet from the device keeps it alive now
- We probe when we think the device might be offline

This means it should no longer be necessary to have such a
frequent scan which is a drag on all devices on the network
since its multicast

* adjust tests
2023-09-09 10:54:40 -04:00
G Johansson
e425662494 Bump pytrafikverket to 0.3.6 (#99869)
* Bump pytrafikverket to 0.3.6

* Fix config flow names

* str
2023-09-09 16:18:47 +02:00
Thomas Roager
74a7bccd65 Add zdb5100 light to zwave_js (#97586)
* added zdb5100 light

* added light to zdb5100

* Update tests/components/zwave_js/conftest.py

agree

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

* Update tests/components/zwave_js/conftest.py

agree

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

* Rename logic_group_zdb5100_light_state.json to logic_group_zdb5100_state.json

name change

* Update tests/components/zwave_js/test_light.py

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

* Update test_light.py

updated test and state

* Update test_light.py

incorrect endpoint

* changed the state

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-09 16:01:32 +02:00
Marc Mueller
c77eb70886 Add black caching [ci] (#99967)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-09 08:36:47 -05:00
Marc Mueller
483e9c92bd Update black to 23.9.0 (#99965) 2023-09-09 07:53:25 -05:00
Luke Lashley
dced72f2dd Bump python-roborock to 33.2 (#99962)
bump to 33.2
2023-09-09 14:15:28 +02:00
Robert Svensson
cf47a6c515 Add UniFi device uptime and temperature sensors (#99307)
* Add UniFi device uptime and temperature sensors

* Add native_unit_of_measurement to temperature
Remove seconds and milliseconds from device uptime
2023-09-09 11:12:44 +02:00
J. Nick Koston
f903cd6fc0 Bump dbus-fast to 2.0.1 (#99894) 2023-09-08 21:16:21 -05:00
J. Nick Koston
694638cbc0 Bump bleak to 0.21.1 (#99960) 2023-09-08 19:39:30 -05:00
Marc Mueller
e163e00acd Update RestrictedPython to 6.2 (#99955) 2023-09-08 18:51:26 -05:00
Joost Lekkerkerker
75f923a86e Use device class translations for Devolo Update entity (#99235) 2023-09-09 01:16:51 +02:00
elmurato
d59aa958b6 Add tests for Minecraft Server entry migration from v1 to v2 (#99954) 2023-09-08 23:03:27 +02:00
Bram Kragten
9e6ac1d7ec 2023.9.1 (#99950) 2023-09-08 22:46:00 +02:00
Daniel Hjelseth Høyer
2dcf6a6f5b Bump millheater to 0.11.2 (#99683)
Update Mill lib

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2023-09-08 21:17:02 +02:00
Bram Kragten
6e952134e7 Bumped version to 2023.9.1 2023-09-08 21:03:27 +02:00
Erik Montnemery
ff393f6b86 Bump hatasmota to 0.7.1 (#99818) 2023-09-08 21:02:43 +02:00
Erik Montnemery
f753f5af6e Make WS command render_template not give up if initial render raises (#99808) 2023-09-08 21:02:42 +02:00
Erik Montnemery
1654ef7759 Make WS command render_template not give up if initial render raises (#99808) 2023-09-08 21:02:06 +02:00
Erik Montnemery
b317e04cf1 Bump hatasmota to 0.7.1 (#99818) 2023-09-08 21:01:34 +02:00
J. Nick Koston
f0ee20c15c Bump orjson to 3.9.7 (#99938) 2023-09-08 13:59:35 -05:00
J. Nick Koston
19c2bbcd93 Bump zeroconf to 0.98.0 (#99748) 2023-09-08 20:57:03 +02:00
J. Nick Koston
7ded08464f Bump zeroconf to 0.97.0 (#99554)
changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.96.0...0.97.0
2023-09-08 20:56:23 +02:00
J. Nick Koston
c1447d5ce4 Bump zeroconf to 0.96.0 (#99549) 2023-09-08 20:56:02 +02:00
J. Nick Koston
55533350d2 Bump zeroconf to 0.93.1 (#99516)
* Bump zeroconf to 0.92.0

changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.91.1...0.92.0

* drop unused argument

* Update tests/components/thread/test_diagnostics.py

* lint

* again

* bump again since actions failed to release the wheels
2023-09-08 20:55:01 +02:00
Jan Bouwhuis
06109d22fd Fix key error MQTT binary_sensor when no name is set (#99943)
Log entitty ID when instead of name
2023-09-08 20:53:06 +02:00
Joost Lekkerkerker
f1bae7d37b Bump pyenphase to v1.11.0 (#99941) 2023-09-08 20:53:05 +02:00
jan iversen
0e4bf58736 Bump pymodbus v.3.5.1 (#99940) 2023-09-08 20:53:04 +02:00
jan iversen
50c34ab419 Bump pymodbus v3.5.0 (#99343)
Bump pymodbus v3.5.0.
2023-09-08 20:52:31 +02:00
Bram Kragten
fed061f69c Update frontend to 20230908.0 (#99939) 2023-09-08 20:51:08 +02:00
J. Nick Koston
330e527560 Upgrade bluetooth deps to fix timeout behavior on py3.11 (#99879) 2023-09-08 20:51:06 +02:00
Jan Bouwhuis
110a17ad6d Fix NOAA tides warnings (#99856) 2023-09-08 20:51:05 +02:00
puddly
dccccda502 Bump ZHA dependencies (#99855) 2023-09-08 20:51:04 +02:00
J. Nick Koston
02b6bbdcc6 Bump dbus-fast to 1.95.2 (#99852) 2023-09-08 20:51:03 +02:00
J. Nick Koston
cadf56c989 Bump dbus-fast to 1.95.0 (#99749) 2023-09-08 20:50:18 +02:00
Simone Chemelli
d50f9f4e51 Bump aiovodafone to 0.1.0 (#99851)
* bump aiovodafone to 0.1.0

* fix tests
2023-09-08 20:46:12 +02:00
J. Nick Koston
7dc7060825 Fix missing name and identifiers for ELKM1 connected devices (#99828) 2023-09-08 20:46:11 +02:00
Joost Lekkerkerker
0b4fedccff Use correct config entry id in Livisi (#99812) 2023-09-08 20:46:10 +02:00
Erik Montnemery
850c095988 Improve error handling in /api/states POST (#99810) 2023-09-08 20:46:09 +02:00
Erik Montnemery
31fb9d12ea Always set severity level flag on render_template error events (#99804) 2023-09-08 20:46:08 +02:00
lymanepp
590ac173ed Fix missing dew point and humidity in tomorrowio forecasts (#99793)
* Fix missing dew point and humidity in tomorrowio forecasts

* Add assertion for correct parameters to realtime_and_all_forecasts method
2023-09-08 20:46:07 +02:00
swamplynx
45e723135c Bump pylutron-caseta to v0.18.2 (#99789)
* Bump pylutron-caseta to v0.18.2

Minor bump to pylutron-caseta requirement to support wall mounted occupancy sensor device type in latest RA3 firmware.

* Update requirements_all.txt for pylutron-caseta 0.18.2

* Update requirements_test_all.txt for pylutron-caseta 0.18.2
2023-09-08 20:46:06 +02:00
J. Nick Koston
c217ea7b38 Bump pyenphase to 1.9.3 (#99787)
* Bump pyenphase to 1.9.2

changelog: https://github.com/pyenphase/pyenphase/compare/v1.9.1...v1.9.2

Handle the case where the user has manually specified a password for
local auth with firmware < 7.x but its incorrect.

The integration previously accepted any wrong password and would
reduce functionality down to what works without a password. We now
preserve that behavior to avoid breaking existing installs.

* bump
2023-09-08 20:46:05 +02:00
Aaron Bach
c740b79e1e Bump aiorecollect to 2023.09.0 (#99780) 2023-09-08 20:46:04 +02:00
Pawel
7c7fed0322 Add support for more busy codes for Epson (#99771)
add support for more busy codes
2023-09-08 20:46:02 +02:00
J. Nick Koston
a25f6bbd09 Bump sense_energy to 0.12.1 (#99763) 2023-09-08 20:46:01 +02:00
Quentame
fb56e48e07 Fix Freebox Home battery sensor (#99756) 2023-09-08 20:44:43 +02:00
Quentame
718f1a6673 Fix Freebox disk free space sensor (#99757)
* Fix Freebox disk free space sensor

* Add initial value assert to check results
2023-09-08 20:44:19 +02:00
Joost Lekkerkerker
c741214ab5 Revert "Bump pyoverkiz to 1.10.1 (#97916)" (#99742) 2023-09-08 19:59:32 +02:00
Jan Bouwhuis
64408cab10 Handle alexa invalid climate temp adjustment (#99740)
* Handle temp adjust when target state not set

* Update homeassistant/components/alexa/errors.py

Co-authored-by: Robert Resch <robert@resch.dev>

* black

---------

Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-08 19:59:30 +02:00
Marc Mueller
8b69f9fda8 Fix tradfri asyncio.wait (#99730) 2023-09-08 19:59:29 +02:00
David Knowles
39669bc788 Fix the Hydrawise status sensor (#99271) 2023-09-08 19:59:28 +02:00
J. Nick Koston
d1ac4c9c46 Switch a few ssdp calls to use get_lower (#99931)
get_lower avoids lower casing already lower-cased strings
2023-09-08 13:59:25 -04:00
jan iversen
be4ea32049 Bump pymodbus v.3.5.1 (#99940) 2023-09-08 19:20:06 +02:00
Jan Bouwhuis
677431ed71 Fix key error MQTT binary_sensor when no name is set (#99943)
Log entitty ID when instead of name
2023-09-08 19:10:17 +02:00
J. Nick Koston
bd1d8675a9 Avoid many hass.is_stopping calls in the discovery helper (#99929)
async_has_matching_flow is more likely to be True than hass.is_stopping

This does not make much difference but it was adding noise to a profile
that I am digging into to look for another issue
2023-09-08 13:09:29 -04:00
Joost Lekkerkerker
9a45e2cf91 Bump pyenphase to v1.11.0 (#99941) 2023-09-08 19:08:32 +02:00
J. Nick Koston
d624bbbc0c Migrate elkm1 to use a dataclass for integration data (#99830)
* Migrate elkm1 to use a dataclass for integration data

* fix unsaved

* slotted

* missing coveragerc

* Revert "missing coveragerc"

This reverts commit 3397b40309.
2023-09-08 13:07:09 -04:00
J. Nick Koston
3d403c9b60 Refactor entity service calls to reduce complexity (#99783)
* Refactor entity service calls to reduce complexity

gets rid of the noqa C901

* Refactor entity service calls to reduce complexity

gets rid of the noqa C901

* short
2023-09-08 13:04:53 -04:00
Bram Kragten
16f7bc7bf8 Update frontend to 20230908.0 (#99939) 2023-09-08 18:59:08 +02:00
Joost Lekkerkerker
38247ae868 Use shorthand attributes in Volumio (#99918) 2023-09-08 17:31:57 +02:00
Joost Lekkerkerker
c6f8766b1e Use shorthand attributes in Zerproc (#99926) 2023-09-08 17:27:18 +02:00
Joost Lekkerkerker
5f6f2c2cab Use shorthand attributes in Wolflink (#99921) 2023-09-08 14:38:09 +02:00
Joost Lekkerkerker
5ddaf52b27 Use shorthand attributes in Wilight (#99920) 2023-09-08 14:29:59 +02:00
Michael Hansen
e69c88a0d2 Use aliases when listing pipeline languages (#99672) 2023-09-08 08:22:08 -04:00
J. Nick Koston
98ff3e233d Fix missing name and identifiers for ELKM1 connected devices (#99828) 2023-09-08 13:32:21 +02:00
J. Nick Koston
8742c550be Upgrade bluetooth deps to fix timeout behavior on py3.11 (#99879) 2023-09-08 13:25:25 +02:00
dependabot[bot]
67de96adfa Bump actions/cache from 3.3.1 to 3.3.2 (#99903) 2023-09-08 13:18:26 +02:00
Ali Yousuf
47a75cc064 Add more options to Islamic Prayer Times (#95156) 2023-09-08 13:07:33 +02:00
Joost Lekkerkerker
0cf32e74d6 Use shorthand attributes in Tp-link (#99888) 2023-09-08 12:36:46 +02:00
Joost Lekkerkerker
b2c3d95911 Use shorthand attributes in UPB (#99892) 2023-09-08 11:33:59 +02:00
Sam Crang
b2b57c5f87 Allow exporting of update domain to Prometheus (#99400) 2023-09-07 20:43:47 -07:00
lymanepp
b76ba002e2 Fix missing dew point and humidity in tomorrowio forecasts (#99793)
* Fix missing dew point and humidity in tomorrowio forecasts

* Add assertion for correct parameters to realtime_and_all_forecasts method
2023-09-07 22:12:18 -04:00
Joost Lekkerkerker
432894a401 Use shorthand attributes in SRP Energy (#99881) 2023-09-08 01:20:22 +02:00
Joost Lekkerkerker
92628ea068 Use shorthand attributes in Starline (#99882) 2023-09-08 01:16:35 +02:00
Joost Lekkerkerker
4e826f1704 Use shorthand attributes in Syncthing (#99883) 2023-09-08 01:16:08 +02:00
Joost Lekkerkerker
9e8a8012df Use shorthand attributes in Syncthru (#99884) 2023-09-08 01:15:58 +02:00
Joost Lekkerkerker
a3d6c6192e Use shorthand attributes in Tado (#99886) 2023-09-08 01:15:49 +02:00
Joost Lekkerkerker
56f05bee91 Use shorthand attributes in Tradfri (#99890) 2023-09-08 01:15:34 +02:00
Joost Lekkerkerker
c2b119bfaf Use shorthand attributes in Tp-link Omada (#99889) 2023-09-08 01:07:15 +02:00
Joost Lekkerkerker
5a66aac330 Use shorthand attributes in Telldus live (#99887) 2023-09-08 01:02:03 +02:00
Simone Chemelli
a82cd48282 Bump aiovodafone to 0.1.0 (#99851)
* bump aiovodafone to 0.1.0

* fix tests
2023-09-08 00:32:15 +02:00
J. Nick Koston
9d5595fd7d Bump zeroconf to 0.102.0 (#99875) 2023-09-07 16:08:53 -05:00
Jan Bouwhuis
cd8426152f Fix NOAA tides warnings (#99856) 2023-09-07 21:49:03 +02:00
mkmer
4ce9c1f304 Add Diagnostic platform to Aladdin Connect (#99682)
* Add diagnostics platform

* Add diagnostic platform

* Add raw data to diagnostics

* Remove config data
bump aioaladdinconnect, use new doors property for diag

* remove unnecessary component config
refactor diag output
2023-09-07 21:27:41 +02:00
jan iversen
77180a73b7 Modbus scale parameter cuts decimals (#99758) 2023-09-07 20:56:00 +02:00
jimmyd-be
1c27a0339d Renson fan (#94495)
* Add fan feature

* Changed order of platform

* Use super()._handle_coordinator_update()

* format file

* Set _attr_has_entity_name

* Cleanup Fan code

* Refresh after setting ventilation speed + translation

* remove unused translation key
2023-09-07 20:37:14 +02:00
G Johansson
0dc8e8dabe Add device class and UoM in Sensibo Number entities (#99861)
* device class and uom number platform

* icons
2023-09-07 20:34:23 +02:00
J. Nick Koston
54bd7c9af0 Bump dbus-fast to 1.95.2 (#99852) 2023-09-07 13:27:29 -05:00
J. Nick Koston
c68d96cf09 Bump zeroconf to 0.99.0 (#99853) 2023-09-07 13:25:29 -05:00
Joost Lekkerkerker
4017473d51 Use str instead of string placeholders in solaredge (#99843) 2023-09-07 20:00:43 +02:00
Joost Lekkerkerker
66d16108be Use shorthand attributes in Rainforest eagle (#99825) 2023-09-07 19:52:12 +02:00
Joost Lekkerkerker
02e077daab Use shorthand attributes in Ring (#99829) 2023-09-07 19:51:35 +02:00
Joost Lekkerkerker
a00cbe2677 Move shorthand attributes out of Snooz constructor (#99842) 2023-09-07 19:49:18 +02:00
Joost Lekkerkerker
dcd00546ba Use shorthand attributes in Sonarr (#99844) 2023-09-07 19:47:56 +02:00
puddly
e8c4ddf05c Bump ZHA dependencies (#99855) 2023-09-07 19:22:24 +02:00
Joost Lekkerkerker
94aec3e590 Use shorthand attributes in Opentherm gateway (#99630) 2023-09-07 18:30:58 +02:00
Joost Lekkerkerker
c567a2c3d4 Move unit of temperature to descriptions in Sensibo (#99835) 2023-09-07 17:36:07 +02:00
Quentame
c3e14d0514 Fix Freebox Home battery sensor (#99756) 2023-09-07 17:28:50 +02:00
Joost Lekkerkerker
69f6a115b6 Move shorthand attributes out of constructor in Sensibo (#99834)
Use shorthand attributes in Sensibo
2023-09-07 17:28:13 +02:00
Joost Lekkerkerker
73651dbffd Use shorthand attributes in Snapcast (#99840) 2023-09-07 16:37:30 +02:00
Joost Lekkerkerker
d9b48b03f7 Use shorthand attributes in Rachio (#99823) 2023-09-07 09:20:57 -05:00
Joost Lekkerkerker
2a3ebbc26c Use shorthand attributes in SharkIQ (#99836) 2023-09-07 16:08:44 +02:00
Joost Lekkerkerker
114b5bd1f0 Use shorthand attributes in Roomba (#99831) 2023-09-07 15:56:40 +02:00
Joost Lekkerkerker
1fe17b5bed Use shorthand attributes in Sense (#99833) 2023-09-07 15:56:21 +02:00
Joost Lekkerkerker
526b587170 Remove unused variable from rainbird (#99824) 2023-09-07 15:32:03 +02:00
Jan Rieger
0d6f202eb3 Change AVM FRITZ!Box Call monitor sensor into an enum (#99762)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2023-09-07 15:26:57 +02:00
Marc Mueller
c9a1836d45 Update coverage to 7.3.1 (#99805) 2023-09-07 14:54:56 +02:00
Joost Lekkerkerker
40a3d97230 Use shorthand attributes in Plex (#99769)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-07 13:55:16 +02:00
Joost Lekkerkerker
8a4cd913b8 Use shorthand attributes in Hisense (#99355) 2023-09-07 13:53:44 +02:00
Erik Montnemery
368acaf6fd Improve error handling in /api/states POST (#99810) 2023-09-07 13:33:38 +02:00
Erik Montnemery
eee5705458 Fix typo in TrackTemplateResultInfo (#99809) 2023-09-07 13:00:26 +02:00
Joost Lekkerkerker
306c7cd9a9 Use correct config entry id in Livisi (#99812) 2023-09-07 12:45:47 +02:00
Pawel
dfee5d06a6 Add support for more busy codes for Epson (#99771)
add support for more busy codes
2023-09-07 12:45:31 +02:00
elmurato
7c3605c82e Use config entry ID as unique ID and remove dependency to getmac in Minecraft Server (#97837)
* Use config entry ID as unique ID

* Add entry migration to v2 and and remove helper module

* Remove unneeded strings

* Add asserts for config, device and entity entries and improve comments

* Add debug log for config entry migration

* Reset config entry unique ID and use config entry ID instead

* Remove unnecessary unique ID debug log

* Revert usage of constants for tranlation keys and use dash as delimiter for entity unique id suffix

* Revert "Revert usage of constants for tranlation keys and use dash as delimiter for entity unique id suffix"

This reverts commit 07de334606054097e914404da04950e952bef6d2.

* Remove unused logger in entity module
2023-09-07 12:22:46 +02:00
swamplynx
e8dfa7e2c8 Bump pylutron-caseta to v0.18.2 (#99789)
* Bump pylutron-caseta to v0.18.2

Minor bump to pylutron-caseta requirement to support wall mounted occupancy sensor device type in latest RA3 firmware.

* Update requirements_all.txt for pylutron-caseta 0.18.2

* Update requirements_test_all.txt for pylutron-caseta 0.18.2
2023-09-07 12:17:38 +02:00
J. Nick Koston
f1ae523ff2 Bump pyenphase to 1.9.3 (#99787)
* Bump pyenphase to 1.9.2

changelog: https://github.com/pyenphase/pyenphase/compare/v1.9.1...v1.9.2

Handle the case where the user has manually specified a password for
local auth with firmware < 7.x but its incorrect.

The integration previously accepted any wrong password and would
reduce functionality down to what works without a password. We now
preserve that behavior to avoid breaking existing installs.

* bump
2023-09-07 12:17:04 +02:00
Rami Mosleh
0cc2c27115 Add strict typing to islamic prayer times (#99585)
* Add strict typing to islamic prayer times

* fix mypy errors
2023-09-07 12:16:31 +02:00
Erik Montnemery
e5210c5823 Always set severity level flag on render_template error events (#99804) 2023-09-07 12:00:19 +02:00
Arda ŞEREMET
9351e79dcb Bump ProgettiHWSW to 0.1.3 (#92668)
* Update manifest.json

* Update requirements_test_all.txt

* Update requirements_all.txt

* Updated dependencies file.

* Update manifest.json with correct naming convention.

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

* Updated requirements.

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-07 10:53:59 +02:00
Ståle Storø Hauknes
d2f9270bc9 Add my self as codeowner for airthings_ble (#99799)
Update airthings_ble codeowner
2023-09-07 10:36:49 +02:00
Quentame
1a22ab77e1 Fix Freebox disk free space sensor (#99757)
* Fix Freebox disk free space sensor

* Add initial value assert to check results
2023-09-07 10:28:08 +02:00
Maciej Bieniek
e1f4a3fa9f Add energy meter sensors for Shelly Pro EM (#99747)
* Add support for Pro EM

* Improve get_rpc_channel_name()

* Revert an unintended change

* Add tests
2023-09-07 06:59:04 +02:00
J. Nick Koston
0c7e0f5cd9 Bump sense_energy to 0.12.1 (#99763) 2023-09-06 20:01:22 -05:00
Aaron Bach
2565f153cd Bump aiorecollect to 2023.09.0 (#99780) 2023-09-06 17:26:14 -06:00
Joost Lekkerkerker
3afdecd51f Use shorthand attributes in Plum (#99770)
Use shorthand attributes in Plum shorthand
2023-09-06 23:37:31 +02:00
Joost Lekkerkerker
61b02e9c66 Use shorthand attributes in Progetti (#99772)
Use shorthand attributes in Progetti shorthand
2023-09-06 23:34:39 +02:00
Joost Lekkerkerker
b0e46f425f Remove deprecated entities from OpenTherm Gateway (#99712) 2023-09-06 21:50:48 +02:00
J. Nick Koston
533350b94a Bump dbus-fast to 1.95.0 (#99749) 2023-09-06 13:21:21 -05:00
J. Nick Koston
fdf902e053 Bump zeroconf to 0.98.0 (#99748) 2023-09-06 12:37:42 -05:00
Jan Bouwhuis
7c7456df99 Handle alexa invalid climate temp adjustment (#99740)
* Handle temp adjust when target state not set

* Update homeassistant/components/alexa/errors.py

Co-authored-by: Robert Resch <robert@resch.dev>

* black

---------

Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-06 18:54:16 +02:00
Jan-Philipp Benecke
7a6c8767b3 Improve typing of trend component (#99719)
* Some typing in trend component

* Add missing type hint

* Enable strict typing on trend
2023-09-06 18:51:38 +02:00
Tomáš Holý
9bc07f50f9 Add additional fields for 3-phase UPS to nut (#98625)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-06 11:39:33 -05:00
mkmer
54d92b649b Raise error on open/close failure in Aladdin Connect (#99746)
Raise error on open/close failure
2023-09-06 18:33:58 +02:00
James Smith
f24c4ceab6 Enable strict typing for Climate component (#99301)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-06 17:55:41 +02:00
Marc Mueller
8bfdc5d3d9 Update pytest-aiohttp to 1.0.5 (#99744) 2023-09-06 17:37:11 +02:00
Joost Lekkerkerker
eab76fc621 Revert "Bump pyoverkiz to 1.10.1 (#97916)" (#99742) 2023-09-06 17:16:40 +02:00
Bram Kragten
f70469d6ef 2023.9.0 (#99741) 2023-09-06 17:16:35 +02:00
Marc Mueller
ab3bc1b74b Improve blink config_flow typing (#99579) 2023-09-06 17:00:16 +02:00
Marc Mueller
2628a86864 Update pre-commit to 3.4.0 (#99737) 2023-09-06 16:58:57 +02:00
Marc Mueller
d8035ddf47 Fix tradfri asyncio.wait (#99730) 2023-09-06 16:57:13 +02:00
Marc Mueller
5d54660802 Fix asyncio.wait typing (#99726) 2023-09-06 16:53:41 +02:00
David Knowles
0b95e4ac17 Fix the Hydrawise status sensor (#99271) 2023-09-06 16:51:27 +02:00
Bram Kragten
d369a70092 Bumped version to 2023.9.0 2023-09-06 16:09:56 +02:00
Bram Kragten
02fc735c08 Update frontend to 20230906.1 (#99733) 2023-09-06 16:09:06 +02:00
Erik Montnemery
b5d9014bbd Correct state attributes in group helper preview (#99723) 2023-09-06 16:09:05 +02:00
Erik Montnemery
d99e5e0c4f Correct state attributes in template helper preview (#99722) 2023-09-06 16:09:03 +02:00
Erik Montnemery
6f6306b39b Don't allow changing device class in template binary sensor options (#99720) 2023-09-06 16:09:02 +02:00
Erik Montnemery
067f946129 Send template render errors to template helper preview (#99716) 2023-09-06 16:09:01 +02:00
starkillerOG
107ca83d42 Reolink onvif not supported fix (#99714)
* only subscibe to ONVIF if supported

* Catch NotSupportedError when ONVIF is not supported

* fix styling
2023-09-06 16:09:00 +02:00
Erik Montnemery
c9a6ea94a7 Send template render errors to template helper preview (#99716) 2023-09-06 16:07:05 +02:00
Erik Montnemery
e1ea53e72f Correct state attributes in template helper preview (#99722) 2023-09-06 16:06:33 +02:00
Erik Montnemery
c376447ccd Don't allow changing device class in template binary sensor options (#99720) 2023-09-06 15:59:30 +02:00
Erik Montnemery
97710dc5b7 Correct state attributes in group helper preview (#99723) 2023-09-06 15:59:03 +02:00
David Knowles
bb765449eb Add binary_sensor to Schlage (#99637)
* Add binary_sensor to Schlage

* Apply suggestions from code review

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-06 15:03:54 +02:00
Bram Kragten
9700888df1 Update frontend to 20230906.1 (#99733) 2023-09-06 15:00:26 +02:00
starkillerOG
0037385336 Reolink onvif not supported fix (#99714)
* only subscibe to ONVIF if supported

* Catch NotSupportedError when ONVIF is not supported

* fix styling
2023-09-06 14:46:24 +02:00
Jan Bouwhuis
397952ceea Postpone Imap_email_content removal (#99721) 2023-09-06 12:45:46 +02:00
Jan Bouwhuis
b815ea1332 Revert "Remove imap_email_content integration" (#99713) 2023-09-06 11:54:18 +02:00
Marc Mueller
274507b5c9 Fix pylint plugin test DeprecationWarning (#99711) 2023-09-06 11:35:57 +02:00
J. Nick Koston
034fabe188 Use loop time to set context (#99701)
* Use loop time to set context

loop time is faster than utcnow, and since its only used internally it can
be switched without a breaking change

* fix mocking
2023-09-06 11:04:49 +02:00
Bram Kragten
98896834cd Bump version to 2023.9.0b6 2023-09-06 11:00:01 +02:00
Bram Kragten
800ff489b0 Update frontend to 20230906.0 (#99715) 2023-09-06 10:56:53 +02:00
Erik Montnemery
7b7fd35af2 Fix unit conversion for gas cost sensor (#99708) 2023-09-06 10:56:53 +02:00
J. Nick Koston
f9ee18352d Bump aioesphomeapi to 16.0.5 (#99698)
changelog: https://github.com/esphome/aioesphomeapi/compare/v16.0.4...v16.0.5

fixes `RuntimeError: set changed size during iteration`

https://github.com/esphome/aioesphomeapi/pull/538

some added debug logging which may help with https://github.com/home-assistant/core/issues/98221
2023-09-06 10:56:52 +02:00
Robert Svensson
e486ad735d Bump aiounifi to v61 (#99686)
* Bump aiounifi to v61

* Alter a test to cover the upstream change
2023-09-06 10:56:51 +02:00
Daniel Gangl
cea1109e25 Bump zamg to 0.3.0 (#99685) 2023-09-06 10:56:50 +02:00
c0ffeeca7
71afa0ff43 Yellow LED controls: rename LEDs (#99710)
- reorder, to reflect placement on board, left to right (yellow, green, red)
2023-09-06 10:46:52 +02:00
starkillerOG
96e932dad6 Bump reolink_aio to 0.7.9 (#99680) 2023-09-06 10:43:30 +02:00
puddly
aa32b658b2 Fix ZHA startup creating entities with non-unique IDs (#99679)
* Make the ZHAGateway initialization restartable so entities are unique

* Add a unit test
2023-09-06 10:43:29 +02:00
Erik Montnemery
0cbcacbbf5 Include template listener info in template preview (#99669) 2023-09-06 10:43:28 +02:00
Erik Montnemery
9d87e8d02b Allow specifying a custom log function for template render (#99572)
* Allow specifying a custom log function for template render

* Bypass template cache when reporting errors + fix tests

* Send errors as events

* Fix logic for creating new TemplateEnvironment

* Add strict mode back

* Only send error events if report_errors is True

* Force test of websocket_api only

* Debug test

* Run pytest with higher verbosity

* Timeout after 1 minute, enable syslog output

* Adjust timeout

* Add debug logs

* Fix unsafe call to WebSocketHandler._send_message

* Remove debug code

* Improve test coverage

* Revert accidental change

* Include severity in error events

* Remove redundant information from error events
2023-09-06 10:43:27 +02:00
Bram Kragten
00ada69e0b Update frontend to 20230906.0 (#99715) 2023-09-06 10:40:05 +02:00
Erik Montnemery
687e69f7c3 Fix unit conversion for gas cost sensor (#99708) 2023-09-06 10:35:04 +02:00
Erik Montnemery
48f7924e9e Allow specifying a custom log function for template render (#99572)
* Allow specifying a custom log function for template render

* Bypass template cache when reporting errors + fix tests

* Send errors as events

* Fix logic for creating new TemplateEnvironment

* Add strict mode back

* Only send error events if report_errors is True

* Force test of websocket_api only

* Debug test

* Run pytest with higher verbosity

* Timeout after 1 minute, enable syslog output

* Adjust timeout

* Add debug logs

* Fix unsafe call to WebSocketHandler._send_message

* Remove debug code

* Improve test coverage

* Revert accidental change

* Include severity in error events

* Remove redundant information from error events
2023-09-06 10:03:35 +02:00
Jan-Philipp Benecke
f41b045244 Use shorthand attributes in Trend (#99695) 2023-09-06 09:55:25 +02:00
Erik Montnemery
cdca4591a4 Include template listener info in template preview (#99669) 2023-09-06 09:49:42 +02:00
Jan-Philipp Benecke
b28fda2433 Move template coordinator to its own file (#99419)
* Move template update coordinator to its own file

* Add coordinator.py to .coveragerc

* Remove coordinator.py to .coveragerc

* Apply suggestions from code review

* Update homeassistant/components/template/coordinator.py

* Copy over fixes from upstream

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-09-06 08:54:25 +02:00
tronikos
d4ef570b0a Add a comment why state_class=total (#99703) 2023-09-06 08:43:46 +02:00
Rami Mosleh
d523734db1 Display channel number in Bravia TV if title is not available (#99567)
Display channel number if title is not available
2023-09-06 08:35:34 +02:00
Maciej Bieniek
d9a1ebafdd Show OTA update progress for Shelly gen2 devices (#99534)
* Show OTA update progress

* Use an event listener instead of a dispatcher

* Add tests

* Fix name

* Improve tests coverage

* Fix subscribe/unsubscribe logic

* Use async_on_remove()
2023-09-06 08:17:45 +02:00
Joost Lekkerkerker
4f05e61072 Add codeowner for Withings (#99681) 2023-09-05 21:14:56 -05:00
J. Nick Koston
da45f6cbb0 Bump aioesphomeapi to 16.0.5 (#99698)
changelog: https://github.com/esphome/aioesphomeapi/compare/v16.0.4...v16.0.5

fixes `RuntimeError: set changed size during iteration`

https://github.com/esphome/aioesphomeapi/pull/538

some added debug logging which may help with https://github.com/home-assistant/core/issues/98221
2023-09-05 20:42:50 -05:00
J. Nick Koston
e22b03d6b3 Switch homekit config flow sorted to use itemgetter (#99658)
Avoids unnecessary lambda
2023-09-05 21:18:46 -04:00
J. Nick Koston
a2dae60170 Refactor dispatcher to reduce run time and memory overhead (#99676)
* Fix memory leak in dispatcher removal

When we removed the last job/callable from the dict for the
signal we did not remove the dict for the signal which meant
it leaked

* comment

* cleanup a bit more
2023-09-05 21:18:27 -04:00
J. Nick Koston
b69cc29a78 Switch lambda to attrgetter in zha (#99660) 2023-09-05 22:45:45 +02:00
J. Nick Koston
a1359c1ce3 Replace lambda in script/gen_requirements_all.py with str.lower (#99665) 2023-09-05 22:44:59 +02:00
Jan Bouwhuis
c64d173fcb Remove imap_email_content integration (#99484) 2023-09-05 21:50:51 +02:00
starkillerOG
3f3d8b1e1e Bump reolink_aio to 0.7.9 (#99680) 2023-09-05 21:21:27 +02:00
Daniel Gangl
2cf25ee9ec Bump zamg to 0.3.0 (#99685) 2023-09-05 21:18:06 +02:00
Daniel Hjelseth Høyer
a9c41f76e3 Bump millheater to 0.11.2 (#99683)
Update Mill lib

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2023-09-05 21:14:39 +02:00
Robert Svensson
b0e40d95ad Bump aiounifi to v61 (#99686)
* Bump aiounifi to v61

* Alter a test to cover the upstream change
2023-09-05 21:13:28 +02:00
puddly
7ab1913ba4 Fix ZHA startup creating entities with non-unique IDs (#99679)
* Make the ZHAGateway initialization restartable so entities are unique

* Add a unit test
2023-09-05 20:30:28 +02:00
Bram Kragten
6b8027019b Bump version to 2023.9.0b5 2023-09-05 20:25:02 +02:00
Bram Kragten
fed84ebc40 Update frontend to 20230905.0 (#99677) 2023-09-05 20:24:51 +02:00
Raman Gupta
bd0fd9db77 Bump zwave-js-server-python to 0.51.1 (#99652)
* Bump zwave-js-server-python to 0.51.1

* Update test

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-05 20:24:50 +02:00
J. Nick Koston
5d1fe0eb00 Fix mobile app dispatcher performance (#99647)
Fix mobile app thundering heard

The mobile_app would setup a dispatcher to listener for updates on
every entity and reject the ones that were not for the unique id
that it was intrested in.

Instead we now register for a signal per unique id since we were
previously generating O(entities*sensors*devices) callbacks which
was causing the event loop to stall when there were a large
number of mobile app users.
2023-09-05 20:24:49 +02:00
itpeters
9e03f8a8d6 Fix long press event for matter generic switch (#99645) 2023-09-05 20:24:48 +02:00
Álvaro Fernández Rojas
c040672cab Update aioairzone to v0.6.8 (#99644)
* Update aioairzone to v0.6.8

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Trigger CI

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-09-05 20:24:47 +02:00
G Johansson
f0cf539e15 Fix missing unique id in SQL (#99641) 2023-09-05 20:24:46 +02:00
G Johansson
2a7c12013f Fix not stripping no device class in template helper binary sensor (#99640)
Strip none template helper binary sensor
2023-09-05 20:24:45 +02:00
Erik Montnemery
4c0e4fe745 Small cleanup of TemplateEnvironment (#99571)
* Small cleanup of TemplateEnvironment

* Fix typo
2023-09-05 20:24:44 +02:00
Bram Kragten
7fbb1c0fb6 Update frontend to 20230905.0 (#99677) 2023-09-05 20:12:40 +02:00
Joost Lekkerkerker
5ccf866e22 Use shorthand attributes for Plaato (#99634)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-05 19:01:51 +02:00
J. Nick Koston
e9062bb1b3 Replace lambda with attrgetter in homekit_controller (#99666) 2023-09-05 10:36:43 -05:00
J. Nick Koston
abb0537928 Replace lambda with itemgetter in script/gen_requirements_all.py (#99661) 2023-09-05 10:36:01 -05:00
J. Nick Koston
a04c61e77b Replace lambda with attrgetter in device_tracker device_trigger (#99663) 2023-09-05 16:41:35 +02:00
J. Nick Koston
035fea3ee0 Replace lambda with attrgetter in hassfest (#99662) 2023-09-05 16:40:25 +02:00
Joost Lekkerkerker
2c45d43e7b Use shorthand attributes in Neato (#99605)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-05 16:33:46 +02:00
Raman Gupta
5afba6327c Bump zwave-js-server-python to 0.51.1 (#99652)
* Bump zwave-js-server-python to 0.51.1

* Update test

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-05 09:58:32 -04:00
Joost Lekkerkerker
c6bdc380b6 Use shorthand attributes in Ondilo ico (#99627) 2023-09-05 15:40:43 +02:00
Joost Lekkerkerker
3c82045289 Use shorthand attributes in Omnilogic (#99626) 2023-09-05 15:40:11 +02:00
Joost Lekkerkerker
58af0ab0cd Use shorthand attributes in NZBGet (#99622) 2023-09-05 15:37:00 +02:00
Joost Lekkerkerker
0ae12ad08f Use shorthand attributes in Logi circle (#99592) 2023-09-05 15:27:38 +02:00
Joost Lekkerkerker
1f648feaef Use shorthand attributes in Kostal Plenticore (#99581) 2023-09-05 15:26:23 +02:00
Joost Lekkerkerker
447a9f4aad Use shorthand attributes in Konnected (#99580) 2023-09-05 15:25:00 +02:00
Joost Lekkerkerker
c49f086790 Use shorthand attributes in Kodi (#99578) 2023-09-05 15:22:52 +02:00
Joost Lekkerkerker
d5ad01ffbe Use shorthand attributes in Openhome (#99629) 2023-09-05 14:57:26 +02:00
itpeters
582eeea082 Fix long press event for matter generic switch (#99645) 2023-09-05 13:10:14 +02:00
Álvaro Fernández Rojas
c77a0a8caa Update aioairzone to v0.6.8 (#99644)
* Update aioairzone to v0.6.8

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Trigger CI

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-09-05 12:42:19 +02:00
Joost Lekkerkerker
f13e7706ed Use shorthand attributes in Nuheat (#99618) 2023-09-05 11:54:53 +02:00
dependabot[bot]
2c3a4b3497 Bump actions/checkout from 3.6.0 to 4.0.0 (#99651) 2023-09-05 08:57:09 +02:00
Joost Lekkerkerker
49bd7e6251 Use shorthand attributes for Picnic (#99633) 2023-09-04 20:59:44 -04:00
J. Nick Koston
fed1cab847 Fix mobile app dispatcher performance (#99647)
Fix mobile app thundering heard

The mobile_app would setup a dispatcher to listener for updates on
every entity and reject the ones that were not for the unique id
that it was intrested in.

Instead we now register for a signal per unique id since we were
previously generating O(entities*sensors*devices) callbacks which
was causing the event loop to stall when there were a large
number of mobile app users.
2023-09-04 20:56:34 -04:00
J. Nick Koston
ff2e0c570b Improve performance of google assistant supported checks (#99454)
* Improve performance of google assistant supported checks

* tweak

* tweak

* split function

* tweak
2023-09-04 20:53:59 -04:00
J. Nick Koston
63273a307a Fix Bluetooth passive update processor dispatching updates to unchanged entities (#99527)
* Fix passive update processor dispatching updates to unchanged entities

* adjust tests

* coverage

* fix

* Update homeassistant/components/bluetooth/update_coordinator.py
2023-09-04 20:42:05 -04:00
Martin Hjelmare
0b383067ef Move non legacy stt models out from legacy module (#99582) 2023-09-04 16:51:57 -04:00
J. Nick Koston
d2a52230ff Speed up responding to states being polled via API (#99621)
* Speed up responding to states being polled via API

Switch to using `as_dict_json` to avoid serializing states over and over when the
states api is polled since the mobile app is already building the cache as it also
polls the states via the websocket_api

* Speed up responding to states being polled via API

Switch to using `as_dict_json` to avoid serializing states over and over when the
states api is polled since the mobile app is already building the cache as it also
polls the states via the websocket_api

* fix json

* cover
2023-09-04 16:51:19 -04:00
G Johansson
47c20495bd Fix not stripping no device class in template helper binary sensor (#99640)
Strip none template helper binary sensor
2023-09-04 22:46:19 +02:00
Joost Lekkerkerker
216a174cba Move variables out of constructor in nightscout (#99612)
* Move variables out of constructor in nightscout

* Update homeassistant/components/nightscout/sensor.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-09-04 22:35:58 +02:00
G Johansson
b8f35fb577 Fix missing unique id in SQL (#99641) 2023-09-04 22:31:53 +02:00
Erik Montnemery
de73cafc8b Small cleanup of TemplateEnvironment (#99571)
* Small cleanup of TemplateEnvironment

* Fix typo
2023-09-04 22:19:40 +02:00
Joost Lekkerkerker
bc1575a477 Move variables out of constructor in Nobo hub (#99617) 2023-09-04 22:18:36 +02:00
J. Nick Koston
cab9c97598 Bump aioesphomeapi to 16.0.4 (#99541) 2023-09-04 21:06:13 +02:00
Joakim Plate
ba5822bed4 Bump gardena_bluetooth to 1.4.0 (#99530) 2023-09-04 21:06:11 +02:00
Bram Kragten
4fcb0a840a Bump version to 2023.9.0b4 2023-09-04 20:50:17 +02:00
Bram Kragten
6b988a99d5 Update frontend to 20230904.0 (#99636) 2023-09-04 20:49:43 +02:00
Erik Montnemery
0520cadfa6 Revert "Deprecate timer start optional duration parameter" (#99613)
Revert "Deprecate timer start optional duration parameter (#93471)"

This reverts commit 2ce5b08fc3.
2023-09-04 20:49:42 +02:00
Joost Lekkerkerker
89e280e136 Remove unneeded name property from Logi Circle (#99604) 2023-09-04 20:49:41 +02:00
Joost Lekkerkerker
30c6565205 Bump pyenphase to 1.9.1 (#99574) 2023-09-04 20:49:40 +02:00
Erik Montnemery
37f8f91171 Small cleanup of WS command render_template (#99562) 2023-09-04 20:49:40 +02:00
puddly
a7efeb2c87 Bump ZHA dependencies (#99561) 2023-09-04 20:49:39 +02:00
Robert Svensson
5c42ea57b3 Bump aiounifi to v60 (#99548) 2023-09-04 20:49:38 +02:00
G Johansson
c791ddc937 Fix loading filesize coordinator from wrong place (#99547)
* Fix loading filesize coordinator from wrong place

* aboslute in executor

* combine into executor
2023-09-04 20:49:37 +02:00
Jc2k
8ccd2b6457 Update bluetooth-data-tools to 1.11.0 (#99485) 2023-09-04 20:48:55 +02:00
J. Nick Koston
a60e23caf2 Bump bleak-retry-connector to 3.1.2 (#99540) 2023-09-04 20:45:32 +02:00
jan iversen
c677dae9c1 Modbus switch, allow restore "unknown" (#99533) 2023-09-04 20:45:32 +02:00
J. Nick Koston
453c5f90f8 Bump bleak to 0.21.0 (#99520)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-04 20:45:31 +02:00
J. Nick Koston
70b460f52b Bump aiohomekit to 3.0.2 (#99514) 2023-09-04 20:45:29 +02:00
J. Nick Koston
2bc08d1fcc Fix module check in _async_get_flow_handler (#99509)
We should have been checking for the module in hass.data[DATA_COMPONENTS]
and not hass.config.components as the check was ineffective if there were
no existing integrations instances for the domain which is the case for
discovery or when the integration is ignored
2023-09-04 20:45:29 +02:00
Erik Montnemery
423e8fbde3 Validate state in template helper preview (#99455)
* Validate state in template helper preview

* Deduplicate state validation
2023-09-04 20:45:28 +02:00
Erik Montnemery
e5fd6961a8 Set state of entity with invalid state to unknown (#99452)
* Set state of entity with invalid state to unknown

* Add test

* Apply suggestions from code review

Co-authored-by: Robert Resch <robert@resch.dev>

* Update test_entity.py

---------

Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-04 20:45:27 +02:00
Mike O'Driscoll
bdc39e1d52 Fix recollect_waste month time boundary issue (#99429) 2023-09-04 20:45:26 +02:00
Tiit Rätsep
852589f025 Fix battery reading in SOMA API (#99403)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-04 20:45:25 +02:00
Erik Montnemery
2a5f8ee4a7 Don't set assumed_state in fan groups (#99399) 2023-09-04 20:45:24 +02:00
Erik Montnemery
1c2c13c938 Don't set assumed_state in cover groups (#99391) 2023-09-04 20:45:23 +02:00
Russell Cloran
e0594bffa1 Enumerate available states in Prometheus startup (#97993) 2023-09-04 20:45:22 +02:00
Michael
4524b38b80 Mark AVM Fritz!Smarthome as Gold integration (#97086)
set quality scale to gold
2023-09-04 20:45:22 +02:00
Allen Porter
269bcac982 Extend template entities with a script section (#96175)
* Extend template entities with a script section

This allows making a trigger entity that triggers a few times a day,
and allows collecting data from a service resopnse which can be
fed into a template entity.

The current alternatives are to publish and subscribe to events or to
store data in input entities.

* Make variables set in actions accessible to templates

* Format code

---------

Co-authored-by: Erik <erik@montnemery.com>
2023-09-04 20:45:21 +02:00
Bram Kragten
c1cfded355 Update frontend to 20230904.0 (#99636) 2023-09-04 14:44:20 -04:00
Michael
a77f1cbd9e Mark AVM Fritz!Smarthome as Gold integration (#97086)
set quality scale to gold
2023-09-04 14:23:46 -04:00
J. Nick Koston
e5ebba0753 Fix module check in _async_get_flow_handler (#99509)
We should have been checking for the module in hass.data[DATA_COMPONENTS]
and not hass.config.components as the check was ineffective if there were
no existing integrations instances for the domain which is the case for
discovery or when the integration is ignored
2023-09-04 14:19:10 -04:00
Erik Montnemery
7e36da4cc0 Small cleanup of WS command render_template (#99562) 2023-09-04 14:17:30 -04:00
Erik Montnemery
26fd36dc4c Revert "Deprecate timer start optional duration parameter" (#99613)
Revert "Deprecate timer start optional duration parameter (#93471)"

This reverts commit 2ce5b08fc3.
2023-09-04 20:10:16 +02:00
David Knowles
e57ed26896 Bump pyschlage to 2023.9.0 (#99624) 2023-09-04 19:51:33 +02:00
Joost Lekkerkerker
4812b21ffd Remove slugify from tomorrowio unique id (#99006) 2023-09-04 19:28:44 +02:00
Joost Lekkerkerker
cb5d4ee6fa Use shorthand attributes in Octoprint (#99623) 2023-09-04 19:00:19 +02:00
Joost Lekkerkerker
2391087836 Use shorthand attributes in Nest (#99606) 2023-09-04 09:50:33 -07:00
Joost Lekkerkerker
22e90a5755 Remove default state from Nibe (#99611)
Remove start state
2023-09-04 17:53:33 +02:00
Rami Mosleh
f2e0ff4f0f Bump simplepush api to 2.2.3 (#99599) 2023-09-04 16:24:20 +02:00
Duco Sebel
aa943b7103 Bumb python-homewizard-energy to 2.1.0 (#99598) 2023-09-04 16:21:55 +02:00
Joost Lekkerkerker
29664d04d0 Use shorthand attributes in Mutesync (#99600) 2023-09-04 15:31:33 +02:00
Joost Lekkerkerker
799d0e591c Remove unneeded name property from Logi Circle (#99604) 2023-09-04 15:29:30 +02:00
puddly
c225ee89d6 Bump ZHA dependencies (#99561) 2023-09-04 09:26:14 -04:00
Joost Lekkerkerker
8dc05894a8 Use shorthand attributes in Nanoleaf (#99601) 2023-09-04 15:18:48 +02:00
Joost Lekkerkerker
f1bb7c25db Use shorthand attributes in Motion eye (#99596) 2023-09-04 15:18:22 +02:00
Joost Lekkerkerker
cab0bde37b Use shorthand attributes in Lyric (#99593) 2023-09-04 15:05:33 +02:00
Rami Mosleh
3b6811dab6 Use CONF_SALT correctly in config_flow validation (#99597) 2023-09-04 14:59:18 +02:00
Erik Montnemery
7643820e59 Add loader.async_get_loaded_integration (#99440)
* Add loader.async_get_loaded_integration

* Decorate async_get_loaded_integration with @callback
2023-09-04 14:12:33 +02:00
Erik Montnemery
7c595ee2da Validate state in template helper preview (#99455)
* Validate state in template helper preview

* Deduplicate state validation
2023-09-04 14:10:43 +02:00
Erik Montnemery
709ce7e0af Set state of entity with invalid state to unknown (#99452)
* Set state of entity with invalid state to unknown

* Add test

* Apply suggestions from code review

Co-authored-by: Robert Resch <robert@resch.dev>

* Update test_entity.py

---------

Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-04 14:09:51 +02:00
Erik Montnemery
6223af1899 Don't set assumed_state in fan groups (#99399) 2023-09-04 14:08:50 +02:00
Erik Montnemery
f3d8a0eaaf Don't set assumed_state in cover groups (#99391) 2023-09-04 14:08:38 +02:00
Joost Lekkerkerker
d5301fba90 Use shorthand attributes in Keenetic (#99577) 2023-09-04 13:50:05 +02:00
Joost Lekkerkerker
6194f7faea Bump pyenphase to 1.9.1 (#99574) 2023-09-04 07:39:24 -04:00
Joost Lekkerkerker
cf2d3674b9 Use shorthand attributes in Kulersky (#99583) 2023-09-04 13:29:56 +02:00
Joost Lekkerkerker
8ea3b877f6 Use shorthand attributes in Juicenet (#99575) 2023-09-04 13:21:30 +02:00
Joost Lekkerkerker
890eed1121 Use shorthand attributes in LCN (#99587) 2023-09-04 13:18:55 +02:00
Joost Lekkerkerker
051e9e7498 Use shorthand attributes in Laundrify (#99586) 2023-09-04 13:15:02 +02:00
Jan-Philipp Benecke
fa0b61e96a Move london underground coordinator to its own file (#99550) 2023-09-04 11:07:08 +02:00
Tiit Rätsep
b9536732bc Fix battery reading in SOMA API (#99403)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-04 10:03:58 +02:00
J. Nick Koston
de1de926a9 Bump zeroconf to 0.97.0 (#99554)
changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.96.0...0.97.0
2023-09-04 10:52:21 +03:00
Russell Cloran
9144ef7ed8 Enumerate available states in Prometheus startup (#97993) 2023-09-04 09:30:56 +02:00
Joost Lekkerkerker
69117cb8e3 Use shorthand attributes for DLNA dmr (#99236) 2023-09-04 09:23:33 +02:00
Joost Lekkerkerker
13ebb68b84 Use shorthand attributes in Home connect (#99385)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-09-04 09:15:25 +02:00
Joost Lekkerkerker
f4f98010f9 Remove unused attributes from Econet (#99242) 2023-09-04 09:15:01 +02:00
Joost Lekkerkerker
f545389549 Move static shorthand devolo attributes outside of constructor (#99234)
Co-authored-by: Guido Schmitz <Shutgun@users.noreply.github.com>
2023-09-04 09:08:32 +02:00
Rami Mosleh
8d3828ae54 Add strict typing to glances (#99537) 2023-09-04 09:07:15 +02:00
Joost Lekkerkerker
1dc724274e Use shorthand attributes for Heos (#99344) 2023-09-04 09:05:59 +02:00
G Johansson
9d6cab8fe6 Fix loading filesize coordinator from wrong place (#99547)
* Fix loading filesize coordinator from wrong place

* aboslute in executor

* combine into executor
2023-09-04 07:33:46 +02:00
Marc Mueller
735b5cf1a0 Fix sql test warning (#99556) 2023-09-03 19:58:13 -05:00
Marc Mueller
115518cab9 Fix tolo test warning (#99555) 2023-09-03 19:58:01 -05:00
J. Nick Koston
377d9f6687 Bump zeroconf to 0.96.0 (#99549) 2023-09-03 17:06:21 -05:00
Allen Porter
8afab4845a Remove nest legacy service descriptions and translations (#99510) 2023-09-03 13:52:03 -07:00
Robert Svensson
f52ba7042d Bump aiounifi to v60 (#99548) 2023-09-03 21:31:25 +02:00
jan iversen
f85a3861f2 Make validator for modbus table controlled (#99092) 2023-09-03 21:04:58 +02:00
J. Nick Koston
7931d74938 Make bond BPUP callback a HassJob (#99470) 2023-09-03 12:39:49 -05:00
Rami Mosleh
ca44242095 Allow glances entries with same IP but different ports (#99536) 2023-09-03 19:22:59 +02:00
jan iversen
d19f617c25 Modbus switch, allow restore "unknown" (#99533) 2023-09-03 17:48:25 +02:00
Allen Porter
c938b9e7a3 Rename nest test_sensor_sdm.py to test_sensor.py (#99512) 2023-09-03 10:36:20 -05:00
jan iversen
c94d4f501b Read modbus data before scan_interval (#99243)
Read before scan_interval.
2023-09-03 17:13:49 +02:00
Mike O'Driscoll
c297eecb68 Fix recollect_waste month time boundary issue (#99429) 2023-09-03 10:08:17 -05:00
J. Nick Koston
186e796e25 Speed up fetching states by domain (#99467) 2023-09-03 09:30:39 -05:00
J. Nick Koston
b752419f25 Bump aioesphomeapi to 16.0.4 (#99541) 2023-09-03 09:13:34 -05:00
J. Nick Koston
d063650fec Bump bleak-retry-connector to 3.1.2 (#99540) 2023-09-03 09:13:21 -05:00
Rami Mosleh
8e22041ee9 Change calculation methods to a fixed list (#99535) 2023-09-03 16:12:37 +02:00
J. Nick Koston
8843a445c9 Reduce Bluetooth coordinator/processor overhead (#99526) 2023-09-03 08:59:15 -05:00
Yuxin Wang
9bba501057 Handle gracefully when unloading apcupsd config entries (#99513) 2023-09-03 15:54:00 +02:00
Michael Arthur
31d1752c74 Bugfix: Electric Kiwi reduce interval so oauth doesn't expire (#99489)
decrease interval time as EK have broken/changed their oauth again
2023-09-03 15:53:23 +02:00
J. Nick Koston
00893bbf14 Bump bleak to 0.21.0 (#99520)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-03 08:22:03 -05:00
J. Nick Koston
5f487b5d85 Refactor async_call_at and async_call_later event helpers to avoid creating closures (#99469) 2023-09-03 08:19:06 -05:00
Jc2k
1cd0cb4537 Add suggest_display_precision to private_ble_device (#99529) 2023-09-03 07:39:20 -05:00
Marc Mueller
6414248bee Update pytest warning filter (#99521) 2023-09-03 13:04:01 +02:00
J. Nick Koston
1183bd159e Bump zeroconf to 0.93.1 (#99516)
* Bump zeroconf to 0.92.0

changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.91.1...0.92.0

* drop unused argument

* Update tests/components/thread/test_diagnostics.py

* lint

* again

* bump again since actions failed to release the wheels
2023-09-03 11:16:26 +02:00
Joakim Plate
61dc217d92 Bump gardena_bluetooth to 1.4.0 (#99530) 2023-09-03 10:25:00 +02:00
Allen Porter
7b1c0c2df2 Extend template entities with a script section (#96175)
* Extend template entities with a script section

This allows making a trigger entity that triggers a few times a day,
and allows collecting data from a service resopnse which can be
fed into a template entity.

The current alternatives are to publish and subscribe to events or to
store data in input entities.

* Make variables set in actions accessible to templates

* Format code

---------

Co-authored-by: Erik <erik@montnemery.com>
2023-09-02 16:19:45 -07:00
Marc Mueller
6312f34538 Fix zha test RuntimeWarning (#99519) 2023-09-03 01:07:17 +02:00
Jc2k
4b11a632a1 Add sensors to private_ble_device (#99515) 2023-09-02 17:45:46 -05:00
J. Nick Koston
b8f8cd1797 Reduce overhead to retry config entry setup (#99471) 2023-09-02 16:46:53 -05:00
Richard Kroegel
bec36d3914 Add long-term statistics to BMW sensors (#99506)
* Add long-term statistics to BMW ConnectedDrive sensors

* Add sensor test snapshot

---------

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-09-02 14:44:28 -07:00
J. Nick Koston
f4f78cf000 Bump aiohomekit to 3.0.2 (#99514) 2023-09-02 15:25:42 -05:00
starkillerOG
cf8da2fc89 Motion blinds add translations (#99078) 2023-09-02 22:13:17 +02:00
starkillerOG
3c30ad1850 Motion blinds duplication reduction using entity baseclass (#99444) 2023-09-02 21:51:58 +02:00
Bram Kragten
7b50316b3e Bump version to 2023.9.0b3 2023-09-02 21:09:52 +02:00
J. Nick Koston
46343bc261 Bump zeroconf to 0.91.1 (#99490) 2023-09-02 21:09:19 +02:00
Andrew Onyshchuk
e726b49adb Update aiotractive to 0.5.6 (#99477) 2023-09-02 21:09:19 +02:00
G Johansson
cb1267477b Fix default language in Workday (#99463)
Workday fix default language
2023-09-02 21:09:17 +02:00
jimmyd-be
caaba5d422 Fix translation bug Renson sensors (#99461)
* Fix translation bug

* Revert "Fix translation bug"

This reverts commit 84b5e90dac.

* Fixed translation of Renson sensor
2023-09-02 21:09:17 +02:00
Erik Montnemery
9fec0be173 Log unexpected exceptions causing recorder shutdown (#99445) 2023-09-02 21:09:16 +02:00
Raman Gupta
8dcc96c083 Fix device name in zwave_js repair flow (#99414) 2023-09-02 21:09:15 +02:00
starkillerOG
270be19e1a Check new IP of Reolink camera from DHCP (#99381)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-02 21:09:14 +02:00
Daniel Hjelseth Høyer
f0878addca Update Tibber library to 0.28.2 (#99115) 2023-09-02 21:09:13 +02:00
Russell Cloran
f573c1e27c Handle timestamp sensors in Prometheus integration (#98001) 2023-09-02 21:09:12 +02:00
J. Nick Koston
0b065b118b Bump zeroconf to 0.91.1 (#99490) 2023-09-02 21:04:13 +02:00
starkillerOG
834f3810d3 Check new IP of Reolink camera from DHCP (#99381)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-02 21:00:33 +02:00
J. Nick Koston
1ab2e900f9 Improve lingering timer checks (#99472) 2023-09-02 12:43:27 -05:00
Allen Porter
1048f47a91 Code cleanup for nest device info (#99511) 2023-09-02 19:38:41 +02:00
Jan Bouwhuis
c3841f8734 Rework on mqtt certificate tests (#99503)
* Shared fixture on TEMP_DIR_NAME mock in MQTT tests

* Improve mqtt certificate file tests

* Update tests/components/mqtt/test_util.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update tests/components/mqtt/conftest.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Avoid blocking code

* typo in sub function

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-02 19:26:11 +02:00
J. Nick Koston
6974d211e5 Switch isy994 to use async_call_later (#99487)
async_track_point_in_utc_time is not needed here since we only need to call
at timedelta(hours=25)
2023-09-02 10:14:33 -07:00
J. Nick Koston
acd9cfa929 Speed up calls to the all states api (#99462) 2023-09-02 12:08:07 -05:00
J. Nick Koston
6e743a5bb2 Switch mqtt to use async_call_later where possible (#99486) 2023-09-02 11:55:11 -05:00
Erik Montnemery
defd9e4001 Don't compile missing statistics when running tests (#99446) 2023-09-02 10:09:46 -05:00
Erik Montnemery
7168e71860 Log unexpected exceptions causing recorder shutdown (#99445) 2023-09-02 09:51:06 -05:00
Joost Lekkerkerker
9e9aa163f7 Use shorthand attributes in hlk_sw16 (#99383) 2023-09-02 09:42:32 -05:00
Jc2k
26b1222fae Support tracking private bluetooth devices (#99465)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-09-02 09:21:05 -05:00
Daniel Hjelseth Høyer
d88ee0dbe0 Update Tibber library to 0.28.2 (#99115) 2023-09-02 15:08:49 +02:00
Paarth Shah
4d3b978398 Change matrix component to use matrix-nio instead of matrix_client (#72797) 2023-09-02 15:02:55 +02:00
Joost Lekkerkerker
f48e8623da Use shorthand attributes in Hunterdouglas powerview (#99386) 2023-09-02 04:55:19 -05:00
Jan Bouwhuis
3d1efaa4ad Freeze time for MQTT sensor expire tests (#99496) 2023-09-02 04:10:57 -05:00
jimmyd-be
1e46ecbb48 Fix translation bug Renson sensors (#99461)
* Fix translation bug

* Revert "Fix translation bug"

This reverts commit 84b5e90dac.

* Fixed translation of Renson sensor
2023-09-02 10:55:12 +02:00
Russell Cloran
5fd14eade5 Handle timestamp sensors in Prometheus integration (#98001) 2023-09-02 10:20:36 +02:00
G Johansson
b681dc06e0 Fix default language in Workday (#99463)
Workday fix default language
2023-09-02 09:47:59 +02:00
Jc2k
e465a4f820 Update bluetooth-data-tools to 1.11.0 (#99485) 2023-09-01 17:33:19 -05:00
J. Nick Koston
7c87b38a23 Reduce overhead to process and publish MQTT messages (#99457) 2023-09-01 15:41:34 -05:00
J. Nick Koston
5a8fc43212 Refactor MQTT discovery to avoid creating closure if hash already in discovery_pending_discovered (#99458) 2023-09-01 15:40:53 -05:00
Andrew Onyshchuk
04bf126425 Update aiotractive to 0.5.6 (#99477) 2023-09-01 23:28:53 +03:00
J. Nick Koston
09f45660cf Avoid linear search of MQTT SUPPORTED_COMPONENTS (#99459)
By making this a set we avoid the linear search in async_discovery_message_received
2023-09-01 20:10:47 +02:00
Jan-Philipp Benecke
cf59ea3c47 Use snapshot assertion for netatmo diagnostics test (#99159) 2023-09-01 19:27:54 +02:00
Richard Mikalsen
1e6cddaa1d Turn off Mill heaters using local API (#99348)
* Update mill_local

* Add ability to turn heater on and off

* Use OperationMode from upstream library

* Fix: compare against value
2023-09-01 19:05:35 +02:00
Raman Gupta
169a318ec4 Fix device name in zwave_js repair flow (#99414) 2023-09-01 18:06:37 +02:00
Bram Kragten
1f0b3c4e33 Bump version to 2023.9.0b2 2023-09-01 18:01:07 +02:00
Bram Kragten
528e8c0fe7 Update frontend to 20230901.0 (#99464) 2023-09-01 17:58:15 +02:00
Erik Montnemery
eb8d375e35 Fix template helper strings (#99456) 2023-09-01 17:58:15 +02:00
Keilin Bickar
987a959b19 Update asynsleepiq library to 1.3.7 (#99431) 2023-09-01 17:58:14 +02:00
Paul Bottein
469a72a5f9 Use common key for away mode state translations (#99425) 2023-09-01 17:58:13 +02:00
Álvaro Fernández Rojas
a95691f306 Update AEMET-OpenData to v0.4.4 (#99418)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-09-01 17:58:12 +02:00
J. Nick Koston
ebf42ad342 Significantly reduce overhead to filter event triggers (#99376)
* fast

* cleanups

* cleanups

* cleanups

* comment

* comment

* add more cover

* comment

* pull more examples from forums to validate cover
2023-09-01 17:58:11 +02:00
Michael
057daa5fdb Address late review for Nextcloud (#99226) 2023-09-01 17:58:10 +02:00
puddly
2ec9abfd24 Create a ZHA repair when directly accessing a radio with multi-PAN firmware (#98275)
* Add the SiLabs flasher as a dependency

* Create a repair if the wrong firmware is detected on an EZSP device

* Update homeassistant/components/zha/strings.json

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Provide the ZHA config entry as a reusable fixture

* Create a separate repair when using non-Nabu Casa hardware

* Add unit tests

* Drop extraneous `config_entry.add_to_hass` added in 021def44

* Fully unit test all edge cases

* Move `socket://`-ignoring logic into repair function

* Open a repair from ZHA flows when the wrong firmware is running

* Fix existing unit tests

* Link to the flashing section in the documentation

* Reduce repair severity to `ERROR`

* Make issue persistent

* Add unit tests for new radio probing states

* Add unit tests for new config flow steps

* Handle probing failure raising an exception

* Implement review suggestions

* Address review comments

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-09-01 17:58:09 +02:00
puddly
0bae0824b4 Initialize ZHA device database before connecting to the radio (#98082)
* Create ZHA entities before attempting to connect to the coordinator

* Delete the ZHA gateway object when unloading the config entry

* Only load ZHA groups if the coordinator device info is known offline

* Do not create a coordinator ZHA device until it is ready

* [WIP] begin fixing unit tests

* [WIP] Fix existing unit tests (one failure left)

* Fix remaining unit test
2023-09-01 17:58:08 +02:00
Bram Kragten
1d80af870d Update frontend to 20230901.0 (#99464) 2023-09-01 17:28:52 +02:00
Erik Montnemery
390c046537 Fix template helper strings (#99456) 2023-09-01 17:14:42 +02:00
Paul Bottein
ac0565e3bc Use common key for away mode state translations (#99425) 2023-09-01 15:58:01 +02:00
puddly
38270ee823 Create a ZHA repair when directly accessing a radio with multi-PAN firmware (#98275)
* Add the SiLabs flasher as a dependency

* Create a repair if the wrong firmware is detected on an EZSP device

* Update homeassistant/components/zha/strings.json

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Provide the ZHA config entry as a reusable fixture

* Create a separate repair when using non-Nabu Casa hardware

* Add unit tests

* Drop extraneous `config_entry.add_to_hass` added in 021def44

* Fully unit test all edge cases

* Move `socket://`-ignoring logic into repair function

* Open a repair from ZHA flows when the wrong firmware is running

* Fix existing unit tests

* Link to the flashing section in the documentation

* Reduce repair severity to `ERROR`

* Make issue persistent

* Add unit tests for new radio probing states

* Add unit tests for new config flow steps

* Handle probing failure raising an exception

* Implement review suggestions

* Address review comments

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-09-01 09:05:45 -04:00
rappenze
680775c3e0 Discover more power and energy sensors in fibaro integration (#98253) 2023-09-01 10:48:08 +02:00
Joost Lekkerkerker
65246b99ec Use shorthand attributes in iZone (#99397) 2023-09-01 10:34:09 +02:00
Joost Lekkerkerker
6c93865cee Use shorthand attributes in Insteon (#99392) 2023-09-01 10:13:34 +02:00
Jan-Philipp Benecke
bbc390837e Move airnow coordinator to its own file (#99423) 2023-09-01 08:29:07 +02:00
Keilin Bickar
dc4ed5fea9 Update asynsleepiq library to 1.3.7 (#99431) 2023-09-01 08:24:13 +02:00
Allen Porter
1539853c0a Update google-nest-sdm to 3.0.2 (#99175)
* Update google-nest-sdm to 3.0.2

* Fix device typing

* Update homeassistant/components/nest/device_info.py

Co-authored-by: jan iversen <jancasacondor@gmail.com>

---------

Co-authored-by: jan iversen <jancasacondor@gmail.com>
2023-08-31 20:33:36 -07:00
Joost Lekkerkerker
2dab9eaf86 Use shorthand attributes in Isy994 (#99395) 2023-08-31 19:58:40 -05:00
Keith Burzinski
5e03954e69 Add @kbx81 as esphome codeowner (#99427)
* Add @kbx81 as esphome codeowner

* Add @kbx81 as esphome codeowner, take 2
2023-08-31 23:50:25 +02:00
Álvaro Fernández Rojas
97d38f4ca5 Update AEMET-OpenData to v0.4.4 (#99418)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-08-31 21:59:01 +02:00
Michael
d5adf33225 Address late review for Nextcloud (#99226) 2023-08-31 20:35:11 +02:00
J. Nick Koston
0da94c20b0 Significantly reduce overhead to filter event triggers (#99376)
* fast

* cleanups

* cleanups

* cleanups

* comment

* comment

* add more cover

* comment

* pull more examples from forums to validate cover
2023-08-31 13:47:01 -04:00
Jan-Philipp Benecke
2e7018a152 Move tankerkoenig coordinator and base entity to its own file (#99416)
* Move tankerkoenig coordinator and entity to its own file

* Add coordinator.py and entity.py to .coveragerc
2023-08-31 19:39:17 +02:00
puddly
22c5071270 Initialize ZHA device database before connecting to the radio (#98082)
* Create ZHA entities before attempting to connect to the coordinator

* Delete the ZHA gateway object when unloading the config entry

* Only load ZHA groups if the coordinator device info is known offline

* Do not create a coordinator ZHA device until it is ready

* [WIP] begin fixing unit tests

* [WIP] Fix existing unit tests (one failure left)

* Fix remaining unit test
2023-08-31 12:09:46 -04:00
Bram Kragten
8284c288bf Bump version to 2023.9.0b1 2023-08-31 17:19:10 +02:00
Joakim Sørensen
a603a99bd6 Add remote alias to connection info response (#99410) 2023-08-31 17:17:51 +02:00
Bram Kragten
9836d17c92 Update frontend to 20230831.0 (#99405) 2023-08-31 17:17:50 +02:00
Paul Bottein
db8980246b Add entity component translation for water heater away mode attribute (#99394) 2023-08-31 17:17:49 +02:00
G Johansson
d1c154fc0d Revert "Sonos add yaml config issue" (#99379)
Revert "Sonos add yaml config issue (#97365)"

This reverts commit 2299430dbe.
2023-08-31 17:17:48 +02:00
Erik Montnemery
97b0815122 Add documentation URL for homeassistant_sky_connect (#99377) 2023-08-31 17:17:47 +02:00
J. Nick Koston
a0d03d6bb1 Revert orjson to 3.9.2 (#99374)
* Revert "Update orjson to 3.9.4 (#98108)"

This reverts commit 3dd377cb2a.

* Revert "Update orjson to 3.9.3 (#97930)"

This reverts commit d993aa59ea.
2023-08-31 17:17:46 +02:00
Erik Montnemery
eb423c39b6 Improve template sensor config flow validation (#99373) 2023-08-31 17:17:45 +02:00
Austin Brunkhorst
316f89bead Update pysnooz to 0.8.6 (#99368) 2023-08-31 17:17:44 +02:00
puddly
3066d70809 Bump ZHA dependencies (#99341)
* Bump ZHA dependencies

* Include bellows as well
2023-08-31 17:17:43 +02:00
Erik Montnemery
52f8dbf25b Add documentation URL for homeassistant_yellow (#99336)
* Add documentation URL for homeassistant_yellow

* Fix test

* Tweak
2023-08-31 17:17:42 +02:00
tronikos
794071449a Opower MFA fixes (#99317)
opower mfa fixes
2023-08-31 17:17:41 +02:00
Brett Adams
cb33d82c24 Patch service validation in Aussie Broadband (#99077)
* Bump pyAussieBB

* rolling back to previous version

* patching the pydantic 2.x issue in aussie_broadband integration

* adding test for validate_service_type

* adding test for validate_service_type

* fixing tests, again

* adding additional test

* doing fixes for live tests

* Implement Feedback

* Add test to detect pydantic2

* Update test_init.py

* Update docstring

---------

Co-authored-by: James Hodgkinson <james@terminaloutcomes.com>
2023-08-31 17:17:40 +02:00
Erik Montnemery
80caeafcb5 Add documentation URL for homeassistant_yellow (#99336)
* Add documentation URL for homeassistant_yellow

* Fix test

* Tweak
2023-08-31 10:50:53 -04:00
Joakim Sørensen
7042a02d72 Add remote alias to connection info response (#99410) 2023-08-31 10:43:32 -04:00
Bram Kragten
875809a827 Update frontend to 20230831.0 (#99405) 2023-08-31 15:32:37 +02:00
Erik Montnemery
f36a300651 Improve template sensor config flow validation (#99373) 2023-08-31 15:16:32 +02:00
Paul Bottein
047f936d4c Add entity component translation for water heater away mode attribute (#99394) 2023-08-31 14:29:24 +02:00
Joost Lekkerkerker
7ead5c44ea Use shorthand attributes in iCloud (#99390)
* Use shorthand attributes in iCloud

* Use shorthand attributes in iCloud
2023-08-31 12:37:21 +02:00
Austin Brunkhorst
2c545ef3d2 Update pysnooz to 0.8.6 (#99368) 2023-08-31 11:15:45 +02:00
Erik Montnemery
35560e01b9 Add documentation URL for homeassistant_sky_connect (#99377) 2023-08-31 10:39:24 +02:00
G Johansson
0fd9327c46 Revert "Sonos add yaml config issue" (#99379)
Revert "Sonos add yaml config issue (#97365)"

This reverts commit 2299430dbe.
2023-08-31 10:24:03 +02:00
Joost Lekkerkerker
c25b3e55e4 Add entity translations to Mill (#96541) 2023-08-31 10:13:39 +02:00
Brett Adams
e08661dad3 Patch service validation in Aussie Broadband (#99077)
* Bump pyAussieBB

* rolling back to previous version

* patching the pydantic 2.x issue in aussie_broadband integration

* adding test for validate_service_type

* adding test for validate_service_type

* fixing tests, again

* adding additional test

* doing fixes for live tests

* Implement Feedback

* Add test to detect pydantic2

* Update test_init.py

* Update docstring

---------

Co-authored-by: James Hodgkinson <james@terminaloutcomes.com>
2023-08-31 09:45:44 +02:00
J. Nick Koston
a41af4e6d3 Revert orjson to 3.9.2 (#99374)
* Revert "Update orjson to 3.9.4 (#98108)"

This reverts commit 3dd377cb2a.

* Revert "Update orjson to 3.9.3 (#97930)"

This reverts commit d993aa59ea.
2023-08-31 09:33:57 +02:00
Jan-Philipp Benecke
70843862aa Address late review for bsblan (#99360)
* Address late review comment

* Break also comment
2023-08-31 07:31:05 +02:00
tronikos
343e8f0ecc Opower MFA fixes (#99317)
opower mfa fixes
2023-08-31 06:36:07 +02:00
Joost Lekkerkerker
99a65fb45b Collapse supported features list in Deconz (#99233)
* Use shorthand attributes for Deconz

* revert changes
2023-08-30 23:57:23 +02:00
Marc Mueller
cc9f0aaf80 Escape core version [ci] (#99364) 2023-08-30 23:56:25 +02:00
Jan-Philipp Benecke
5819091af7 Move octoprint coordinator to its own file (#99359)
Move octoprint coordinator to own file
2023-08-30 22:31:51 +02:00
Erik Montnemery
03b1c7ad1d Minor improvement in tests of hardware integrations (#99361) 2023-08-30 21:11:52 +02:00
b-uwe
cdd22bf0fa Revert "Remove the virtual integration for ultraloq" (#99302)
Revert "Remove the virtual integration for ultraloq (#96355)"

This reverts commit 56bc708b28.
2023-08-30 14:58:57 -04:00
puddly
5fd88f5874 Bump ZHA dependencies (#99341)
* Bump ZHA dependencies

* Include bellows as well
2023-08-30 14:56:19 -04:00
jan iversen
8a4e48532c Bump pymodbus v3.5.0 (#99343)
Bump pymodbus v3.5.0.
2023-08-30 20:26:13 +02:00
Erik Montnemery
8c04e4c7a3 Add explicit test of template config entry setup (#99345) 2023-08-30 19:56:34 +02:00
Joost Lekkerkerker
59b1d4ba69 Bump version to 2023.10.0dev0 (#99349) 2023-08-30 19:32:10 +02:00
Bram Kragten
92007fce56 2023.9.0b0 (#99347) 2023-08-30 18:21:27 +02:00
Bram Kragten
1018e82725 Bump version to 2023.9.0b0 2023-08-30 18:17:32 +02:00
Raman Gupta
867e9b73bb Add zwave_js device config file change fix/repair (#99314)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-30 17:29:22 +02:00
Erik Montnemery
501d5db375 Add config flow for template binary sensor (#99339) 2023-08-30 17:28:56 +02:00
Joost Lekkerkerker
a5dcc25aab Add snapshot assertion to Airzone (#98760)
Co-authored-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-08-30 17:11:55 +02:00
Bram Kragten
2ee55f5086 Update frontend to 20230830.0 (#99340) 2023-08-30 16:42:04 +02:00
Joost Lekkerkerker
549399cca6 Remove unneeded variable in Flo (#99322) 2023-08-30 16:37:59 +02:00
Erik Montnemery
f9b2e10f72 Add new board type (#99334) 2023-08-30 16:37:13 +02:00
Erik Montnemery
63c538b024 Add config flow for template sensor (#98970)
* Add config flow for template sensor

* Tweak error reporting

* Improve validation

* Fix test

* Rename translation strings

* Improve validation

* Fix sensor async_setup_entry

* Avoid duplicating sensor device class translations

* Avoid duplicating sensor device class translations

* Add config flow tests

* Include all units from DEVICE_CLASS_UNITS in unit_of_measurement select

* Address review comments
2023-08-30 16:22:52 +02:00
Mike Woudenberg
bc5f934f35 Correct loqed token URL to production server (#99316)
* Corrects token URL to production server

* Update homeassistant/components/loqed/strings.json

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-30 16:21:52 +02:00
Joost Lekkerkerker
a1b2b9a78c Add entity translations to Tellduslive (#98963) 2023-08-30 16:03:13 +02:00
Joost Lekkerkerker
fb6d19d08f Add pressure device class to Telldus live (#99337) 2023-08-30 15:53:30 +02:00
Joost Lekkerkerker
5f05d0d7e9 Map abode units to HA units (#99323) 2023-08-30 15:33:38 +02:00
Joost Lekkerkerker
e56db78b27 Use shorthand attributes for Freebox (#99327) 2023-08-30 15:33:05 +02:00
Joost Lekkerkerker
587928223a Use shorthand attributes in Gree (#99332) 2023-08-30 15:16:45 +02:00
Joost Lekkerkerker
66ad605d3e Use shorthand attribute in Google Travel Time (#99331) 2023-08-30 15:09:02 +02:00
Maikel Punie
7170f5d36c Bump pyduotecno to 2023.8.4 (#99328) 2023-08-30 14:26:58 +02:00
Álvaro Fernández Rojas
71a6db0c9d Update AEMET-OpenData to v0.4.3 (#99312) 2023-08-30 07:23:17 -05:00
Jan-Philipp Benecke
5c8e5a7af2 Split bsblan coordinator and randomize update interval (#99269)
* Split out bsblan coordinator and randomize update interval

* Use logger const

* Add randomising update interval for following updates

* Implement review comments

* Re-add config_entry

* Remove line
2023-08-30 13:14:30 +02:00
Raman Gupta
6e5f4566d5 Add zwave_js controller status sensor (#99252)
* Add zwave_js controller status sensor

* Also update network status command

* fix tests

* Remove WS command since we have a sensor entity

* Update sensor.py

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

* move driver assertion out of closures

* store state in tests

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-30 06:50:23 -04:00
Jan-Philipp Benecke
027ce55fa6 Use snapshot assertion for google assistant diagnostics test (#99167) 2023-08-30 12:25:06 +02:00
Jan-Philipp Benecke
fb42042402 Use snapshot assertion for nextdns diagnostics test (#99157) 2023-08-30 12:22:10 +02:00
Erik Montnemery
15de221c3e Trigger full CI run if assist_pipeline is modified (#99319) 2023-08-30 12:17:26 +02:00
Joost Lekkerkerker
775f815afc Use shorthand attributes for Ecobee (#99239)
* Use shorthand attributes for Ecobee

* Use shorthand attributes for Ecobee
2023-08-30 12:11:13 +02:00
Joost Lekkerkerker
a4818c5f54 Use shorthand attributes for Elmax (#99277) 2023-08-30 12:07:55 +02:00
Joost Lekkerkerker
7d70b42e4a Use shorthand attributes for EnOcean (#99278) 2023-08-30 11:57:56 +02:00
Joost Lekkerkerker
38267699e5 Use device info object in ezviz (#99280) 2023-08-30 11:52:06 +02:00
Joost Lekkerkerker
fae50169d9 Add typing to Blink config flow (#98873) 2023-08-30 11:50:47 +02:00
G Johansson
2ce5b08fc3 Deprecate timer start optional duration parameter (#93471)
* Deprecate timer start option duration parameter

* Add test

* Fix strings

* breaks_in_ha_version

* strings

* Mod string
2023-08-30 11:48:13 +02:00
Richard Kroegel
021b14fc17 Refactor & enhance BMW tests (#97895)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-08-30 11:45:09 +02:00
jan iversen
9ef3ec3dd3 Add modbus test for configuration errors (#98697) 2023-08-30 11:34:51 +02:00
Erik Montnemery
9e178ae2ce Fix assist_pipeline schema (#99318) 2023-08-30 11:33:41 +02:00
Raman Gupta
40748a6c34 Add zwave_js controller identify event (#99254) 2023-08-30 11:32:41 +02:00
Joost Lekkerkerker
56b99d2bc6 Add entity translations to QNAP QSW (#98915) 2023-08-30 11:20:15 +02:00
ollo69
a89a5f486d Migrate Melcloud to has entity name (#99025) 2023-08-30 10:53:52 +02:00
Michael
e7462e916a Conditional category for temperature sensor entities in AVM Fritz!Smarthome (#98981) 2023-08-30 10:29:35 +02:00
Joost Lekkerkerker
bd04cafb91 Use shorthand attributes for Daikin (#99225)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-08-30 10:25:53 +02:00
Michał Huryn
e911b73b61 Add extra sensors to Blebox (#90516) 2023-08-30 10:20:45 +02:00
Joost Lekkerkerker
56e5c34283 Add entity translations to Garages Amsterdam (#98584) 2023-08-30 09:46:28 +02:00
Erik Montnemery
7e7cb15d5b Revert "Allows defining list of attributes excluded from history in manifest.json" (#99300)
Revert "Allows defining list of attributes excluded from history in manifest.json (#99283)"

This reverts commit 0366e14630.
2023-08-30 08:26:26 +02:00
Daniel Hjelseth Høyer
fb4e93071e Update Mill lib, improve error handling (#99296) 2023-08-30 00:03:56 -04:00
Paulus Schoutsen
9e4bcd298e Move more Oral-B entities to be diagnostic (#99297) 2023-08-30 00:03:37 -04:00
Michal Jál
d7d989b9fb Switchbot nightlatch feature (#98620)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-08-30 00:03:08 -04:00
Sebastian Mayr
6e8b3837b0 Add support for MFA auth in opower (#97878)
* Add support for MFA auth in opower

* Make MFA an extra step

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-08-29 23:37:37 -04:00
rct
cc8f5ca827 Opower add new virtual integrations ConEd and ORU (#99230) 2023-08-29 23:35:19 -04:00
Willem-Jan van Rootselaar
1e37e1e355 Bump python-bsblan to 0.5.16 (#99238) 2023-08-29 23:23:20 -04:00
Michael Hansen
054a63c3a2 Add option to save Assist pipeline audio (#98928)
* Add pipeline option to save wake/stt audio to media

* Add debug_recording_dir to assist_pipeline YAML config

* Clean up and additional tests

* Remove I/O in event loop

* Organize saved audio by pipeline name and device id

* Record wake/stt debug audio in separate thread

* Fix after rebase

* Use timestamp instead of pipeline id for directory name

* Add WAV write error test

* Join thread in executor
2023-08-29 23:07:27 -04:00
Øyvind Matheson Wergeland
de30712d76 Verisure: propagate lock code digits configuration immediately (#99241) 2023-08-29 22:02:09 +02:00
Richard Kroegel
b403cb41c0 Allow one retry before raising ConfigEntryAuthFailed for bmw_connected_drive (#99168)
* Allow one retry before raising ConfigEntryAuthFailed

* Move time with freezer

* Update homeassistant/components/bmw_connected_drive/coordinator.py

---------

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-29 21:41:50 +02:00
Álvaro Fernández Rojas
4508e341c9 Add wind gust to AEMET hourly forecasts (#99289)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-08-29 21:14:37 +02:00
Stefan Agner
53c5b187c0 Update Home Assistant base image to 2023.08.0 (#99281) 2023-08-29 20:43:32 +02:00
Erik Montnemery
0366e14630 Allows defining list of attributes excluded from history in manifest.json (#99283)
* Move list of attributes excluded from history to manifest.json

* Address comments
2023-08-29 20:14:33 +02:00
kel30a
50150f5577 Bump pydaikin version to 2.11.1 (#99288) 2023-08-29 13:08:39 -05:00
Álvaro Fernández Rojas
c3ef518551 Update AEMET-OpenData to v0.4.2 (#99286) 2023-08-29 13:06:46 -05:00
Mike Degatano
e0eb63c588 Validate slug in addon services (#99232)
* Validate slug in addon services

* Move validator into hassio component

* Fixes from mypy

* Fix test for changes

* Adjust fixtures to current supervisor

* Fix call counts after fixture adjustment

* Increase coverage
2023-08-29 13:57:41 -04:00
Joost Lekkerkerker
e2dd7f2069 Add entity translations to NZBGet (#98805) 2023-08-29 18:15:44 +02:00
Maciej Bieniek
fe713cec8f Don't assume that the activity/sleep labels are always present in Tractive event (#99197)
* Don't assume that the activity_label and sleep_labes are always present in an event

* Catch KeyError
2023-08-29 17:52:29 +02:00
Joost Lekkerkerker
b9fd2ee3b6 Use functions to get value and unit in Abode (#99084) 2023-08-29 17:37:26 +02:00
Phil Bruckner
10c53dd284 Fix Life360 reauthorization config flow (#99227) 2023-08-29 16:38:11 +02:00
Álvaro Fernández Rojas
2e0a22fdaf Use freezegun in AEMET tests (#99253) 2023-08-29 09:33:12 -05:00
J. Nick Koston
5006244f4c Bump aioesphomeapi to 16.0.3 (#99282) 2023-08-29 09:31:41 -05:00
Joost Lekkerkerker
f28634ea11 Migrate PVPC to has entity name (#98894)
* Migrate PVPC to has entity name

* Set device name

* Fix feedback
2023-08-29 16:26:23 +02:00
Robert Resch
6223b1f599 Add ws endpoint "auth/delete_all_refresh_tokens" (#98976)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-29 15:57:54 +02:00
Erik Montnemery
691bbedfc8 Fix typo in TrackTemplateResultInfo (#99276) 2023-08-29 08:54:38 -05:00
David Knowles
9476ade34a Bump pydrawise to 2023.8.0 (#99270) 2023-08-29 15:43:27 +02:00
Álvaro Fernández Rojas
fae82731e1 Simplify and improve AEMET coordinator updates (#99273) 2023-08-29 08:43:14 -05:00
Joost Lekkerkerker
98cb5b4b5d Use shorthand attributes for Elkm1 (#99275) 2023-08-29 14:46:24 +02:00
Álvaro Fernández Rojas
dac77040a2 Update AEMET-OpenData to v0.4.1 (#99261)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-08-29 13:41:34 +02:00
Joost Lekkerkerker
00ecc108d1 Use shorthand attributes for DuneHD (#99237) 2023-08-29 13:08:24 +02:00
Quentame
750cfeb76a Refactor Freebox Home categories (#99224) 2023-08-29 12:43:22 +02:00
Maciej Bieniek
62b1211dee Remove myself from Dune HD codeowners (#99268) 2023-08-29 12:41:19 +02:00
Quentame
f1ec99b9c9 Add Freebox Home battery sensor (#99222)
* Add Freebox Home battery sensor

* Review

* Review 2

* Freebox battery is a SensorEntity, not a FreeboxSensor
2023-08-29 12:13:01 +02:00
G Johansson
657ed0bcdb Clean out compatibility for deprecated methods in Weather (#99263)
Clean out compatability in Weather
2023-08-29 11:33:56 +02:00
Erik Montnemery
e6eadc79e9 Small typing fix in light group (#99259) 2023-08-29 11:12:34 +02:00
escoand
4632a07f3f Add possibility to have multiple values for every modbus hvac mode (#98829)
Co-authored-by: jan iversen <jancasacondor@gmail.com>
2023-08-29 10:45:37 +02:00
G Johansson
7a690d7359 Add deprecation to legacy forecast for Weather (#97294)
* Add deprecation to legacy forecast

* Mod _reported

* issue

* remove not need variable

* kitchen_sink

* 2024.3

* remove demo and mqtt

* add checks

* fix deprecation

* remove variable

* fix kitchen_sink

* Fix deprecation warning

* Expand issue

* clean

* Fix tests

* fix kitchen_sink

* not report on core integrations
2023-08-29 10:38:59 +02:00
Erik Montnemery
b22b51fe3b Fix stale docstring in trafikverket_camera tests (#99260) 2023-08-29 10:28:32 +02:00
Joost Lekkerkerker
ddbf85fc38 Abort YouTube configuration if user doesn't have subscriptions (#99140) 2023-08-29 09:36:27 +02:00
liangjia2019
63c2a2994f Add new zigbee button SONOFF_SNZB_01P to deconz (#99205)
add new zigbee button
2023-08-29 09:17:27 +02:00
epenet
c81d39f651 Fix Renault AssertionError (#99189) 2023-08-29 08:58:20 +02:00
Joost Lekkerkerker
b5ff0b4ec2 Add entity translations to Vilfo (#99019) 2023-08-29 08:47:35 +02:00
Raman Gupta
be126da72d Bump zwave-js-server-python to 0.51.0 (#99250)
* Bump zwave-js-server-python to 0.51.0

* Fix how we patch the command
2023-08-29 02:45:43 -04:00
Joost Lekkerkerker
cdf39ec365 Migrate Vilfo to has entity name (#99018) 2023-08-29 08:42:37 +02:00
Joost Lekkerkerker
202b0b5300 Migrate Venstar to has entity name (#99013) 2023-08-29 08:40:35 +02:00
J. Nick Koston
5ec645161d Bump zeroconf to 0.88.0 (#99248)
changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.86.0...0.88.0
2023-08-29 00:01:39 -04:00
puddly
c8ef3f9393 Automatic migration from multi-PAN back to Zigbee firmware (#93831)
* Initial implementation of migration back to Zigbee firmware

* Fix typo in `BACKUP_RETRIES` constant name

* Name potentially long-running tasks

* Add an explicit timeout to `_async_wait_until_addon_state`

* Guard against the addon not being installed when uninstalling

* Do not launch the progress flow unless the addon is being installed

* Use a separate translation key for confirmation before disabling multi-PAN

* Disable the bellows UART thread within the ZHA config flow radio manager

* Enhance config flow progress keys for flasher addon installation

* Allow `zha.async_unload_entry` to succeed when ZHA is not loaded

* Do not endlessly spawn task when uninstalling addon synchronously

* Include `uninstall_addon.data.*` in SkyConnect and Yellow translations

* Make `homeassistant_hardware` unit tests pass

* Fix SkyConnect unit test USB mock

* Fix unit tests in related integrations

* Use a separate constant for connection retrying

* Unit test ZHA migration from multi-PAN

* Test ZHA multi-PAN migration helper changes

* Fix flaky SkyConnect unit test being affected by system USB devices

* Unit test the synchronous addon uninstall helper

* Test failure when flasher addon is already running

* Test failure where flasher addon fails to install

* Test ZHA migration failures

* Rename `get_addon_manager` to `get_multiprotocol_addon_manager`

* Remove stray "addon uninstall" comment

* Use better variable names for the two addon managers

* Remove extraneous `self.install_task = None`

* Use the addon manager's `addon_name` instead of constants

* Migrate synchronous addon operations into a new class

* Remove wrapper functions with `finally` clause

* Use a more descriptive error message when the flasher addon is stalled

* Fix existing unit tests

* Remove `wait_until_done`

* Fully replace all addon name constants with those from managers

* Fix OTBR breakage

* Simplify `is_hassio` mocking

* Add missing tests for `check_multi_pan_addon`

* Add missing tests for `multi_pan_addon_using_device`

* Use `waiting` instead of `sync` in class name and methods
2023-08-28 17:26:34 -04:00
puddly
23839a7f10 Wrap most ZHA exceptions in HomeAssistantError (#98421)
* Wrap attribute writes in a helper throwing `HomeAssistantError`

* Do not check for `Exception` instances, they are now propagated

* Write `cie_addr` synchronously

* Fix unnecessary `if` in `async_set_native_value`

* Fix unit tests

* Use `HomeAssistantError` in cover commands

* Revert writing `cie_addr` synchronously

* Disallow proxying of some cluster methods to fix unit test warnings

* Unit test cover failures to increase coverage

* Unit test missing climate device

* Unit test remaining cover commands
2023-08-28 17:24:12 -04:00
Jan-Philipp Benecke
97fd73f9f7 Bump syrupy to 4.2.1 (#99156) 2023-08-28 23:14:07 +02:00
J. Nick Koston
0e6b3d6583 Switch async_track_same_state to use async_call_later (#99219)
* Switch async_track_same_state to use async_call_later

There was no need to use async_track_point_in_utc_time here since
we only need a delay

* update trigger tests

* remove some more utcnow patching

* remove some more utcnow patching

* remove some more utcnow patching
2023-08-28 22:30:20 +02:00
J.P. Krauss
95c03b4192 Add Options Flow to change radius after initial configuration (#97285)
* Add Options Flow to change radius after initial configuration

* Add tests for Options Flow

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Incorporate review suggestions

* Fix diagnostics test case

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Incorporate review suggestions

* Revert "Incorporate review suggestions"

This reverts commit 421e140a4fc78da22ea74c95cd1a17f9305ebbf6.

* Fix broken review comments

* Incorporate rest of review comments

* Incorporate rest of review comments

* Use Config Entry Migration

* Remove old migration code

* Update diagnostics snapshot for config entry migration

* Incorporate review feedback

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-28 21:21:52 +02:00
jimmyd-be
9e8d89c4f5 Renson binary sensors (#94490)
* Add binary sensors

* Add Renson services

* Add fan to Renson

* Revert "Add fan to Renson"

This reverts commit 8e7c09671e.

* Revert "Add Renson services"

This reverts commit d862976c81.

* Add binary sensor to coveragerc file

* Update homeassistant/components/renson/binary_sensor.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/components/renson/binary_sensor.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Changed hard coded names to use translation

* Code cleaning

* Use super()._handle_coordinator_update()

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-08-28 21:15:18 +02:00
J. Nick Koston
80d2309896 Switch async_track_time_interval to use async_call_later internally (#99220) 2023-08-28 13:56:22 -05:00
Joost Lekkerkerker
821d74e904 Add entity translations to Switcher kis (#99223)
* Add entity translations to switcher_kis

* Add entity translations

* Fix tests
2023-08-28 20:53:42 +03:00
Joost Lekkerkerker
fc6f48e076 Enhance Androidtv remote config flow typing (#99144) 2023-08-28 18:03:30 +02:00
Joost Lekkerkerker
3db61a99a4 Remove polling interval property from Aurora (#99198) 2023-08-28 18:01:23 +02:00
Joost Lekkerkerker
1c0d5f8637 Clean up Balboa entity (#99203) 2023-08-28 17:59:53 +02:00
Joost Lekkerkerker
00cc57c4ed Use shorthand attribute for Coolmaster (#99211) 2023-08-28 17:57:51 +02:00
Joost Lekkerkerker
377f7cba60 Improve aurora data schema (#99200) 2023-08-28 17:56:27 +02:00
Aidan Timson
42597f80a3 Add power service to System Bridge integration (#95719)
* Add power service to System Bridge

Add missing return types

Use in list validator and fix command

* Use attr map instead of concatination

* Update strings

* Update homeassistant/components/system_bridge/strings.json

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-28 17:44:23 +02:00
Ian Foster
ef7a246f09 Fix ruckus_unleashed for python 3.11 (#94835)
Co-authored-by: Tony <29752086+ms264556@users.noreply.github.com>
2023-08-28 17:26:40 +02:00
J. Nick Koston
739eeeccb0 Switch hassio to use async_call_later (#99216) 2023-08-28 10:21:05 -05:00
J. Nick Koston
1bf7b4b2c7 Switch lifx to use async_call_later (#99217) 2023-08-28 10:20:42 -05:00
J. Nick Koston
ccb91e3676 Switch axis to use async_call_later (#99215) 2023-08-28 10:19:44 -05:00
Erik Montnemery
9dac6a2948 Use loop.time in DataUpdateCoordinator (#98937) 2023-08-28 10:16:34 -05:00
J. Nick Koston
d4e72c49fa Bump aiohomekit to 3.0.1 (#99210) 2023-08-28 10:02:51 -05:00
J. Nick Koston
6c16d89c1d Switch w800rf32 to use async_call_later (#99214) 2023-08-28 17:00:52 +02:00
J. Nick Koston
4eb71a534f Switch async_track_point_in_time to async_call_later in alarmdecoder (#99213) 2023-08-28 16:57:16 +02:00
Franck Nijhof
f7a45e31c1 Merge branch 'master' into dev 2023-08-28 16:26:29 +02:00
Jake Colman
f1378bba8e Add indoor sensors to Honeywell integration (#98609)
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-28 15:45:01 +02:00
Joost Lekkerkerker
a6788208fe Add entity translations to System bridge (#98959) 2023-08-28 15:36:18 +02:00
Joost Lekkerkerker
61ff53fcf7 Use shorthand attributes in August (#99196) 2023-08-28 08:14:38 -05:00
Simone Chemelli
1692d83063 Vodafone Station device tracker (#94032)
* New integration for Vodafone Station

* coveragerc

* Add ConfigFlow,ScannerEntity,DataUpdateCoordinator

* Introduce aiovodafone lib

* heavy cleanup

* bump aiovodafone to v0.0.5

* add config_flow tests (100% coverage)

* run pre-comimit scripts again

* Remove redundant parameter SSL

* rename and cleanup

* cleanup and bug fix

* cleanup exceptions

* constructor comment review

* improve test patching

* move VodafoneStationDeviceInfo to dataclass

* intriduce home field

* dispacher cleanup

* remove extra attributes (reduces state writes)

* attempt to complete test flow

* complete flow for test_exception_connection

* add comment about unique id
2023-08-28 15:10:23 +02:00
Guido Schmitz
660167cb1b Add image platform to devolo_home_network (#98036) 2023-08-28 14:55:49 +02:00
Joost Lekkerkerker
3f0a8b7a56 Initialize static shorthand attributes outside of constructor for BAF (#99202)
Initialize static shorthand attributes outside of init
2023-08-28 14:43:51 +02:00
Joost Lekkerkerker
60844954d2 Add typing to media extractor (#99207)
* Add typing to media extractor

* Add typing to media extractor

* Add typing to media extractor

* Add typing to media extractor
2023-08-28 14:43:22 +02:00
Rami Mosleh
1d403a961f Reorganize Transmission entry setup (#99195)
* simplify integration setup

* Update transmission entry setup to avoid None attributes

* keep api property in TransmissionData

* Apply suggestion

* Add __init__.py tp .coveragerc
2023-08-28 13:13:35 +02:00
Joost Lekkerkerker
efcf3ddb57 Remove BleBox switch constructor (#99204) 2023-08-28 12:49:20 +02:00
Rami Mosleh
8edae37082 Add more type hints to Transmission (#99190)
* More type hints of transmssion

* More type hints
2023-08-28 11:20:18 +02:00
Shay Levy
b0f3b7bb76 Revert "Change naming of Shelly entities to correspond with HA guidelines" (#99059) 2023-08-28 10:42:24 +02:00
Robert Resch
bb545b1c4d Fix typos in home_plus_controls (#99188) 2023-08-28 10:15:14 +02:00
Álvaro Fernández Rojas
1683ffb830 Update aioqsw to v0.3.4 (#99183)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-08-28 09:35:29 +02:00
Eric Severance
30b815bfb8 Bump pywemo to 1.3.0 (#99172) 2023-08-28 09:34:30 +02:00
J. Nick Koston
01d29512ff Bump zeroconf to 0.86.0 (#99177)
changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.85.0...0.86.0
2023-08-28 09:33:08 +02:00
Erik Montnemery
e97e9ae55a Use freezegun in trafikverket_camera tests (#99067) 2023-08-28 09:23:32 +02:00
jan iversen
a3b526eef6 Address late modbus review (#99123)
Post review comments.
2023-08-28 09:07:31 +02:00
Erik Montnemery
4b50c95d1d Fix trafikverket_camera recorder platform setup (#99080) 2023-08-28 09:05:09 +02:00
Maciej Bieniek
579c760f53 Add missing low state for ENUM Tractive sensors (#99057)
* Add missing "low" option

* Use existing translations
2023-08-28 08:23:26 +02:00
Richard Kroegel
c686f962b5 Bump bimmer_connected to 0.14.0 (#99161)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-08-27 18:37:08 -07:00
Joost Lekkerkerker
dbb00b1725 Add code owner for Media Extractor (#99153) 2023-08-28 00:05:41 +02:00
Joost Lekkerkerker
c9905fda6d Add entity translations to Watttime (#99151) 2023-08-27 23:54:49 +02:00
J. Nick Koston
16041e5127 Bump zeroconf to 0.85.0 (#99165) 2023-08-27 16:00:19 -05:00
Michael
1bd37612af Introduce more sensors to Nextcloud (#99155) 2023-08-27 20:50:27 +02:00
Michael
0ce9d21bea Rework to use list of entity descriptions in Nextcloud integration (#99150) 2023-08-27 20:18:55 +02:00
Joost Lekkerkerker
c88672c352 Make Anova device unique id public (#99147) 2023-08-27 20:10:08 +02:00
Joost Lekkerkerker
fbe2228c3f Extract Ambient Station base entity to separate file (#99142)
* Extract Ambient Station entity to separate file

* Add to coveragerc
2023-08-27 20:09:10 +02:00
Joost Lekkerkerker
65103d4515 Improve Anova typing (#99146) 2023-08-27 20:06:19 +02:00
Joost Lekkerkerker
a48c7f67b4 Remove codeowner from airtouch4 (#99145) 2023-08-27 20:04:49 +02:00
J. Nick Koston
17fd538198 Bump zeroconf to 0.84.0 (#99138) 2023-08-27 13:00:58 -05:00
Joost Lekkerkerker
e1dc133fa1 Add device info to Watttime (#99022) 2023-08-27 19:50:36 +02:00
Joost Lekkerkerker
4394fc2897 Fix typo in AnthemAV const (#99149) 2023-08-27 19:38:12 +02:00
Michael
cc103ddbaa Split Owncloud CPU load in separate sensors (#99141)
* split cpu load values into own sensors

* apply suggestion
2023-08-27 19:34:58 +02:00
J. Nick Koston
d17ffff3e3 Retry tplink setup later if device has an unexpected mac address (#98784)
Retry tplink setup later if device has an unexpected serial

If the DHCP reservation changed and there is now a different tplink device at
the saved IP address, retry setup later to avoid cross linking devices
2023-08-27 19:00:39 +02:00
escoand
d21ee30ddf Extend Nextcloud integration (#94066) 2023-08-27 18:51:31 +02:00
J. Nick Koston
f42b8e217b Bump ulid-transform to 0.8.1 (#99139) 2023-08-27 11:32:41 -05:00
J. Nick Koston
6cd28b64e8 Bump bluetooth-data-tools 1.9.1 (#99131) 2023-08-27 10:10:00 -05:00
J. Nick Koston
6992ea9af0 Bump fnv-hash-fast to 0.4.1 (#99135) 2023-08-27 10:08:21 -05:00
Robert Svensson
5e5193eeb5 Rework UniFi Network Controller device and add software version (#99136)
Rework Network Controller device and add software version
2023-08-27 17:07:38 +02:00
Robert Svensson
71bf782b22 Improve UniFi PoE control by queueing commands together (#99114)
* Working draft without timer

* Clean up
Improve tests

* Use async_call_later
2023-08-27 16:58:48 +02:00
J. Nick Koston
20b8c5dd26 Bump home-assistant-bluetooth to 1.10.3 (#99133) 2023-08-27 09:29:17 -05:00
J. Nick Koston
842a56f5c7 Bump zeroconf to 0.83.1 (#99134) 2023-08-27 09:28:23 -05:00
J. Nick Koston
5cc49f6dd6 Bump dbus-fast to 1.94.1 (#99132) 2023-08-27 09:27:30 -05:00
Joost Lekkerkerker
b266096ae1 Use snapshot assertion for Watttime diagnostics test (#99023) 2023-08-27 09:19:15 -05:00
Joost Lekkerkerker
11cecc3f0a Use shorthand attributes for airtouch4 (#99086) 2023-08-27 09:11:45 -05:00
Joost Lekkerkerker
faed58c01b Migrate Somfy mylink to has entity name (#98947) 2023-08-27 16:09:15 +02:00
Steven Looman
045c514c18 Bump async-upnp-client to 0.35.0 (#99129) 2023-08-27 09:08:58 -05:00
Joost Lekkerkerker
6e157fef18 Add device info to Withings (#99052) 2023-08-27 16:06:08 +02:00
Joost Lekkerkerker
a73f214ead Add typing to Venstar Config flow (#99016) 2023-08-27 16:03:36 +02:00
J. Nick Koston
c087e6eab6 Revert "Bump python bsblan 0.5.14" (#99130) 2023-08-27 08:59:28 -05:00
Allen Porter
7070302001 Use climate entity built in attrs for nest climate (#99093)
* Use climate entity built in attrs for nest climate

* Update homeassistant/components/nest/climate.py

Co-authored-by: Shay Levy <levyshay1@gmail.com>

---------

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2023-08-27 14:05:17 +03:00
Rami Mosleh
2dd6b26fbc Add type hints to transmission (#99117)
* Add type hints

* Apply suggestions
2023-08-27 12:43:30 +02:00
J. Nick Koston
54cd0e8183 Add some missing typing to isy994 (#99110) 2023-08-27 12:33:00 +02:00
J. Nick Koston
0362ce92b5 Drop switchbot codeowner (#99108)
I picked up working on this integration because I wanted to make sure the new Bluetooth stack had a good test case to work out issues and did not generate unexpected breaking changes.

Since I do not use switchbot in production, I usually cannot help solve problems beyond the Bluetooth stack that is visible to HA.

While I am still happy to do code reviews here, the Bluetooth stack has matured to the point where watching for issues here is no longer helpful to maintaining the stack as the signal to noise ratio is too high
2023-08-27 09:37:27 +02:00
Robert Svensson
45efe29262 Bump aiounifi to v58 (#99103) 2023-08-26 18:27:45 -05:00
Willem-Jan van Rootselaar
a81e6d5811 Bump python bsblan 0.5.14 (#99089)
* update python-bsblan to 0.5.14

* fix test diagnostics
2023-08-26 22:13:25 +03:00
Joost Lekkerkerker
2fc728db42 Remove unused variable from Airthings BLE (#99085)
* Remove unused variable from Airthings BLE

* Remove unused variable from Airthings BLE
2023-08-26 19:42:49 +02:00
uvjustin
407aa31adc Generate Stream snapshots using next keyframe (#96991)
* Add wait_for_next_keyframe option to stream images
Add STREAM_SNAPSHOT to CameraEntityFeature
Use wait_for_next_keyframe option for snapshots using stream

* Update stream test comments

* Add generic camera snapshot test

* Get stream still images directly in camera
Remove getting stream images from generic, nest, and ONVIF
Refactor camera preferences
Add use_stream_for_stills setting to camera
Update tests

* Only attempt to get stream image if integration supports stream

* Use property instead of entity registry setting

* Split out getting stream prerequisites from stream_source in nest

* Use cached_property for rtsp live stream trait

* Make rtsp live stream trait NestCamera attribute

* Update homeassistant/components/nest/camera.py

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* Change usage of async_timeout

* Change import formatting in generic/test_camera

* Simplify Nest camera property initialization

---------

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2023-08-26 10:39:40 -07:00
J. Nick Koston
e003903bc5 Bump zeroconf to 0.83.0 (#99091) 2023-08-26 12:26:12 -05:00
Ville Skyttä
c287bd1a3b Remove pylint configs flagged by useless-suppression (#99081) 2023-08-26 17:46:03 +03:00
tronikos
a25a7ebbeb Bump opower to 0.0.32 (#99079) 2023-08-26 15:39:48 +02:00
Erik Montnemery
d74a0fd6dd Use freezegun in additional fronius tests (#99066) 2023-08-26 09:11:42 +02:00
Marc Mueller
6f43dd1c14 Adjust netatmo test (#99071) 2023-08-26 07:35:10 +02:00
Allen Porter
8d9c5a61ec Update calendar handle state updates at start/end of active/upcoming event (#98037)
* Update calendar handle state updates at start/end of active/upcoming event

* Use async_write_ha_state intercept state updates

Remove unrelated changes and whitespace.

* Revert unnecessary changes

* Move demo calendar to config entries to cleanup event timers

* Fix docs on calendars

* Move method inside from PR feedback
2023-08-25 18:32:20 -07:00
Marc Mueller
544d6b05a5 Replace mock_coro with AsyncMock (#99014)
* Replace mock_coro with AsyncMock

* Remove mock_coro test helper function

* Remove redundant AsyncMock
2023-08-25 22:54:55 +02:00
Joost Lekkerkerker
57144a6064 Use entity descriptions in Switcher (#98958) 2023-08-25 21:12:21 +03:00
Erik Montnemery
3a71e21d6a Add and improve comments about staggering of event listeners (#99058) 2023-08-25 19:47:13 +02:00
Michael Hansen
8768c39021 Wake word cleanup (#98652)
* Make arguments for async_pipeline_from_audio_stream keyword-only after hass

* Use a bytearray ring buffer

* Move generator outside

* Move stt stream generator outside

* Clean up execute

* Refactor VAD to use bytearray

* More tests

* Refactor chunk_samples to be more correct and robust

* Change AudioBuffer to use append instead of setitem

* Cleanup

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-08-25 13:28:48 -04:00
Jan Bouwhuis
49897341ba Add lawn_mower platform to MQTT (#98831)
* Add MQTT lawn_mower platform

* Use separate command topics and templates

* Remove unrelated change
2023-08-25 17:56:22 +02:00
Erik Montnemery
27f7399071 Modernize accuweather weather (#99001) 2023-08-25 16:46:23 +02:00
Jan-Philipp Benecke
f96c1516f8 Use snapshot assertion for gios diagnostics test (#98984) 2023-08-25 16:46:10 +02:00
Erik Montnemery
b0952bc54a Use freezegun in shelly tests (#99042) 2023-08-25 09:06:43 -05:00
Erik Montnemery
452caee41a Use freezegun in pvpc_hourly_pricing tests (#99040) 2023-08-25 09:06:14 -05:00
Erik Montnemery
c827af5826 Use freezegun in uptimerobot tests (#99046) 2023-08-25 09:05:44 -05:00
Erik Montnemery
0d3663c52a Use freezegun in fronius tests (#99030) 2023-08-25 09:05:16 -05:00
Erik Montnemery
5617a738c0 Use freezegun in airly tests (#99028) 2023-08-25 09:04:51 -05:00
Erik Montnemery
dd39e8fe64 Use freezegun in hue tests (#99033) 2023-08-25 09:04:28 -05:00
Erik Montnemery
3b07181d87 Use freezegun in fully_kiosk tests (#99031) 2023-08-25 09:03:51 -05:00
Erik Montnemery
1f9c180233 Use freezegun in iotawatt tests (#99034) 2023-08-25 09:03:29 -05:00
Erik Montnemery
e6728f2f19 Use freezegun in kraken tests (#99035) 2023-08-25 09:03:12 -05:00
Erik Montnemery
cb8842b1fb Use freezegun in landisgyr_heat_meter tests (#99037) 2023-08-25 09:02:47 -05:00
Erik Montnemery
75743ed947 Use freezegun in here_travel_time tests (#99032) 2023-08-25 09:02:25 -05:00
Erik Montnemery
676f59fded Use freezegun in trafikverket_ferry tests (#99045) 2023-08-25 09:02:07 -05:00
Erik Montnemery
81aa35a9ce Use freezegun in version tests (#99047) 2023-08-25 09:01:48 -05:00
Erik Montnemery
f99743bedb Use freezegun in tomorrowio tests (#99044) 2023-08-25 09:01:28 -05:00
Erik Montnemery
f18a277cac Use freezegun in ws66i tests (#99049) 2023-08-25 09:00:50 -05:00
Erik Montnemery
ee073e9e3e Use freezegun in lacrosse_view tests (#99036) 2023-08-25 09:00:30 -05:00
Erik Montnemery
e0af9de877 Use freezegun in motioneye tests (#99038) 2023-08-25 09:00:11 -05:00
Erik Montnemery
943db9e0d5 Use freezegun in devolo_home_network tests (#99029) 2023-08-25 08:59:52 -05:00
Erik Montnemery
346674a1a8 Use freezegun in wled tests (#99048) 2023-08-25 08:59:30 -05:00
Erik Montnemery
65d555b138 Use freezegun in qnap_qsw tests (#99041) 2023-08-25 08:59:08 -05:00
Erik Montnemery
64306ec053 Use freezegun in solaredge tests (#99043) 2023-08-25 08:58:52 -05:00
Erik Montnemery
8161810159 Use freezegun in opensky tests (#99039) 2023-08-25 14:03:51 +02:00
Jan-Philipp Benecke
4fb00e448c Use snapshot assertion for rdw diagnostics test (#99027) 2023-08-25 13:40:08 +02:00
J. Nick Koston
d79e8b7a02 Avoid fetching state and charging state multiple time for hkc icon (#98995) 2023-08-25 06:35:31 -05:00
Álvaro Fernández Rojas
3f2d2a85b7 Update AEMET-OpenData to v0.4.0 (#99015)
* Update AEMET-OpenData to v0.4.0

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Trigger Github CI

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-08-25 12:53:26 +02:00
Marc Mueller
3ebd7d2fd1 Fix asyncio DeprecationWarning [3.12] (#98989)
* Fix asyncio DeprecationWarning [3.12]

* Use AsyncMock

* Rewrite ffmpeg tests

* Remove test classes

* Rename test file
2023-08-25 12:27:23 +02:00
starkillerOG
bab7d289a6 Reolink fix unknown value in select enums (#99012) 2023-08-25 11:42:55 +02:00
Joost Lekkerkerker
da9fc495ca Improve SRP Energy coordinator (#99010)
* Improve SRP Energy coordinator

* Use time instead of asyncio
2023-08-25 11:19:40 +02:00
Joost Lekkerkerker
11c5e3534a Add unique id to srp energy entity (#99008) 2023-08-25 10:52:07 +02:00
Joost Lekkerkerker
475fd77019 Extract SRP Energy coordinator to separate file (#98956) 2023-08-25 10:33:02 +02:00
J. Nick Koston
3ebf96143a Improve performance of bluetooth coordinators (#98997) 2023-08-25 10:31:43 +02:00
Niels Perfors
c2713f0aed Upgrade Verisure to 2.6.6 (#98258) 2023-08-25 10:27:35 +02:00
Erik Montnemery
48b6b1c11a Modernize openweathermap weather (#99002) 2023-08-25 10:25:03 +02:00
dependabot[bot]
07494f129c Bump actions/checkout from 3.5.3 to 3.6.0 (#99003)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.5.3 to 3.6.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3.5.3...v3.6.0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-25 10:18:43 +02:00
Ville Skyttä
e7b6037419 Remove unnnecessary pylint configs from components [e-l]* (#99004) 2023-08-25 09:46:34 +02:00
Allen Porter
960d66e168 Bump ical to 5.0.1 (#98998) 2023-08-25 09:43:11 +02:00
Erik Montnemery
3e02fb1f07 Add preview support to all groups (#98951) 2023-08-25 08:59:33 +02:00
Aaron Bach
a741298461 Bump simplisafe-python to 2023.08.0 (#98991) 2023-08-24 21:11:58 -05:00
Marc Mueller
72e6f79086 Replace remaining utcnow calls + add ruff check (#97964) 2023-08-25 03:23:43 +02:00
Marty Sun
588db501fb Add new integration Yardian (#97326)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-08-24 17:48:49 -05:00
Jan-Philipp Benecke
3bcd1d5a1a Use snapshot assertion for iqvia diagnostics test (#98983) 2023-08-24 23:26:21 +02:00
Jan-Philipp Benecke
4d8941d4b7 Use snapshot assertion for onvif diagnostics test (#98982) 2023-08-24 22:40:45 +02:00
Joost Lekkerkerker
54ed8fc914 Use device class translations for 1-wire (#98813) 2023-08-24 22:19:29 +02:00
Joost Lekkerkerker
d7adc2621d Migrate Life360 to has entity name (#98796) 2023-08-24 22:03:26 +02:00
Michael Arthur
b03ffe6a6a Electric Kiwi: Fix time for installations in UTC (#97881) 2023-08-24 21:57:52 +02:00
mkmer
f2c475cf1b Bump aiosomecomfort to 0.0.17 (#98978)
* Clean up imports
Add refresh after login in update

* Bump somecomfort 0.0.17
Separate Somecomfort error to unauthorized

* Add tests

* Run Black format
2023-08-24 21:13:42 +02:00
Joost Lekkerkerker
417fd0838a Migrate Snooz to has entity name (#98940) 2023-08-24 21:05:00 +02:00
Jan Bouwhuis
948b34b045 Do not force update mqtt device_tracker (#98838) 2023-08-24 20:09:14 +02:00
Joost Lekkerkerker
a5cced1da9 Add device to Tile (#98964) 2023-08-24 20:07:02 +02:00
Joost Lekkerkerker
7575ffa24e Add entity translations to Tankerkoenig (#98961) 2023-08-24 19:59:34 +02:00
Joost Lekkerkerker
480db1f1e6 Migrate Squeezebox to has entity name (#98948) 2023-08-24 19:58:54 +02:00
Joost Lekkerkerker
be78169065 Add entity translations to Risco (#98921) 2023-08-24 19:56:02 +02:00
Joost Lekkerkerker
969063ccf8 Use shorthand attributes for SRP Energy (#98953) 2023-08-24 19:54:49 +02:00
Erik Montnemery
2066cf6b31 Remove group_type from group preview events (#98952) 2023-08-24 19:54:04 +02:00
Joost Lekkerkerker
998a390da5 Use device class in TPLink Omada Update entity (#98971) 2023-08-24 19:53:09 +02:00
Marc Mueller
089f76099d Fix stream test aiohttp DeprecationWarning (#98962) 2023-08-24 19:50:25 +02:00
Joost Lekkerkerker
7d35dcfa65 Make Sabnzbd entity translation clearer (#98938) 2023-08-24 19:49:53 +02:00
J. Nick Koston
53eb4d0ead Bump dbus-fast to 1.94.0 (#98973) 2023-08-24 11:10:38 -05:00
Joost Lekkerkerker
4e049f9bed Use snapshot assertion in Tile diagnostic test (#98965) 2023-08-24 17:11:24 +02:00
Joost Lekkerkerker
d300f2d0cc Remove default model from upcloud (#98972) 2023-08-24 16:39:14 +02:00
Ville Skyttä
9da192c752 Avoid use of datetime.utc* methods deprecated in Python 3.12 (#93684)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2023-08-24 16:38:22 +02:00
G Johansson
61c17291fb Move TemplateEntity to template (#98957)
* Move TemplateEntity to template

* Rename template_entity in helpers
2023-08-24 15:37:04 +02:00
J. Nick Koston
99e97782b6 Improve performance of abort_entries_match (#98932)
* Improve performance of abort_entries_match

In #90406 a ChainMap was added which called __iter__
and __contains__ which ends up creating temp dicts
for matching

174e9da083/Lib/collections/__init__.py (L1022)

We can avoid this by removing the ChainMap since there
are only two mappings to match on.

This also means options no longer obscures data

* adjust comment
2023-08-24 15:34:45 +02:00
Franck Nijhof
7548c4aced 2023.8.4 (#98955) 2023-08-24 13:47:32 +02:00
Erik Montnemery
b145352bbb Modernize meteo_france weather (#98022)
* Modernize meteofrance weather

* Remove options flow

* Remove unused constant

* Format code

---------

Co-authored-by: Quentin POLLET <polletquentin74@me.com>
2023-08-24 13:44:43 +02:00
Franck Nijhof
0d013767ee Add support for event groups (#98463)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-24 12:49:38 +02:00
Joost Lekkerkerker
87dd18cc2e Remove obsolete yaml check in SQL (#98950)
* Remove unique id check from SQL

* Remove unique id check from SQL
2023-08-24 12:35:11 +02:00
G Johansson
b69e8fda77 Remove TemplateSensor from the template_entity helper (#98945)
Clean off TemplateSensor
2023-08-24 12:14:39 +02:00
Franck Nijhof
9bc4866bd2 Bumped version to 2023.8.4 2023-08-24 12:12:41 +02:00
starkillerOG
e1b005128d Bump reolink-aio to 0.7.8 (#98942) 2023-08-24 12:12:28 +02:00
Nathan Spencer
c8b5191984 Bump pylitterbot to 2023.4.5 (#98854) 2023-08-24 12:12:25 +02:00
Nathan Spencer
63a687c37f Bump pylitterbot to 2023.4.4 (#98414) 2023-08-24 12:12:19 +02:00
tronikos
119bc7d847 Bump androidtvremote2 to 0.0.14 (#98801) 2023-08-24 12:10:34 +02:00
Franck Nijhof
e208e7da91 Remove repair issue for MQTT discovered items (#98768) 2023-08-24 12:09:58 +02:00
Florent Thiery
ce8eebebc5 Reduce Freebox router Raid warning to one occurence (#98740)
* consider Freebox router does not support Raid if the first enumeration raised an http error, fixes #98274

* add router name to warning message

* reduce log level to info, remove details
2023-08-24 12:08:05 +02:00
tronikos
dc6e752adf Bump opower to 0.0.31 (#98716) 2023-08-24 12:07:34 +02:00
jan iversen
ebdf48e41f Correct modbus swap/datatype error message (#98698) 2023-08-24 12:06:58 +02:00
tronikos
cdb088327c Bump opowerto 0.0.30 (#98660) 2023-08-24 12:06:23 +02:00
jan iversen
e1eb1cf2fb modbus: slave is allowed with custom (#98644) 2023-08-24 12:05:08 +02:00
Markus Ressel
bd0fe63dc8 Fix octoprint down every two minutes (#90001) 2023-08-24 12:05:02 +02:00
J. Nick Koston
849cfa3af8 Retry yeelight setup later if the wrong device is found (#98884) 2023-08-24 12:04:00 +02:00
starkillerOG
9a0507af3c Bump reolink-aio to 0.7.8 (#98942) 2023-08-24 12:01:22 +02:00
Erik Montnemery
d282ba6bac Use a single WS command for group preview (#98903)
* Use a single WS command for group preview

* Fix tests
2023-08-24 11:59:24 +02:00
G Johansson
31a8a62165 SNMP sensor refactor to ManualTriggerSensorEntity (#98630)
* SNMP to ManualTriggerSensorEntity

* Mods
2023-08-24 11:45:14 +02:00
G Johansson
3b31c58eba Add coordinator test for Yale Smart Living (#98638) 2023-08-24 11:44:04 +02:00
Joost Lekkerkerker
577f545113 Add entity translations to Rachio (#98917) 2023-08-24 11:43:10 +02:00
Erik Montnemery
c47983621c Teach CoordinatorWeatherEntity about multiple coordinators (#98830) 2023-08-24 11:28:20 +02:00
Joost Lekkerkerker
f395147f7c Move platform specifics out of Solaredge const (#98941) 2023-08-24 11:27:24 +02:00
Joost Lekkerkerker
f44215d286 Use snapshot assertion for Brother diagnostics test (#98904) 2023-08-24 11:19:16 +02:00
Joost Lekkerkerker
0a1ad8a119 Add entity translations to Ridwell (#98918) 2023-08-24 10:42:05 +02:00
G Johansson
147351be6e Add Trafikverket Camera integration (#79873) 2023-08-24 10:39:22 +02:00
Robert Resch
7926c5cea9 Add repair issue about the deprecation of home plus control (#98828)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-08-24 10:33:06 +02:00
Jan Bouwhuis
8b232047c4 Add origin info support for MQTT discovered items (#98782)
* Add integration info support for MQTT discovery.

* Moving logs to discovery

* Revert adding class property

* Rename to origin

* Follow up comments
2023-08-24 09:50:39 +02:00
Joost Lekkerkerker
fe164d06a7 Add entity translations to Sabnzbd (#98923) 2023-08-24 09:23:48 +02:00
Joost Lekkerkerker
602a80c35c Use snapshot assertion for EasyEnergy diagnostics test (#98909) 2023-08-24 09:19:36 +02:00
Joakim Sørensen
8d576c900d Bump hass-nabucasa from 0.69.0 to 0.70.0 (#98935) 2023-08-24 09:18:25 +02:00
Joost Lekkerkerker
14f80560c0 Use snapshot assertion for Ridwell diagnostics test (#98919) 2023-08-24 08:14:46 +02:00
J. Nick Koston
46a0f84101 Bump bluetooth-data-tools to 1.9.0 (#98927) 2023-08-23 20:18:21 -05:00
Ville Skyttä
b51c0f6ddc Remove unnnecessary pylint configs from components [s-z]* (#98925) 2023-08-24 01:25:32 +02:00
Joost Lekkerkerker
c39f6b3bea Use snapshot assertion for Coinbase diagnostics test (#98906) 2023-08-24 01:23:31 +02:00
Joost Lekkerkerker
faa4489f4c Use snapshot assertion for Co2signal diagnostics test (#98905) 2023-08-24 01:18:49 +02:00
Jan Bouwhuis
a1307e117d Add additional debug logging for imap (#98877) 2023-08-24 01:02:52 +02:00
Joost Lekkerkerker
f1fb28aad5 Use snapshot assertion for ESPHome diagnostics test (#98913) 2023-08-24 01:01:58 +02:00
Joost Lekkerkerker
a539d851cc Use snapshot assertion for Enphase Envoy diagnostics test (#98910) 2023-08-23 17:57:55 -05:00
Joost Lekkerkerker
360d2de1e1 Use snapshot assertion for Cpuspeed diagnostics test (#98907) 2023-08-24 00:57:27 +02:00
Ville Skyttä
34b47a2597 Remove unnnecessary pylint configs from components [m-r]* (#98924) 2023-08-24 00:56:50 +02:00
Ville Skyttä
3b4774d9ed Remove unnnecessary pylint configs from components/[a-d]* (#98911) 2023-08-24 00:54:02 +02:00
Joost Lekkerkerker
e471110288 Use snapshot assertion for August diagnostics test (#98901) 2023-08-23 17:52:04 -05:00
Klaas Schoute
d8f0c090cf Energyzero - Add sensor entity to pick best hours (#98916)
* Add entity to pick best hours

* Add entity also to diagnostics

* Remove string translation that doesn't exists

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-23 23:02:19 +02:00
Joakim Plate
816f834807 Add moisture sensors entities for gardena (#98282)
Add support for soil moisture sensors for gardena
2023-08-23 22:46:34 +02:00
Klaas Schoute
364d872a47 Bump energyzero to v0.5.0 (#98914) 2023-08-23 22:43:08 +02:00
Joost Lekkerkerker
f83c335409 Use snapshot assertion for Environment Canada diagnostics test (#98912) 2023-08-23 22:21:24 +02:00
Joost Lekkerkerker
1f0e8f93c5 Use snapshot assertion for Deconz diagnostics test (#98908) 2023-08-23 21:37:03 +02:00
Joost Lekkerkerker
82e92cdf82 Use snapshot assertion for Axis diagnostics test (#98902) 2023-08-23 21:36:18 +02:00
J. Nick Koston
e1db3ecf52 Retry rainmachine setup later if the wrong device is found (#98888) 2023-08-23 14:21:18 -05:00
Jan-Philipp Benecke
4aa7fb0e35 Use snapshot assertion for Discovergy diagnostics test (#98871)
Add snapshot assertion to Discovergy
2023-08-23 21:02:11 +02:00
Jean-François Roy
e96ce3f520 baf: Raise ConfigEntryNotReady when the device has a mismatched UUID (#98898) 2023-08-23 13:34:38 -05:00
Jan-Philipp Benecke
39992c2ccc Migrate BSB-Lan diagnostics test to snapshot assertion (#98899)
Migrate bsblan diagnostics test to snapshot assertion
2023-08-23 20:20:08 +02:00
Chris Talkington
22c1ddef71 Enable strict typing for ipp (#98792)
enable strict typing for ipp
2023-08-23 12:45:49 -05:00
Erik Montnemery
3c10d0e1f7 Deduplicate entities derived from GroupEntity (#98893) 2023-08-23 19:20:58 +02:00
Erik Montnemery
ee1b6a60a0 Deduplicate group preview tests (#98883) 2023-08-23 19:13:24 +02:00
Michael Hansen
4a417c7dcc Wake word entity state/category fix (#98886)
* Only change wake word entity state on detection

* Wake word entity is diagnostic
2023-08-23 12:11:14 -04:00
J. Nick Koston
ba9c969d91 Retry lookin setup later if the wrong device is found (#98881) 2023-08-23 10:21:38 -05:00
J. Nick Koston
b884dafa81 Retry enphase_envoy setup later if the wrong device is found (#98882) 2023-08-23 10:08:47 -05:00
Chris Talkington
b854551c77 Use entity descriptions for IPP (#93888) 2023-08-23 09:34:21 -05:00
Franck Nijhof
39c0689fe6 Revert "Add state classes to adguard sensors" (#98880) 2023-08-23 16:26:20 +02:00
Dennis
57990c7597 Add state classes to adguard sensors (#98577) 2023-08-23 16:09:07 +02:00
Erik Montnemery
6be20b5408 Add preview support to binary sensor group (#98872) 2023-08-23 14:24:48 +02:00
Erik Montnemery
e3b945a8d0 Don't allow numerical sensor state to be NaN or inf (#98110) 2023-08-23 14:16:40 +02:00
Erik Montnemery
3b16a3e1e0 Small typing fix in binary_sensor group (#98874) 2023-08-23 14:04:06 +02:00
Nathan Spencer
0aeeac5c42 Bump pylitterbot to 2023.4.5 (#98854) 2023-08-23 12:19:25 +02:00
Marc Mueller
480c34180e Fix forked_daapd test RuntimeWarning (#98864) 2023-08-23 12:17:32 +02:00
Joost Lekkerkerker
4f9c6351b0 Use constructor in Freebox config flow (#98870)
Create data object in init
2023-08-23 12:08:01 +02:00
Joost Lekkerkerker
5b3c60527a Clean up Freebox config flow (#97347)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-08-23 11:52:28 +02:00
Joost Lekkerkerker
a2b0149677 Remove config name from IPMA config flow (#98576) 2023-08-23 11:35:04 +02:00
Barry Williams
918d822ec7 Refactor openhome media player getters and attrs (#98690) 2023-08-23 11:31:46 +02:00
Erik Montnemery
b143fe285f Enable code coverage for metoffice sensor + weather (#98863) 2023-08-23 12:29:03 +03:00
Marc Mueller
5ae366957f Fix imap test RuntimeWarning (#98865) 2023-08-23 10:52:19 +02:00
Álvaro Fernández Rojas
6be47b1fbd Fix Airzone Cloud diagnostics (#98857)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-08-23 09:20:53 +02:00
Joost Lekkerkerker
26d7e9958f Remove YAML solution from Open Exchange Rates (#98815) 2023-08-23 08:11:28 +02:00
Charles Garwood
65691fffd6 Change Enphase dry contact relay binary_sensor to switch (#98467)
* Switch relay status from binary_sensor to switch

* docstring

* Bump pyenphase to 1.7.1

* review comments pt1

* review comments pt2

* Mutate data in lib instead of HA

* Bump pyenphase to 1.8.1
2023-08-22 21:28:39 -04:00
Joost Lekkerkerker
c4ae9ae430 Remove data rate converting code from NZBGet (#98806) 2023-08-22 23:23:13 +02:00
Álvaro Fernández Rojas
30628766ae Update AEMET-OpenData to v0.3.0 (#98810) 2023-08-22 23:21:42 +02:00
Ville Skyttä
6399d74c15 Remove unnnecessary pylint configs from core (#98704) 2023-08-22 23:12:12 +02:00
Joost Lekkerkerker
e9af99e469 Add entity translations to PECO (#98847) 2023-08-22 23:10:02 +02:00
Joost Lekkerkerker
2ff5d6290f Migrate Prosegur to has entity name (#98845) 2023-08-22 23:09:18 +02:00
starkillerOG
ade1d33367 Add entity name translations for Reolink (#98589)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-22 23:07:31 +02:00
J. Nick Koston
49d73441bf Abort ESPHome connection when both name and mac address do not match (#98787) 2023-08-22 23:02:23 +02:00
Álvaro Fernández Rojas
99b5c4932f Add hot water sensor support to Airzone (#98500)
* airzone: sensors: add hot water support

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone: sensor: dhw: enable _attr_has_entity_name

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Add requested changes

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-08-22 22:48:05 +02:00
Álvaro Fernández Rojas
af915f1425 Add Airzone Cloud System binary sensors (#95121)
* airzone_cloud: add System binary sensors

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone-cloud: add error example

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-08-22 22:41:03 +02:00
Jan Bouwhuis
0f58007e97 Deprecate aux heat for mqtt climate (#98666) 2023-08-22 22:39:55 +02:00
Maximilian
d179f8b47d Add filter for affected areas in NINA warnings (#97053)
* Add affected areas to warnings

* Update config flow

* Remove option from config_flow

* Add regex check

* Remove regex check
2023-08-22 22:23:34 +02:00
Joost Lekkerkerker
b65e3ddc99 Add entity translations to OVO Energy (#98835) 2023-08-22 22:21:20 +02:00
Joost Lekkerkerker
afc3899a1b Add device info to peco (#98836) 2023-08-22 22:16:30 +02:00
Joost Lekkerkerker
f10a5b7ee8 Add entity translations to Dexcom (#98795) 2023-08-22 22:09:18 +02:00
Jesse Hills
57bc8ae68e Set assist pipeline binary sensor to true only when stt-start is received (#98844) 2023-08-23 08:00:38 +12:00
J. Nick Koston
35a8385d9d Bump zeroconf to 0.82.1 (#98839) 2023-08-22 22:00:25 +02:00
Joost Lekkerkerker
0ab0901f0f Add entity translations to Powerwall (#98843) 2023-08-22 21:58:57 +02:00
Shay Levy
0d55718117 Downgrade Debouncer call ignored log message (#98840) 2023-08-22 14:42:33 -05:00
Joost Lekkerkerker
342e55409a Add entity translations to OpenGarage (#98834) 2023-08-22 19:55:47 +02:00
Marc Mueller
3f2c03fe77 Add input option to skip coverage [ci] (#98821) 2023-08-22 19:53:55 +02:00
mkmer
daade26466 Bump aiosomecomfort to 0.0.16 in Honeywell (#98824)
bump aiosomecomfort to 0.0.16
2023-08-22 19:35:57 +03:00
Joost Lekkerkerker
19576e6c95 Add options flow to OpenSky (#98177) 2023-08-22 18:06:19 +02:00
starkillerOG
59900a49e2 Add Reolink AI detection delay time (#98398) 2023-08-22 18:02:44 +02:00
J. Nick Koston
10b3cc4dd6 Bump zeroconf to 0.81.0 (#98826) 2023-08-22 10:58:29 -05:00
Michael Hansen
07884026c6 Detect wake word services in hassio discovery (#98827) 2023-08-22 11:31:09 -04:00
J. Nick Koston
d0fc0aea40 Retry lifx setup later if device has an unexpected serial (#98783) 2023-08-22 10:17:15 -05:00
Robert Resch
426fd62ee3 Adjust hassfest to require translations for core services (#98814)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-08-22 17:05:53 +02:00
Joost Lekkerkerker
890efd58e0 Add entity translations to Roku (#96083)
* Add entity translations to Roku

* Add entity translations to Roku
2023-08-22 16:59:56 +02:00
Shay Levy
406f06f0fc Abort Shelly setup if MAC address mismatch (#98807) 2023-08-22 07:41:50 -05:00
Joost Lekkerkerker
097c7fbfef Add entity translations to Nexia (#98803) 2023-08-22 07:41:15 -05:00
Joost Lekkerkerker
09efd1c972 Migrate Oncue to has entity name (#98812) 2023-08-22 07:37:33 -05:00
Ernst Klamer
1369874348 Add text sensor to BTHome (#98355) 2023-08-22 07:34:26 -05:00
tronikos
32d8d65add Bump androidtvremote2 to 0.0.14 (#98801) 2023-08-22 12:28:19 +02:00
Joost Lekkerkerker
08707b4abd Add entity translations to Logi circle (#98797) 2023-08-22 12:24:23 +02:00
Joost Lekkerkerker
5ad97827cf Use snapshot assertion for Airly diagnostics (#98726) 2023-08-22 12:17:43 +02:00
Maciej Bieniek
17050a3286 Add support for Shelly Gas Valve addon (#98705)
* Support Gas Valve

* Treat opening and closing as open

* Use set_state()

* Change entity icon and name

* Add valve state sensor

* Closing == closed

* Add translations for valve state entity

* Valve state -> Valve status

* Add tests; use control_result

* Fix mypy error

* Add missing "valve" to the Mock

* Improve docstrings

* Fix climate platform tests

* Increase test coverage

* Add mising return
2023-08-22 11:53:52 +03:00
Joost Lekkerkerker
c025244ac1 Add entity translations to Modem callerID (#98798) 2023-08-22 10:34:39 +02:00
Erik Montnemery
b885dfa5a8 Add preview to sensor group config and option flows (#83638) 2023-08-22 10:29:16 +02:00
Erik Montnemery
52b1e34af0 Migrate openweathermap weather to CoordinatorEntity (#98799) 2023-08-22 10:27:34 +02:00
Florian Bachmann
00b75ce58d Allows the supervisor to send a session's user to addon with header X-Remote-User (#88472)
* Working draft for x-remote-user

* Adds comment

* Submits user id instead of its name

* Move lines out of try-catch block

* Updates payload attribute

* Removes unnecessary user data from user info API

* revert changes
2023-08-22 10:14:21 +02:00
Erik Montnemery
68e2809c36 Modernize nws weather (#98748) 2023-08-22 10:01:17 +02:00
Erik Montnemery
79811984f0 Modernize open_meteo weather (#98504) 2023-08-22 09:43:33 +02:00
Joost Lekkerkerker
3e56d27bf7 Add device info to FOSCAM (#98167) 2023-08-22 09:37:37 +02:00
starkillerOG
2a78d7fa2d Add Reolink zoom in/out buttons (#97638) 2023-08-22 09:33:32 +02:00
Joost Lekkerkerker
6f7c3c949c Add snapshot assertion to Airvisual Pro (#98759) 2023-08-22 09:31:31 +02:00
Joost Lekkerkerker
d4b49726f4 Add snapshot assertion to Airzone cloud (#98761) 2023-08-22 09:30:43 +02:00
Joost Lekkerkerker
a89c0c944a Add device info to Life360 (#98772) 2023-08-22 09:28:47 +02:00
Joost Lekkerkerker
a0a06f16a7 Add entity translations to Bosch SHC (#98750) 2023-08-22 09:26:49 +02:00
Chris Talkington
2e0038b981 Require device id for Roku entities (#98734) 2023-08-22 09:22:46 +02:00
Joost Lekkerkerker
0f2b8570d2 Add device to Dexcom (#98574) 2023-08-22 09:20:30 +02:00
Chris Talkington
c93fcc37c4 Update pyipp to 0.14.4 (#98791)
* update pyipp to 0.14.4

* hassfest
2023-08-22 07:48:48 +02:00
Erik Montnemery
3e7ec88703 Add CoordinatorWeatherEntity (#98777) 2023-08-21 23:10:16 +02:00
jan iversen
92258b8e6f Correct modbus swap/datatype error message (#98698) 2023-08-21 22:55:50 +02:00
Erik Montnemery
4a03f6482a Set thread dataset's preferred router on add if not set (#98639) 2023-08-21 22:46:15 +02:00
Klaas Schoute
07fb47b849 Use VehicleType enum for Garages Amsterdam integration (#98780) 2023-08-21 22:45:29 +02:00
Joost Lekkerkerker
52cabed98f Migrate LastFM to has entity name (#98766) 2023-08-21 22:31:04 +02:00
Joost Lekkerkerker
53c118f652 Migrate LG Soundbar to has entity name (#98773) 2023-08-21 22:29:09 +02:00
Joost Lekkerkerker
5a835e703f Add entity translations to Honeywell Lyric (#98775) 2023-08-21 22:28:20 +02:00
Maciej Bieniek
f97f33fff7 Only create an issue if push updates fail 5 times in a row for Shelly gen1 devices (#98747) 2023-08-21 22:27:36 +02:00
J. Nick Koston
9123e13774 Remove unused code in doorbird (#98779) 2023-08-21 22:23:16 +02:00
J. Nick Koston
d582e60a6e Enable strict typing for doorbird (#98778) 2023-08-21 22:22:25 +02:00
Robert Svensson
d0d160f11c Unifi add port forward control to switch platform (#98309) 2023-08-21 22:01:44 +02:00
Dennis
78f0d8bc9c Add/Modify tomorrow.io sensor entity icons (#98648) 2023-08-21 21:59:56 +02:00
Joakim Plate
41db088f5d Update to 1.3.0 of gardena bluetooth (#98776) 2023-08-21 21:58:21 +02:00
Joost Lekkerkerker
30d3df2d96 Add morning and evening damping to Forecast solar (#98721)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-08-21 21:43:09 +02:00
Joost Lekkerkerker
a1d554d1cb Add entity translations to Hyperion (#98635) 2023-08-21 21:40:01 +02:00
Joost Lekkerkerker
baf32658e5 Set battery device class in Logi Circle (#98774) 2023-08-21 21:30:23 +02:00
Guido Schmitz
365dc47740 Add update platform to devolo Home Network (#86003)
* Add update platform

* Take care of progress

* Adapt to recent development

* Only add platform if supported

* Avoid unneeded line change

* Fix ruff in tests

* Handle update failures like in button platform

* Apply suggestions

* Fix tests

* Remove unused logger
2023-08-21 20:59:58 +02:00
Franck Nijhof
c39fc0766e Remove repair issue for MQTT discovered items (#98768) 2023-08-21 20:03:19 +02:00
Joost Lekkerkerker
3eb2b7010d Add device info to LG Soundbar (#98771) 2023-08-21 19:54:17 +02:00
Joost Lekkerkerker
07ffbe82c1 Add snapshot assertion to Ambient Station (#98764) 2023-08-21 19:46:36 +02:00
Marc Mueller
2369964f27 Update aws boto dependencies (#98619) 2023-08-21 19:40:21 +02:00
Ville Skyttä
2399cd283a Python 3.10 support cleanups (#98640) 2023-08-21 19:14:07 +02:00
G Johansson
faf0f5f19b Fix default values in Scrape (#98755) 2023-08-21 19:10:35 +02:00
Joost Lekkerkerker
2d46b589b9 Add entity translations to Kraken (#98765) 2023-08-21 19:09:51 +02:00
J. Nick Koston
6023ee0cc4 Bump dbus-fast to 1.93.0 (#98758) 2023-08-21 19:08:26 +02:00
Martin Hjelmare
91df9434d0 Use storage helper in feedreader (#98754) 2023-08-21 18:21:34 +02:00
Jesse Hills
a42d975c49 ESPHome Wake Word support (#98544)
* ESPHome Wake Word support

* Remove all vad code from esphome integration

* Catch exception when no wake word provider found

* Remove import

* Remove esphome vad tests

* Add tests

* More tests
2023-08-21 12:13:02 -04:00
Florent Thiery
c86565b9bc Reduce Freebox router Raid warning to one occurence (#98740)
* consider Freebox router does not support Raid if the first enumeration raised an http error, fixes #98274

* add router name to warning message

* reduce log level to info, remove details
2023-08-21 17:45:15 +02:00
ZigStar
af0e48081f Add ZigStar UZG-01 ZHA zeroconf autodiscovery (#98657)
ZigStar UZG-01 ZHA Zeconf Autodiscovery
2023-08-21 11:28:42 -04:00
Marco Garzola
b8086f3c21 Map heatercooler rotation speed as 3 level fan speed in homekit controller (#98291)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-08-21 10:10:24 -05:00
G Johansson
207e3f90a6 Modernize template weather (#98064)
* Modernize template weather

* mods

* adds templates

* Fixes

* review comments

* more comments

* Fix validator

* Tests

* Mods

* Fix ruff
2023-08-21 15:48:14 +02:00
G Johansson
d9906b63b7 Add payload to Scrape config flow (#98412)
Payload to config flow
2023-08-21 15:47:11 +02:00
J. Nick Koston
00904a107d Bump yalexs to 1.8.0 (#98751) 2023-08-21 08:44:45 -05:00
Joost Lekkerkerker
4518dad83b Use snapshot assertion for Airnow diagnostics (#98727) 2023-08-21 14:19:21 +02:00
Álvaro Fernández Rojas
4a7088a996 Update aioairzone to v0.6.7 (#98744) 2023-08-21 14:10:41 +02:00
Joost Lekkerkerker
604964d5f0 Use shorthand attributes in GDACS (#98173) 2023-08-21 14:02:29 +02:00
G Johansson
fb56dd0615 Fix LiteJet import config issue (#97679) 2023-08-21 12:20:48 +02:00
Michael Arthur
82b3ced4f1 Add lawnmower entity (#93623)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-21 12:19:55 +02:00
Joost Lekkerkerker
538de6d1f3 Introduce base class for Neato (#98071)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-08-21 12:04:12 +02:00
G Johansson
1a4fb90897 Clean off unnecessary logger in Workday (#98741) 2023-08-21 12:03:01 +02:00
Jakob Schlyter
180dd3d11a Bump pyspcwebgw to 0.7.0 (#98593) 2023-08-21 12:01:49 +02:00
Joost Lekkerkerker
9c54c4abf5 Use snapshot assertion for KNX diagnostics (#98724)
Co-authored-by: farmio <farmio@alphart.net>
2023-08-21 11:48:55 +02:00
Chris Talkington
1fca665b77 Use snapshot assertion for Roku diagnostics (#98731)
* use snapshot assertion for Roku diagnostics

* Delete roku3-diagnostics-data.json

* fix state time variation. add snapshot.
2023-08-21 11:48:27 +02:00
Joost Lekkerkerker
8f9529d376 Use snapshot assertion for Forecast solar diagnostics (#98723) 2023-08-21 11:18:18 +02:00
Joost Lekkerkerker
973928ffe9 Use snapshot assertion for Airvisual diagnostics (#98728) 2023-08-21 11:17:43 +02:00
Chris Talkington
c0bb3dd6e0 Use snapshot assertion for Jellyfin diagnostics (#98732) 2023-08-21 11:15:58 +02:00
Álvaro Fernández Rojas
f373b27a3b Update aioqsw to v0.3.3 (#98737) 2023-08-21 11:14:54 +02:00
Markus Ressel
30a0cb1674 Fix octoprint down every two minutes (#90001) 2023-08-21 11:09:39 +02:00
J. Nick Koston
605c55109d Bump yalexs to 1.7.0 (#98720) 2023-08-21 10:56:39 +02:00
J. Nick Koston
976f6582e1 Reduce overhead to update august activities (#98730) 2023-08-21 10:48:54 +02:00
Shay Levy
a713d7585f Bump aioshelly to 6.0.0 (#98719) 2023-08-21 10:49:11 +03:00
Joost Lekkerkerker
af689d7c3e Use snapshot assertion for Accuweather diagnostics (#98725) 2023-08-21 09:12:43 +02:00
Joakim Plate
687bf5e808 Ignore ble name for gardena (#98126) 2023-08-21 08:43:52 +02:00
G Johansson
a29e4a5f02 Move Workday failures to __init__ (#98651)
Workday failures in init
2023-08-20 22:30:43 +02:00
tronikos
53b596101b Bump opower to 0.0.31 (#98716) 2023-08-20 22:29:16 +02:00
Ville Skyttä
c6c9d23530 Remove no longer used nest binary sensor (#98714) 2023-08-20 13:09:36 -07:00
Marc Mueller
4c3640878f Filter some pytest warnings (#98689) 2023-08-20 18:30:28 +02:00
J. Nick Koston
38af44225e Refactor doorbird to avoid using events internally (#98585) 2023-08-20 07:49:33 -05:00
Erik Montnemery
f07724ff52 Add additional tasmota tests (#98695) 2023-08-20 14:02:53 +02:00
Niels Perfors
614904512c Verisure Improve Unpack (#98696) 2023-08-20 13:45:58 +02:00
Erik Montnemery
e484066f2b Remove dead code from __main__.py (#98694) 2023-08-20 10:17:28 +02:00
Erik Montnemery
3fc043d99e Deduplicate Tasmota sensor tests (#98628) 2023-08-20 09:04:48 +02:00
andresb5555
384cee481a Add vicare sensor gas_summary_consumption_heating_lastsevendays (#95280)
* Add missing sensor entity gas_summary_consumption_heating_lastsevendays

* Changed location of the sensor
gas_summary_consumption_heating_lastsevendays code as per suggestion by
joostlek
2023-08-19 21:38:03 +02:00
Maikel Punie
5f5c012b0a Duotecno code-cleanup (#98675)
* small code cleanup, use a wrapper for the commands

* Better decorator naming

* update the error information
2023-08-19 21:34:07 +02:00
hahn-th
f020d17dd8 Support Eco Mode Preset in Climates (#98359)
* Fix #86145

* Add missing test coverage

* Add tests for state
2023-08-19 21:32:20 +02:00
Charles Garwood
91965a74d8 Enphase remove operating (#98682) 2023-08-19 12:30:12 -05:00
Benjamin Paul [MSFT]
5965918c86 Add Fan Speed number entity to Nexia (#98642)
* Add Fan Speed support to Nexia integration

Adds a new "set_fan_speed" service to the Nexia integration, to allow
setting speed of the air-handler/blower fans.

* Add Fan Speed to Nexia Tests

* Remove mistakenly-added changes to Climate tests

A previous version of this change made modifications to the base
Climate entity, but that approach was later abandonded. These changes
to Climate tests were left over from that, and should never have been
included.

* Add Fan Speed Number Entity

* Remove Set Fan Speed Service

* Remove fan_speed attribute

The fan_speed attribute is not necessary with the new Number entity.

* Address reviewer feedback

Rename test function to reflect fact that fan speed entities are
entities, and not sensors.
Added missing typing to variables.
Sorted list of platforms

* Add test_set_fan_speed

Also adds new test fixture for mock response to API call

* Update homeassistant/components/nexia/number.py

* Name change

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-19 16:42:13 +02:00
Ville Skyttä
3094991236 Upgrade ruff to 0.0.285 (#98647) 2023-08-19 08:17:17 -04:00
J. Nick Koston
f318063a77 Bump dbus-fast to 1.92.0 (#98656) 2023-08-19 06:13:22 -05:00
starkillerOG
39fc4b3d66 Reolink add pan position sensor (#98592)
* Add PTZ pan position sensor

* fix typing

* fix typing
2023-08-19 12:31:40 +02:00
Maciej Bieniek
66c10facfa Add Tractive sleep and activity sensors (#98575)
* Add sleep and activity sensors

* Use device class ENUM

* Default value for value_fn
2023-08-19 11:48:23 +02:00
Jack Boswell
8a6bde1191 Add Starlink device tracker (#91445)
* Fetch location data and redact in diagnostics

* Implement device tracker

* Fix failing tests

* Update starlink-grpc-core

* Update coveragerc

* Hardcode GPS source type

* Use translations

* Move DEVICE_TRACKERS a little higher in the file

* Separate status and location check try/catches

* Revert "Separate status and location check try/catches"

This reverts commit 7628ec62f6.
2023-08-19 11:36:23 +02:00
Maciej Bieniek
c526d23686 Change naming of Shelly entities to correspond with HA guidelines (#97533)
* Do not use the device name to create the entity name

* Remove unnecessary return

* Fix mypy complains

* Gen1

* Uncapitalize description.name if channel name is used

* Fix for climate and button

* switch_3 -> switch 3

* Add _attr_has_entity_name to ShellyRestAttributeEntity

* Capitalize channel name
2023-08-19 11:13:22 +02:00
tronikos
7059252164 Bump opowerto 0.0.30 (#98660) 2023-08-19 08:57:25 +02:00
Marc Mueller
c1fb97f26b Fix aiohttp DeprecationWarning (#98626) 2023-08-19 02:28:27 +02:00
jan iversen
1a032cebdd modbus: slave is allowed with custom (#98644) 2023-08-18 23:18:55 +02:00
Jan Bouwhuis
a39af8aff9 Fix rest debug logging (#98649)
Correct rest debug logging
2023-08-18 23:03:56 +02:00
Robert Svensson
9e42451934 UniFi refactor using site data (#98549)
* Clean up

* Simplify admin verification

* Streamline using sites in config_flow

* Bump aiounifi
2023-08-18 22:44:59 +02:00
Arkadii Yakovets
7827f9ccae Update country province validation (#84463)
* Update country `province` validation.

* Run pre-commit.

* Add tests

* Mod config flow

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-18 21:20:04 +02:00
Diogo Gomes
f96446cb24 Clean up integration sensor (#98552)
always update
2023-08-18 20:45:12 +02:00
G Johansson
268e5244f0 Cleanup ManualTriggerSensorEntity (#98629)
* Cleanup ManualTriggerSensorEntity

* ConfigType
2023-08-18 20:19:17 +02:00
Erik Montnemery
7fcc2dd44e Make the check_config script open issue_registry read only (#98545)
* Don't blow up if validators can't access the issue registry

* Make the check_config script open issue_registry read only

* Update tests/helpers/test_issue_registry.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-18 20:15:00 +02:00
Erik Montnemery
90b9764578 Bump hatasmota to 0.7.0 (#98636)
* Bump hatasmota to 0.7.0

* Update tests according to new entity naming
2023-08-18 19:24:33 +02:00
Ville Skyttä
93683cef27 Use zoneinfo instead of pytz, mark pytz as banned in ruff (#98613)
Refs #43439, #49643.
2023-08-18 19:10:29 +02:00
G Johansson
4073f56c5e Remove default code in Yale Smart Living (#94675)
* Remove default code in Yale Smart Living

* Test and remove check

* Finalize

* migration

* add back

* add back 2

* Fix tests

* Fix migration if code not exist
2023-08-18 16:40:24 +02:00
G Johansson
4096de2dad Add Yale Smart Living diagnostics test (#98590)
* Yale test diagnostics

* clean

* From review
2023-08-18 16:31:07 +02:00
Franck Nijhof
bdd202b873 2023.8.3 (#98623) 2023-08-18 15:44:40 +02:00
Franck Nijhof
ce0f957ce4 Bumped version to 2023.8.3 2023-08-18 13:56:56 +02:00
Bram Kragten
9291fab0b4 Update frontend to 20230802.1 (#98616) 2023-08-18 13:56:42 +02:00
Niels Perfors
7c5b1c8cd2 Verisure unpack (#98605) 2023-08-18 13:56:39 +02:00
J. Nick Koston
1c069539f5 Bump ESPHome recommended BLE version to 2023.8.0 (#98586) 2023-08-18 13:56:36 +02:00
Franck Nijhof
8dcb04eab1 Pin setuptools to 68.0.0 (#98582) 2023-08-18 13:56:33 +02:00
jan iversen
88352b6ca1 Correct number of registers to read for sensors for modbus (#98534) 2023-08-18 13:56:30 +02:00
Maciej Bieniek
1c7e3005aa Fix the availability condition for Shelly N current sensor (#98518) 2023-08-18 13:56:26 +02:00
Erwin Douna
aaefc29e32 Revert "Integration tado bump" (#98505)
Revert "Integration tado bump (#97791)"

This reverts commit 65365d1db5.
2023-08-18 13:56:22 +02:00
tronikos
c81c0149a2 Bump opower to 0.0.29 (#98503) 2023-08-18 13:52:48 +02:00
J. Nick Koston
a835d07773 Bump aiohomekit to 2.6.16 (#98490) 2023-08-18 13:50:32 +02:00
Luca Leonardo Scorcia
06d36983fe Fix inconsistent lyric temperature unit (#98457) 2023-08-18 13:50:29 +02:00
Chris Talkington
c55b96eb65 Update pyipp to 0.14.3 (#98434) 2023-08-18 13:50:25 +02:00
Chris Talkington
d44d84b430 Update rokuecp to 0.18.1 (#98432) 2023-08-18 13:50:22 +02:00
starkillerOG
9bbf855a7d Bump Reolink_aio to 0.7.7 (#98425) 2023-08-18 13:50:18 +02:00
mkmer
a66e308857 Handle missing keys in Honeywell (#98392) 2023-08-18 13:50:14 +02:00
Øyvind Matheson Wergeland
b76a4e0787 Fix GoGoGate2 configuration URL when remote access is disabled (#98387) 2023-08-18 13:50:10 +02:00
Martin Hjelmare
a962d2b28d Fix tts notify config validation (#98381)
* Add test

* Require either entity_id or tts_service
2023-08-18 13:50:06 +02:00
Joost Lekkerkerker
69c61a2632 Use default translations by removing names from tplink descriptions (#98338) 2023-08-18 13:50:03 +02:00
J. Nick Koston
9f69ab1604 Bump flux-led to 1.0.2 (#98312)
changelog: https://github.com/Danielhiversen/flux_led/compare/1.0.1...1.0.2

fixes #98310
2023-08-18 13:49:59 +02:00
Luke
07bb0fc16a Bump Python-Roborock to 0.32.3 (#98303)
bump to 0.32.3
2023-08-18 13:49:55 +02:00
Allen Porter
16d2c80437 Bump pyrainbird to 4.0.0 (#98271) 2023-08-18 13:49:52 +02:00
VidFerris
3da1a611c2 Use Local Timezone for Withings Integration (#98137) 2023-08-18 13:49:48 +02:00
jan iversen
0070a5e83d modbus: Repair swap for slaves (#97960) 2023-08-18 13:49:45 +02:00
Joost Lekkerkerker
d842b2574a Create abstraction for Generic YeeLight (#97939)
* Create abstraction for Generic YeeLight

* Update light.py
2023-08-18 13:49:41 +02:00
jan iversen
0daa972217 modbus config: count and slave_count can normally not be mixed. (#97902) 2023-08-18 13:49:38 +02:00
tronikos
2a0c121f65 Fix Opower utilities that have different ReadResolution than previously assumed (#97823) 2023-08-18 13:49:35 +02:00
jan iversen
cf839d0ce4 Correct modbus config validator: slave/swap (#97798) 2023-08-18 13:49:30 +02:00
Robert Resch
790523126e Name unnamed update entities by their device class (#98579) 2023-08-18 13:40:35 +02:00
Nick Whyte
350e5ee9a7 Fix ness alarm armed_home state appearing as disarmed/armed_away (#94351)
* Fix nessclient arm home appearing as arm away

* patch arming mode enum and use dynamic access

* Revert "patch arming mode enum and use dynamic access"

This reverts commit b9cca8e92bcb382abe364381a8cb1674c32d1d2a.

* Remove mock enums
2023-08-18 13:37:01 +02:00
jan iversen
c268adb07e modbus: Repair swap for slaves (#97960) 2023-08-18 13:23:04 +02:00
Joakim Plate
fc444e4cd6 Allow control of pump mode for nibe (#98499)
* Allow control of pump mode

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-18 13:15:59 +02:00
jan iversen
1c56c39897 modbus config: count and slave_count can normally not be mixed. (#97902) 2023-08-18 13:10:13 +02:00
Bram Kragten
66685b796d Update frontend to 20230802.1 (#98616) 2023-08-18 13:09:35 +02:00
Jan Bouwhuis
5ef6c03610 Log entity_id payload and template on MQTT value template error (#98353)
* Log entity_id payload and template on error

* Also handle cases with default values.

* Do not log payload twice

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Tweak test to assert without payload

* black

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-08-18 13:05:53 +02:00
Joost Lekkerkerker
80a5e341b5 Add device to Garage Amsterdam entity (#98573) 2023-08-18 11:48:00 +02:00
Robert Resch
7ac2c61f24 Fix copy-paste error in comments of number tests (#98615) 2023-08-18 11:02:30 +02:00
jan iversen
59d37f65d5 Correct modbus config validator: slave/swap (#97798) 2023-08-18 10:55:39 +02:00
jan iversen
e42b9e6c4c Modbus: set state_class etc in slaves. (#98332) 2023-08-18 10:52:57 +02:00
Luca Leonardo Scorcia
9be532cea9 Fix inconsistent lyric temperature unit (#98457) 2023-08-18 10:52:22 +02:00
Maciej Bieniek
d5338e88f2 Fix the availability condition for Shelly N current sensor (#98518) 2023-08-18 10:49:43 +02:00
jan iversen
5a7084e78c Correct number of registers to read for sensors for modbus (#98534) 2023-08-18 10:48:57 +02:00
Franck Nijhof
2f204d5747 Remove unneeded startswith in content check of image upload (#98599) 2023-08-18 10:38:21 +02:00
Niels Perfors
89705a22cf Verisure unpack (#98605) 2023-08-18 10:26:01 +02:00
J. Nick Koston
d3ee2366b0 Bump dbus-fast to 1.91.4 (#98600) 2023-08-18 03:09:15 -05:00
tronikos
6b82bf2bc7 Fix Flume leak detected sensor (#98560) 2023-08-18 03:07:44 -05:00
Simone Chemelli
ab9d6ce61a New integration for Comelit SimpleHome (#96552)
* New integration for Comelit SimpleHome

* Address first review comments

* cleanup

* aiocomelit bump and coordinator cleanup

* address review comments

* Fix some review comments

* Use config_entry.unique_id as last resort

* review comments

* Add config_flow tests

* fix pre-commit missing checks

* test_conflig_flow coverage to 100%

* fix tests

* address latest review comments

* new ruff rule

* address review comments

* simplify unique_id
2023-08-18 08:40:23 +02:00
Faidon Liambotis
9fdad592c2 Add option to disable MQTT Alarm Control Panel supported features (#98363)
* Make MQTT Alarm Control Panel features conditional

The MQTT Alarm Control Panel currently enables all features (arm home,
arm away, arm night, arm vacation, arm custom bypass) unconditionally.
This clutters the interface and can even be potentially dangerous, by
enabling modes that the remote alarm may not support.

Make all the features conditional, by adding a new "supported_features"
configuration option, comprising a list of the supported features as
options. Feature enablement seems inconsistent across the MQTT
component; this implementation is most alike to the Humidifier modes
option, but using a generic "supported_features" name that other
implementations may reuse in the future.

The default value of this new setting remains to be all features, which
while it may be overly expansive, is necessary to maintain backwards
compatibility.

* Apply suggestions from code review

* Use vol.Optional() instead of vol.Required() for "supported_features".
* Move the initialization of _attr_supported_features to _setup_from_config.

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Apply suggestions from emontnemery's code review

* Use vol.In() instead of cv.multi_seelct()
* Remove superfluous _attr_supported_features initializers, already
  present in the base class.

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Add invalid config tests for the MQTT Alarm Control Panel

* Set expected_features to None in the invalid MQTT Alarm Control Panel tests

* Add another expected_features=None in the invalid tests

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

---------

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-08-18 08:23:48 +02:00
lymanepp
f6a9be937b Add humidity and dew point to tomorrow.io integration (#98496)
* Add humidity and dew point to tomorrow.io integration

* Fix ruff complaints

* Make mypy happy

* Merge emontnemery's changes

* Fix formatting error

* Add fake humidity and dew point to test data (first interval only)

* Fix inconsistency

* Fix inconsistency
2023-08-18 07:41:25 +02:00
Michael Hansen
49d2c60992 Add pipeline VAD events (#98603)
* Add stt-vad-start and stt-vad-end pipeline events

* Update tests
2023-08-17 19:58:58 -04:00
Erik Montnemery
c17f08a3f5 Create a single entity for new met.no config entries (#98098)
* Create a single entity for new met.no config entries

* Fix lying docstring

* Fix test
2023-08-17 19:41:11 +02:00
Erwin Douna
d761b5ddbf Add tests and typing to Tado config flow (#98281)
* Upgrading tests

* Code improvements and removing unused function

* Update homeassistant/components/tado/config_flow.py

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

* Update homeassistant/components/tado/config_flow.py

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

* Update homeassistant/components/tado/config_flow.py

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

* Update tests/components/tado/test_config_flow.py

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

* Update tests/components/tado/test_config_flow.py

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

* Update tests/components/tado/test_config_flow.py

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

* Update tests/components/tado/test_config_flow.py

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

* Update tests/components/tado/test_config_flow.py

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

* Importing Any

* Rerunning Blackformatter

* Adding fallback scenario to options flow

* Adding constants

* Adding a retry on the exceptions

* Refactoring to standard

* Update homeassistant/components/tado/config_flow.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Adding type to validate_input

* Updating test

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-17 19:37:34 +02:00
Joost Lekkerkerker
dd69ba3136 Migrate Cert Expiry to has entity name (#98160)
* Migrate Cert Expiry to has entity name

* Migrate Cert Expiry to has entity name

* Fix entity name
2023-08-17 18:29:20 +02:00
epenet
a9b1f23b7f Bump renault-api to 0.2.0 (#98587) 2023-08-17 18:16:32 +02:00
Russell Cloran
49995a4667 Add tests for device tracker in Prometheus (#98054) 2023-08-17 17:58:52 +02:00
J. Nick Koston
3e14e5acba Bump aioesphomeapi to 16.0.1 (#98536) 2023-08-17 17:46:21 +02:00
Marc Mueller
529bc507a0 Fix aiohttp test RuntimeWarning (#98568) 2023-08-17 17:42:20 +02:00
J. Nick Koston
e95979e9af Bump ESPHome recommended BLE version to 2023.8.0 (#98586) 2023-08-17 17:39:35 +02:00
Franck Nijhof
740cabc21e Pin setuptools to 68.0.0 (#98582) 2023-08-17 17:36:22 +02:00
Maciej Bieniek
d44847bb23 Log Tractive events on debug level (#98539) 2023-08-17 17:09:16 +02:00
J. Nick Koston
30a88e9e61 Additional doorbird cleanups to prepare for event entities (#98542) 2023-08-17 09:37:54 -05:00
Erwin Douna
2d4decc9b1 Revert "Integration tado bump" (#98505)
Revert "Integration tado bump (#97791)"

This reverts commit 65365d1db5.
2023-08-17 16:16:47 +02:00
Joost Lekkerkerker
6f4294dc62 Migrate IPMA to has entity name (#98572)
* Migrate IPMA to has entity name

* Migrate IPMA to has entity name
2023-08-17 16:02:22 +02:00
Erwin Douna
ea5272ba62 Revert "Fix fanSpeed issue in Tado" (#98506)
Revert "Fix fanSpeed issue (#98293)"

This reverts commit d6498aa39e.
2023-08-17 15:44:23 +02:00
Øyvind Matheson Wergeland
cb4917f880 Fix GoGoGate2 configuration URL when remote access is disabled (#98387) 2023-08-17 15:12:35 +02:00
Maciej Bieniek
d6a7127b84 Improve availability of Tractive entities (#97091)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-08-17 12:15:36 +02:00
Dennis
1954539e65 Add state_class to tomorrowio UV Index (#98541)
* Added state_class to UV Index

Forgot to add a state_class as other sensors got their state_class from their device class. As there is no UV Index device class I left it out.

* Forgotten a comma, whoops

* Changed measurement to string.

* Changed from "measurement" to SensorStateClass
2023-08-17 11:13:11 +02:00
Klaas Schoute
8b4937f627 Bump odp-amsterdam to v5.3.0 (#98555)
* Bump package to v5.3.0

* Load only the garages for cars
2023-08-17 10:24:58 +02:00
G Johansson
6faa9abc75 Fix Verisure config entry migration (#98546) 2023-08-17 08:51:59 +02:00
Sebastian Lövdahl
fde498586e Expose dew point in Met.no (#98543) 2023-08-17 07:45:23 +02:00
puddly
52a8f01096 Make IKEA fan sensors diagnostic in ZHA (#97747) 2023-08-17 02:15:35 +01:00
Marc Mueller
a776ecddb7 Update mypy to 1.5.1 (#98554) 2023-08-16 18:44:02 -05:00
Erik Montnemery
992cc56c7e Modernize buienradar weather (#98473) 2023-08-16 22:19:22 +02:00
Erik Montnemery
1897be1467 Map demo and kitchen_sink weather condition codes once (#98510)
Map demo and kitchen_sink condition codes once
2023-08-16 22:12:22 +02:00
Erik Montnemery
614d6e929d Map meteoclimatic weather condition codes once (#98514) 2023-08-16 22:11:27 +02:00
Erik Montnemery
f85c2e5a92 Modernize environment_canada weather (#98502) 2023-08-16 22:10:48 +02:00
Erik Montnemery
227d4a590d Map metoffice weather condition codes once (#98515) 2023-08-16 22:09:06 +02:00
Erik Montnemery
f135c42524 Map openweathermap weather condition codes once (#98516) 2023-08-16 22:08:17 +02:00
Erik Montnemery
f643d2de46 Map SMHI weather condition codes once (#98517) 2023-08-16 22:07:12 +02:00
Erik Montnemery
5c1c8dc682 Modernize tomorrowio weather (#98466)
* Modernize tomorrowio weather

* Add test snapshot

* Update snapshots

* Address review comments

* Improve test coverage
2023-08-16 20:22:38 +02:00
Erik Montnemery
827e06a5c8 Improve typing of nws (#98485)
* Improve typing of nws

* Address review comments
2023-08-16 20:21:07 +02:00
Erik Montnemery
b1053e8077 Map accuweather weather condition codes once (#98509)
Map accuweather condition codes once
2023-08-16 20:20:47 +02:00
Erik Montnemery
8ed7d2dd3e Don't create certain start.ca sensors for unlimited plans (#98525)
Don't create certain startca sensors for unlimited setups
2023-08-16 20:20:14 +02:00
Erik Montnemery
4eb0f1cf37 Make eufylife_ble sensors inherit RestoreSensor (#98528) 2023-08-16 20:15:47 +02:00
Erik Montnemery
31f5932fe4 Log events with no listeners (#98540)
* Log events with no listeners

* Unconditionally create the Event object

* Reformat code
2023-08-16 20:14:49 +02:00
Joost Lekkerkerker
b9203cbeaf Add base entity for Dexcom (#98158) 2023-08-16 19:18:46 +02:00
mkmer
3e1d2a1000 Handle missing keys in Honeywell (#98392) 2023-08-16 18:59:34 +02:00
J. Nick Koston
5bf80a0f6d Make ESPHome deep sleep tests more robust (#98535) 2023-08-16 11:05:22 -05:00
Erik Montnemery
4180e2e477 Make EnOceanSensor a RestoreSensor (#98527)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-16 15:22:48 +02:00
Erik Montnemery
a2e619155a Map ipma weather condition codes once (#98512) 2023-08-16 15:01:54 +02:00
Nick Whyte
2c48f0e416 Fix ness alarm armed_home state appearing as disarmed/armed_away (#94351)
* Fix nessclient arm home appearing as arm away

* patch arming mode enum and use dynamic access

* Revert "patch arming mode enum and use dynamic access"

This reverts commit b9cca8e92bcb382abe364381a8cb1674c32d1d2a.

* Remove mock enums
2023-08-16 13:56:52 +02:00
Mike Heath
cf8c9ad184 Add PoE switch tests (#95087)
* Add PoE switch tests

* Update tests/components/tplink_omada/test_switch.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Remove files covered by tests from exclusion

* Rename entity_name to entity_id

* Fix test, use snapshot, other improvements

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-08-16 13:38:53 +02:00
Joost Lekkerkerker
732dac6f05 Create abstraction for Generic YeeLight (#97939)
* Create abstraction for Generic YeeLight

* Update light.py
2023-08-16 13:24:41 +02:00
Erik Montnemery
91faa53843 Don't allow hass.config.config_dir to be None (#98442) 2023-08-16 13:00:14 +02:00
VidFerris
5ed3e90607 Use Local Timezone for Withings Integration (#98137) 2023-08-16 12:57:16 +02:00
Diogo Gomes
abf065ed76 Fix checks for duplicated config entries in IPMA (#98319)
* fix unique_id

* old unique id detection

* update tests

* match entry not unique_id

* address review
2023-08-16 12:56:47 +02:00
J. Nick Koston
ed2f067c52 Bump zeroconf to 0.80.0 (#98416) 2023-08-16 12:03:40 +02:00
Erik Montnemery
636cb6279d Push updated ecobee weather forecast to listeners (#98511) 2023-08-16 11:59:59 +02:00
Erik Montnemery
e69090b943 Map meteo_france weather condition codes once (#98513) 2023-08-16 11:41:11 +02:00
Marc Mueller
0bcc02e908 Skip writing pyc files [ci] (#98423) 2023-08-16 11:36:52 +02:00
J. Nick Koston
b083f5bf89 Add some typing to doorbird (#98483) 2023-08-16 11:33:25 +02:00
J. Nick Koston
b680bca5e9 Bump aiohomekit to 2.6.16 (#98490) 2023-08-16 11:30:47 +02:00
tronikos
a0ea6e6a0c Bump opower to 0.0.29 (#98503) 2023-08-16 11:10:02 +02:00
Andy Barratt
6c573953e3 Update Light flash description (#98252)
* Update Light flash description

`light.turn_on` service description for the `flash` option gave the impression of a boolean value being required when in fact a string of either `short` or `long` was required.  Updated this to match the documentation found at https://www.home-assistant.io/integrations/light

`light.turn_off` also described the existence of a `flash` option when none exists.  I've removed this, which matches the aforementioned documentation too.

* Revert removal of flash from turn-off

As discussed in feedback, turn-off does indeed seem to support flash.
2023-08-16 10:06:37 +02:00
Emma Vanbrabant
8efb9dad7e Add device_class to Renault charging remaining time (#98393)
* Add device_class on charging remaining time

Set `device_class to `duration` on the `charging_remaining_time` entity in the Renault integration.

I had some issues showing this property on my dashboard, and setting this fixed it. The recommendation to open an issue against the original integration in these kinds of cases came from [here](https://community.home-assistant.io/t/how-to-format-a-card-to-show-hours-instead-of-seconds/425473/7).

* Update test const to add duration

* fix other cars

* Update test_sensor.ambr

* add duration in ambr
2023-08-16 09:42:38 +02:00
Jan Bouwhuis
c010b97abf Improve test recovery MQTT certificate files (#98223)
* Improve test recovery MQTT certificate files

* Spelling
2023-08-16 09:07:14 +02:00
dalinicus
45966069b4 Bump aiolyric to 1.1.0 (#98113)
version bump aiolyric to include new features for additional room sensors
2023-08-16 08:15:28 +02:00
J. Nick Koston
c671b1069e Bump protobuf to 4.24.0 (#98468) 2023-08-15 18:52:18 -05:00
Erik Montnemery
3cf86d5d1f Create a single entity for new met_eireann config entries (#98100) 2023-08-15 20:56:19 +02:00
Erik Montnemery
caeb20f9c9 Modernize aemet weather (#97969)
* Modernize aemet weather

* Improve test coverage

* Only create a single entity for new config entries
2023-08-15 20:55:16 +02:00
J. Nick Koston
857369625a Remove some bound attributes from enphase_envoy sensor (#98479) 2023-08-15 13:29:22 -05:00
J. Nick Koston
80d608bb5b Remove some bound attributes from enphase_envoy binary_sensor (#98477)
Some of these were never used
2023-08-15 14:16:05 -04:00
J. Nick Koston
73f882bf36 Small cleanups to enphase_envoy select platform (#98476) 2023-08-15 13:08:55 -05:00
Charles Garwood
92535277be Add number platform & battery setpoint entities to Enphase integration (#98427)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-08-15 13:08:11 -05:00
J. Nick Koston
5a69f9ed04 Remove unused code in enphase_envoy (#98474) 2023-08-15 12:37:16 -05:00
Erik Montnemery
90413daa8a Update buienweather data before adding entities (#98455)
* Update buienweather data before adding entities

* Fix tests
2023-08-15 18:15:23 +02:00
Sam Reed
ffe3d7c255 Replace "percents" -> "percentage" in flux_led option flow (#98059) 2023-08-15 10:44:24 -05:00
Marc Mueller
063ce9159d Use asyncio.timeout [o-s] (#98451) 2023-08-15 17:21:49 +02:00
Erik Montnemery
496a975c58 Set _attr_condition in WeatherEntity (#98459) 2023-08-15 17:17:35 +02:00
starkillerOG
92cf6ed2a0 Reolink 100% test coverage (#94763) 2023-08-15 09:50:17 -05:00
J. Nick Koston
e209f3723e Restore sensorpush state when device becomes available (#98420) 2023-08-15 09:29:25 -05:00
Erik Montnemery
3de402bd15 Fix AiohttpClientMockResponse.release (#98458) 2023-08-15 09:22:42 -05:00
Marc Mueller
5dd3f05db8 Use asyncio.timeout [f-h] (#98449) 2023-08-15 08:37:06 -05:00
Marc Mueller
a9ade1f84d Use asyncio.timeout [core] (#98447) 2023-08-15 08:36:05 -05:00
Marc Mueller
e2d2ec8817 Use asyncio.timeout [b-e] (#98448) 2023-08-15 08:30:20 -05:00
Charles Garwood
346a7292d7 Update Enphase dry contact relay DeviceInfo and name (#98429)
Switch relay binary_sensor to relay device
2023-08-15 08:49:19 -04:00
Marc Mueller
8b0fdd6fd2 Use asyncio.timeout [s-z] (#98452) 2023-08-15 14:34:18 +02:00
Marc Mueller
71d985e4d6 Use asyncio.timeout [i-n] (#98450) 2023-08-15 14:32:15 +02:00
Erik Montnemery
35b914af97 Disable polling in buienradar weather entity (#98443) 2023-08-15 13:28:43 +02:00
Franck Nijhof
a87878f723 Make image upload mimetype to match frontend (#98411) 2023-08-15 12:26:37 +02:00
G Johansson
ed18c6a013 Refactor Rest Switch with ManualTriggerEntity (#97403)
* Refactor Rest Switch with ManualTriggerEntity

* Fix test

* Fix 2

* review comments

* remove async_added_to_hass

* update on startup
2023-08-15 11:43:47 +02:00
Nathan Spencer
87b7fc6c61 Bump pylitterbot to 2023.4.4 (#98414) 2023-08-15 11:04:45 +02:00
Erik Montnemery
3b9d6f2dde Add setup function to the component loader (#98148)
* Add setup function to the component loader

* Update test

* Setup the loader in safe mode and in check_config script
2023-08-15 10:59:42 +02:00
starkillerOG
b1e5b3be34 Bump Reolink_aio to 0.7.7 (#98425) 2023-08-15 10:43:19 +02:00
J. Nick Koston
262483f3f6 Replace async_timeout with asyncio.timeout A-B (#98415) 2023-08-15 10:29:28 +02:00
Chris Talkington
eb4745012a Update rokuecp to 0.18.1 (#98432) 2023-08-15 10:02:38 +02:00
Chris Talkington
2da3b7177d Update pyipp to 0.14.3 (#98434) 2023-08-15 09:57:10 +02:00
Erik Montnemery
94ad4786c3 Include extended address in response to WS otbr/info (#98440) 2023-08-15 09:48:29 +02:00
Erik Montnemery
e6ea70fd00 Adjust thread router discovery typing (#98439)
* Adjust thread router discovery typing

* Adjust debug logs
2023-08-15 09:40:05 +02:00
Erik Montnemery
71b92265af Include border agent id in response to WS otbr/info (#98394)
* Include border agent id in response to WS otbr/info

* Assert border agent ID is not None
2023-08-15 09:17:47 +02:00
Erik Montnemery
6c7f50b5b2 Simplify error handling in otbr async_setup_entry (#98395)
* Simplify error handling in otbr async_setup_entry

* Create issue if the OTBR does not support border agent ID

* Update test

* Improve test coverage

* Catch the right exception
2023-08-15 08:27:50 +02:00
Paulus Schoutsen
ced4af1e22 Ignore smartthings storage on fresh install (#98418)
* Ignore smartthings storage on fresh install

* Also unload existing things when going for clean install

* Rename param

* Fix tests
2023-08-14 21:39:05 -05:00
Charles Garwood
e3438baf49 Add select platform to Enphase integration (#98368)
* Add select platform to Enphase integration

* Review comments pt1

* Review comments pt2

* Review comments

* Additional tweaks from code review

* .coveragerc

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-08-14 20:23:16 -04:00
Joost Lekkerkerker
49a9d0e439 Add entity translations to hunterdouglas powerview (#98232) 2023-08-14 15:26:20 -05:00
Jan-Philipp Benecke
9713466817 Add sensor when meter last sent its data to Discovergy (#97223)
* Add sensor for last reading by Discovergy

* Rename sensor to make it clear what it actually is

* Revert back to single sensor classe and extend entity_description with a value function
2023-08-14 21:42:47 +02:00
J. Nick Koston
69b3ae4588 Bump zeroconf to 0.78.0 (#98405) 2023-08-14 21:07:17 +02:00
Erik Montnemery
6294014fcd Bump python-otbr-api to 2.5.0 (#98403) 2023-08-14 20:09:50 +02:00
Abílio Costa
80fa034048 ipma: remove abmantis from codeowners (#98304)
* ipma: remove abmantis from codeowners

I am not currently maintaining this integration.

* Run hassfest

* Try again

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-08-14 19:36:58 +02:00
Joost Lekkerkerker
318aa9b95a Add entity translations to Goodwe (#98224)
* Add entity translations to Goodwe

* Add entity translations to Goodwe
2023-08-14 19:35:31 +02:00
Álvaro Fernández Rojas
c3c00e6984 Update aioairzone to v0.6.6 (#98399) 2023-08-14 11:21:12 -05:00
Joakim Plate
d6fcdeac06 Avoid leaking backtrace on connection lost in arcam (#98277)
* Avoid leaking backtrace on connection lost

* Correct ruff error after rebase
2023-08-14 18:03:17 +02:00
Franck Nijhof
85c2216cd7 Ensure headers middleware handles errors too (#98397) 2023-08-14 17:48:11 +02:00
Marco Ranieri
54223fe06c Enable Alexa Unlock directive (#97127)
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2023-08-14 17:47:50 +02:00
Joost Lekkerkerker
77b421887b Add entity translations for August (#98077) 2023-08-14 16:58:57 +02:00
Erik Montnemery
d4753ebd3b Include border agent ID in thread router discovery (#98378) 2023-08-14 16:46:55 +02:00
Martin Hjelmare
2272a9db00 Improve picotts (#98391) 2023-08-14 15:54:43 +02:00
Marc Mueller
d059c9924a Update attrs to 23.1.0 (#98385) 2023-08-14 15:50:43 +02:00
Erik Montnemery
1869177f08 Rename some incorrectly named assist_pipeline tests (#98389) 2023-08-14 15:47:55 +02:00
Erik Montnemery
e0fd83daab Store preferred border agent ID for each thread dataset (#98384) 2023-08-14 15:47:18 +02:00
Robert Resch
b0f68f1ef3 Use @require_admin decorator (#98061)
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2023-08-14 15:07:20 +02:00
Marc Mueller
525f39fe28 Update todoist-api-python to 2.1.2 (#98383) 2023-08-14 14:10:45 +02:00
G Johansson
a093c383c3 Remove Verisure default lock code (#94676) 2023-08-14 13:43:08 +02:00
Erik Montnemery
318b8adbed Set preferred router when importing OTBR dataset (#98379) 2023-08-14 13:40:32 +02:00
Allen Porter
9ddf11f6cd Improve rainbird error handling (#98239) 2023-08-14 13:32:08 +02:00
Martin Hjelmare
6f97270cd2 Fix tts notify config validation (#98381)
* Add test

* Require either entity_id or tts_service
2023-08-14 13:30:25 +02:00
Joost Lekkerkerker
57cacbc2a7 Add entity translations to Aurora (#98079) 2023-08-14 13:16:02 +02:00
Joost Lekkerkerker
398a789ba2 Add entity translations to justnimbus (#98235) 2023-08-14 13:14:49 +02:00
Joost Lekkerkerker
11b1a42a1c Add entity translations to Aseko (#98117) 2023-08-14 12:52:27 +02:00
Joost Lekkerkerker
9ce033daeb Use default translations by removing names from tplink descriptions (#98338) 2023-08-14 11:51:08 +02:00
Marc Mueller
180ff24492 Add types-beautifulsoup4 dependency (#98377) 2023-08-14 11:50:14 +02:00
Erik Montnemery
4dd102f818 Bump python-otbr-api to 2.4.0 (#98376) 2023-08-14 11:33:07 +02:00
Erik Montnemery
e0ee713bb2 Store preferred border agent ID in thread dataset store (#98375) 2023-08-14 11:32:55 +02:00
Michael
533a8beac2 Raise ConfigEntryNotReady when unable to connect during setup of AVM Fritz!Smarthome (#97985) 2023-08-14 10:42:20 +02:00
Marc Mueller
e0d6210bd0 Create pytest output artifact [ci] (#98106) 2023-08-14 10:38:53 +02:00
Marc Mueller
7cf1ff887d Update caldav to 1.3.6 (#98371) 2023-08-14 10:31:24 +02:00
Marc Mueller
f7d95e00f6 Update tqdm to 4.66.1 (#98328) 2023-08-14 10:29:26 +02:00
Marc Mueller
e36a8f6e8b Update async-timeout to 4.0.3 (#98370) 2023-08-14 10:23:23 +02:00
Marc Mueller
21acb5527f Update beautifulsoup to 4.12.2 (#98372) 2023-08-14 10:22:53 +02:00
Kevin Stillhammer
066db11620 Exchange WazeRouteCalculator with pywaze in waze_travel_time (#98169)
* exchange WazeRouteCalculator with pywaze

* directly use async is_valid_config_entry

* store pywaze client as property

* fix tests

* Remove obsolete error logs

* Reuse existing httpx client

* Remove redundant typing

* Do not clcose common httpx client
2023-08-14 10:02:30 +02:00
J. Nick Koston
96f9b852a2 Bump zeroconf to 0.76.0 (#98366) 2023-08-13 22:47:29 -05:00
J. Nick Koston
790c1bc251 Decrease event loop latency by binding time.monotonic to loop.time directly (#98288)
* Decrease event loop latency by binding time.monotonic to loop.time directly

This is a small improvment to decrease event loop latency. While the goal is
is to reduce Bluetooth connection time latency, everything using asyncio
is a bit more responsive as a result.

* relo per comments

* fix too fast by adding resolution, ensure monotonic time is patchable by freezegun

* fix test that freezes time too late and has a race loop
2023-08-13 20:37:45 -04:00
Marc Mueller
07e20e1eab Downgrade todoist-api-python to 2.0.2 and attrs to 22.2.0 (#98354) 2023-08-13 17:23:38 -05:00
J. Nick Koston
429f939fee Bump zeroconf to 0.75.0 (#98360) 2023-08-13 17:23:03 -05:00
Mr-Ker
66b01bee49 Add support for Bosch 2nd Gen Shutter Contact (#98331)
Add support for Bosch 2nd Gen SHCShutterContact2

We only need to check for the shutter contact 2 types as both devices
provide the same properties that are used by the bosch_shc component.

Resolves: #86295
2023-08-13 21:05:57 +02:00
Chris
5b6a7edd8d Add Unifi outlet switches for PDU devices (#98320)
Updates the Unifi outlet switching feature to support PDU devices
2023-08-13 20:06:12 +02:00
Marc Mueller
ef6e75657a Update attrs to 23.1.0 (#97095) 2023-08-13 19:05:15 +02:00
Marc Mueller
e25fdebda1 Add types-caldav dependency (#98265) 2023-08-13 11:58:55 -05:00
Marc Mueller
ee3af29701 Update coverage to 7.3.0 (#98327) 2023-08-13 11:58:34 -05:00
Marc Mueller
54cbc85c13 Add types-Pillow dependency (#98266) 2023-08-13 11:57:46 -05:00
Jan Bouwhuis
e5f7d83912 Update entity feature constants google_assistant (#98335)
* Update entity feature constants google_assistant

* Update tests

* Direct import

* Some missed constants

* Add fan and cover feature imports
2023-08-13 17:17:47 +02:00
Jan Bouwhuis
fa6ffd994a Update vacuum entity constants for Alexa tests (#98336)
* Update vacuum entity constants for Alexa tests

* Import VacuumEntityFeature
2023-08-13 15:35:00 +02:00
Jan Bouwhuis
b36681b318 Update homekit entity feature constants (#98337) 2023-08-13 15:33:36 +02:00
Renier Moorcroft
a74d83de66 Cleanup EZVIZ number entity (#98333)
* EZVIZ - Cleanup number entity

* NL

* Fix naming
2023-08-13 13:41:37 +02:00
Renier Moorcroft
00c60151d4 Add Ezviz siren entity (#93612)
* Initial commit

* Add siren entity

* Update coveragerc

* Cleanup unused entity description.

* Add restore and fix entity property to standards.

* Schedule turn off to match camera firmware

* Only add siren for devices that support capability

* Removed unused attribute and import.

* Add translation

* Update camera.py

* Update strings.json

* Update camera.py

* Cleanup

* Update homeassistant/components/ezviz/siren.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* use description

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Update strings.json

* Dont inherit coordinator class.

* Add assumed state

* Update homeassistant/components/ezviz/siren.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Reset delay listener if trigered

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-13 13:10:53 +02:00
Bouwe Westerdijk
b41d3b465c Add domestic_hot_water_setpoint number to Plugwise (#98092)
* Add max_dhw_temperature number

* Update strings.json

* Add related tests

* Correct test

* Black-fix
2023-08-13 12:57:34 +02:00
Bouwe Westerdijk
38cea8f31c Plugwise climate: add HVAC_Mode handling to set_temperature() (#98273)
* Add HVAC_Mode handling to set_temperature()

* Move added code down, as suggested

* Implement walrus as suggested

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-13 12:39:46 +02:00
tronikos
fea4af69d7 Add missing logging for opower library (#98325) 2023-08-13 08:08:33 +02:00
J. Nick Koston
483567529f Bump flux-led to 1.0.2 (#98312)
changelog: https://github.com/Danielhiversen/flux_led/compare/1.0.1...1.0.2

fixes #98310
2023-08-12 21:10:36 -04:00
tronikos
bdaa2285fc Google Assistant SDK: Allow responses for send_text_command (#95966)
google_assistant_sdk.send_text_command response
2023-08-12 16:20:01 -04:00
Allen Porter
79991c32dc Bump pyrainbird to 4.0.0 (#98271) 2023-08-12 13:37:43 -05:00
Marc Mueller
85b097af50 Update todoist-api-python to 2.1.1 (#98263) 2023-08-12 09:39:59 -07:00
elmurato
836b2de86f Add dataclass for Minecraft Server data (#98297)
* Add dataclass for Minecraft server data

* Sort dataclass variables
2023-08-12 09:36:03 -07:00
Luke
4780ea6a5b Bump Python-Roborock to 0.32.3 (#98303)
bump to 0.32.3
2023-08-12 09:31:14 -07:00
Chris
87753bdb82 Add UniFi power stats for PDU overall AC outlet metrics (#98217) 2023-08-12 18:12:59 +02:00
Erik Montnemery
ae8f9dcb77 Modernize ipma weather (#98062)
* Modernize ipma weather

* Add test snapshots

* Don't include forecast mode in weather entity unique_id for new config entries

* Remove old migration code

* Remove outdated test
2023-08-12 15:15:09 +02:00
Joost Lekkerkerker
be9afd7eae Add entity translations to DWD (#98254)
* Add device to DWD

* Add entity translations to DWD
2023-08-12 11:03:37 +02:00
Erwin Douna
d6498aa39e Fix fanSpeed issue (#98293) 2023-08-12 10:27:45 +02:00
Bouwe Westerdijk
5042c25bbc Plugwise climate: remove extra_state_attributes property (#98153)
* Remove extra_state_attributes property, replaced by a number

* Support HVAC_Mode in set_temperature()

* Remove set_temperature() update, as requested
2023-08-12 09:56:23 +02:00
Erik Montnemery
8b99d4678f Correct checks for non-finite numbers in ESPHome (#98102) 2023-08-12 08:10:25 +01:00
Charles Garwood
8912b19cf4 Add Enphase Encharge aggregate sensors (#98276)
* Add Encharge aggregate sensors

* Update dependency
2023-08-11 20:15:42 -04:00
Marc Mueller
58194a5eb4 Improve wake_word generic typing (#98279) 2023-08-11 23:08:52 +02:00
Marc Mueller
78ac36e3fe Improve met_eireann generic typing (#98278) 2023-08-11 23:08:21 +02:00
Marc Mueller
ff0566b11f Fix deque import (#98269) 2023-08-11 23:07:06 +02:00
Charles Garwood
4342a95be0 Add Enphase switch platform and grid enable switch (#98261)
* Add Enphase switch platform and grid enable switch

* Update dependency

* Fix docstrings

* Update .coveragerc
2023-08-11 13:31:47 -04:00
Marc Mueller
8fbcffcf9f Add types-psutil dependency (#98267) 2023-08-11 18:09:58 +02:00
Marc Mueller
2ed11d2900 Add types-xmltodict dependency (#98268) 2023-08-11 18:09:38 +02:00
Franck Nijhof
73898daff3 2023.8.2 (#98255) 2023-08-11 17:59:37 +02:00
Hessel
8bef39a2fb Wallbox Integration Change Switch Availability (#98111)
* change switch availability

* remove new test

* Update homeassistant/components/wallbox/switch.py

Also check super availability.

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* black formatting

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-11 16:39:29 +02:00
Brandon Rothweiler
f641c0ba58 Bump pymazda to 0.3.11 (#98084) 2023-08-11 16:15:33 +02:00
Franck Nijhof
c72a184923 Bumped version to 2023.8.2 2023-08-11 14:20:04 +02:00
MatthewFlamm
0ce0050068 Bump pynws 1.5.1; fix regression for precipitation probability (#98237)
bump pynws 1.5.1
2023-08-11 14:19:50 +02:00
Joost Lekkerkerker
63b2fa6d1b Use explicit device name in Broadlink (#98229) 2023-08-11 14:19:46 +02:00
Álvaro Fernández Rojas
819cea0ea0 Update aioairzone to v0.6.5 (#98163)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-08-11 14:19:43 +02:00
tronikos
773ec3adb6 Get Opower accounts from the customer endpoint (#98144)
Get accounts from the customer endpoint
2023-08-11 14:19:40 +02:00
tronikos
1ffbc8118d Opower: Add gas sensors for utilities that report CCF (#98142)
Add gas sensors for utilities that report CCF
2023-08-11 14:19:36 +02:00
tronikos
a2dec234c2 Bump opower to 0.0.26 (#98141) 2023-08-11 14:19:33 +02:00
Joakim Plate
32d4c2607b Make gardena closing sensor unavailable when closed (#98133) 2023-08-11 14:19:30 +02:00
Joakim Plate
b584eb757b Correct unit of rain pause (#98131) 2023-08-11 14:19:26 +02:00
Joost Lekkerkerker
d488bb3dca Add missing translation key in Tuya (#98122) 2023-08-11 14:19:23 +02:00
Robert Svensson
84d185a075 Improve UniFi control PoE mode (#98119) 2023-08-11 14:19:19 +02:00
tronikos
a2637ac75a Bump opower to 0.0.24 (#98091) 2023-08-11 14:19:16 +02:00
Maximilian
8bdac8fb30 Bump pynina to 0.3.2 (#98070) 2023-08-11 14:19:13 +02:00
mkmer
61cafb26ac Bump AIOAladdinConnect to 0.1.57 (#98056) 2023-08-11 14:19:10 +02:00
Sam Reed
73f0ac0542 Remove trailing . from melcloud service descriptions (#98053) 2023-08-11 14:19:06 +02:00
Joost Lekkerkerker
4e6c839065 Add translation keys to Tuya cover (#98040) 2023-08-11 14:19:03 +02:00
J. Nick Koston
dbbe1456a4 Bump aiohomekit to 2.6.15 (#98005)
changelog: https://github.com/Jc2k/aiohomekit/compare/2.6.14...2.6.15
2023-08-11 14:19:00 +02:00
Aaron Bach
21f0210abd Bump pyairvisual to 2023.08.1 (#97999) 2023-08-11 14:18:56 +02:00
puddly
955c1ec215 Bump ZHA dependency bellows to 0.35.9 (#97976)
Bump bellows to 0.35.8
2023-08-11 14:18:53 +02:00
lymanepp
a2227079e4 Fix tomorrowio integration for new users (#97973)
The tomorrow.io integration isn't working for new users due to changes made by tomorrow.io. This fixes that with the following changes:
* Add 60 minute timestep option
* Change default timestep to 60 minutes
2023-08-11 14:18:50 +02:00
tronikos
504d164349 Android TV Remote: Fix missing key and cert when adding a device via IP address (#97953)
Fix missing key and cert
2023-08-11 14:18:47 +02:00
Alex Yao
4b09e3b4a3 Bump yeelight to v0.7.13 (#97933)
Co-authored-by: alexyao2015 <alexyao2015@users.noreply.github.com>
2023-08-11 14:18:43 +02:00
J. Nick Koston
c9f474a417 Bump pyatv to 0.13.4 (#97932) 2023-08-11 14:18:40 +02:00
jan iversen
a276fd444e modbus: Adjust read count by slave_count (#97908) 2023-08-11 14:18:37 +02:00
Luke
79bb857e06 Bump python-roborock to 0.32.2 (#97907)
* bump to 0.32.2

* fix test
2023-08-11 14:18:33 +02:00
J. Nick Koston
c417b1e611 Fix handling HomeKit events when the char is in error state (#97884) 2023-08-11 14:18:30 +02:00
J. Nick Koston
a8c181b7fc Avoid polling event characteristic in homekit_controller (#97877) 2023-08-11 14:18:27 +02:00
J. Nick Koston
80a473682e Do not fire homekit_controller events from IP polling (#97869)
* Fix homekit_controller triggers when value is None

* fixes

* cover
2023-08-11 14:18:23 +02:00
Richard Kroegel
2b3bf36364 Bump bimmer_connected to 0.13.9, fix notify (#97860)
Bump bimmer_connected to 0.13.9

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-08-11 14:18:20 +02:00
Joost Lekkerkerker
5aa96aa6f6 Add missing translation key to Gardena Bluetooth (#97855) 2023-08-11 14:18:17 +02:00
G Johansson
379e144f84 Bump pysensibo to 1.0.33 (#97853)
* Bump pysensibo to 1.0.33

* for loop
2023-08-11 14:18:14 +02:00
MarkGodwin
60da270372 Bump Omada API version to fix #96193 (#97848) 2023-08-11 14:18:11 +02:00
G Johansson
9b090d8c7b Fix Command Line template error when data is None (#97845)
Command Line template error
2023-08-11 14:18:08 +02:00
Michael
871ab7a818 Fallback to get_hosts_info on older Fritz!OS in AVM Fritz!Tools (#97844) 2023-08-11 14:18:04 +02:00
Joost Lekkerkerker
70730e4170 Fix Samsung syncthru device info (#97843)
Fix Samsung device info
2023-08-11 14:18:00 +02:00
J. Nick Koston
922f3f2816 Bump aiohomekit to 2.6.13 (#97820) 2023-08-11 14:17:57 +02:00
Franck Nijhof
19d6c0c949 Ensure webhooks take HA cloud into account (#97801)
* Ensure webhooks take HA cloud into account

* Avoid circular import
2023-08-11 14:17:53 +02:00
Erwin Douna
136b91b539 Integration tado bump (#97791)
* Bumping to PyTado 0.16 and adding test coverage

* Removing comment

* Upgrading the deprecated functions

* Updating tests to support paramterization

* Delete test_config_flow.py

Reverting the tests, which will be placed in a different PR.

* Revert "Delete test_config_flow.py"

This reverts commit 1719ebc990.

* Reverting back changes
2023-08-11 14:17:50 +02:00
Robert Svensson
cdc1de08ad Improve counting of UniFi WLAN Clients sensor (#97785) 2023-08-11 14:17:47 +02:00
Maciej Bieniek
01fad9b41c Don't assume that battery_level value is always present in Tractive hw_info (#97766)
Don't assume that battery_level value is always present in hw_info
2023-08-11 14:17:43 +02:00
Ian Harcombe
f7dbe88ee0 Fix metoffice visibility range sensor device class (#97763)
* Fix for issue #97694

Issue #97694 points out that the visibility range is a string with a band of distances, not a single value, which is causing issues for front end components. Removed the device class to leave as an informational string value.

* Removed *all* empty device_class statements

* Missed an empty device_class :(
2023-08-11 14:17:40 +02:00
Joost Lekkerkerker
2e98c3f077 Add yeelight class to fix superclass issue (#97649)
* Add device naming to Yeelight

* Add extra light entity to fix superclass

* Add extra light entity to fix superclass
2023-08-11 14:17:37 +02:00
karwosts
a397782ae3 Handle Alert exception on notification failure (#93632) 2023-08-11 14:17:32 +02:00
Robert Svensson
7f616b0d44 Improve UniFi control PoE mode (#98119) 2023-08-11 14:11:06 +02:00
Joost Lekkerkerker
e6ba6c295c Add base entity to Garages Amsterdam (#98172) 2023-08-11 13:55:38 +02:00
Joost Lekkerkerker
3499ba3a9e Add device classes to Buienradar (#98151) 2023-08-11 13:54:57 +02:00
Joost Lekkerkerker
27876b929b Migrate iZone to has entity name (#98234) 2023-08-11 13:53:11 +02:00
tronikos
fe794e2be3 Fix Opower utilities that have different ReadResolution than previously assumed (#97823) 2023-08-11 13:47:49 +02:00
Erik Montnemery
97f3199d6d Do not add entities with invalid device info (#98150) 2023-08-11 13:14:47 +02:00
Joost Lekkerkerker
a2cf08a1ea Add entity translations to Keymitt ble (#98236) 2023-08-11 13:14:13 +02:00
Marc Mueller
fb66ceb302 Update mypy to 1.5.0 (#98179) 2023-08-11 13:13:04 +02:00
Joakim Plate
990ec1d445 Make gardena closing sensor unavailable when closed (#98133) 2023-08-11 13:07:45 +02:00
Allen Porter
a0ac8ba5a6 Enforce a minimum temperature range for nest thermostats (#98238) 2023-08-11 12:21:19 +02:00
Joost Lekkerkerker
b67e290eaa Use explicit device name in Broadlink (#98229) 2023-08-11 12:15:04 +02:00
Joost Lekkerkerker
41572480fd Migrate DenonAVR to has entity name (#98155) 2023-08-11 11:58:02 +02:00
epenet
c62081430b Refactor JSON attribute parsing in rest (#97526)
* Refactor JSON attribute parsing in rest

* Early return
2023-08-11 11:00:55 +02:00
G Johansson
832a8247de Fix CI mypy issues (#98241)
Fix CI
2023-08-11 10:11:13 +02:00
Joost Lekkerkerker
25231637a5 Add device to DWD (#98120) 2023-08-11 08:27:40 +02:00
MatthewFlamm
9a1bfe1e1c Bump pynws 1.5.1; fix regression for precipitation probability (#98237)
bump pynws 1.5.1
2023-08-11 08:19:06 +02:00
Joost Lekkerkerker
24add3f766 Migrate Doorbird to has entity name (#98161) 2023-08-10 17:09:26 -10:00
Joost Lekkerkerker
914baaa2ba Migrate DirecTV to has entity name (#98159)
* Migrate DirecTV to has entity name

* Migrate DirecTV to has entity name
2023-08-10 22:10:46 -04:00
Erik Montnemery
2e1a5ddf2b Don't allow creating device if config entry does not exist (#98157)
* Don't allow creating device if config entry does not exist

* Fix test

* Update test
2023-08-10 22:09:13 -04:00
Erik Montnemery
045c327928 Move DeviceInfo from entity to device registry (#98149)
* Move DeviceInfo from entity to device registry

* Update integrations
2023-08-10 22:04:26 -04:00
J. Nick Koston
108bcabf75 Add missing transmit power to ESPHome Bluetooth scanners (#98175)
We did not previously have a way to get the transmit power value when using
ESPHome scanners. bluetooth-data-tools 1.8.0 includes it in the
advertisment tuple to fully align with the bleak implementation.

txpower is not yet used in the HA codebase but may be expected by
upstream libaries that calculate estimated distance
2023-08-10 21:59:37 -04:00
Franck Nijhof
296c27859e Fix issue registry sending unneeded update events (#98230) 2023-08-10 21:57:42 -04:00
Charles Garwood
b653d7f683 Fix Enphase dry contact binary sensor state updates (#98225)
Fix dry contact binary sensor state updates
2023-08-11 00:00:54 +02:00
Joost Lekkerkerker
86f94662eb Add entity translations to EZVIZ (#98123) 2023-08-10 23:49:14 +02:00
G Johansson
aacb8aecfc Refactor Rest Sensor with ManualTriggerEntity (#97396)
* ManualTriggerEntity for rest sensor

* add availability test

* review comments

* last fixes
2023-08-10 21:46:56 +02:00
Joost Lekkerkerker
82ade574d8 Migrate WAQI to aiowaqi library (#98000)
* Migrate WAQI to aiowaqi library

* Migrate WAQI to aiowaqi library

* Migrate WAQI to aiowaqi library
2023-08-10 20:18:57 +02:00
Erik Montnemery
4e8b81370e Adjust device_registry tests which create devices (#98215) 2023-08-10 19:28:33 +02:00
Erik Montnemery
c7b4d4f361 Adjust helpers tests which create devices (#98214) 2023-08-10 19:28:16 +02:00
Erik Montnemery
f1d4a4bd26 Adjust zwave_js tests which create devices (#98213) 2023-08-10 18:27:22 +02:00
Erik Montnemery
49011f0158 Adjust hue tests which create devices (#98195) 2023-08-10 18:27:05 +02:00
Erik Montnemery
3fdc98063e Adjust bond tests which create devices (#98183) 2023-08-10 18:26:44 +02:00
Erik Montnemery
fcdfeb74c8 Adjust smartthings tests which create devices (#98207) 2023-08-10 18:26:20 +02:00
Erik Montnemery
6803a62368 Adjust ruckus_unleashed tests which create devices (#98206) 2023-08-10 18:26:13 +02:00
Erik Montnemery
b11dc50f9e Adjust homekit_controller tests which create devices (#98194) 2023-08-10 18:25:53 +02:00
Erik Montnemery
e1e4b0dcf0 Adjust device_automation tests which create devices (#98187) 2023-08-10 18:25:42 +02:00
Erik Montnemery
57d0fd7bb1 Adjust derivative tests which create devices (#98186) 2023-08-10 18:25:28 +02:00
Chris
fe1f617a35 Add unifi power stats for PDU outlets (#98081)
Adds support for power stats for PDU outlets.
2023-08-10 18:25:03 +02:00
Erik Montnemery
c1b47b88f2 Adjust utility_meter tests which create devices (#98212) 2023-08-10 18:24:47 +02:00
Erik Montnemery
05ac67eba2 Adjust unifi tests which create devices (#98211) 2023-08-10 18:24:42 +02:00
Erik Montnemery
fb1bb0d374 Adjust switch_as_x tests which create devices (#98210) 2023-08-10 18:24:39 +02:00
Erik Montnemery
8813140ed5 Adjust threshold tests which create devices (#98208) 2023-08-10 18:24:36 +02:00
Erik Montnemery
6ea7011a07 Adjust ps4 tests which create devices (#98205) 2023-08-10 18:24:25 +02:00
Erik Montnemery
7b157baed6 Adjust plex tests which create devices (#98204) 2023-08-10 18:24:22 +02:00
Erik Montnemery
9d3be60b05 Adjust openai_conversation tests which create devices (#98203) 2023-08-10 18:24:19 +02:00
Erik Montnemery
13a9b83ed3 Adjust mqtt tests which create devices (#98202) 2023-08-10 18:23:55 +02:00
Erik Montnemery
0b69f37d57 Adjust motioneye tests which create devices (#98201) 2023-08-10 18:23:51 +02:00
Erik Montnemery
bd4d1abc28 Adjust mikrotik tests which create devices (#98200) 2023-08-10 18:23:48 +02:00
Erik Montnemery
9831498259 Adjust mazda tests which create devices (#98199) 2023-08-10 18:23:44 +02:00
Erik Montnemery
e9a0436605 Adjust matter tests which create devices (#98198) 2023-08-10 18:23:41 +02:00
Erik Montnemery
3495d762a4 Adjust kraken tests which create devices (#98197) 2023-08-10 18:23:37 +02:00
Erik Montnemery
3e6c844048 Adjust integration tests which create devices (#98196) 2023-08-10 18:23:33 +02:00
Erik Montnemery
07b19b3dd9 Adjust homekit tests which create devices (#98193) 2023-08-10 18:23:17 +02:00
Erik Montnemery
4329a47ef8 Adjust google_generative_ai_conversation tests which create devices (#98192) 2023-08-10 18:23:13 +02:00
Erik Montnemery
f11f7ac45c Adjust google_assistant tests which create devices (#98191) 2023-08-10 18:23:10 +02:00
Erik Montnemery
983ebeff80 Adjust freebox tests which create devices (#98190) 2023-08-10 18:22:44 +02:00
Erik Montnemery
52183d64ae Adjust fibaro tests which create devices (#98189) 2023-08-10 18:22:39 +02:00
Erik Montnemery
ec143b26d7 Adjust device_tracker tests which create devices (#98188) 2023-08-10 18:22:33 +02:00
Erik Montnemery
da53944a37 Adjust conversation tests which create devices (#98185) 2023-08-10 18:22:17 +02:00
Erik Montnemery
5909a1187d Adjust config tests which create devices (#98184) 2023-08-10 18:22:12 +02:00
Erik Montnemery
f77387bd0f Adjust asuswrt tests which create devices (#98182) 2023-08-10 18:21:46 +02:00
RoboMagus
f0e9dccb58 Only handle shell commands output when return_response requested (#97777) 2023-08-10 18:11:15 +02:00
Joost Lekkerkerker
07a701551b Add missing translation key in Tuya (#98122) 2023-08-10 18:04:24 +02:00
Maximilian
6545c46ba0 Bump pynina to 0.3.2 (#98070) 2023-08-10 16:54:19 +02:00
tronikos
9a2cb3ad1f Opower: Add gas sensors for utilities that report CCF (#98142)
Add gas sensors for utilities that report CCF
2023-08-10 16:49:23 +02:00
Álvaro Fernández Rojas
4981eadd31 Update aioairzone to v0.6.5 (#98163)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-08-10 16:47:16 +02:00
Joost Lekkerkerker
59768635f2 Fix ruff checks for opensky (#98176) 2023-08-10 16:04:00 +02:00
Joost Lekkerkerker
a7f7f56342 Implement opensky data update coordinator (#97925)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-08-10 15:42:46 +02:00
Stefan Agner
bba57f39d5 Add Home Assistant Green (#98171) 2023-08-10 15:00:43 +02:00
Franck Nijhof
868a5f377f Ruff: isort don't split imports based on trailing comma (#98162) 2023-08-10 14:27:03 +02:00
Thijs W
726b0c5179 Address late comments in #97955 (#98165) 2023-08-10 13:58:48 +02:00
Joost Lekkerkerker
e9f9c7799a Add device to cert expiry (#98152)
* Add device to cert expiry

* Apply suggestions from code review

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-10 13:05:58 +02:00
G Johansson
4531dbbe62 Refactor Rest Binary sensor with ManualTriggerEntity (#97400)
* Refactor Rest Binary sensor w/ ManualTriggerEntity

* test availability

* review comments

* Use super

* Fix config
2023-08-10 12:59:23 +02:00
Joakim Plate
9b74321487 Correct unit of rain pause (#98131) 2023-08-10 12:37:28 +02:00
Jan Bouwhuis
b872d74b1f Fix lingering test alexa (#98128) 2023-08-10 12:16:52 +02:00
tronikos
5812090eff Get Opower accounts from the customer endpoint (#98144)
Get accounts from the customer endpoint
2023-08-10 12:11:01 +02:00
tronikos
84d779fab7 Bump opower to 0.0.26 (#98141) 2023-08-10 11:13:55 +02:00
Joost Lekkerkerker
5dcffca88d Move Rova constants to separate file (#97566)
* Move Rova constants to separate file

* Update homeassistant/components/rova/const.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-10 10:41:06 +02:00
Thijs W
355ef4eac8 Add unique_id to frontier_silicon media_player entity (#97955) 2023-08-10 10:19:27 +02:00
Marc Mueller
3dd377cb2a Update orjson to 3.9.4 (#98108) 2023-08-09 20:37:59 -10:00
J. Nick Koston
e05b74668c Bump dbus-fast to 1.91.2 (#98105) 2023-08-09 20:31:57 -10:00
Raman Gupta
056d00fb11 Update zwave_js entity naming logic (#98140)
* Update zwave_js entity naming logic

* Update homeassistant/components/zwave_js/entity.py

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

* store primary value locally

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-10 02:08:14 -04:00
Raman Gupta
5d3d66e47d Bump zwave-js-server-python to 0.50.1 (#94760)
* Bump zwave-js-server-python to 0.50.0

* handle additional upstream changes

* Additional changes

* fix tests

* Convert two similar functions to be one function

* Fix docstring

* Remove conditional pydantic import

* Revert scope change

* Bump zwave-js-server-python

* Set default return value for command

* Remove line breaks

* Add coverage
2023-08-10 01:28:08 -04:00
Luke
2841cbbed2 Add Off-peak power control to Roborock (#97307)
* add off-peak switch and time

* Make off_peak disabled by default
2023-08-09 22:04:01 +02:00
Robert Svensson
02c27d8ad2 UniFi WLAN availability affected by WLAN enabled (#98020) 2023-08-09 18:52:35 +02:00
Joost Lekkerkerker
138854a9cc Migrate EAFM to has entity name (#98121) 2023-08-09 17:44:08 +02:00
G Johansson
4c03077dfe Add product filtering feature to Trafikverket Train (#86343) 2023-08-09 17:20:30 +02:00
Erik Montnemery
0317afeb17 Fix mock_integration and mock_platform test helpers (#98109) 2023-08-09 15:38:57 +02:00
David Knowles
023f2f8bb7 Add switch platform to Schlage (#98004)
* Add switch platform to Schlage

* Add a generic SchlageSwitch

* Use an is_on property instead of _attr_is_on

* Make value_fn always return a bool
2023-08-09 15:32:50 +02:00
Erik Montnemery
e1f0b44ba4 Use math.isfinite instead of explicitly checking for both nan and inf (#98103) 2023-08-09 14:13:57 +02:00
J. Nick Koston
7e9d0cca44 Refactor enphase_envoy to have a shared base class (#98088)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-09 01:28:27 -10:00
Sam Reed
2cae79415d zha: Fix double spaces in strings.json (#98097) 2023-08-09 11:21:05 +02:00
tronikos
35718b2917 Bump opower to 0.0.24 (#98091) 2023-08-09 10:32:00 +02:00
J. Nick Koston
1b54b22a91 Bump pyenphase to 1.3.0 (#98090) 2023-08-08 21:11:57 -10:00
Brandon Rothweiler
d569d01cfb Bump pymazda to 0.3.11 (#98084) 2023-08-09 07:17:17 +01:00
Charles Garwood
ce6b759b70 Add Envoy enpower sensors (#98086) 2023-08-08 17:05:52 -10:00
Joost Lekkerkerker
d975e93abc Add entity translations for Ambient station (#98075)
* Add entity translations for Ambient station

* Fix missed key
2023-08-09 01:16:55 +02:00
J. Nick Koston
331bdcc596 Bump pyenphase to 1.1.3 (#98074)
changelog: https://github.com/pyenphase/pyenphase/compare/v1.1.1...v1.1.3
2023-08-08 18:51:17 -04:00
Jan Bouwhuis
5c9bce9eac Allow float for inital MQTT climate temperature (#97995)
* Allow float for inital MQTT climate temperature

* Update tests/components/mqtt/test_climate.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-08-08 23:44:49 +02:00
Charles Garwood
25467b573e Bump pyenphase to 1.1.1 (#98065) 2023-08-08 11:27:59 -10:00
Joost Lekkerkerker
524a26d9e1 Add entity translations to Neato (#98067)
* Add entity translations to Neato

* Use robot name
2023-08-08 22:05:12 +02:00
Erik Montnemery
66e3d69606 Remove confusing comment from accuweather (#98063) 2023-08-08 22:02:45 +02:00
Sam Reed
3624e30380 Update silabs_multiprotocol_hardware change cannel options flow description (#98047)
strings.json: Update silabs_multiprotocol_hardware::options message

* Removes trailing space
* Fixes double space
* Adds word before noun
2023-08-08 20:13:19 +02:00
Charles Garwood
c154077177 Add Encharge binary sensors to Enphase integration (#98039)
* Add Encharge binary sensors to Enphase integration

* Code review minor cleanup

* Add to coveragerc
2023-08-08 20:03:02 +02:00
Sam Reed
45d4c307de Hyphenate "human-readable" in light service description (#98057) 2023-08-08 19:43:09 +02:00
G Johansson
8f2e30040c Add DeviceInfo to Scrape (#97399)
* Add DeviceInfo to Scrape

* simplify

* review comment
2023-08-08 19:39:41 +02:00
mkmer
314d91692f Bump AIOAladdinConnect to 0.1.57 (#98056) 2023-08-08 19:39:26 +02:00
Erik Montnemery
a77009c3ca Patch dt_util.utcnow earlier (#98050) 2023-08-08 19:16:52 +02:00
Sam Reed
ba3f0372f3 Fix duplicated word in imap_email_content deprecation issue description (#98051) 2023-08-08 19:15:39 +02:00
Michael
d7a1b1e941 Fallback to get_hosts_info on older Fritz!OS in AVM Fritz!Tools (#97844) 2023-08-08 19:15:06 +02:00
G Johansson
d557f3b742 Add state attributes translation and available modes for Sensibo (#85234)
* Sensibo translation climate

* Add available states

* Fix keys

* Delete en.json

* invalid fan_mode and swing_mode

* Translations

* Add back sorting

* Fix fan_mode and swing_mode

* Fix raise error

* review
2023-08-08 19:13:56 +02:00
Sam Reed
bfc578a757 Fix address typo in Reolink SSL issue description (#98060) 2023-08-08 19:13:35 +02:00
Erik Montnemery
f36e75ecf1 Add WeatherEntity.__post_init__ (#98034) 2023-08-08 19:11:55 +02:00
Sam Reed
75fbc7a97c Hyphenate "human-readable" in LIFX service description (#98058) 2023-08-08 19:07:40 +02:00
Sam Reed
14a993d33b Remove trailing . from melcloud service descriptions (#98053) 2023-08-08 19:07:17 +02:00
Erik Montnemery
eb64e89ecf Make changes in modbus trigger a full CI run (#98055) 2023-08-08 18:49:56 +02:00
Joost Lekkerkerker
466c5ce591 Add some constants back that were used to Flexit and Stiebel (#98042)
* Add some constants back that were used

* Update __init__.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-08-08 18:41:47 +02:00
Joost Lekkerkerker
c78c2b7c3b Add translation keys to Tuya cover (#98040) 2023-08-08 18:02:47 +02:00
Joost Lekkerkerker
ce1077934a Move all used modbus constants to Stiebel (#98044) 2023-08-08 17:38:38 +02:00
Jan Bouwhuis
500d9a4da0 Alexa strict type hints (#97485)
* Enable strict typing

* Adjustments for stict typing
2023-08-08 17:15:25 +02:00
Maciej Bieniek
9910da2f3d Add neutral current sensor for Shelly 3EM (#97981) 2023-08-08 16:47:18 +02:00
jan iversen
fc463e5831 modbus: remove unused constants and get 100% coverage. (#97779) 2023-08-08 16:40:16 +02:00
Tom
4a4523c249 Bump plugwise to v0.31.9 (#97203)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Bouwe <bouwe.s.westerdijk@gmail.com>
2023-08-08 16:38:37 +02:00
jan iversen
a224b668d7 modbus: Adjust read count by slave_count (#97908) 2023-08-08 16:09:53 +02:00
Jan Bouwhuis
2a48159b69 Alexa typing part 6 (state_report) (#97920)
state_report
2023-08-08 15:46:54 +02:00
Massimiliano Cannarozzo
8b56e28838 Add neato dismiss alert button (#97572)
* Bump pybotvac

* Add neato dismiss alert button

* fixup! Add neato dismiss alert button

* fixup! Add neato dismiss alert button

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

* fixup! Add neato dismiss alert button

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

* fixup! Add neato dismiss alert button

* fixup! Add neato dismiss alert button

* fixup! Add neato dismiss alert button

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* fixup! Add neato dismiss alert button

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* fixup! Add neato dismiss alert button

* fixup! Add neato dismiss alert button

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-08 14:35:41 +02:00
Erik Montnemery
0d55a7600e Modernize met_eireann weather (#98030) 2023-08-08 14:21:52 +02:00
Franck Nijhof
50ef674902 Use require_admin decorator for check_config permissions (#98028) 2023-08-08 12:19:20 +02:00
Jadson Santos
f6273bfca5 Add prometheus requires_auth parameter (#92964)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-08-08 12:15:08 +02:00
Franck Nijhof
40e256847c Add is_admin checks to scene/script/automation APIs (#98025) 2023-08-08 12:11:52 +02:00
Erik Montnemery
55619e7d6d Modernize ecobee weather (#98023) 2023-08-08 12:06:24 +02:00
Jan Bouwhuis
0614702f98 Alexa typing part 5 (smart_home) (#97918)
* smart_home

* Fix test_disabled

* Remove unused type ignore
2023-08-08 11:48:50 +02:00
Erik Montnemery
1ee0c907b0 Improve OTBR factory reset (#98017)
Co-authored-by: Stefan Agner <stefan@agner.ch>
2023-08-08 11:38:01 +02:00
Jan Bouwhuis
3f542c47fd Alexa typing part 4 (capabilities) (#97915)
* capabilities

* hvacmode

* tweaks

* name

* Corrections

* Missed hints

* remove unreachabe code
2023-08-08 11:07:52 +02:00
Franck Nijhof
5e020ea354 Add is_admin checks to cloud APIs (#97804) 2023-08-08 11:02:42 +02:00
Stephan Uhle
3859d2e2a6 Add edl21 sensor for positive active instantaneous power (#94736) 2023-08-08 10:35:31 +02:00
Franck Nijhof
dacfa4b4dc Set up shopping list during onboarding (#97974)
Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2023-08-08 10:32:35 +02:00
Russell Cloran
dfdf592837 Update prometheus-client to 0.17.1 (#97998) 2023-08-08 10:16:37 +02:00
J. Nick Koston
2a80a63ac2 Cleanup enphase_envoy sensor inheritance (#98012) 2023-08-08 10:10:36 +02:00
Charles Garwood
128dadafae Add initial sensors for Enphase Encharge batteries (#97946) 2023-08-07 16:46:00 -10:00
Michael Hansen
7ea2998b55 Add wake word integration (#96380)
* Add wake component

* Add wake support to Wyoming

* Add helper function to assist_pipeline (not complete)

* Rename wake to wake_word

* Fix platform

* Use send_event and clean up

* Merge wake word into pipeline

* Add wake option to async_pipeline_from_audio_stream

* Add start/end stages to async_pipeline_from_audio_stream

* Add wake timeout

* Remove layer in wake_output

* Use VAD for wake word timeout

* Include audio metadata in wake-start

* Remove unnecessary websocket command

* wake -> wake_word

* Incorporate feedback

* Clean up wake_word tests

* Add wyoming wake word tests

* Add pipeline wake word test

* Add last processed state

* Fix tests

* Add tests for wake word

* More tests for the codebot
2023-08-07 22:22:16 -04:00
J. Nick Koston
798fb3e31a Bump aiohomekit to 2.6.15 (#98005)
changelog: https://github.com/Jc2k/aiohomekit/compare/2.6.14...2.6.15
2023-08-08 02:30:47 +02:00
Joost Lekkerkerker
0bdae8a382 Use global constant for enphase token (#98002) 2023-08-08 00:52:54 +02:00
Aaron Bach
aff369d64c Bump pyairvisual to 2023.08.1 (#97999) 2023-08-07 16:23:27 -06:00
puddly
323657e6d7 Bump ZHA dependency bellows to 0.35.9 (#97976)
Bump bellows to 0.35.8
2023-08-07 18:14:47 -04:00
Jan Bouwhuis
d403625e60 Alexa typing part 3 (handlers) (#97912)
handlers
2023-08-07 23:59:56 +02:00
Matthias Alphart
0f5d423d1e Move KNX keyring validation and storage to helper module (#97931)
* Move KNX keyfile validation and store to helper module

* Rename module and fix tests
2023-08-07 23:30:14 +02:00
J. Nick Koston
987897b0fa Add support for Yale Doorman to august (#97997) 2023-08-07 11:28:01 -10:00
Jan Bouwhuis
5657cfa052 Alexa typing part 2 (#97911)
* Alexa typing part 2

* Update homeassistant/components/alexa/intent.py

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

* Missed type hints

* precision

* Follow up comment

* value

* revert abstract class changes

* raise NotImplementedError()

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-07 23:26:44 +02:00
J. Nick Koston
c8256d1d3d Optimize august timings to prepare for Yale Doorman support (#97940) 2023-08-07 11:09:32 -10:00
J. Nick Koston
7080e0c280 Bump yalexs to 1.5.2 (#97991) 2023-08-07 11:00:30 -10:00
J. Nick Koston
d304d42051 Restore qingping state when device becomes available (#97980) 2023-08-07 09:27:18 -10:00
J. Nick Koston
56c2276630 Restore sleepy oralb devices state at startup (#97983) 2023-08-07 09:19:46 -10:00
J. Nick Koston
b7f936fcdd Restore govee_ble state when gateway device becomes available (#97984) 2023-08-07 09:13:50 -10:00
Jan Bouwhuis
40a221c923 Alexa typing part 1 (#97909)
* Typing part 1

* mypy

* Correct typing for logbook
2023-08-07 20:36:30 +02:00
J. Nick Koston
fb12c237ab Restore xiaomi_ble state at start when device is in range or sleepy (#97979) 2023-08-07 07:58:27 -10:00
Ståle Storø Hauknes
b34ce3c792 Improve airthings ble (#97905)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-08-07 07:15:51 -10:00
J. Nick Koston
a234ab51fe Restore bthome state at start when device is in range or sleepy (#97949) 2023-08-07 18:41:53 +02:00
Joost Lekkerkerker
d56484e2d6 Fix docstrings in mobile app device tracker (#97963) 2023-08-07 18:41:08 +02:00
David Knowles
a4721e9b36 Schlage: Set the changed by attribute on locks based on log messages (#97469) 2023-08-07 06:07:48 -10:00
lymanepp
4089bd43da Fix tomorrowio integration for new users (#97973)
The tomorrow.io integration isn't working for new users due to changes made by tomorrow.io. This fixes that with the following changes:
* Add 60 minute timestep option
* Change default timestep to 60 minutes
2023-08-07 17:54:06 +02:00
G Johansson
c4da5374ae Refactor Trafikverket Train to improve config flow (#97929)
* Refactor tvt

* review fixes

* review comments
2023-08-07 17:25:02 +02:00
G Johansson
15eed166ec Modernize SMHI weather (#97275)
* SMHI forecast service

* Mod weather

* reset weather

* Fix tests

* coverage

* add test
2023-08-07 17:24:43 +02:00
Erwin Douna
65365d1db5 Integration tado bump (#97791)
* Bumping to PyTado 0.16 and adding test coverage

* Removing comment

* Upgrading the deprecated functions

* Updating tests to support paramterization

* Delete test_config_flow.py

Reverting the tests, which will be placed in a different PR.

* Revert "Delete test_config_flow.py"

This reverts commit 1719ebc990.

* Reverting back changes
2023-08-07 15:59:46 +02:00
Erik Montnemery
3a0822e03b Modernize met.no weather (#97952) 2023-08-07 14:06:16 +02:00
Erik Montnemery
683c2f8d22 Add service for getting a weather forecast (#97078)
* Add service for getting a weather forecast

* Fix translations

* Improve service description

* Improve error handling

* Adjust typing

* Adjust typing

* Adjust service response format
2023-08-07 14:05:37 +02:00
tronikos
0a2ff3a676 Android TV Remote: Fix missing key and cert when adding a device via IP address (#97953)
Fix missing key and cert
2023-08-07 14:01:35 +02:00
Charles Garwood
eff7b8f81a Update enphase_envoy codeowners (#97947) 2023-08-07 13:27:51 +02:00
G Johansson
301eaa30b1 Neato add yaml config removal issue (#97447) 2023-08-07 13:14:33 +02:00
Marc Mueller
cf4287cd0c Fix alexa test RuntimeWarning (#97956) 2023-08-07 12:57:37 +02:00
Mick Vleeshouwer
b317d36d0f Bump pyoverkiz to 1.10.1 (#97916)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-08-07 12:32:59 +02:00
Guido Schmitz
5232b6ee6a Bump devolo_plc_api to 1.4.0 (#97951) 2023-08-07 12:08:19 +02:00
starkillerOG
d72057f41b Add repair issue for Reolink when using it with an incompatible global ssl certificate (#91597) 2023-08-07 11:52:14 +02:00
G Johansson
001dda6345 Fix weather entities with update_before_add (#97950)
Fix weather entities update_before_add
2023-08-07 09:42:20 +02:00
J. Nick Koston
56257b7a38 Restore passive bluetooth entity data at startup (#97462) 2023-08-06 20:25:18 -10:00
J. Nick Koston
1adfa6bbeb Reduce overhead to start a config entry flow by optimizing fetching the handler (#97883) 2023-08-06 20:25:03 -10:00
Franck Nijhof
369a484a78 Add default headers to webserver responses (#97784)
* Add default headers to webserver responses

* Set default server header

* Fix other tests
2023-08-06 23:25:13 -04:00
Franck Nijhof
3df71eca45 Ensure webhooks take HA cloud into account (#97801)
* Ensure webhooks take HA cloud into account

* Avoid circular import
2023-08-06 23:23:52 -04:00
J. Nick Koston
05e131452d Add model/part number data enphase_envoy (#97942) 2023-08-06 16:55:34 -10:00
Jan Bouwhuis
3969de6c76 Freeze time for whirlpool test to avoid fail (#97935) 2023-08-06 12:37:06 -10:00
Joost Lekkerkerker
b2d2de990d Remove DWD code owner (#97938) 2023-08-06 12:36:19 -10:00
Alex Yao
df8f1328e9 Bump yeelight to v0.7.13 (#97933)
Co-authored-by: alexyao2015 <alexyao2015@users.noreply.github.com>
2023-08-06 12:20:48 -10:00
J. Nick Koston
157f7a3079 Bump pyatv to 0.13.4 (#97932) 2023-08-06 12:20:28 -10:00
J. Nick Koston
4230465fcd Avoid polling event characteristic in homekit_controller (#97877) 2023-08-06 11:11:03 -10:00
Marc Mueller
d993aa59ea Update orjson to 3.9.3 (#97930) 2023-08-06 22:59:44 +02:00
Luke
c9edc973f0 Bump python-roborock to 0.32.2 (#97907)
* bump to 0.32.2

* fix test
2023-08-06 22:34:14 +02:00
David Knowles
50ccd68de1 Bump pyschlage to 2023.8.1 (#97927) 2023-08-06 10:20:16 -10:00
J. Nick Koston
99c3ca030d Bump pyenphase to 0.11.0 (#97926) 2023-08-06 09:31:37 -10:00
G Johansson
4d24a3ffaa Bump pytrafikverket to 0.3.5 (#97923) 2023-08-06 20:58:16 +02:00
J. Nick Koston
ceac5f8d5a Proactively refresh the enphase envoy token to handle cloud service downtime (#97880) 2023-08-06 08:31:45 -10:00
G Johansson
a59793df4c Bump pytrafikverket to 0.3.4 (#97921) 2023-08-06 20:01:01 +02:00
Joost Lekkerkerker
42bca0f94a Complete test coverage for OpenSky (#97863)
* Use mockobject for OpenSky testing

* Complete test coverage for OpenSky

* Complete test coverage for OpenSky

* Use method patching
2023-08-06 19:39:24 +02:00
Maikel Punie
0535578440 Velbus code cleanup (#97584)
* Some cleanup and code improvements for the velbus integration

* Comments

* More comments

* Update homeassistant/components/velbus/entity.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* More comments

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-06 19:12:19 +02:00
G Johansson
6bc5b8989d Fix Trafivkerket Train coordinator exceptions (#97919)
Fix tvt coordinator exceptions
2023-08-06 19:07:18 +02:00
G Johansson
163bbe2c5d Fix Trafikverket Train departure state (#97917)
Fix tvt departure state
2023-08-06 18:50:00 +02:00
G Johansson
74d1c30f7e Trafikverket Train sensor and attributes to new sensors (#71432)
* Initial commit

* Finalize tvt sensors

* Translations

* Fix sensor translation

* migration

* migration fix 2

* Fix name

* Fix translation

* remove translation

* Fixes

* Fix isort and mypy

* translations

* logging

* Remove logging

* departure time

* Review comments

* Mod update entity unique id

* Fix uom

* not async

* UnitOfTime

* cleanup from rebase

* Remove call self

* cleanup extra attributes

* Fix rebase again

* string state
2023-08-06 18:08:07 +02:00
String-656
56dd88db17 Replace Float 'nan' with None for modbus floats (#93832)
Co-authored-by: jan iversen <jancasacondor@gmail.com>
2023-08-06 14:26:56 +02:00
Johannes Wagner
c4a5373976 Handle explicit Modbus NaN values (#90800)
Co-authored-by: jan iversen <jancasacondor@gmail.com>
2023-08-06 13:47:54 +02:00
David Knowles
0511071757 Schlage: Set the battery sensor state_class to measurement (#97879)
Set state_class to measurement
2023-08-06 10:26:16 +02:00
J. Nick Koston
91b308b4ad Fix handling HomeKit events when the char is in error state (#97884) 2023-08-05 19:14:18 -10:00
J. Nick Koston
00e78fbf19 Cache envoy auth tokens to ensure integration works if cloud is offline (#97872) 2023-08-05 14:51:19 -10:00
David Knowles
6a65a97715 Bump pyschlage to 2023.8.0 (#97875) 2023-08-05 14:33:01 -10:00
Joost Lekkerkerker
3bed32f16e Add entity translations for Enphase Envoy (#97876)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-08-05 14:32:35 -10:00
J. Nick Koston
02e546e3ef Refactor enphase_envoy to use pyenphase library (#97862) 2023-08-05 13:33:16 -10:00
Ståle Storø Hauknes
34013ac3e9 Use PRECISION_TENTHS for Mill local integration (#97874) 2023-08-06 01:25:17 +02:00
J. Nick Koston
a09090bf99 Do not fire homekit_controller events from IP polling (#97869)
* Fix homekit_controller triggers when value is None

* fixes

* cover
2023-08-06 00:31:50 +02:00
G Johansson
966784877f Remove long overdue deprecated service boost_heating from Hive (#97444)
* Hive heating_boost deprecation

* Remove strings

* Remove service

* services

* Remove strings
2023-08-05 23:37:01 +02:00
elmurato
8195c9d1a7 Use constants for translation keys and rename latency time to latency (#97866)
Use constants for translation keys, rename latency time to latency and some small cleanups
2023-08-05 23:35:54 +02:00
Ernst Klamer
0caeac1a82 Add support for toothbrushes to xiaomi-ble (#97276)
* Add support for toothbrushes to xiaomi-ble

* use str for string
2023-08-05 23:13:21 +02:00
G Johansson
e4d9daf746 Migrate to SensorEntityDescriptions for Trafikverket Train (#97318)
* tvt migrate to sensor entity description

* spelling

* revert spelling
2023-08-05 22:53:14 +02:00
Jan-Philipp Benecke
71a81e1f5d Change discovergy integration type (#97391) 2023-08-05 22:47:04 +02:00
Daniel Hjelseth Høyer
41c684f36e Use new Mill api (#97497)
* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api. Wip

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill, new api

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Update homeassistant/components/mill/sensor.py

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

* Update homeassistant/components/mill/sensor.py

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

* Mill, new api

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Update homeassistant/components/mill/climate.py

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

* Update homeassistant/components/mill/climate.py

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

---------

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-05 22:46:03 +02:00
Joost Lekkerkerker
c7b7ca8769 Add yeelight class to fix superclass issue (#97649)
* Add device naming to Yeelight

* Add extra light entity to fix superclass

* Add extra light entity to fix superclass
2023-08-05 22:36:45 +02:00
Richard Kroegel
74d02a1574 BMW: Remove deprecated refresh from cloud button (#97864)
* Remove deprecated refresh from cloud button

* Clean up strings.json
2023-08-05 22:28:24 +02:00
J. Nick Koston
c478a81deb Bump bluetooth-data-tools to 1.7.0 (#97821) 2023-08-05 22:21:46 +02:00
Alberto Geniola
e5261fe2a3 Implement Elmax cover platform (#79409)
* Implement Elmax cover platform.

* Reduce the number of code lines by leveraging the := operator

* Move _COMMAND_BY_MOTION_STATUS declaration at the top

* Remove redundant null-check

* Move conditional platform setup logic into the platform itself

* Remove redundant log

* Change log severity for stop request on IDLE cover state

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-05 22:03:51 +02:00
Jan Bouwhuis
2e8e5aabae Refactor alexa modules to avoid circular deps (#97618)
* Refactor alexa modules to avoid circula deps

* Add test http api auth and AlexaConfig

* Update test

* Improve test
2023-08-05 21:32:53 +02:00
Andreas Lindhé
6c8971f18a Improve code quality of CalDav (#97570)
* Use keyword arguments when constructing `WebDavCalendarData`

* Use keyword arguments when constructing `WebDavCalendarEntity`

* Remove random newlines
2023-08-05 20:44:26 +02:00
Richard Kroegel
4b6048b5e0 Bump bimmer_connected to 0.13.9, fix notify (#97860)
Bump bimmer_connected to 0.13.9

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-08-05 20:08:14 +02:00
Robert Svensson
e43ad1c6a0 Add restart device to UniFi button platform (#97642)
* Add restart device to UniFi Button platform

* Add tests for button platform

* Small corrections
2023-08-05 20:07:20 +02:00
MarkGodwin
76c443777d Bump Omada API version to fix #96193 (#97848) 2023-08-05 19:59:03 +02:00
Jack Boswell
5fcac42a0f Add untested Starlink components to .coveragerc (#97825) 2023-08-05 19:55:35 +02:00
Jack Boswell
7436054352 Update starlink-grpc-tools to 1.1.2 (#97824) 2023-08-05 19:54:54 +02:00
Joost Lekkerkerker
24e4f0169c Fix Samsung syncthru device info (#97843)
Fix Samsung device info
2023-08-05 19:43:22 +02:00
G Johansson
249fa513c9 Bump pysensibo to 1.0.33 (#97853)
* Bump pysensibo to 1.0.33

* for loop
2023-08-05 19:02:44 +02:00
Joost Lekkerkerker
03335ae1dc Add missing translation key to Gardena Bluetooth (#97855) 2023-08-05 18:48:13 +02:00
Maikel Punie
6570517330 Add lightplatform to Duotecno (#97582)
* add light platform

* Add light to coveragerc

* Update homeassistant/components/duotecno/light.py

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

* Update homeassistant/components/duotecno/light.py

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

* Update homeassistant/components/duotecno/light.py

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

* Update homeassistant/components/duotecno/light.py

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

* Update homeassistant/components/duotecno/light.py

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

* Update homeassistant/components/duotecno/light.py

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

* comments

* revert

* re-implement comments

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-05 18:29:46 +02:00
G Johansson
a22aa285d3 Fix Melcloud import issue (#97673)
* Fix Melcloud import issue

* remove old issue

* Simplify

* Update homeassistant/components/melcloud/strings.json

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

* Update homeassistant/components/melcloud/strings.json

* Update homeassistant/components/melcloud/strings.json

* Apply suggestions from code review

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-05 17:00:33 +02:00
G Johansson
2e263560ec Fix Command Line template error when data is None (#97845)
Command Line template error
2023-08-05 16:21:39 +02:00
G-Two
c5e5567912 Add device tracker to Subaru integration (#79492)
* Add device tracker to subaru integration

* Fix timestamp in device tracker

* Add test for device tracker

* Incorporate PR review comments

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Incorporate code review comments

* Add tests for bad device tracker data

* Check device tracker data is available in entity

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-08-05 15:52:20 +02:00
Maciej Bieniek
d611b169ac Don't assume that battery_level value is always present in Tractive hw_info (#97766)
Don't assume that battery_level value is always present in hw_info
2023-08-05 13:05:15 +02:00
J. Nick Koston
c2023936c1 Bump aiohomekit to 2.6.13 (#97820) 2023-08-04 22:01:08 -10:00
jan iversen
f0abea48a6 Fix Flexit mypy error in pymodbus (#97799) 2023-08-04 21:38:32 +02:00
Jan Bouwhuis
50da5c3fae Fix typo in telegram_bot translations (#97793) 2023-08-04 21:35:35 +02:00
Jason Cook
32c1ffcde1 Update strings.json to correct grammer. (#97790)
Change of to off.
2023-08-04 21:23:33 +02:00
jan iversen
bbc34bae87 modbus: use pb not pymodbus consistently as name. (#97780)
Use pb not pymodbus consistently as name.
2023-08-04 20:14:32 +02:00
Franck Nijhof
b286da211a Add is_admin check to check configuration API (#97788) 2023-08-04 19:25:01 +02:00
Robert Svensson
66cb407e4f Improve counting of UniFi WLAN Clients sensor (#97785) 2023-08-04 19:22:46 +02:00
Ian Harcombe
b5e23ee650 Fix metoffice visibility range sensor device class (#97763)
* Fix for issue #97694

Issue #97694 points out that the visibility range is a string with a band of distances, not a single value, which is causing issues for front end components. Removed the device class to leave as an informational string value.

* Removed *all* empty device_class statements

* Missed an empty device_class :(
2023-08-04 17:04:18 +02:00
Franck Nijhof
489860a28b 2023.8.1 (#97772) 2023-08-04 14:49:38 +02:00
karwosts
41eca41638 Handle Alert exception on notification failure (#93632) 2023-08-04 14:08:49 +02:00
Franck Nijhof
b00fc9660b Bumped version to 2023.8.1 2023-08-04 13:26:05 +02:00
Joost Lekkerkerker
3b48c8a0f5 Fix WAQI being zero (#97767) 2023-08-04 13:25:12 +02:00
Joost Lekkerkerker
d71f16c8b1 Add has entity name to Solarlog (#97764) 2023-08-04 13:25:09 +02:00
Maikel Punie
9479a59a2f Bump pyduotecno to 2023.8.3 (#97759) 2023-08-04 13:25:06 +02:00
tronikos
39fc557189 Bump opower to 0.0.20 (#97752) 2023-08-04 13:25:03 +02:00
J. Nick Koston
cdabf76d15 Avoid calling the http access logging when logging is disabled in emulated_hue (#97750) 2023-08-04 13:24:59 +02:00
J. Nick Koston
9bec7ea93b Bump zeroconf to 0.74.0 (#97745)
* Bump zeroconf to 0.74.0

changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.72.3...0.74.0

- more cython build fixes
- performance improvements (mostly for pyatv)

* handle typing

* handle typing

* remove if TYPE_CHECKING, this doesnt get called that often

* remove if TYPE_CHECKING, this doesnt get called that often
2023-08-04 13:24:56 +02:00
Marc Mueller
53ee178545 Fix keymitt_ble RuntimeWarning (#97729) 2023-08-04 13:24:52 +02:00
TheJulianJES
79486f1880 Bump zigpy to 0.56.4 (#97722) 2023-08-04 13:24:49 +02:00
Marc Mueller
5283afc116 Update zigpy to 0.56.3 (#97480) 2023-08-04 13:24:43 +02:00
Matthias Alphart
2b876fa485 Fix unloading KNX integration without sensors (#97720) 2023-08-04 13:09:32 +02:00
Michael
047a210786 Fix detection of client wan-access rule in AVM Fritz!Box Tools (#97708) 2023-08-04 13:09:29 +02:00
tronikos
16e1212572 Bump opower to 0.0.19 (#97706) 2023-08-04 13:09:26 +02:00
karwosts
6a9318b90a Fix NWS twice_daily forecast day/night detection (#97703) 2023-08-04 13:09:23 +02:00
amitfin
f066b4645a Fix allow_name_translation logic (#97701) 2023-08-04 13:09:19 +02:00
Cyr-ius
0617363f53 Fix freebox enumerate raid disks (#97696) 2023-08-04 13:09:16 +02:00
Nerdix
7a244e30a4 Fix Kostal_Plenticore SELECT entities using device_info correctly (#97690) 2023-08-04 13:09:12 +02:00
Robert Svensson
694d28ae3b Fix UniFi image platform not loading when passphrase is missing from WLAN (#97684) 2023-08-04 13:09:09 +02:00
Marcel van der Veldt
12d3bce3a7 Fix color mode attribute for both official and non official Hue lights (#97683) 2023-08-04 13:09:05 +02:00
J. Nick Koston
0a24299e23 Bump pyatv to 0.13.3 (#97670)
changelog: https://github.com/postlund/pyatv/compare/v0.13.2...v0.13.3

maybe fixes #80215
2023-08-04 13:09:01 +02:00
J. Nick Koston
1945275b7c Bump zeroconf to 0.72.3 (#97668) 2023-08-04 13:08:58 +02:00
G Johansson
79729043ed Fix date and timestamp device class in Command Line Sensor (#97663)
* Fix date in Command Line sensor

* prettier
2023-08-04 13:08:55 +02:00
J. Nick Koston
6a8484b6da Fix tplink child plug state reporting (#97658)
regressed in https://github.com/home-assistant/core/pull/96246
2023-08-04 13:08:52 +02:00
Nick Iacullo
2f5f15b345 Enable the PRESET_MODE FanEntityFeature for VeSync air purifiers (#97657) 2023-08-04 13:08:48 +02:00
Joost Lekkerkerker
a36e746eb4 Revert "Add device naming to Yeelight" (#97647)
Revert "Add device naming to Yeelight (#97639)"

This reverts commit 82f27115f5.
2023-08-04 13:08:45 +02:00
J. Nick Koston
5da94f40ec Fix typo in tplink OUI (#97644)
The last two were reversed for https://ouilookup.com/search/788cb5
2023-08-04 13:08:42 +02:00
Joost Lekkerkerker
d131b8c80b Add device naming to Yeelight (#97639) 2023-08-04 13:08:39 +02:00
Michael Hansen
455ac084ec Bump intents to 2023.8.2 (#97636) 2023-08-04 13:08:36 +02:00
Luke
62421d9ec3 Bump python-roborock to 0.31.1 (#97632)
bump to 0.31.1
2023-08-04 13:08:32 +02:00
J. Nick Koston
72533ad292 Bump dbus-fast to 1.90.1 (#97619)
* Bump dbus-fast to 1.88.0

- cython 3 fixes
- performance improvements

changelog: https://github.com/Bluetooth-Devices/dbus-fast/compare/v1.87.5...v1.88.0

* one more

* Bump dbus-fast to 1.90.0

* bump again for yet another round of cython3 fixes
2023-08-04 13:07:40 +02:00
Joost Lekkerkerker
c5747dffbc Waqi State unknown if value is string (#97617) 2023-08-04 13:06:40 +02:00
Blastoise186
20bddec328 Bump Cryptography to 41.0.3 for a second security fix (#97611)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-08-04 13:05:40 +02:00
Maikel Punie
b6671385bc Bump pyDuotecno to 2023.8.1 (#97583) 2023-08-04 13:04:13 +02:00
TheJulianJES
21f878bfa4 Fix ZHA turn_on issues with transition=0, improve tests (#97539)
* Fix turn_on ignoring transition=0 and brightness=None, add test

This fixes light.turn_on for ZHA lights ignoring a transition of 0 when no brightness is given at the same time.
It also adds a test for that case.

Fixes https://github.com/home-assistant/core/issues/93265

* Add test for "force on" lights

This test checks that "force on" lights also get an "on" command (in addition to the "move to level" command) when turn_on is called with only transition=0.

* Fix "on" command sent for transition=0 calls, fix FORCE_ON missing for transition=0

This fixes an issue where the "on" command is sent in addition to a "move_to_level_with_on_off" command, even though the latter one is enough (for non-FORCE_ON lights).
It also fixes the test to not expect the unnecessary "on" command (in addition to the expected "move_to_level_with_on_off" command).

The `brightness != 0` change is needed to fix an issue where FORCE_ON lights did not get the required "on" command (in addition to "move_to_level_with_on_off") if turn_on was called with only transition=0.
(It could have been `brightness not None`, but that would also send an "on" command if turn_on is called with brightness=0 which HA somewhat "supports". The brightness != 0 check avoids that issue.)

* Improve comments in ZHA light class
2023-08-04 13:04:10 +02:00
Matthieu Barthelemy
77eec53f63 Add overkiz battery sensor level medium (#97472) 2023-08-04 13:04:07 +02:00
uvjustin
f325122da5 Raise PlatformNotReady on initial OwnTone connection failure (#97257) 2023-08-04 13:04:00 +02:00
uvjustin
9282cb21ab Raise PlatformNotReady on initial OwnTone connection failure (#97257) 2023-08-04 12:54:54 +02:00
amitfin
d78e39d568 Fix allow_name_translation logic (#97701) 2023-08-04 12:51:04 +02:00
Joost Lekkerkerker
80d0f32237 Add has entity name to Solarlog (#97764) 2023-08-04 12:46:53 +02:00
Joost Lekkerkerker
ecce601d3f Fix WAQI being zero (#97767) 2023-08-04 12:46:23 +02:00
Robert Svensson
2820514c33 Break long strings in Axis integration (#97254) 2023-08-04 12:43:06 +02:00
Joost Lekkerkerker
0971449b94 Remove unused translation key from OpenSky (#97699) 2023-08-04 12:42:31 +02:00
Marc Mueller
3f5a21dce4 Fix mailbox PytestCollectionWarning (#97740) 2023-08-04 12:31:32 +02:00
Marc Mueller
447479d0a0 Add packaging as default requirement (#97712) 2023-08-04 12:29:18 +02:00
Matthieu Barthelemy
6adb06956b Add overkiz battery sensor level medium (#97472) 2023-08-04 11:50:03 +02:00
J. Nick Koston
8719aa76ca Avoid calling the http access logging when logging is disabled in emulated_hue (#97750) 2023-08-04 11:46:19 +02:00
Maikel Punie
95ca609124 Bump pyduotecno to 2023.8.3 (#97759) 2023-08-04 11:33:03 +02:00
Marc Mueller
cd8d6ecd81 Fix recorder DeprecationWarnings (#97738) 2023-08-04 11:32:51 +02:00
Marc Mueller
b23b2ac2e8 Fix http test DeprecationWarnings (#97737) 2023-08-04 11:32:23 +02:00
Nerdix
f68f9d4e01 Fix Kostal_Plenticore SELECT entities using device_info correctly (#97690) 2023-08-04 11:31:54 +02:00
Marc Mueller
f39a35c4ef Fix jinja2 DeprecationWarnings (#97728) 2023-08-04 11:25:08 +02:00
Marc Mueller
c33e3ce212 Fix core test RuntimeWarnings (#97730) 2023-08-04 11:21:57 +02:00
Marc Mueller
e905ac173f Fix command_line tests RuntimeWarnings (#97731) 2023-08-04 09:34:55 +02:00
Marc Mueller
99145d46d2 Fix keymitt_ble RuntimeWarning (#97729) 2023-08-04 09:34:04 +02:00
tronikos
b16254a0de Bump opower to 0.0.20 (#97752) 2023-08-04 09:32:59 +02:00
Luke
df45e52dc5 Add battery sensor to Roborock (#97715)
* add battery sensor

* Remove translation for battery

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-04 09:28:48 +02:00
Cyr-ius
3ac2106eb8 Fix freebox enumerate raid disks (#97696) 2023-08-04 09:25:51 +02:00
Marc Mueller
37885400c9 Fix mqtt test DeprecationWarnings (#97734) 2023-08-04 09:21:36 +02:00
Joost Lekkerkerker
1587ac2137 Waqi State unknown if value is string (#97617) 2023-08-04 08:45:36 +02:00
Nathan Spencer
615d7f0da7 Add ability to remove Litter-Robot if no longer provided by integration (#97702) 2023-08-03 20:30:03 -10:00
J. Nick Koston
0cc80a9d29 Add OUI to tplink diagnostics (#97646)
* Add OUI to tplink diagnostics

The main reason discovery does not work for new devices is we
are missing the OUI. Since we redact the whole mac address in
the diagnostics, this makes it difficult to fix. We now include
the OUI in the diagnostics

* fix: use cached mac

* fix: tests
2023-08-03 22:49:55 -04:00
J. Nick Koston
d1f8309423 Bump zeroconf to 0.74.0 (#97745)
* Bump zeroconf to 0.74.0

changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.72.3...0.74.0

- more cython build fixes
- performance improvements (mostly for pyatv)

* handle typing

* handle typing

* remove if TYPE_CHECKING, this doesnt get called that often

* remove if TYPE_CHECKING, this doesnt get called that often
2023-08-03 22:48:53 -04:00
Marc Mueller
ddb384c2ed Fix airvisual RuntimeWarning (#97739) 2023-08-04 01:23:12 +02:00
Marc Mueller
d1ad1c47e6 Fix zha test RuntimeWarnings (#97733) 2023-08-04 01:07:11 +02:00
J. Nick Koston
282ae80cc2 Fix hassfest check for schema (#97713)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2023-08-03 12:55:33 -10:00
Marc Mueller
52fc3c26d1 Fix yalex_ble test RuntimeWarning (#97732) 2023-08-03 12:55:18 -10:00
TheJulianJES
f7aec46b69 Bump zigpy to 0.56.4 (#97722) 2023-08-03 18:11:36 -04:00
Matthias Alphart
fd26739bbf Fix unloading KNX integration without sensors (#97720) 2023-08-03 23:23:12 +02:00
Michael Arthur
bfa394d399 address code comments / tidy ups (#97716) 2023-08-03 23:09:14 +02:00
Paul Bottein
83af2f5b8b Allow to sort options in select selector (#97680)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-08-03 21:49:22 +02:00
Blastoise186
d33955c467 Bump Cryptography to 41.0.3 for a second security fix (#97611)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-08-03 21:36:12 +02:00
TheJulianJES
bae5a3dbd6 Fix ZHA turn_on issues with transition=0, improve tests (#97539)
* Fix turn_on ignoring transition=0 and brightness=None, add test

This fixes light.turn_on for ZHA lights ignoring a transition of 0 when no brightness is given at the same time.
It also adds a test for that case.

Fixes https://github.com/home-assistant/core/issues/93265

* Add test for "force on" lights

This test checks that "force on" lights also get an "on" command (in addition to the "move to level" command) when turn_on is called with only transition=0.

* Fix "on" command sent for transition=0 calls, fix FORCE_ON missing for transition=0

This fixes an issue where the "on" command is sent in addition to a "move_to_level_with_on_off" command, even though the latter one is enough (for non-FORCE_ON lights).
It also fixes the test to not expect the unnecessary "on" command (in addition to the expected "move_to_level_with_on_off" command).

The `brightness != 0` change is needed to fix an issue where FORCE_ON lights did not get the required "on" command (in addition to "move_to_level_with_on_off") if turn_on was called with only transition=0.
(It could have been `brightness not None`, but that would also send an "on" command if turn_on is called with brightness=0 which HA somewhat "supports". The brightness != 0 check avoids that issue.)

* Improve comments in ZHA light class
2023-08-03 15:20:40 -04:00
Joost Lekkerkerker
415e4b2243 Bump python-opensky to 0.2.0 (#97687) 2023-08-03 21:17:00 +02:00
karwosts
9e7872e78b Fix NWS twice_daily forecast day/night detection (#97703) 2023-08-03 21:15:08 +02:00
Meow
6fd60024cc Refactored deprecated UNITS (#97368) 2023-08-03 21:12:01 +02:00
Robert Svensson
e7e68907fa Fix UniFi image platform not loading when passphrase is missing from WLAN (#97684) 2023-08-03 21:11:15 +02:00
Marcel van der Veldt
6ed31840bc Fix color mode attribute for both official and non official Hue lights (#97683) 2023-08-03 21:06:45 +02:00
Franck Nijhof
9b9b746138 Merge branch 'master' into dev 2023-08-03 20:59:51 +02:00
Michael
c43e6d9bd1 Fix detection of client wan-access rule in AVM Fritz!Box Tools (#97708) 2023-08-03 20:36:09 +02:00
tronikos
5e2d3b13b0 Bump opower to 0.0.19 (#97706) 2023-08-03 20:07:44 +02:00
J. Nick Koston
620525b2b4 Bump zeroconf to 0.72.3 (#97668) 2023-08-03 18:57:34 +02:00
Nick Iacullo
6f8d666b57 Enable the PRESET_MODE FanEntityFeature for VeSync air purifiers (#97657) 2023-08-03 18:30:56 +02:00
G Johansson
4c395c0124 Fix date and timestamp device class in Command Line Sensor (#97663)
* Fix date in Command Line sensor

* prettier
2023-08-03 13:59:37 +02:00
jan iversen
d50b993f64 Bump pymodbus v3.4.1. (#97612)
* Bump pymodbus v3.4.1.

* Solve mypy problem.
2023-08-03 14:34:20 +03:00
J. Nick Koston
9980051c3a Bump dbus-fast to 1.90.1 (#97619)
* Bump dbus-fast to 1.88.0

- cython 3 fixes
- performance improvements

changelog: https://github.com/Bluetooth-Devices/dbus-fast/compare/v1.87.5...v1.88.0

* one more

* Bump dbus-fast to 1.90.0

* bump again for yet another round of cython3 fixes
2023-08-03 14:33:05 +03:00
J. Nick Koston
6e5baeec70 Bump pyatv to 0.13.3 (#97670)
changelog: https://github.com/postlund/pyatv/compare/v0.13.2...v0.13.3

maybe fixes #80215
2023-08-03 14:31:49 +03:00
Marc Mueller
1fa66953b4 Use mirror to run black with pre-commit (#95605) 2023-08-03 13:21:07 +02:00
J. Nick Koston
db5d1b10ea Fix tplink child plug state reporting (#97658)
regressed in https://github.com/home-assistant/core/pull/96246
2023-08-03 12:35:22 +02:00
J. Nick Koston
53703448ec Fix typo in tplink OUI (#97644)
The last two were reversed for https://ouilookup.com/search/788cb5
2023-08-03 12:20:35 +02:00
Luke
7b7b8689ef Bump python-roborock to 0.31.1 (#97632)
bump to 0.31.1
2023-08-03 12:15:20 +02:00
Michael Arthur
05e2acb091 Add hour of free power select to Electric Kiwi (#97515)
* add select sensor to Electric Kiwi

* Update homeassistant/components/electric_kiwi/select.py

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

* simplify the HOP select since there is only one

* remove handle coordinator state

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-08-03 12:06:42 +02:00
G Johansson
564e0110a4 Revert "OctoPrint add yaml config removal issue" (#97674)
Revert "OctoPrint add yaml config removal issue (#97431)"

This reverts commit 594d98822b.
2023-08-03 11:34:20 +02:00
Marc Mueller
1daac46635 Replace deprecated pkg_resources with importlib.metadata (#97628) 2023-08-03 09:14:00 +02:00
Joost Lekkerkerker
357bfc46bf Revert "Add device naming to Yeelight" (#97647)
Revert "Add device naming to Yeelight (#97639)"

This reverts commit 82f27115f5.
2023-08-03 09:13:23 +02:00
Marc Mueller
4196c43416 Fix deluge DeprecationWarning (#97624) 2023-08-03 09:12:08 +02:00
Marc Mueller
ad0873549d Fix ssl DeprecationWarnings (#97623) 2023-08-03 09:11:41 +02:00
Marc Mueller
3c2cebea72 Fix abode DeprecationWarnings (#97620) 2023-08-03 09:10:31 +02:00
Michael Hansen
7cf2199e8b Bump intents to 2023.8.2 (#97636) 2023-08-02 20:01:30 -04:00
Joost Lekkerkerker
82f27115f5 Add device naming to Yeelight (#97639) 2023-08-02 23:48:37 +02:00
Marc Mueller
9d9af0c884 Fix pylint DeprecationWarnings (#97627) 2023-08-02 20:30:41 +02:00
Marc Mueller
887e48c440 Replace deprecated aiohttp_unused_port fixture (#97626) 2023-08-02 20:30:13 +02:00
Marc Mueller
91a83e1ad2 Fix httpx DeprecationWarning (#97625) 2023-08-02 20:29:36 +02:00
Marc Mueller
0afa964724 Fix async_timeout DeprecationWarnings (#97622) 2023-08-02 20:29:03 +02:00
Marc Mueller
1a77121c02 Fix aiohttp code DeprecationWarnings (#97621) 2023-08-02 20:28:18 +02:00
Franck Nijhof
111510b11a 2023.8.0 (#97609) 2023-08-02 15:01:08 +02:00
Bram Kragten
445aaa0267 Update frontend to 20230802.0 (#97614) 2023-08-02 14:47:38 +02:00
Bram Kragten
02f8000f6c Update frontend to 20230802.0 (#97614) 2023-08-02 14:43:42 +02:00
Bruno Enten
3ce05314e0 use write_registers also for target temp (#97475) 2023-08-02 13:36:05 +02:00
Franck Nijhof
598dece947 Bumped version to 2023.8.0 2023-08-02 13:05:31 +02:00
Robert Resch
f81acc567b Add rounding back when unique_id is not set (#97603) 2023-08-02 13:04:36 +02:00
Robert Resch
e4303e4534 Add rounding back when unique_id is not set (#97603) 2023-08-02 11:26:25 +02:00
Robert Resch
641b5ee7e4 Fix duotecno's name to be sync with the docs (#97602) 2023-08-02 09:48:35 +02:00
Robert Resch
f9ac102c27 Fix duotecno's name to be sync with the docs (#97602) 2023-08-02 09:09:13 +02:00
Jack Boswell
f0e640346f Fix Starlink Roaming name being blank (#97597) 2023-08-02 08:44:14 +02:00
J. Nick Koston
14850a23f3 Bump zeroconf to 0.72.0 (#97594) 2023-08-02 08:44:07 +02:00
Michael
db4c9c67a2 Do not set hass data before first coordinator refresh (#97343) 2023-08-02 08:29:00 +02:00
Jack Boswell
49b9dd2a4f Add Starlink to .strict-typing (#97598) 2023-08-02 08:26:50 +02:00
Maikel Punie
ac9ec6e402 Bump pyDuotecno to 2023.8.1 (#97583) 2023-08-02 08:23:37 +02:00
J. Nick Koston
93d7165fe9 Bump zeroconf to 0.72.0 (#97594) 2023-08-02 08:19:22 +02:00
Jack Boswell
7a92bda514 Fix Starlink Roaming name being blank (#97597) 2023-08-02 08:12:49 +02:00
Franck Nijhof
d115a372ae Bumped version to 2023.8.0b4 2023-08-01 23:17:04 +02:00
Franck Nijhof
f7688c5e3b Ensure we have an valid configuration URL in NetGear (#97590) 2023-08-01 23:16:54 +02:00
Franck Nijhof
80e0bcfaea Ensure load the device registry if it contains invalid configuration URLs (#97589) 2023-08-01 23:16:50 +02:00
TheJulianJES
97e28acfc9 Bump zha-quirks to 0.0.102 (#97588) 2023-08-01 23:16:47 +02:00
Robert Svensson
c3bcffdce7 Fix UniFi image platform failing to setup on read-only account (#97580) 2023-08-01 23:16:44 +02:00
J. Nick Koston
2b26e20528 Use legacy rules for ESPHome entity_id construction if friendly_name is unset (#97578) 2023-08-01 23:16:39 +02:00
Joost Lekkerkerker
116b026768 Unignore today's collection for Rova (#97567) 2023-08-01 23:16:36 +02:00
Maikel Punie
87c11ca419 Bump pyduotecno to 2023.8.0 (beta fix) (#97564)
* Bump pyduotecno to 2023.7.4

* Bump to 2023.8.0
2023-08-01 23:16:32 +02:00
Franck Nijhof
af5fc7e759 Ensure load the device registry if it contains invalid configuration URLs (#97589) 2023-08-01 23:15:31 +02:00
Franck Nijhof
33e5e3c5c2 Ensure we have an valid configuration URL in NetGear (#97590) 2023-08-01 22:29:16 +02:00
TheJulianJES
cad845f5c9 Bump zha-quirks to 0.0.102 (#97588) 2023-08-01 22:26:36 +02:00
Joost Lekkerkerker
7096daa0c1 Unignore today's collection for Rova (#97567) 2023-08-01 21:31:45 +02:00
Robert Svensson
6c95e07b7d Fix UniFi image platform failing to setup on read-only account (#97580) 2023-08-01 21:18:33 +02:00
J. Nick Koston
708b00d7ab Use legacy rules for ESPHome entity_id construction if friendly_name is unset (#97578) 2023-08-01 21:08:12 +02:00
Maikel Punie
b20a286b5b Bump pyduotecno to 2023.8.0 (beta fix) (#97564)
* Bump pyduotecno to 2023.7.4

* Bump to 2023.8.0
2023-08-01 14:39:31 +02:00
Franck Nijhof
2f6aea450e Bumped version to 2023.8.0b3 2023-08-01 11:48:10 +02:00
Bram Kragten
8261a769a5 Update frontend to 20230801.0 (#97561) 2023-08-01 11:47:48 +02:00
Bram Kragten
1773f1ead2 Update frontend to 20230801.0 (#97561) 2023-08-01 11:46:37 +02:00
Pedro Lamas
dfd5c74de0 Fixes London Air parsing error (#97557) 2023-08-01 11:15:51 +02:00
Jack Boswell
20cf5f0f2c Fix Starlink ping drop rate reporting (#97555) 2023-08-01 11:15:48 +02:00
Eric Severance
f780397c2d Bump pywemo to 1.2.1 (#97550) 2023-08-01 11:15:44 +02:00
Phil Bruckner
c600d07a9d Bump life360 package to 6.0.0 (#97549) 2023-08-01 11:15:41 +02:00
tronikos
c412cf9a5e Bump opower to 0.0.18 (#97548) 2023-08-01 11:15:37 +02:00
J. Nick Koston
d891f1a5eb Bump HAP-python to 4.7.1 (#97545) 2023-08-01 11:15:34 +02:00
Jan Bouwhuis
3f22c74ffa Fix unit tests for wake_on_lan (#97542) 2023-08-01 11:15:31 +02:00
Joost Lekkerkerker
8355230433 Fix RootFolder not iterable in Radarr (#97537)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-08-01 11:15:28 +02:00
epenet
ec1b24f8d6 Handle http error in Renault initialisation (#97530) 2023-08-01 11:15:25 +02:00
Eric Severance
e473131a2c Bump pywemo to 1.2.0 (#97520) 2023-08-01 11:15:21 +02:00
Jan Bouwhuis
c99bf90ec7 Offer work- a-round for MQTT entity names that start with the device name (#97495)
Co-authored-by: SukramJ <sukramj@icloud.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-08-01 11:15:18 +02:00
tronikos
00c1f3d85e Bump androidtvremote2==0.0.13 (#97494) 2023-08-01 11:15:15 +02:00
Joakim Plate
278f02c86f Avoid leaking exception trace for philips_js (#97491)
Avoid leaking exception trace
2023-08-01 11:15:11 +02:00
starkillerOG
c950abd323 Delay creation of Reolink repair issues (#97476)
* delay creation of repair issues

* fix tests
2023-08-01 11:15:08 +02:00
starkillerOG
da401d5ad6 Bump reolink_aio to 0.7.6 + Timeout (#97464) 2023-08-01 11:15:04 +02:00
Michael Hansen
877c30c3a0 Send language to Wyoming STT (#97344) 2023-08-01 11:15:00 +02:00
Pedro Lamas
3f5c0a1285 Fixes London Air parsing error (#97557) 2023-08-01 11:04:30 +02:00
J. Nick Koston
7e134a3d44 Cleanups to the Bluetooth processor coordinators (#97546) 2023-08-01 10:27:25 +02:00
Eric Severance
8b8a51ffc8 Bump pywemo to 1.2.1 (#97550) 2023-08-01 10:08:08 +02:00
Jack Boswell
122794ada8 Fix Starlink ping drop rate reporting (#97555) 2023-08-01 10:06:19 +02:00
Michael Hansen
8ad37d7640 Send language to Wyoming STT (#97344) 2023-08-01 10:05:01 +02:00
Phil Bruckner
5aa3e36754 Bump life360 package to 6.0.0 (#97549) 2023-08-01 10:04:04 +02:00
Jan Bouwhuis
9c6c391eea Offer work- a-round for MQTT entity names that start with the device name (#97495)
Co-authored-by: SukramJ <sukramj@icloud.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-08-01 10:03:08 +02:00
J. Nick Koston
5ce8e0e33e Bump HAP-python to 4.7.1 (#97545) 2023-08-01 09:49:20 +02:00
tronikos
3a2549829e Bump opower to 0.0.18 (#97548) 2023-08-01 09:45:17 +02:00
janmolemans
f0640fc057 Add frequency sensors to Nibe (#89072)
* added frequency (for compressors etc)

---------

Co-authored-by: Joakim Plate <elupus@ecce.se>
2023-07-31 22:23:32 +02:00
Jan Bouwhuis
a8a3b6778e Fix unit tests for wake_on_lan (#97542) 2023-07-31 21:16:58 +02:00
starkillerOG
121fc7778d Bump reolink_aio to 0.7.6 + Timeout (#97464) 2023-07-31 21:01:25 +02:00
J. Nick Koston
094f2cbad7 Fix saving subclassed datetime objects in storage (#97502) 2023-07-31 18:49:02 +02:00
Joost Lekkerkerker
c2e9fd85c2 Fix RootFolder not iterable in Radarr (#97537)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-07-31 18:44:03 +02:00
David Knowles
085e274f44 Bump pyschlage to 2023.7.0 (#97366) 2023-07-31 18:38:50 +02:00
Marc Mueller
4d9b73033d Update python-typing-update to 0.6.0 (#97531) 2023-07-31 17:59:40 +02:00
Marc Mueller
dba6330fc8 Update pydiscovergy to 2.0.3 (#97509)
* Update pydiscovergy to 2.0.3

* Fix mypy

* Fix tests
2023-07-31 17:25:57 +02:00
epenet
9df1805b3b Remove myself from const and util codeowners (#97527) 2023-07-31 07:06:06 -07:00
J. Nick Koston
e7069d48be Load homekit_controller test data using its json loader (#97534) 2023-07-31 07:04:41 -07:00
Joakim Plate
651d4134cf Avoid leaking exception trace for philips_js (#97491)
Avoid leaking exception trace
2023-07-31 14:21:34 +02:00
epenet
787486b68d Remove myself from rest codeowners (#97528) 2023-07-31 12:50:44 +02:00
Eric Severance
7b25702605 Bump pywemo to 1.2.0 (#97520) 2023-07-31 12:38:31 +02:00
epenet
83db3c48c2 Fix unused variable in Renault tests (#97529) 2023-07-31 12:35:30 +02:00
epenet
927905ac84 Handle http error in Renault initialisation (#97530) 2023-07-31 12:17:51 +02:00
epenet
ed3ebdfea5 Remove myself from scrape codeowners (#97524) 2023-07-31 11:15:59 +02:00
J. Nick Koston
37cdd51183 Combine Bluetooth update coordinator subscriptions to reduce code duplication (#97503) 2023-07-31 01:03:19 -07:00
J. Nick Koston
5c4e47c127 Use internal imports in Bluetooth update coordinator to avoid future circular imports (#97506) 2023-07-31 01:02:57 -07:00
J. Nick Koston
28bebf338f Fix xiaomi_ble not remembering a device is a sleepy device (#97518) 2023-07-31 01:02:36 -07:00
J. Nick Koston
7bda873c2a Fix bthome not remembering a device is a sleepy device (#97517) 2023-07-31 01:02:15 -07:00
starkillerOG
b266514068 Delay creation of Reolink repair issues (#97476)
* delay creation of repair issues

* fix tests
2023-07-31 09:07:13 +02:00
J. Nick Koston
f218fb8cee Fix typo in PassiveBluetoothDataProcessor (#97508) 2023-07-31 08:56:30 +02:00
tronikos
eb56c7e1b7 Bump androidtvremote2==0.0.13 (#97494) 2023-07-30 21:27:57 +02:00
Meow
a4b2ded503 Refactor deprecated RESULT_TYPE_* (#97367) 2023-07-30 19:27:30 +02:00
Franck Nijhof
99634e22bd Bumped version to 2023.8.0b2 2023-07-30 19:18:42 +02:00
J. Nick Koston
4bd4c5666d Revert using has_entity_name in ESPHome when friendly_name is not set (#97488) 2023-07-30 19:18:24 +02:00
Marc Mueller
93c536882b Update ha-av to 10.1.1 (#97481) 2023-07-30 19:18:21 +02:00
starkillerOG
3764c2e9de Reolink long poll recover (#97465) 2023-07-30 19:18:18 +02:00
tronikos
b23286ce6f Bump opower to 0.0.16 (#97437) 2023-07-30 19:18:15 +02:00
J. Nick Koston
734c16b816 Bump nexia to 2.0.7 (#97432) 2023-07-30 19:18:12 +02:00
Joost Lekkerkerker
f1fc09cb1d Small cleanup in event entity (#97409) 2023-07-30 19:18:09 +02:00
Joost Lekkerkerker
364e7b838a Return the actual media url from media extractor (#97408) 2023-07-30 19:18:05 +02:00
G Johansson
7f9db40390 Manual trigger entity fix name influence entity_id (#97398) 2023-07-30 19:18:02 +02:00
starkillerOG
38e22f5614 Regard long poll without events as valid (#97383) 2023-07-30 19:17:59 +02:00
G Johansson
945959827d Bump pysensibo to 1.0.32 (#97382) 2023-07-30 19:17:56 +02:00
Chris Talkington
1a0593fc9a Allow deleting config entry devices in jellyfin (#97377) 2023-07-30 19:17:53 +02:00
J. Nick Koston
f54c36ec16 Bump dbus-fast to 1.87.5 (#97364) 2023-07-30 19:17:50 +02:00
starkillerOG
3beffb5103 Bump reolink_aio to 0.7.5 (#97357)
* bump reolink-aio to 0.7.4

* Bump reolink_aio to 0.7.5
2023-07-30 19:17:47 +02:00
Niels Perfors
78dad22fb3 Upgrade Verisure to 2.6.4 (#97278) 2023-07-30 19:17:42 +02:00
Joost Lekkerkerker
04e72fec57 Add entity translation to Moon (#97404) 2023-07-30 19:10:45 +02:00
Joost Lekkerkerker
15b7035ad0 Change IoT class for Moon to calculated (#97405) 2023-07-30 19:03:25 +02:00
Jan-Philipp Benecke
cb033f7a7b Change IoT class for ToD to calculated (#97422) 2023-07-30 19:02:43 +02:00
Marc Mueller
1553ff1001 Update pydantic to 1.10.12 (#97479) 2023-07-30 18:55:13 +02:00
Marc Mueller
71cc227f09 Update aiopvpc to 4.2.2 (#97482) 2023-07-30 18:54:45 +02:00
Niels Perfors
a70c10d3c9 Upgrade Verisure to 2.6.4 (#97278) 2023-07-30 18:53:26 +02:00
starkillerOG
f4e79bbab8 Regard long poll without events as valid (#97383) 2023-07-30 18:49:27 +02:00
starkillerOG
c32b15c754 Reolink long poll recover (#97465) 2023-07-30 18:49:00 +02:00
G Johansson
1f11ce63fc Manual trigger entity fix name influence entity_id (#97398) 2023-07-30 18:47:34 +02:00
Joost Lekkerkerker
2b4387f7c2 Return the actual media url from media extractor (#97408) 2023-07-30 18:43:42 +02:00
Chris Talkington
9d2f52dbc5 Allow deleting config entry devices in jellyfin (#97377) 2023-07-30 18:42:28 +02:00
tronikos
28dc819212 Bump opower to 0.0.16 (#97437) 2023-07-30 18:41:14 +02:00
Marc Mueller
68cb7a7dde Update ha-av to 10.1.1 (#97481) 2023-07-30 18:40:38 +02:00
J. Nick Koston
84576672de Bump dbus-fast to 1.87.5 (#97364) 2023-07-30 18:39:40 +02:00
J. Nick Koston
afdbbefc31 Revert using has_entity_name in ESPHome when friendly_name is not set (#97488) 2023-07-30 18:28:45 +02:00
Marc Mueller
5e3bcc1224 Update zigpy to 0.56.3 (#97480) 2023-07-30 09:30:13 -04:00
Maciej Bieniek
12426dfad4 Add entity translations for AccuWeather (#95940)
* Add entity name translations

* Some improvements

* Update tests

* Suggested changes

* day 0 -> today

* night 0 -> tonight

* Fix precipitation
2023-07-29 21:22:53 +02:00
mbo18
598e26e481 Add device and state class to humidity sensor (#97331)
Add device and state class to humidity
2023-07-29 17:40:14 +02:00
Renier Moorcroft
f52876c7f6 Add entity description to EZVIZ SwitchEntity (#95672)
* Initial commit

* Update switch entity

* Add entity description

* Redundant get. Key will always be there.

* fixed dumb condition mistake.

* Removed names from entity description

* Implement suggestions

* async_add_entities has iterator so cleanup

* Update strings.json
2023-07-29 17:37:40 +02:00
Michael
750260b266 Add more sensors to PEGELONLINE (#97295)
* add further sensors

* adjust and improve tests

* add device classes were applicable

* fix doc string

* name for ph comes from device class

* use icon from device class for ph sensor
2023-07-29 17:03:29 +02:00
Richard Kroegel
b7ed163caf bmw_connected_drive: Add WASHING_FLUID to correct binary sensor attribute (#97448)
BMW: Add WASHING_FLUID to correct binary sensor attribute

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-07-29 12:32:55 +02:00
David Knowles
0e8bbbd3d9 Add a battery sensor to Schlage (#97369) 2023-07-28 21:09:25 -07:00
G Johansson
78003886a5 GDACS add yaml config issue (#97424)
gdacs remove yaml issue
2023-07-29 02:22:54 +02:00
J. Nick Koston
0a56361ca4 Disable always_update in nexia coordinator (#97436) 2023-07-28 17:46:26 -05:00
J. Nick Koston
c11222c1d0 Bump nexia to 2.0.7 (#97432) 2023-07-28 16:37:08 -05:00
J. Nick Koston
a2555e71e2 Small cleanups to ambient station (#97421) 2023-07-28 16:30:29 -05:00
G Johansson
fc38451faf Disable always_update in yale_smart_alarm coordinator (#97426)
always update
2023-07-28 23:29:01 +02:00
J. Nick Koston
1b6f15e3da Disable always_update in enphase_envoy coordinator (#97425)
see https://github.com/home-assistant/developers.home-assistant/pull/1863
2023-07-28 23:28:41 +02:00
J. Nick Koston
a3110ef1c1 Disable always_update in oncue coordinator (#97434) 2023-07-28 16:23:37 -05:00
G Johansson
7966d8da76 LiteJet add yaml config removal issue (#97429)
litejet yaml config removal issue
2023-07-28 23:21:49 +02:00
G Johansson
05e9b63b16 MELCloud add yaml config removal issue (#97430)
melcloud yaml config removal issue
2023-07-28 23:21:34 +02:00
G Johansson
594d98822b OctoPrint add yaml config removal issue (#97431)
OctoPrint yaml config removal issue
2023-07-28 23:21:15 +02:00
G Johansson
cd311f4868 meteo_france add yaml config removal issue (#97428)
meteo_france yaml removal issue
2023-07-28 23:01:21 +02:00
J. Nick Koston
1b10c44a16 Disable always_update in esphome dashboard coordinator (#97419) 2023-07-28 12:42:04 -05:00
J. Nick Koston
c1ce14983c Disable always_update in filesize coordinator (#97418) 2023-07-28 12:41:45 -05:00
Joost Lekkerkerker
8101376ad5 Small cleanup in event entity (#97409) 2023-07-28 19:41:41 +02:00
J. Nick Koston
e1f14ed990 Disable always_update in cert_expiry coordinator (#97417) 2023-07-28 12:41:25 -05:00
J. Nick Koston
44a3885986 Disable always_update in powerwall coordinator (#97416) 2023-07-28 12:41:05 -05:00
J. Nick Koston
5829efb5d7 Disable always_update in lookin coordinator (#97415) 2023-07-28 12:40:50 -05:00
J. Nick Koston
8a9153d004 Disable always_update in emonitor coordinator (#97414) 2023-07-28 12:39:15 -05:00
J. Nick Koston
2ec2c25f5a Disable always_update in nut coordinator (#97413) 2023-07-28 12:38:52 -05:00
J. Nick Koston
e4ac8bdd6b Disable always_update in flux_led coordinator (#97412) 2023-07-28 12:38:33 -05:00
J. Nick Koston
48eebe43c9 Disable always_update in steamist coordinator (#97411) 2023-07-28 12:38:07 -05:00
J. Nick Koston
54e7185617 Disable always_update in rain machine coordinator (#97410) 2023-07-28 12:33:33 -05:00
J. Nick Koston
13349e76ed Avoid firing update coordinator callbacks when nothing has changed (#97268) 2023-07-28 12:19:20 -05:00
G Johansson
3a54448836 Bump pysensibo to 1.0.32 (#97382) 2023-07-28 11:52:23 +02:00
G Johansson
81c0dcff63 Home Connect deprecation issue yaml configuration (#97361)
Home Connect deprecation issue
2023-07-27 23:34:17 +02:00
G Johansson
2299430dbe Sonos add yaml config issue (#97365) 2023-07-27 23:33:49 +02:00
starkillerOG
053f4b08b6 Bump reolink_aio to 0.7.5 (#97357)
* bump reolink-aio to 0.7.4

* Bump reolink_aio to 0.7.5
2023-07-27 23:33:08 +02:00
Joost Lekkerkerker
973370b75e Deprecate Freebox YAML (#97345)
* Deprecate Freebox YAML

* Update homeassistant/components/freebox/__init__.py

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-07-27 23:01:17 +02:00
G Johansson
ae3cc0b619 Sure Petcare deprecation issue yaml configuration (#97363)
Sure Petcare yaml config issue
2023-07-27 22:53:51 +02:00
G Johansson
4ac139592a Plum Lightpad deprecation issue for yaml configuration (#97362)
Plum issue yaml config
2023-07-27 22:53:24 +02:00
G Johansson
2d4040c70a Netatmo add issue for yaml deprecation (#97360)
Netatmo add issue
2023-07-27 22:50:50 +02:00
G Johansson
3fdcb67322 Add breaks_in_ha_version for Dynalite YAML import (#97359)
Dynalite breaks in version
2023-07-27 22:26:35 +02:00
J.P. Krauss
70cb8afb94 Add AirNow Reporting Station as sensor (#97273)
* Add AirNow Reporting Station as sensor attribute

* Make Reporting Station a sensor instead of attribute as requested

* Update homeassistant/components/airnow/strings.json

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

* Fix reporting station attribute names to avoid showing on map

* Add attribute name translations

* Update homeassistant/components/airnow/strings.json

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-07-27 21:19:16 +02:00
Franck Nijhof
768afeee21 Bumped version to 2023.8.0b1 2023-07-27 20:34:13 +02:00
J. Nick Koston
36982cea7a Bump aiohomekit to 2.6.12 (#97342) 2023-07-27 20:33:57 +02:00
Franck Nijhof
80092dabdf Add urllib3<2 package constraint (#97339) 2023-07-27 20:33:54 +02:00
Jc2k
e4246902fb Split availability and data subscriptions in homekit_controller (#97337) 2023-07-27 20:33:51 +02:00
Marcel van der Veldt
7dc9204346 Hue event entity follow up (#97336) 2023-07-27 20:33:47 +02:00
J. Nick Koston
d7af1acf28 Bump aioesphomeapi to 15.1.15 (#97335)
changelog: https://github.com/esphome/aioesphomeapi/compare/v15.1.14...v15.1.15
2023-07-27 20:33:44 +02:00
David Knowles
3028d40e7c Bump pydrawise to 2023.7.1 (#97334) 2023-07-27 20:33:41 +02:00
David Knowles
37e9fff1eb Fix Hydrawise zone addressing (#97333) 2023-07-27 20:33:37 +02:00
Maikel Punie
d05efe8c6a Duotecno beta fix (#97325)
* Fix duotecno

* Implement comments

* small cover fix
2023-07-27 20:33:34 +02:00
Franck Nijhof
2163834375 Fix DeviceInfo configuration_url validation (#97319) 2023-07-27 20:33:31 +02:00
G Johansson
52ce21f3b6 Fix sql entities not loading (#97316) 2023-07-27 20:33:27 +02:00
Markus Becker
4eb37172a8 Fix typo Lomng -> Long (#97315) 2023-07-27 20:33:24 +02:00
Luke
d6dba4b42b bump python-roborock to 0.30.2 (#97306) 2023-07-27 20:33:20 +02:00
Jan Bouwhuis
c925e1826b Set mqtt entity name to null when it is a duplicate of the device name (#97304) 2023-07-27 20:33:17 +02:00
J. Nick Koston
aee6e0e6eb Fix dumping lru stats in the profiler (#97303) 2023-07-27 20:33:13 +02:00
Franck Nijhof
1b664e6a0b Fix implicit use of device name in TPLink switch (#97293) 2023-07-27 20:33:10 +02:00
G Johansson
c48f1b7899 Weather remove forecast deprecation (#97292) 2023-07-27 20:33:07 +02:00
Michael
fc6ff69564 Rename key of water level sensor in PEGELONLINE (#97289) 2023-07-27 20:33:03 +02:00
Marcel van der Veldt
d9beeac675 Bump aioslimproto to 2.3.3 (#97283) 2023-07-27 20:33:00 +02:00
Franck Nijhof
73076fe94d Fix zodiac import flow/issue (#97282) 2023-07-27 20:32:57 +02:00
J.P. Krauss
20df37c132 Improve AirNow Configuration Error Handling (#97267)
* Fix config flow error handling when no data is returned by AirNow API

* Add test for PyAirNow EmptyResponseError

* Typo Fix
2023-07-27 20:32:54 +02:00
Michael Hansen
b2adb4edbe Add wildcards to sentence triggers (#97236)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-07-27 20:32:49 +02:00
Jan-Philipp Benecke
e31a4610f7 Fix authlib version constraint required by point (#97228) 2023-07-27 20:32:45 +02:00
Michael Hansen
7e3fdd85fc Add wildcards to sentence triggers (#97236)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-07-27 20:30:42 +02:00
Franck Nijhof
af286a8feb Add urllib3<2 package constraint (#97339) 2023-07-27 18:57:13 +02:00
Franck Nijhof
737ac8c600 Fix DeviceInfo configuration_url validation (#97319) 2023-07-27 18:57:01 +02:00
J. Nick Koston
b92e7c5ddf Bump aiohomekit to 2.6.12 (#97342) 2023-07-27 18:56:45 +02:00
Marcel van der Veldt
7ada88eab3 Hue event entity follow up (#97336) 2023-07-27 16:58:09 +02:00
Jc2k
cc47ff30b3 Split availability and data subscriptions in homekit_controller (#97337) 2023-07-27 09:32:53 -05:00
J. Nick Koston
cbc8ebb427 Bump aioesphomeapi to 15.1.15 (#97335)
changelog: https://github.com/esphome/aioesphomeapi/compare/v15.1.14...v15.1.15
2023-07-27 09:30:31 -05:00
Maikel Punie
374255ce87 Duotecno beta fix (#97325)
* Fix duotecno

* Implement comments

* small cover fix
2023-07-27 16:00:27 +02:00
David Knowles
2542c5f259 Fix Hydrawise zone addressing (#97333) 2023-07-27 15:57:36 +02:00
David Knowles
cd1a99a15f Bump pydrawise to 2023.7.1 (#97334) 2023-07-27 08:54:44 -05:00
dougiteixeira
e99ba1b0da Move async_client_device_info_fn to entity.py (#97270)
Move client device info
2023-07-27 10:21:22 +02:00
G Johansson
f610a9b1c9 Fix sql entities not loading (#97316) 2023-07-27 09:24:32 +02:00
Jan Bouwhuis
3fcfe7d0c6 Set mqtt entity name to null when it is a duplicate of the device name (#97304) 2023-07-27 09:23:23 +02:00
Franck Nijhof
c2bbb0b5db Fix implicit use of device name in TPLink switch (#97293) 2023-07-27 09:22:22 +02:00
Marcel van der Veldt
265fe51169 Bump aioslimproto to 2.3.3 (#97283) 2023-07-27 09:21:30 +02:00
J. Nick Koston
e9c3f0821f Fix dumping lru stats in the profiler (#97303) 2023-07-27 09:17:27 +02:00
Luke
01ba7a8698 bump python-roborock to 0.30.2 (#97306) 2023-07-27 09:13:49 +02:00
Markus Becker
3fd33c4ecc Fix typo Lomng -> Long (#97315) 2023-07-27 08:58:52 +02:00
Jan-Philipp Benecke
55beb26190 Fix authlib version constraint required by point (#97228) 2023-07-27 08:54:20 +02:00
David Knowles
b31cfe0b24 Add Schlage integration (#93777)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2023-07-26 23:15:01 -05:00
G Johansson
7d8462b11c Weather remove forecast deprecation (#97292) 2023-07-26 23:12:01 +02:00
Michael
dce9a1b998 Rename key of water level sensor in PEGELONLINE (#97289) 2023-07-26 22:03:38 +02:00
J.P. Krauss
7113db8da4 Improve AirNow Configuration Error Handling (#97267)
* Fix config flow error handling when no data is returned by AirNow API

* Add test for PyAirNow EmptyResponseError

* Typo Fix
2023-07-26 21:30:25 +02:00
Franck Nijhof
fd3c2c2811 Fix zodiac import flow/issue (#97282) 2023-07-26 21:22:22 +02:00
Franck Nijhof
9b7dcce7ed Bump version to 2023.9.0dev0 (#97265) 2023-07-26 17:40:17 +02:00
Franck Nijhof
6200fd381e Bumped version to 2023.8.0b0 2023-07-26 16:47:34 +02:00
Marcel van der Veldt
94870f05ee Fix invalid ColorMode on (some) 3rd party Hue Color lights (#97263) 2023-07-26 16:43:02 +02:00
Marcel van der Veldt
2ae059d4fc Add Event platform/entity to Hue integration (#97256)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-07-26 16:42:01 +02:00
Joost Lekkerkerker
d233438e1a Handle UpdateFailed for YouTube (#97233) 2023-07-26 15:09:15 +02:00
mkmer
db491c86c3 Bump whirlpool-sixth-sense to 0.18.4 (#97255) 2023-07-26 13:52:26 +02:00
Marcel van der Veldt
fd44bef39b Add Event platform to Matter (#97219) 2023-07-26 12:19:23 +02:00
Maikel Punie
d7af1e2d5d Add duotecno covers (#97205) 2023-07-26 11:45:55 +02:00
tronikos
5ec8165689 Add virtual integrations supported by opower (#97250) 2023-07-26 11:39:50 +02:00
Marcel van der Veldt
ae33670b33 Add guard for missing xy color support in Matter light platform (#97251) 2023-07-26 11:37:13 +02:00
Marc Mueller
1a25b17c27 Fix pegel_online generic typing (#97252) 2023-07-26 11:36:51 +02:00
Paulus Schoutsen
aad281db18 Add service to OpenAI to Generate an image (#97018)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-07-26 10:14:18 +02:00
Michael
5caa1969c5 Add Pegel Online integration (#97028) 2023-07-26 09:12:39 +02:00
Maikel Punie
b4a46b9817 Codeowner update for cert-expiry (#97246) 2023-07-26 09:07:47 +02:00
Jc2k
c0debaf26e Add event entities to homekit_controller (#97140)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-26 08:20:41 +02:00
Amos Yuen
d0512d5b26 Stop rounding history_stats sensor (#97195) 2023-07-26 08:09:50 +02:00
J. Nick Koston
70b1083c8f Bump pyunifiprotect to 4.10.6 (#97240) 2023-07-26 08:06:24 +02:00
Robert Svensson
89069bb9b8 Add WLAN clients reporting to UniFi Sensor platform (#97234) 2023-07-26 08:00:17 +02:00
tronikos
4a649ff31d Bump opower==0.0.15 (#97243) 2023-07-26 07:48:06 +02:00
Michael Hansen
311c321d06 Add HassShoppingListAddItem to default agent (#97232)
* Bump hassil and intents package for HassShoppingListAddItem

* Remove hard-coded response text

* Test adding item to the shopping list

* Hook removed import in test for some reason
2023-07-25 22:19:03 -04:00
ollo69
c3977b5eb3 Correct AsusWRT device identifier (#97238) 2023-07-26 01:01:39 +02:00
Joost Lekkerkerker
66bbe6865e Bump youtubeaio to 1.1.5 (#97231) 2023-07-25 22:39:55 +02:00
mkmer
c6f21b47a8 Whrilpool add periodic update (#97222) 2023-07-25 22:23:31 +02:00
Joost Lekkerkerker
234715a8c6 Add explicit device naming for Verisure (#97224) 2023-07-25 20:48:05 +02:00
Joost Lekkerkerker
585d357129 Add config flow to OpenSky (#96912)
Co-authored-by: Sander <developer@golles.nl>
2023-07-25 20:46:04 +02:00
Franck Nijhof
b4200cb85e Update frontend to 20230725.0 (#97220) 2023-07-25 19:44:32 +02:00
J. Nick Koston
6ae79524bd Add support for bleak 0.21 (#97212) 2023-07-25 19:30:54 +02:00
J. Nick Koston
213a1690f3 Bump bleak-retry-connector to 3.1.1 (#97218) 2023-07-25 19:21:11 +02:00
Jan-Philipp Benecke
c2f9070f40 Check before casting to float & add integration type to bsblan (#97210) 2023-07-25 16:11:37 +02:00
Robert Svensson
8d6c4e3306 Add controls to enable and disable a UniFi WLAN (#97204) 2023-07-25 14:01:57 +02:00
Jan-Philipp Benecke
a0b61a1188 Bump pydiscovergy to 2.0.1 (#97186) 2023-07-25 13:58:38 +02:00
Jan Bouwhuis
fb00cd8963 Add turn on/off support for mqtt water_heater (#97197) 2023-07-25 13:33:02 +02:00
Luke
6c43ce69d3 Add time platform to Roborock (#94039) 2023-07-25 13:29:48 +02:00
Michael Arthur
6b41c324cc Fix broken translation keys (#97202) 2023-07-25 12:42:24 +02:00
J. Nick Koston
bb0727ab8a Bump home-assistant-bluetooth to 1.10.2 (#97193) 2023-07-25 05:20:03 -05:00
Marcel van der Veldt
5e40fe97fd Prevent duplicate Matter attribute event subscription (#97194) 2023-07-25 12:14:22 +02:00
Maciej Bieniek
cd84a188ee Improve Tractive sensor names (#97192)
* Improve entity names

* Rename translation keys
2023-07-25 11:59:11 +02:00
Maikel Punie
7f049c5b20 Add the Duotecno intergration (#96399)
Co-authored-by: Isak Nyberg <36712644+IsakNyberg@users.noreply.github.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-25 11:16:00 +02:00
Maciej Bieniek
fc41f3d25b Use device class ENUM for Tractive tracker state sensor (#97191) 2023-07-25 11:13:52 +02:00
Matthias Alphart
74deb8b011 Add datetime platform to KNX (#97190) 2023-07-25 11:04:05 +02:00
Michael Arthur
6ef7c5ece6 Add electric kiwi integration (#81149)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-25 10:46:53 +02:00
Joost Lekkerkerker
04f6d1848b Implement YouTube async library (#97072) 2023-07-25 10:18:20 +02:00
Jan Bouwhuis
714a04d603 Add service turn_on and turn_off service for water_heater (#94817) 2023-07-25 10:16:05 +02:00
elmurato
90bf2d3076 Move Minecraft Server base entity to its own file (#97187) 2023-07-25 10:14:01 +02:00
Robert Svensson
06f97679ee Add WLAN QR code support to UniFi Image platform (#97171) 2023-07-25 10:11:48 +02:00
Adrián Moreno
f2726527f2 Create zwave_js repair issue instead of warning log entry (#95997)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-07-25 09:55:05 +02:00
Erik Montnemery
0dc5875cbd Bump python-otbr-api to 2.3.0 (#97185) 2023-07-25 09:22:57 +02:00
Meow
024d646526 Aligned integration manifest files (#97175) 2023-07-25 08:33:56 +02:00
Matrix
3bbbd8642f Add yolink finger support (#96944) 2023-07-25 08:30:16 +02:00
Mike Woudenberg
945fffebcc Use get_url to get Home Assistant instance for Loqed webhook (#95761) 2023-07-25 08:27:18 +02:00
G Johansson
c312dcbc4b Scrape refactor to ManualTriggerEntity (#96329) 2023-07-25 00:54:19 +02:00
Renier Moorcroft
5ec633a839 Add Ezviz button entities (#93647)
* Initial commit

* Add button for ptz

* coveragerc

* Add ptz buttons to PTZ cameras only

* Describe support capbility

* Improve typing

* bump api version.

* Match entity naming used throughout

* Add translation

* Create ir before execution and breaks in version

* Fix for translation missing name key.

* Change depreciation to 2024.2.0

* Update camera.py

* Tiny spelling tweaks

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-25 00:31:44 +02:00
Guido Schmitz
6717e40114 Use snapshots in devolo Home Network button tests (#95141)
Use snapshots
2023-07-25 00:20:09 +02:00
Michael
cce9d938f6 Make setup of Ecovacs async (#96200)
* make setup async

* apply suggestions
2023-07-25 00:07:43 +02:00
Michael Hansen
99e7b42127 Bump hassil and intents (#97174) 2023-07-24 16:52:16 -05:00
Álvaro Fernández Rojas
d1e96a356a Add Airzone Cloud Aidoo binary sensors (#95607)
airzone_cloud: add Aidoo binary sensors

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-07-24 23:27:33 +02:00
Maciej Bieniek
9f9602e8a7 Add frequency sensor for Shelly Plus/Pro xPM devices (#97172) 2023-07-24 23:07:57 +02:00
Duco Sebel
7c902d5aad Bumb python-homewizard-energy to 2.0.2 (#97169) 2023-07-24 22:19:37 +02:00
starkillerOG
8a58675be2 Reolink improve webhook URL error message (#96088)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-24 22:01:45 +02:00
J. Nick Koston
410b343ae0 Bump dbus-fast to 1.87.2 (#97167) 2023-07-24 14:48:18 -05:00
Ernst Klamer
28197adebd Add support for sleepy Xiaomi BLE sensors (#97166) 2023-07-24 21:13:16 +02:00
Matthias Alphart
8ff9f2ddbe Add date platform to KNX (#97154) 2023-07-24 21:12:37 +02:00
Joost Lekkerkerker
2dc86364f3 Migrate TPLink to has entity name (#96246) 2023-07-24 20:49:40 +02:00
J. Nick Koston
f8705a8074 Bump anyio to 3.7.1 (#97165) 2023-07-24 20:34:59 +02:00
J. Nick Koston
5cc72814c9 Bump fnv-hash-fast to 0.4.0 (#97160) 2023-07-24 20:34:46 +02:00
Joost Lekkerkerker
ba1bf9d39f Add entity translations to AsusWRT (#95125) 2023-07-24 20:29:23 +02:00
elmurato
557b6d511b Improve reading of MOTD and bump mcstatus to 11.0.0 (#95715)
* Improve reading of MOTD, bump mcstatus to 10.0.3 and getmac to 0.9.4

* Revert bump of getmac

* Bump mcstatus to 11.0.0-rc3. Use new MOTD parser.

* Bump mcstatus to 11.0.0
2023-07-24 20:23:11 +02:00
J. Nick Koston
649568be83 Bump ulid-transform to 0.8.0 (#97162) 2023-07-24 13:16:29 -05:00
Jan Stienstra
fb6699b498 Jellyfin: Sort seasons and episodes by index (#92961) 2023-07-24 20:13:26 +02:00
Renier Moorcroft
4c3d9e5205 Fix EZVIZ LightEntity occasional ValueError (#95679) 2023-07-24 20:03:31 +02:00
tronikos
d0722e2312 Android TV Remote: Add option to disable IME (#95765) 2023-07-24 20:00:51 +02:00
ollo69
2cfc11d4b9 Limit AndroidTV screencap calls (#96485) 2023-07-24 19:58:11 +02:00
ollo69
345df715d6 Change AsusWRT entities unique id (#97066)
Migrate AsusWRT entities unique id
2023-07-24 19:53:58 +02:00
Maciej Bieniek
17e757af36 Add sensors for Shelly Plus PM Mini (#97163) 2023-07-24 19:53:39 +02:00
J. Nick Koston
593960c704 Bump bluetooth deps (#97157) 2023-07-24 19:49:24 +02:00
J. Nick Koston
6e50576db2 Bump zeroconf to 0.71.4 (#97156) 2023-07-24 19:48:50 +02:00
Oliver
0d79903f90 Fix denonavr netaudio telnet event (#97159) 2023-07-24 12:41:41 -05:00
Joost Lekkerkerker
fe66c3414b Implement data coordinator for LastFM (#96942)
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-07-24 19:39:46 +02:00
Jan-Philipp Benecke
e96bff1674 Add alternative key names for Discovergy voltage sensors (#97155) 2023-07-24 19:31:25 +02:00
Joost Lekkerkerker
2bd6b519fa Remove unused words from codespell check (#97152)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-07-24 19:29:24 +02:00
J. Nick Koston
31d6b615b4 Bump home-assistant-bluetooth to 1.10.1 (#97153) 2023-07-24 12:11:28 -05:00
J. Nick Koston
35aae949d0 Add initial test coverage for ESPHome manager (#97147) 2023-07-24 18:48:09 +02:00
Joost Lekkerkerker
549fef08ad Make Codespell skip snapshot tests (#97150) 2023-07-24 18:46:54 +02:00
Yuxin Wang
36ad24ce01 Add name and default name to device info of APCUPSD sensors (#94415) 2023-07-24 18:42:08 +02:00
Luke
2c42a319a2 Add Fallback to cloud api for Roborock (#96147)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-24 18:37:37 +02:00
Franck Nijhof
6b980eb0a7 Migrate frontend services to support translations (#96342)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-24 18:35:26 +02:00
Nerdix
2220396c41 Enable long-term statistics for Fast.com sensor (#97139) 2023-07-24 16:59:39 +02:00
J. Nick Koston
57c640c83c Reduce attribute lookups in climate needed to write state (#97145) 2023-07-24 16:58:26 +02:00
Franck Nijhof
b655b9d530 Allow for translating service examples (#97141) 2023-07-24 15:57:02 +02:00
Joost Lekkerkerker
0c4e341189 Fix typos in Radio Browser comment and docstring (#97138) 2023-07-24 14:22:09 +02:00
Marcel van der Veldt
14524b985b Handle Matter Nullable as None (#97133) 2023-07-24 14:18:39 +02:00
Matthias Alphart
755b0f9120 Update xknx to 2.11.2 - fix DPT 9 small negative values (#97137) 2023-07-24 14:16:29 +02:00
Marc Mueller
995c29e052 Cleanup EventType typing (#97136) 2023-07-24 13:18:38 +02:00
Marc Mueller
4161f53bea Improve async_track_state_change_filtered callback typing (#97134) 2023-07-24 12:42:29 +02:00
Marc Mueller
582499a260 Improve async_track_template_result callback typing (#97135) 2023-07-24 12:42:17 +02:00
Marc Mueller
c0da6b822e Fix ruff (#97131) 2023-07-24 10:34:16 +02:00
Marc Mueller
3371c41bda Improve async_track_device_registry_updated_event callback typing (#97125) 2023-07-24 09:42:01 +02:00
Joost Lekkerkerker
daa76bbab6 Migrate Yeelight to has entity naming (#96836) 2023-07-24 09:39:48 +02:00
Marc Mueller
0624345322 Improve async_track_entity_registry_updated_event callback typing (#97124) 2023-07-24 09:14:10 +02:00
puddly
84220e92ea Wrap internal ZHA exceptions in HomeAssistantErrors (#97033) 2023-07-24 09:12:21 +02:00
Marc Mueller
797a9c1ead Improve async_track_state_added/removed_domain callback typing (#97126) 2023-07-24 09:11:41 +02:00
Marc Mueller
8c870a5683 Use EventType for state changed [m-z] (#97118) 2023-07-24 08:07:07 +02:00
Marc Mueller
0cc396b863 Use EventType for state changed [a-h] (#97116) 2023-07-24 08:04:13 +02:00
Marc Mueller
5b73bd2f8e Use EventType for state changed [h-m] (#97117) 2023-07-24 08:01:50 +02:00
J. Nick Koston
40382f0caa Bump zeroconf to 0.71.3 (#97119) 2023-07-24 08:00:25 +02:00
J. Nick Koston
19b0a6e7f6 Relax typing on cached_property to accept subclasses (#95407) 2023-07-23 20:47:29 -05:00
Marc Mueller
235b98da8a Use EventType for remaining event helper methods (#97121) 2023-07-23 18:32:29 -05:00
Franck Nijhof
f8c3aa7bec Remove the use of StateType from Demo (#97111) 2023-07-23 18:20:23 -05:00
J. Nick Koston
34dcd98440 Only construct enum __or__ once in emulated_hue (#97114) 2023-07-23 18:17:46 -05:00
Marc Mueller
2618bfc073 Use EventType for state changed [core] (#97115) 2023-07-23 18:10:03 -05:00
J. Nick Koston
051929984d Bump yeelight to 0.7.12 (#97112) 2023-07-23 17:13:48 -05:00
Franck Nijhof
6ad34a7f76 Update pipdeptree to 2.11.0 (#97098) 2023-07-23 23:51:50 +02:00
Franck Nijhof
5e88ca23b3 Remove the use of StateType from AccuWeather (#97109) 2023-07-23 23:30:37 +02:00
Marc Mueller
69d7b035e0 Use EventType for more helper methods (#97107) 2023-07-23 23:22:04 +02:00
rale
54d7ba72ee Add second led control for carro smart fan (#94195)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-23 23:20:29 +02:00
Franck Nijhof
30058297cf Migrate backported StrEnum to built-in StrEnum (#97101) 2023-07-23 23:19:24 +02:00
Jeef
38e3e20f74 Add Low Battery binary_sensor to Flume (#94914)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-23 23:11:07 +02:00
Steven Looman
9f551c0469 Bump async-upnp-client to 0.34.1 (#97105) 2023-07-23 22:38:21 +02:00
Franck Nijhof
8abf8726c6 Update Home Assistant base image to 2023.07.0 (#97103) 2023-07-23 15:27:03 -05:00
Franck Nijhof
86708b5590 Update ruff to v0.0.280 (#97102) 2023-07-23 22:00:26 +02:00
Marc Mueller
bdd253328d Add generic Event class (#97071) 2023-07-23 21:51:54 +02:00
Antoni Czaplicki
860a37aa65 Fix vulcan integration (#91401) 2023-07-23 21:40:56 +02:00
G Johansson
61f3f38c99 State attributes translation for Sensibo (#85239) 2023-07-23 21:34:32 +02:00
Maciej Bieniek
c61c6474dd Add frequency and N current sensors for Shelly Pro 3EM (#97082) 2023-07-23 21:33:47 +02:00
Franck Nijhof
b8207d7124 Merge branch 'master' into dev 2023-07-23 20:38:12 +02:00
Franck Nijhof
910c897ceb Fix typo hidrogen to hydrogen (#97096) 2023-07-23 20:34:47 +02:00
Jan Bouwhuis
fab3c5b849 Fix imap cleanup error on abort (#97097) 2023-07-23 20:30:15 +02:00
J. Nick Koston
dc3d0fc7a7 Bump flux_led to 1.0.1 (#97094) 2023-07-23 20:27:09 +02:00
Emil Ahlbäck
7ed66706b9 Add "enqueue" parameter to spotify integration (#90687)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-07-23 20:26:07 +02:00
Joost Lekkerkerker
bfbdebd0f7 Add entity translations to uPnP (#96763) 2023-07-23 20:21:57 +02:00
Jan Bouwhuis
3183ce7608 Add doorbell event support to alexa (#97092) 2023-07-23 20:16:46 +02:00
Joost Lekkerkerker
54044161c3 Add entity translations to Renson (#96040) 2023-07-23 20:11:26 +02:00
Joost Lekkerkerker
dd6cd0096a Improve code coverage for LastFM (#97012)
* Improve code coverage for LastFM

* Revert introduced bug
2023-07-23 20:09:16 +02:00
Luke
5158461dec Add Number platform to Roborock (#94209) 2023-07-23 19:02:16 +02:00
Miguel Camba
38111141f9 Add new device class: PH (potential hydrogen) (#95928) 2023-07-23 18:49:10 +02:00
Robert Svensson
1552319e94 Add Axis camera sources to diagnostics (#97063) 2023-07-23 17:56:58 +02:00
Teemu R
e5747d3f4c Bump python-kasa to 0.5.3 (#97088) 2023-07-23 09:42:54 -05:00
Jan Bouwhuis
1b8e03bb66 Add MQTT event entity platform (#96876)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-23 14:42:14 +02:00
Joost Lekkerkerker
26152adb23 Add entity translations to Tado (#96226) 2023-07-23 14:32:25 +02:00
Franck Nijhof
995c4d8ac1 Add missing translations for power binary sensor device class (#97084) 2023-07-23 14:20:57 +02:00
Joost Lekkerkerker
33f2453f33 Add entity translations for ld2410 BLE (#95709) 2023-07-23 14:01:27 +02:00
Ernst Klamer
672313c8ab Add support for MiScale V1 (#97081) 2023-07-23 13:11:05 +02:00
Dave T
35f21dcf9c Add repair hint to deprecate generic camera yaml config (#96923) 2023-07-23 11:10:18 +02:00
Joost Lekkerkerker
2365e4c159 Disable Spotify controls when no active session (#96914) 2023-07-23 10:59:29 +02:00
J. Nick Koston
d4cdb0453f Guard expensive debug formatting with calls with isEnabledFor (#97073) 2023-07-23 10:54:25 +02:00
J. Nick Koston
61532475f9 Cleanup sensor unit conversion code (#97074) 2023-07-23 10:49:45 +02:00
J. Nick Koston
095146b163 Fix has_entity_name not always being set in ESPHome (#97055) 2023-07-23 10:45:48 +02:00
Joost Lekkerkerker
bf66dc7a91 Use entity name naming for Nanoleaf (#95741)
* Use device class naming for Nanoleaf

* Remove device class icon
2023-07-22 22:59:56 -04:00
J. Nick Koston
b90137f4c6 Add another OUI to tplink (#97062) 2023-07-22 17:52:38 -05:00
J. Nick Koston
e60313628f Add a cancel message to the aiohttp compatiblity layer (#97058) 2023-07-22 17:06:32 -05:00
Marc Mueller
fe0fe19be9 Use datetime.UTC alias [3.11] (#97067) 2023-07-22 17:05:11 -05:00
Marc Mueller
da6802b009 Drop tomli (#97064) 2023-07-22 17:04:45 -05:00
Marc Mueller
45ec314232 Replace typing.Optional with new typing syntax (#97068) 2023-07-22 17:03:53 -05:00
Marc Mueller
77f38e33e5 Import names from typing instead of typing_extensions [3.11] (#97065) 2023-07-22 17:03:44 -05:00
J. Nick Koston
7c55dbdb17 Bump aiohomekit to 2.6.11 (#97061) 2023-07-22 16:47:13 -05:00
Franck Nijhof
ce1f5f997e Drop Python 3.10 support (#97007) 2023-07-22 23:03:45 +02:00
Jan Bouwhuis
9424d11408 Allow homeassistant in MQTT configuration_url schema (#96107) 2023-07-22 22:50:58 +02:00
J. Nick Koston
75f3054cc2 Bump aiohomekit to 2.6.10 (#97057) 2023-07-22 13:34:36 -05:00
J. Nick Koston
f36930f165 Fix zeroconf tests with cython 3 (#97054) 2023-07-22 12:33:37 -05:00
Jan Bouwhuis
9a5774a95d Apply common entity schema for MQTT Scene (#96949) 2023-07-22 18:00:27 +02:00
Joost Lekkerkerker
d4f301f4a3 Migrate Tolo to entity name (#96244) 2023-07-22 17:39:11 +02:00
Erik Montnemery
a8d77cc5ad Teach zwave_js device trigger about entity registry ids (#96303) 2023-07-22 17:29:24 +02:00
Joost Lekkerkerker
77f2eb0ac9 Add entity translations to Subaru (#96186) 2023-07-22 17:29:04 +02:00
Ståle Storø Hauknes
9a5fe9f644 Airthings BLE: Improve supported devices (#95883) 2023-07-22 17:24:06 +02:00
Christopher Fenner
e68832a889 Fix Vicare cleanup token file on uninstall (#95992) 2023-07-22 17:23:01 +02:00
Maciej Bieniek
5249660a6a Add uv_index to AccuWeather weather entity (#97015) 2023-07-22 17:11:39 +02:00
Joost Lekkerkerker
15c52e67a0 Clean up Enphase Envoy const file (#95536) 2023-07-22 16:59:15 +02:00
Joost Lekkerkerker
44803e1177 Migrate Uptimerobot to has entity name (#96770) 2023-07-22 16:55:05 +02:00
Joost Lekkerkerker
13fd5a59e3 Clean up Vilfo const file (#95543) 2023-07-22 16:33:06 +02:00
Joost Lekkerkerker
9ca288858b Add entity translations to IntelliFire (#95466) 2023-07-22 16:31:36 +02:00
Joost Lekkerkerker
11fd43b1fc Add entity translations to Wiz (#96826) 2023-07-22 16:28:48 +02:00
Joost Lekkerkerker
47426e50d3 Add entity translations to Modern Forms (#95738) 2023-07-22 16:19:37 +02:00
Joost Lekkerkerker
d708c159e7 Add entity translations to iCloud (#95461) 2023-07-22 16:16:39 +02:00
Joost Lekkerkerker
fe0d33d97c Move Aseko coordinator to separate file (#95120) 2023-07-22 16:12:28 +02:00
Joost Lekkerkerker
e2fdc6a98b Add entity translations for Ondilo Ico (#95809) 2023-07-22 13:16:07 +02:00
J. Nick Koston
24b9bde9e5 Fix duplicate and missing decorators in ESPHome Bluetooth client (#97027) 2023-07-22 13:10:41 +02:00
Joost Lekkerkerker
123cf07920 Clean up fitbit const (#95545) 2023-07-22 13:07:34 +02:00
Joost Lekkerkerker
9b717cb84f Use snapshot testing in LastFM (#97009) 2023-07-22 12:47:26 +02:00
Joost Lekkerkerker
fb460d343e Add upload date to Youtube state attributes (#96976) 2023-07-22 12:45:55 +02:00
Joost Lekkerkerker
8495da1964 Add entity translations for PoolSense (#95814) 2023-07-22 12:43:51 +02:00
Marc Mueller
4bc57c0466 Update coverage to 7.2.7 (#96998) 2023-07-22 12:39:28 +02:00
J. Nick Koston
52ab6b0b9d Bump httpcore to 0.17.3 (#97032) 2023-07-21 19:15:28 -05:00
J. Nick Koston
2c4e4428e9 Decouple more of ESPHome Bluetooth support (#96502)
* Decouple more of ESPHome Bluetooth support

The goal is to be able to move more of this into an external library

* Decouple more of ESPHome Bluetooth support

The goal is to be able to move more of this into an external library

* Decouple more of ESPHome Bluetooth support

The goal is to be able to move more of this into an external library

* Decouple more of ESPHome Bluetooth support

The goal is to be able to move more of this into an external library

* Decouple more of ESPHome Bluetooth support

The goal is to be able to move more of this into an external library

* fix diag

* remove need for hass in the client

* refactor

* decouple more

* decouple more

* decouple more

* decouple more

* decouple more

* remove unreachable code

* remove unreachable code
2023-07-21 16:41:50 -04:00
Michael
facd6ef765 Display current version in common format in AVM Fritz!Tools (#96424) 2023-07-21 21:58:18 +02:00
J. Nick Koston
7814ce06f4 Fix ESPHome bluetooth client cancel behavior when device unexpectedly disconnects (#96918) 2023-07-21 13:44:13 -05:00
Marc Mueller
a2b18e46b9 Update respx to 0.20.2 (#96996) 2023-07-21 13:08:38 -04:00
Marc Mueller
6e90a75779 Update tqdm to 4.65.0 (#96997) 2023-07-21 13:08:24 -04:00
Marc Mueller
cd89f660d4 Update pytest-asyncio to 0.21.0 (#96999) 2023-07-21 13:08:05 -04:00
Marc Mueller
432ac1f313 Update pytest-sugar to 0.9.7 (#97001) 2023-07-21 13:07:49 -04:00
J. Nick Koston
0b0f072faf Bump aioesphomeapi to 15.1.14 (#97019)
changelog: https://github.com/esphome/aioesphomeapi/compare/v15.1.13...v15.1.14
2023-07-21 13:05:46 -04:00
Franck Nijhof
40b5605caf 2023.7.3 (#96936) 2023-07-21 17:53:01 +02:00
G Johansson
4e30056830 Add new Forecasting to Weather (#75219)
* Add new Forecasting to Weather

* Add is_daytime for forecast_twice_daily

* Fix test

* Fix demo test

* Adjust tests

* Fix typing

* Add demo

* Mod demo more realistic

* Fix test

* Remove one weather

* Fix weather example

* kitchen_sink

* Reverse demo partially

* mod kitchen sink

* Fix twice_daily

* kitchen_sink

* Add test weathers

* Add twice daily to demo

* dt_util

* Fix names

* Expose forecast via WS instead of as state attributes

* Regularly update demo + kitchen_sink weather forecasts

* Run linters

* Fix rebase mistake

* Improve demo test coverage

* Improve weather test coverage

* Exclude kitchen_sink weather from test coverage

* Rename async_update_forecast to async_update_listeners

* Add async_has_listeners helper

* Revert "Add async_has_listeners helper"

This reverts commit 52af3664bb06d9feac2c5ff963ee0022077c23ba.

* Fix rebase mistake

---------

Co-authored-by: Erik <erik@montnemery.com>
2023-07-21 17:30:48 +02:00
Maciej Bieniek
9f98a418cd Add new sensors for Shelly Pro 3EM (#97006)
* Add new sensors

* Fix typo
2023-07-21 18:18:14 +03:00
Franck Nijhof
530556015f Use walrus in event entity last event attributes (#97005) 2023-07-21 15:32:27 +02:00
rappenze
be7818fafb Update pyfibaro dependency (#97004) 2023-07-21 15:32:17 +02:00
Michael Davie
fe140bdca3 Bump env_canada to v0.5.36 (#96987) 2023-07-21 15:32:13 +02:00
J. Nick Koston
4644355eff Fix task leak on config entry unload/retry (#96981)
Since the task was added to self._tasks without a `task.add_done_callback(self._tasks.remove)`
each unload/retry would leak a new set of tasks
2023-07-21 15:32:10 +02:00
Joost Lekkerkerker
fd3bdeaef1 Remove stateclass from Systemmonitor process sensor (#96973)
Remove stateclass
2023-07-21 15:32:05 +02:00
Franck Nijhof
26584e3660 Update aiohttp to 3.8.5 (#96945) 2023-07-21 15:31:59 +02:00
Marc Mueller
b3da2ea9a6 Update pytest-socket to 0.6.0 (#97011) 2023-07-21 15:29:15 +02:00
rappenze
9434a64b87 Update pyfibaro dependency (#97004) 2023-07-21 09:22:45 -04:00
Joost Lekkerkerker
9954208d3a Move OpenSky constants to separate const file (#97013) 2023-07-21 15:20:24 +02:00
Marc Mueller
7d173bf4e5 Update pytest-cov to 4.1.0 (#97010) 2023-07-21 15:07:12 +02:00
Maciej Bieniek
2e156e56bf Create an issue if Shelly TRV is not calibrated (#96952)
* Create issue if Shelly Valve is not calibrated

* Add test

* Improve test

* Improve issue description

* Restart -> reboot
2023-07-21 14:20:03 +02:00
Marc Mueller
878a4f1bb9 Update pytest-freezer to 0.4.8 (#97000) 2023-07-21 14:15:15 +02:00
G Johansson
58ce357870 Add uv_index to Weather Entity (#96951)
* Add uv_index to Weather Entity

* translation

* Update homeassistant/components/weather/__init__.py

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-07-21 14:07:10 +02:00
karwosts
9b0d4c8c03 Fix a translation bug for water price issue (#96958) 2023-07-21 13:00:18 +02:00
Jan Bouwhuis
447fbf58c9 Change naming of MQTT entities to correspond with HA guidelines (#95159)
* Set has_entity_name if device_name is set

* revert unneeded formatting change

* Add image platform

* Follow up comment

* Don't set `has_entity_name` without device name

* Only set has_entity_name if a valid name is set

* Follow device_class name and add tests

* Follow up comments add extra tests

* Move to helper - Log a warning

* fix test

* Allow to assign None as name explictly

* Refactor

* Log info messages when device name is not set

* Revert scene schema change - no device link

* Always set has_entity_name with device mapping

* Always set `_attr_has_entity_name`

* Cleanup
2023-07-21 12:52:10 +02:00
Franck Nijhof
747f4d4a73 Add event entity (#96797) 2023-07-21 12:16:35 +02:00
Renier Moorcroft
4916351d9a Add EZVIZ AlarmControlPanelEntity (#96602)
* Add ezviz alarm panel

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Joakim Plate <elupus@ecce.se>
2023-07-21 12:01:02 +02:00
Joost Lekkerkerker
33c2fc008a Add diagnostics to YouTube (#96975) 2023-07-21 11:58:49 +02:00
Franck Nijhof
e4d65cbae1 Update syrupy to 4.0.8 (#96990) 2023-07-21 11:57:40 +02:00
Joost Lekkerkerker
52313bfce5 Clean up Ombi const file (#95541) 2023-07-21 11:55:31 +02:00
Joost Lekkerkerker
4fa9f25e38 Clean up logi circle const (#95540) 2023-07-21 10:03:49 +02:00
Joost Lekkerkerker
d935c18f38 Add entity translations to Daikin (#95181) 2023-07-21 10:02:05 +02:00
Joost Lekkerkerker
b39f7d6a71 Add snapshot testing to YouTube (#96974) 2023-07-21 09:54:06 +02:00
Joost Lekkerkerker
e9eb8a4754 Remove stateclass from Systemmonitor process sensor (#96973)
Remove stateclass
2023-07-21 09:00:04 +02:00
J. Nick Koston
e2394b34bd Cache version compare in update entity (#96978) 2023-07-21 08:56:34 +02:00
Marc Mueller
32d63ae890 Fix sentry test assert (#96983) 2023-07-21 08:55:44 +02:00
Michael Davie
92eaef9b18 Bump env_canada to v0.5.36 (#96987) 2023-07-21 08:54:57 +02:00
Ernst Klamer
4e964c3819 Bump xiaomi-ble to 0.19.1 (#96967)
* Bump xiaomi-ble to 0.19.0

* Bump xiaomi-ble to 0.19.1

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-07-21 00:13:56 -05:00
J. Nick Koston
28ff173f16 Only lookup hostname/ip_address/mac_address once in device_tracker (#96984) 2023-07-21 00:07:06 -05:00
Jan Bouwhuis
b504665b56 Do not override extra_state_attributes property for MqttEntity (#96890) 2023-07-21 06:35:58 +02:00
J. Nick Koston
c067c52cf4 Fix translation key in profiler integration (#96979) 2023-07-20 21:40:38 -05:00
J. Nick Koston
9fba6870fe Fix task leak on config entry unload/retry (#96981)
Since the task was added to self._tasks without a `task.add_done_callback(self._tasks.remove)`
each unload/retry would leak a new set of tasks
2023-07-20 21:00:07 -04:00
J. Nick Koston
99def97ed9 Add cancel messages to core task cancelation (#96972) 2023-07-20 18:03:36 -05:00
J. Nick Koston
6818cae072 Bump aioesphomeapi to 15.1.13 (#96964) 2023-07-20 16:05:17 -05:00
Franck Nijhof
e9a63b7501 Use default icon for demo button entity (#96961) 2023-07-20 23:02:59 +02:00
J. Nick Koston
b7bcc1eae4 Bump yalexs-ble to 2.2.3 (#96927) 2023-07-20 22:20:15 +02:00
Franck Nijhof
7389fea223 Fix OTBR tests on RC (#96966) 2023-07-20 21:09:59 +02:00
Brandon Rothweiler
55e5947330 Upgrade pymazda to 0.3.10 (#96954) 2023-07-20 21:07:06 +02:00
Jonathan Jogenfors
35ab024298 Add custom bypass night arming to SIA alarm codes (#95736)
* Add SIA codes for night arming with custom bypass

* Set night custom bypass to ARMED_CUSTOM_BYPASS
2023-07-20 21:07:02 +02:00
J. Nick Koston
71ca976d58 Fix esphome entity ids in test (#96965) 2023-07-20 21:05:08 +02:00
J. Nick Koston
e9620c62b8 Fix assertions in zeroconf tests (#96957) 2023-07-20 20:36:46 +02:00
J. Nick Koston
2a13515759 Bump aiohomekit to 2.6.9 (#96956) 2023-07-20 13:18:33 -05:00
Brandon Rothweiler
da5cba8083 Upgrade pymazda to 0.3.10 (#96954) 2023-07-20 13:16:08 -05:00
Franck Nijhof
d36d233885 Update pipdeptree to 2.10.2 (#96940) 2023-07-20 16:12:14 +02:00
Franck Nijhof
c99adf54b4 Update aiohttp to 3.8.5 (#96945) 2023-07-20 16:11:14 +02:00
Joost Lekkerkerker
fff254e0dc Avoid using name in Subaru migrations (#96221)
* Avoid using name in Subaru migrations

* Add feedback

* Update tests/components/subaru/test_sensor.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Update tests/components/subaru/test_sensor.py

Co-authored-by: G-Two <7310260+G-Two@users.noreply.github.com>

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
Co-authored-by: G-Two <7310260+G-Two@users.noreply.github.com>
2023-07-20 14:45:07 +02:00
Jonathan Jogenfors
a381ceed86 Add custom bypass night arming to SIA alarm codes (#95736)
* Add SIA codes for night arming with custom bypass

* Set night custom bypass to ARMED_CUSTOM_BYPASS
2023-07-20 14:43:38 +02:00
Erik Montnemery
f809ce9033 Update bind_hass docstring to discourage its use (#96933) 2023-07-20 13:34:24 +02:00
Franck Nijhof
86d9d9cea5 Disable wheels building for pycocotools (#96937) 2023-07-20 13:24:19 +02:00
Franck Nijhof
14b553ddbc Disable wheels building for pycocotools (#96937) 2023-07-20 13:16:02 +02:00
Erik Montnemery
df46179d26 Fix broken service test (#96943) 2023-07-20 13:11:55 +02:00
lkshrk
8896c164be Update .devcontainer.json structure (#96537) 2023-07-20 13:11:43 +02:00
Maciej Bieniek
db83dc9acc Create an issue if push updates fail for Shelly gen1 devices (#96910)
* Create an issue if push updates fail

* Improve strings

* Delete the issue when reloading configuration entry

* Change MAX_PUSH_UPDATE_FAILURES to 5

* Improve issue strings

* Add test

* Use for

* Update homeassistant/components/shelly/strings.json

Co-authored-by: Charles Garwood <cgarwood@newdealmultimedia.com>

* Simplify deleting the issue

---------

Co-authored-by: Charles Garwood <cgarwood@newdealmultimedia.com>
2023-07-20 13:11:05 +02:00
RoboMagus
c433b251fa Shell command response (#96695)
* Add service response to shell_commands

* Add shell_command response tests

* Fix mypy

* Return empty dict instead of None on error

* Improved response type hint

* Cleanup after removing type cast

* Raise exceptions i.s.o. returning

* Fix ruff
2023-07-20 11:53:57 +02:00
Joost Lekkerkerker
0ba2531ca4 Fix bug in check_config when an integration is removed by its own validator (#96068)
* Raise if present is False

* Fix feedback

* Update homeassistant/helpers/check_config.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/helpers/check_config.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Fix tests

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-07-20 11:45:44 +02:00
Franck Nijhof
7105b4b28b Bumped version to 2023.7.3 2023-07-20 11:45:02 +02:00
G Johansson
db32aa7c5e Fix timer switch in Sensibo (#96911) 2023-07-20 11:42:54 +02:00
mkmer
0c10005270 Bump AIOSomecomfort to 0.0.15 in Honeywell (#96904) 2023-07-20 11:42:51 +02:00
uvjustin
58c3c8a7a8 Avoid infinite loop on corrupt stream recording (#96881)
* Avoid infinite loop on corrupt stream recording

* Update tests
2023-07-20 11:42:47 +02:00
Luke
c118574bf4 bump python-Roborock to 0.30.1 (#96877)
bump to 0.30.1
2023-07-20 11:42:44 +02:00
mkmer
7f5a141f69 Add username to Reauth flow in Honeywell (#96850)
* pre-populate username/password on reauth

* Update homeassistant/components/honeywell/config_flow.py

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

* Use add_suggested_value_to_schema

* Optimize code

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-07-20 11:42:41 +02:00
Marc Mueller
3890d8d132 Update pycocotools to 2.0.6 (#96831) 2023-07-20 11:42:35 +02:00
Marc Mueller
72073b28cc Update PyYAML to 6.0.1 (#96800) 2023-07-20 11:41:05 +02:00
Erik Montnemery
4501bdb5bf Fix check for HA Yellow radio in otbr config flow (#96789) 2023-07-20 11:40:24 +02:00
Erik Montnemery
7748000026 Prevent otbr creating multiple config entries (#96783) 2023-07-20 11:39:01 +02:00
Joost Lekkerkerker
38d58b4d91 Use explicit device name for Stookalert (#96755) 2023-07-20 11:38:57 +02:00
Jan Bouwhuis
fff04a5e9b Improve imap error handling for config entry (#96724)
* Improve error handling config entry

* Removed CancelledError

* Add cleanup

* Do not call protected async_set_state()
2023-07-20 11:38:02 +02:00
G Johansson
4e2b00a443 Refactor SQL with ManualTriggerEntity (#95116)
* First go

* Finalize sensor

* Add tests

* Remove not need _attr_name

* device_class

* _process_manual_data allow Any as value
2023-07-20 11:35:08 +02:00
Andrew Sayre
d866cdb9cf Fix SmartThings Cover Set Position (for window shades) (#96612)
* Update smartthings dependencies

* Update cover to support window_shade_level
2023-07-20 11:29:33 +02:00
Allen Porter
653b1e5ad8 Bump pyrainbird to 3.0.0 (#96610) 2023-07-20 11:29:30 +02:00
Allen Porter
f5ba9af494 Bump pyrainbird to 2.1.1 (#96601) 2023-07-20 11:29:26 +02:00
quthla
cfcdf866dd Ensure androidtv_remote does not block startup of HA (#96582)
* Ensure androidtv_remote does not block startup of HA

* Fix lint

* Use asyncio.wait_for

* Update homeassistant/components/androidtv_remote/__init__.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/components/androidtv_remote/__init__.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Fix lint

* Lint

* Update __init__.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-07-20 11:29:23 +02:00
Aaron Collins
b193b5667b Fix daikin missing key after migration (#96575)
Fix daikin migration
2023-07-20 11:29:20 +02:00
J. Nick Koston
173a61bdff Bump onvif-zeep-async to 3.1.12 (#96560) 2023-07-20 11:29:17 +02:00
J. Nick Koston
7425d97ee1 Handle empty strings for ESPHome UOMs (#96556) 2023-07-20 11:29:13 +02:00
J. Nick Koston
8382feeff4 Defer SSDP UPNP server start until the started event (#96555) 2023-07-20 11:29:10 +02:00
Joost Lekkerkerker
2967a00bc6 Support MyStrom switch 120 (#96535) 2023-07-20 11:29:07 +02:00
Guido Schmitz
a9902a21bf Bump devolo_plc_api to 1.3.2 (#96499) 2023-07-20 11:29:03 +02:00
Sebastian Lövdahl
a50a96b687 Fix Vallox fan entity naming (#96494) 2023-07-20 11:29:00 +02:00
Sebastian Lövdahl
bc795f4953 Bump vallox-websocket-api to 3.3.0 (#96493) 2023-07-20 11:28:53 +02:00
J. Nick Koston
1f11a75ab1 Always try PullPoint with ONVIF (#96377) 2023-07-20 11:28:47 +02:00
Joost Lekkerkerker
6ed119006d Use device class naming for SimpliSafe (#96093) 2023-07-20 11:28:42 +02:00
G Johansson
3fbdf4a184 Fix timer switch in Sensibo (#96911) 2023-07-20 11:27:30 +02:00
Dmitry Vasilyev
effa90272d Support Tuya Air Conditioner Mate (WiFi) - Smart IR socket with power monitoring (#95027)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-20 11:16:38 +02:00
Joost Lekkerkerker
34e30570c1 Migrate airtouch 4 to use has entity name (#96356) 2023-07-20 11:15:54 +02:00
Erik Montnemery
fa0d68b1d7 Add NumberDeviceClass.DURATION (#96932) 2023-07-20 11:10:03 +02:00
G Johansson
db76bf3a9f Implement coordinator in Trafikverket Train (#96916)
* Implement coordinator TVT

* Review comments

* Review changes
2023-07-20 10:40:34 +02:00
Renier Moorcroft
4e460f71f8 Add EZVIZ BinarySensorEntity proper names and translation key (#95698)
* Update binary_sensor.py

* Add proper naming and translation keys

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Fix strings after merge.

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-07-20 10:35:06 +02:00
Blastoise186
ce0027a84e Upgrade yt-dlp to fix security issue (#96453)
* Bump yt-dlp from 2023.3.4 to 2023.7.6

Bumps [yt-dlp](https://github.com/yt-dlp/yt-dlp) from 2023.3.4 to 2023.7.6.
- [Release notes](https://github.com/yt-dlp/yt-dlp/releases)
- [Changelog](https://github.com/yt-dlp/yt-dlp/blob/master/Changelog.md)
- [Commits](https://github.com/yt-dlp/yt-dlp/compare/2023.03.04...2023.07.06)

---
updated-dependencies:
- dependency-name: yt-dlp
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump yt-dlp to 2023.7.6

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-20 10:21:52 +02:00
quthla
df19d4fd15 Ensure androidtv_remote does not block startup of HA (#96582)
* Ensure androidtv_remote does not block startup of HA

* Fix lint

* Use asyncio.wait_for

* Update homeassistant/components/androidtv_remote/__init__.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/components/androidtv_remote/__init__.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Fix lint

* Lint

* Update __init__.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-07-20 10:07:03 +02:00
Eric Severance
5ffffd8dbc Fully unload wemo config entry (#96620)
* Fully unload wemo config entity

* Test reloading the config entry

* Encapsulate data with dataclasses

* Fix missing test coverage

* Replace if with assert for options that are always set

* Move WemoData/WemoConfigEntryData to models.py

* Use _ to indicate unused argument

* Test that the entry and entity work after reloading

* Nit: Slight test reordering

* Reset the correct mock (get_state)

* from .const import DOMAIN

* Nit: _async_wemo_data -> async_wemo_data; not module private
2023-07-20 10:06:16 +02:00
Ernst Klamer
0349e47372 Add support for MiScale V2 (#96807)
* Add support for MiScale V2

* Add icon to impedance

* Reduce mass sensors
2023-07-20 10:01:19 +02:00
J. Nick Koston
660c95d784 Pre-split unifiprotect nested attribute lookups (#96862)
* Pre-split unifiprotect nested attribute lookups

replaces and closes #96631

* Pre-split unifiprotect nested attribute lookups

replaces and closes #96631

* comments
2023-07-20 09:59:17 +02:00
Joakim Plate
1c19c54e38 Avoid accessing coordinator in gardena_bluetooth tests (#96921)
Avoid accessing coordinator in tests
2023-07-20 08:47:26 +02:00
Tim
9da155955a Transport NSW: Set DeviceClass and StateClass (#96928)
* 2023.7.16
- Fix bug with values defaulting to "n/a" in stead of None

* 2023.7.16
- Set device class and state classes on entities

* 2023.7.16
- Set StateClass and DeviceClass directly on the entitiy

* 2023.7.16
- Fix black and ruff issues

* 2023.7.17
- Update logic catering for the 'n/a' response on an API failure
- Add testcase

* - Fix bug in formatting

* 2023.7.17
- Refacotr to consider the "n/a" response returned from the Python lib
on an error or faliure
- Remove setting of StateClass and DeviceClass as requested
- Add "n/a" test case

* 2023.7.17
- Remove unused imports

* 2023.7.18
- Apply review requested changes

* - Additional review change resolved

* Add State and Device class attributes
2023-07-20 08:35:26 +02:00
Marc Mueller
23810752ed Fix mock assert_called_with (#96929)
* Fix mock assert_called_with

* Fix sonos test

* Revert zeroconf test changes
2023-07-20 08:31:37 +02:00
Renier Moorcroft
822d840f81 EZVIZ NumberEntity async added to hass (#96930)
Update number.py
2023-07-20 08:25:54 +02:00
J. Nick Koston
6bb81b862c Add a message to the config entry cancel call (#96925) 2023-07-19 19:22:38 -05:00
J. Nick Koston
955bed0128 Bump aioesphomeapi to 15.1.12 (#96924) 2023-07-19 18:39:50 -05:00
J. Nick Koston
f310d6ca58 Bump bleak-retry-connector to 3.1.0 (#96917) 2023-07-19 17:04:46 -05:00
Joakim Plate
daa53118b3 Correct invalid docstring in gardena button (#96922) 2023-07-19 23:58:31 +02:00
Guy Martin
deafdc3005 Allow match quirk_class of custom quirks to ZHA (#93268)
* Allow matching custom quirks when self.quirk_classes might not contain the full class path but only the module and the class.

* Add test for matching custom quirk classes.
2023-07-19 16:11:05 -04:00
Joost Lekkerkerker
0f4c71f993 Handle nullable context in Spotify (#96913) 2023-07-19 20:37:33 +02:00
J. Nick Koston
29aa89bea0 Add lightweight API to get core state (#96860) 2023-07-19 20:31:48 +02:00
mkmer
39b242f154 Bump AIOSomecomfort to 0.0.15 in Honeywell (#96904) 2023-07-19 20:30:39 +02:00
J. Nick Koston
dae264f79e Fix websocket_api _state_diff_event using json_encoder_default (#96905) 2023-07-19 18:22:43 +02:00
steffenrapp
c80085367d Fix typo in Nuki integration (#96908) 2023-07-19 17:55:41 +02:00
mkmer
3b501fd2d7 Add username to Reauth flow in Honeywell (#96850)
* pre-populate username/password on reauth

* Update homeassistant/components/honeywell/config_flow.py

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

* Use add_suggested_value_to_schema

* Optimize code

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-07-19 15:25:10 +02:00
Franck Nijhof
06aeacc324 Update black to 23.7.0 (#96901) 2023-07-19 14:42:35 +02:00
Franck Nijhof
93ac340d54 Update syrupy to 4.0.6 (#96900) 2023-07-19 14:42:24 +02:00
Franck Nijhof
e449f8e0e5 Remove Reolink event connection sensor (#96903) 2023-07-19 14:40:00 +02:00
Franck Nijhof
0502879d10 Update PyJWT to 2.8.0 (#96899) 2023-07-19 14:35:54 +02:00
Franck Nijhof
a305a9fe9c Update sentry-sdk to 1.28.1 (#96898) 2023-07-19 13:50:28 +02:00
Renier Moorcroft
33b3b8947a Add Ezviz SensorEntity name and translation (#95697)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-19 13:26:11 +02:00
Erik Montnemery
f0953dde95 Add comment to EntityPlatform._async_add_entity about update_before_add (#96891) 2023-07-19 13:07:23 +02:00
Marc Mueller
e18da97670 Improve pip caching [ci] (#96896) 2023-07-19 13:07:11 +02:00
Joost Lekkerkerker
efbd82b5fb Add entity translations to Tuya (#96842) 2023-07-19 12:43:15 +02:00
Joost Lekkerkerker
6ffb1c3c2d Remove version string from Ecowitt name (#96498)
* Remove version string from station name

* Use model as name
2023-07-19 11:19:57 +02:00
Arjan
90bdbf503a Add humidity to meteo_france weather forecast (#96524)
Add humidity to forecast figures
2023-07-19 11:14:09 +02:00
Franck Nijhof
f4bc32ea08 Move Dynalite configuration panel to config entry (#96853) 2023-07-19 11:02:42 +02:00
Renier Moorcroft
e39187423f Ezviz NumberEntity 1st update only when enabled (#96587)
* Initial commit

* Initial commit

* Fix async_aded_to_hass
2023-07-19 10:56:11 +02:00
Erik Montnemery
b53eae2846 Add WS command for changing thread channels (#94525) 2023-07-19 10:48:32 +02:00
Joakim Plate
80a7447030 Add support for buttons in gardena bluetooth (#96871)
* Add button to gardena

* Add tests for button

* Bump gardena bluetooth to 1.0.2

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-07-19 10:17:40 +02:00
Raman Gupta
67e3203d00 Add tomorrow.io state translations and dynamically assign enum device class (#96603)
* Add state translations and dynamically assign enum device class

* Reference existing keys

* Handle additional entity descriptions
2023-07-19 09:50:09 +02:00
Darren Foo
87d0b026c2 Add support for multiple Russound RNET controllers (#96793)
* add mutiple russound rnet controller support

* Update homeassistant/components/russound_rnet/media_player.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-07-19 09:24:37 +02:00
J. Nick Koston
01e66d6fb2 Improve handling of unrecoverable storage corruption (#96712)
* Improve handling of unrecoverable storage corruption

fixes #96574

If something in storage gets corrupted core can boot loop
or if its integration specific, the integration will fail to
start.

We now complainly loudly in the log, move away the corrupt data
and start fresh to allow startup to proceed so the user can
get to the UI and restore from backup without having to attach
a console (or otherwise login to the OS and manually modify files).

* test for corruption

* ensure OSError is still fatal

* one more case

* create an issue for corrupt storage

* fix key

* persist

* feedback

* feedback

* better to give the full path

* tweaks

* grammar

* add time

* feedback

* adjust

* try to get issue_domain from storage key

* coverage

* tweak wording some more
2023-07-19 09:23:12 +02:00
uvjustin
3e58e1987c Avoid infinite loop on corrupt stream recording (#96881)
* Avoid infinite loop on corrupt stream recording

* Update tests
2023-07-19 09:06:04 +02:00
Franck Nijhof
f2bd122fde Clean up conversation agent attribution (#96883)
* Clean up conversation agent attribution

* Clean up google_generative_ai_conversation as well
2023-07-19 09:03:53 +02:00
Franck Nijhof
22d0f4ff0a Remove legacy discovery integration (#96856) 2023-07-19 07:10:07 +02:00
J. Nick Koston
b45369bb35 Bump flux_led to 1.0.0 (#96879) 2023-07-19 06:50:29 +02:00
J. Nick Koston
9b839041fa Bump aioesphomeapi to 15.1.11 (#96873) 2023-07-19 06:49:40 +02:00
Luke
1449df5649 bump python-Roborock to 0.30.1 (#96877)
bump to 0.30.1
2023-07-19 02:25:24 +02:00
Joakim Plate
22fbd22943 Add more complete test coverage to gardena bluetooth (#96874)
* Add tests for switch

* Add tests for number

* Add tests for 0 sensor

* Enable coverage for gardena bluetooth
2023-07-19 00:31:01 +02:00
Joakim Plate
0d69ba6797 Allow number to be zero in gardena bluetooth (#96872)
Allow number to be 0 in gardena
2023-07-18 23:43:11 +02:00
Franck Nijhof
727a72fbaa Remove mitemp_bt integration (#96869) 2023-07-18 23:19:03 +02:00
Björn Weitzel
4b2cbbe8c2 Use dispatcher helper to add new Fronius inverter entities (#96782)
Using dispatcher to add new entities for inverter
2023-07-18 23:18:02 +02:00
Franck Nijhof
4fefbf0408 Remove miflora integration (#96868) 2023-07-18 23:15:06 +02:00
Joost Lekkerkerker
fdb69efd67 Migrate Starline to entity name (#96176) 2023-07-18 22:47:58 +02:00
Joost Lekkerkerker
c853010f80 Add entity translations to islamic prayer times (#95469) 2023-07-18 22:28:04 +02:00
Michael
3c072e50c7 Remove duplicated available property from Picnic coordinator entities (#96861) 2023-07-18 22:09:19 +02:00
Joost Lekkerkerker
3681816a43 Add entity translations to Tesla Wall Connector (#96242) 2023-07-18 21:53:54 +02:00
Joost Lekkerkerker
c2d66cc14a Add entity translations to Tautulli (#96239) 2023-07-18 21:51:37 +02:00
Joost Lekkerkerker
2b3a379b8e Migrate spider to entity name (#96170) 2023-07-18 21:41:33 +02:00
Joost Lekkerkerker
a2495f494b Migrate Soma to entity naming (#96158) 2023-07-18 21:40:20 +02:00
Joost Lekkerkerker
6f880ec837 Use device class naming for SMS (#96156) 2023-07-18 21:39:28 +02:00
Joost Lekkerkerker
89ed630af9 Clean up Kraken const file (#95544) 2023-07-18 21:38:29 +02:00
Joost Lekkerkerker
fa59b7f8ac Add entity translations to Forecast Solar (#96476) 2023-07-18 21:32:38 +02:00
Simon Smith
46675560d2 Fix smoke alarm detection in tuya (#96475) 2023-07-18 21:18:58 +02:00
Michael
36b4b5b887 Remove duplicated available property from Shelly coordinator entities (#96859)
remove duplicated available property
2023-07-18 22:18:41 +03:00
Joost Lekkerkerker
e29598ecaa Add entity translations to Vallox (#96495) 2023-07-18 21:07:45 +02:00
Joost Lekkerkerker
c94c7fae1b Add device info to ISS (#96469)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-18 20:57:41 +02:00
Joost Lekkerkerker
8675bc6554 Migrate Tradfri to has entity name (#96248) 2023-07-18 20:56:50 +02:00
Joost Lekkerkerker
1ceb536dfb Migrate MyStrom to has entity name (#96540) 2023-07-18 20:53:37 +02:00
Joost Lekkerkerker
0ff8371953 Migrate Ambiclimate to use has entity name (#96561) 2023-07-18 20:52:43 +02:00
Tom
499c7491af Plugwise prepare native_value_fn and companions for number (#93416)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Bouwe <bouwe.s.westerdijk@gmail.com>
Co-authored-by: Bouwe Westerdijk <11290930+bouwew@users.noreply.github.com>
2023-07-18 20:48:15 +02:00
Joost Lekkerkerker
344f349371 Migrate Agent DVR to has entity name (#96562) 2023-07-18 20:41:14 +02:00
Joost Lekkerkerker
6afa49a441 Migrate Crownstone to has entity name (#96566) 2023-07-18 20:39:37 +02:00
c0ffeeca7
ac06905b1c Rename life to lifetime in vesync (#96844) 2023-07-18 20:36:47 +02:00
Joost Lekkerkerker
0ca4da5592 Use device class for DLink (#96567) 2023-07-18 18:51:02 +02:00
Joost Lekkerkerker
cb1f365482 Add entity translations to NextCloud (#96544)
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2023-07-18 18:07:32 +02:00
c0ffeeca7
da5455c454 Rename 'life' to 'lifetime' in Brother (#96815) 2023-07-18 17:52:40 +02:00
Teesit E
701c8a3768 Add Tuya Soil sensor (#96819)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-07-18 17:51:18 +02:00
Marc Mueller
4e9ce235e8 Update construct to 2.10.68 (#96843) 2023-07-18 17:50:31 +02:00
c0ffeeca7
c989e56d3c Rename life to lifetime: wemo (#96845) 2023-07-18 17:50:02 +02:00
Joost Lekkerkerker
1422a4f8c6 Clean up entity descriptions in Tuya (#96847) 2023-07-18 17:41:33 +02:00
Paul Bottein
d8c989f732 Make default theme selectable for set theme service (#96849) 2023-07-18 17:36:35 +02:00
J. Nick Koston
6bd4ace3c3 Fix ESPHome bluetooth client cancellation when the operation is cancelled externally (#96804) 2023-07-18 03:39:26 -10:00
Tim
9a8fe04907 Resolve bugs with Transport NSW (#96692)
* 2023.7.16
- Fix bug with values defaulting to "n/a" in stead of None

* 2023.7.16
- Set device class and state classes on entities

* 2023.7.16
- Set StateClass and DeviceClass directly on the entitiy

* 2023.7.16
- Fix black and ruff issues

* 2023.7.17
- Update logic catering for the 'n/a' response on an API failure
- Add testcase

* - Fix bug in formatting

* 2023.7.17
- Refacotr to consider the "n/a" response returned from the Python lib
on an error or faliure
- Remove setting of StateClass and DeviceClass as requested
- Add "n/a" test case

* 2023.7.17
- Remove unused imports

* 2023.7.18
- Apply review requested changes

* - Additional review change resolved
2023-07-18 15:12:43 +02:00
c0ffeeca7
67eeed6703 Rename homekit "Filter Life" sensor to "Filter lifetime" (#96821)
* String review: rename 'life' to 'lifetime'

- The term life, such as in 'filter life' can be ambiguous.
- Renamed to 'lifetime', as quite a few integrations use the term 'lifetime' to express this concept
- Improves consistency and should be easier to understand.

* HomeKit: adapt test case to reflect string change

* Fix test case failure caused by string rename: first step
2023-07-18 15:11:14 +02:00
Joost Lekkerkerker
0bdfb95d1d Add entity translations to Whois (#96824)
* Add entity translations to Whois

* Fix tests
2023-07-18 15:05:55 +02:00
Jan Bouwhuis
7c22225cd1 Allow ADR 0007 compliant schema for mqtt (#94305)
* Enforce listed entities in MQTT yaml config

* Add tests for setup with listed items

* Fix test

* Remove validator add comment

* Update homeassistant/components/mqtt/__init__.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-07-18 14:29:45 +02:00
Joost Lekkerkerker
f9a0877bb9 Change device classes for Airvisual Pro (#96474)
Change device classes
2023-07-18 14:20:30 +02:00
Andrew Sayre
4ae69787a2 Fix SmartThings Cover Set Position (for window shades) (#96612)
* Update smartthings dependencies

* Update cover to support window_shade_level
2023-07-18 14:13:31 +02:00
Joost Lekkerkerker
1ace9ab82e Make Spotify accept user playlist uris (#96820)
* Make Spotify accept user platlist uris

* Fix feedback

* Fix feedback
2023-07-18 14:08:18 +02:00
Joost Lekkerkerker
8dc5f73789 Migrate Yolink to has entity name (#96839)
* Migrate Yolink to has entity name

* Add sensor
2023-07-18 13:58:42 +02:00
Joost Lekkerkerker
8a9f117bdc Add entity translations to zeversolar (#96838)
* Add entity translations to zeversolar

* Remove current power
2023-07-18 13:40:06 +02:00
Joost Lekkerkerker
d46a72e5ab Migrate Zerproc to has entity naming (#96837) 2023-07-18 13:39:40 +02:00
Erik Montnemery
5c54fa1ce1 Fix shell_command timeout test (#96834)
* Fix shell_command timeout test

* Improve test
2023-07-18 13:37:27 +02:00
Erik Montnemery
2a18d0a764 Do not include stack trace when shell_command service times out (#96833) 2023-07-18 13:37:17 +02:00
Marc Mueller
9a2a920fd4 Update pycocotools to 2.0.6 (#96831) 2023-07-18 13:07:16 +02:00
Joost Lekkerkerker
c253549e68 Migrate Songpal to has entity name (#96753) 2023-07-18 12:38:17 +02:00
c0ffeeca7
faa67a40c4 Rename 'life' to 'lifetime' in trådfri (#96818)
String review: rename 'life' to 'lifetime'

- The term life, such as in 'filter life' can be ambiguous.
- Renamed to 'lifetime', as quite a few integrations use the term 'lifetime' to express this concept
- Improves consistency and should be easier to understand.
2023-07-18 12:24:02 +02:00
Joost Lekkerkerker
5f0e5b7e0c Migrate Volumio to has entity naming (#96822) 2023-07-18 12:17:41 +02:00
Franck Nijhof
b9f92b526b Add prefix support to text selector (#96830) 2023-07-18 12:17:31 +02:00
Erik Montnemery
4ceba01ab7 Prevent creating scripts which override script services (#96828) 2023-07-18 12:10:40 +02:00
Joost Lekkerkerker
8b5bdf9e2f Add entity translations to Whirlpool (#96823) 2023-07-18 12:09:22 +02:00
Franck Nijhof
1a9e27cdaf Allow integrations to register custom config panels (#96245) 2023-07-18 11:35:44 +02:00
Joost Lekkerkerker
a69b5a8d3b Add support for restricted playback devices in Spotify (#96794)
* Add support for restricted devices

* Add support for restricted devices
2023-07-18 11:15:41 +02:00
Joost Lekkerkerker
772fb463b5 Migrate Wilight to has entity name (#96825)
Migrate Wilight to has entity naming
2023-07-18 11:07:26 +02:00
Joost Lekkerkerker
d361caf6c4 Add entity translations to Yalexs BLE (#96827) 2023-07-18 11:04:24 +02:00
Jan Bouwhuis
0134ee9305 Fix incorrect leagacy code tweak for MQTT (#96812)
Cleanup mqtt_data_updated_config
2023-07-18 10:50:34 +02:00
c0ffeeca7
aa13082ce0 Rename 'life' to 'lifetime' in Xiaomi Miio (#96817)
String review: rename 'life' to 'lifetime'

- The term life, such as in 'filter life' can be ambiguous.
- Renamed to 'lifetime', as quite a few integrations use the term 'lifetime' to express this concept
- Improves consistency and should be easier to understand.
2023-07-18 10:13:33 +02:00
Joost Lekkerkerker
5d096a657f Migrate Brunt to has entity name (#96565) 2023-07-18 09:59:32 +02:00
Joost Lekkerkerker
65db77dd8a Migrate Dynalite to has entity name (#96569) 2023-07-18 09:58:42 +02:00
Joost Lekkerkerker
1097bde71b Migrate AndroidTV to has entity name (#96572) 2023-07-18 09:56:57 +02:00
Joost Lekkerkerker
69bcba7ef5 Migrate frontier silicon to has entity name (#96571) 2023-07-18 09:56:11 +02:00
Joost Lekkerkerker
2bbce7ad22 Migrate Senz to has entity name (#96752) 2023-07-18 09:55:26 +02:00
Joost Lekkerkerker
5cea0bb3de Migrate Soundtouch to has entity name (#96754) 2023-07-18 09:54:50 +02:00
c0ffeeca7
43842e243d Rename 'life' to 'lifetime' in Tuya (#96813) 2023-07-18 09:54:07 +02:00
Joost Lekkerkerker
9b29cbd71c Migrate Home plus control to has entity name (#96596) 2023-07-18 09:44:47 +02:00
Joost Lekkerkerker
8d048c4cfa Migrate geofency to has entity name (#96592) 2023-07-18 09:43:29 +02:00
J. Nick Koston
bc6a41fb94 Remove deprecated state.get_changed_since (#96579) 2023-07-18 09:42:48 +02:00
Joost Lekkerkerker
4dd7611c83 Make Version integration title translatable (#96586) 2023-07-18 09:42:07 +02:00
J. Nick Koston
fca40be5df Small cleanups to expand_entity_ids (#96585) 2023-07-18 09:41:37 +02:00
Joost Lekkerkerker
7d4016d7bf Migrate gpslogger to has entity name (#96594) 2023-07-18 09:37:38 +02:00
Erik Montnemery
57352578ff Use entity registry id in zwave_js device actions (#96407) 2023-07-18 09:36:40 +02:00
J. Nick Koston
c5b20ca91b Bump yalexs-ble to 2.2.1 (#96808) 2023-07-18 09:29:42 +02:00
Joost Lekkerkerker
c154c2b060 Add entity translations to Transmission (#96761) 2023-07-18 09:17:28 +02:00
Joakim Plate
878429fdec Add binary sensor for valve connectivity for gardena bluetooth (#96810)
* Add binary_sensor to gardena

* Add tests for binary_sensor
2023-07-18 09:00:25 +02:00
Joost Lekkerkerker
2c949d56dc Migrate Traccar to has entity naming (#96760) 2023-07-18 08:56:15 +02:00
Marc Mueller
9e67bccb89 Replace EventType annotations with Event (#96426) 2023-07-18 08:51:06 +02:00
Marc Mueller
4bf23fac6f Update PyYAML to 6.0.1 (#96800) 2023-07-18 08:50:15 +02:00
J. Nick Koston
ca2863a1b9 Bump aiohomekit to 2.6.8 (#96805) 2023-07-18 08:29:27 +02:00
Joakim Plate
a9f7522857 Correct tests for gardena (#96806) 2023-07-17 19:22:48 -10:00
J. Nick Koston
eb60dc65ec Bump aioesphomeapi to 15.1.9 (#96791) 2023-07-17 15:35:37 -10:00
tronikos
771b5e34b7 Bump androidtvremote2 to 0.0.12 (#96796)
Bump androidtvremote2==0.0.12
2023-07-18 01:42:31 +02:00
Mike Keesey
44aa531a51 Alexa temperature adjustment handle multiple setpoint (#95821)
* Alexa temperature adjustment handle multiple setpoint

In "auto" mode with many thermostats, the thermostats expose both an
upper and lower setpoint representing a range of temperatures. When a
temperature delta is sent from Alexa (e.g. "lower by 2 degrees), we need
to handle the case where the temperature property is not set, but
instead the upper and lower setpoint properties are set. In this case,
we adjust those properties via service call instead of the singular
value.

* Updating tests to fix coverage
2023-07-18 01:12:15 +02:00
Marc Mueller
564e618d0c Drop upper constraint for pip (#96738) 2023-07-18 00:37:02 +02:00
Michael Hansen
8cccfcc946 Bump wyoming to 1.1 (#96778) 2023-07-17 15:58:05 -05:00
Erik Montnemery
c79fa87a7f Fix check for HA Yellow radio in otbr config flow (#96789) 2023-07-17 22:21:52 +02:00
Erik Montnemery
49a27bb9a7 Fix otbr test (#96788) 2023-07-17 22:12:59 +02:00
Erik Montnemery
863b36c0c3 Include addon name in otbr config entry title (#96786) 2023-07-17 21:26:15 +02:00
Erik Montnemery
8559af8232 Remove extra otbr config entries (#96785) 2023-07-17 21:23:20 +02:00
Erik Montnemery
1e3fdcc4d1 Prevent otbr creating multiple config entries (#96783) 2023-07-17 21:22:50 +02:00
Joakim Plate
d02bf837a6 Add some basic tests for gardena (#96777) 2023-07-17 21:13:13 +02:00
Joakim Plate
d80b7d0145 Add base class to gardena bluetooth entities (#96775)
Add helper base class for gardena entities
2023-07-17 21:12:41 +02:00
Joakim Plate
36cb3f7278 Protect entities for availability in gardena bluetooth (#96776)
Protect entities for availability
2023-07-17 21:12:24 +02:00
Maciej Bieniek
31dfa5561a Add external power sensor for Shelly Plus HT (#96768)
* Add external power sensor for Plus HT

* Tests
2023-07-17 22:07:24 +03:00
J. Nick Koston
aa87f0ad54 Switch homekit_controller to use subscriber lookups (#96739) 2023-07-17 06:32:38 -10:00
Jan Bouwhuis
a4d4eb3871 Remove support for mqtt climate option CONF_POWER_STATE_TOPIC and template (#96771)
Remove support CONF_POWER_STATE_TOPIC and template
2023-07-17 17:56:39 +02:00
Joost Lekkerkerker
e99b6b2a03 Migrate VeSync to has entity name (#96772)
* Migrate VeSync to has entity name

* Fix tests
2023-07-17 17:52:53 +02:00
Joost Lekkerkerker
560e0cc7e0 Migrate VLC Telnet to has entity naming (#96774)
* Migrate VLC Telnet to has entity naming

* Remove unused variable
2023-07-17 17:47:47 +02:00
J. Nick Koston
70c88a125c Reduce attribute lookups in update state_attributes (#96511) 2023-07-17 17:47:36 +02:00
Joost Lekkerkerker
7ccb06ed22 Add entity translations to Twentemilieu (#96762) 2023-07-17 17:26:13 +02:00
Joost Lekkerkerker
005e45edcc Migrate OwnTracks to has entity name (#96743)
* Migrate OwnTracks to has entity name

* Fix test

* Fix tests
2023-07-17 14:55:34 +02:00
Joost Lekkerkerker
8937884e33 Add entity translations to MotionEye (#96740)
* Add entity translations to MotionEye

* Fix name

* Explicit device name
2023-07-17 14:54:38 +02:00
Joost Lekkerkerker
34f1b2b71d Add entity translations to radiotherm (#96745) 2023-07-17 14:54:26 +02:00
Joost Lekkerkerker
98e166f795 Fix device name for OwnTracks (#96759) 2023-07-17 14:49:35 +02:00
Joost Lekkerkerker
e76254a50f Migrate Plum Lightpad to has entity name (#96744) 2023-07-17 14:42:58 +02:00
Joost Lekkerkerker
b0dd05a411 Add entity translations to philips js (#96747)
* Add entity translations to philips js

* Remove name
2023-07-17 13:12:50 +02:00
Joost Lekkerkerker
73bbfc7a2d Add base entity to philips js (#96756)
* Create superclass for philips js

* Move device info creation to coordinator
2023-07-17 13:05:58 +02:00
Joost Lekkerkerker
57361a738e Use explicit device name for Stookalert (#96755) 2023-07-17 12:58:51 +02:00
Joost Lekkerkerker
dc8267b05a Migrate NuHeat to has entity name (#96742) 2023-07-17 12:09:43 +02:00
Joost Lekkerkerker
5a951c390b Add entity translations to mutesync (#96741) 2023-07-17 12:07:43 +02:00
b-uwe
56bc708b28 Remove the virtual integration for ultraloq (#96355) 2023-07-17 11:49:42 +02:00
Marc Mueller
4a6247f922 Update pygtfs to 0.1.9 (#96682) 2023-07-17 10:20:57 +02:00
Björn
e29b6408f6 Periodically re-scan for Fronius inverters that were offline while setup (#96538) 2023-07-17 10:16:28 +02:00
Jan Bouwhuis
65ebb6a74f Improve imap error handling for config entry (#96724)
* Improve error handling config entry

* Removed CancelledError

* Add cleanup

* Do not call protected async_set_state()
2023-07-17 09:44:47 +02:00
J. Nick Koston
3a06659120 Speed up single entity/response service calls (#96729)
* Significantly speed up single entity/response service calls

Since the majority of service calls are single entity, we can
avoid creating tasks in this case. Since the multi-entity
service calls always check the result and raise, we can switch
the asyncio.wait to asyncio.gather

* Significantly speed up single entity/response service calls

Since the majority of service calls are single entity, we can
avoid creating tasks in this case. Since the multi-entity
service calls always check the result and raise, we can switch
the asyncio.wait to asyncio.gather

* revert

* cannot be inside pytest.raises

* one more

* Update homeassistant/helpers/service.py
2023-07-17 09:33:13 +02:00
Maximilian
c76fac0633 Bump pynina to 0.3.1 (#96693) 2023-07-17 09:27:01 +02:00
Raman Gupta
657fdb075a Bump pytomorrowio to 0.3.6 (#96628) 2023-07-17 09:25:47 +02:00
mattmccormack
2f8b88e6ef Add string "Quiet" to fan mode in climate component (#96584) 2023-07-17 09:25:01 +02:00
Joost Lekkerkerker
a8e92bfcb6 Fix typo for PM 1 (#96473) 2023-07-17 09:22:07 +02:00
Joost Lekkerkerker
9f71482f8c Migrate iAlarm to has entity name (#96700) 2023-07-17 09:16:23 +02:00
Blastoise186
e5ca20b4d0 Bump Cryptography from 41.0.1 to 41.0.2 (#96699)
Bump cryptography from 41.0.1 to 41.0.2

Bumps [cryptography](https://github.com/pyca/cryptography) from 41.0.1 to 41.0.2.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/41.0.1...41.0.2)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-17 09:15:33 +02:00
Joost Lekkerkerker
bd22cfc1d0 Use device class naming in keenteic ndms2 (#96701) 2023-07-17 09:14:02 +02:00
Joost Lekkerkerker
f0fb09c2be Migrate Kulersky to has entity name (#96702) 2023-07-17 09:12:07 +02:00
Joakim Plate
088d04fe0f Add sensor to gardena (#96691) 2023-07-17 09:11:23 +02:00
Joost Lekkerkerker
13ac8d00f9 Migrate Laundrify to has entity name (#96703) 2023-07-17 09:11:02 +02:00
Joost Lekkerkerker
13140830a0 Migrate Monoprice to has entity name (#96704) 2023-07-17 09:09:53 +02:00
c0ffeeca7
9496b651a8 Small tweaks to ZHA service strings (#96709) 2023-07-17 09:08:27 +02:00
Maciej Bieniek
f809b7284b Create Tractive battery charging sensor if charging_state is not None (#96713)
Check if charging_state is available
2023-07-17 09:04:43 +02:00
c0ffeeca7
3a043655b9 Vacuum services strings: rename 'base' to 'dock' for consistency (#96715) 2023-07-17 09:03:25 +02:00
Maciej Bieniek
79bcca2853 Add wellness sensors to Tractive integration (#96719)
* Add sleep sensors

* Add minutes rest sensor

* Add calories sensor

* Add state_class to entity descriptions
2023-07-17 09:02:42 +02:00
J. Nick Koston
085eebc903 Make async_set_state in ConfigEntry a protected method (#96727)
I added this in #77803 but I never designed it to be called
externally. External usage may break at any time because the
class is not designed for this. I should have made it protected
in the original PR but I did not think it would get called
externally (my mistake)
2023-07-17 08:58:12 +02:00
J. Nick Koston
260e00ffb4 Check the registry entry in sensor unit_of_measurement instead of unique_id (#96731)
The unit_of_measurement check was checking to see if the entity has
a unique_id instead of a registry entry. Its much cheaper to check
for the registry_entry than the unique id since some entity have
to construct it every time its read
2023-07-17 08:50:06 +02:00
J. Nick Koston
51a7df162c Avoid regenerating the mobile app schema every time a webhook is called (#96733)
Avoid regnerating the mobile app schema every time a webhook is called
2023-07-17 08:42:46 +02:00
J. Nick Koston
d242eaa375 Remove the ability to defer websocket message construction (#96734)
This was added in #71364 but all use cases of it were refactored
away so it can now be removed
2023-07-17 08:41:39 +02:00
Renier Moorcroft
d553a749a0 Ezviz image entity cleanup (#96548)
* Update image.py

* Inheratance format
2023-07-17 08:30:17 +02:00
Robert Hafner
33d2dd3797 Airvisual Pro Outside Station Support (#96618)
* Airvisual Pro Outside Station Support

* pr feedback

* formatting, language

* Update homeassistant/components/airvisual_pro/strings.json

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

* fix assertion on airvisual test

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-07-17 00:44:03 +02:00
J. Nick Koston
194d4e4f66 Guard type checking assertions in unifiprotect (#96721) 2023-07-16 12:11:35 -10:00
c0ffeeca7
1e9a5e48c3 Remove redundant phrase (#96716) 2023-07-16 17:02:37 -04:00
Joost Lekkerkerker
4523105dee Migrate DuneHD to has entity name (#96568) 2023-07-16 22:37:12 +02:00
Joost Lekkerkerker
c34194d8e0 Use device class naming for BraviaTV (#96564) 2023-07-16 22:34:40 +02:00
c0ffeeca7
79c6b773da IMAP service strings: Fix typo (#96711)
Fix typo
2023-07-16 21:19:04 +02:00
J. Nick Koston
f2556df7db Reduce unifiprotect update overhead (#96626) 2023-07-16 06:24:27 -10:00
J. Nick Koston
cde1903e8b Avoid multiple options and current_option lookups in select entites (#96630) 2023-07-16 06:22:36 -10:00
Joost Lekkerkerker
28540b0cb2 Migrate google assistant to has entity name (#96593)
* Migrate google assistant to has entity name

* Fix tests

* Add device name

* Update homeassistant/components/google_assistant/button.py

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

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-07-16 17:39:27 +02:00
J. Nick Koston
7ec506907c Ensure async_get_system_info does not fail if supervisor is unavailable (#96492)
* Ensure async_get_system_info does not fail if supervisor is unavailable

fixes #96470

* fix i/o in the event loop

* fix tests

* handle some more failure cases

* more I/O here

* coverage

* coverage

* Update homeassistant/helpers/system_info.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* remove supervisor detection fallback

* Update tests/helpers/test_system_info.py

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-07-16 11:10:07 -04:00
Joakim Plate
cd0e9839a0 Correct unit types in gardean bluetooth (#96683) 2023-07-16 13:31:23 +02:00
J. Nick Koston
4d3e24465c Bump bthome-ble to 3.0.0 (#96616) 2023-07-15 21:47:09 -10:00
Joost Lekkerkerker
63115a906d Migrate evil genius labs to has entity name (#96570) 2023-07-15 21:03:47 -04:00
Joost Lekkerkerker
b53df429fa Add entity translations for Mazda (#95729)
* Add entity translations for Mazda

* Use references
2023-07-15 21:03:29 -04:00
Joost Lekkerkerker
5d3039f21e Use device class naming for Switchbot (#96187) 2023-07-15 12:36:13 -10:00
J. Nick Koston
30e05ab85e Bump aioesphomeapi to 15.1.7 (#96615) 2023-07-15 12:31:35 -10:00
Marc Mueller
2f5c480f7f Update pip constraint to allow pip 23.2 (#96614) 2023-07-15 12:28:34 -10:00
Allen Porter
e91e32f071 Bump pyrainbird to 3.0.0 (#96610) 2023-07-15 14:11:14 -07:00
Dennis
edcae75812 Add UV Index and UV Health Concern sensors to tomorrow.io (#96534) 2023-07-15 14:58:40 -04:00
Joost Lekkerkerker
3b309cad99 Migrate Heos to has entity name (#96595) 2023-07-15 12:09:37 -05:00
J. Nick Koston
d65119bbb3 Avoid writing state in homekit_controller for unrelated aid/iids (#96583) 2023-07-15 06:38:42 -10:00
Allen Porter
cccf7bba9b Bump pyrainbird to 2.1.1 (#96601) 2023-07-15 09:02:59 -07:00
Aaron Collins
d35e5db984 Fix daikin missing key after migration (#96575)
Fix daikin migration
2023-07-15 14:17:02 +02:00
J. Nick Koston
62c5194bc8 Avoid compressing binary images on ingress (#96581) 2023-07-15 00:09:25 -10:00
Joost Lekkerkerker
a27e126c86 Migrate AppleTV to use has entity name (#96563)
* Migrate AppleTV to use has entity name

* Add comma
2023-07-15 03:31:56 +02:00
J. Nick Koston
38630f7898 Always try PullPoint with ONVIF (#96377) 2023-07-14 15:23:00 -10:00
J. Nick Koston
7da8e0295e Bump onvif-zeep-async to 3.1.12 (#96560) 2023-07-14 14:49:20 -10:00
J. Nick Koston
1c814b0ee3 Defer SSDP UPNP server start until the started event (#96555) 2023-07-14 14:28:29 -10:00
ollo69
c95e2c074c Add missing type hints for AndroidTV (#96554)
* Add missing type hints for AndroidTV

* Suggested change
2023-07-15 02:18:34 +02:00
J. Nick Koston
9775832d53 Remove unreachable code in the ESPHome fan platform (#96458) 2023-07-14 13:37:16 -10:00
Joost Lekkerkerker
81ce6e4797 Add entity translations to Sonos (#96167)
* Add entity translations to Sonos

* Add entity translations to Sonos

* Add entity translations to Sonos

* Add entity translations to Sonos
2023-07-15 00:36:26 +02:00
J. Nick Koston
b77de2abaf Handle empty strings for ESPHome UOMs (#96556) 2023-07-14 12:14:32 -10:00
Jan Bouwhuis
72458b6672 Add feature to turn off using IMAP-Push on an IMAP server (#96436)
* Add feature to enforce polling an IMAP server

* Add test

* Remove not needed string tweak

* Rename enforce_polling to enable_push

* Push enabled by default
2023-07-14 21:26:35 +02:00
Joost Lekkerkerker
bbc3d0d287 Improve Mullvad typing (#96545) 2023-07-14 21:24:41 +02:00
RenierM26
1e704c4abe Address Ezviz select entity late review (#96525)
* Ezviz Select Entity

* Update IR description
2023-07-14 19:27:41 +02:00
Joost Lekkerkerker
1b7632a673 Support MyStrom switch 120 (#96535) 2023-07-14 09:04:48 -04:00
Guido Schmitz
357af58c81 Bump devolo_plc_api to 1.3.2 (#96499) 2023-07-14 09:04:23 -04:00
Michael Hansen
afdded58ee Wyoming Piper 1.1 (#96490)
* Add voice/speaker options to Piper TTS

* Use description if available

* Fix tests

* Clean up if
2023-07-14 08:56:27 -04:00
Erik Montnemery
614f3c6a15 Move device info validation to device registry (#96465)
* Move device info validation to device registry

* Don't move DeviceInfo

* Fix type annotation

* Don't block adding device for unknown config entry

* Fix test

* Remove use of locals()

* Improve error message
2023-07-14 08:55:17 -04:00
Jan Bouwhuis
3b32dcb613 Revert translation reference for Tuya motion_sensitivity (#96536) 2023-07-14 12:28:19 +02:00
dependabot[bot]
e44c74f9eb Bump actions/setup-python from 4.6.1 to 4.7.0 (#96526) 2023-07-14 11:52:24 +02:00
J. Nick Koston
7a1f0a0b74 Remove unneeded str() in StrEnum backport (#96509) 2023-07-13 22:37:59 -10:00
RenierM26
3e429ae081 Add Ezviz last motion picture image entity (#94421)
* Initial commit

* Update camera.py

* ignore type mismatch on append.

* Use new image entity.

* coveragerc update

* Remove all changes to camera in this pull.

* Fix docstring.

* remove old "last_alarm_pic" sensor

* Update image entity

* bypass for content check error

* Fix last updated not sting object

* Remove redundant url change check.

* Remove debug string

* Check url change on coordinator data update.

* Add translation key for name.

* simplify update check

* Rebase EzvizLastMotion ImageEntity

* Change logging to debug.
2023-07-14 08:50:36 +02:00
J. Nick Koston
0e8c85c5fc Only lookup supported_features once in media_player capability_attributes (#96510) 2023-07-13 16:46:09 -10:00
J. Nick Koston
c44c7bba84 Simplify ESPHome bluetooth disconnected during operation wrapper (#96459) 2023-07-13 16:45:45 -10:00
tronikos
bbc420bc90 Bump opower to 0.0.14 (#96506) 2023-07-13 14:52:26 -10:00
J. Nick Koston
09237e4eff Remove unused code in ESPHome (#96503) 2023-07-13 13:38:15 -10:00
J. Nick Koston
d2991d3f5e Bump bond-async to 0.2.1 (#96504) 2023-07-13 13:20:24 -10:00
J. Nick Koston
c86b60bdf7 Bump bluetooth-data-tools to 1.6.0 (#96461) 2023-07-13 11:42:11 -10:00
Sebastian Lövdahl
bfd4446d2e Bump vallox-websocket-api to 3.3.0 (#96493) 2023-07-13 23:36:26 +02:00
Christopher Bailey
1865cd0805 Bump unifiprotect to 4.10.5 (#96486) 2023-07-13 09:30:55 -10:00
Oliver
da9624de2f Update denonavr to 0.11.3 (#96467) 2023-07-13 09:30:18 -10:00
Sebastian Lövdahl
3b80deb2b7 Fix Vallox fan entity naming (#96494) 2023-07-13 20:42:30 +02:00
Erik Montnemery
7539cf25be Don't require passing identifiers to DeviceRegistry.async_get_device (#96479)
* Require keyword arguments to DeviceRegistry.async_get_device

* Update tests

* Update tests

* Don't enforce keyword arguments
2023-07-13 13:39:25 -04:00
J. Nick Koston
5f46436057 Bump yalexs-ble to 2.2.0 (#96460) 2023-07-13 06:43:50 -10:00
Paulus Schoutsen
a141bc08e7 2023.7.2 (#96487) 2023-07-13 12:26:19 -04:00
Erik Montnemery
580fd92ef2 Correct knx device info (#96482) 2023-07-13 12:17:13 -04:00
Erik Montnemery
8440f14a08 Correct dlna_dmr device info (#96480) 2023-07-13 12:15:46 -04:00
Erik Montnemery
5b93017740 Correct huawei_lte device info (#96481) 2023-07-13 12:15:28 -04:00
Erik Montnemery
fbbdebee47 Correct unifi device info (#96483) 2023-07-13 12:14:31 -04:00
Mads Nedergaard
025ed3868d Rename CO2Signal to Electricity Maps (#96252)
* Changes names and links

* Changes link to documentation

* Updates generated integration name
2023-07-13 11:57:31 -04:00
Paulus Schoutsen
7859be6481 Add deduplicate translations script (#96384)
* Add deduplicate script

* Fix forecast_solar incorrect key with space

* Fix utf-8

* Do not create references to other arbitrary other integrations

* Add commented code to only allow applying to referencing integrations

* Tweak

* Bug fix

* Add command line arg for limit reference

* never suggest to update common keys

* Output of script

* Apply suggestions from code review

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>

---------

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2023-07-13 11:52:50 -04:00
Paulus Schoutsen
a982958143 Bumped version to 2023.7.2 2023-07-13 11:36:22 -04:00
J. Nick Koston
2822d98544 Ensure ESPHome dashboard connection recovers if its down when core starts (#96449) 2023-07-13 11:36:11 -04:00
J. Nick Koston
4f95039dfd Fix mixed case service schema registration (#96448) 2023-07-13 11:36:10 -04:00
Michael
658e87b6a5 Always add guest wifi qr code entity in AVM Fritz!Tools (#96435) 2023-07-13 11:36:09 -04:00
Joost Lekkerkerker
e6c8e0460f Add explicit device naming to Led BLE (#96421) 2023-07-13 11:36:06 -04:00
Franck Nijhof
c78628aa29 Update RestrictedPython to 6.1 (#96358) 2023-07-13 11:36:04 -04:00
Aaron Bach
3dc1ceed0b Fix extra verbiage in Ridwell rotating category sensor (#96345) 2023-07-13 11:36:03 -04:00
Joost Lekkerkerker
89e737facb Add has entity name to Blink (#96322) 2023-07-13 11:36:02 -04:00
J. Nick Koston
15ab483f61 Bump aiohomekit to 2.6.7 (#96291) 2023-07-13 11:36:01 -04:00
starkillerOG
0b3ff859e6 Bump reolink_aio to 0.7.3 (#96284) 2023-07-13 11:36:00 -04:00
puddly
bdcc9ec984 Fix ZHA serialization issue with warning devices (#96275)
* Bump ZHA dependencies

* Update unit tests to reduce mocks
2023-07-13 11:35:58 -04:00
Joost Lekkerkerker
382bfa24a8 Use explicit device naming for Escea (#96270) 2023-07-13 11:35:57 -04:00
Luke
6a54c18818 Bump Roborock to v0.30.0 (#96268)
bump to v0.30.0
2023-07-13 11:35:56 -04:00
J. Nick Koston
76ac7fa6a0 Fix race fetching ESPHome dashboard when there are no devices set up (#96196)
* Fix fetching ESPHome dashboard when there are no devices setup

fixes #96194

* coverage

* fix
2023-07-13 11:35:55 -04:00
Allen Porter
de1a367cff Enable retries on rainbird devices by loading model and version (#96190)
Update rainbird to load device model and version
2023-07-13 11:35:54 -04:00
Joost Lekkerkerker
e493cd642c Use explicit device name for Stookwijzer (#96184) 2023-07-13 11:35:52 -04:00
Ernst Klamer
c2a41fc21e Bump bthome to 2.12.1 (#96166) 2023-07-13 11:35:51 -04:00
G Johansson
ebc123c355 Fix implicitly using device name in Yale Smart Living (#96161)
Yale Smart Living device name
2023-07-13 11:35:50 -04:00
Robert Hillis
4874e13af8 Bump goalzero to 0.2.2 (#96121) 2023-07-13 11:35:49 -04:00
Jan Bouwhuis
9969f67508 Fix reference to translation reference in buienradar translations (#96119)
Do not  reference a reference
2023-07-13 11:35:47 -04:00
Joost Lekkerkerker
855962d729 Use explicit device name for Yalexs BLE (#96105) 2023-07-13 11:35:46 -04:00
Aaron Bach
98b8e27b08 Fix implicit device name for RainMachine update entity (#96094)
Fix implicit device name for RainMachine update entity
2023-07-13 11:35:45 -04:00
Franck Nijhof
b26e624b2b Fix implicit use of device name in Slimproto (#96081) 2023-07-13 11:35:44 -04:00
Joost Lekkerkerker
3c7ced21ad Use default MyStrom devicetype if not present (#96070)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-07-13 11:35:43 -04:00
Joost Lekkerkerker
eec05d4fc8 UPB explicit device name (#96042) 2023-07-13 11:35:41 -04:00
Barry Williams
32927e050f Remove openhome from discovery component (#96021) 2023-07-13 11:35:40 -04:00
Joost Lekkerkerker
c6b7a3d564 Use explicit device naming for Switchbot (#96011)
Use explicit entity naming for Switchbot
2023-07-13 11:35:39 -04:00
Jan Bouwhuis
6f5373fa6e Refactor async_get_hass to rely on threading.local instead of a ContextVar (#96005)
* Test for async_get_hass

* Add Fix
2023-07-13 11:35:38 -04:00
Joost Lekkerkerker
7bd9933092 Get MyStrom device state before checking support (#96004)
* Get device state before checking support

* Add full default device response to test

* Add test mocks

* Add test coverage
2023-07-13 11:35:37 -04:00
Eric Severance
52f60f1e48 Bump pywemo from 0.9.1 to 1.1.0 (#95951) 2023-07-13 11:35:36 -04:00
Aaron Collins
3667eb9400 Bump pydaikin 2.10.5 (#95656) 2023-07-13 11:35:34 -04:00
RenierM26
c54ceb2da2 ImageEntity split load_image_from_url (#96146)
* Initial commit

* fix async_load_image_from_url
2023-07-13 17:03:26 +02:00
Joost Lekkerkerker
b8bc958070 Use device class translations in airvisual pro (#96472) 2023-07-13 15:05:55 +02:00
Franck Nijhof
d025b97bb9 Migrate Z-Wave services to support translations (#96361)
* Migrate Z-Wave services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-07-13 09:49:05 +02:00
J. Nick Koston
bc9b763688 Improve performance of http auth logging (#96464)
Avoid the argument lookups when debug logging is not enabled
2023-07-13 09:44:27 +02:00
Joakim Plate
52c7ad130d Add number entity to gardena (#96430) 2023-07-13 06:34:28 +02:00
J. Nick Koston
ffe81a9716 Improve ESPHome update platform error reporting (#96455) 2023-07-12 16:46:29 -10:00
Ville Skyttä
127fbded18 Fix huawei_lte suspend_integration service URL description (#96450)
Copy-pasto from resume_integration.
2023-07-12 22:04:18 -04:00
Joost Lekkerkerker
b367c95c81 Add more common translations (#96429)
* Add common translations

* Add common translations

* Add common translations

* Add common translations

* Add common translations

* Add common translations

* Add common translations

* Add common translations
2023-07-12 22:00:05 -04:00
J. Nick Koston
08af42b00e Fix mixed case service schema registration (#96448) 2023-07-12 14:39:51 -10:00
J. Nick Koston
7009683226 Ensure ESPHome dashboard connection recovers if its down when core starts (#96449) 2023-07-12 14:37:28 -10:00
puddly
709d5241ec Include a warning when changing channels with multi-PAN (#96351)
* Inform users of the dangers of changing channels with multi-PAN

* Update homeassistant/components/homeassistant_hardware/strings.json

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Remove double spaces

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 18:52:17 -04:00
Michael
400c513209 Always add guest wifi qr code entity in AVM Fritz!Tools (#96435) 2023-07-12 20:54:48 +02:00
Franck Nijhof
e95c4f7e65 Migrate zha services to support translations (#96418)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 20:49:36 +02:00
Franck Nijhof
a96ee22afa Migrate notify services to support translations (#96413)
* Migrate notify services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 14:37:45 -04:00
Franck Nijhof
273e80cc45 Migrate text services to support translations (#96397)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 20:24:21 +02:00
Franck Nijhof
11cd7692a1 Migrate group services to support translations (#96369)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-07-12 19:58:08 +02:00
Franck Nijhof
728a5ff99b Migrate system_log services to support translations (#96398) 2023-07-12 18:56:08 +02:00
Franck Nijhof
021aaa9994 Migrate tts services to support translations (#96412)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 18:55:34 +02:00
Franck Nijhof
7021daf9fb Migrate select services to support translations (#96411)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 18:55:22 +02:00
J. Nick Koston
c67a1a326f Improve chances of recovering stuck down bluetooth adapters (#96382) 2023-07-12 06:39:32 -10:00
RenierM26
899adfa74c Add Ezviz select entity (#93625)
* Initial commit

* Add select entity

* coveragerc

* Cleanup

* Commit suggestions.

* Raise issue before try except

* Add translation key

* Update camera.py

* Update camera.py

* Disable old sensor by default instead of removing.

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* IR fix flow

* Fix conflict

* run black

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-07-12 18:33:56 +02:00
Franck Nijhof
5792301cf1 Migrate lock services to support translations (#96416)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 18:16:30 +02:00
Franck Nijhof
80eb4747ff Migrate remote services to support translations (#96410)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 18:06:31 +02:00
Franck Nijhof
06adace7ca Migrate vacuum services to support translations (#96417)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 18:06:16 +02:00
Franck Nijhof
848221a1d7 Migrate humidifier services to support translations (#96327)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 18:05:51 +02:00
Franck Nijhof
d3eda12af4 Migrate recorder services to support translations (#96409)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 17:28:05 +02:00
Franck Nijhof
d6771e6f8a Migrate input helpers services to support translations (#96392)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 17:12:22 +02:00
Franck Nijhof
b39660df3b Migrate lovelace services to support translations (#96340)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 17:04:22 +02:00
Franck Nijhof
c5cd7e5897 Migrate update services to support translations (#96395)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 16:59:45 +02:00
Paul Bottein
e513b7d0eb Add condition selector for blueprint (#96350)
* Add condition selector for blueprint

* Add tests and validation

* Update comment
2023-07-12 10:58:35 -04:00
J. Nick Koston
80b24b23d3 Fix ESPHome deep sleep devices staying unavailable after unexpected disconnect (#96354)
backport of #96353
2023-07-12 10:57:17 -04:00
Joost Lekkerkerker
e8c2921852 Add explicit device naming to Led BLE (#96421) 2023-07-12 16:40:03 +02:00
Franck Nijhof
6c40004061 Migrate integration services (I-K) to support translations (#96373)
* Migrate integration services (I-K) to support translations

* Apply suggestions from code review

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

* Update homeassistant/components/kodi/strings.json

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-07-12 10:38:47 -04:00
Franck Nijhof
d0b7a47768 Migrate mqtt services to support translations (#96396)
* Migrate mqtt services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 10:37:59 -04:00
Franck Nijhof
dc2406ae09 Migrate alarm control panel services to support translations (#96305)
* Migrate alarm control panel services to support translations

* String references

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 10:37:30 -04:00
Franck Nijhof
594d240a96 Migrate & fix logger services to support translations (#96393)
* Migrate logger services to support translations

* Fix tests and schema validation

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 10:37:18 -04:00
Franck Nijhof
18cc56ae96 Migrate media player services to support translations (#96408)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 16:25:43 +02:00
Franck Nijhof
7ca539fcd0 Migrate persistent notification services to support translations (#96391)
* Migrate persistent notification services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 16:11:28 +02:00
Franck Nijhof
2d474813c0 Migrate siren services to support translations (#96400)
* Migrate siren services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 16:11:01 +02:00
Franck Nijhof
c236d17343 Migrate cover services to support translations (#96315)
* Migrate cover services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 16:10:32 +02:00
Joakim Plate
f7ce9b1688 Add support for gardena bluetooth (#95179)
Add support for gardena bluetooth based water computers.
2023-07-12 16:08:15 +02:00
Franck Nijhof
6c44783927 Migrate Matter services to support translations (#96406) 2023-07-12 15:36:57 +02:00
Franck Nijhof
878ed7cf21 Migrate intent_script services to support translations (#96394)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 15:30:36 +02:00
Franck Nijhof
cccf436326 Migrate LaMetric services to support translations (#96415) 2023-07-12 15:14:10 +02:00
Franck Nijhof
c3871cc5ae Migrate template services to support translations (#96414) 2023-07-12 14:06:14 +02:00
Franck Nijhof
352ca0b7f8 Migrate fan services to support translations (#96325)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 13:54:06 +02:00
Franck Nijhof
aca91db8b5 Migrate water_heater services to support translations (#96389)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 13:49:51 +02:00
Franck Nijhof
9ef62c7599 Migrate scene services to support translations (#96390)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 13:49:32 +02:00
Franck Nijhof
22b23b2c34 Migrate hassio services to support translations (#96386)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 13:47:58 +02:00
Franck Nijhof
ce5246a8cd Migrate homeassistant services to support translations (#96388)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 13:47:47 +02:00
Franck Nijhof
6a1cd628aa Migrate script services to support translations (#96401) 2023-07-12 13:45:38 +02:00
Franck Nijhof
cbddade4bf Migrate logbook services to support translations (#96341)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 13:44:15 +02:00
Franck Nijhof
0ca8a26184 Migrate datetime services to support translations (#96318)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 13:42:53 +02:00
Franck Nijhof
c6a9c6c948 Migrate date services to support translations (#96317) 2023-07-12 13:42:29 +02:00
Franck Nijhof
d0258c8fc8 Migrate switch services to support translations (#96405) 2023-07-12 12:53:24 +02:00
Franck Nijhof
eb3b56798d Migrate conversation services to support translations (#96365)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 12:32:25 +02:00
Franck Nijhof
7bc90297d2 Migrate integration services (G-H) to support translations (#96372) 2023-07-12 12:31:26 +02:00
Franck Nijhof
a3a2e6cc8d Migrate time services to support translations (#96402) 2023-07-12 12:23:39 +02:00
ollo69
ce3c23cb3a Add Nut commands to diagnostics data (#96285)
* Add Nut commands to diagnostics data

* Add test for diagnostics
2023-07-12 10:56:08 +02:00
Franck Nijhof
4edec69637 Migrate integration services (T-V) to support translations (#96379) 2023-07-12 07:37:13 +02:00
Franck Nijhof
8d360611d1 Migrate integration services (W-Z) to support translations (#96381) 2023-07-12 07:36:51 +02:00
J. Nick Koston
78a8f90488 Add additional tplink kasa OUI (#96383)
Found on another test device
2023-07-12 03:20:41 +02:00
Franck Nijhof
62fe4957c9 Migrate integration services (Q-S) to support translations (#96378) 2023-07-12 01:18:22 +02:00
Franck Nijhof
c6b36b6db4 Update RestrictedPython to 6.1 (#96358) 2023-07-12 01:08:31 +02:00
Franck Nijhof
ea28bd3c9c Update pre-commit to 3.3.3 (#96359) 2023-07-12 00:34:45 +02:00
Franck Nijhof
90d839724c Migrate integration services (N-P) to support translations (#96376) 2023-07-12 00:33:37 +02:00
Franck Nijhof
0329378f2f Migrate integration services (L-M) to support translations (#96374) 2023-07-12 00:24:16 +02:00
Franck Nijhof
ea3be7a789 Migrate integration services (E-F) to support translations (#96367) 2023-07-11 23:57:29 +02:00
Franck Nijhof
e4af293428 Migrate cloud services to support translations (#96319)
* Migrate cloud services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-11 23:21:00 +02:00
Franck Nijhof
f3b0c56c8c Migrate calendar services to support translations (#96310)
* Migrate camera services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-11 23:20:40 +02:00
Franck Nijhof
7d6148a295 Migrate button services to support translations (#96309) 2023-07-11 23:20:07 +02:00
Franck Nijhof
b1e4bae3f0 Migrate image_processing services to support translations (#96328)
* Migrate image_processing services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-11 23:19:50 +02:00
Franck Nijhof
7468320860 Migrate device_tracker services to support translations (#96320)
* Migrate device_tracker services to support translations

* Tweaks

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-11 23:19:29 +02:00
Franck Nijhof
bde7d734b5 Migrate automation services to support translations (#96306)
* Migrate automation services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-11 23:17:54 +02:00
Franck Nijhof
2330af82a5 Migrate climate services to support translations (#96314)
* Migrate climate services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-11 23:17:09 +02:00
J. Nick Koston
5d5c58338f Fix ESPHome deep sleep devices staying unavailable after unexpected disconnect (#96353) 2023-07-11 11:12:24 -10:00
Franck Nijhof
c252758ac2 Migrate integration services (B-D) to support translations (#96363) 2023-07-11 23:06:32 +02:00
Franck Nijhof
0ff015c3ad Migrate integration services (A) to support translations (#96362) 2023-07-11 23:04:27 +02:00
Franck Nijhof
aea2fc68e7 Migrate backup services to support translations (#96308)
* Migrate backup services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-11 22:00:00 +02:00
Franck Nijhof
76e3272432 Migrate camera services to support translations (#96313)
* Migrate camera services to support translations

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Update homeassistant/components/camera/strings.json

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-11 21:59:08 +02:00
Franck Nijhof
91273481a8 Migrate number services to support translations (#96343) 2023-07-11 21:52:25 +02:00
starkillerOG
bc9b9048f0 Add Reolink sensor platform (#96323)
* Add Reolink sensor platform

* fix styling

* Add state class

* Add Event connection sensor

* Update homeassistant/components/reolink/sensor.py

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

* Use translation keys

* fix json

* fix json 2

* fix json 3

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-07-11 21:36:44 +02:00
Franck Nijhof
c431fc2297 Migrate reload only helper services to support translations (#96344) 2023-07-11 20:56:21 +02:00
Joost Lekkerkerker
77ebf8a8e5 Add entity translations to Juicenet (#95487) 2023-07-11 20:34:11 +02:00
Jan Bouwhuis
ad091479ea Cleanup unneeded MQTT vacuum feature check (#96312) 2023-07-11 20:32:33 +02:00
Franck Nijhof
05c194f36d Upgrade pylint-per-file-ignore to v1.2.1 (#96134) 2023-07-11 14:29:55 -04:00
Franck Nijhof
38823bae71 Update colorlog to 6.7.0 (#96131) 2023-07-11 14:29:09 -04:00
Joost Lekkerkerker
8b379254c3 Migrate Roomba to has entity name (#96085) 2023-07-11 14:27:31 -04:00
Joost Lekkerkerker
fe44827e3c Add entity translations to Rainforest eagle (#96031)
* Add entity translations to Rainforest eagle

* Add entity translations to Rainforest Eagle
2023-07-11 14:24:33 -04:00
Jan Bouwhuis
efcaad1179 Fix handling MQTT light brightness from zero rgb (#96286)
* Fix handling MQTT light brightness from zero rgb

* Fix log message
2023-07-11 14:22:12 -04:00
Joost Lekkerkerker
dfad1a920f Add entity translations to solarlog (#96157) 2023-07-11 20:19:51 +02:00
Joost Lekkerkerker
fe6402ef73 Use device class naming for sfr box (#96092) 2023-07-11 20:19:04 +02:00
Franck Nijhof
e9f76ed3d3 Update orjson to 3.9.2 (#96257) 2023-07-11 14:16:43 -04:00
Joost Lekkerkerker
a7edf0a608 Add entity translations to Ukraine Alarm (#96260)
* Add entity translations to Ukraine Alarm

* Add entity translations to Ukraine Alarm
2023-07-11 14:16:24 -04:00
Erik Montnemery
2257e7454a Remove unreferenced issues (#96264)
* Remove unreferenced issues

* Remove outdated tests
2023-07-11 14:15:16 -04:00
Joost Lekkerkerker
7d2559e6a5 Add has entity name to Blink (#96322) 2023-07-11 14:12:16 -04:00
J. Nick Koston
b106ca7983 Fix race fetching ESPHome dashboard when there are no devices set up (#96196)
* Fix fetching ESPHome dashboard when there are no devices setup

fixes #96194

* coverage

* fix
2023-07-11 14:11:51 -04:00
Joost Lekkerkerker
72f080bf8b Use explicit device naming for Escea (#96270) 2023-07-11 14:10:14 -04:00
puddly
b6e83be6f9 Fix ZHA serialization issue with warning devices (#96275)
* Bump ZHA dependencies

* Update unit tests to reduce mocks
2023-07-11 14:09:52 -04:00
Daniel Hjelseth Høyer
7e686db4be Tibber upgrade lib, improve reconnect issues (#96276)
Tibber upgrade lib, improve recoonect issues

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2023-07-11 14:09:20 -04:00
J. Nick Koston
85ed347ff3 Bump aioesphomeapi to 15.1.6 (#96297)
* Bump aioesphomeapi to 15.1.5

changelog: https://github.com/esphome/aioesphomeapi/compare/v15.1.4...v15.1.5

- reduce traffic
- improve error reporting

* 6
2023-07-11 14:08:01 -04:00
starkillerOG
a0e20c6c6b Bump reolink_aio to 0.7.3 (#96284) 2023-07-11 19:42:59 +02:00
Joost Lekkerkerker
a04aaf10a5 Use DeviceInfo object d-o (#96280) 2023-07-11 19:41:55 +02:00
Joost Lekkerkerker
2f6826dbe3 Use DeviceInfo object s-x (#96281)
* Use DeviceInfo object o-x

* Use DeviceInfo object
2023-07-11 13:40:15 -04:00
Franck Nijhof
f25d5a157a Fix service schema to allow for services without any fields/properties (#96346) 2023-07-11 19:33:07 +02:00
Jan Bouwhuis
50442c5688 Speedup tests command_line integration (#96349) 2023-07-11 18:31:32 +02:00
G Johansson
49b6c8ed6e Fix diagnostics Sensibo (#96336) 2023-07-11 18:24:40 +02:00
Aaron Bach
a226b90943 Fix extra verbiage in Ridwell rotating category sensor (#96345) 2023-07-11 18:21:05 +02:00
Erik Montnemery
c61c5a0443 Schedule VacuumEntity for removal in Home Assistant Core 2024.2 (#96236) 2023-07-11 18:20:00 +02:00
Michael
5a87186916 Improve integration startup in AVM Fritz!Tools (#96269) 2023-07-11 18:01:05 +02:00
Erik Montnemery
65bacdddd8 Remove removed_yaml from the spotify integeration (#96261)
* Add removed_yaml issue to the homeassistant integration

* Remove issue translation from spotify

* Remove unrelated change

* Remove async_setup from spotify
2023-07-11 17:33:49 +02:00
Luke
38aa62a990 Bump Roborock to v0.30.0 (#96268)
bump to v0.30.0
2023-07-11 17:32:06 +02:00
Erik Montnemery
916e7dd359 Fix a couple of typos (#96298) 2023-07-11 17:28:54 +02:00
Franck Nijhof
f2f9b20880 Fix hassfest services check (#96337) 2023-07-11 16:48:07 +02:00
Erik Montnemery
107f589a2e Remove some duplicated translations (#96300) 2023-07-11 16:38:18 +02:00
Franck Nijhof
f054de0ad5 Add support for service translations (#95984) 2023-07-11 15:52:12 +02:00
Jan Bouwhuis
f12f8bca03 Avoid CI fail in command_line tests (#96324)
* Avoid CI fail in command_line tests

* Speedup tests manual update
2023-07-11 15:27:31 +02:00
starkillerOG
d9f27400b7 Reolink add reboot button (#96311) 2023-07-11 14:10:32 +02:00
J. Nick Koston
d4089bbdbe Bump aiohomekit to 2.6.7 (#96291) 2023-07-11 13:29:05 +02:00
Erik Montnemery
f46188c85a Improve the docstring of some config schema generators (#96296) 2023-07-11 11:34:16 +02:00
Jan Bouwhuis
f3e55e96f4 Improve test coverage mqtt vacuum (#96288) 2023-07-11 10:16:00 +02:00
Jan Bouwhuis
beff19f93c Improve mqtt tag schema logging and avoid tests that use xfail (#95711)
Improve schema logging and tests
2023-07-11 10:12:31 +02:00
Jan Bouwhuis
30578d6236 Deprecate mqtt vacuum with legacy schema (#95836)
* Deprecate mqtt vacuum with legacy schema

* Consistent comments

* Correct comment

* Remove persistence option

* Adjust string, mention restart

* Update deprecation comment
2023-07-11 09:54:28 +02:00
Erik Montnemery
6aa2ede6c7 Correct issues raised when calling deprecated vacuum services (#96295) 2023-07-11 08:45:45 +02:00
Joost Lekkerkerker
aec0694823 Move tractive attribute to entity class (#96247)
Clean up tractive entities
2023-07-11 08:09:57 +02:00
David Knowles
d973e43b90 Move Hydrawise to a supported library (#96023) 2023-07-10 23:26:02 -05:00
Erik Montnemery
22357701f0 Add filters to media_player/services.yaml (#95862) 2023-07-10 20:21:28 +02:00
Erik Montnemery
7f666849c2 Add filters to siren/services.yaml (#95864) 2023-07-10 20:20:36 +02:00
Joost Lekkerkerker
b8369a5831 Add entity translations to trafikverket weatherstation (#96251) 2023-07-10 19:42:13 +02:00
Michael
cf999d9ba4 Bump fritzconection to 1.12.2 (#96265) 2023-07-10 17:19:26 +02:00
Paulus Schoutsen
eee8566694 Differentiate between device info types (#95641)
* Differentiate between device info types

* Update allowed fields

* Update homeassistant/helpers/entity_platform.py

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

* Split up message in 2 lines

* Use dict for device info types

* Extract device info function and test error checking

* Simplify parsing device info

* move checks around

* Simplify more

* Move error checking around

* Fix order

* fallback config entry title to domain

* Remove fallback for name to config entry domain

* Ensure mocked configuration URLs are strings

* one more test case

* Apply suggestions from code review

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-07-10 09:56:06 -04:00
Joost Lekkerkerker
af22a90b3a Make Zodiac integration title translatable (#95816) 2023-07-10 15:49:25 +02:00
Guido Schmitz
a3681774d6 Use snapshots in devolo Home Network sensor tests (#95104)
Use snapshots

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-07-10 15:49:08 +02:00
disforw
5f6ddedd67 Change explicit rounding to suggested_display_precision (#95773) 2023-07-10 15:46:56 +02:00
Erik Montnemery
907c667859 Remove unreferenced issues (#96262) 2023-07-10 15:40:59 +02:00
J. Nick Koston
039a3bb6e9 Only load the device entry when it changes in the base entity (#95801) 2023-07-10 15:17:35 +02:00
Erik Montnemery
3cc66c8318 Add filters to remote/services.yaml (#95863) 2023-07-10 15:14:41 +02:00
Erik Montnemery
3dcf65bf31 Add filters to vacuum/services.yaml (#95865) 2023-07-10 15:14:08 +02:00
Erik Montnemery
39208a3749 Remove unsupported vacuum service handlers (#95787)
* Prevent implementing unsupported vacuum service handlers

* Remove unsupported service handlers

* Update test
2023-07-10 15:03:40 +02:00
Erik Montnemery
df229e655b Correct flags for issue registry issue raised by ezviz (#95846)
* Correct flags for issue registry issue raised by ezviz

* Fix translation strings
2023-07-10 14:17:37 +02:00
Joost Lekkerkerker
81dd3a4a93 Use explicit device name in trafikverket train (#96250) 2023-07-10 14:00:27 +02:00
Joost Lekkerkerker
b7980ec135 Add entity translations to trafikverket ferry (#96249) 2023-07-10 13:56:43 +02:00
Erik Montnemery
08a5f63474 Add deprecated_yaml issue to the homeassistant integration (#95980)
* Add deprecated_yaml issue to the homeassistant integration

* Update test

* Update homeassistant/components/homeassistant/strings.json

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Include DOMAIN in issue_id

* Update test

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-07-10 13:06:52 +02:00
Erik Montnemery
96c71b214f Check supported features in calls to vacuum services (#95833)
* Check supported features in vacuum services

* Update tests

* Add comment
2023-07-10 13:05:47 +02:00
J. Nick Koston
7dc03ef301 Use the ESPHome object_id to suggest the entity id (#95852) 2023-07-10 13:02:34 +02:00
Erik Montnemery
87f284c7e9 Add MEDIA_ANNOUNCE to MediaPlayerEntityFeature (#95906) 2023-07-10 12:58:53 +02:00
Jan Bouwhuis
7eb087a9d7 Use common string references for device_automation translations (#95897) 2023-07-10 12:56:51 +02:00
Joost Lekkerkerker
af03a284a5 Add entity translations to tailscale (#96237) 2023-07-10 12:50:56 +02:00
Franck Nijhof
7ca9f6757a Use fixed token for CodeCov uploads to deal with recent failures (#96133) 2023-07-10 12:42:55 +02:00
Franck Nijhof
e7b00da662 Clean up unused device class translations from binary sensor (#96241) 2023-07-10 12:23:42 +02:00
Allen Porter
bc2319bbe6 Update Nest Legacy removal strings (#96229) 2023-07-10 11:22:15 +02:00
J. Nick Koston
882529c0a0 Simplify FastUrlDispatcher resolve (#96234) 2023-07-10 11:13:27 +02:00
J. Nick Koston
fa6d659f2b Bump aioesphomeapi to 15.1.4 (#96227) 2023-07-10 11:11:08 +02:00
Franck Nijhof
303e549213 Update yamllint to 1.32.0 (#96109)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-07-10 10:13:48 +02:00
Franck Nijhof
e5ccd85e7e Fix missing name in Siren service descriptions (#96072) 2023-07-10 08:13:47 +02:00
Allen Porter
c4a39bbfb1 Remove Legacy Works With Nest (#96111)
* Remove Legacy Works With Nest

* Simplify nest configuration

* Cleanup legacy nest config entries
2023-07-09 19:38:05 -07:00
J. Nick Koston
1c54b2e025 Reduce system_log overhead (#96177) 2023-07-09 15:18:48 -10:00
J. Nick Koston
1aefbd8b86 Bump zeroconf to 0.71.0 (#96183) 2023-07-09 15:18:32 -10:00
Allen Porter
32b3fa1734 Enable retries on rainbird devices by loading model and version (#96190)
Update rainbird to load device model and version
2023-07-09 16:49:44 -07:00
J. Nick Koston
995fb993e6 Avoid probing ESPHome devices when we do not have the encryption key (#95820) 2023-07-09 12:57:04 -10:00
J. Nick Koston
e8397063d3 Optimize bluetooth base scanners for python3.11+ (#96165) 2023-07-09 12:56:33 -10:00
Chris Talkington
7390e3a997 Refactor IPP tests (#94097)
refactor ipp tests
2023-07-09 17:37:32 -05:00
Joost Lekkerkerker
ac594e6bce Add entity translations to Sonarr (#96159) 2023-07-09 15:58:23 -05:00
Chris Talkington
4a785fd2ad Update pyipp to 0.14.2 (#96218)
update pyipp to 0.14.2
2023-07-09 15:53:25 -05:00
G Johansson
0546e7601c Enhance diagnostics for Sensibo (#96150)
* Diag Sensibo

* Fix snapshot
2023-07-09 22:50:12 +02:00
Antoine Lépée
c720658c0f Enrich instructions to retreive Roomba password (#95902)
To setup Roomba 981 vacuum cleaner, user must press Home AND Spot buttons for about 2 seconds. Pressing only the Home button has no effect (it took me a while before figuring out).

Tested against Roomba 981 (may also be the case with all 900 series)
2023-07-09 22:49:08 +02:00
J. Nick Koston
bc28d7f33e Add slots to bluetooth manager (#95881) 2023-07-09 10:06:26 -10:00
Franck Nijhof
d64ebbdc84 Fix missing name in wilight service descriptions (#96073) 2023-07-09 21:51:33 +02:00
Joost Lekkerkerker
3f907dea80 Add entity translations to Starlink (#96181) 2023-07-09 21:43:18 +02:00
Matthias Alphart
89259865fb Restore KNX telegram history (#95800)
* Restore KNX telegram history

* increase default log size

* test removal of telegram history
2023-07-09 21:15:55 +02:00
Joost Lekkerkerker
8bbb395bec Add entity translations to Speedtest.net (#96168)
* Add entity translations to Speedtest.net

* Fix tests
2023-07-09 20:20:39 +02:00
Joost Lekkerkerker
0735b39fbb Use explicit device name for Stookwijzer (#96184) 2023-07-09 20:19:05 +02:00
Luke
ab3b0c9075 Add error sensor to Roborock (#96209)
add error sensor
2023-07-09 20:17:19 +02:00
Joost Lekkerkerker
9ef4b2e5f5 Migrate ring to entity name (#96080)
Migrate ring to has entity name
2023-07-09 13:55:10 -04:00
Franck Nijhof
cfe57f7e0c Update pytest-xdist to 3.3.1 (#96110) 2023-07-09 13:52:45 -04:00
J. Nick Koston
8bfe692eea Update tplink dhcp discovery (#96191)
* Update tplink dhcp discovery

- Found a KP device with 54AF97
- Found ES devices also use the same OUIs as EP

* from issue 95028
2023-07-09 17:36:46 +02:00
Franck Nijhof
18dddd6342 Update Ruff to v0.0.277 (#96108) 2023-07-09 10:10:23 -04:00
Matthias Alphart
479015244d KNX Cover: Use absolute tilt position if available (#96192) 2023-07-09 12:00:51 +02:00
J. Nick Koston
6758292655 Add bthome logbook platform (#96171) 2023-07-08 21:42:48 -10:00
Ernst Klamer
18314b09f6 Bump bthome to 2.12.1 (#96166) 2023-07-08 09:23:25 -10:00
G Johansson
2ebc265184 Bump pysensibo to 1.0.31 (#96154) 2023-07-08 09:23:11 -10:00
Patrick ZAJDA
c27a014a0a Use device name for Nuki door sensor (#95904)
Explicitly set Nuki door sensor name to None

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>
2023-07-08 21:13:32 +02:00
dougiteixeira
4b1d096e6b Add device_class and state_class in config flow for SQL (#95020)
* Add device_class and state_class in config flow for SQL

* Update when selected NONE_SENTINEL

* Add tests

* Use SensorDeviceClass and SensorStateClass in tests

* Add volatile_organic_compounds_parts in strings selector

* Add test_attributes_from_entry_config

* Remove test_attributes_from_entry_config and complement test_device_state_class

* Add test_attributes_from_entry_config in test_sensor.py
2023-07-08 21:00:22 +02:00
Arkadii Yakovets
b2bf360297 Update holidays to 0.28 (#95091)
Bump Python Holidays version to 0.28

Set `language` from country's default language
for holidays objects.
2023-07-08 20:27:25 +02:00
G Johansson
2f5ff808a0 Add dim to full state service for Sensibo (#96152)
Add dim to full state service
2023-07-08 20:03:19 +02:00
G Johansson
d37ac5ace9 Fix implicitly using device name in Yale Smart Living (#96161)
Yale Smart Living device name
2023-07-08 20:03:02 +02:00
Joost Lekkerkerker
7f6309c5cb Add entity translations to SkyBell (#96096)
* Add entity translations to SkyBell

* Add entity translations to SkyBell
2023-07-08 19:55:10 +02:00
Franck Nijhof
88d9a29b55 Update Pillow to 10.0.0 (#96106) 2023-07-08 07:30:54 -10:00
Joost Lekkerkerker
92693d5fde Add entity translations to Slack (#96149) 2023-07-08 18:36:24 +02:00
Joost Lekkerkerker
2c9910d9b6 Use default MyStrom devicetype if not present (#96070)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-07-08 17:10:51 +02:00
Joost Lekkerkerker
598610e313 Add entity translations to Sensibo (#96091) 2023-07-08 16:50:46 +02:00
Franck Nijhof
de211de598 Update lxml to 4.9.3 (#96132) 2023-07-08 16:49:17 +02:00
Marc Mueller
5bf1547ebc Update pydantic to 1.10.11 (#96137) 2023-07-08 14:00:51 +02:00
J. Nick Koston
e39f023e3f Refactor ESPHome camera to avoid creating tasks (#95818) 2023-07-08 12:36:40 +02:00
Erik Montnemery
3d064b7d6b Add filters to cover/services.yaml (#95854) 2023-07-08 11:51:02 +02:00
Erik Montnemery
b5678a12ec Add filters to lock/services.yaml (#95860) 2023-07-08 11:50:13 +02:00
Erik Montnemery
602ca5dafe Add filters to humidifier/services.yaml (#95859) 2023-07-08 11:49:38 +02:00
Erik Montnemery
39c386e8b6 Add filters to fan/services.yaml (#95855) 2023-07-08 11:49:09 +02:00
Jan-Philipp Benecke
6f9a640fa3 Make workday integration title translatable (#95803) 2023-07-08 11:48:15 +02:00
Erik Montnemery
b8af7fbd55 Update template vacuum supported features (#95831) 2023-07-08 11:47:49 +02:00
Jan-Philipp Benecke
207721b421 Make generic camera integration title translatable (#95806) 2023-07-08 11:43:14 +02:00
Erik Montnemery
32b7370321 Add filters to alarm_control_panel/services.yaml (#95850) 2023-07-08 11:42:27 +02:00
Álvaro Fernández Rojas
1eb2ddf010 Update aioairzone-cloud to v0.2.1 (#96063) 2023-07-08 11:41:39 +02:00
Joost Lekkerkerker
e0274ec854 Use device class naming for nobo hub v2 (#96022) 2023-07-08 11:39:53 +02:00
Erik Montnemery
6dae3553f2 Add MEDIA_ENQUEUE to MediaPlayerEntityFeature (#95905) 2023-07-08 10:55:25 +02:00
J. Nick Koston
2b4f6ffcd6 Speed up hassio ingress (#95777) 2023-07-08 10:50:39 +02:00
Joost Lekkerkerker
bbf97fdf01 Add entity translations for plugwise (#95808) 2023-07-08 10:48:14 +02:00
Scott Giminiani
f4ad261f51 Use global CONF_API_TOKEN constant rather than defining our own (#96120) 2023-07-08 10:46:34 +02:00
Eric Severance
abdbea8522 Bump pywemo from 0.9.1 to 1.1.0 (#95951) 2023-07-08 09:26:19 +02:00
J. Nick Koston
51344d566e Small speed up to cameras (#96124) 2023-07-08 09:23:45 +02:00
J. Nick Koston
e38f55fdb6 Move ESPHomeManager into its own file (#95870)
* Move ESPHomeManager into its own file

This is not a functional change. This is only a reorganization
ahead of some more test coverage being added so moving tests
around can be avoided later.

* relos

* fixes

* merge a portion of new cover since its small and allows us to remove the __init__ from .coveragerc
2023-07-08 09:19:44 +02:00
Franck Nijhof
967c4d13d8 Update pipdeptree to 2.9.4 (#96115) 2023-07-08 09:17:58 +02:00
Franck Nijhof
7178e1cefe Update apprise to 1.4.5 (#96086) 2023-07-08 08:59:34 +02:00
c0ffeeca7
5d1b4f48e0 Rename 'Switch as X' helper to ... (#96114) 2023-07-08 08:59:26 +02:00
Robert Hillis
8bfac2c46c Correct Goalzero sensor state class (#96122) 2023-07-08 08:52:15 +02:00
Franck Nijhof
a6fe53f2b3 Fix missing name in Fritz!Box service descriptions (#96076) 2023-07-08 08:50:47 +02:00
Robert Hillis
c2ccd18528 Bump goalzero to 0.2.2 (#96121) 2023-07-07 21:40:18 -04:00
Joost Lekkerkerker
a0d54e8f4e Use device class naming for SimpliSafe (#96093) 2023-07-07 17:42:19 -06:00
Jan Bouwhuis
7f184e05e3 Fix reference to translation reference in buienradar translations (#96119)
Do not  reference a reference
2023-07-08 01:36:14 +02:00
Jan Bouwhuis
18ee9f4725 Refactor async_get_hass to rely on threading.local instead of a ContextVar (#96005)
* Test for async_get_hass

* Add Fix
2023-07-07 14:52:38 -04:00
Franck Nijhof
372687fe81 Update PyTurboJPEG to 1.7.1 (#96104) 2023-07-07 08:02:47 -10:00
Patrick ZAJDA
914fc570c6 Set some Switchbot entity names to none (#90846) 2023-07-07 19:38:43 +02:00
J. Nick Koston
f1db497efe Avoid http route linear search fallback when there are multiple paths (#95776) 2023-07-07 19:36:38 +02:00
Joost Lekkerkerker
17440c9608 Add entity translations to Rympro (#96087) 2023-07-07 19:24:52 +02:00
Joost Lekkerkerker
849aa5d9ef Use explicit device name for Yalexs BLE (#96105) 2023-07-07 19:15:41 +02:00
Erik Montnemery
1e4f43452c Warn when vacuum.turn_on or turn_off is called on Tuya vacuums (#95848)
Co-authored-by: Hmmbob <33529490+hmmbob@users.noreply.github.com>
2023-07-07 19:00:06 +02:00
Joost Lekkerkerker
daa9162ca7 Add entity translations to pvoutput (#96029) 2023-07-07 18:58:55 +02:00
Jan-Philipp Benecke
ac19de9857 Make season integration title translatable (#95802) 2023-07-07 18:30:00 +02:00
Joost Lekkerkerker
29d7535b7b Add entity translations to Rainmachine (#96033) 2023-07-07 18:27:44 +02:00
J. Nick Koston
6402e2c140 Bump aioesphomeapi to 15.1.3 (#95819) 2023-07-07 18:25:54 +02:00
Erik Montnemery
d1cfb6e1a8 Remove unreferenced issues (#95976) 2023-07-07 18:19:11 +02:00
Erik Montnemery
298ab05470 Add missing issue translations to the kitchen_sink integration (#95931) 2023-07-07 18:15:06 +02:00
Franck Nijhof
f2990d97b2 Update sentry-sdk to 1.27.1 (#96089) 2023-07-07 18:10:44 +02:00
Joost Lekkerkerker
0f63aaa05b Remove deprecated Pihole binary sensors (#95799) 2023-07-07 18:08:33 +02:00
Joost Lekkerkerker
7026ffe0a3 UPB explicit device name (#96042) 2023-07-07 11:25:58 -04:00
Aaron Bach
3fe180d55c Fix implicit device name for RainMachine update entity (#96094)
Fix implicit device name for RainMachine update entity
2023-07-07 11:25:23 -04:00
Joost Lekkerkerker
ddd0d3faa2 Get MyStrom device state before checking support (#96004)
* Get device state before checking support

* Add full default device response to test

* Add test mocks

* Add test coverage
2023-07-07 11:24:41 -04:00
Franck Nijhof
f205d50ac7 Fix missing name in FluxLED service descriptions (#96077) 2023-07-07 16:42:05 +02:00
Joost Lekkerkerker
fec40ec250 Add entity translations to Recollect waste (#96037) 2023-07-07 16:32:59 +02:00
Franck Nijhof
529846d3a2 Fix implicit use of device name in Slimproto (#96081) 2023-07-07 16:19:29 +02:00
Franck Nijhof
8138c85074 Fix missing name in TP-Link service descriptions (#96074) 2023-07-07 16:12:52 +02:00
Joost Lekkerkerker
c4c4b6c81b Add device class back to Purpleair (#96062) 2023-07-07 16:03:27 +02:00
Franck Nijhof
25b8593486 Fix missing name in Renault service descriptions (#96075) 2023-07-07 16:00:45 +02:00
Jan Stienstra
1aecbb9bd5 Add full test coverage to Jellyfin (#86974)
* Add full test coverage

* Remove unreachable exception

* Remove comment line. Conflicting with codecov

* Use auto fixture and syrupy
2023-07-07 08:42:02 -04:00
Joost Lekkerkerker
d202b7c3c7 Add entity translations to RDW (#96034) 2023-07-07 14:40:22 +02:00
Barry Williams
7d97152593 Remove openhome from discovery component (#96021) 2023-07-07 14:24:42 +02:00
Joost Lekkerkerker
70445c0edd Add RDW codeowner (#96035) 2023-07-07 14:13:01 +02:00
Erik Montnemery
86a397720f Move platform_integration_no_support issue to the homeassistant integration (#95927)
* Move platform_integration_no_support issue to the homeassistant integration

* Update test

* Improve repair text

* Update test
2023-07-07 13:31:54 +02:00
Joost Lekkerkerker
84979f8e92 Use device class naming in Renault (#96038) 2023-07-07 10:34:11 +02:00
Adrián Moreno
8c5df60cc3 Revert zwave_js change to THERMOSTAT_MODE_SETPOINT_MAP (#96058)
Remove THERMOSTAT_MODE_SETPOINT_MAP map

Signed-off-by: Adrian Moreno <adrian@morenomartinez.com>
2023-07-07 10:27:28 +02:00
Joost Lekkerkerker
4bf3720911 Add entity translations to RFXTRX (#96041) 2023-07-07 06:44:09 +02:00
Scott Giminiani
66a1e5c2c1 Remove copy/pasted references to GMail in YouTube integration tests (#96048)
These were likely used as an example when writing the tests for this
component and we missed renaming them.

A few unused vars with references to GMail were also removed.
2023-07-07 06:43:46 +02:00
Mike Woudenberg
ba1266a893 Add sensors to LOQED integration for battery percentage and BLE stength (#95726)
* Add sensors for battery percentage and BLE stength

* Use translatable name for BLE strength, no longer pass enity to sensor
2023-07-06 23:09:34 -04:00
Joost Lekkerkerker
d2bcb5fa87 Add entity translations to Rainbird (#96030)
* Add entity translations to Rainbird

* Add entity translations to Rainbird
2023-07-06 16:03:01 -07:00
Joost Lekkerkerker
63bf4b8099 Add entity translations to Purpleair (#95942)
* Add entity translations to Purpleair

* Add entity translations to Purpleair

* Change vocaqi sensor
2023-07-06 23:26:21 +02:00
lymanepp
6c4b5291e1 Add humidity to NWS forecast (#95575)
* Add humidity to NWS forecast to address https://github.com/home-assistant/core/issues/95572

* Use pynws 1.5.0 enhancements for probabilityOfPrecipitation, dewpoint, and relativeHumidity.

* Update requirements to match pynws version

* test for clear night

* update docstring

---------

Co-authored-by: MatthewFlamm <39341281+MatthewFlamm@users.noreply.github.com>
2023-07-06 23:05:46 +02:00
Joost Lekkerkerker
e94726ec84 Use explicit device naming for Switchbot (#96011)
Use explicit entity naming for Switchbot
2023-07-06 23:01:06 +02:00
Joost Lekkerkerker
99430ceb34 Add entity translations for PureEnergie (#95935)
* Add entity translations for PureEnergie

* Fix tests
2023-07-06 22:51:05 +02:00
Joost Lekkerkerker
d1e19c3a85 Add entity translations to Pushbullet (#95943) 2023-07-06 22:39:18 +02:00
Guillaume Duveau
23d5fb9622 Add more device info for SmartThings devices (#95723)
* Add more device info for SmartThings devices

* Fix binary_sensor test

* Fix binary sensor test, try 2

* Fix and add SmartsThings new device info tests
2023-07-06 14:26:46 -04:00
Paulus Schoutsen
816adce257 2023.7.1 (#96006) 2023-07-06 14:24:50 -04:00
Paulus Schoutsen
d18716e5f8 Disable test case for entity name (#96012) 2023-07-06 13:53:56 -04:00
Paulus Schoutsen
4096614ac0 Bumped version to 2023.7.1 2023-07-06 11:52:01 -04:00
Marcel van der Veldt
ef31608ce0 Fix state of slimproto players (#96000) 2023-07-06 11:51:46 -04:00
Bram Kragten
7408fa4ab6 Make script services always respond when asked (#95991)
* Make script services always respond when asked

* Update test_init.py
2023-07-06 11:51:45 -04:00
Jan-Philipp Benecke
10b97a77c6 Explicitly use device name as entity name for Xiaomi fan and humidifier (#95986) 2023-07-06 11:51:44 -04:00
Bram Kragten
3540c78fb9 Set correct response value in service description when async_set_service_schema is used (#95985)
* Mark scripts as response optional, make it always return a response if return_response is set

* Update test_init.py

* Revert "Update test_init.py"

This reverts commit 8e113e54db.

* Split + add test
2023-07-06 11:51:43 -04:00
Erik Montnemery
866e130967 Add missing qnap translation (#95969) 2023-07-06 11:51:42 -04:00
Allen Porter
d969b89a12 Bump pyrainbird to 2.1.0 (#95968) 2023-07-06 11:51:41 -04:00
micha91
bca5aae3bb Fix grouping feature for MusicCast (#95958)
check the current source for grouping using the source ID instead of the label
2023-07-06 11:51:40 -04:00
neocolis
7a21e858ab Fix matter exception NoneType in set_brightness for optional min/max level values (#95949)
Fix exception NoneType in set_brightness for optional min/max level values
2023-07-06 11:51:39 -04:00
Joost Lekkerkerker
224886eb29 Fix entity name for Flick Electric (#95947)
Fix entity name
2023-07-06 11:51:38 -04:00
Joost Lekkerkerker
95594a23dc Add explicit device naming for Tuya sensors (#95944) 2023-07-06 11:51:37 -04:00
Joost Lekkerkerker
4c10d186c0 Use device name for Nuki (#95941) 2023-07-06 11:51:35 -04:00
puddly
6275932c29 Migrate bracketed IP addresses in ZHA config entry (#95917)
* Automatically correct IP addresses surrounded by brackets

* Simplify regex

* Move pattern inline

* Maintain old behavior of stripping whitespace
2023-07-06 11:51:34 -04:00
J. Nick Koston
4229778cf6 Make SwitchBot no_devices_found message more helpful (#95916) 2023-07-06 11:51:33 -04:00
Bram Kragten
57369be322 Update frontend to 20230705.1 (#95913) 2023-07-06 11:51:32 -04:00
J. Nick Koston
3e19fba7d3 Handle integrations with empty services or failing to load during service description enumeration (#95911)
* wip

* tweaks

* tweaks

* add coverage

* complain loudly as we never execpt this to happen

* ensure not None

* comment it
2023-07-06 11:51:30 -04:00
Jan Bouwhuis
2196bd3a13 Fix not including device_name in friendly name if it is None (#95485)
* Omit device_name in friendly name if it is None

* Fix test
2023-07-06 11:51:29 -04:00
puddly
ecc0917e8f Migrate bracketed IP addresses in ZHA config entry (#95917)
* Automatically correct IP addresses surrounded by brackets

* Simplify regex

* Move pattern inline

* Maintain old behavior of stripping whitespace
2023-07-06 11:47:51 -04:00
micha91
59645344e7 Fix grouping feature for MusicCast (#95958)
check the current source for grouping using the source ID instead of the label
2023-07-06 11:20:20 -04:00
J. Nick Koston
b7b8afffd0 Handle integrations with empty services or failing to load during service description enumeration (#95911)
* wip

* tweaks

* tweaks

* add coverage

* complain loudly as we never execpt this to happen

* ensure not None

* comment it
2023-07-06 11:19:06 -04:00
Jan Bouwhuis
b9c7e7c15e Fix not including device_name in friendly name if it is None (#95485)
* Omit device_name in friendly name if it is None

* Fix test
2023-07-06 11:14:09 -04:00
Bram Kragten
5d9533fb90 Make script services always respond when asked (#95991)
* Make script services always respond when asked

* Update test_init.py
2023-07-06 10:48:03 -04:00
Marcel van der Veldt
2b0f2227fd Fix state of slimproto players (#96000) 2023-07-06 16:28:20 +02:00
Bram Kragten
342d07cb92 Set correct response value in service description when async_set_service_schema is used (#95985)
* Mark scripts as response optional, make it always return a response if return_response is set

* Update test_init.py

* Revert "Update test_init.py"

This reverts commit 8e113e54db.

* Split + add test
2023-07-06 10:24:34 -04:00
Joost Lekkerkerker
8015d4c7b4 Fix entity name for Flick Electric (#95947)
Fix entity name
2023-07-06 10:21:15 -04:00
Joost Lekkerkerker
45ae6b3475 Add explicit device naming for Tuya sensors (#95944) 2023-07-06 10:19:42 -04:00
Joost Lekkerkerker
966e89a60c Use device name for Nuki (#95941) 2023-07-06 10:17:59 -04:00
Philip Allgaier
991ff81e46 Mention automatic issue assignment in issue template (#95987)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-07-06 15:01:03 +02:00
neocolis
63cb50977b Fix matter exception NoneType in set_brightness for optional min/max level values (#95949)
Fix exception NoneType in set_brightness for optional min/max level values
2023-07-06 14:50:51 +02:00
Jan-Philipp Benecke
be01eb5aad Explicitly use device name as entity name for Xiaomi fan and humidifier (#95986) 2023-07-06 13:25:34 +02:00
Erik Montnemery
de24860c87 Add filters to calendar/services.yaml (#95853) 2023-07-06 11:13:43 +02:00
Allen Porter
85e4454d45 Bump pyrainbird to 2.1.0 (#95968) 2023-07-06 10:26:10 +02:00
Erik Montnemery
8a4085011d Add missing qnap translation (#95969) 2023-07-06 09:02:32 +02:00
Michael
af1cb7be58 Migrate from deprecated VacuumEntity to StateVacuumEntity in Ecovacs (#95920)
* migrate to StateVacuumEntity

* harmoize supported features start and stop

* apply suggestions
2023-07-06 08:49:59 +02:00
J. Nick Koston
cb7fa494a4 Make SwitchBot no_devices_found message more helpful (#95916) 2023-07-05 18:56:09 -05:00
Jan Bouwhuis
186295ef8a Correct spelling roborock strings (#95919) 2023-07-05 22:27:03 +02:00
Adrián Moreno
0e428f8d39 Deprecate Dry and Fan preset modes in favor of HVAC modes (#95634)
* zwave_js: deprecate Dry and Fan preset modes

Migrating Dry and Fan presets to HVAC modes

* Move consts. Set Dry and Fan as HVAC-first modes.

* Update homeassistant/components/zwave_js/climate.py

Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>

* Fix tests

* Keep track of HA release when deprecation was introduced

---------

Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>
2023-07-05 15:12:21 -04:00
J. Nick Koston
dc5ee71d7a Add slots to core EventBus (#95856) 2023-07-05 11:47:24 -05:00
Bram Kragten
20dc9203dd Update frontend to 20230705.1 (#95913) 2023-07-05 18:20:10 +02:00
Franck Nijhof
91ea14d9eb 2023.7.0 (#95908) 2023-07-05 17:20:03 +02:00
Jan Bouwhuis
d9721702af Address late review of freebox tests (#95910)
Use lower case for local variables
2023-07-05 16:59:10 +02:00
Erik Montnemery
c7f6d84058 Warn when changing multipan channel if there are not 2 known users (#95898)
* Warn when changing multipan channel if there are not 2 known users

* Add test

* Improve messages

* Tweak translation string

* Adjust message

* Remove unused translation placeholders
2023-07-05 16:51:28 +02:00
Franck Nijhof
b90df4bdca Bumped version to 2023.7.0 2023-07-05 16:06:09 +02:00
J. Nick Koston
ea57f78392 Add slots to the service registry (#95857) 2023-07-05 15:59:36 +02:00
Florent Thiery
bd7057f7b1 Add raid array degraded state binary sensor to freebox sensors (#95242)
Add raid array degraded state binary sensor
2023-07-05 15:09:12 +02:00
gigatexel
c75c79962a Clarify GPS coordinates for device_tracker.see (#95847) 2023-07-05 14:31:27 +02:00
J. Nick Koston
505f8fa363 Fix ESPHome camera not accepting the same exact image bytes (#95822) 2023-07-05 07:17:28 -05:00
Aaron Collins
f028d1a1ca Bump pydaikin 2.10.5 (#95656) 2023-07-05 07:12:18 -05:00
J. Nick Koston
b2e708834f Add slots to the StateMachine class (#95849) 2023-07-05 14:00:37 +02:00
Erik Montnemery
39dcb5a2b5 Adjust services and properties supported by roborock vacuum (#95789)
* Update supported features

* Raise issue when vacuum.start_pause is called
2023-07-05 12:53:07 +02:00
Franck Nijhof
025969a76f Bumped version to 2023.7.0b6 2023-07-05 09:57:56 +02:00
Bram Kragten
8ed7390a61 Update frontend to 20230705.0 (#95890) 2023-07-05 09:57:39 +02:00
Emilv2
36f6c02c52 Bump pydelijn to 1.1.0 (#95878) 2023-07-05 09:57:35 +02:00
Daniel Gangl
a709b6af4c Bump zamg to 0.2.4 (#95874)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-07-05 09:57:32 +02:00
J. Nick Koston
284926159b Fix ESPHome alarm_control_panel when state is missing (#95871) 2023-07-05 09:57:28 +02:00
J. Nick Koston
8e2c0984b7 Fix reload in cert_expiry (#95867) 2023-07-05 09:57:25 +02:00
Erik Montnemery
0bb0e3fe72 Remove unsupported services and fields from fan/services.yaml (#95858) 2023-07-05 09:57:22 +02:00
Franck Nijhof
c123c22846 Revert "Remove airplay filter now that apple tv supports airplay 2" (#95843) 2023-07-05 09:57:18 +02:00
Martin Hjelmare
577ffef25c Disable legacy device tracker no platform log (#95839) 2023-07-05 09:57:15 +02:00
Martin Hjelmare
10a9b063fa Disable proximity no platform log (#95838) 2023-07-05 09:57:12 +02:00
starkillerOG
e22b79dbd9 Reolink fix missing title_placeholders (#95827) 2023-07-05 09:57:08 +02:00
Robert Svensson
89c580f27d Bump aiounifi to v49 (#95813) 2023-07-05 09:57:05 +02:00
Allen Porter
239cbb7ad1 Fix timezones used in list events (#95804)
* Fix timezones used in list events

* Add additional tests that catch floating vs timezone datetime comparisons
2023-07-05 09:57:00 +02:00
Bram Kragten
85e8eee94e Update frontend to 20230705.0 (#95890) 2023-07-05 09:54:23 +02:00
J. Nick Koston
91f334ca59 Small cleanups to service calls (#95873) 2023-07-05 09:25:38 +02:00
J. Nick Koston
9109b5fead Bump protobuf to 4.23.3 (#95875) 2023-07-05 08:55:25 +02:00
Daniel Gangl
b7221bfe09 Bump zamg to 0.2.4 (#95874)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-07-05 08:50:30 +02:00
J. Nick Koston
1dfa2f3c6b Use slots in TraceElement (#95877) 2023-07-05 08:44:00 +02:00
J. Nick Koston
659281aab6 Fix ESPHome alarm_control_panel when state is missing (#95871) 2023-07-05 08:35:40 +02:00
Jan-Philipp Benecke
436cda1489 Make local calendar integration title translatable (#95805) 2023-07-04 23:35:32 -07:00
Emilv2
cfe6185c1c Bump pydelijn to 1.1.0 (#95878) 2023-07-05 08:35:02 +02:00
Allen Porter
26f2fabd85 Fix timezones used in list events (#95804)
* Fix timezones used in list events

* Add additional tests that catch floating vs timezone datetime comparisons
2023-07-05 08:25:03 +02:00
Álvaro Fernández Rojas
60e2ee86b2 Add Airzone Cloud Zone running binary sensor (#95606) 2023-07-04 14:29:14 -05:00
J. Nick Koston
ea160c2bad Fix reload in cert_expiry (#95867) 2023-07-04 12:13:52 -05:00
Erik Montnemery
c46495a731 Remove unsupported services and fields from fan/services.yaml (#95858) 2023-07-04 17:58:15 +02:00
Martin Hjelmare
02192ddf82 Set Matter battery sensors as diagnostic (#95794)
* Set matter battery sensor to diagnostic

* Update tests

* Use new eve contact sensor dump across the board

* Assert entity category

* Complete typing
2023-07-04 14:54:37 +02:00
Erik Montnemery
6964a2112a Revert "Remove unsupported services from tuya vacuum" (#95845)
Revert "Remove unsupported services from tuya vacuum (#95790)"

This reverts commit 5712d12c42.
2023-07-04 14:42:44 +02:00
Franck Nijhof
52d57efcbf Revert "Remove airplay filter now that apple tv supports airplay 2" (#95843) 2023-07-04 14:41:19 +02:00
Erik Montnemery
2ca648584d Update mqtt vacuum supported features (#95830)
* Update mqtt vacuum supported features

* Update test
2023-07-04 14:18:42 +02:00
Jan Bouwhuis
c26dc0940c Use common translations for On, Off, Open and Closed (#95779)
* Use common translations for On and Off

* Used common translations for open and closed

* Update homeassistant/components/sensibo/strings.json

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

* Only update state translations

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-07-04 13:52:01 +02:00
starkillerOG
b3e1a3f624 Reolink fix missing title_placeholders (#95827) 2023-07-04 13:40:22 +02:00
Martin Hjelmare
081e4e03a7 Disable legacy device tracker no platform log (#95839) 2023-07-04 13:26:48 +02:00
Erik Montnemery
c84dacf2fc Update tuya vacuum supported features (#95832) 2023-07-04 13:19:16 +02:00
Martin Hjelmare
91087392fe Disable proximity no platform log (#95838) 2023-07-04 12:52:04 +02:00
Erik Montnemery
8f2a21d270 Update sharkiq vacuum supported features (#95829) 2023-07-04 11:51:42 +02:00
Erik Montnemery
dc34d91da4 Update roomba vacuum supported features (#95828) 2023-07-04 11:03:40 +02:00
Erik Montnemery
10e9b9f813 Fix ring siren test (#95825) 2023-07-04 09:16:40 +02:00
Erik Montnemery
e0c77fba22 Fix siren.toggle service schema (#95770) 2023-07-04 08:48:16 +02:00
Joost Lekkerkerker
234ebdcb84 Add entity translations for P1 Monitor (#95811) 2023-07-04 08:39:24 +02:00
Robert Svensson
fe1430d04b Bump aiounifi to v49 (#95813) 2023-07-03 23:55:23 +02:00
Joost Lekkerkerker
04be7677a9 Add entity translations for Open UV (#95810) 2023-07-03 23:00:12 +02:00
Paulus Schoutsen
d8f8557ae1 Bumped version to 2023.7.0b5 2023-07-03 15:23:57 -04:00
Allen Porter
3df1e9bc99 Ensure that calendar output values are json types (#95797) 2023-07-03 15:23:49 -04:00
Bram Kragten
8db987e0b3 Update frontend to 20230703.0 (#95795) 2023-07-03 15:23:48 -04:00
Joost Lekkerkerker
d77a168121 Fix Growatt translation key (#95784) 2023-07-03 15:23:47 -04:00
Erik Montnemery
3550a9e2d2 Fix execute device actions with WS execute_script (#95783) 2023-07-03 15:23:46 -04:00
Franck Nijhof
0ce3b89139 Fix implicit use of device name in Verisure (#95781) 2023-07-03 15:23:45 -04:00
Franck Nijhof
3c0d234332 Fix implicit use of device name in TwenteMilieu (#95780) 2023-07-03 15:23:44 -04:00
Paul Bottein
601ca8562c Fix datetime parameter validation for list events (#95778) 2023-07-03 15:23:43 -04:00
Jan Bouwhuis
2720e2fade Fix translation growatt inverter temperature (#95775) 2023-07-03 15:23:42 -04:00
Marcel van der Veldt
d0e60f66fa Bump aioslimproto to 2.3.2 (#95754) 2023-07-03 15:23:41 -04:00
Mike Woudenberg
806b0cb1b6 Quality improvement on LOQED integration (#95725)
Remove generated translation
Raise error correctly
Remove obsolete consts
Remove callback, hass assignment and info log
Use name from LOQED API instead of default name
Correct entity name for assertion
2023-07-03 15:23:40 -04:00
Richard Kroegel
2e18641863 Bump bimmer_connected to 0.13.8 (#95660)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-07-03 15:23:39 -04:00
Michael Hansen
e4e5ecf9b4 Ensure trigger sentences do not contain punctuation (#95633)
* Ensure trigger sentences do not contain punctuation

* Update homeassistant/components/conversation/trigger.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-07-03 15:23:38 -04:00
Michael Davie
1e66aaff0d Bump env_canada to v0.5.35 (#95497)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-07-03 15:23:37 -04:00
hidaris
ebb28973e0 Add Matter Climate support (#95434)
* Add Matter Climate support

* update set target temp and update callback

* remove print

* remove optional property

* Adjust the code to improve readability.

* add thermostat test

* Remove irrelevant cases in setting the target temperature.

* add temp range support

* update hvac action

* support adjust low high setpoint..

* support set hvac mode

* address some review feedback

* move some methods around

* dont discover climate in switch platform

* set some default values

* fix some of the tests

* fix some typos

* Update thermostat.json

* Update homeassistant/components/matter/climate.py

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

* Update homeassistant/components/matter/climate.py

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

* support heat_cool in hvac_modes

* address some review feedback

* handle hvac mode param in set temp service

* check hvac modes by featuremap

* add comment to thermostat feature class

* make ruff happy..

* use enum to enhance readability.

* use builtin feature bitmap

* fix target temp range and address some feedback

* use instance attribute instead of class attr

* make ruff happy...

* address feedback about single case

* add init docstring

* more test

* fix typo in tests

* make ruff happy

* fix hvac modes test

* test case for update callback

* remove optional check

* more tests

* more tests

* update all attributes in the update callback

* Update climate.py

* fix missing test

---------

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-07-03 15:23:36 -04:00
Paul Bottein
4581c36648 Fix datetime parameter validation for list events (#95778) 2023-07-03 15:22:22 -04:00
Allen Porter
2f73be0e50 Ensure that calendar output values are json types (#95797) 2023-07-03 12:05:02 -07:00
Paulus Schoutsen
0f725a24bd Remove the weak ref for tracking update listeners (#95798) 2023-07-03 13:56:21 -05:00
J. Nick Koston
4d3662d4da Tune httpx keep alives for polling integrations (#95782)
* Tune keep alives for polling integrations

aiohttp closes the connection after 15s by default,
and httpx closes the connection after 5s by default.

We have a lot of integrations that poll every 10-60s
which create and tear down connections over and over.

Set the keep alive time to 65s to maximize connection
reuse and avoid tls negotiation overhead

* Apply suggestions from code review

* adjust
2023-07-03 14:21:59 -04:00
Erik Montnemery
78880f0c9d Fix execute device actions with WS execute_script (#95783) 2023-07-03 14:21:01 -04:00
J. Nick Koston
3f9d5a0192 Use the converter factory in sensor.recorder._normalize_states (#95785)
We have a factory to create converters now which avoids
the overhead of calling convert to create the converter
every time
2023-07-03 14:20:23 -04:00
J. Nick Koston
73f90035bb Bump aioesphomeapi to 15.1.2 (#95792)
changelog: https://github.com/esphome/aioesphomeapi/compare/v15.1.1...v15.1.2

intentionally not tagged for beta to give it more time in dev
since we are near the end of the beta cycle
2023-07-03 14:19:41 -04:00
Bram Kragten
aed0c39bc8 Update frontend to 20230703.0 (#95795) 2023-07-03 14:17:24 -04:00
Erik Montnemery
5f9da06e49 Fix flaky websocket_api test (#95786) 2023-07-03 11:53:21 -05:00
Erik Montnemery
5712d12c42 Remove unsupported services from tuya vacuum (#95790) 2023-07-03 18:37:18 +02:00
Joost Lekkerkerker
27e4bca1b3 Fix Growatt translation key (#95784) 2023-07-03 18:36:37 +02:00
Joost Lekkerkerker
f0eb084908 Add entity translations to Notion (#95755)
* Add entity translations to Notion

* Use device class translations

* Use device class translations
2023-07-03 18:31:07 +02:00
Marc Mueller
0a165bb35a Improve opower generic typing (#95758) 2023-07-03 17:43:52 +02:00
Franck Nijhof
430a1bcb3d Fix implicit use of device name in Verisure (#95781) 2023-07-03 17:38:54 +02:00
Franck Nijhof
3fa1e12152 Fix implicit use of device name in TwenteMilieu (#95780) 2023-07-03 17:38:03 +02:00
Jan Bouwhuis
e5eb5dace5 Fix translation growatt inverter temperature (#95775) 2023-07-03 16:41:51 +02:00
tronikos
4e7d8b579a Address Opower review comments (#95763)
* Address comments

* Apply suggestions from code review

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

* Update sensor.py

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-07-03 14:53:44 +02:00
tronikos
bd6f70c236 Bump opower to 0.0.12 (#95748) 2023-07-03 14:19:40 +02:00
Marcel van der Veldt
266522267a Bump aioslimproto to 2.3.2 (#95754) 2023-07-03 14:19:05 +02:00
Jan-Philipp Benecke
935242e64e Use device info object for Discovergy (#95764) 2023-07-03 14:04:17 +02:00
Joost Lekkerkerker
8062a0a3bd Use device info object for Nuki (#95757) 2023-07-03 14:03:24 +02:00
Joost Lekkerkerker
78cc11ebc4 Use device class naming for Nuki (#95756) 2023-07-03 14:02:49 +02:00
Joost Lekkerkerker
4ee7ea3cba Use DeviceInfo object for Nobo hub (#95753) 2023-07-03 14:01:58 +02:00
hidaris
3bd8955e0e Add Matter Climate support (#95434)
* Add Matter Climate support

* update set target temp and update callback

* remove print

* remove optional property

* Adjust the code to improve readability.

* add thermostat test

* Remove irrelevant cases in setting the target temperature.

* add temp range support

* update hvac action

* support adjust low high setpoint..

* support set hvac mode

* address some review feedback

* move some methods around

* dont discover climate in switch platform

* set some default values

* fix some of the tests

* fix some typos

* Update thermostat.json

* Update homeassistant/components/matter/climate.py

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

* Update homeassistant/components/matter/climate.py

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

* support heat_cool in hvac_modes

* address some review feedback

* handle hvac mode param in set temp service

* check hvac modes by featuremap

* add comment to thermostat feature class

* make ruff happy..

* use enum to enhance readability.

* use builtin feature bitmap

* fix target temp range and address some feedback

* use instance attribute instead of class attr

* make ruff happy...

* address feedback about single case

* add init docstring

* more test

* fix typo in tests

* make ruff happy

* fix hvac modes test

* test case for update callback

* remove optional check

* more tests

* more tests

* update all attributes in the update callback

* Update climate.py

* fix missing test

---------

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-07-03 12:33:50 +02:00
Michael Davie
367acd0433 Bump env_canada to v0.5.35 (#95497)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-07-03 11:23:32 +02:00
Raman Gupta
de7677b28d Small zwave_js code cleanup (#95745) 2023-07-03 09:30:53 +02:00
Richard Kroegel
cdea33d191 Bump bimmer_connected to 0.13.8 (#95660)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-07-03 09:12:17 +02:00
J. Nick Koston
2b66480894 Speed up routing URLs (#95721)
alternative to #95717
2023-07-02 23:00:33 -04:00
Paulus Schoutsen
c260e787aa Bumped version to 2023.7.0b4 2023-07-02 22:50:36 -04:00
J. Nick Koston
fdd8489b93 Handle invalid utf-8 from the ESPHome dashboard (#95743)
If the yaml file has invalid utf-8, the config flow would raise an
unhandled exception. Allow the encryption key to be entered manually
in this case instead of a hard failure

fixes #92772
2023-07-02 22:50:32 -04:00
J. Nick Koston
a77fb14baf Bump python-kasa to 0.5.2 (#95716) 2023-07-02 22:50:31 -04:00
J. Nick Koston
98242b5d54 Bump zeroconf to 0.70.0 (#95714) 2023-07-02 22:50:30 -04:00
Maciej Bieniek
d38aab1607 Fix Shelly button unique_id migration (#95707)
Fix button unique_id migration
2023-07-02 22:50:29 -04:00
Aaron Bach
910aecb33b Fix implicit device name for SimpliSafe locks (#95681) 2023-07-02 22:50:28 -04:00
J. Nick Koston
ca20663c31 Handle missing or incorrect device name and unique id for ESPHome during manual add (#95678)
* Handle incorrect or missing device name for ESPHome noise encryption

If we did not have the device name during setup we could never
get the key from the dashboard. The device will send us
its name if we try encryption which allows us to find the
right key from the dashboard.

This should help get users unstuck when they change the key
and cannot get the device back online after deleting and
trying to set it up again manually

* bump lib to get name

* tweak

* reduce number of connections

* less connections when we know we will fail

* coverage shows it works but it does not

* add more coverage

* fix test

* bump again
2023-07-02 22:50:27 -04:00
Brandon Rothweiler
327a54e65a Upgrade pymazda to 0.3.9 (#95655) 2023-07-02 22:50:26 -04:00
Richard Kroegel
e907585b7f Add bmw connected drive region-specific scan interval (#95649)
Add region-specific scan interval

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-07-02 22:50:25 -04:00
dougiteixeira
3fa009b98c Fix source device when source entity is changed for Utility Meter (#95636)
* Fix source device when source entity is changed

* Update loop

* Complement and add comments in the test_change_device_source test

* Only clean up dev reg when options change

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-07-02 22:50:24 -04:00
Mick Vleeshouwer
226f1d7c73 Fix missing EntityDescription names in Overkiz (#95583)
* Fix labels

* Update homeassistant/components/overkiz/entity.py

* Check if description.name is string

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-07-02 22:50:23 -04:00
J. Nick Koston
7bdd64a3f7 Handle invalid utf-8 from the ESPHome dashboard (#95743)
If the yaml file has invalid utf-8, the config flow would raise an
unhandled exception. Allow the encryption key to be entered manually
in this case instead of a hard failure

fixes #92772
2023-07-02 22:47:25 -04:00
dougiteixeira
75bdb03363 Fix source device when source entity is changed for Utility Meter (#95636)
* Fix source device when source entity is changed

* Update loop

* Complement and add comments in the test_change_device_source test

* Only clean up dev reg when options change

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-07-02 22:46:21 -04:00
Joost Lekkerkerker
7fdbc7b75d Clean up solarlog const file (#95542)
Move platform specifics to their own file
2023-07-02 22:43:14 -04:00
Allen Porter
7d6595f755 Delete the local calendar store when removing the config entry (#95599)
* Delete calendar store when removing the config entry

* Unlink file on remove with tests
2023-07-02 22:42:39 -04:00
Joost Lekkerkerker
792525b7a2 Add entity translations for Meater (#95732)
* Add entity translations for Meater

* Update homeassistant/components/meater/sensor.py

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-07-02 22:41:46 -04:00
Joost Lekkerkerker
4551954c85 Add entity translations to LaCrosse View (#95686) 2023-07-02 21:56:37 -04:00
J. Nick Koston
b24c6adc75 Avoid regex for negative zero check in sensor (#95691)
* Avoid regex for negative zero check in sensor

We can avoid calling the regex for every sensor value
since most of the time values are not negative zero

* tweak

* tweak

* Apply suggestions from code review

* simpler

* cover

* safer and still fast

* safer and still fast

* prep for py3.11

* fix check

* add missing cover

* more coverage

* coverage

* coverage
2023-07-02 21:53:50 -04:00
Mike Woudenberg
ab50069918 Quality improvement on LOQED integration (#95725)
Remove generated translation
Raise error correctly
Remove obsolete consts
Remove callback, hass assignment and info log
Use name from LOQED API instead of default name
Correct entity name for assertion
2023-07-02 21:52:52 -04:00
Joost Lekkerkerker
33bc1f01a4 Add entity translations for lifx (#95727) 2023-07-02 21:42:02 -04:00
Joost Lekkerkerker
b2611b595e Use DeviceInfo object for Meater (#95733)
Use DeviceInfo object
2023-07-02 21:36:53 -04:00
Joost Lekkerkerker
259455b32d Add entity translations to melnor (#95734) 2023-07-02 21:36:27 -04:00
Joost Lekkerkerker
4a5a8cdc29 Add entity translations to minecraft server (#95737) 2023-07-02 21:34:58 -04:00
Joost Lekkerkerker
4ff158a105 Remove NAM translations handled by device class (#95740)
Remove translations handled by device class
2023-07-02 21:32:32 -04:00
tronikos
caaeb28cbb Add Opower integration for getting electricity/gas usage and cost for many utilities (#90489)
* Create Opower integration

* fix tests

* Update config_flow.py

* Update coordinator.py

* Update sensor.py

* Update sensor.py

* Update coordinator.py

* Bump opower==0.0.4

* Ignore errors for "recent" PGE accounts

* Add type for forecasts

* Bump opower to 0.0.5

* Bump opower to 0.0.6

* Bump opower to 0.0.7

* Update requirements_all.txt

* Update requirements_test_all.txt

* Update coordinator

Fix exception caused by https://github.com/home-assistant/core/pull/92095
{} is dict but the function expects a set so change it to set()

* Improve exceptions handling

* Bump opower==0.0.9

* Bump opower to 0.0.10

* Bump opower to 0.0.11

* fix issue when integration hasn't run for 30 days

use last stat time instead of now when fetching recent usage/cost

* Allow username to be changed in reauth

* Don't allow changing  username in reauth flow
2023-07-02 21:26:31 -04:00
Joost Lekkerkerker
1ead95f5ea Use device class naming for Nest (#95742) 2023-07-02 18:10:29 -07:00
J. Nick Koston
0ff3836083 Use a normal tuple for the EventBus jobs (#95731) 2023-07-02 16:35:57 -05:00
Aaron Bach
c1b8e4a3e5 Add mold risk sensor to Notion (#95643)
Add mold detection sensor to Notion
2023-07-02 12:13:18 -06:00
Joost Lekkerkerker
2807b6cabc Add entity translations to kaleidescape (#95625) 2023-07-02 19:35:05 +02:00
J. Nick Koston
2aff138b92 Small improvements to websocket api performance (#95693) 2023-07-02 12:33:25 -05:00
Joost Lekkerkerker
65f67669d2 Use device info object in LaCrosse View (#95687)
Use device info object
2023-07-02 19:27:29 +02:00
Joost Lekkerkerker
23a16666c0 Remove obsolete entity name from Lametric (#95688)
Remove obsolete name
2023-07-02 19:25:39 +02:00
J. Nick Koston
953bd60296 Bump zeroconf to 0.70.0 (#95714) 2023-07-02 12:23:41 -05:00
J. Nick Koston
99badceecc Bump python-kasa to 0.5.2 (#95716) 2023-07-02 12:09:20 -05:00
Denis Shulyaka
7026ea643e Add action attribute to generic hygrostat (#95675)
* add action attribute to generic hygrostat

* Simplified initialization
2023-07-02 17:51:11 +02:00
Jan Bouwhuis
b314e2b1a1 Fix songpal test_setup_failed test (#95712) 2023-07-02 16:32:43 +02:00
Paulus Schoutsen
86912d2409 Met Eireann: fix device info (#95683) 2023-07-02 10:31:30 -04:00
J. Nick Koston
f0cb03e631 Handle missing or incorrect device name and unique id for ESPHome during manual add (#95678)
* Handle incorrect or missing device name for ESPHome noise encryption

If we did not have the device name during setup we could never
get the key from the dashboard. The device will send us
its name if we try encryption which allows us to find the
right key from the dashboard.

This should help get users unstuck when they change the key
and cannot get the device back online after deleting and
trying to set it up again manually

* bump lib to get name

* tweak

* reduce number of connections

* less connections when we know we will fail

* coverage shows it works but it does not

* add more coverage

* fix test

* bump again
2023-07-02 10:29:45 -04:00
Maciej Bieniek
79a122e1e5 Fix Shelly button unique_id migration (#95707)
Fix button unique_id migration
2023-07-02 16:28:41 +03:00
Brandon Rothweiler
33cd44ddb7 Upgrade pymazda to 0.3.9 (#95655) 2023-07-02 16:28:18 +03:00
Paulus Schoutsen
e4f617e92e Update log message when referenced entity not found (#95577)
* Update log message when referenced entity not found

* Update homeassistant/helpers/service.py

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

* Update test

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-07-02 00:04:03 +02:00
Aaron Bach
cac6dc0eae Fix implicit device name for SimpliSafe locks (#95681) 2023-07-01 18:53:47 +02:00
ollo69
8108a0f947 Add Bridge module to AsusWRT (#84152)
* Add Bridge module to AsusWRT

* Requested changes

* Requested changes

* Requested changes

* Add check on router attributes value
2023-07-01 13:55:28 +02:00
Matthias Alphart
c81b6255c2 Use async_on_remove for KNX entities removal (#95658)
* Use `async_on_remove` for KNX entities removal

* review
2023-07-01 07:16:45 -04:00
Marc Mueller
432bfffef9 Update ruff pre-commit repo (#95603) 2023-07-01 12:12:24 +02:00
Paulus Schoutsen
923677dae3 Tesla Wall Connector: use correct device info keys (#95647) 2023-07-01 06:06:46 -04:00
Paulus Schoutsen
62ac7973c2 VeSync: use correct device info keys (#95646) 2023-07-01 06:06:27 -04:00
Paulus Schoutsen
2191fb21fa Rainbird: use correct device info keys (#95645) 2023-07-01 06:06:01 -04:00
Paulus Schoutsen
c8d4225117 Met: use correct device info keys (#95644) 2023-07-01 06:05:28 -04:00
Richard Kroegel
591f1ee338 Add bmw connected drive region-specific scan interval (#95649)
Add region-specific scan interval

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-07-01 10:41:03 +02:00
Mick Vleeshouwer
8b159d0f47 Fix missing EntityDescription names in Overkiz (#95583)
* Fix labels

* Update homeassistant/components/overkiz/entity.py

* Check if description.name is string

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-06-30 23:59:01 -04:00
Paulus Schoutsen
3fbc026d5a Remove passing MAC as an identifier for Fritz (#95648) 2023-06-30 16:13:22 -04:00
Paulus Schoutsen
be49f90550 Bumped version to 2023.7.0b3 2023-06-30 15:08:35 -04:00
puddly
4993b6ee90 Fix ZHA startup issue with older Silicon Labs firmwares (#95642)
Bump ZHA dependencies
2023-06-30 15:08:28 -04:00
Bram Kragten
2de0b0f6ac Update frontend to 20230630.0 (#95635) 2023-06-30 15:08:27 -04:00
Marius
313e15a915 Update services.yaml (#95630)
take out 'templates accepted'
2023-06-30 15:08:26 -04:00
J. Nick Koston
11fd9ffa60 Bump aioesphomeapi to 15.0.1 (#95629)
fixes #87223 (the cases were the host gets too far behind,
not the cases were the esp8266 runs out of ram but thats
is not a core issue)
2023-06-30 15:08:25 -04:00
dougiteixeira
4192fdbdfd Fix device source for Utility Meter select (#95624)
Fix Device Source
2023-06-30 15:08:24 -04:00
dougiteixeira
d1e8513d63 Fix device source for Threshold (#95623)
Fix Device Source
2023-06-30 15:08:23 -04:00
dougiteixeira
9a14d437dd Fix device source for Riemann sum integral (#95622)
Fix Device Source
2023-06-30 15:08:22 -04:00
dougiteixeira
19cbedcc05 Fix device source for Derivative (#95621)
Fix Device Source
2023-06-30 15:08:21 -04:00
Joost Lekkerkerker
8a6d54237f Fix explicit device naming for integrations m-r (#95620)
Fix explicit device naming for m-r
2023-06-30 15:08:20 -04:00
Joost Lekkerkerker
70d3dc2ef8 Fix explicit device naming for integrations a-j (#95619)
Fix explicit device naming for a-j
2023-06-30 15:08:19 -04:00
Brett Adams
a8807f600b Explicity use device name in Advantage Air (#95611)
Explicity use device name
2023-06-30 15:08:18 -04:00
Brett Adams
73cb17cbf5 Fix Diagnostics in Advantage Air (#95608)
* Fix diag paths

* Fix key sand add redactions

* Name things better.

* Add super basic test

* Rename docstring

* Add snapshot

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-30 15:08:17 -04:00
J. Nick Koston
26d171fc92 Handle DNSError during radio browser setup (#95597)
```
2023-06-29 08:11:06.034 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Radio Browser for radio_browser
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 390, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/radio_browser/__init__.py", line 25, in async_setup_entry
    await radios.stats()
  File "/usr/local/lib/python3.11/site-packages/radios/radio_browser.py", line 124, in stats
    response = await self._request("stats")
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/backoff/_async.py", line 151, in retry
    ret = await target(*args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/radios/radio_browser.py", line 73, in _request
    result = await resolver.query("_api._tcp.radio-browser.info", "SRV")
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers')
```
2023-06-30 15:08:16 -04:00
Dr. Drinovac
a4449d39f3 Use explicit naming in Sensibo climate entity (#95591)
* Use explicit naming in Sensibo climate entity

* Fix black

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-06-30 15:08:15 -04:00
tronikos
a9b8e0077d Bump google-generativeai to 0.1.0 (#95515) 2023-06-30 15:08:14 -04:00
tronikos
97d9876cf7 Google Assistant SDK: Always enable conversation agent and support multiple languages (#93201)
* Enable agent and support multiple languages

* fix test
2023-06-30 15:08:13 -04:00
puddly
8ddc7f2089 Fix ZHA startup issue with older Silicon Labs firmwares (#95642)
Bump ZHA dependencies
2023-06-30 15:07:20 -04:00
Dave Pearce
982a52b91d Add unique_id to Wirelesstag entities. (#95631)
* Add unique_id to Wirelesstag entities.

* Update homeassistant/components/wirelesstag/binary_sensor.py

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

* Update homeassistant/components/wirelesstag/sensor.py

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

* Update homeassistant/components/wirelesstag/switch.py

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

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-06-30 15:04:23 -04:00
dougiteixeira
c6210b68bd Fix device source for Riemann sum integral (#95622)
Fix Device Source
2023-06-30 14:49:00 -04:00
dougiteixeira
c472ead4fd Fix device source for Threshold (#95623)
Fix Device Source
2023-06-30 14:48:36 -04:00
dougiteixeira
0431e031ba Fix device source for Utility Meter select (#95624)
Fix Device Source
2023-06-30 14:48:11 -04:00
dougiteixeira
11146ff40b Fix device source for Derivative (#95621)
Fix Device Source
2023-06-30 14:29:44 -04:00
Michael Hansen
6b8ae0ec86 Ensure trigger sentences do not contain punctuation (#95633)
* Ensure trigger sentences do not contain punctuation

* Update homeassistant/components/conversation/trigger.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-30 13:06:26 -05:00
Bram Kragten
958359260e Update frontend to 20230630.0 (#95635) 2023-06-30 13:55:03 -04:00
Paulus Schoutsen
9280dc69ae Default device name to config entry title (#95547)
* Default device name to config entry title

* Only apply name default if device info provided

* Fix logic detecting type of device info
2023-06-30 13:54:20 -04:00
Brett Adams
d4e40ed73f Fix Diagnostics in Advantage Air (#95608)
* Fix diag paths

* Fix key sand add redactions

* Name things better.

* Add super basic test

* Rename docstring

* Add snapshot

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-30 13:52:52 -04:00
J. Nick Koston
376c61c34b Bump aioesphomeapi to 15.0.1 (#95629)
fixes #87223 (the cases were the host gets too far behind,
not the cases were the esp8266 runs out of ram but thats
is not a core issue)
2023-06-30 11:37:04 -04:00
Joost Lekkerkerker
9cf691abdb Fix explicit device naming for integrations m-r (#95620)
Fix explicit device naming for m-r
2023-06-30 11:34:35 -04:00
Joost Lekkerkerker
7eb26cb9c9 Fix explicit device naming for integrations a-j (#95619)
Fix explicit device naming for a-j
2023-06-30 11:33:50 -04:00
J. Nick Koston
beac3c713b Handle DNSError during radio browser setup (#95597)
```
2023-06-29 08:11:06.034 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Radio Browser for radio_browser
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 390, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/radio_browser/__init__.py", line 25, in async_setup_entry
    await radios.stats()
  File "/usr/local/lib/python3.11/site-packages/radios/radio_browser.py", line 124, in stats
    response = await self._request("stats")
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/backoff/_async.py", line 151, in retry
    ret = await target(*args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/radios/radio_browser.py", line 73, in _request
    result = await resolver.query("_api._tcp.radio-browser.info", "SRV")
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
aiodns.error.DNSError: (12, 'Timeout while contacting DNS servers')
```
2023-06-30 11:21:10 -04:00
Marius
0f1f3bce87 Update services.yaml (#95630)
take out 'templates accepted'
2023-06-30 11:20:20 -04:00
Aaron Bach
39e0662fc8 Add ability to configure map icons for PurpleAir (#86124) 2023-06-30 08:35:19 -06:00
Marc Mueller
522d2496df Update typing-extensions to 4.7.0 (#95539) 2023-06-30 15:00:15 +02:00
Dr. Drinovac
8510d3ad69 Use explicit naming in Sensibo climate entity (#95591)
* Use explicit naming in Sensibo climate entity

* Fix black

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-06-30 14:48:20 +02:00
Joost Lekkerkerker
4ac92d755e Add config flow for zodiac (#95447)
* Add config flow for zodiac

* Add config flow for zodiac

* Fix feedback
2023-06-30 12:58:07 +02:00
Álvaro Fernández Rojas
abf6e0e44d Refactor Airzone Cloud _attr_has_entity_name in sensor (#95609)
airzone_cloud: sensor: refactor _attr_has_entity_name

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-06-30 11:39:10 +02:00
Brett Adams
78de5f8e3e Explicity use device name in Advantage Air (#95611)
Explicity use device name
2023-06-30 11:37:57 +02:00
tronikos
17ceacd083 Google Assistant SDK: Always enable conversation agent and support multiple languages (#93201)
* Enable agent and support multiple languages

* fix test
2023-06-29 23:00:17 -04:00
tronikos
1dcaec4ece Bump google-generativeai to 0.1.0 (#95515) 2023-06-29 22:55:51 -04:00
Paulus Schoutsen
0e89d0a26b Bumped version to 2023.7.0b2 2023-06-29 22:21:39 -04:00
puddly
03e7170080 Fix ZHA multi-PAN startup issue (#95595)
Bump ZHA dependencies
2023-06-29 22:21:34 -04:00
Paulus Schoutsen
c67f37d1be Wiz set name explicitely to None (#95593) 2023-06-29 22:21:34 -04:00
dougiteixeira
6aba1a5af3 Fix device source for Utility Meter (#95585)
* Fix Device Source

* Remove debug
2023-06-29 22:21:32 -04:00
J. Nick Koston
1cf472f4e3 Bump bluetooth-data-tools to 1.3.0 (#95576) 2023-06-29 22:21:31 -04:00
RenierM26
b8fc6e0c66 Ezviz IR string align with depreciation. (#95563) 2023-06-29 22:21:30 -04:00
Paulus Schoutsen
e77f419142 Wiz set name explicitely to None (#95593) 2023-06-29 22:20:53 -04:00
puddly
b44e15415f Fix ZHA multi-PAN startup issue (#95595)
Bump ZHA dependencies
2023-06-29 22:20:33 -04:00
dougiteixeira
f2f0c38fae Fix device source for Utility Meter (#95585)
* Fix Device Source

* Remove debug
2023-06-29 21:52:48 -04:00
J. Nick Koston
734614bdda Fix device_id not set in esphome (#95580) 2023-06-29 18:04:13 -05:00
J. Nick Koston
93b4e6404b Bump bluetooth-data-tools to 1.3.0 (#95576) 2023-06-29 18:03:59 -05:00
RenierM26
449109abd5 Ezviz IR string align with depreciation. (#95563) 2023-06-29 14:20:14 -04:00
Paulus Schoutsen
a04c98a703 Bumped version to 2023.7.0b1 2023-06-29 13:57:56 -04:00
Paulus Schoutsen
4255a2af15 Fix entity name for iBeacon and Roku (#95574)
* Fix entity nmae for iBeacon and Roku

* Roku remote too
2023-06-29 13:57:45 -04:00
Bram Kragten
c47a43c2b9 Update frontend to 20230629.0 (#95570) 2023-06-29 13:57:43 -04:00
Artem Draft
bcca1c91e6 Fix Android TV Remote entity naming (#95568)
Return None as Android TV Remote entity name
2023-06-29 13:57:42 -04:00
Paulus Schoutsen
9cd7034dbd Fix some entity naming (#95562) 2023-06-29 13:57:41 -04:00
Joost Lekkerkerker
ee72a952de Philips.js explicit device naming (#95551) 2023-06-29 13:57:39 -04:00
Luke
22e32bc737 Bump Roborock to 0.29.2 (#95549)
* init work

* fix tests
2023-06-29 13:57:34 -04:00
J. Nick Koston
2a42622de9 Fix manual specification of multiple advertise_ip with HomeKit (#95548)
fixes #95508
2023-06-29 13:57:33 -04:00
Joost Lekkerkerker
8f88b710f0 Use explicit naming in Nest (#95532) 2023-06-29 13:57:30 -04:00
Joost Lekkerkerker
1df12e8771 Use explicit naming in workday sensor (#95531) 2023-06-29 13:57:29 -04:00
Franck Nijhof
129fee09d3 Bump breaking version for YAML features ADR-0021 (#95525) 2023-06-29 13:57:28 -04:00
Franck Nijhof
61ab84bf04 Revert "Remove Workday YAML configuration (#94102)" (#95524) 2023-06-29 13:57:25 -04:00
Franck Nijhof
4f99a71f61 Revert "Remove snapcast YAML configuration (#93547)" (#95523) 2023-06-29 13:57:23 -04:00
Franck Nijhof
f165357772 Revert "Remove qbittorrent YAML configuration (#93548)" (#95522) 2023-06-29 13:57:19 -04:00
Franck Nijhof
c156951925 Revert "Remove Brottsplatskartan YAML configuration (#94101)" (#95521) 2023-06-29 13:57:15 -04:00
Franck Nijhof
612f33e372 Mark text input required for conversation.process service (#95520) 2023-06-29 13:57:14 -04:00
Marcel van der Veldt
2b274b4e95 Bump Matter Server to 3.6.3 (#95519) 2023-06-29 13:57:11 -04:00
Joost Lekkerkerker
2ac5bb46b1 Add explicit device name to Broadlink (#95516) 2023-06-29 13:57:09 -04:00
Joost Lekkerkerker
c4a46294cc Add explicit device name to Roborock (#95513) 2023-06-29 13:55:47 -04:00
Joost Lekkerkerker
cda5ee5814 Add explicit device name to Switchbot (#95512) 2023-06-29 13:55:46 -04:00
Joost Lekkerkerker
698333f894 Add explicit device name to Tuya (#95511)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-06-29 13:55:45 -04:00
Joost Lekkerkerker
b93ceca804 Add explicit device name to Spotify (#95509) 2023-06-29 13:55:44 -04:00
Allen Porter
286cff314a Limit fields returned for the list events service (#95506)
* Limit fields returned for the list events service

* Update websocket tests and fix bugs in response fields

* Omit 'None' fields in the list events response
2023-06-29 13:55:43 -04:00
Raman Gupta
d44ef07082 Fix binary sensor device trigger for lock class (#95505) 2023-06-29 13:55:42 -04:00
Joost Lekkerkerker
8dd2e21d0b Fix YouTube coordinator bug (#95492)
Fix coordinator bug
2023-06-29 13:55:41 -04:00
Matthias Alphart
f55ada5d61 Add reload service to KNX (#95489) 2023-06-29 13:55:39 -04:00
Brandon Rothweiler
1f72a5b1fe Remove incompatible button entities for Mazda electric vehicles (#95486)
* Remove incompatible button entities for Mazda electric vehicles

* Update tests
2023-06-29 13:53:53 -04:00
Evan Jarrett
71b192c072 Update matter locks to support pin code validation (#95481)
Update matter locks to support PINCode validation based on device attributes
2023-06-29 13:52:06 -04:00
Michael Hansen
17c64ed791 Add targeted entities to sentence debug API (#95480)
* Return targets with debug sentence API

* Update test

* Update homeassistant/components/conversation/__init__.py

* Include area/domain in test sentences

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-29 13:52:05 -04:00
puddly
4e940df224 Bump ZHA dependencies (#95478)
* Bump ZHA dependencies

* Account for new EZSP metadata keys
2023-06-29 13:52:04 -04:00
Marcel van der Veldt
a23c0e12f1 Fix Matter entity names (#95477) 2023-06-29 13:51:59 -04:00
Bram Kragten
be22195cf4 Add conversation agent selector, use in conversation.process service (#95462) 2023-06-29 13:44:13 -04:00
Michael Hansen
a39ef03ff5 Disconnect VoIP on RTCP bye message (#95452)
* Support RTCP BYE message

* Make RtcpState optional
2023-06-29 13:44:12 -04:00
Barry Williams
1687ff1f28 Add Update Entity for Linn devices (#95217)
* added update entity for Linn devices

* Update homeassistant/components/openhome/update.py

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

* use parent methods for version attributes

* fixed issue with mocking openhome device

* Update homeassistant/components/openhome/update.py

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

* update entity name in tests

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-06-29 13:44:09 -04:00
Paulus Schoutsen
decb1a3118 Fix entity name for iBeacon and Roku (#95574)
* Fix entity nmae for iBeacon and Roku

* Roku remote too
2023-06-29 13:43:13 -04:00
Allen Porter
7252c33df8 Limit fields returned for the list events service (#95506)
* Limit fields returned for the list events service

* Update websocket tests and fix bugs in response fields

* Omit 'None' fields in the list events response
2023-06-29 13:25:25 -04:00
Bram Kragten
63218adb65 Update frontend to 20230629.0 (#95570) 2023-06-29 13:18:24 -04:00
Luke
3474f46b09 Bump Roborock to 0.29.2 (#95549)
* init work

* fix tests
2023-06-29 13:13:37 -04:00
Paulus Schoutsen
9cace8e4bd Fix some entity naming (#95562) 2023-06-29 13:11:17 -04:00
Artem Draft
33be262ad7 Fix Android TV Remote entity naming (#95568)
Return None as Android TV Remote entity name
2023-06-29 18:53:50 +02:00
Raman Gupta
1f840db333 Fix binary sensor device trigger for lock class (#95505) 2023-06-29 12:29:27 -04:00
Franck Nijhof
23e23ae80e Mark text input required for conversation.process service (#95520) 2023-06-29 17:39:08 +02:00
Joost Lekkerkerker
45bbbeee19 Use explicit naming in workday sensor (#95531) 2023-06-29 11:36:39 -04:00
J. Nick Koston
e3e1bef376 Fix manual specification of multiple advertise_ip with HomeKit (#95548)
fixes #95508
2023-06-29 11:35:32 -04:00
Joost Lekkerkerker
8e00bd4436 Philips.js explicit device naming (#95551) 2023-06-29 16:40:35 +02:00
Marcel van der Veldt
e9d8fff0dd Bump Matter Server to 3.6.3 (#95519) 2023-06-29 15:28:34 +02:00
Joost Lekkerkerker
9d7007df63 Use explicit naming in Nest (#95532) 2023-06-29 14:49:46 +02:00
Franck Nijhof
a3ffa0aed7 Revert "Remove Brottsplatskartan YAML configuration (#94101)" (#95521) 2023-06-29 12:03:42 +02:00
Joost Lekkerkerker
369de1cad3 Add explicit device name to Broadlink (#95516) 2023-06-29 12:03:25 +02:00
Joost Lekkerkerker
5d1c1b35d3 Add explicit device name to Roborock (#95513) 2023-06-29 12:02:09 +02:00
Franck Nijhof
a6cfef3029 Revert "Remove qbittorrent YAML configuration (#93548)" (#95522) 2023-06-29 12:01:26 +02:00
Franck Nijhof
06d47185fe Revert "Remove snapcast YAML configuration (#93547)" (#95523) 2023-06-29 12:00:41 +02:00
Franck Nijhof
34ac541493 Revert "Remove Workday YAML configuration (#94102)" (#95524) 2023-06-29 12:00:13 +02:00
Franck Nijhof
ed16fffa79 Bump breaking version for YAML features ADR-0021 (#95525) 2023-06-29 11:59:36 +02:00
Evan Jarrett
2205f62cc1 Update matter locks to support pin code validation (#95481)
Update matter locks to support PINCode validation based on device attributes
2023-06-29 11:29:54 +02:00
Joost Lekkerkerker
9fb3d4de30 Add explicit device name to Switchbot (#95512) 2023-06-29 11:25:39 +02:00
Joost Lekkerkerker
e6c4f98354 Add explicit device name to Tuya (#95511)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-06-29 11:24:59 +02:00
Joost Lekkerkerker
3c7912f7a4 Add explicit device name to Spotify (#95509) 2023-06-29 11:09:45 +02:00
Joost Lekkerkerker
48049d588c Add entity translations to iOS (#95467) 2023-06-28 22:22:55 -04:00
Joost Lekkerkerker
b0c0b58340 Remove statement in iss config flow (#95472)
Remove conf name
2023-06-28 22:21:50 -04:00
Brandon Rothweiler
c93c3bbdcd Remove incompatible button entities for Mazda electric vehicles (#95486)
* Remove incompatible button entities for Mazda electric vehicles

* Update tests
2023-06-28 21:46:08 -04:00
Matthias Alphart
1615f3e1fd Add reload service to KNX (#95489) 2023-06-28 21:45:17 -04:00
Joost Lekkerkerker
b86b41ebe5 Fix YouTube coordinator bug (#95492)
Fix coordinator bug
2023-06-28 21:43:42 -04:00
Michael Hansen
33c7cdcdb3 Disconnect VoIP on RTCP bye message (#95452)
* Support RTCP BYE message

* Make RtcpState optional
2023-06-28 21:41:11 -04:00
J. Nick Koston
54255331d5 Small cleanups to bluetooth manager advertisement processing (#95453)
Avoid a few lookups that are rarely used now
2023-06-28 21:40:03 -04:00
J. Nick Koston
dfe7c5ebed Refactor ESPHome connection management logic into a class (#95457)
* Refactor ESPHome setup logic into a class

Avoids all the nonlocals and fixes the C901

* cleanup

* touch ups

* touch ups

* touch ups

* make easier to read

* stale
2023-06-28 21:39:31 -04:00
Bram Kragten
a7dfe46fb1 Add conversation agent selector, use in conversation.process service (#95462) 2023-06-28 21:38:06 -04:00
Joost Lekkerkerker
1a6c32f8e9 Update featured integrations screenshot (#95473) 2023-06-28 21:36:46 -04:00
puddly
392e2af2b7 Bump ZHA dependencies (#95478)
* Bump ZHA dependencies

* Account for new EZSP metadata keys
2023-06-28 18:35:05 -04:00
Michael Hansen
487dd3f956 Add targeted entities to sentence debug API (#95480)
* Return targets with debug sentence API

* Update test

* Update homeassistant/components/conversation/__init__.py

* Include area/domain in test sentences

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-28 18:34:43 -04:00
Marcel van der Veldt
0b81550092 Fix Matter entity names (#95477) 2023-06-28 23:40:12 +02:00
Franck Nijhof
ec7beee4c1 Bump version to 2023.8.0dev0 (#95476) 2023-06-28 16:07:54 -04:00
Barry Williams
aaf2846a53 Add Update Entity for Linn devices (#95217)
* added update entity for Linn devices

* Update homeassistant/components/openhome/update.py

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

* use parent methods for version attributes

* fixed issue with mocking openhome device

* Update homeassistant/components/openhome/update.py

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

* update entity name in tests

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-06-28 16:06:24 -04:00
Franck Nijhof
28a5e4735f Bumped version to 2023.7.0b0 2023-06-28 20:45:45 +02:00
J. Nick Koston
25dc9f5942 Migrate esphome climate platform to use _on_static_info_update (#95471) 2023-06-28 20:37:35 +02:00
Eric Severance
03dac6e171 Remove polling_interval_seconds option from wemo (#95468) 2023-06-28 20:27:10 +02:00
Emory Penney
804b27cc2f Improve Obihai Connection Stability (#94406)
* Improving Obihai Connectivity

* Update homeassistant/components/obihai/sensor.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* PR feedback

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-06-28 20:12:09 +02:00
Michael
b64be798df Fix qr code data update in AVM Fritz!Tools (#95470)
* use async_update

* improve tests

* use async_image
2023-06-28 19:57:03 +02:00
Michael Hansen
79f1c86789 Bump home-assistant-intents to 2023.6.28 (#95451) 2023-06-28 19:35:18 +02:00
Joost Lekkerkerker
ecfb259438 Add entity translations to iBeacon (#95460)
* Add entity translations to iBeacon

* Add entity translations to iBeacon
2023-06-28 19:32:58 +02:00
Olen
4959fce1e0 Fix setting number of digits for verisure lock PIN (#95449)
* Fix error when setting number of digits

* Update test_config_flow.py

Add test for empty code
2023-06-28 19:18:45 +02:00
Michael Hansen
3d84c6e21c Use "Done" as a default response for sentence triggers (#95463)
* Use "Done" as a default response for sentence triggers

* Move response to trigger callback
2023-06-28 12:34:55 -04:00
Joost Lekkerkerker
d8d580ad58 Make smartthings use the right unit of measurement for illuminance sensors (#95456) 2023-06-28 18:18:24 +02:00
Joost Lekkerkerker
e0d1d16da1 Remove mutable object from hvv sensor (#95454) 2023-06-28 18:18:11 +02:00
Bram Kragten
b2c0ca304b Update frontend to 20230628.0 (#95458) 2023-06-28 18:16:39 +02:00
Martin Hjelmare
de4e3b5ffe Disable sun.sun no platform log (#95450) 2023-06-28 17:06:23 +02:00
Artem Draft
c14a2dd912 Add active_child_template to universal media player (#88816)
* Add active_children_template in universal

* handle multiple updates

* edit docstring

* Rename parameter to active_child_template
2023-06-28 16:36:18 +02:00
Michael
acb7b1fe3b Apply suggestion from late review of #95282 (#95437) 2023-06-28 16:20:23 +02:00
Joost Lekkerkerker
4393aa4f50 Add entity translations to Growatt Server (#95410)
* Add entity translations to Growatt Server

* Fix feedback
2023-06-28 15:28:01 +02:00
Jan Bouwhuis
0a74bffe67 Fix error for stt when async_get_engine is not implemented (#95443)
* Fix error for stt

* Revert "Fix error for stt"

This reverts commit 723cd191fe.

* Remove legacy stt platform component
2023-06-28 15:27:06 +02:00
Matthias Alphart
489781c1e6 Add time platform to KNX (#95302) 2023-06-28 15:19:32 +02:00
Erik Montnemery
24ea865553 Fix a couple of typos (#95441) 2023-06-28 14:37:13 +02:00
Jan Bouwhuis
0856121046 Add action topic to MQTT humidifier (#95212)
* Add action topic to MQTT humidifier

* Add tests
2023-06-28 14:21:15 +02:00
Joost Lekkerkerker
e9495c9cc6 Add entity translations for homewizard (#95416)
* Add entity translations for homewizard

* Add entity translations for homewizard

* Add entity translations for homewizard

* Fix tests
2023-06-28 14:02:54 +02:00
avee87
6c2c4c989f Migrate Transmission to new entity naming (#95436) 2023-06-28 14:00:06 +02:00
Joost Lekkerkerker
103375ef95 Add entity translations to HVV Departures (#95442)
* Add entity translations to HVV Departures

* Add entity translations to HVV Departures
2023-06-28 13:57:04 +02:00
Joost Lekkerkerker
ff015310fd Add entity translations to honeywell (#95440) 2023-06-28 13:55:42 +02:00
Sab44
c1953b0ae4 Decouple Hyperion entitites and clear source when light is off (#80478)
* Remove Hyperion Priority Light

* Remove coupling between light entity and led device

* Merge HyperionLight and HyperionBaseLight as we will only have one light entity

* Set state based on whether priority channel is open or not

* Remove leftover variable from Priority Light

* Remove external sources from light entity; use switch entities instead

* Remove external effects from effects to show dropdown

* Remove workaround for hyperion.ng issue 992

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-06-28 13:51:42 +02:00
starkillerOG
ee4459f41e Extend Reolink update entity (#94323)
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-06-28 13:32:14 +02:00
Christopher Johnson
c2cd4d0517 Expose host in ubus device tracker (#80621)
* Expose host in ubus device tracker

* Update homeassistant/components/ubus/device_tracker.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-28 13:27:47 +02:00
Dominik
796b5ef196 Bump glances-api to 0.4.3 (#95431) 2023-06-28 13:23:15 +02:00
Denis Shulyaka
ae21ab2945 Add action attribute to Humidifier entity (#95131)
* Add HumidifierAction StrEnum

* Add action attribute to HumidifierEntity

* Update strings.json

* Add action to demo humidifier

* Add tests

* Fix imports

* Add 'off' humidifier action

* Set action to 'off' when state is 'off'

* Add 'off' action to strings.json

* Test that action sets to "off" when state is "off"

* Use is_on instead of state

* Fix typo

* black
2023-06-28 13:21:17 +02:00
Jan Bouwhuis
8b6ed9c6b9 Fix test with time issue for xiaomi_miio button (#95438) 2023-06-28 13:19:24 +02:00
Jan Bouwhuis
fe7857c8ec Add current_humidity device_trigger for humidity component (#95435)
Add current_humidity device_trigger for humidity
2023-06-28 13:13:55 +02:00
Maximilian
0bfb81ecf3 Replace NINA corona filter with regex (#83181)
* Change headline filter to regex

* Add config migration

* Update config flow
2023-06-28 13:00:08 +02:00
Maxim Oei
36b0fc17df Update Telegram bot to support URLs in inlineKeyboard (#70445)
* Update Telegram bot to support URLs in inlineKeyboard

Update creation of InlineKeyboardButton to support url case, on top of callbacks

* linting

* Apply suggestions from code review

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-06-28 12:56:00 +02:00
Jan Bouwhuis
8b563120b5 Add comment for assumed trigger_type (#95432)
* Add comment for assumed tigger_type

* Update homeassistant/components/climate/device_trigger.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-06-28 12:22:56 +02:00
Álvaro Fernández Rojas
d430e089d2 Update aioairzone-cloud to v0.2.0 (#95429) 2023-06-28 11:09:17 +02:00
Paulus Schoutsen
149ac4f99e Capitalize a bunch of translations (#95421) 2023-06-28 11:08:53 +02:00
avee87
a5b91cb7e3 Fix invalid unique id for Transmission entities (#84664)
* Update unique id for Transmission entities

* Moved migration to a separate function

* Hopefully fixed coverage

* Extracted dictionary to constant

* review comments

* more comments

* revert accidental name change

* more review comments

* more review comments

* use lists instead of incorrect tuple syntax
2023-06-28 10:45:13 +02:00
Joost Lekkerkerker
2747da784c Move Fjaraskupan coordinator to separate file (#95342)
* Move coordinator to separate file

* Move coordinator to separate file

* Move coordinator to separate file
2023-06-28 10:41:50 +02:00
Franck Nijhof
98a94fea99 Merge branch 'master' into dev 2023-06-28 10:23:20 +02:00
Luke
f6aae8b01b Remove unneded construct import for Eddystone (#95418) 2023-06-28 10:02:01 +02:00
Jan Bouwhuis
265ccae54f Do not allow zerovalue as total_increasing for homewizard sensors (#90982)
* Do not allow zerovalue  as total_increasing

* Fix for solar exports

* Revert not needed change

* Adjust handling, making tests pass

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-28 09:53:33 +02:00
cpolhout
cfb133d431 Add new integration Loqed (#70080) 2023-06-28 09:42:12 +02:00
dependabot[bot]
ebd5eb4470 Bump sigstore/cosign-installer from 3.1.0 to 3.1.1 (#95427)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-28 09:41:08 +02:00
aschobba
f5b2273fc1 Add support for HmIP-BS2 to HomematicIP Cloud (#93599)
* Add support for HmIP-BS2

Add support for HmIP-BS2

* Run ruff fix

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-28 09:33:48 +02:00
hcross13
5955be46a4 Fix ness_alarm tasks being fired before required sensors and panel are loaded asynchronously (#94590)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-06-28 09:30:48 +02:00
Ruben Bokobza
7a82176670 Add preset support to electrasmart climate (#94068) 2023-06-28 09:29:58 +02:00
starkillerOG
d2cd0c9934 Add reolink channel based record, push, email, ftp, and buzzer switches (#91006)
* Add channel based email, ftp, push, rec and buzzer switches

* fix dataclass
2023-06-28 09:18:14 +02:00
Don Holly
04e277ac95 Add AirQuality SensorState support for Google Assistant (#80579)
* Add AirQuality SensorState support for Google Assistant

* Code formatting

* Apply suggestions from code review

Co-authored-by: Joakim Plate <elupus@ecce.se>

* Update trait.py

* Update trait.py

* Fix google_assistant tests

* Update trait.py

* Simplify sensor state payload and tests

* Add more tests to fix coverage

* fix tests

* Truncate once

---------

Co-authored-by: Joakim Plate <elupus@ecce.se>
Co-authored-by: Erik <erik@montnemery.com>
2023-06-28 08:55:00 +02:00
J. Nick Koston
72806bfaf2 Add more test coverage for ESPHome lights (#95415) 2023-06-28 08:40:21 +02:00
Joost Lekkerkerker
b53b162d05 Add entity translations to Flo (#95347)
* Add entity translations to Flo

* Add entity translations to Flo
2023-06-28 08:36:10 +02:00
Michael
4daacf9c4b Add Guest WiFi QR-Code image entity to AVM Fritz!Tools (#95282) 2023-06-27 23:48:28 +02:00
Joost Lekkerkerker
aaa4ee79b8 Add entity translations to HERE Travel time (#95412) 2023-06-27 23:35:12 +02:00
shbatm
4e05205174 Add updated ISY994/IoX Units of Measurement (#95408) 2023-06-27 16:17:36 -05:00
Nathan Spencer
ec8988f8ea Add time entity for sleep mode start time to Litter-Robot 3 (#94194) 2023-06-27 22:25:29 +02:00
Joost Lekkerkerker
21c619e702 Add entity translations to Guardian (#95411) 2023-06-27 22:24:41 +02:00
zry98
bafb81337b Add buttons for resetting vacuum consumable status in xiaomi_miio (#91483)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Eugenio Panadero <eugenio.panadero@gmail.com>
2023-06-27 21:58:29 +02:00
Dave T
7fa86d3998 Simplify parsing of user input during config flow for generic (#86256)
Co-authored-by: Dave T <davet2001@users.noreply.github.com>
2023-06-27 21:29:06 +02:00
Álvaro Fernández Rojas
78380c0cd4 Allow turning Airzone slave zones on with any HVAC mode (#94721)
airzone: climate: allow turning slave zone on with any hvac mode

If the user selects a different mode on a slave zone from the one selected on
the master zone, it will raise an exception and it won't change the operation
mode or turn it on.
Change this behaviour so that the exception will still be raised but the slave
zone will be turned on and the hvac mode won't be changed.
This allows commanding airzone slave zones from limited APIs like homekit.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-06-27 21:25:41 +02:00
Marcel van der Veldt
ed2daf1f65 Change subscription logic for Matter devices (#95387) 2023-06-27 21:12:29 +02:00
Joost Lekkerkerker
a885ceefa2 Add entity translations to Gios (#95403) 2023-06-27 20:58:03 +02:00
Eric Severance
a4a6972237 Set webhook local_only deprecation to 2023.11.0 (#95401) 2023-06-27 20:43:11 +02:00
Charles Garwood
34827571ba Add set_config service to Fully Kiosk Browser integration (#95318)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-27 20:42:18 +02:00
micha91
16fe79db75 Improve the source labels for MusicCast players (#74954) 2023-06-27 20:34:04 +02:00
Joost Lekkerkerker
dd3693caca Add entity translations to Github (#95404) 2023-06-27 20:33:27 +02:00
Ian Foster
286bdff8bc Fix keyboard_remote device_descriptor when using symbolic links (#94744) 2023-06-27 20:31:41 +02:00
Marcel van der Veldt
e7f29263e3 Fix sending a (default) pincode to Matter Lock operations (#95402) 2023-06-27 20:27:48 +02:00
Mick Vleeshouwer
99a622c8ee Bump pyoverkiz to 1.9.0 (#95400) 2023-06-27 20:25:31 +02:00
Erik Montnemery
179e1da164 Use entity registry id in text device actions (#95398) 2023-06-27 20:24:40 +02:00
Franck Nijhof
d7b7deb95f Improve climate turn_on service (#94645) 2023-06-27 20:17:13 +02:00
Eric Severance
bbae2061e7 Add wemo options enable_subscription & enable_long_press (#56972)
* Add wemo options enable_subscription & enable_long_press

* Also add polling_interval_seconds option

* Give feedback about invalid option combinations

* Use a frozen dataclass for Options

* Validate polling_interval_seconds

* Describe message arg

* Replace broad exception with PyWeMoException
2023-06-27 20:10:13 +02:00
Joost Lekkerkerker
6a85e227db Show all YouTube subscriptions in config flow (#94287) 2023-06-27 20:07:44 +02:00
Franck Nijhof
48776f86dc Use identify device class in Elgato identify button entity (#95361)
* Use identify device class in Elgato identify button entity

* Clean up strings
2023-06-27 13:59:49 -04:00
Erik Montnemery
0fc51ac75a Remove current humidity humidifier device trigger (#95394) 2023-06-27 19:55:59 +02:00
Richard Kroegel
f1a54a510c Re-add "deactivate air conditioning" button to bmw_connected_drive (#94765) 2023-06-27 19:55:46 +02:00
Mike Knoop
2092bd225d Distinguish multiple raise lower buttons on one Lutron keypad (#92380) 2023-06-27 19:52:46 +02:00
Erik Montnemery
e18f7dffb0 Teach validate_config to validate lists of conditions (#95380)
* Teach validate_config to validate lists of conditions

* Update test
2023-06-27 19:44:23 +02:00
Joost Lekkerkerker
e8cb9fba7b Add entity translations to Geocaching (#95396) 2023-06-27 19:42:55 +02:00
Paulus Schoutsen
243abf32c0 Add test to stop action (#95376) 2023-06-27 19:38:30 +02:00
Paul Bottein
8b25fd8563 Use total increasing for ecowitt precipitation and lightning count (#90099) 2023-06-27 19:32:06 +02:00
Maciej Bieniek
8d6a711cac Make unique_id of the Shelly button entity immutable (#95160) 2023-06-27 19:10:12 +02:00
aschmitz
1dc9c77a3e Tag Aranet diagnostic entities appropriately (#95218) 2023-06-27 18:56:46 +02:00
Joost Lekkerkerker
e4eb7e4796 Add entity translations to FireServiceRota (#95337) 2023-06-27 18:55:40 +02:00
Joost Lekkerkerker
09bfb08067 Add entity translations to Flume (#95350) 2023-06-27 18:54:32 +02:00
Joost Lekkerkerker
0b32a6e0d1 Use shorthand attributes for freedompro (#95358) 2023-06-27 18:53:29 +02:00
Joost Lekkerkerker
b0834472bc Use device class translations for Fritz (#95362) 2023-06-27 18:48:03 +02:00
Erik Montnemery
68db751ce1 Refactor template image (#95353) 2023-06-27 18:46:36 +02:00
Joost Lekkerkerker
1a8bc1930c Add entity translations to FiveM (#95370) 2023-06-27 18:44:26 +02:00
Franck Nijhof
4b9bfe9a50 Support importing Blueprints from the Home Assistant websites (#95340)
* Support importing Blueprints from the Home Assistant websites

* Improve test coverage
2023-06-27 12:40:53 -04:00
J. Nick Koston
a8b2c1edfa Add more coverage for ESPHome lights (#95384) 2023-06-27 18:27:09 +02:00
Erik Montnemery
bff4b0c79c Use entity registry id in arcam_fmj device triggers (#95391) 2023-06-27 18:25:17 +02:00
Erik Montnemery
5a90a44233 Use entity registry id in kodi device triggers (#95392) 2023-06-27 18:24:53 +02:00
Erik Montnemery
1fec407a24 Set scripts which fail validation unavailable (#95381) 2023-06-27 18:24:34 +02:00
Erik Montnemery
17ac1a6d32 Set automations which fail validation unavailable (#94856) 2023-06-27 18:23:33 +02:00
Pascal Vizeli
5c4d010b90 Fix machine build templates (#95393) 2023-06-27 18:00:12 +02:00
Joost Lekkerkerker
8bbb396048 Move freedompro coordinator to separate file (#95360)
* Move coordinator to separate file for freedompro

* Move coordinator to separate file for freedompro
2023-06-27 17:48:36 +02:00
Joakim Sørensen
db01aecb02 Add contents to connection_info handler in cloud client (#95059) 2023-06-27 17:45:41 +02:00
Robert Hillis
cd26de73b4 Add button platform to Dremel 3D printer (#94517)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-27 17:44:29 +02:00
Franck Nijhof
3e85a29b86 Move overlapping pylint rules to ruff, disable mypy overlap (#94359) 2023-06-27 17:42:46 +02:00
disforw
7c676c0a7d Add config_flow to QNAP (#80450)
* Create config_flow.py

* Update __init__.py

* Create const.py

* Create strings.json

* Update sensor.py

* Update manifest.json

* Update manifest.json

* Add device name to entities

* Correcting health sensor

* Update manifest.json

* Adding integration_type

* Update sensor.py

* Update __init__.py

* Enums

* Update sensor.py

* Removed unused notify_create

* Switch to SensorDeviceClass.TEMPERATURE

* Update enums

* Remove SENSOR_TYPES from const.py

* Add SENSOR_TYPES to sensor.py

* Removed dependancies

* Removed import yaml

* Removed entity_registry_enabled_default

* Update const.py remove dups

* Update manifest.json removed dups

* Update __init__.py

* Update const.py

* Update manifest.json

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update sensor.py remove unused

* Update sensor.py add docstring

* Update sensor.py add super

* Remove FOLDER sensors

* Remove VOLUME_NAME

* fix cli

* fix cli

* Add config flow tests

* Update requirements_test_all.txt

* Update CODEOWNERS

* Update homeassistant/components/qnap/config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update __init__.py

Change unload to walrus
Remove async_setup

* Update const.py remove PLATFORMS

* Update __init__.py add Platform Enum

As per epenet

* Update __init__.py

* Update config_flow.py

* Update sensor.py

* Update __init__.py

ruff

* Update config_flow.py

Ruff

* Update sensor.py

* Update const.py remove attrs

* Update sensor.py add attrs

* Revert tuple for sensor extend

* Update sensor.py

* Update coordinator.py

* Update coordinator.py

* Update sensor.py

* Update coordinator.py

* Update homeassistant/components/qnap/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/const.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update coordinator.py

* Update __init__.py

* Update coordinator.py

* Update sensor.py

* Add device_info

* Update sensor.py

* Update sensor.py self._attr_unique_id

* Update sensor.py

* Update sensor.py

* Type Hints

* Move tuples

* Drive sensor name

* Remove caps

* Remove caps

* Add YAML import

* Update sensor.py fix ruff

* Revert tuples

* Update sensor.py as per review

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update sensor.py

* assert uid is not None

* Update homeassistant/components/qnap/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update .coveragerc

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/const.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/const.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update sensor.py

* Update config_flow.py add imports

* Update const.py

* Update sensor.py move confs to const

* Update config_flow.py add const

* Update test_config_flow.py remove const name

* Update test_config_flow.py remove standard result const

* Update test_config_flow.py

* Combine tests

* Update test_config_flow.py

* Update config_flow.py

* Update test_config_flow.py

* Update config_flow.py

* Update test_config_flow.py

* Update test_config_flow.py

* Update sensor.py change UID as requested

* Update sensor.py added check for monitor_device

* fix tests

* Remove rounding

* Revert "Remove rounding"

This reverts commit 61bf653c06.

---------

Co-authored-by: starkillerOG <starkiller.og@gmail.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-27 17:42:27 +02:00
Franck Nijhof
43fe30f6ee Use identify device class in ZHA identify button entity (#95373) 2023-06-27 17:42:13 +02:00
Joost Lekkerkerker
e7cc839a96 Add entity translations to Fully Kiosk (#95368) 2023-06-27 17:41:41 +02:00
J. Nick Koston
df65fa3899 Bump pyatv to 0.13.2 (#95388) 2023-06-27 17:38:15 +02:00
Marcel van der Veldt
30fcfaf1ec Some small fixes for the Matter light platform (#95343) 2023-06-27 17:33:10 +02:00
Erik Montnemery
cb22fb16f8 Allow returning a script variable from a script (#95346)
* Allow returning a script variable from a script

* Don't allow returning a template result

* Raise if response variable is undefined

* Add test

* Update homeassistant/helpers/script.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Format code

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-27 17:13:53 +02:00
Joost Lekkerkerker
e19b29d6ae Add entity translations to Flux led (#95355) 2023-06-27 16:58:57 +02:00
Marc Mueller
90854df5b2 Add editable install back [ci] (#95379) 2023-06-27 16:10:03 +02:00
Diogo Gomes
96bf8ef8d6 Add Risk of Fire sensor to IPMA (#80295) 2023-06-27 16:00:10 +02:00
Erik Montnemery
f3fc741a71 Bump hass-nabucassa to 0.69.0 (#95367) 2023-06-27 15:29:30 +02:00
Erik Montnemery
190d67b56c Improve content type handling in ImageEntity (#95365) 2023-06-27 15:28:49 +02:00
Franck Nijhof
116dd67472 Use identify device class in LIFX identify button entity (#95372) 2023-06-27 14:52:44 +02:00
J. Nick Koston
878d41a472 Remove senseme integration (#94363) 2023-06-27 14:43:19 +02:00
Joost Lekkerkerker
50e36fbdda Add entity translations to Flick electric (#95345) 2023-06-27 14:38:36 +02:00
Erik Montnemery
071d3a474f Base entity ids on English for languages not using Latin script (#91357) 2023-06-27 14:37:50 +02:00
Dylan Owen
fe28067481 Updated pyopnsense to support a 20 second timeout (#95314)
* Updated pyopnsense to support a timeout

* Self Review

* Removed the yaml configuration portion
2023-06-27 08:31:02 -04:00
Franck Nijhof
9ca0a095ab Use identify device class in HomeWizard identify button entity (#95369) 2023-06-27 14:30:46 +02:00
Joost Lekkerkerker
c1e8eb7c96 Use device class translations for Fritzbox (#95363) 2023-06-27 14:06:57 +02:00
Erik Montnemery
e9eb366f3b Improve MQTT image tests (#95359) 2023-06-27 13:53:38 +02:00
Haim Gelfenbeyn
0c66ccebd1 Verify that the MAC address that Fully Kiosk reported is usable (#94887) 2023-06-27 13:34:07 +02:00
Erik Montnemery
723f6d35b0 Address late review comments on image entity URL support (#95338) 2023-06-27 13:22:59 +02:00
Joost Lekkerkerker
968bc25259 Add entity translations to Flipr (#95344) 2023-06-27 13:20:30 +02:00
Joost Lekkerkerker
f61332c9b4 Clean up forecast_solar const file (#95356) 2023-06-27 13:19:10 +02:00
Joost Lekkerkerker
d8e73b6a6b Move FiveM entity class to separate file (#95348) 2023-06-27 13:17:51 +02:00
Martin Hjelmare
4d2fa5bdbc Onboard Google Translate (#95352) 2023-06-27 13:12:25 +02:00
Joost Lekkerkerker
2c9213baa1 Bump python-opensky to 0.0.10 (#94335) 2023-06-27 13:10:09 +02:00
Jan Bouwhuis
4d05a3ae79 Add url support for mqtt image platform (#95249)
* Add url support for mqtt image platform

* Refactor url fetch code to use base platform

* Update after rebase

---------

Co-authored-by: Erik <erik@montnemery.com>
2023-06-27 12:49:31 +02:00
Joost Lekkerkerker
a80862f3db Add entity translations to Fjaraskupan (#95341) 2023-06-27 12:38:32 +02:00
Franck Nijhof
c225c46853 Clean up device class based entity translations in Community.Sensors (#95011) 2023-06-27 12:31:57 +02:00
Erik Montnemery
3c015f85f4 Revert "Change the device class name volatile organic compounds parts to VOCs ratio" (#95332) 2023-06-27 12:28:31 +02:00
Joakim Sørensen
4d4e7522f4 Adjust the analytics collector to only report configured integrations (#95246) 2023-06-27 12:08:51 +02:00
Erik Montnemery
90c1263501 Adjust image entity URL support (#95330) 2023-06-27 11:59:24 +02:00
Franck Nijhof
39f76b757d Clean up wheels building, removing cp310 abi (#95334) 2023-06-27 11:53:19 +02:00
Franck Nijhof
9de2b6c253 Use Python 3.11 in translations and builder workflows (#95335) 2023-06-27 11:52:45 +02:00
Patrick ZAJDA
58f8f9c82a Add state attribute translations to Switchbot (#90861) 2023-06-27 11:52:20 +02:00
Jan Bouwhuis
22f29e8c84 Add validation of content_type to image entity (#95248) 2023-06-27 11:46:31 +02:00
Joost Lekkerkerker
af7b25d748 Move FiveM coordinator to separate file (#95339)
Move coordinator to separate file
2023-06-27 12:40:38 +03:00
G Johansson
30d22fe49b Add new attributes into Template Weather (#95100) 2023-06-27 11:19:51 +02:00
Pascal Vizeli
b62080cb78 Using builder 2023.06.1 (#95333)
* Using builder 2023.06.1

* revert downgrade of cosign
2023-06-27 10:34:31 +02:00
Joost Lekkerkerker
ba244b7af7 Add entity translations to Efergy (#95291)
* Add entity translations to Efergy

* Add entity translations to Efergy
2023-06-27 10:22:08 +02:00
dependabot[bot]
b12109dcde Bump sigstore/cosign-installer from 3.0.5 to 3.1.0 (#95327)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-27 10:21:36 +02:00
Robert Hillis
10f116a507 Add entity translations to Google Mail (#95312) 2023-06-27 10:19:47 +02:00
Robert Hillis
16bcbe3d22 Add entity translations to Lidarr (#95313) 2023-06-27 10:19:20 +02:00
Joost Lekkerkerker
4ab8411145 Make Dexcom use shorthand attributes (#95231) 2023-06-27 10:17:09 +02:00
Robert Hillis
7add36d847 Add entity translations to Litterrobot (#95316) 2023-06-27 10:12:02 +02:00
Pascal Vizeli
c3d02d68b7 Fix Cosign Image build (#95328) 2023-06-27 09:29:45 +02:00
Erik Montnemery
c2f7e5840b Use entity registry id in climate device actions (#95268)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-27 09:28:54 +02:00
Robert Hillis
8d1cd39044 Add entity translations to Radarr (#95317) 2023-06-27 08:45:27 +02:00
Joost Lekkerkerker
73bc5a4e8f Add entity translations to Aurora ABB PowerOne (#95132) 2023-06-27 08:42:09 +02:00
Jan Bouwhuis
98cc45ec10 Add image url support (#95301)
* Add image url support

* Use hass as parameter

* Add verify ssl parameter and improve exception handling

* Improve error handling, ignore empty URL's

* Update existing image platforms

---------

Co-authored-by: Erik <erik@montnemery.com>
2023-06-27 08:36:12 +02:00
dougiteixeira
363dab7ce4 Change the device class name volatile organic compounds parts to VOCs ratio (#95126) 2023-06-27 08:33:11 +02:00
Joost Lekkerkerker
2c3a50fdb1 Add entity translations to Awair (#95308) 2023-06-27 08:27:33 +02:00
J. Nick Koston
6d47feb595 Add tests for ESPHome cover platform (#95321) 2023-06-27 08:26:35 +02:00
Paulus Schoutsen
5f14cdf69d Allow stopping a script with a response value (#95284) 2023-06-27 08:24:22 +02:00
Erik Montnemery
51aa2ba835 Use entity registry id in water_heater device actions (#95276) 2023-06-27 08:21:15 +02:00
Erik Montnemery
9dc586bd98 Use entity registry id in number device actions (#95273) 2023-06-27 08:20:45 +02:00
Erik Montnemery
c2457b8574 Use entity registry id in cover device actions (#95269) 2023-06-27 08:20:05 +02:00
J. Nick Koston
0af71851a4 Fix ESPHome button not getting device updates (#95311) 2023-06-26 22:34:37 -05:00
Paulus Schoutsen
d6cd5648b9 Change conversation default agent behavior (#95225)
* Change conversation default agent behavior

* Fix tests
2023-06-26 22:10:17 -04:00
J. Nick Koston
c4288e7b1f Use cached_property in entity.py instead of manual cache (#95307) 2023-06-26 19:18:46 -05:00
Erik Montnemery
398dbed72e Improve type annotations of cached_property backport (#95309) 2023-06-26 18:36:01 -05:00
J. Nick Koston
9fe24c54e9 Add test coverage for ESPHome switch platform (#95306) 2023-06-26 17:49:00 -05:00
Joost Lekkerkerker
dbe4252d34 Add entity translation to Aussie broadband (#95134) 2023-06-26 23:39:02 +02:00
Joost Lekkerkerker
185936deda Use DeviceInfo type for Aurora ABB PowerOne (#95133) 2023-06-26 23:36:06 +02:00
Michael Hansen
b70a67404b Check end stage as well when preparing pipeline (#95303) 2023-06-26 16:36:02 -05:00
Joost Lekkerkerker
9734f45202 Add entity translations to Eufylife BLE (#95296) 2023-06-26 23:32:37 +02:00
Erik Montnemery
a568885ad2 Add backport of cached_property from CPython 3.12 (#95292) 2023-06-26 16:23:07 -05:00
Joost Lekkerkerker
b02cb56988 Clean up Awair const (#95135) 2023-06-26 23:22:43 +02:00
Erik Montnemery
3635508a08 Use entity registry id in vacuum device actions (#95275) 2023-06-26 23:21:15 +02:00
Joost Lekkerkerker
a44f3e62e3 Add entity translations to Energyzero (#95293) 2023-06-26 23:20:34 +02:00
Joost Lekkerkerker
cb9cbdfb28 Add entity translations to ecobee (#95281) 2023-06-26 23:12:48 +02:00
Erik Montnemery
320003bf15 Use entity registry id in lock device actions (#95272) 2023-06-26 23:09:26 +02:00
Erik Montnemery
b12c5a5ba2 Use entity registry id in humidifier device actions (#95270) 2023-06-26 23:08:30 +02:00
Joost Lekkerkerker
ad9bf431a8 Add entity translations to filesize (#95299) 2023-06-26 23:06:27 +02:00
J. Nick Koston
7737271a30 Migrate esphome alarm_control_panel platform to use _on_static_info_update (#94961) 2023-06-26 22:58:17 +02:00
Michael Hansen
0f08e6699c Add VAD sensitivity to ESPHome (#95283)
* Change to "finished speaking detection"

* Add select entity to ESPHome for finished speaking detection

* Fix entity name

* Use vad select in stt stream

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-26 16:47:32 -04:00
Robert Hillis
c6775920f5 Tweak Dremel 3D Printer sensors (#94552) 2023-06-26 22:39:10 +02:00
Erik Montnemery
4efe217d9b Use entity registry id in select device actions (#95274) 2023-06-26 22:29:14 +02:00
Joost Lekkerkerker
ec120608c2 Add entity translations to edl21 (#95289) 2023-06-26 22:28:12 +02:00
Erik Montnemery
433d640071 Use entity registry id in light device actions (#95271) 2023-06-26 22:27:19 +02:00
Paulus Schoutsen
bc8be9caea Rename HomeKit Controller to HomeKit Device (#95286) 2023-06-26 22:26:16 +02:00
Joost Lekkerkerker
2872b6cf61 Add entity translations to Environment Canada (#95295) 2023-06-26 22:23:43 +02:00
Erik Montnemery
9b1b0937eb Use entity registry id in button device actions (#95267) 2023-06-26 22:22:15 +02:00
J. Nick Koston
fde82ee323 Keep esphome update entity available when disconnected is expected (#95278) 2023-06-26 22:20:56 +02:00
starkillerOG
0bec93fa37 Reolink ONVIF long polling (#94770) 2023-06-26 21:54:40 +02:00
Petro31
f9707cc87b Add optional limits to compensation sensors (#85886)
Co-authored-by: Tom Harris <tomharris@harrisnj.net>
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-26 14:36:59 -05:00
Erik Montnemery
b71e0302d6 Use entity registry id in sensor device conditions (#95260) 2023-06-26 21:20:40 +02:00
Erik Montnemery
2930845b23 Use entity registry id in vacuum device conditions (#95261) 2023-06-26 20:31:06 +02:00
Erik Montnemery
eb7ad2eb09 Use entity registry id in select device conditions (#95259) 2023-06-26 20:30:29 +02:00
Erik Montnemery
4021662b48 Use entity registry id in media_player device conditions (#95258) 2023-06-26 20:30:22 +02:00
Erik Montnemery
2cfa889750 Use entity registry id in lock device conditions (#95257) 2023-06-26 20:30:05 +02:00
Erik Montnemery
c4589ad4e5 Use entity registry id in fan device conditions (#95255) 2023-06-26 20:29:52 +02:00
Erik Montnemery
16ec9b1e9f Use entity registry id in device_tracker device conditions (#95254) 2023-06-26 20:29:39 +02:00
Erik Montnemery
a691846b5d Use entity registry id in climate device conditions (#95252) 2023-06-26 20:29:28 +02:00
Franck Nijhof
c1a37185b4 Mark Plugwise Illuminance sensor as diagnostic (#95240) 2023-06-26 19:40:30 +02:00
Richard Kroegel
410b15df92 Improve exception handling for BMW remote services (#92199)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-06-26 19:05:50 +02:00
Marc Mueller
f5975d4039 Update build system (#95237) 2023-06-26 19:03:56 +02:00
Joost Lekkerkerker
1525901ffc Add entity translations to dormakaba (#95230) 2023-06-26 19:02:52 +02:00
Álvaro Fernández Rojas
3f0393154e Remove unused ConfigEntry from Airzone Cloud entities (#95103) 2023-06-26 18:58:51 +02:00
Joost Lekkerkerker
844a1ebbc6 Add entity translations to BMW Connected Drive (#95142) 2023-06-26 18:57:56 +02:00
Paulus Schoutsen
d95c241a1a Add service response values to service descriptions (#95262) 2023-06-26 12:57:43 -04:00
Martin Hjelmare
fa03324bbd Remove stale dep from google translate (#95247) 2023-06-26 18:49:01 +02:00
Joost Lekkerkerker
36ded01264 Add entity translations to Blink (#95138) 2023-06-26 18:29:33 +02:00
Erik Montnemery
07936884a3 Use entity registry id in alarm_control_panel device conditions (#95250) 2023-06-26 18:26:21 +02:00
Joost Lekkerkerker
a64940cf42 Use shorthand attribute for EAFM (#95233) 2023-06-26 18:25:39 +02:00
Joost Lekkerkerker
9e3706e3b9 Move Aurora entity to separate file (#95245) 2023-06-26 18:24:14 +02:00
Joost Lekkerkerker
91e6e918c3 Code tidyness for Dexcom (#95232) 2023-06-26 18:22:44 +02:00
Erik Montnemery
f0493b22d4 Use entity registry id in binary_sensor device conditions (#95251) 2023-06-26 18:17:27 +02:00
Erik Montnemery
02ad93db53 Use entity registry id in cover device conditions (#95253) 2023-06-26 18:14:23 +02:00
Erik Montnemery
e77a06412a Use entity registry id in humidifier device conditions (#95256) 2023-06-26 18:13:48 +02:00
Mick Vleeshouwer
de1b5626e1 Set explicit None for entity name in Overkiz when using device name (#95238) 2023-06-26 18:11:57 +02:00
dougiteixeira
39229ce098 Add the device of the source entity in the helper entities for Utility Meter (#94734)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-06-26 18:08:13 +02:00
dougiteixeira
403496eb92 Add the device of the source entity in the helper entities for Derivative (#94751)
* Adds the device of the original entity in the helper entities for Derivative

* Update

* Update
2023-06-26 18:06:25 +02:00
dougiteixeira
26016b29f7 Add the device of the source entity in the helper entities for Threshold (#94753) 2023-06-26 18:05:11 +02:00
G Johansson
537cc9ed86 Use new attributes in Met (#95099) 2023-06-26 18:04:10 +02:00
Erik Montnemery
89c9e72768 Use entity registry id in alarm_control_panel device actions (#95241) 2023-06-26 16:59:43 +02:00
Erik Montnemery
8e2ba81995 Add image platform to the template integration (#94928)
* Add image platform to the template integration

* Set a default name

* Fix typo

* Add tests

* Improve test coverage

* Derive content-type from fetched image
2023-06-26 15:54:51 +02:00
Erik Montnemery
8fda56d2c9 Stable entity registry id when a deleted entity is restored (#77710)
* Stable entity_id and registry id when a deleted entity is restored

* Don't restore area_id

* Don't restore entity_id

* Address review comments
2023-06-26 15:54:35 +02:00
Nalin Mahajan
f08f0fbb8b Fix control4 light switches on OS 3.3+ (#95196) 2023-06-26 15:49:44 +02:00
Franck Nijhof
5bd5ca8433 Add identify device class to button (#95244) 2023-06-26 15:46:37 +02:00
Jan Bouwhuis
1029bcbbd3 Add mqtt image platform (#94769)
* Add mqtt image platform

* Follow up comments

* Use separate topics

* Set last_ image to `None` on error

* Fix encoding and schema validation

* Assing None to last_image when get image fails

* Follow up comment

* Remove content_type validation

* Add validation

* Rename options according suggestions

* Remove url_topic / template feature from PR

* Always set content_type
2023-06-26 14:42:24 +02:00
Joost Lekkerkerker
7dae17a404 Add entity translations to Dremel 3D printer (#95234) 2023-06-26 14:37:04 +02:00
Pascal Vizeli
c75e831b65 Cosign support (#95236) 2023-06-26 14:32:02 +02:00
Dan
45ff9d8f63 Allow rounding two decimal places for Flume usage sensors (#95219) 2023-06-26 14:31:28 +02:00
Paulus Schoutsen
a31e899741 Pass correct parameter when resolving media via WS (#90897) 2023-06-26 14:24:12 +02:00
J. Nick Koston
021a39a09c Make deep sleep esphome entities unavailable on unexpected disconnect (#95211) 2023-06-26 14:21:45 +02:00
Joost Lekkerkerker
5a98155700 Add entity translations for EasyEnergy (#95235) 2023-06-26 14:17:15 +02:00
Joost Lekkerkerker
d14f04eb7e Move Aurora coordinator to separate file (#95130) 2023-06-26 12:52:31 +02:00
Marc Mueller
8ccb0c3e14 Update types packages (#95222) 2023-06-26 12:49:18 +02:00
J. Nick Koston
ad17a89531 Add additional coverage for ESPHome sensor and number (#95226) 2023-06-26 12:29:38 +02:00
Álvaro Fernández Rojas
74fb1ba51d Update aioairzone-cloud to v0.1.9 (#95155) 2023-06-26 12:02:32 +02:00
Erik Montnemery
a338e7e242 Use entity registry id in toggle_entity device automations (#94995)
* Use entity registry id in toggle_entity device automations

* Update tests

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-26 09:59:01 +02:00
Marc Mueller
408c613731 Update mypy to 1.4.1 (#95220) 2023-06-25 21:32:06 -05:00
J. Nick Koston
3b7095c63b Fix esphome not removing entities when static info changes (#95202)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-25 21:31:31 -05:00
Kevin Cathcart
d700415045 Support notification_id in notify.persistent_notification (#74822)
* Support notification_id in notify.persistent_notification

* Apply suggestions from code review

Co-authored-by: Scott Giminiani <ScottG489@Gmail.com>

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Scott Giminiani <ScottG489@Gmail.com>
2023-06-25 22:25:58 -04:00
J. Nick Koston
85d6e03dd3 Require newly configured esphome device to allow Home Assistant service calls (#95143)
* Require esphome service calls to be enabled

For existing devices, calling Home Assistant services continues
to be allowed.

For newly configured devices, it must now be enabled in the options
flow

* fix

* adjust

* coverage

* adjust

* fix test

* Update homeassistant/components/esphome/strings.json

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Update homeassistant/components/esphome/strings.json

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Update homeassistant/components/esphome/strings.json

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Update homeassistant/components/esphome/__init__.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Update homeassistant/components/esphome/__init__.py

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>

* Update homeassistant/components/esphome/__init__.py

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-06-25 21:18:21 -04:00
Matthias Alphart
f4756fe1f9 Update xknx to 2.11.0: Add support for Light DPT 9 color temperature (#95213)
Update xknx to 2.11.0
2023-06-25 21:05:35 -04:00
Allen Porter
1d9821efa2 Fix spelling mistake in script.py (#95210)
Update script.py
2023-06-25 21:00:50 -04:00
J. Nick Koston
c1045d6c82 Fix hass_storage not clearing task (#95209)
hass_storage would never allow another load if the
no data path was hit

discovered while writing tests for https://github.com/home-assistant/core/pull/95202
2023-06-25 19:54:02 -04:00
Maciej Bieniek
62e518badb Add new attributes to OpenWeatherMap weather entity (#95173)
* Add new attrs to current condition

* Add new attrs to forecast
2023-06-25 16:30:59 +02:00
G Johansson
67586caaf9 Cleanup ping (#95168) 2023-06-25 09:00:52 -05:00
J. Nick Koston
9051750add Cache entity translation lookups and keys (#95180) 2023-06-25 08:50:48 -05:00
Matthias Alphart
2ce23c17ca Update KNX frontend - add Group monitor telegram detail view (#95144)
* Use TelegramDict for WS communication

* Update knx_frontend
2023-06-25 14:58:08 +02:00
Joost Lekkerkerker
f84887d5f8 Use device class translations for Coolmaster (#95182) 2023-06-25 13:10:37 +02:00
Joost Lekkerkerker
dffe468ceb Use device class translations for Broadlink (#95183) 2023-06-25 13:01:22 +02:00
Joost Lekkerkerker
58ddd17495 Add entity translations to Deluge (#95184)
* Add entity translations to Deluge

* Update sensor.py

* Fix black
2023-06-25 12:59:04 +02:00
Allen Porter
528c206094 Add script specific error messages for response_variable (#95188) 2023-06-24 21:34:57 -07:00
J. Nick Koston
ef2e55ecec Add dual IP stack support to HomeKit (#94126)
* Add dual IP stack support to HomeKit

* fix tests

* Update homeassistant/components/network/__init__.py

* remove scopes

* Bump HAP-python to 4.7.0

fixes pairing with newer iOS

changelog: https://github.com/ikalchev/HAP-python/compare/v4.6.0...4.7.0

* fixes

* update tests

* Relocate get_announced_addresses from zeroconf to network

needed for #94126

* rename

* rename

* Update homeassistant/components/network/__init__.py

* Update homeassistant/components/network/__init__.py

* rename

* fix import

* coverage
2023-06-24 23:18:38 -04:00
J. Nick Koston
57a910a144 Relocate esphome entity code into its own module (#95092) 2023-06-24 23:12:36 -04:00
J. Nick Koston
79f9a8a257 Add test coverage for esphome lock platform (#95023) 2023-06-24 23:10:47 -04:00
J. Nick Koston
9eedc8a602 Fix esphome binary sensors when state is missing (#95140)
* Fix esphome binary sensors when state is missing

* Fix esphome binary sensors when state is missing

* Fix esphome binary sensors when state is missing
2023-06-24 23:09:26 -04:00
J. Nick Koston
c6b3d538de Remove deprecated non-native number support (#95178)
* Remove deprecated non-native number support

These were scheduled to be removed in 2022.10 but were left
in to give custom component authors a bit more time.

Its been a year since they were deprecated so its time
to remove the old code

https://developers.home-assistant.io/blog/2022/06/14/number_entity_refactoring/

* strip unneeded change from testing
2023-06-24 23:01:44 -04:00
Joost Lekkerkerker
fa334cf2bd Add entity translations to Big Ass Fans (#95136) 2023-06-24 19:00:20 -05:00
J. Nick Koston
c8430e4557 Bump aiooncue to 0.3.5 (#95148) 2023-06-24 15:12:02 -05:00
J. Nick Koston
74d342a000 Bump sense-energy to 0.12.0 (#95151) 2023-06-24 15:11:13 -05:00
J. Nick Koston
3ea26efac9 Retry solaredge on socket.gaierror (#95153) 2023-06-24 15:10:54 -05:00
J. Nick Koston
5059cee53f Reduce overhead to fire events (#95163) 2023-06-24 14:39:13 -05:00
J. Nick Koston
9354df975c Reduce overhead to set up and write entity state (#95162) 2023-06-24 14:16:28 -05:00
J. Nick Koston
7c49324f18 Bump aioesphomeapi to 14.1.1 (#95166) 2023-06-24 14:15:51 -05:00
Joost Lekkerkerker
e4a7c57b81 Use device class translations for Airly (#95115)
* Use device class translations for Airly

* Use device class translations for Airly

* Use device class translations for Airly
2023-06-24 13:13:36 +02:00
Franck Nijhof
a2f9caa482 Clean up device class based entity translations in Elgato (#95122)
* Clean up device class based entity translations in Elgato

* Update snapshots
2023-06-24 12:45:47 +02:00
Maciej Bieniek
fe9366eee6 Add new properties to the weather entity in Accuweather integration (#95110)
* Add new properties to the current conditions

* Add new properties to forecast

* Use existing constants

* Update tests
2023-06-24 12:38:20 +02:00
Allen Porter
b9b5fe6be8 Add service response data for listing calendar events (#94759)
* Add service response data for listing calendar events

Add the capability of response data for for the entity component.

* Rename input arguments and add service description

* Improve list events to be more user friendly

Allow the end date to be determined based on a relative time duration. Make the start time optional and set to "now". Add additional test coverage. Update demo calendar to actually perform date range checks.

* Wrap docstrings properly.

* Increase test coverage

* Update to use new API calls

* Readability improvements

* Wrap docstrings

* Require at least one of end or duration

* Check for multiple entity matches earlier in the request

* Update documentation strings
2023-06-23 23:34:34 -04:00
Michael Hansen
65454c945d Add VAD sensitivity option to VoIP devices (#94688)
* Add VAD sensitivity option to VoIP devices

* Use select entitiy for VAD sensitivity

* Add sensitivity to tests

* Add to assist pipeline tests

* Update homeassistant/components/assist_pipeline/select.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Update tests/components/voip/test_voip.py

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-23 23:28:13 -04:00
Paulus Schoutsen
c42d0feec1 Allow passing in device_id to pipeline run WS API (#95139) 2023-06-23 21:29:56 -05:00
Paulus Schoutsen
3f10233833 Add return value to conversation.process service (#94740)
* Add return value to conversation.process service

* Adjust for new API
2023-06-23 13:32:03 -04:00
Franck Nijhof
78222bd51c 2023.6.3 (#95119) 2023-06-23 19:08:57 +02:00
dougiteixeira
00075520c2 Add volatile_organic_compounds_parts to device class selector strings for Scrape (#95128)
Add  to device class selector strings for Scrape
2023-06-23 18:48:29 +02:00
Franck Nijhof
9f6dab0643 Remove incompatible config schema for Fully Kiosk 2023-06-23 17:56:25 +02:00
Franck Nijhof
31a2b2e3a9 Clean up device class based entity translations in Rituals Perfume Genie (#95124) 2023-06-23 17:24:57 +02:00
Franck Nijhof
4cf9beccd8 Bumped version to 2023.6.3 2023-06-23 16:46:52 +02:00
Matthias Alphart
8f9425f09f Fix KNX device trigger passing info data (#95076) 2023-06-23 16:46:33 +02:00
Marcel van der Veldt
0fa954040e Fix removal of orphaned Matter devices (#95044) 2023-06-23 16:46:30 +02:00
Hmmbob
e26b8e11d3 Fix goodwe midnight error (#95041) 2023-06-23 16:45:56 +02:00
Richard Kroegel
ced6968e85 Bump bimmer_connected to 0.13.7 (#95017) 2023-06-23 16:45:16 +02:00
Raman Gupta
44e7243e25 Fix zwave_js device diagnostics dump (#94999)
* Fix zwave_js device diagnostics dump

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* improve test

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-23 16:43:34 +02:00
Marcel van der Veldt
bbbc9f646f Bump Matter Server to 3.5.1: some small fixes and stability improvements (#94985) 2023-06-23 16:43:31 +02:00
epenet
cda784c969 Add error handling to hassio issues (#94951) 2023-06-23 16:43:28 +02:00
Quentame
34ef89b16b Fix Meteo France blocked config entry when weather alert API fails (#94911)
* Fix: do not block config entry when weather alert API fails

* PR review
2023-06-23 16:43:24 +02:00
Allen Porter
f8cfaa6147 Bump ical to 4.5.4 (#94894) 2023-06-23 16:43:21 +02:00
Álvaro Fernández Rojas
5da5522481 Update aioairzone to v0.6.4 (#94873) 2023-06-23 16:43:18 +02:00
Ernst Klamer
cee8004641 Bump bthome to 2.12.0 (#94822) 2023-06-23 16:43:15 +02:00
J. Nick Koston
e1751647f4 Bump HAP-python to 4.7.0 (#94812) 2023-06-23 16:43:11 +02:00
Austin Mroczek
f33d671a5d Fix Totalconnect BinarySensorDeviceClass logic (#94772)
* handle temperature

* test for temperature

* test for unknown
2023-06-23 16:43:07 +02:00
Jan Čermák
254b1fd314 Fix warning from rapt_ble caused by payload version 2 (#94718) 2023-06-23 16:43:04 +02:00
Raman Gupta
89c6494056 Fix zwave_js trigger event reattach logic (#94702) 2023-06-23 16:43:01 +02:00
Dirk Sarodnick
b52cfd3324 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-23 16:42:55 +02:00
Joost Lekkerkerker
6329f6bc07 Add strings for YouTube reauthentication (#94655) 2023-06-23 16:38:29 +02:00
Joost Lekkerkerker
57dd62e7d6 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-23 16:38:21 +02:00
Dominik
203820d836 Fix glances raid plugin data (#94597)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-23 16:38:14 +02:00
Dominik
e1c486fc4a Bump minimum typing_extensions to 4.6.3 (#94587) 2023-06-23 16:37:27 +02:00
Alistair Tudor
78bbec0a6e Fix unit for Habitica text sensors (#94550) 2023-06-23 16:35:33 +02:00
Tom Harris
ffe35c73b6 Handle Insteon events correctly (#94549)
Make events generalized
2023-06-23 16:35:30 +02:00
Joost Lekkerkerker
d2385f97a7 Handle LastFM unavailable (#94456) 2023-06-23 16:35:27 +02:00
Kim Frellsen
bd0b8dc0bc Fortios device tracker updates (#92331)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-06-23 16:35:24 +02:00
Mike Heath
3f936993a9 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-23 16:35:19 +02:00
Álvaro Fernández Rojas
cd66da0ab1 Add Airzone Cloud Binary Sensors support (#93583)
* airzone_cloud: add Binary Sensors support

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: binary_sensor: fix copy&paste

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: remote available attribute

This is not working as expected and will require minor library changes.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: binary_sensor: remove unique_id

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: binary_sensors: remove name

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: use entity_name

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: binary_sensor: add name=None

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: binary_sensor: fix device class name

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Update homeassistant/components/airzone_cloud/binary_sensor.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-06-23 16:32:40 +02:00
starkillerOG
2702124130 Motion blinds improve async_request_position_till_stop (#93304) 2023-06-23 16:26:34 +02:00
J. Nick Koston
85a9654e52 Remove signal strength device class from hunterdouglas_powerview (#95113) 2023-06-23 16:11:19 +02:00
Joost Lekkerkerker
8fd930ba87 Handle LastFM unavailable (#94456) 2023-06-23 15:34:37 +02:00
Franck Nijhof
4255cd6bbc Remove invalid Signal Strength device class from Ondilo (#95109) 2023-06-23 08:26:57 -05:00
Daniel Kent
983ff10541 Fix ESPHome color temperature precision for light entities (#91424)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-23 08:08:28 -05:00
G Johansson
91611bbd3b Add missing apparent temp in forecast (#95108) 2023-06-23 14:49:11 +02:00
Marc Mueller
6033f39a0d Partial revert "Add TypeVar defaults for DataUpdateCoordinator (#95026)" (#95101)
* Revert "Add TypeVar defaults for DataUpdateCoordinator and EntityComponent (#95026)"

This reverts commit 90f5b1c323.

* Don't revert everything
2023-06-23 14:42:34 +02:00
Dominik
239f5fe56b Fix glances raid plugin data (#94597)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-23 14:36:43 +02:00
Álvaro Fernández Rojas
e5c1ce65df Use entity name in Airzone Cloud sensors (#95102) 2023-06-23 14:26:38 +02:00
dependabot[bot]
e581d6c90b Bump Wandalen/wretry.action from 1.2.0 to 1.3.0 (#95098)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-23 14:20:17 +02:00
Franck Nijhof
167f4b475d Clean up device class based entity translations in Verisure (#95082) 2023-06-23 14:01:31 +02:00
J. Nick Koston
3d8bf33d03 Add test coverage for esphome alarm control panels (#95090) 2023-06-23 12:59:05 +01:00
G Johansson
9656173d5c Fix Smhi name (#95097)
smhi no name
2023-06-23 11:37:52 +02:00
G Johansson
071679f91f Use new attributes in Smhi (#95096) 2023-06-23 11:32:20 +02:00
G Johansson
5d365ecb6b Implement Wind Gust speed in Weather entity component (#95065)
* Weather wind gust speed

* strings

* No compat
2023-06-23 08:22:46 +02:00
Michael Hansen
d811fa0e74 Sentence trigger (#94613)
* Add async_register_trigger_sentences for default agent

* Add trigger response and trigger handler

* Check callback in test

* Clean up and move response to callback

* Add trigger test

* Drop TriggerAction

* Test we pass sentence to callback

* Match triggers once, allow multiple sentences

* Don't use trigger id

* Use async callback

* No response for now

* Use asyncio.gather for callback responses

* Fix after rebase

* Use a list for trigger sentences

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-22 18:29:34 -05:00
Arjan
29ef925d73 Add humidity to weather forecast (#95064)
* allow humidty in forecast

* Add tests

* float

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-06-23 00:22:07 +02:00
dougiteixeira
e5afff7f98 Add the device of the source entity in the helper entities for Riemann sum integral (#94727) 2023-06-23 00:04:51 +02:00
Jonas Bergler
3db8bcdd50 Bump pyemby to 1.9 (#94743) 2023-06-23 00:00:27 +02:00
Stephan Uhle
52a4561c7e Code quality update for EDL21 (#94885) 2023-06-22 23:58:43 +02:00
Guido Schmitz
d804d3fca3 Use snapshot for devolo Home Network diagnostics test (#94966) 2023-06-22 23:56:09 +02:00
Franck Nijhof
a48030f5dd Name unnamed buttons by their device class (#95084) 2023-06-22 23:51:41 +02:00
Franck Nijhof
e68916b2fc Name unnamed numbers by their device class (#95083) 2023-06-22 23:48:49 +02:00
G Johansson
893b74d77e Add missing test for Apparent temperature in Weather component (#95080) 2023-06-22 23:19:51 +02:00
G Johansson
eafddaae83 Implement Cloud coverage in Weather entity component (#95068) 2023-06-22 23:10:36 +02:00
G Johansson
b8de7df609 Implement dew point in weather entity component (#95072) 2023-06-22 21:34:23 +02:00
J. Nick Koston
fe71ed8c50 Add esphome media player tests (#95069) 2023-06-22 21:28:58 +02:00
J. Nick Koston
3d12c7409d Add basic light tests to esphome (#95029) 2023-06-22 21:22:29 +02:00
Matthias Alphart
733bca88f1 Fix KNX device trigger passing info data (#95076) 2023-06-22 21:13:10 +02:00
J. Nick Koston
66b2214c55 Add esphome sensor tests (#95077) 2023-06-22 21:02:47 +02:00
J. Nick Koston
c7f2dab13c Add climate tests to esphome (#95045) 2023-06-22 20:31:55 +02:00
J. Nick Koston
dd0e6d6481 Migrate esphome media_player platform to use _on_static_info_update (#95071) 2023-06-22 19:57:09 +02:00
J. Nick Koston
1cf4a008c3 Add coverage for binary_sensor platform to esphome (#95067) 2023-06-22 19:55:28 +02:00
G Johansson
6ad3b60adf Implement Apparent temperature in Weather entity component (#95070) 2023-06-22 19:52:14 +02:00
Michael Hansen
38614bc3f0 Add websocket command to test intent recognition for default agent (#94674)
* Add websocket command to test intent recognition for default agent

* Return results as a list

* Only check intent name/entities in test

* Less verbose output in debug API
2023-06-22 12:24:59 -04:00
J. Nick Koston
1459bf4011 Fix async_scanner_devices_by_address unexpectedly combining Bluetooth scanners (#94990) 2023-06-22 16:50:21 +02:00
Joost Lekkerkerker
6ec6369c27 Add entity translations to AirThings BLE (#95061) 2023-06-22 16:46:06 +02:00
Raman Gupta
5265584159 Fix zwave_js device diagnostics dump (#94999)
* Fix zwave_js device diagnostics dump

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* Update tests/components/zwave_js/test_diagnostics.py

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

* improve test

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-22 10:10:36 -04:00
Joost Lekkerkerker
6ceb973606 Add entity translations for Abode (#94169) 2023-06-22 16:03:28 +02:00
Joost Lekkerkerker
8e93045857 Add entity translations to Airthings (#95052) 2023-06-22 16:02:45 +02:00
Joost Lekkerkerker
acdf309c47 Add entity translations for Aladdin Connect (#95051) 2023-06-22 16:01:51 +02:00
Quentame
ede84d74c7 Fix Meteo France blocked config entry when weather alert API fails (#94911)
* Fix: do not block config entry when weather alert API fails

* PR review
2023-06-22 15:59:48 +02:00
Joost Lekkerkerker
c503becd9a Make AirNow use device class (#94986) 2023-06-22 15:58:14 +02:00
Petro31
e4c8a94aaf Add persistent_notification.dismiss_all service call (#95004) 2023-06-22 14:27:18 +02:00
Jan Bouwhuis
3c86497bc8 Improve mqtt climate turn_on and turn_off service (#94832)
* Improve mqtt climate turn_on and turn_off service

* Remove POWER_COMMAND_TOPIC when mode is changed

* Call super
2023-06-22 13:46:14 +02:00
Joost Lekkerkerker
8987e023a0 Add entity translations for Acmeda (#94170) 2023-06-22 12:01:33 +02:00
Joost Lekkerkerker
04dc85b754 Use device class for AirQ entities (#95037) 2023-06-22 11:56:44 +02:00
Franck Nijhof
e2f5a707ce Fix use_device_name in case device device class translations are used (#95010)
Co-authored-by: Erik <erik@montnemery.com>
2023-06-22 11:30:19 +02:00
J. Nick Koston
ed55632a66 Add esphome fan platform tests and remove unreachable code (#95025) 2023-06-22 11:29:59 +02:00
J. Nick Koston
cd5fdb97c0 Small cleanups to esphome sensor and binary_sensor (#95042) 2023-06-22 11:14:33 +02:00
Erik Montnemery
5884afd485 Teach sensor device trigger about entity registry ids (#94988) 2023-06-22 11:13:54 +02:00
Marcel van der Veldt
3863c561a6 Fix removal of orphaned Matter devices (#95044) 2023-06-22 11:13:14 +02:00
J. Nick Koston
8f6cde5b32 Migrate esphome lock platform to use _on_static_info_update (#95030) 2023-06-22 11:07:51 +02:00
Franck Nijhof
69c2ac1fac Update requests_mock to 1.11.0 (#94298) 2023-06-22 09:46:03 +02:00
J. Nick Koston
adc2df6b8e Callback esphome EntityInfo by platform instead of all platforms (#95021) 2023-06-22 09:39:48 +02:00
dependabot[bot]
05c25d2349 Bump Wandalen/wretry.action from 1.0.36 to 1.2.0 (#95035)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-22 09:38:32 +02:00
Hmmbob
3b24a943ab Fix goodwe midnight error (#95041) 2023-06-22 09:35:53 +02:00
J. Nick Koston
27da7d68de Migrate esphome fan platform to use _on_static_info_update (#95031) 2023-06-22 09:07:13 +02:00
J. Nick Koston
b700400183 Migrate esphome select platform to use _on_static_info_update (#95022) 2023-06-22 09:05:57 +02:00
Erik Montnemery
e204e80528 Teach vacuum device trigger about entity registry ids (#94989) 2023-06-22 08:20:59 +02:00
Marc Mueller
90f5b1c323 Add TypeVar defaults for DataUpdateCoordinator and EntityComponent (#95026) 2023-06-22 03:33:23 +02:00
J. Nick Koston
65a5244d5a Fix race and add test coverage for esphome select platform (#95019) 2023-06-22 01:19:47 +02:00
Richard Kroegel
ef2669afe4 Bump bimmer_connected to 0.13.7 (#95017) 2023-06-22 00:17:13 +02:00
Marcel van der Veldt
b5084dbce2 Bump Matter Server to 3.5.1: some small fixes and stability improvements (#94985) 2023-06-21 23:57:33 +02:00
Erik Montnemery
f10256169b Teach homekit about entity registry ids in device triggers (#95009) 2023-06-21 23:28:43 +02:00
J. Nick Koston
235f50a341 Migrate esphome button platform to use _on_static_info_update (#95007) 2023-06-21 22:24:26 +02:00
J. Nick Koston
8d2daaa694 Limit cache size of EntityValues (#94983) 2023-06-21 22:23:35 +02:00
J. Nick Koston
90386bc036 Reduce overhead to fetch unifiprotect attributes (#94976) 2023-06-21 21:41:06 +02:00
Jan Bouwhuis
31f845bfe0 Add current_humidity attribute to mqtt humidifier (#94955) 2023-06-21 19:19:26 +02:00
Joost Lekkerkerker
492ed1b544 Remove superclass from YouTube (#95002) 2023-06-21 18:49:23 +02:00
Joost Lekkerkerker
6230a51695 Remove superclass from GMail Authentication (#95001) 2023-06-21 18:47:53 +02:00
Barry Williams
57c9aad9b1 Migrate Linn / Openhome integration to SSDP config flow (#94564)
* Migrate Linn / Openhome integration to SSDP config flow

* moved device initialisation into __init__

* wait for user step before adding openhome entities

* add CONFIG_SCHEMA

* cover confirmation step in config flow test

* Address comments

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-21 12:46:17 -04:00
centertivevier
61554682d4 Bump slixmpp to 1.8.4 (#94944) 2023-06-21 18:10:30 +02:00
Marc Mueller
86792fcc2f Update mypy to 1.4.0 (#94987) 2023-06-21 16:12:51 +02:00
Erik Montnemery
c8cd469c95 Teach media_player device trigger about entity registry ids (#94979) 2023-06-21 16:09:28 +02:00
J. Nick Koston
367644afe1 Migrate esphome switch platform to use _on_static_info_update (#94962) 2023-06-21 15:41:24 +02:00
J. Nick Koston
e24c2ae55c Avoid fetching both unifiprotect RTSP urls (#94978) 2023-06-21 15:14:57 +02:00
Martin Hjelmare
f9366e5cc7 Migrate google translate to config entries (#93803)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-21 14:58:58 +02:00
Erik Montnemery
22e1feb223 Teach humidifier device trigger about entity registry ids (#94974) 2023-06-21 14:58:11 +02:00
J. Nick Koston
1cb62d776e Migrate esphome cover platform to use _on_static_info_update (#94959) 2023-06-21 14:54:56 +02:00
Erik Montnemery
af97857c87 Teach select device trigger about entity registry ids (#94981) 2023-06-21 14:51:39 +02:00
Erik Montnemery
7f0be78ebb Teach netatmo device trigger about entity registry ids (#94980) 2023-06-21 14:51:24 +02:00
Erik Montnemery
e404441e8c Teach lock device trigger about entity registry ids (#94975) 2023-06-21 14:51:09 +02:00
Erik Montnemery
20be441c9f Teach device_tracker device trigger about entity registry ids (#94972) 2023-06-21 14:51:00 +02:00
Erik Montnemery
49c7d2ff89 Teach cover device trigger about entity registry ids (#94971) 2023-06-21 14:50:40 +02:00
Erik Montnemery
f3defff429 Teach climate device trigger about entity registry ids (#94969) 2023-06-21 14:50:21 +02:00
Erik Montnemery
49ec806046 Teach button device trigger about entity registry ids (#94965)
* Teach button device trigger about entity registry ids

* Update homekit_controller tests
2023-06-21 14:50:11 +02:00
Erik Montnemery
4414f06ed2 Teach binary_sensor device trigger about entity registry ids (#94963)
* Teach binary_sensor device trigger about entity registry ids

* Update deconz test
2023-06-21 14:49:53 +02:00
J. Nick Koston
9d91cfa27f Migrate esphome number platform to use _on_static_info_update (#94958) 2023-06-21 13:13:29 +02:00
J. Nick Koston
9876abcac9 Migrate esphome light platform to use _on_static_info_update (#94960) 2023-06-21 12:31:14 +02:00
Kyle Hildebrandt
dcf8db36b7 Use yt-dlp instead of youtube-dl (#94625)
* Update to use yt-dlp instead of youtube-dl

* Update homeassistant/components/media_extractor/__init__.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-21 12:16:58 +02:00
Erik Montnemery
732ce34a66 Remove assert_lists_same test helper (#94904) 2023-06-21 12:10:28 +02:00
Maciej Bieniek
05039036f1 Add compatibility with sleeping Shelly gen2 devices with firmware 1.0.0 (#94864) 2023-06-21 12:01:17 +02:00
RoboMagus
3bacd9df2f Add trigger for persistent_notification (#94809)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-21 11:55:06 +02:00
J. Nick Koston
605c4db142 Relocate async_get_announce_addresses from zeroconf to network (#94816) 2023-06-21 11:29:04 +02:00
Jan Bouwhuis
c47543c9dd Add current_humidity attribute to tuya (de)humidifiers (#94953)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-06-21 11:28:12 +02:00
Joost Lekkerkerker
30453f6982 Add entity translations for Adguard (#94171) 2023-06-21 11:26:24 +02:00
Erik Montnemery
b254218dd6 Remove base_url configuration option from tts (#94905) 2023-06-21 11:20:33 +02:00
Joost Lekkerkerker
83c478105b Add entity translations for huisbaasje (#94116) 2023-06-21 11:18:55 +02:00
G Johansson
aec946e93a Improve description in Workday config flow (#94945) 2023-06-21 11:17:36 +02:00
epenet
60b78f4648 Add error handling to hassio issues (#94951) 2023-06-21 11:17:11 +02:00
Erik Montnemery
1d18fdf7bd Improve alarm_control_panel device trigger tests (#94956) 2023-06-21 11:11:07 +02:00
J. Nick Koston
804a8ef36a Reduce overhead to update esphome entities (#94930) 2023-06-21 11:00:21 +02:00
Guido Schmitz
933ae5198e Refactor devolo_home_network tests (#88706)
* Refactor devolo_home_network tests

* Reduce to snapshot introduction

* Simplify

* Update snapshots

* Simplify further
2023-06-21 10:21:36 +02:00
J. Nick Koston
f8bef95eb6 Reduce code in entity filter (#94882) 2023-06-21 08:37:19 +01:00
Quentame
31e9d95f66 Fix Netgear comment typo (#94927) 2023-06-21 08:23:22 +02:00
Leandro Loureiro
1e078d5868 Bump arcam_fmj lib to 1.4.0 to support Arcam ST60 (#94942)
bumping arcam_fmj lib to 1.4.0
2023-06-21 01:43:02 +02:00
Erik Montnemery
863b948e7c Correct calls to super class in RecorderPool (#94923) 2023-06-20 23:26:37 +02:00
Erik Montnemery
446a820cbb Name unnamed sensors by their device class (#94646) 2023-06-20 23:09:24 +02:00
J. Nick Koston
b857dc8d94 Bump HAP-python to 4.7.0 (#94812) 2023-06-20 23:06:26 +02:00
Jan Bouwhuis
4def901ecc Ignore empty status update for mqtt number (#94800) 2023-06-20 23:04:01 +02:00
Erik Montnemery
3e71b1daa4 Correct calls to super class in TriggerEntity (#94916) 2023-06-20 23:00:22 +02:00
Erik Montnemery
16aa4c54ec Correct calls to super class in ZHADeviceScannerEntity (#94924) 2023-06-20 22:59:13 +02:00
Erik Montnemery
3c34e18130 Correct calls to super class in ZWaveConfigParameterSensor (#94925) 2023-06-20 22:58:34 +02:00
Jan Bouwhuis
a4399a4cb6 Add device trigger for humidifier current_humidity (#94926) 2023-06-20 22:57:44 +02:00
Erik Montnemery
d2d6389742 Improve storage helper typing (#94929) 2023-06-20 22:50:10 +02:00
Jan Bouwhuis
3b8feab699 Add current_humidity to humidifiers in google_assistant (#94935) 2023-06-20 22:49:10 +02:00
Jan Bouwhuis
d6b89b6f7b Add current_humidity attribute on homekit_controller humidifier (#94937) 2023-06-20 21:46:07 +01:00
Joost Lekkerkerker
d6dc738a12 Add entity translations for AirNow (#94175)
* Add entity translations for AirNow

* Restore keys

* Restore keys
2023-06-20 22:24:51 +02:00
Joost Lekkerkerker
18d0fe994d Add entity translations for AirQ (#94280) 2023-06-20 22:19:17 +02:00
Austin Mroczek
252c0e8ad9 Fix Totalconnect BinarySensorDeviceClass logic (#94772)
* handle temperature

* test for temperature

* test for unknown
2023-06-20 22:12:11 +02:00
Erik Montnemery
6183a36fce Replace assert_lists_same with pytest_unordered in integrations t-z (#94903) 2023-06-20 20:23:49 +02:00
Erik Montnemery
eba04824a4 Replace assert_lists_same with pytest_unordered in integrations n-s (#94902) 2023-06-20 20:23:14 +02:00
Erik Montnemery
6a29ed8caa Replace assert_lists_same with pytest_unordered in integrations a-f (#94900) 2023-06-20 20:22:31 +02:00
Erik Montnemery
fd822bce56 Replace assert_lists_same with pytest_unordered in integrations h-m (#94901) 2023-06-20 20:16:25 +02:00
Jan Bouwhuis
c4d7695173 Add current_humidity attribute to xiaomi_miio humidifiers (#94934) 2023-06-20 20:15:42 +02:00
Denis Shulyaka
1d2a973289 Generic hygrostat current humidity (#94912) 2023-06-20 20:10:21 +02:00
Erik Montnemery
45616b8127 Follow redirects in generic camera (#94931) 2023-06-20 20:07:12 +02:00
Erik Montnemery
b600c2cd85 Add cloud_connected method to CloudClient (#91997)
* Add cloud_connected method to CloudClient

* Add cloud_disconnected method

* Update client.py
2023-06-20 17:15:13 +02:00
Allen Porter
50605e62bd Bump ical to 4.5.4 (#94894) 2023-06-20 07:32:03 -07:00
J. Nick Koston
3f18f515e7 Improve websocket api coverage and typing (#94891) 2023-06-20 15:21:24 +01:00
J. Nick Koston
b51dcb600e Avoid enumerating the whole state machine to find zone entities (#94866) 2023-06-20 14:48:28 +01:00
Allen Porter
30e8f806c1 Improve service response data APIs (#94819)
* Improve service response data APIs

Make the API naming more consistent, and require registration that a
service supports response data so that we can better integrate with
the UI and avoid user confusion with better error messages.

* Improve test coverage

* Add an enum for registering response values

* Assign enum values

* Convert SupportsResponse to StrEnum

* Update service call test docstrings

* Add tiny missing full stop in comment

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-06-20 06:24:31 -07:00
Erik Montnemery
4a8adae146 Teach alarm_control_panel device trigger about entity registry ids (#60977)
* Teach alarm_control_panel device trigger about entity registry ids

* Lint code

* Address review comment
2023-06-20 08:27:31 -04:00
Erik Montnemery
2bc5198390 Bump hass-nabucassa to 0.68.0 (#94910)
* Bump hass-nabucassa to 0.68.0

* Add implementation of new abstract methods
2023-06-20 13:52:21 +02:00
Erik Montnemery
609a573b55 Regenerate instance ID on error (#94898) 2023-06-20 11:16:51 +02:00
J. Nick Koston
2b1660c0f7 Dispatch when esphome static info changes (#94876) 2023-06-20 09:45:30 +02:00
Denis Shulyaka
185aaa9e07 Humidifier current humidity (#94874) 2023-06-20 09:43:33 +02:00
RenierM26
2be5bab5e1 Ezviz library bump 0.2.1.2 (#94823) 2023-06-20 08:47:34 +02:00
Thomas Schamm
3cf88ffdde Bump boschshcpy to 0.2.57 (#94686) 2023-06-20 08:40:57 +02:00
James Smith
99cbf21c57 Add homeassistant.components.text to .strict-typing (#94890) 2023-06-20 08:28:27 +02:00
Matthias Alphart
a262cd2b96 Add source address early for KNX services (#94889) 2023-06-20 08:02:13 +02:00
Mariano Faraco
5d40edcf02 Bump ha-philipsjs to 3.1.0 (#94811) 2023-06-20 06:40:58 +02:00
Álvaro Fernández Rojas
6435837061 Update aioairzone to v0.6.4 (#94873) 2023-06-19 19:23:24 -05:00
Graham Brown
cecdc3bd47 ESPHome Alarm Control Panel (#92357) 2023-06-19 19:19:17 -05:00
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
Erik Montnemery
a7d327afa2 Improve test coverage of automation extraction functions (#94878) 2023-06-19 23:05:20 +02:00
Erik Montnemery
5d138b64d9 Improve test coverage of script (#94883) 2023-06-19 22:40:49 +02: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
Erik Montnemery
4f669b326f Fix typo in tts tests (#94725) 2023-06-16 21:08:14 -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
Erik Montnemery
92bba4d7be Fix typo in binary_sensor tests (#94712) 2023-06-16 13:57:42 +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
J. Nick Koston
298f763f12 Drop codeowner for myq (#94699)
All of my garage doors have been migrated to using
https://esphome-ratgdo.github.io/esphome-ratgdo/

All of my gates have been migrated to using a
KC868-A4 board https://www.kincony.com/kc868-a4-digital-input-trigger-relay-output-esphome.html

I no longer use myq in production as there is now a
viable esphome replacement every place I was using
myq
2023-06-15 21:15:33 -04:00
Jan Bouwhuis
5e55f83cbc Correct imap sensor measurement class and add suggested precision (#94060)
* Fix imap sensor measurement class and precision

* Test measurement class is set correctly

* Remove unrelated changes

* Move EntityDescription to module level
2023-06-16 00:44:58 +02:00
Michał Modzelewski
b104680c6d Bump pyatv to 0.13.0 (#94683) 2023-06-15 11:57:36 -10:00
Franck Nijhof
21bdcd6b63 Remove str as a valid HVACMode & HVACAction type (#94644)
* Remove str as a valid HAVCMode type

* Adjust pylint plugin

* Also remove str from hvac_action property method
2023-06-15 20:16:17 +02:00
Franck Nijhof
324bd9a97a Fix HAVCAction typing in Atag (#94656) 2023-06-15 18:43:56 +02:00
Franck Nijhof
81d46fe2b2 Fix HAVCAction typing in Balboa Spa Client (#94658) 2023-06-15 18:43:32 +02:00
Franck Nijhof
68f87fe42a Fix HAVCAction typing in Genius Hub (#94659) 2023-06-15 18:43:11 +02:00
Franck Nijhof
7e5a9ea6c7 Fix HAVCAction typing in Overkiz (#94660) 2023-06-15 18:42:46 +02:00
Kim Frellsen
562f0d3c52 Fortios device tracker updates (#92331)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-06-15 15:34:14 +02:00
Franck Nijhof
a7955e4458 Fix HAVCMode typing in Elk-M1 Control (#94639) 2023-06-15 15:27:49 +02:00
Franck Nijhof
d78429ad95 Use HAVCMode enum in Atag climate (#94634) 2023-06-15 14:14:25 +02:00
Franck Nijhof
204833b745 Fix HAVCMode typing in Rheem EcoNet (#94637) 2023-06-15 14:13:59 +02:00
Franck Nijhof
998a45879e Use HAVCMode enum in BSB-Lan climate (#94638) 2023-06-15 14:13:20 +02:00
Franck Nijhof
908f3386e7 Fix HAVCMode typing in ESPHome (#94630) 2023-06-15 14:12:11 +02:00
Franck Nijhof
6f106e6505 Fix HAVCMode typing in AVM FRITZ!SmartHome (#94642) 2023-06-15 14:11:18 +02:00
Franck Nijhof
e899cb3caa Fix HAVCMode typing in Genius Hub (#94640) 2023-06-15 14:08:38 +02:00
Franck Nijhof
b1abe6812b Fix HAVCMode typing in Honeywell Total Connect Comfort (#94636) 2023-06-15 14:07:41 +02:00
Franck Nijhof
e49f1b002f Fix HAVCMode typing in Fibaro (#94641) 2023-06-15 14:07:08 +02:00
Franck Nijhof
1d3a7512d8 Fix HAVCMode typing in Overkiz (#94632) 2023-06-15 14:06:06 +02:00
Franck Nijhof
886dea59c3 Fix HAVCMode typing in Tuya (#94631) 2023-06-15 14:05:08 +02:00
Franck Nijhof
6c4fe9fc3b Fix HAVCMode typing in Intellifire (#94633) 2023-06-15 14:04:38 +02:00
Dominik
64d914d56d Bump minimum typing_extensions to 4.6.3 (#94587) 2023-06-15 12:30:52 +02:00
Erik Montnemery
334dacc322 Change Entity.name default to UNDEFINED (#94574)
* Change Entity.name default to UNDEFINED

* Update typing

* Update Pylint plugin

* Update TTS test
2023-06-15 11:09:53 +02:00
J. Nick Koston
d369d679c7 Fix ESPHome entries reloading after startup when dashboard is in use (#94362) 2023-06-14 21:16:39 -10:00
epenet
580b09d0f2 Refactor XML parsing in rest (#94268)
* Refactor XML parsing in rest

* Adjust caplog check

* Adjust

* Rename

* Simplify
2023-06-15 09:15:25 +02:00
Paulus Schoutsen
e5c5790768 2023.6.2 (#94621) 2023-06-15 00:19:30 -04:00
Aidan Timson
61d260e5fe Add CPU Power to System Bridge (#80781)
* Add CPU Power to System Bridge

* Rename

* Update homeassistant/components/system_bridge/sensor.py

Co-authored-by: Aarni Koskela <akx@iki.fi>

* Fix unit

* Add suggested_display_precision=2

---------

Co-authored-by: Aarni Koskela <akx@iki.fi>
2023-06-14 21:47:50 -04:00
J. Nick Koston
2a5ffa9a5b Fix timestamps for bluetooth scanners that bundle advertisements (#94511)
#94138 added support for raw/bundled advertisements. We should use the
same monotonic time for all advertisements in the bundle if not time
is passed, or calculate the timestamp and pass it if its known
2023-06-14 21:47:00 -04:00
puddly
22dfa8797f Bump ZHA dependencies (#93989)
* Make `find_entity_id` synchronous

* Remove `tries`

* Use new `attribute_updated` event signature

* Validate attributes before creating entities

* Avoid swallowing exceptions when opening covers

* Bump ZHA dependencies

* Add a matcher for Sinope water leak sensors using a non-standard ZCL attribute

* Ensure handler matching is strict, not multi

* Add type annotations for newly-updated functions
2023-06-14 21:42:31 -04:00
J. Nick Koston
584967a35a Avoid double call to self.suggested_unit_of_measurement in sensor unit_of_measurement (#94582) 2023-06-14 21:33:05 -04:00
J. Nick Koston
e0ae7a31fe Remove _raw from zeroconf properties (#94615)
* Remove _raw from zeroconf properties

This was added in #31059 but it appears it was never used.

To preserve backwards compatibility, properties are still decoded
but utf-8 errors are replaced instead of dropped

* Remove _raw from zeroconf properties

This was added in #31059 but it appears it was never used.

To preserve backwards compatibility, properties are still decoded
but utf-8 errors are replaced instead of dropped
2023-06-14 21:31:52 -04:00
Paulus Schoutsen
905bdd0dd5 Bumped version to 2023.6.2 2023-06-14 21:18:40 -04:00
Erik Montnemery
9cbcfca2cd Improve multipan debug logging (#94580) 2023-06-14 21:18:35 -04:00
Chris Talkington
e6b8e4fd48 Fix failed recovery in ipp (#94573) 2023-06-14 21:18:34 -04:00
Chris Talkington
8f437c5833 Fix failed recovery in roku (#94572) 2023-06-14 21:18:33 -04:00
Ian Foster
d28d909114 Fix keyboard_remote for python 3.11 (#94570)
* started work to update keyboard_remote to work with python 3.11

* updated function names

* all checks pass

* fixed asyncio for python 3.11

* cleanup

* Update homeassistant/components/keyboard_remote/__init__.py

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

* Update __init__.py

added:
from __future__ import annotations

* Fix typing

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-14 21:18:32 -04:00
Maciej Bieniek
f67577ebe0 Catch InvalidAuthError in shutdown() method for Shelly gen2 devices (#94563)
* Catch InvalidAuthError in shutdown() method

* Add test

* Revert unwanted change in tests
2023-06-14 21:18:31 -04:00
Franck Nijhof
70d33129d4 Update Home Assistant base image to 2023.06.0 (#94556) 2023-06-14 21:18:29 -04:00
Aaron Bach
a63ce8100e Bump regenmaschine to 2023.06.0 (#94554) 2023-06-14 21:18:28 -04:00
J. Nick Koston
d557c6e43e Bump yalexs-ble to 2.1.18 (#94547) 2023-06-14 21:18:27 -04:00
Raman Gupta
fd0404bb4a Fix entity and device selector TypedDict's (#94510) 2023-06-14 21:18:26 -04:00
Chris Phillips
576cf52573 Bump russound_rio to 1.0.0 (#94500) 2023-06-14 21:17:51 -04:00
mover85
e83f0bb7a5 Revert "Bump pydaikin 2.9.1 (#93635)" (#94469)
Revert to pydaikin 2.9.0
2023-06-14 21:17:08 -04:00
Raman Gupta
fa8e952324 Set default value for endpoint in zwave device automations (#94445)
* Set default value for endpoint in zwave device automations

* add test case
2023-06-14 21:17:07 -04:00
G Johansson
25a4679266 Fix reload service in Command Line (#94436)
* Fix reload in Command Line

* Add read new yaml
2023-06-14 21:17:06 -04:00
G Johansson
f5aa4f5866 Fix manual update for Command Line (#94433)
Manual update command line
2023-06-14 21:17:04 -04:00
Yuxin Wang
0083649e43 Add unit inference for Amps and VA in APCUPSD integration (#94431)
* Add unit inference for Amps and VA

* Rename `init_integration` to `async_init_integration` for better consistency with HA naming style
2023-06-14 21:17:03 -04:00
Sander
2505de35c9 Fix: Xiaomi Miio Fan, delay off countdown unit conversion (#94428) 2023-06-14 21:17:02 -04:00
Christopher Bailey
238eebb0b6 Bump unifiprotect to 4.10.3 (#94416)
* Bump unifiprotect to 4.10.3

* Reqs
2023-06-14 21:17:01 -04:00
Matthias Alphart
4cb30e69ac Update knx-frontend to 2023.6.9.195839 (#94404) 2023-06-14 21:16:19 -04:00
Joost Lekkerkerker
ac00977e57 Abort youtube configuration if user has no channel (#94402)
* Abort configuration if user has no channel

* Clean up

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-14 21:15:21 -04:00
jasonkuster
b2db849798 Fix ZHA binding api to actually return responses (#94388) 2023-06-14 21:15:20 -04:00
Raman Gupta
2c7a176580 Re-add event listeners after Z-Wave server disconnection (#94383)
* Re-add event listeners after Z-Wave server disconnection

* switch order

* Add tests
2023-06-14 21:15:19 -04:00
Matthias Alphart
4dbc408696 Update xknxproject to 3.1.1 (#94375) 2023-06-14 21:14:42 -04:00
Sebastian Muszynski
582fd11a70 Fix deprecated asyncio.wait use with coroutines (#94371) 2023-06-14 21:13:25 -04:00
Jan Bouwhuis
96cb5ff8b0 Fix dep noaa-coops for noaa_tides (#94370)
Bump noaa-coops to 0.1.9
2023-06-14 21:13:23 -04:00
Jafar Atili
6029e23ab7 fix: electrasmart - cast temperature to int in set_temperature (#94368)
fix: cast temperature to int
2023-06-14 21:13:22 -04:00
Jonathan Keljo
3434d74993 Upgrade sisyphus-control to 3.1.3 (#94310) 2023-06-14 21:13:21 -04:00
Nathan Spencer
e091793b6c Bump pylitterbot to 2023.4.2 (#94301) 2023-06-14 21:13:20 -04:00
Glenn Waters
9c8444da0e Bump elkm1-lib to 2.2.5 (#94296)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-14 21:13:19 -04:00
Tom Harris
427f0f4bee Fix issue with Insteon linked devices maintaining current state (#94286)
* Bump pyinsteon

* Update tests
2023-06-14 21:13:18 -04:00
FFT
95528f875e Change pyoppleio to pyoppleio-legacy (#88050)
* Change pyoppleio to pyoppleio-310 (#75268)

* [m] change opple component's dependency to a new working one
2023-06-14 21:13:17 -04:00
Maciej Bieniek
7b3f100efb Catch InvalidAuthError in shutdown() method for Shelly gen2 devices (#94563)
* Catch InvalidAuthError in shutdown() method

* Add test

* Revert unwanted change in tests
2023-06-15 00:00:21 +03:00
disforw
a79e37c240 Add coordinator to QNAP (#94413)
* Create coordinator.py

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update homeassistant/components/qnap/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Add import

* Update coordinator.py

* Update coordinator.py

* Add platformnotready

* Walrus

* Update sensor.py

* Undo walres

CI didnt like it

* Update coordinator.py black fix

* Update sensor.py fix black

* Update sensor.py fix ruff

* Update coordinator.py fix lint

* Update sensor.py fix ruff

* Update homeassistant/components/qnap/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update sensor.py

* Update coordinator.py

* Update coordinator.py

* Update sensor.py

* Update homeassistant/components/qnap/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update sensor.py

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-14 22:42:49 +02:00
J. Nick Koston
b149fffa08 Bump bluetooth-data-tools to 1.1.0 (#94610)
Bume bluetooth-data-tools to 1.1.0

performance improvements

https://github.com/Bluetooth-Devices/bluetooth-data-tools/compare/v1.0.0...v1.1.0
2023-06-14 22:25:26 +02:00
Ian Foster
e998320053 Fix keyboard_remote for python 3.11 (#94570)
* started work to update keyboard_remote to work with python 3.11

* updated function names

* all checks pass

* fixed asyncio for python 3.11

* cleanup

* Update homeassistant/components/keyboard_remote/__init__.py

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

* Update __init__.py

added:
from __future__ import annotations

* Fix typing

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-14 22:06:55 +02:00
Erik Montnemery
e539344d22 Set has_entity_name in mill (#94605) 2023-06-14 21:45:14 +02:00
Erik Montnemery
cc53e4e6c1 Set has_entity_name in kodi (#94604)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-14 21:44:17 +02:00
Erik Montnemery
fa9c31d3db Set has_entity_name in freedompro (#94603)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-14 21:42:51 +02:00
Erik Montnemery
c48afebbfc Set has_entity_name in electrasmart (#94602)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-14 21:41:53 +02:00
Erik Montnemery
fc068f878b Minor adjustment in sharkiq, webostv, ws66i (#94611) 2023-06-14 21:41:32 +02:00
Michael Hansen
5c3ec8774d Fix async_timeout deprecation warning (#94594)
* Fix async_timeout deprecation warning

* Combine async with
2023-06-14 14:26:24 -05:00
Erik Montnemery
7fbeac9bbe Set has_entity_name in webostv (#94607)
* Set has_entity_name in webostv

* Fix log message
2023-06-14 22:11:09 +03:00
Erik Montnemery
f68ed8b7a0 Always setup demo platforms with device support from config entry (#94601)
* Always setup demo platforms with device support from config entry

* Update tests depending on the demo integration
2023-06-14 21:03:07 +02:00
Erik Montnemery
c5fccffbb3 Set has_entity_name in sharkiq (#94606) 2023-06-14 21:02:00 +02:00
Erik Montnemery
3424e927cb Set has_entity_name in ws66i (#94608) 2023-06-14 20:49:23 +02:00
J. Nick Koston
a0c023d5cb Reduce overhead to lookup items in the entity and device registry (#94568) 2023-06-14 20:47:18 +02:00
Niclas Kühnapfel
de62082605 Update solax to 0.3.2 (#94545)
* solax: update to 0.3.2

* Update solax dependencies
2023-06-14 16:52:43 +02:00
Erik Montnemery
9a3077d64a Always setup demo platforms with device support from config entry (#94586)
* Always setup demo platforms with device support from config entry

* Adjust test fixutres

* Update tests depending on the demo integration
2023-06-14 16:50:35 +02:00
Erik Montnemery
1b8c72e644 Remove legacy STT provider from the demo integration (#94585) 2023-06-14 14:55:50 +02:00
Erik Montnemery
e5b2801f5b Fix ZHA tests (#94588) 2023-06-14 14:21:34 +02:00
dupondje
4ac2dd3de7 Bump python devcontainer (#94540) 2023-06-14 11:38:47 +02:00
Erik Montnemery
bd156bb129 Improve multipan debug logging (#94580) 2023-06-14 10:26:54 +02:00
Chris Talkington
6a75f69e0f Fix failed recovery in ipp (#94573) 2023-06-13 21:07:24 -10:00
Chris Talkington
508cd7ef7e Fix failed recovery in roku (#94572) 2023-06-13 21:07:03 -10:00
Franck Nijhof
66400fca0d Update Home Assistant base image to 2023.06.0 (#94556) 2023-06-13 22:27:14 +02:00
Franck Nijhof
d5be77b53d Update sentry-sdk to 1.25.1 (#94374) 2023-06-13 22:10:56 +02:00
Aaron Bach
08262f480b Bump regenmaschine to 2023.06.0 (#94554) 2023-06-13 21:37:56 +02:00
Chris Phillips
ddf004d5c7 Bump russound_rio to 1.0.0 (#94500) 2023-06-13 21:37:30 +02:00
Erik Montnemery
2406b235b4 Name unnamed binary sensors by their device class (#92940)
* Name unnamed binary sensors by their device class

* Update type annotations

* Fix loading of entity component translations

* Add test

* Update integrations

* Set abode and rfxtrx binary_sensor name to None

* Revert changes in homekit_controller
2023-06-13 19:48:54 +02:00
J. Nick Koston
223394eaee Bump bluetooth-data-tools to 1.0.0 (#94145) 2023-06-13 06:42:10 -10:00
J. Nick Koston
985fb3cd5d Bump yalexs-ble to 2.1.18 (#94547) 2023-06-13 18:32:43 +02:00
Yuxin Wang
b1bdd92383 Add unit inference for Amps and VA in APCUPSD integration (#94431)
* Add unit inference for Amps and VA

* Rename `init_integration` to `async_init_integration` for better consistency with HA naming style
2023-06-13 16:38:56 +02:00
Nathan Spencer
47995fc274 Bump pylitterbot to 2023.4.2 (#94301) 2023-06-13 11:51:46 +02:00
Joakim Sørensen
889f3c36fc Adjust default name in backup service calls to match documentation (#94468) 2023-06-13 11:41:53 +02:00
Erik Montnemery
771a73c034 Add missing callback decorator to event helpers (#94483) 2023-06-13 11:16:43 +02:00
Raman Gupta
aab58ad89c Fix entity and device selector TypedDict's (#94510) 2023-06-13 10:52:55 +02:00
J. Nick Koston
0d1bcd8a8f Bump httpcore to 0.17.2 (#94515) 2023-06-13 10:38:51 +02:00
J. Nick Koston
8a1ca0a3f5 Bump zeroconf to 0.66.0 (#94512) 2023-06-13 10:38:26 +02:00
J. Nick Koston
d2fa6435da Bump lru-dict to 1.2.0 (#94513) 2023-06-13 10:37:59 +02:00
J. Nick Koston
829ca7c567 Bump orjson to 3.9.1 (#94514) 2023-06-13 10:36:56 +02:00
J. Nick Koston
e8c87874b3 Bump anyio to 3.7.0 (#94516) 2023-06-13 10:36:25 +02:00
dependabot[bot]
fd9b273f46 Bump dessant/lock-threads from 4.0.0 to 4.0.1 (#94523)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 10:33:21 +02:00
FFT
5d8a50baf0 Change pyoppleio to pyoppleio-legacy (#88050)
* Change pyoppleio to pyoppleio-310 (#75268)

* [m] change opple component's dependency to a new working one
2023-06-13 08:46:58 +02:00
Raman Gupta
f3ca3a8ee0 Set default value for endpoint in zwave device automations (#94445)
* Set default value for endpoint in zwave device automations

* add test case
2023-06-12 21:34:09 -04:00
Allen Porter
8e08338118 Bump google-nest-sdm to 2.2.5 (#94398) 2023-06-12 21:58:19 +02:00
G Johansson
bd74f03d0b Fix reload service in Command Line (#94436)
* Fix reload in Command Line

* Add read new yaml
2023-06-12 21:51:57 +02:00
G Johansson
f931cc3d1c Fix manual update for Command Line (#94433)
Manual update command line
2023-06-12 21:50:23 +02:00
Erik Montnemery
af6dac8584 Remove unnecessary condition from edl21 sensor (#94493) 2023-06-12 21:48:49 +02:00
Erik Montnemery
d51982f12f Add missing assert to test_async_remove_ignores_in_flight_polling (#94487) 2023-06-12 21:48:12 +02:00
Jan Bouwhuis
82b9a31ea7 Improve logging of mqtt discovery message errors (#94491)
* Improve logging on mqtt discovery message errors

* Create shared helper

* Apply suggestion

* Catch base class vol.Invalid
2023-06-12 21:28:28 +02:00
mover85
eb0485ebb0 Revert "Bump pydaikin 2.9.1 (#93635)" (#94469)
Revert to pydaikin 2.9.0
2023-06-12 20:58:20 +02:00
Luke
5cdb65100f Add Roborock DnD switch (#94474)
* add Dnd switch

* add dnd test

* fix typing
2023-06-12 20:30:15 +02:00
c0ffeeca7
854c709332 Update OwnTracks UI strings to reflect OwnTracks UI (#94476)
OwnTracks: update UI strings to reflect OwnTracks UI
2023-06-12 20:19:46 +02:00
Jan Bouwhuis
c756c7aceb Cleanup help_setup_helper in common mqtt tests (#94482) 2023-06-12 20:18:05 +02:00
jasonkuster
a25f3c9b27 Fix ZHA binding api to actually return responses (#94388) 2023-06-12 13:07:42 -04:00
Erik Montnemery
86f2aa84e5 Fix flaky ESPHome test fixture (#94465) 2023-06-12 16:59:11 +02:00
dependabot[bot]
d84b8a0288 Bump home-assistant/builder from 2023.03.0 to 2023.06.0 (#94453)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-12 12:14:32 +02:00
Franck Nijhof
eb2b1d2970 Add diagnostic support to Rituals Perfume Genie (#94373) 2023-06-12 11:33:47 +02:00
G Johansson
ce02261303 Remove Brottsplatskartan YAML configuration (#94101)
Remove platform yaml
2023-06-12 11:28:21 +02:00
G Johansson
f2cf92050a Remove Workday YAML configuration (#94102)
Remove platform yaml from workday
2023-06-12 11:27:37 +02:00
dependabot[bot]
4d3db038d6 Bump actions/checkout from 3.5.2 to 3.5.3 (#94452)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.5.2 to 3.5.3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3.5.2...v3.5.3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-12 10:42:40 +02:00
Erik Montnemery
f17773233b Add check for integration config schema to hassfest (#93587)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-12 10:26:02 +02:00
Sander
c79b9d0b07 Fix: Xiaomi Miio Fan, delay off countdown unit conversion (#94428) 2023-06-12 08:25:09 +02:00
Jan Bouwhuis
3adea14ddb Use TemplateSelector on imap custom imap_content event template config option (#94429)
Use TemplateSelector for imap custom template
2023-06-12 06:30:23 +02:00
Glenn Waters
acaa9ef9de Bump elkm1-lib to 2.2.5 (#94296)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-11 15:25:01 -10:00
Erik Montnemery
0fd28c91a8 Remove overridden entity_id property from WirelessTagSensor (#94339) 2023-06-11 17:29:53 -04:00
Sebastian Muszynski
2d62735b0d Fix deprecated asyncio.wait use with coroutines (#94371) 2023-06-11 20:01:41 +02:00
Christopher Bailey
fd43687833 Bump unifiprotect to 4.10.3 (#94416)
* Bump unifiprotect to 4.10.3

* Reqs
2023-06-11 10:22:12 -04:00
Tom Harris
3eedbe92ad Fix issue with Insteon linked devices maintaining current state (#94286)
* Bump pyinsteon

* Update tests
2023-06-11 10:21:33 -04:00
Jan Bouwhuis
3cf2c81baa Fix dep noaa-coops for noaa_tides (#94370)
Bump noaa-coops to 0.1.9
2023-06-11 10:21:06 -04:00
Jan-Philipp Benecke
7d0f5733c2 Improve the code quality of the Discovergy integration (#94165)
* Remove option flow, refactor and improve the code quality after review in PR #54280

* Remove coordinator.py from coverage report

* Some minor improvements for unit tests

* Remove _LOGGER

* Use pytest.fixture and some more improvments

* Add back empty __init__

* Fix docstring

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-11 12:51:43 +02:00
Joost Lekkerkerker
a8dd2d520a Abort youtube configuration if user has no channel (#94402)
* Abort configuration if user has no channel

* Clean up

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-11 12:30:38 +02:00
J. Nick Koston
9e666ae0c0 Reduce in progress flow matching overhead (#94403)
* Reduce config flow matching overhead

Much of the config flow matching is happening on the context data
after converting via a series of functions. Avoid the conversions
by passing the context matcher deeper into the stack so only
relvant entries need to be processed.

The goal is to reduce the overhead and reduce the chance
the event loop falls behind at the started event when
all the discoveries are processed

* Reduce config flow matching overhead

Much of the config flow matching is happening on the context data
after converting via a series of functions. Avoid the conversions
by passing the context matcher deeper into the stack so only
relvant entries need to be processed.

The goal is to reduce the overhead and reduce the chance
the event loop falls behind at the started event when
all the discoveries are processed

* Reduce config flow matching overhead

Much of the config flow matching is happening on the context data
after converting via a series of functions. Avoid the conversions
by passing the context matcher deeper into the stack so only
relvant entries need to be processed.

The goal is to reduce the overhead and reduce the chance
the event loop falls behind at the started event when
all the discoveries are processed

* augment cover
2023-06-11 10:41:38 +02:00
Raman Gupta
41d8ba3397 Re-add event listeners after Z-Wave server disconnection (#94383)
* Re-add event listeners after Z-Wave server disconnection

* switch order

* Add tests
2023-06-11 08:35:52 +02:00
Luke
eab024992e Add Cleaning area sensors to Roborock (#94200)
add clean area sensor
2023-06-10 20:31:34 -04:00
Marc Mueller
3b08d5f0c3 Improve renson typing (#94390) 2023-06-10 20:28:32 -04:00
Matthias Alphart
b45659eb84 Update knx-frontend to 2023.6.9.195839 (#94404) 2023-06-10 20:48:14 +02:00
J. Nick Koston
aa71c8e8f0 Reduce I/O from cert_expiry (#94399) 2023-06-10 12:53:09 -05:00
Matthias Alphart
ece5de73a4 Update xknxproject to 3.1.1 (#94375) 2023-06-10 10:41:51 +02:00
jimmyd-be
3d678f5b99 Renson integration (#56374)
* Implemented Renson integration

* -  renamed component to a better name
- Made cleaner code by splitting up files into different one
-  Fixed issues regarding getting data from library
- Added service.yaml file

* Added Renson services

* cleanup translations

* added config_flow tests

* changed config_flow, removed all services

* use SensorEntityDescription + introduced new binarySensor

* fixed config_flow test

* renamed renson_endura_delta to renson

* refactored sensors and implemented binary_sensor

* Changed some sensors to non measurement and added entity_registery_enabled_default for config sensors

* Enabled binary_sensor

* changed import to new renamed module

* Merge files into correct files + cleaned some code

* Change use of EntityDescription

* Update codeowners

* Fixed lint issues

* Fix sensor

* Create test.yml

* Update test.yml

* add github action tests

* Format json files

* Remove deprecated code

* Update homeassistant/components/renson/binary_sensor.py

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

* Use Coordinqte in Sensor

* Migrated binary sensor to use coordinate

* Removed firmwareSensor

* Add entity_catogory to binary_sensor

* Add services

* Revert "Add services"

This reverts commit 028760d8d8.

* update requirements of Renson integration

* Add services and fan

* Fixed some issue + fixed PR comments

* Cleanup code

* Go back 2 years ago to the bare minimum for PR approval

* Refactored code and added a lot of device classes to the entities

* Fix some bugs

* Add unique Id and some device class

* Show the level value for CURRENT_LEVEL_FIELD instead of the raw data

* Remove FILTER_PRESET_FIELD for now

* Make the _attr_unique_id unique

* Changed Renson tests

* Moved Renson hass data into @dataclass

* Changed test + added files to .coveragerc

* Add device_class=SensorDeviceClass.Duration

* Fix syntax

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-10 09:21:33 +02:00
Jafar Atili
26b78d2a7a fix: electrasmart - cast temperature to int in set_temperature (#94368)
fix: cast temperature to int
2023-06-09 21:54:11 +03:00
starkillerOG
117ab4a0e5 Bump reolink-aio to 0.6.0 (#94259) 2023-06-09 17:00:07 +02:00
J. Nick Koston
fc1eab1e7e Bump sensirion-ble to 0.1.0 (#94352) 2023-06-09 09:40:54 -05:00
Erik Montnemery
59f5b8f2d6 Remove unneeded checks for Entity.platform (#94321)
* Remove unneeded checks for Entity.platform

* Update tests

* Prevent breaking integrations without an EntityComponent

* Warn when entity has no platform
2023-06-09 15:17:41 +02:00
Erik Montnemery
239e2d9820 Migrate microsoft_face to EntityComponent (#94338) 2023-06-09 13:15:35 +02:00
Jan Bouwhuis
c984604a6c Refactor some mqtt tests not the just use schema validation (#94330)
Remove help_test_validate_platform_config
2023-06-09 12:30:26 +02:00
Jan Bouwhuis
5fb41777fd Cleanup MQTT schema from previous removed options (#94110)
* Cleanup removed validator schema option of #62680

* Cleanup removed climate options and abbreviations

* Removed white_value options for mqtt light

* Remove whaite value from mqtt json light
2023-06-09 12:12:20 +02:00
Erik Montnemery
e25fbecfdc Add missing super() call to EnergyCostSensor.add_to_platform_abort (#94322) 2023-06-09 11:28:12 +02:00
Erik Montnemery
4085c4f6d8 Tweak typing of Entity.platform (#88321)
* Tweak typing of Entity.platform

* Fix mypy errors

* Fix update test

* Improve comments
2023-06-09 10:56:04 +02:00
Erik Montnemery
41022fdce4 Add comments about removing deprecated code from sky_connect config flow (#94262) 2023-06-09 10:39:52 +02:00
Erik Montnemery
5e3b632b14 Drop call to usb.get_serial_by_id from zwave_js config flow (#94279) 2023-06-09 10:04:01 +02:00
Jonathan Keljo
288708474b Upgrade sisyphus-control to 3.1.3 (#94310) 2023-06-09 09:39:14 +02:00
Sven Serlier
7e75790281 Update URL in readme (#94282) 2023-06-09 09:24:53 +02:00
Luke
dafc7a15b1 Bump Python-Roborock to 23.6 for crash fix (#94281)
* bump to 23.5

* update to 23.5
2023-06-08 18:18:42 -07:00
Franck Nijhof
c3936e6f14 Replace isort with ruff (#94302) 2023-06-08 23:43:56 +02:00
Joost Lekkerkerker
ed3d38bb17 Request steam online friends from batches (#91167)
* Request friends from batches

* Add tests

* Add tests

* Fix feedback

* Add libcall to verify request length

* Improve tests
2023-06-08 17:08:14 -04:00
Erik Montnemery
23d15850da Use addon name as title in otbr hassio flow (#87081)
* Use addon name as title in otbr hassio flow

* Address review comments
2023-06-08 23:04:12 +02:00
Joost Lekkerkerker
b3a001996d Improve coverage for LastFM (#93661)
* Improve coverage for LastFM

* Improve tests

* Improve tests
2023-06-08 16:55:16 -04:00
Ville Skyttä
ca936d0b38 Replace bandit with ruff (#93200) 2023-06-08 22:46:04 +02:00
Ville Skyttä
f7938c940c Upgrade ruff to 0.0.272 (#94290) 2023-06-08 21:53:43 +02:00
Paulus Schoutsen
a5f86bff45 2023.6.1 (#94288) 2023-06-08 14:57:37 -04:00
Paulus Schoutsen
d991970754 Bumped version to 2023.6.1 2023-06-08 13:39:33 -04:00
Tom Harris
d745b44180 Fix Insteon startup for users with X10 devices (#94277) 2023-06-08 13:39:10 -04:00
Tom Harris
602fcd6b1b Restructure Insteon start-up (#92818)
* Restructure startup

* Code review

* Further typing

* Fix circular import
2023-06-08 13:39:09 -04:00
Franck Nijhof
b39b0a960e Fix repair issue about no yaml for config entries (#94271) 2023-06-08 13:35:08 -04:00
Paulus Schoutsen
40bb796f03 Fix default value when logger used (#94269) 2023-06-08 13:28:54 -04:00
Christopher Bailey
2801ba6cad Bump unifiprotect to 4.10.2 (#94263) 2023-06-08 13:28:52 -04:00
Paul Bottein
5da0ef36ea Update frontend to 20230608.0 (#94256) 2023-06-08 13:28:51 -04:00
Joost Lekkerkerker
d861292900 Retrieve friends in an async manner in Lastfm (#94255) 2023-06-08 13:28:50 -04:00
Jc2k
a3fda43c64 Bump aiohomekit to 2.6.5 (fixes python 3.11 regression) (#94245) 2023-06-08 13:28:49 -04:00
Joost Lekkerkerker
8705a26a1a Catch exception when user has no lastfm friends (#94235) 2023-06-08 13:28:48 -04:00
jan iversen
2b1c45c28c Solve wrong return code from modbus. (#94234) 2023-06-08 13:28:47 -04:00
Jan Bouwhuis
0cf3825183 Fix imap crash on email without subject (#94230) 2023-06-08 13:28:46 -04:00
Kostas Chatzikokolakis
413e1c97d7 Bump pulsectl to 23.5.2 (#94227) 2023-06-08 13:28:45 -04:00
Joost Lekkerkerker
3b27a3aabf Bump python-opensky to 0.0.9 (#94224) 2023-06-08 13:28:44 -04:00
Joost Lekkerkerker
4509e13ceb Bump python-opensky (#93916) 2023-06-08 13:28:43 -04:00
Álvaro Fernández Rojas
33bf8c600b Update aioairzone-cloud to v0.1.8 (#94223) 2023-06-08 13:27:46 -04:00
Jan-Philipp Benecke
b508875f17 Set httpx log level to warning (#94217)
Set log level of httpx to warning
2023-06-08 13:27:45 -04:00
Allen Porter
ac963a2b6e Require pydantic 1.10.8 or higher (#94208)
* Requied pydantic 1.10.9 or higher

* Simplify constraint to 2.0

* Drop constraint by one patch release to 1.10.8 or higher

* Add package constraints to gen requirements script
2023-06-08 13:27:43 -04:00
James Connor
13029cf26f Fix ambiclimate for Python 3.11 (#94203)
Fix ambiclimate python 3.11 break
2023-06-08 13:27:42 -04:00
Paulus Schoutsen
f39a6b96ff Rename Local Media to My Media (#94201)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-08 13:27:41 -04:00
Mick Vleeshouwer
c6a17d6832 Bump pyoverkiz to 1.8.0 (#94176) 2023-06-08 13:27:40 -04:00
Joost Lekkerkerker
74c0552a12 Fix Abode unit of measurement (#94168)
Change unit of measurement to HA const
2023-06-08 13:27:38 -04:00
Justin Vanderhooft
f24b514c9a Bump melnor-bluetooth to fix a timezone issue (#94159) 2023-06-08 13:27:37 -04:00
Erik Montnemery
e1c47fdb61 Fix OTBR reset (#94157) 2023-06-08 13:27:36 -04:00
Erik Montnemery
bdc82fa50a Drop call to usb.get_serial_by_id from modem_callerid config flow (#94275) 2023-06-08 19:21:31 +02:00
Erik Montnemery
0dbdfb7e70 Drop call to usb.get_serial_by_id from velbus config flow (#94276) 2023-06-08 19:21:19 +02:00
Erik Montnemery
35ad40421b Drop call to usb.get_serial_by_id from zha config flow (#94278) 2023-06-08 19:21:08 +02:00
Tom Harris
fceef42b08 Fix Insteon startup for users with X10 devices (#94277) 2023-06-08 18:36:42 +02:00
j4n-e4t
93baf24394 Add error handling to input_select integration (#93940) 2023-06-08 12:27:23 -04:00
Erik Montnemery
c8756ba5bb Use stable USB device path in USB discovery (#94266) 2023-06-08 18:27:04 +02:00
Franck Nijhof
6db1fbf480 Fix repair issue about no yaml for config entries (#94271) 2023-06-08 18:22:34 +02:00
Paulus Schoutsen
76535d3f7d Fix default value when logger used (#94269) 2023-06-08 12:00:34 -04:00
hookedonunix
18cbc9b4c3 Add Water Heater platform to MQTT integration (#93644)
* Add Water Heater entity to MQTT

* Adding tests for Water Heater

* Remove duplicate line and unneeded var declaration

* Remove target temp range and away mode

* Move common Temperature Control conf to const

* Remove unnecessary platform schema and temp check

* Add common value template key test

* Use MqttTemperatureControl in Water Heater

* Move operation mode out of MqttTemperatureControl

* Remove unecessary attribute declaration

* Remove default min/max temp and auto init attr

* Fix mqtt water heater initial temp conversion

* Make async_set_temperature common

* Fix init temp comment

* Merge value_template_keys into get_with_templates

* Remove unnecessary operation_mode overriding

* Add async_set_temperature to water heater

* Fix docstring comments
2023-06-08 17:38:30 +02:00
Christopher Bailey
c697731657 Bump unifiprotect to 4.10.2 (#94263) 2023-06-08 11:08:52 -04:00
Franck Nijhof
395236f6cc Merge branch 'master' into dev 2023-06-08 16:32:52 +02:00
Joost Lekkerkerker
20449d1f01 Catch exception when user has no lastfm friends (#94235) 2023-06-08 16:08:18 +02:00
Paul Bottein
758eb5e510 Update frontend to 20230608.0 (#94256) 2023-06-08 15:59:56 +02:00
Kostas Chatzikokolakis
2f2504b534 Bump pulsectl to 23.5.2 (#94227) 2023-06-08 15:59:16 +02:00
jan iversen
48607d0586 Bump pymodbus to 3.3.1 (#94162) 2023-06-08 15:57:49 +02:00
Paulus Schoutsen
d2edfca2a2 Rename Local Media to My Media (#94201)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-08 15:56:49 +02:00
Joost Lekkerkerker
425c964898 Retrieve friends in an async manner in Lastfm (#94255) 2023-06-08 15:55:09 +02:00
Jc2k
77badafea1 Bump aiohomekit to 2.6.5 (fixes python 3.11 regression) (#94245) 2023-06-08 14:10:12 +01:00
Álvaro Fernández Rojas
081bc470db Update aioairzone-cloud to v0.1.8 (#94223) 2023-06-08 11:34:56 +02:00
Mick Vleeshouwer
5a90d18041 Bump pyoverkiz to 1.8.0 (#94176) 2023-06-08 11:33:35 +02:00
jan iversen
05e822b7a3 Solve wrong return code from modbus. (#94234) 2023-06-08 11:29:54 +02:00
Joost Lekkerkerker
00ecf51091 Bump python-opensky to 0.0.9 (#94224) 2023-06-08 11:13:24 +02:00
Jan Bouwhuis
7a195b5291 Fix imap crash on email without subject (#94230) 2023-06-08 11:11:12 +02:00
dependabot[bot]
08a85e35e2 Bump docker/login-action from 2.1.0 to 2.2.0 (#94221)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-08 10:58:13 +02:00
James Connor
f06ab91678 Fix ambiclimate for Python 3.11 (#94203)
Fix ambiclimate python 3.11 break
2023-06-08 09:43:30 +02:00
Allen Porter
52ba58c782 Require pydantic 1.10.8 or higher (#94208)
* Requied pydantic 1.10.9 or higher

* Simplify constraint to 2.0

* Drop constraint by one patch release to 1.10.8 or higher

* Add package constraints to gen requirements script
2023-06-08 09:41:45 +02:00
Jan-Philipp Benecke
99ee4e8a42 Set httpx log level to warning (#94217)
Set log level of httpx to warning
2023-06-08 09:39:06 +02:00
hookedonunix
85a12c37ee Sync Climate min/max temp with Google Assistant (#94143)
* Sync climate min/max temp to Google Assistant

* Improving coverage on TemperatureSettingTrait
2023-06-07 20:46:35 -04:00
Marc Mueller
a6a2b8d29f Update pydantic to 1.10.9 (#94178) 2023-06-07 20:46:01 -04:00
J. Nick Koston
88bfd94800 Add support for ESPHome raw bluetooth advertisements (#94138)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-06-07 18:36:22 -05:00
Jan Bouwhuis
8e9eb400bf Refactor async_set_temperature for mqtt climate (#94166) 2023-06-07 20:34:59 +02:00
Joost Lekkerkerker
7d8e412314 Fix Abode unit of measurement (#94168)
Change unit of measurement to HA const
2023-06-07 19:53:45 +02:00
Erik Montnemery
1fa2fb4639 Fix OTBR reset (#94157) 2023-06-07 18:42:40 +02:00
RenierM26
6af1beb6bf Change Ezviz detection sensitivity to update per entity (#93995)
* Split detection sensitivity updates to entity instead of coordinator.

* Detection Sensitivity entity individual poll.

* Api return None instead of "unkown" when unkown.

* Only add entity if camera supports

* Cleanup detection type

* Commit suggestions.

---------

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2023-06-07 18:36:39 +02:00
Justin Vanderhooft
d431a692e5 Bump melnor-bluetooth to fix a timezone issue (#94159) 2023-06-07 18:17:01 +02:00
Chris Xiao
05b5b30df3 Update python-qbittorrent to 0.4.3 (#94072) 2023-06-07 18:11:39 +02:00
Franck Nijhof
a4e236d0b9 2023.6.0 (#94158) 2023-06-07 15:39:47 +02:00
Franck Nijhof
421fa5b035 Bumped version to 2023.6.0 2023-06-07 13:49:03 +02:00
Erik Montnemery
3d3fecbd23 Disable google assistant local control of climate entities (#94153) 2023-06-07 13:48:20 +02:00
Erik Montnemery
468be632fd Add debug logs to cloud migration (#94151) 2023-06-07 13:48:17 +02:00
Bram Kragten
74ccdcda68 Update frontend to 20230607.0 (#94150) 2023-06-07 13:48:14 +02:00
Erik Montnemery
5cc61acfb2 Fix migration of Google Assistant cloud settings (#94148) 2023-06-07 13:48:11 +02:00
Christopher Bailey
02d55a8e49 Bump unifiprotect to 4.10.1 (#94141) 2023-06-07 13:48:06 +02:00
Erik Montnemery
df138d91e6 Disable google assistant local control of climate entities (#94153) 2023-06-07 13:46:17 +02:00
Erik Montnemery
4802e7f93a Add debug logs to cloud migration (#94151) 2023-06-07 13:16:23 +02:00
Bram Kragten
68baf84144 Update frontend to 20230607.0 (#94150) 2023-06-07 12:57:37 +02:00
Christopher Bailey
7f4d62c80f Bump unifiprotect to 4.10.1 (#94141) 2023-06-07 11:15:03 +02:00
Erik Montnemery
33044bc153 Fix migration of Google Assistant cloud settings (#94148) 2023-06-07 11:14:51 +02:00
J. Nick Koston
0a67f96402 Bump ruuvitag-ble to 0.1.2 (#94144) 2023-06-07 10:18:57 +02:00
Paulus Schoutsen
f4e3ef6b51 Bumped version to 2023.6.0b6 2023-06-06 22:00:28 -04:00
Paulus Schoutsen
7740539df0 Bump waqiasync to 1.1.0 (#94136) 2023-06-06 22:00:20 -04:00
Christopher Bailey
b077bf9b86 Fix multiple smart detects firing at once for UniFi Protect (#94133)
* Fix multiple smart detects firing at once

* Tweak

* Clean up logging. Linting

* Linting
2023-06-06 22:00:19 -04:00
Joakim Plate
23f2898836 Correct zha device classes for voc and pm25 (#94130)
Correct zha device classes
2023-06-06 22:00:18 -04:00
Shay Levy
e6638ca356 Remove goalfeed integration (#94129) 2023-06-06 21:59:32 -04:00
Jean-François Roy
93d52d8835 Bump aiobafi6 to 0.8.2 (#94125) 2023-06-06 21:58:09 -04:00
puddly
26e08abb9a Revert "Increase Zigbee command retries (#93877)" (#94123) 2023-06-06 21:58:08 -04:00
J. Nick Koston
6a573b507e Remove mark_read service from persistent_notification (#94122)
* Remove mark_read from persistent_notification

Nothing on the frontend uses this, and the service is not documented

There is not much point in keeping this as the notifications
are no longer stored in the state machine

* adjust

* adjust
2023-06-06 21:58:07 -04:00
Bram Kragten
2b39550e55 Update frontend to 20230606.0 (#94119) 2023-06-06 21:58:06 -04:00
J. Nick Koston
0e50baf007 Verify persistant notifications can be dismissed by the id they are created with (#94112) 2023-06-06 21:58:05 -04:00
Luke
286de1f051 Bump python-roborock to 23.4 (#94111)
* bump to 23.0

* bump to 23.4
2023-06-06 21:58:04 -04:00
Luke
3e23996247 Bump Roborock to 0.21.0 (#94035)
bump to 21.0
2023-06-06 21:58:03 -04:00
Álvaro Fernández Rojas
7a658117bb Update aioairzone to v0.6.3 and fix issue with latest firmware update (#94100) 2023-06-06 21:56:36 -04:00
Luke
49388eab3a Add diagnostics to Roborock (#94099)
* Add diagnostics

* Update homeassistant/components/roborock/models.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* adds snapshot

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-06 21:56:35 -04:00
Justin Vanderhooft
e6fcc6b73c fix: Bump melnor-bluetooth to fix deadlock (#94098) 2023-06-06 21:56:33 -04:00
Robert Svensson
e00012289d Bump aiounifi to v48 - Fix fail to initialise due to board_rev not exist (#94093) 2023-06-06 21:56:32 -04:00
Luke
f373f1abd5 Add missing translation keys for Roborock mop intensity (#94088) 2023-06-06 21:56:31 -04:00
puddly
2c43672a8a Include port info in the ZHA websocket settings response (#93934) 2023-06-06 21:56:30 -04:00
Luke
fe11cae08d Add diagnostics to Roborock (#94099)
* Add diagnostics

* Update homeassistant/components/roborock/models.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* adds snapshot

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-06 21:24:36 -04:00
Paulus Schoutsen
d3fca972a5 Bump waqiasync to 1.1.0 (#94136) 2023-06-06 20:55:25 -04:00
G Johansson
c60e53b43f Remove left-over issue in Honeywell Lyric (#94092) 2023-06-06 20:54:09 -04:00
G Johansson
7d7920f483 Remove leftover issue in nVent RAYCHEM SENZ (#94105)
* Remove leftover issue senz

* strings
2023-06-06 20:47:32 -04:00
G Johansson
0d0de4aa50 Remove left-over issue Simplepush (#94103)
* Remove left-over issue simplepush

* strings
2023-06-06 20:45:07 -04:00
Luke
bee428e9f6 Bump python-roborock to 23.4 (#94111)
* bump to 23.0

* bump to 23.4
2023-06-06 20:42:59 -04:00
J. Nick Koston
001da39a47 Verify persistant notifications can be dismissed by the id they are created with (#94112) 2023-06-06 20:42:11 -04:00
Joost Lekkerkerker
6ab7b0f99c Fix typo in Picnic strings (#94117) 2023-06-06 20:40:59 -04:00
J. Nick Koston
463945b86e Remove mark_read service from persistent_notification (#94122)
* Remove mark_read from persistent_notification

Nothing on the frontend uses this, and the service is not documented

There is not much point in keeping this as the notifications
are no longer stored in the state machine

* adjust

* adjust
2023-06-06 20:40:32 -04:00
Christopher Bailey
9b6a9147c7 Fix multiple smart detects firing at once for UniFi Protect (#94133)
* Fix multiple smart detects firing at once

* Tweak

* Clean up logging. Linting

* Linting
2023-06-06 20:07:21 -04:00
Shay Levy
a6bb70c5d2 Remove goalfeed integration (#94129) 2023-06-06 20:04:53 -04:00
Bram Kragten
66785bbfc7 Update frontend to 20230606.0 (#94119) 2023-06-06 20:04:22 -04:00
Marc Mueller
4c80420d2d Improve discovergy generic typing (#94131) 2023-06-06 19:47:13 -04:00
Joakim Plate
deaf910a24 Correct zha device classes for voc and pm25 (#94130)
Correct zha device classes
2023-06-06 23:03:59 +02:00
Jan-Philipp Benecke
d8ceb6463e Add new integration Discovergy (#54280)
* Add discovergy integration

* Capitalize measurement type as it is in uppercase

* Some logging and typing

* Add all-time total production power and check if meter has value before adding it

* Add tests for Discovergy and changing therefor library import

* Disable phase-specific sensor per default, set user_input as default for schema and implement some other suggestions form code review

* Removing translation, fixing import and some more review implementation

* Fixing CI issues

* Check if acces token keys are in dict the correct way

* Implement suggestions after code review

* Correcting property function

* Change state class to STATE_CLASS_TOTAL_INCREASING

* Add reauth workflow for Discovergy

* Bump pydiscovergy

* Implement code review

* Remove _meter from __init__

* Bump pydiscovergy & minor changes

* Add gas meter support

* bump pydiscovergy & error handling

* Add myself to CODEOWNERS for test directory

* Resorting CODEOWNERS

* Implement diagnostics and reduce API use

* Make homeassistant imports absolute

* Exclude diagnostics.py from coverage report

* Add sensors with different keys

* Reformatting files

* Use new naming style

* Refactoring and moving to basic auth for API authentication

* Remove device name form entity name

* Add integration type to discovergy and implement new unit of measurement

* Add system health to discovergy integration

* Use right array key when using an alternative_key & using UnitOfElectricPotential.VOLT

* Add options for precision and update interval to Discovergy

* Remove precision config option and let it handle HA

* Rename precision attribute and remove translation file

* Some formatting tweaks

* Some more tests

* Move sensor names to strings.json

* Redacting title and unique_id as it contains user email address
2023-06-06 13:44:00 -04:00
Jean-François Roy
5ab4bf218e Bump aiobafi6 to 0.8.2 (#94125) 2023-06-06 12:42:49 -05:00
puddly
b03c429db7 Revert "Increase Zigbee command retries (#93877)" (#94123) 2023-06-06 17:44:29 +02:00
Jan Bouwhuis
83b0ec5136 Freeze time on timer tests that assert on remaining time (#94078) 2023-06-06 09:18:25 -05:00
Jan Bouwhuis
0d4af6fb1e Stale doc string for mqtt light async_setup_entry (#94109) 2023-06-06 16:02:46 +02:00
G Johansson
05fbc09ef0 Remove Slack YAML configuration (#94106) 2023-06-06 16:01:40 +02:00
G Johansson
a1a20fab33 Remove leftover issue warning in SimpliSafe (#94104) 2023-06-06 08:00:59 -06:00
Paul Frank
c67f32b924 Add config flow to mystrom (#74719)
* rebase

* fixed review comments

* fix test

* Update tests

* increase test coverage

* implement some review comments

* Enhance device check for old FWs and add tests

* Reworked exception handling

* small code optimizations

* fix test

* Increase test coverage

* Update __init__.py

changed from hass.config_entries.async_setup_platforms(entry, PLATFORMS) to await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)

* Update __init__.py

remove spaces

* Bump python-mystrom to 2.2.0

* Migrate to get_device_info from python-mystrom

* Migrate to get_device_info from python-mystrom

* Update __init__.py

* update requirements_all.txt

* update config_flow

* fix tests

* Update homeassistant/components/mystrom/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Implemented review changes

* increase test coverage

* Implemented user defined title

* implemented user defined title

* Additional review comments

* fix test

* fix linter

* fix linter

* Update homeassistant/components/mystrom/models.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* fix review comments

* fix missing import

* simplify

* Update homeassistant/components/mystrom/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/mystrom/test_init.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/mystrom/test_init.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/mystrom/test_init.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/mystrom/test_init.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/light.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* fix review comments

* fix review comments

* Update tests/components/mystrom/test_config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/mystrom/test_config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* fix review comment

* Update tests/components/mystrom/test_config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/mystrom/test_config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/mystrom/test_config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/mystrom/test_config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/mystrom/test_config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/mystrom/test_config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-06 14:16:27 +02:00
Robert Svensson
ebafb1f2c8 Bump aiounifi to v48 - Fix fail to initialise due to board_rev not exist (#94093) 2023-06-06 09:08:17 +02:00
Justin Vanderhooft
0b880598ed fix: Bump melnor-bluetooth to fix deadlock (#94098) 2023-06-06 08:32:07 +02:00
G Johansson
49a394547a Remove platform YAML for Bose SoundTouch (#94090) 2023-06-06 08:26:36 +02:00
G Johansson
13da90da90 Remove left-over issue from platform YAML in Radarr (#94091) 2023-06-06 08:25:59 +02:00
Luke
554ed1e957 Add missing translation keys for Roborock mop intensity (#94088) 2023-06-06 08:25:25 +02:00
Álvaro Fernández Rojas
6019ec305a Update aioairzone to v0.6.3 and fix issue with latest firmware update (#94100) 2023-06-06 08:23:48 +02:00
G Johansson
9cbb993296 Remove Xbox YAML configuration (#94094) 2023-06-06 08:22:12 +02:00
Ian
4b4660994c Use shorthand attributes in NextBus (#94084)
* NextBus: Use attr with unique id

* Feedback

* Remove unique id
2023-06-06 07:08:42 +02:00
Paulus Schoutsen
7a6327d7e2 Bumped version to 2023.6.0b5 2023-06-05 16:13:07 -04:00
G Johansson
ee8f63b9c9 Fix reload service in Command Line (#94085)
Fix multi platform reload service in command line
2023-06-05 16:12:59 -04:00
Bram Kragten
28e0f5e104 Update frontend to 20230605.0 (#94083)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-05 16:12:58 -04:00
Michael Hansen
eb036af410 Bump intents to 2023.6.5 (#94077) 2023-06-05 16:12:57 -04:00
Luke
4bb6fec1d6 Don't add Roborock switches if it is not supported (#94069)
* don't add switches if it is not supported

* don't create entity unless if it is valid

* Raise on other exceptions

* rework valid_enties
2023-06-05 16:12:56 -04:00
J. Nick Koston
dbd5511e5e Bump zeroconf to 0.64.0 (#94052) 2023-06-05 16:12:55 -04:00
Raman Gupta
580065e946 Fix zwave_js.update entity restore logic (#94043) 2023-06-05 16:12:54 -04:00
Pascal Reeb
4a31cb0ad8 Update pynuki to 1.6.2 (#94041)
chore(component/nuki): update pynuki to 1.6.2
2023-06-05 16:12:53 -04:00
G Johansson
5a63079c80 Remove update_before_add from binary_sensor in Command Line (#94040)
Remove update_before_add
2023-06-05 16:12:52 -04:00
tronikos
902bd521d2 Android TV Remote: Abort zeroconf if mac address is missing (#94026)
Abort zeroconf if mac address is missing
2023-06-05 16:12:51 -04:00
Ernst Klamer
aff4d537a7 Bump xiaomi-ble to 0.17.2 (#94011)
Bump xiaomi-ble

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-05 16:12:49 -04:00
Joost Lekkerkerker
4f00cc9faa Show the sensor state using the coordinatordata instead of initial data (#94008)
* Show the sensor state using the coordinatordata instead of initial data

* Add test

* Remove part
2023-06-05 16:12:48 -04:00
Joost Lekkerkerker
2a99fea1de Add video id to youtube sensor state attributes (#93668)
* Add video id to state attributes

* Make extra state attributes not optional

* Revert "Make extra state attributes not optional"

This reverts commit d2f9e936c8.
2023-06-05 16:12:48 -04:00
tronikos
9aeba6221b Fix error in tibber while fetching latest statistics (#93998) 2023-06-05 15:55:59 -04:00
G Johansson
228da71cc4 Fix reload service in Command Line (#94085)
Fix multi platform reload service in command line
2023-06-05 15:54:51 -04:00
Luke
e30e423091 Don't add Roborock switches if it is not supported (#94069)
* don't add switches if it is not supported

* don't create entity unless if it is valid

* Raise on other exceptions

* rework valid_enties
2023-06-05 15:52:40 -04:00
Bram Kragten
7e72d3c562 Update frontend to 20230605.0 (#94083)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-05 20:16:11 +02:00
j4n-e4t
28f6062bab Add error handling to input_select integration (#93940) 2023-06-05 19:53:24 +02:00
Michael Hansen
e2c2262719 Bump intents to 2023.6.5 (#94077) 2023-06-05 19:49:01 +02:00
J. Nick Koston
fb9a9aea12 Fix wheel builds on armhf and armv7 (#94053) 2023-06-05 19:48:18 +02:00
G Johansson
40cb9337c5 Remove snapcast YAML configuration (#93547)
Remove platform yaml snapcast
2023-06-05 18:28:08 +02:00
G Johansson
d9ac041e17 Remove qbittorrent YAML configuration (#93548)
Remove platform yaml qbittorrent
2023-06-05 18:14:07 +02:00
Jan Bouwhuis
437de7c2a3 Fix mqtt climate initial temperature conversion and precision (#93965)
* Fix mqtt climate initial temperature conversion

* Avoid changing hass temperature_unit

* Update comment
2023-06-05 17:02:31 +02:00
Chris Xiao
5a80eddbd7 Clean up error logging in qbittorrent (#94071) 2023-06-05 16:21:23 +02:00
J. Nick Koston
be2389a9db Bump zeroconf to 0.64.0 (#94052) 2023-06-04 21:14:44 -05:00
Chris Talkington
d8b4d71475 Update pyipp to 0.14.0 (#94050) 2023-06-04 21:14:31 -05:00
Robert Hillis
7f480849e2 Add camera platform to Dremel (#93882)
* Add camera platform to Dremel

* unload and tests
2023-06-04 20:28:28 -04:00
J. Nick Koston
5078bb3bef Remove miniaudio pin now that upstream package has been fixed (#94034)
see https://github.com/irmen/pyminiaudio/issues/67#issuecomment-1575602707
2023-06-04 20:27:42 -04:00
Artem Draft
06bcb69a56 Add media stop to LG Netcast TV (#93615) 2023-06-04 19:26:26 -05:00
Maciej Bieniek
fe61672792 Don't inherit SensorEntity/NumberEntity and RestoreEntity in Shelly integration (#93531)
* Use RestoreNumber and Restore Sensor for block entities

* Update tests

* Use RestoreSensor for RPC entities

* Fix test for number platform
2023-06-04 19:14:08 -05:00
Ernst Klamer
7c02e1ca99 Bump xiaomi-ble to 0.17.2 (#94011)
Bump xiaomi-ble

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-04 19:07:37 -05:00
Pascal Reeb
a08e516da0 Update pynuki to 1.6.2 (#94041)
chore(component/nuki): update pynuki to 1.6.2
2023-06-04 19:06:38 -05:00
Luke
5d9c36ac44 Bump Roborock to 0.21.0 (#94035)
bump to 21.0
2023-06-04 19:02:13 -05:00
J. Nick Koston
09882923d2 Drop codeowner for gogogate2 (#94049) 2023-06-04 18:42:37 -05:00
Raman Gupta
5461d0e28f Fix zwave_js.update entity restore logic (#94043) 2023-06-05 00:35:17 +02:00
G Johansson
b5b9a06c2c Refactor Command Line sensor to use ManualTriggerEntity (#93999)
* Refactor sensor to use ManualTriggerEntity

* Add device and state class
2023-06-04 15:00:53 -04:00
G Johansson
1fe4c4fa59 Remove update_before_add from binary_sensor in Command Line (#94040)
Remove update_before_add
2023-06-04 14:53:34 -04:00
Rami Mosleh
07e26f9639 Drop codeowner for IMAP (#94033) 2023-06-04 11:59:03 -05:00
tronikos
53e456f453 Android TV Remote: Abort zeroconf if mac address is missing (#94026)
Abort zeroconf if mac address is missing
2023-06-04 10:49:18 +02:00
Joost Lekkerkerker
efb92ca9ee Show the sensor state using the coordinatordata instead of initial data (#94008)
* Show the sensor state using the coordinatordata instead of initial data

* Add test

* Remove part
2023-06-03 14:35:57 -04:00
G Johansson
76d8c047ec Refactor Command Line cover to use ManualTriggerEntity (#93997)
Refactor command_line cover
2023-06-03 14:19:59 -04:00
G Johansson
391c63640a Refactor Command Line binary sensor to use ManualTriggerEntity (#94000)
Refactor binary sensor ManualTriggerEntity
2023-06-03 14:11:42 -04:00
Michael Benz
305fa128fb Add reload support to intent_script (#93404)
* support live reload of intent_script

* add services.yaml

* update tesls for full code coverage

* Update based on feedback

* fix intent_script reload when no intent_script config

* Update homeassistant/helpers/intent.py

* update tests to handle no_existing better

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-06-03 14:02:23 -04:00
Paulus Schoutsen
65b62d877d Keep track what devices support Assist features (#93990) 2023-06-03 08:26:28 -05:00
tronikos
faacf1658f Fix error in tibber while fetching latest statistics (#93998) 2023-06-03 08:25:39 -05:00
Paulus Schoutsen
bb2a89f065 Bumped version to 2023.6.0b4 2023-06-02 23:35:41 -04:00
Robert Hillis
f92298c6fc Catch Google Sheets api error (#93979) 2023-06-02 23:35:36 -04:00
G Johansson
6ff55a6505 Add scan interval to Command Line (#93752)
* Add scan interval

* Handle previous not complete

* Fix faulty text

* Add tests

* lingering

* Cool down

* Fix tests
2023-06-02 23:35:35 -04:00
G Johansson
038b0e6d23 Add scan interval to Command Line (#93752)
* Add scan interval

* Handle previous not complete

* Fix faulty text

* Add tests

* lingering

* Cool down

* Fix tests
2023-06-02 23:35:11 -04:00
Sven Serlier
aa636a2805 Fix broken URL in Z-Wave JS (#93983)
Fix broken URL
2023-06-02 16:54:15 -04:00
Robert Hillis
6c5fd40c92 Catch Google Sheets api error (#93979) 2023-06-02 16:18:58 -04:00
Simone Chemelli
2a9bcae365 Fritz: cleanup unused variables (#93971)
Cleanup
2023-06-02 16:17:16 -04:00
Paulus Schoutsen
32f7f39eca Bumped version to 2023.6.0b3 2023-06-02 08:46:29 -04:00
Raman Gupta
177cd0f697 Improve logic for zwave_js.lock.is_locked attr (#93947) 2023-06-02 08:45:56 -04:00
Raman Gupta
3d4ba15a95 Make Z-Wave device IBT4ZWAVE discoverable as a cover (#93946)
* Make Z-Wave device IBT4ZWAVE discoverable as a cover

* Test device class
2023-06-02 08:45:55 -04:00
J. Nick Koston
9dd3e6cab8 Bump aiohomekit to 2.6.4 (#93943)
changelog: https://github.com/Jc2k/aiohomekit/compare/2.6.3...2.6.4

mostly additional logging to help track down #93891
2023-06-02 08:45:54 -04:00
J. Nick Koston
cc02d1dfc4 Fix august aiohttp session being closed out from under it (#93942)
* Fix august aiohttp session being closed out from under it

fixes #93941

* Fix august aiohttp session being closed out from under it

fixes #93941

* Fix august aiohttp session being closed out from under it

fixes #93941
2023-06-02 08:45:53 -04:00
automaton82
3d2ad2fd85 Update netdata to 1.1.0, set longer timeout (#93937) 2023-06-02 08:45:52 -04:00
Chris Talkington
d9149407d8 Update pyipp to 0.13.0 (#93886) 2023-06-02 08:45:51 -04:00
Diogo Gomes
964af88c21 Make Riemann sum sensors restore last valid state (#93674)
* keep last valid state

* keep last valid state

* typo

* increase coverage

* better error handling

* debug messages

* increase coverage

* remove random log

* don't expose last_valid_state as an attribute
2023-06-02 08:45:50 -04:00
Tudor Sandu
e58ea00ce6 Fix states not being translated in voice assistants (#93572)
Fix states not being translated
2023-06-02 08:45:49 -04:00
Diogo Gomes
b5f582eecc Make Riemann sum sensors restore last valid state (#93674)
* keep last valid state

* keep last valid state

* typo

* increase coverage

* better error handling

* debug messages

* increase coverage

* remove random log

* don't expose last_valid_state as an attribute
2023-06-02 08:44:36 -04:00
Raman Gupta
d9f059fcaa Improve logic for zwave_js.lock.is_locked attr (#93947) 2023-06-02 06:12:32 -04:00
Raman Gupta
3934f91242 Make Z-Wave device IBT4ZWAVE discoverable as a cover (#93946)
* Make Z-Wave device IBT4ZWAVE discoverable as a cover

* Test device class
2023-06-02 06:09:53 -04:00
Erik Montnemery
ce9a0059d1 Add empty config schema to stt (#93954) 2023-06-02 06:07:44 -04:00
Erik Montnemery
7db943d138 Add CONFIG_SCHEMA to imap_email_content (#93951)
* Add CONFIG_SCHEMA to imap_email_content

* Update homeassistant/components/imap_email_content/__init__.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

---------

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2023-06-02 06:06:59 -04:00
Erik Montnemery
3ed8e2d0e1 Add empty config schema to mailbox (#93953) 2023-06-02 09:28:13 +02:00
Erik Montnemery
0916a6c0cb Remove insteon import flow (#93952) 2023-06-02 09:21:19 +02:00
Chris Talkington
f941203949 Update pyipp to 0.13.0 (#93886) 2023-06-01 22:24:53 -05:00
Tudor Sandu
95e4ef2255 Fix states not being translated in voice assistants (#93572)
Fix states not being translated
2023-06-01 20:10:57 -04:00
J. Nick Koston
8ef799601b Bump aiohomekit to 2.6.4 (#93943)
changelog: https://github.com/Jc2k/aiohomekit/compare/2.6.3...2.6.4

mostly additional logging to help track down #93891
2023-06-01 19:54:44 -04:00
J. Nick Koston
b18356bb3f Fix august aiohttp session being closed out from under it (#93942)
* Fix august aiohttp session being closed out from under it

fixes #93941

* Fix august aiohttp session being closed out from under it

fixes #93941

* Fix august aiohttp session being closed out from under it

fixes #93941
2023-06-01 19:54:25 -04:00
automaton82
ba66a39668 Update netdata to 1.1.0, set longer timeout (#93937) 2023-06-01 22:23:26 +02:00
Paulus Schoutsen
a98094eda6 Bumped version to 2023.6.0b2 2023-06-01 15:07:11 -04:00
J. Nick Koston
3317ea7d95 Bump pyunifiprotect to 4.9.1 (#93931) 2023-06-01 15:07:06 -04:00
J. Nick Koston
4e19843152 Bump python-onvif-zeep to 3.1.9 (#93930) 2023-06-01 15:07:05 -04:00
J. Nick Koston
5ac3bb9e9b Fix onvif cameras that use basic auth with no password (#93928) 2023-06-01 15:07:04 -04:00
Bram Kragten
358700af4e Update frontend to 20230601.1 (#93927) 2023-06-01 15:07:03 -04:00
J. Nick Koston
50bd9e9fdd Make RestoreStateData.async_get_instance backwards compatible (#93924) 2023-06-01 15:07:02 -04:00
Joakim Plate
7f6c0fdd4c Raise exception instead of hide in logs on zha write (#93571)
Raise exception instead of hide in logs

Write request that failed parsing of data would fail,
yet display as successful in the gui.
2023-06-01 15:07:01 -04:00
Sebastian Heiden
44274e5323 Fix LaMetric Config Flow for SKY (#93483)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-06-01 15:07:00 -04:00
Erik Montnemery
32571af131 Add silabs_multiprotocol platform (#92904)
* Add silabs_multiprotocol platform

* Add new files

* Add ZHA tests

* Prevent ZHA from creating database during tests

* Add delay parameter to async_change_channel

* Add the updated dataset to the dataset store

* Allow MultipanProtocol.async_change_channel to return a task

* Notify user about the duration of migration

* Update tests
2023-06-01 15:06:59 -04:00
Erik Montnemery
bb5430ff59 Remove async_setup from locative (#93895)
* Remove async_setup from locative

* Micro-optimize async_setup_entry
2023-06-01 20:08:32 +02:00
Brent Perdue
23ca26ae56 Add save clips to Blink services (#84149) 2023-06-01 20:06:53 +02:00
Erik Montnemery
a1a055f618 Add config entry only config schema to integrations s-z (#93910) 2023-06-01 20:05:11 +02:00
puddly
cc47736d20 Include port info in the ZHA websocket settings response (#93934) 2023-06-01 19:53:41 +02:00
J. Nick Koston
457bc4571d Make RestoreStateData.async_get_instance backwards compatible (#93924) 2023-06-01 19:31:17 +02:00
J. Nick Koston
5a8daf06e8 Fix typing_extensions to match metadata (#93920) 2023-06-01 19:30:08 +02:00
andiukas
1a798f6eee Adding new supported language code to Google translate (#93926) 2023-06-01 19:29:15 +02:00
Bram Kragten
145a8bc41d Update frontend to 20230601.1 (#93927) 2023-06-01 19:23:42 +02:00
J. Nick Koston
5365d57bef Bump pyunifiprotect to 4.9.1 (#93931) 2023-06-01 19:20:32 +02:00
Tobias G
d4e352d6a7 Add humidity sensor to deconz component (#93024)
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2023-06-01 19:16:42 +02:00
J. Nick Koston
0ca53eccb8 Bump python-onvif-zeep to 3.1.9 (#93930) 2023-06-01 19:15:16 +02:00
J. Nick Koston
240372b45d Fix onvif cameras that use basic auth with no password (#93928) 2023-06-01 19:14:03 +02:00
Arjan
8f485be87e Properly order moon phases in attribute (#93933) 2023-06-01 19:09:09 +02:00
Sebastian Heiden
a260c11d4e Fix LaMetric Config Flow for SKY (#93483)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-06-01 18:04:00 +02:00
Erik Montnemery
f9037d5f6d Add platform only config schema to nsw_fuel_station and ping (#93913) 2023-06-01 17:30:15 +02:00
Joost Lekkerkerker
e33ae72f95 Bump python-opensky (#93916) 2023-06-01 11:01:51 -04:00
Joakim Plate
9aed5a47ae Raise exception instead of hide in logs on zha write (#93571)
Raise exception instead of hide in logs

Write request that failed parsing of data would fail,
yet display as successful in the gui.
2023-06-01 10:18:49 -04:00
disforw
1f0e235b99 Move QNAP constants (#93918)
* Create const.py

* Update sensor.py

* Add docstring

* Update sensor.py

* Update homeassistant/components/qnap/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/qnap/const.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-01 16:13:07 +02:00
Erik Montnemery
1a3d6bbb9a Fix typo in cloud (#93917) 2023-06-01 15:21:15 +02:00
disforw
6c7d922def Adding myself as codeowner to QNAP (#93915)
* Adding codeowner and integration_type

* Update CODEOWNERS

* Update sorting

* Update integrations.json
2023-06-01 14:53:28 +02:00
Erik Montnemery
677dd5b1fd Remove async_setup from traccar (#93912) 2023-06-01 13:37:02 +02:00
Erik Montnemery
09e8d7df0f Remove async_setup from sky_hub (#93911) 2023-06-01 13:30:52 +02:00
Erik Montnemery
c1c319d4d1 Rename cv.no_yaml_config_schema to cv.config_entry_only_config_schema (#93908)
* Rename cv.no_yaml_config_schema to cv.config_entry_only_config_schema

* ✏️
2023-06-01 13:15:48 +02:00
RenierM26
e05c04fadb Add Ezviz light entity (#93710)
* Initial commit

* Add ezviz light entity.

* coveragerc

* Apply suggestions from code review

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-06-01 13:01:57 +02:00
Erik Montnemery
15e5cf01bb Add silabs_multiprotocol platform (#92904)
* Add silabs_multiprotocol platform

* Add new files

* Add ZHA tests

* Prevent ZHA from creating database during tests

* Add delay parameter to async_change_channel

* Add the updated dataset to the dataset store

* Allow MultipanProtocol.async_change_channel to return a task

* Notify user about the duration of migration

* Update tests
2023-06-01 12:32:14 +02:00
Erik Montnemery
4f153a8f90 Remove async_setup from hyperion (#93894) 2023-06-01 12:20:04 +02:00
Erik Montnemery
4e5902c15b Remove async_setup from gpslogger (#93893) 2023-06-01 12:19:14 +02:00
Erik Montnemery
c5dd540ffc Remove async_setup from econet (#93892) 2023-06-01 12:18:54 +02:00
Erik Montnemery
fd08cfb074 Add empty config schema to mobile_app (#93900) 2023-06-01 12:17:55 +02:00
Joost Lekkerkerker
a6b6b03f2e Add video id to youtube sensor state attributes (#93668)
* Add video id to state attributes

* Make extra state attributes not optional

* Revert "Make extra state attributes not optional"

This reverts commit d2f9e936c8.
2023-06-01 11:46:59 +02:00
Erik Montnemery
a4b8b4f7c2 Add config entry only config schema to integrations a-r (#93899) 2023-06-01 11:42:14 +02:00
Erik Montnemery
f2ea2a886c Remove setup from remote_rpi_gpio (#93901) 2023-06-01 11:36:20 +02:00
Erik Montnemery
08bfe8f5cc Remove async_setup from ring (#93902) 2023-06-01 11:34:18 +02:00
Erik Montnemery
ba76bbee44 Remove async_setup from zerproc (#93903) 2023-06-01 11:33:37 +02:00
Erik Montnemery
e0db9ab041 Add CONFIG_SCHEMA to broadlink (#93854)
* Add CONFIG_SCHEMA to broadlink

* Simplify error message

* Rename to no_yaml_config_schema

* Add tests

* Raise issue

* Tweak repairs issue description and title

* Update homeassistant/helpers/config_validation.py

* Add link

* Update homeassistant/components/homeassistant/strings.json

Co-authored-by: Franck Nijhof <git@frenck.dev>

* Fix logic, add test

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-01 09:51:26 +02:00
Tom Harris
f73754ff58 Restructure Insteon start-up (#92818)
* Restructure startup

* Code review

* Further typing

* Fix circular import
2023-06-01 08:50:35 +02:00
Paulus Schoutsen
65a9bd661d Bumped version to 2023.6.0b1 2023-05-31 21:17:59 -04:00
Paulus Schoutsen
fb50f0d875 Bump frontend to 20230601.0 (#93884) 2023-05-31 21:17:51 -04:00
puddly
d6f2e1cdff Increase Zigbee command retries (#93877)
* Enable retries for requests

* Update unit tests

* Account for fewer group retries in unit tests
2023-05-31 21:17:50 -04:00
Álvaro Fernández Rojas
d10dd54d88 Update aioairzone-cloud to v0.1.7 (#93871)
* Update aioairzone-cloud to v0.1.7

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: fix copy&paste description

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-31 21:17:49 -04:00
Diogo Gomes
22ed622152 Delay filter integration until after HA has started (#91034)
* delay filter start

* Update homeassistant/components/filter/sensor.py

* Update homeassistant/components/filter/sensor.py

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-05-31 21:17:48 -04:00
Diogo Gomes
408f0bdd6b Always update Filter sensors attr on new_state (#89096)
* always update attr

* reset filter on unit change
2023-05-31 21:17:47 -04:00
Paulus Schoutsen
938ff679de Bump frontend to 20230601.0 (#93884) 2023-05-31 21:14:59 -04:00
J. Nick Koston
7995d3777a Fix package names to match pypi index metadata (#93883)
* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* Fix package names to match pypi index metadata

* uses _

* uses -

* fix metadata
2023-05-31 21:12:53 -04:00
Diogo Gomes
046ae8eb1e Delay filter integration until after HA has started (#91034)
* delay filter start

* Update homeassistant/components/filter/sensor.py

* Update homeassistant/components/filter/sensor.py

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-05-31 21:10:15 -04:00
Diogo Gomes
022fa1ee67 Always update Filter sensors attr on new_state (#89096)
* always update attr

* reset filter on unit change
2023-05-31 21:03:55 -04:00
Álvaro Fernández Rojas
11e268775c Update aioairzone-cloud to v0.1.7 (#93871)
* Update aioairzone-cloud to v0.1.7

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: fix copy&paste description

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-31 20:09:23 -04:00
puddly
b9ec3a8af8 Increase Zigbee command retries (#93877)
* Enable retries for requests

* Update unit tests

* Account for fewer group retries in unit tests
2023-05-31 20:08:18 -04:00
Robert Hillis
226647f625 Add binary sensor platform to Dremel 3D Printer (#93881)
Add binary sensor platform to Dremel
2023-05-31 20:07:14 -04:00
mkmer
198608906c Address late review for whirlpool (#93874)
Address late review
2023-06-01 00:21:13 +02:00
Mike Degatano
e272e3c721 Refactor try catch in hassio.issues per feedback (#93872) 2023-06-01 00:11:00 +02:00
Jeff Grieger
47a2d5b472 Add zwave_js speed config for additional GE/Jasco fan controllers (#92371)
* Add zwave_js speed config for additional GE/Jasco fan controllers

Add speed info for Honeywell(GE/Jasco) 39358 In-Wall Fan Speed Control and Enbrighten(GE/Jasco) 55258 In-Wall Fan Speed Control.

* Add test for Honeywell 39358 In-Wall Fan Speed Control
2023-06-01 00:09:35 +02:00
Paulus Schoutsen
cd330a2740 Pass device ID to conversation input (#93867) 2023-05-31 16:56:12 -04:00
Robert Hillis
a1e9cf1c24 Add Dremel 3D Printer integration (#85969)
* Add Dremel 3D Printer integration

* remove validators requirement

* ruff

* uno mas

* uno mas

* uno mas

* uno mas

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Tom Harris <tomharris@harrisnj.net>
2023-05-31 16:55:57 -04:00
Franck Nijhof
8d8d0fc9d2 Bump version to 2023.7.0dev0 (#93869) 2023-05-31 20:34:30 +02:00
Franck Nijhof
ab2e891e91 Bumped version to 2023.6.0b0 2023-05-31 17:55:47 +02:00
Raman Gupta
cb616cdf4e Move Z-Wave refresh value service out of task (#93866) 2023-05-31 11:52:01 -04:00
Bram Kragten
22e7c9cc76 Update frontend to 20230531.0 (#93862) 2023-05-31 17:23:13 +02:00
Matthias Alphart
7b7ea24303 Update knx-frontend to 2023.5.31.141540 (#93864) 2023-05-31 17:20:53 +02:00
Raman Gupta
f1552304e1 Give zwave_js platinum quality score (#93845) 2023-05-31 17:15:44 +02:00
Raman Gupta
bd8c88f51b Add error handling for all zwave_js service calls (#93846)
* Add error handling for all service calls

* Switch siren to use internal function

* Remove failing checks

* Revert change to poll service, add comments, and add additional error handling

* Add error handling for ping and refresh + review comment + add tests

* Add test for statistics entity refresh
2023-05-31 11:09:01 -04:00
Paulus Schoutsen
927b59fe5a Simplify get pipeline method (#93865) 2023-05-31 10:06:03 -05:00
Justin Vanderhooft
4bade86dcc Add time component to Melnor Bluetooth integration (#93652)
* Add time component to Melnor Bluetooth integration

* Apply suggestions from code review

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-05-31 11:00:52 -04:00
c0ffeeca7
c3a3ddcfa4 Standardize spelling of TTS and STT (#93857)
* Standardize spelling of TTS and STT

* Apply suggestions from code review

* Update homeassistant/components/tts/media_source.py

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-05-31 11:00:19 -04:00
Mark Kennedy
b03dbeaed5 Block legacy get-mac in preference of getmac (#87712)
Co-authored-by: GnatorX <garvinpang@protonmail.com>
2023-05-31 16:57:45 +02:00
Diego Rodríguez Royo
3cf8ae64c8 Matter cover position improvements (#92278) 2023-05-31 16:08:01 +02:00
Dominik
c8c368340d Glances: Improve performance (#93852)
* Improve performance

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-05-31 09:17:23 -04:00
Luke
1d7498378e Add Status indicator light switch to Roborock (#93842)
add status indicator light switch
2023-05-31 14:26:39 +02:00
Yuxin Wang
676b6ab706 Add support for "days" unit for STESTI sensor in APCUPSD integration (#93844)
Add a test case for self test interval
2023-05-31 14:25:46 +02:00
Álvaro Fernández Rojas
21771457d1 Use library constants for Airzone Cloud diagnostics (#93858)
airzone_cloud: diagnostics: use constants from library

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-31 14:22:53 +02:00
David F. Mulcahey
0f4dec534c Bump ZHA quirks (#93860) 2023-05-31 14:14:49 +02:00
Raman Gupta
b3990d48d2 Improve Z-Wave support for Ultraviolet multilevel sensor values (#93848)
Improve support for Ultraviolet multilevel sensor values
2023-05-31 13:31:02 +02:00
Raman Gupta
1eb1ea08b0 Add support for Energy Production CC sensors (#93839) 2023-05-31 13:28:07 +02:00
Marc Mueller
c72477811e Fix event typing (#93859) 2023-05-31 12:33:56 +02:00
G Johansson
f7b15dbf84 Fix Timer change service (#93469) 2023-05-31 12:00:45 +02:00
Jan Bouwhuis
fa4d9b2c08 Rework mqtt climate platform to simplify implementation water_heater platform (#93751)
* Rework to simplify water_heater platform

* Remove unused type hints

* Split shared and specific subscriptions

* Convert to abstract class
2023-05-31 11:12:58 +02:00
Erik Montnemery
59c6220b7c Subscribe to device registry changes from entities (#93601)
* Subscribe to device registry changes from entities

* Use async_track_device_registry_updated_event

* Fix unsubscribe

* Fix logic, add tests
2023-05-31 11:01:55 +02:00
Raman Gupta
204215e0f2 Cleanup unnecessary pylance warnings (#93849) 2023-05-31 10:15:21 +02:00
Erik Montnemery
b5f5e1c8c3 Add empty config schema to integrations t-z (#93853) 2023-05-31 10:13:26 +02:00
Erik Montnemery
ef4dea07cd Improve no-yaml warning (#93851) 2023-05-31 10:11:02 +02:00
Erik Montnemery
24ed53cebe Drop incorrect CONFIG_SCHEMA from the homeassistant integration (#93850) 2023-05-31 10:10:44 +02:00
G Johansson
3f3b833034 Add issue when integration key YAML not supported (#93807)
* Add issue when integration key YAML not supported

* Fix feedback

* Fix review

* Update homeassistant/components/homeassistant/strings.json

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-05-31 09:56:33 +02:00
Jan Bouwhuis
661aedde90 Remove MQTT platform schema warnings (#93785) 2023-05-31 09:02:48 +02:00
Raman Gupta
4119d3198a Support zwave config parameters not on endpoint 0 (#93383)
* Support zwave config parameters not on endpoint 0

* Update device automation logic

* Make endpoint required

* Update homeassistant/components/zwave_js/services.py

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

* Update homeassistant/components/zwave_js/services.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-05-30 23:52:12 -04:00
Luke
8244887bb3 Rename confusing device info in Roborock (#93843)
rename confusing device info
2023-05-31 05:33:18 +02:00
Teemu R
23c5e60be0 Swallow error 40000 for songpal power on/off (#80563)
* Swallow error 40000 for songpal power on/off

* Move ERROR_REQUEST_RETRY to consts

* Add tests for the swallow exception behavior

* Update tests/components/songpal/test_media_player.py

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-05-30 22:58:41 -04:00
Luke
81561d4d3e Add non coordinated Entity to Roborock (#93841)
switch to non coordinator entity
2023-05-30 22:58:27 -04:00
Raman Gupta
8cd8355ab1 Bump zwave-js-server-python to 0.49.0 (#93835)
* Bump zwave-js-server-python to 0.49.0

* fix tests
2023-05-30 22:40:55 -04:00
leranp
4a3f341444 Language codes for Hebrew (#93681)
* Language codes for Hebrew

There is 2 optional code for Hebrew:
he-IL is the new code
iw-IL is the old code , the google cloud STT for example is using the old code (iw)

* Update language.py

* Update test_language.py

* Update test_language.py

* Update test_language.py

* Simplify duplicate language check

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-05-30 22:27:32 -04:00
mkmer
bfec3d68dd Calculate _attr_native_value when no restore state and appliance is running in Whirlpool (#88559)
* Initialize _attr_native_value when running

* Fix return type on update_sensor_state()
move init at startup if _attr_native_value is None

* allow update _attr_native_value when running and none
2023-05-30 21:48:39 -04:00
J. Nick Koston
fba826ae9e Migrate restore_state helper to use registry loading pattern (#93773)
* Migrate restore_state helper to use registry loading pattern

As more entities have started using restore_state over time, it
has become a startup bottleneck as each entity being added is
creating a task to load restore state data that is already loaded
since it is a singleton

We now use the same pattern as the registry helpers

* fix refactoring error -- guess I am tired

* fixes

* fix tests

* fix more

* fix more

* fix zha tests

* fix zha tests

* comments

* fix error

* add missing coverage

* s/DATA_RESTORE_STATE_TASK/DATA_RESTORE_STATE/g
2023-05-30 20:48:17 -05:00
starkillerOG
b91c6911d9 Reolink autotrack streams for TrackMix and high/low resolution snapshots (#90591)
* Add auto track stream for Trackmix connected to NVR

* Enable autotracking stream by default

* Add snapshot high/low resolution

* Improve naming

* fix snapshots camera's not beeing added

* keep unique ID the same

* fix styling
2023-05-30 21:42:58 -04:00
Emory Penney
9eac0458dd Obihai to have common unique_ids with DHCP or without (#91239)
* DHCPInfo and get_mac_address case mismatch

* Switch to format_mac

* Run black
2023-05-30 21:40:59 -04:00
Dominik
f6d3b0618e Glances: Add error handling for invalid sensor data (#93542)
* Set sensor to Unavailable
when native_value is invalid

* Add unit tests for sensors
2023-05-30 21:35:33 -04:00
G Johansson
ac8d8dccd2 Add translation for Trafikverket Weatherstation sensor (#87315)
* Trafikverket weatherstation translate sensor

* Fix enums
2023-05-30 21:25:31 -04:00
G Johansson
6736ed67ba Translate config flow for sensor measurement option in group (#87374)
* Translate config flow

* reset en

* Delete en.json
2023-05-30 21:23:47 -04:00
G Johansson
5e1c9ba80d Translate entity names for Yale Smart Living (#93560) 2023-05-30 21:22:11 -04:00
J. Nick Koston
466eec2f04 Add a debounce to ld2410 to prevent it from overwhelming the state machine with many devices (#93819)
* Add a debounce to ld2410 to prevent it from overwhelming the state machine

fixes #86665

* set time on debounce
2023-05-30 21:13:49 -04:00
Luke
049582ec50 Add Switch platform to Roborock (#93833)
* init

* add switch platform

* remove stale comments

* remove stale list

* set entity category to config
2023-05-30 21:10:28 -04:00
Jan Bouwhuis
3a7f9ab57d Remove mqtt sensor support for last_reset_topic (#93792)
* Remove mqtt sensor support for `last_reset_topic`

* Add cases for empty last reset messages
2023-05-30 21:07:07 -04:00
andarotajo
d421a51576 Add coordinator to dwd_weather_warnings (#93720)
* Add data coordinator

* Specify coordinator data type

* Apply code review changes
2023-05-30 20:22:27 -04:00
J. Nick Koston
3186ddb095 Speed up setting up event trackers (#93823)
noticed in https://github.com/home-assistant/core/pull/93601 that
the cost of creating the function in the closure was a bit expensive
since we do it once per entity
2023-05-30 20:12:52 -04:00
J. Nick Koston
9f0d3bfce8 Use ReadOnlyDict for entity registry options (#93824)
* Use ReadOnlyDict for entity registry options

While reviewing #93601 it was noticed this was slow at startup
https://github.com/home-assistant/core/pull/93601#issuecomment-1568958280

This is a first pass attempt to improve the performance

* fix tests
2023-05-30 20:11:39 -04:00
Stefan Agner
31e217a11e Update iotawattpy to use our own fork (#93830)
Unfortunately iotawattpy got dormant. Use our fork hosted at in the
[home-assistant-libs/iotawattpy](https://github.com/home-assistant-libs/iotawattpy)
repository and available on PyPI as ha-iotawatt instead.

The first release of the fork also contains a fix for issue #82869.
2023-05-30 20:03:21 -04:00
Yuxin Wang
0653aed49f Directly check string representation of sensor states in APCUPSD tests (#93783)
* Directly check the string representation of sensor states

* Fix expected state value for sensor.ups_nominal_output_power
2023-05-30 20:01:05 -04:00
Tudor Sandu
fe472e6c5b Fix error if a custom_sentences file is empty (#93530)
* Fix #93528

* Log warning file is invalid

* More explicit log warning message

* Rewrite log message
2023-05-30 19:53:52 -04:00
Jesse Hills
d7d9143a44 Add speech detection and conversation_id to esphome voice assistant (#93578)
* Add speech detection to esphome voice assistant

* Timeout after silence
Ensure events are sent before finish is called

* use va_version 3 instead of ESPHome version

* Convert repeated fixtures to factory

* Add some v3 tests

* Add conversation_id

* Bump aioesphomeapi to 13.8.0

* Fix missed buffering of detected chunk

* Alter log message

* Updates

* Spelling

* Fix return type
2023-05-30 19:49:22 -04:00
starkillerOG
49f10eecaa Fix false reolink ONVIF webhook warning (#91015) 2023-05-30 23:13:08 +02:00
Franck Nijhof
58259f1103 Get nightly intents from new intents-package repo (#93826)
Get nighlty intents from new intents-package repo
2023-05-30 16:10:08 -05:00
Ville Skyttä
c7c4ee13c3 Import util.dt as dt_util in remaining tests, enforce with ruff (#93765)
* Import `util.dt` as `dt_util` in remaining tests, enforce with ruff

* Fix `util.dt` import in pvpc_hourly_pricing tests
2023-05-30 23:30:31 +03:00
Michael Hansen
1dcabae760 Don't skip chunk before speech (#93825) 2023-05-30 22:18:55 +02:00
Michael Hansen
9f4c9f1ce3 Bump intents to 2023.5.30 (#93822) 2023-05-30 22:11:08 +02:00
Mike Degatano
c25b26214b Add docker config repair for supervisor issue (#93820) 2023-05-30 22:08:45 +02:00
Raman Gupta
05c3d8bb37 Add zwave_js node statistics sensors (#91714)
* Add node statistics sensors

* fix tests and don't let controller state leak across tests

* Add background RSSI

* Remove extra logging statement

* fix test

* comments

* setup platform once

* Add static properties to entity description

* Update homeassistant/components/zwave_js/sensor.py

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

* don't dupe attribute values in entity description

* fix exception

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-05-30 20:44:32 +02:00
Jan Bouwhuis
1e0770ff8a Add ssl_verify option to imap integration (#93811)
* Add ssl_verify option to imap integration

* Add test
2023-05-30 19:48:47 +02:00
Franck Nijhof
46d8885023 Use deployment environment in GitHub build actions (#93800) 2023-05-30 19:43:59 +02:00
J. Nick Koston
89cc57c0d6 Fix double state write on camera added to hass when rtsp_to_webrtc is present (#93806) 2023-05-30 19:43:48 +02:00
J. Nick Koston
17d1c0733d Remove outdated HAOS check from bluetooth (#93809) 2023-05-30 19:41:51 +02:00
G Johansson
105608792e Fix switch acting as toggle in Sensibo (#93810)
* Fix switch as toogle

* typing
2023-05-30 20:39:03 +03:00
Jan Bouwhuis
74741c7634 Fix imap advanced settings not shown (#93813) 2023-05-30 20:37:07 +03:00
Luke
c678664d9a Add translations to Roborock fan speed (#93801) 2023-05-30 18:52:55 +02:00
Luke
de3406c856 Add more information to Roborock Status (#93636)
Co-authored-by: Humberto Gontijo <humberto.gontijo@clevertech.biz>
2023-05-30 18:51:57 +02:00
Franck Nijhof
8e05e3850b Deprecate Python 3.10 (#93794) 2023-05-30 18:46:33 +02:00
Raman Gupta
65187c6f11 Add zwave config parameter entities (#92223)
* Add zwave config parameter entities

* Remove unused entity const

* remove unusued imports

* review comments

* switch to reserved values

* fix test
2023-05-30 11:49:55 -04:00
Erik Montnemery
55c2bb59c8 Fix race in rfxtrx config flow (#93804)
* Fix race in rfxtrx config flow

* Add timeout

* Use async_timeout.timeout
2023-05-30 17:45:33 +02:00
Raman Gupta
90bf5429ca Add support for Window Covering CC (#93314)
* Refactor zwave_js.cover and improve test coverage

* Remove extra fixtures

* cleanup old stuff

* Get coverage to 100

* Add support for Window Covering CC

* fix bug

* typo

* remove redundant stuff

* slight change to improve readability

* Add device class

* Update to match specs
2023-05-30 11:26:23 -04:00
PeteRager
6a8d18ab35 Sonos setup fails with unhandled exceptions on discovery messages (#90648)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-05-30 10:09:13 -05:00
Erik Montnemery
11299c4537 Deduplicate Thread datasets based on EXTPANID (#93795)
* Deduplicate Thread datasets based on EXTPANID

* Apply suggestions from code review
2023-05-30 16:16:56 +02:00
Erik Montnemery
d05d67414a Teach search about blueprints (#78535) 2023-05-30 15:04:35 +02:00
Franck Nijhof
24e1243da7 Delay release of HA Python release until Docker is ready (#93798) 2023-05-30 14:39:19 +02:00
Diego Rodríguez Royo
1a9da67a28 Add tilt support to Matter cover (#92256) 2023-05-30 13:05:14 +02:00
Erik Montnemery
16d8c8d4d5 Bump python-otbr-api to 2.1.0 (#93790)
* Bump python-otbr-api to 2.1.0

* Fix tests
2023-05-30 12:47:46 +02:00
Franck Nijhof
4596ff0ce5 Merge branch 'master' into dev 2023-05-30 12:13:15 +02:00
Brandon Rothweiler
c513934f25 Fix broken URL in MQTT discovery log message (#93778) 2023-05-30 11:39:55 +02:00
Álvaro Fernández Rojas
2df49b416c Add WebServer sensors to Airzone Cloud (#93757) 2023-05-30 10:23:14 +02:00
Erik Montnemery
901624ad6f Adapt otbr to upstream openthread REST API changes (#93544)
* Adapt otbr to upstream openthread REST API changes

* Bump python-otbr-api to 2.0.0
2023-05-30 10:11:21 +02:00
G Johansson
49ae298c55 Use entity attributes in Obihai sensor (#93564) 2023-05-30 08:35:47 +02:00
J. Nick Koston
c25ccb90a4 Speed up creating automations (#93776)
Creating the inner coroutine for each automation to be run at started
was expensive when the user had 1000s of automations
2023-05-29 22:51:35 -05:00
Luke
c129b4d0c2 Remove unneeded icon for Roborock sensor (#93774)
removed unneeded icon
2023-05-29 22:45:53 -04:00
Allen Porter
01a6173cc9 Fix failing todoist test that used timezone before set by fixture (#93775)
* Fix failing todoist test that used timezone before set by fixture

* Merge fix for dt -> dt_util
2023-05-29 22:45:22 -04:00
Marc Mueller
4cbbfaf55a Update pydantic to 1.10.8 (#93772) 2023-05-29 20:48:26 -05:00
J. Nick Koston
cc107bd0b7 Add a filter to the tasmota device registry listener (#93640)
We can avoid creating a task when the event is not
a remove which will be most cases
2023-05-29 20:59:51 -04:00
J. Nick Koston
493d78f070 Avoid dict comp in statistic_during_period if there is no conversion (#93699) 2023-05-29 20:59:15 -04:00
J. Nick Koston
53fe74e055 Reduce overhead to fetch integrations (#93767)
We call this path over and over during startup and most
of the time the integration is already loaded. We want
that case to be the short path
2023-05-29 20:58:51 -04:00
rikroe
1ea202a5bc Add charging switch to BMW Connected Drive (#93737)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-05-29 23:48:13 +02:00
mover85
07dd34b04a Bump pydaikin 2.9.1 (#93635) 2023-05-29 23:44:05 +02:00
J. Nick Koston
b063a54295 Reduce overhead to match homekit zeroconf discoveries (#93753) 2023-05-29 23:42:12 +02:00
Joost Lekkerkerker
df6317f65e Add entity name translations to Buienradar (#91511)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-05-29 23:36:53 +02:00
rikroe
52ef4a3b75 Ensure state update after BMW remote service execution (#93745)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-05-29 23:28:06 +02:00
Raman Gupta
24290e5d08 Add datetime platform (#81943)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-05-29 23:24:15 +02:00
Ville Skyttä
940942a74a Import util.dt as dt_util in components/[p-s]* (#93761) 2023-05-30 00:09:42 +03:00
Ville Skyttä
2e59ae9e90 Import util.dt as dt_util in components/[k-o]* (#93760) 2023-05-29 23:02:14 +02:00
Ville Skyttä
ced67e5800 Import util.dt as dt_util in components/[a-d]* (#93756) 2023-05-30 00:02:06 +03:00
Ville Skyttä
5aadd7ffc9 Import util.dt as dt_util in components/[g-i]* (#93759) 2023-05-30 00:01:00 +03:00
Ville Skyttä
1ce74ba25c Import util.dt as dt_util in components/[t-z]* (#93763) 2023-05-29 23:00:43 +02:00
Ville Skyttä
70c49824d7 Import util.dt as dt_util in components/[e-f]* (#93758) 2023-05-30 00:00:11 +03:00
Álvaro Fernández Rojas
6aa01e1441 Add Aidoo sensors to Airzone Cloud (#93541) 2023-05-29 21:58:53 +02:00
Erik Montnemery
8b662dc94f Detect attempt to setup config entry integration via YAML (#93589) 2023-05-29 21:01:47 +02:00
Erik Montnemery
ef68f2c3ff Add empty config schema to integrations d-h (#93645) 2023-05-29 21:00:08 +02:00
Erik Montnemery
9c01ea003c Add empty config schema to integrations i-o (#93698) 2023-05-29 20:58:00 +02:00
Erik Montnemery
8896b27f70 Add empty config schema to integrations p-s (#93700) 2023-05-29 20:57:18 +02:00
J. Nick Koston
6cc5bee960 Fix onvif setup failing when unable to parse camera time (#93677) 2023-05-29 20:53:52 +02:00
J. Nick Koston
2f1f32f0bb Make unit converter use a factory to avoid looking up the ratios each conversion (#93706) 2023-05-29 20:50:40 +02:00
Jerome Garec
7f3f2eea38 Add overkiz control for ATLANTIC_PASS_APC_HEATING_ZONE (#93712) 2023-05-29 20:42:46 +02:00
J. Nick Koston
9443ca89bc Handle exceptions to prevent disconnect when esphome state subscription raises (#93723) 2023-05-29 20:41:50 +02:00
Yuxin Wang
a547181984 Fix unit inference for ITEMP field for APCUPSD integration (#93724) 2023-05-29 20:40:36 +02:00
J. Nick Koston
17fadbcf4a Reduce overhead to update unifiprotect entity (#93725) 2023-05-29 20:39:34 +02:00
Erik Montnemery
8053073a77 Add empty config schema to integrations a-c (#93608) 2023-05-29 14:38:33 -04:00
G Johansson
171ce747c1 Remove nextcloud YAML configuration (#93550) 2023-05-29 20:33:29 +02:00
Ville Skyttä
f5cba290ad Access datetime.datetime and .time directly in caldav (#93688) 2023-05-29 20:27:47 +02:00
Álvaro Fernández Rojas
a3ce1ac497 Fix possible KeyError exception in Airzone Cloud (#93747)
airzone_cloud: fix KeyError for Aidoo installations

Some Airzone Cloud installations might be limited to Aidoo devices. In that
case, the library will provide AZD_AIDOOS, but it won't provide AZD_ZONES,
resulting in a KeyError exception.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-29 13:22:42 -05:00
Joakim Plate
067fc079a3 Don't mock non async with AsyncMock (#93749) 2023-05-29 20:20:27 +02:00
Joakim Plate
617ff24b9b Fix missed case for device tuple fallback in rfxtrx (#93575)
* rfxtrx: add missed case for device tuple fallback

Previously the code was prepared for a backward compatible
migration of tuples, where both styles of identifiers might exist
in device registry at the same time.

This place was sadly missed

* No need to raise special, we can assert instead

* Add some basic tests
2023-05-29 19:59:11 +02:00
G Johansson
e1ef027461 Address late review comments for Command Line (#93743)
* Late review comments

* Rephrase
2023-05-29 19:45:42 +02:00
Stephan Uhle
64ee1e8e43 Bump pysml to 0.0.12 (#93686) 2023-05-29 19:41:32 +02:00
Luke
3b4273d018 Add Roborock Clean time sensors (#93637)
* add clean time information

* add sensor test

* update to cleaning time

* fix sensor test
2023-05-29 09:40:35 -07:00
J. Nick Koston
3c5475a558 Drop codeowner for radiotherm (#93744) 2023-05-29 18:03:36 +02:00
mkmer
b42a5bab89 Bump Blinkpy to 0.21.0 (#93735) 2023-05-29 17:48:08 +02:00
J. Nick Koston
db931132a8 Fix thread leak in onvif discovery (#93742) 2023-05-29 17:06:13 +02:00
J. Nick Koston
3db59908ca Switch mqtt to use async_track_device_registry_updated_event (#93603) 2023-05-29 09:43:01 -05:00
Jan Bouwhuis
c44a7fe358 Do not trigger reload when unloading or reloading MQTT entry (#93588)
* Do not trigger reload when unloading MQTT entry

* More cleanup

* cleanup async_reload_manual_mqtt_items

* Add test

* Improve test

* Remove unuse mocks from test

* Add discovery item in test
2023-05-29 15:44:09 +02:00
G Johansson
46e7486ce6 Move yaml configuration to integration key for command_line (#92824)
* Inital init commit

* bs and cover

* notify

* sensor

* switch

* Issues

* Finalize __init__

* First pass tests

* Fix Binary sensors

* Test cover

* Test notify

* Test sensor

* Tests switch

* Fix coverage

* Add codeowner

* Fix caplog

* test issue

* Flaky test notify

* Fix async

* Adjust yaml structure

* Change yaml format again

* Issue strings

* Fix tests

* string review comment
2023-05-29 08:00:50 +02:00
Joost Lekkerkerker
20d1a0fc77 Add Options flow to YouTube (#93667)
* Add Options flow to YouTube

* Add strings for options flow

* Add strings for options flow

* Add strings for options flow
2023-05-28 21:44:45 -04:00
Marvin Wichmann
795ef075da Restore original websocket commands for config entries (#93707)
Restore original websocket commands and add "config_entries/get_single"
2023-05-28 21:40:35 -04:00
Erik Montnemery
5f584d5dbd Fix typo in switcher_kis (#93702) 2023-05-28 22:39:41 +02:00
G Johansson
c6feb30c31 Raise issue "does not support platform setup" (#93585)
* Raise issue on platform missing

* Modify issue

* Remove deprecation

* Fix strings

* Strings

* Last strings

* strings to common
2023-05-28 21:53:32 +02:00
Joost Lekkerkerker
68c646be40 Improve async youtube (#93685)
* Improve async youtube

* Improve async youtube
2023-05-28 08:48:43 -07:00
Erik Montnemery
25b5ad7de4 Fix typo in ping (#93701) 2023-05-28 10:11:46 -05:00
J. Nick Koston
083cf7a38b Fix refactoring error with updating polling entities in sequence (#93693)
* Fix refactoring error with updating in sequence

see #93649

* coverage

* make sure entities are being updated in parallel

* make sure entities are being updated in sequence
2023-05-28 16:20:48 +02:00
Erik Montnemery
49c3a8886f Make cv.empty_config_schema log an error instead of raise (#93646)
* Make cv.empty_config_schema log an error instead of raise

* Add test

* Update homeassistant/helpers/config_validation.py

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-05-28 15:54:22 +02:00
Matthias Alphart
7ff1c79514 Update xknx to 2.10.0 and knx-frontend to 2023.5.28.94855 (#93694) 2023-05-28 15:22:38 +02:00
Jan Bouwhuis
4c0d169cfc Fix imap parsing non rfc compliant date crash (#93630)
* Fix imap parsing non rfc compliant date crash

* Use parsedate_to_datetime from mail.utils
2023-05-28 13:28:11 +02:00
Joost Lekkerkerker
202c9071a4 Improve Youtube integration (#93683)
* Fix feedback

* Fix feedback
2023-05-28 10:52:30 +02:00
Sven Serlier
41882d833d Update dialogflow URL (#93616)
Update URL
2023-05-28 08:52:52 +02:00
Erik Montnemery
02b76be0ba Use config entry setup in cast tests (#93595)
* Use config entry setup in cast tests

* Remove import step from config flow

* Remove import tests

* Fix tests
2023-05-27 21:07:54 -04:00
Joost Lekkerkerker
fad3a4e168 Improve OpenSky typing (#93666)
* Add types to OpenSky

* Update .strict-typing

* Add types to OpenSky
2023-05-27 20:58:04 -04:00
J. Nick Koston
5f5951e71c Add hardware model to onvif config flow discovery (#93676) 2023-05-27 19:47:13 -05:00
Joost Lekkerkerker
f3037d0b84 Add reauth flow to Youtube (#93670) 2023-05-27 20:29:18 -04:00
J. Nick Koston
cc12698f26 Make diagnostics dataclasses sloted (#93600)
Now available since our minimum python version is 3.10

Saves a tiny bit of ram
2023-05-27 20:04:39 -04:00
J. Nick Koston
0a9c4f15c4 Add event helper to dispatch device registry updates by device_id (#93602)
* Add event helper to dispatch device registry updates by device_id

* Update homeassistant/helpers/event.py

* dry

* dry

* reduce

* reduce

* reorder

* reduce

* cleanup stack depth

* dry

* fix double lookup

* remove unused

* collapse
2023-05-27 20:04:09 -04:00
J. Nick Koston
e1b7d68134 Speed up processing subscribe_events and subscribe_entites when user has read all permissions (#93611)
Speed up processing subscribe_events and subscribe_entites when user the read all permissions
2023-05-27 19:59:46 -04:00
J. Nick Koston
67d9fa8b22 Disable call_soon for device tracker device registry updates (#93638)
Run device tracker device registry updates immediately
without the call_soon delay. This listener does not
need a delay and it only adds overhead in this case.
2023-05-27 19:58:27 -04:00
J. Nick Koston
b966ff7a3d Await in sequence when we know we will be blocked by the entity platform semaphore (#93649)
* Defer creating tasks we know are going to wait on the entity platform semaphore

When looking at whats going on with aiomonitor-ng, I noticed
we end up creating a lot of tasks that block waiting for the
executor because of the entity platform parallel_updates semaphore.

When we know the tasks are going to block we now await them
in sequence to avoid feeding the loop a herd of tasks that
will block on the semaphore

* change during iteration fix

* change during iteration fix

* cleanup

* cleanup

* fix vizio test
2023-05-27 19:58:02 -04:00
J. Nick Koston
a56b5994e5 Disable polling for samsungtv remote entities (#93650)
These entities do not have a defined state, there is no reason to poll
2023-05-27 19:55:48 -04:00
J. Nick Koston
460d04fc07 Disable polling on energy sensors (#93651)
These sensors do not implement async_update so no
polling is needed
2023-05-27 19:54:40 -04:00
J. Nick Koston
5feceee588 Improve performance when serializing small bits of JSON (#93653)
* Improve performance when serializing small bits of JSON

Making json_bytes a partial reduced the run time to
build the small JSON messages by ~18.75%

We serialize a lot of small messages over the websocket

* typing
2023-05-27 19:53:52 -04:00
J. Nick Koston
c721cbd10c Collapse valid state check when creating a state (#93655)
Inline valid state check when creating a state

This was added in #9696 and only used in one place so
it does not need to be another function
2023-05-27 19:53:08 -04:00
J. Nick Koston
560e744f1e Reduce overhead to filter entities in the recorder (#93656)
* Reduce overhead to filter entities in the recorder

* fix type
2023-05-27 19:52:42 -04:00
J. Nick Koston
5a0b25479e Use httpx instead of requests for mjpeg camera images that need digest to avoid jump to executor (#93244)
* Use httpx instead of requests for mjpeg camera images that need digest

Avoids jump to executor

* Use httpx instead of requests for mjpeg camera images that need digest

Avoids jump to executor

* stream as well

* fix

* fix
2023-05-27 19:46:46 -04:00
J. Nick Koston
3a1389c3b4 Switch some frequently called call_laters to call_at (#93659)
* Switch some frequently called call_laters to call_at

call_at is a bit faster than call_later since call_later
is a wrapper around call_at.

We call at lot of these at startup so it helps a bit when
we are resource constrained

* update test

* update test
2023-05-27 19:45:35 -04:00
Álvaro Fernández Rojas
94ad9643b5 Update aioairzone to v0.6.1 (#93629) 2023-05-27 18:25:49 -05:00
Joost Lekkerkerker
e4c51d43f0 Add YouTube integration (#92988)
* Add YouTube stub

* Add YouTube stub

* Add YouTube stub

* Add YouTube stub

* Add Youtube stub

* Add Youtube stub

* Add tests

* Add tests

* Add tests

* Clean up

* Add test for options flow

* Fix feedback

* Fix feedback

* Remove obsolete request

* Catch exceptions

* Parallelize latest video calls

* Apply suggestions from code review

Co-authored-by: Robert Hillis <tkdrob4390@yahoo.com>

* Add youtube to google brands

* Fix feedback

* Fix feedback

* Fix test

* Fix test

* Add unit test for http error

* Update homeassistant/components/youtube/coordinator.py

Co-authored-by: Robert Hillis <tkdrob4390@yahoo.com>

* Fix black

* Fix feedback

* Fix feedback

* Fix tests

---------

Co-authored-by: Robert Hillis <tkdrob4390@yahoo.com>
2023-05-27 11:21:12 -07:00
Aaron Godfrey
bb170a2bbf Fix todoist end time for tasks with due date in the future (#91874)
Fix end time for tasks with due date in the future.

Co-authored-by: Allen Porter <allen@thebends.org>
2023-05-27 10:09:11 -07:00
Artem Draft
c5e425d075 Bump androidtvremote2 to 0.0.9 (#93634) 2023-05-27 09:49:57 +02:00
Raj Laud
236ee8be04 Bump pysqueezebox to 0.6.2 (#93573) 2023-05-26 14:53:40 -05:00
Erik Montnemery
d4462829f5 Add CONFIG_SCHEMA to analytics (#93598) 2023-05-26 16:29:32 +02:00
Paul Frank
0bf9bb15f6 Use entity attributes in mystrom (#93591)
* Migrated proprties to _attr_

* Update homeassistant/components/mystrom/light.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/light.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/light.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/light.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/light.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/light.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/mystrom/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* review comment

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-05-26 16:22:59 +02:00
Erik Montnemery
5671934b34 Fix sharkiq tests (#93597) 2023-05-26 15:35:06 +02:00
Erik Montnemery
5b654c8b79 Fix mill tests (#93596) 2023-05-26 15:20:46 +02:00
Bram Kragten
b51f82719e Update frontend to 20230526.0 (#93581) 2023-05-26 12:39:52 +02:00
G Johansson
af9ee8bc4a Remove obihai YAMl configuration (#93549) 2023-05-26 08:41:21 +02:00
G Johansson
1f467fcc6a Remove EDL21 YAML configuration (#93551) 2023-05-26 08:38:44 +02:00
G Johansson
3633062024 Remove platform yaml Frontier Silicon (#93552) 2023-05-26 08:24:08 +02:00
Jan Bouwhuis
d852ba8b09 Remove redundant stub_blueprint_populate fixture for MQTT integration (#93570)
Remove redundant stub_blueprint_populate fixture
2023-05-26 08:13:45 +02:00
Jan Bouwhuis
ec98e22330 Add type hints for stub_blueprint_populate fixture (#93568)
Add typehints for stub_blueprint_populate fixture
2023-05-26 08:13:13 +02:00
Franck Nijhof
9e53bca452 Add entity name translations to Rituals Perfume Genie (#92549) 2023-05-26 08:09:29 +02:00
J. Nick Koston
88893121a1 Increase timeout for test_purge_many_old_events (#93579) 2023-05-25 22:38:44 -05:00
J. Nick Koston
48485fc2bf Complete persistent notifications migration (#92828)
* Complete migration of persistent notifications

Persistent notifications are no longer stored in
the state machine and no longer fire events

* Complete migration of persistent notifications

Persistent notifications are no longer stored in
the state machine and no longer fire events

* fixes

* fixes

* fixes

* ws test

* update tests

* update tests

* fix more tests

* fix more tests

* more fixes

* fix

* fix person

* fix person

* keep whitelist

* use singleton
2023-05-25 23:09:13 -04:00
J. Nick Koston
e2b69fc470 Significantly improve performance of conversation default_agent listening for new states (#93577)
Use the async_track_state_added_domain helper instead of tracking
all state changes and rejecting them as it is already optimized
for this job
2023-05-25 23:04:38 -04:00
J. Nick Koston
f251c464e2 Fix history start time state returning None with some postgresql versions (#93555)
* Add additional coverage to history websocket api

related issue #93258

* Add additional coverage to history websocket api

related issue #93258

* Fix results when union query ends up at the end instead of front

* Apply suggestions from code review

* resort

* zero instead

* fix exception

* fix tests
2023-05-25 22:18:19 -04:00
J. Nick Koston
61e57872c3 Fix not retrying on connection reset during nexia config entry setup (#93576)
* Fix not retrying on connection reset during nexia config entry setup

fixes
```
2023-05-26 00:15:39.129 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry Alexander for nexia
Traceback (most recent call last):
  File "/usr/local/lib/python3.11/site-packages/aiohttp/client.py", line 558, in _request
    resp = await req.send(conn)
           ^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/aiohttp/client_reqrep.py", line 670, in send
    await writer.write_headers(status_line, self.headers)
  File "/usr/local/lib/python3.11/site-packages/aiohttp/http_writer.py", line 130, in write_headers
    self._write(buf)
  File "/usr/local/lib/python3.11/site-packages/aiohttp/http_writer.py", line 75, in _write
    raise ConnectionResetError("Cannot write to closing transport")
ConnectionResetError: Cannot write to closing transport

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 387, in async_setup
    result = await component.async_setup_entry(hass, self)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/nexia/__init__.py", line 47, in async_setup_entry
    await nexia_home.login()
  File "/usr/local/lib/python3.11/site-packages/nexia/home.py", line 385, in login
    request = await self.post_url(self.API_MOBILE_ACCOUNTS_SIGN_IN_URL, payload)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/nexia/home.py", line 157, in post_url
    response: aiohttp.ClientResponse = await self.session.post(
                                       ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.11/site-packages/aiohttp/client.py", line 572, in _request
    raise ClientOSError(*exc.args) from exc
aiohttp.client_exceptions.ClientOSError: Cannot write to closing transport
```

* coverage
2023-05-25 21:52:44 -04:00
J. Nick Koston
d9b43fc43f Significantly speed up recorder event listener (#93532)
* Significantly speed up recorder event listener

This code is called every time an event happens since it
subscribes to all events. Its our most frequently called
listener out of the box.

It used to have a seperate filter function but it was
later combined after core had some previous refactoring.

It was never optimized after that happened.

This change reduces the run time by ~70%

* decruft
2023-05-25 21:44:12 -04:00
J. Nick Koston
10aa49be2b Speed up async_active_zone by avoiding dict lookups (#93427)
Speed up async_active_zone by avoding dict lookups
2023-05-25 21:37:18 -04:00
Justin Vanderhooft
accee4b5ef Add support for configuring built-in Melnor Bluetooth scheduling system (#93333) 2023-05-25 20:06:22 -05:00
Maciej Bieniek
e6a214595b Avoid KeyError when specifying the consumption type in Shelly integration (#93561)
Avoid KeyError when specifying the consumption type
2023-05-25 23:12:25 +02:00
Maciej Bieniek
eb058a3d41 Add illuminance sensor for Shelly gen2 devices (#93559) 2023-05-25 23:10:44 +02:00
starkillerOG
f5358d3863 Bump reolink-aio to 0.5.16 (#93540) 2023-05-25 22:15:33 +02:00
Artem Draft
70e20815c7 Mark as assumed_state LG Netcast media player (#93543)
Mark as assumed_state LG Netcast media player
2023-05-25 22:47:13 +03:00
Erik Montnemery
a71c097aeb Revert "Allow setting an entity's name by its device class" (#93539) 2023-05-25 17:20:54 +02:00
Álvaro Fernández Rojas
f7404e2ee0 Update aioairzone-cloud to v0.1.6 (#93513) 2023-05-25 17:18:28 +02:00
J. Nick Koston
25a33b6b37 Bump zeroconf to 0.63.0 (#93533)
changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.62.0...0.63.0

performance improvements
2023-05-25 16:52:31 +02:00
Dominik
eb617e85f3 Use DEFAULT_SCAN_INTERVAL as update interval for glances (#93535)
Use default scan interval constant
2023-05-25 16:51:57 +02:00
Philip Peitsch
6c66af4e41 Add ability to send custom keys to Samsung TV (#83439)
* Add SamsungTV Remote entity with support for turn-off and send command

* Fix SamsungTV remote tests
2023-05-25 15:55:44 +02:00
Joost Lekkerkerker
a96215bf2e Lastfm config flow (#92299)
* Move constant values to separate file

* Move constant values to separate file

* Add config flow to lastfm

* Add tests

* Add config flow to lastfm

* Add tests

* Add tests

* Add tests

* Add extra form for main user and autofill with friends

* Add extra form for main user and autofill with friends

* Add extra form for main user and autofill with friends

* Add extra form for main user and autofill with friends

* Add OptionsFlow

* Add tests

* Fix feedback

* Fix feedback

* Fix feedback

* Fix feedback

* Fix test

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Update config_flow.py

* Update config_flow.py

* Update config_flow.py

* Update homeassistant/components/lastfm/config_flow.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Add tests

* Cleanup

* Update config_flow.py

* Update config_flow.py

* Update config_flow.py

* Fix test

* Fix feedback

* Codeowner lastfm

* Fix feedback

* Fix feedback

* Parametrize errors

* Parametrize errors

* Parametrize errors

* Finish tests

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-05-25 14:48:16 +02:00
J. Nick Koston
e09e4f14d6 Speed up setting state (#93472) 2023-05-25 07:34:07 -05:00
Erik Montnemery
3cca338c6e Improve blueprint test fixtures (#93519) 2023-05-25 13:45:19 +02:00
badewanne1234
393dbb6dc0 Fix of cover-tilt in homekit_controller (#91631)
* Fix of cover-tilt in homekit_controller

* Fix of cover-tilt and its tests
2023-05-25 12:41:42 +02:00
IceBotYT
9231010402 Code quality improvements and debug logs for LaCrosse View (#91979)
* Code quality improvements and debug logs for LaCrosse View

* Remove unrelated files

* Remove version bump

* Revert "Remove version bump"

This reverts commit ed440899f9.

* Revert "Remove unrelated files"

This reverts commit d9b48ae4f9.
2023-05-25 12:37:16 +02:00
Erik Montnemery
3fc0c9a325 Improve TTS test fixtures (#93517) 2023-05-25 11:59:20 +02:00
Dara Adib
e2daffc117 Fix exception handling in Microsoft TTS (#92556)
pycsspeechtts uses the requests library, but Microsoft TTS previously
caught HTTPException from the standard library. This is changed to
catch requests.HTTPError and return `(None, None)` consistent with
other TTS integrations. This will properly raise HomeAssistantError
for display in the frontend.

Follow up to PR #92215 which adds tests for Microsoft TTS.
2023-05-25 11:29:13 +02:00
starkillerOG
4ef315b32a Add Kodi keypress event (#93321)
* Add keypress events

* Fix styling

* fix tests

* improve tests

* Revert device trigger

* Add entity_id to event for ease of filtering
2023-05-25 11:11:29 +02:00
RenierM26
f86cc34644 Add Ezviz number entity (#93366)
* Initial commit

* Add number entity.

* update coveragerc

* Add services back and add depreciation repair.

* Remove redundant typing declaration.

* Case change in strings.

* Apply cleanups from simular pull request.

* Commit suggestions.
2023-05-25 11:09:47 +02:00
Jan Bouwhuis
1b5d207984 Add imap custom event data template (#93423)
* Add imap custom event template

* Add template validation
2023-05-25 11:05:25 +02:00
Álvaro Fernández Rojas
6cd766ef1f Add Airzone Cloud diagnostics (#93465)
* airzone_cloud: add diagnostics support

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloue: remove unused import

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: diagnostics: redact additional API keys

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-25 11:04:57 +02:00
Dara Adib
663f66a2b2 Scrape Microsoft TTS supported languages (#91988)
* Update Microsoft TTS supported languages

`script.microsoft_tts` scrapes Microsoft Azure documentation for
the list of supported languages and saves them to
`homeassistant.generated.microsoft_tts` for use in the component.

This adds support for more TTS languages, like fa-ir (Persian).

* Improve xpath query for Microsoft TTS languages

* Remove asserts for Microsoft TTS languages

* Add more tests for Microsoft TTS languages
2023-05-25 10:46:34 +02:00
disaster37
6e8472b90f Fix/arest switch (#91553)
* Fix arest switch to set output when connection is lost

Signed-off-by: disaster37 <linuxworkgroup@hotmail.com>

* fix: lint

Signed-off-by: disaster37 <linuxworkgroup@hotmail.com>

---------

Signed-off-by: disaster37 <linuxworkgroup@hotmail.com>
2023-05-25 10:45:15 +02:00
Matrix
e744632164 YoLink Power Failure Alarm (#91934)
* add ys-7106

* expose mute property

* add volume entity description

* add beep entity description

* fix as suggest
2023-05-25 10:44:51 +02:00
dependabot[bot]
6df44ff5d5 Bump actions/setup-python from 4.6.0 to 4.6.1 (#93512)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 4.6.0 to 4.6.1.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v4.6.0...v4.6.1)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-25 09:48:52 +02:00
Marc Mueller
64118ee011 Improve hydrawise typing (#93503)
* Improve hydrawise generic typing

* Enable strict typing

* Remove unused code
2023-05-25 07:58:59 +02:00
J. Nick Koston
f8d918ca4a Small speedup to unifiprotect attribute lookups (#93507) 2023-05-25 07:51:45 +02:00
J. Nick Koston
c63e3c3bf1 Update prometheus tests to avoid patching utcnow (#93505) 2023-05-25 07:15:14 +02:00
Marcel van der Veldt
2bb46c8a9e Fix for missing/corrupt names of Matter devices (#92073)
* Fix missing names on some devices/bridges

* guard for None devicetype (just in case)

* Update homeassistant/components/matter/adapter.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Update homeassistant/components/matter/adapter.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Update homeassistant/components/matter/adapter.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Update homeassistant/components/matter/adapter.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* black and isort

* Code quality

* Add tests

* Add coverage test, add None for empty string

---------

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
Co-authored-by: jbouwh <jan@jbsoft.nl>
2023-05-25 03:50:13 +02:00
Michał Modzelewski
33387bf418 Readable paired device names for Apple TV airplay and companion protocols (#93449)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-05-24 20:07:49 -05:00
J. Nick Koston
7ec6e03d5d Update sensor tests to avoid patching utcnow (#93497) 2023-05-24 19:54:08 -05:00
Michał Modzelewski
d5e09bd4c3 Support volume level push updates in apple_tv integration (#93496) 2023-05-24 18:28:29 -05:00
J. Nick Koston
9dcd73b308 Update recorder tests to avoid patching utcnow (#93489) 2023-05-24 17:47:42 -05:00
J. Nick Koston
f8d8f5caba Update statistics tests to avoid patching utcnow (#93499) 2023-05-24 17:38:38 -05:00
J. Nick Koston
f5eb872eaf Update state helper test to avoid patching utcnow (#93484) 2023-05-24 17:38:09 -05:00
J. Nick Koston
ee62584570 Add constraint for pyminiaudio to 1.57 (#93501) 2023-05-24 17:03:37 -05:00
J. Nick Koston
40a47c72f4 Update history tests to avoid patching utcnow (#93487) 2023-05-24 16:09:26 -05:00
J. Nick Koston
45b1ad36b1 Bump onvif-zeep-async to 3.1.8 (#93464) 2023-05-24 15:38:54 -05:00
J. Nick Koston
0160c8c14f Update switch tests to avoid patching utcnow (#93491) 2023-05-24 15:28:38 -05:00
J. Nick Koston
bf2c12dcf2 Update remote tests to avoid patching utcnow (#93492) 2023-05-24 15:28:22 -05:00
J. Nick Koston
33c2cb9895 Fix integration trapezoidal test (#93494) 2023-05-24 15:24:15 -05:00
J. Nick Koston
41aa3e223e Update light tests to avoid patching utcnow (#93490) 2023-05-24 15:21:40 -05:00
J. Nick Koston
1f5916cb4d Update statistics tests to avoid patching utcnow (#93485) 2023-05-24 14:53:33 -05:00
Raman Gupta
f0874791d8 Refactor zwave_js.cover (#93433)
* Refactor zwave_js.cover and improve test coverage

* Remove extra fixtures

* cleanup old stuff

* Get coverage to 100

* Remove redundant stuff

* Revert all changes to tests

* Update conftest.py
2023-05-24 15:37:33 -04:00
Luke
46c63dd70b Fix Roborock Sensor test failing (#93488)
fix roborock sensors
2023-05-24 21:35:05 +02:00
Álvaro Fernández Rojas
f5a235beee Fix Airzone min/max climate temperatures (#93161)
* airzone: climate: fix max/min temps

The library now provides AZD_ABS_TEMP_MAX/AZD_ABS_TEMP_MIN which are useful for
devices with different max/min temperatures depending on the current working
mode (HEAT vs COOL).
These new values will have the highest/lowest max/min of both modes.
Until now, the max/min of the current working mode (HEAT/COOL) would be set
when starting Home Assistant, limiting the temperature range if the device
mode was changed after that.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone: climate: update max/min temps

Some devices have different max/min climate temps depending on the active
mode (HEAT vs COOL), so we should update these values.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Revert "airzone: climate: update max/min temps"

This reverts commit 988194d486.

* Revert "Revert "airzone: climate: update max/min temps""

This reverts commit e4ead24f71.

* tests: airzone: add max/min climate changes test

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* tests: airzone: fix dict copy

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-24 21:18:59 +02:00
J. Nick Koston
5c6ed8f6d5 Use call_at for events instead call_later (#93431)
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
2023-05-24 21:04:07 +02:00
Erik Montnemery
30d9d7d905 Minor adjustment of tts typing (#93450) 2023-05-24 21:02:55 +02:00
Erik Montnemery
68379dd55a Improve TTS cache dir mocking (#93468) 2023-05-24 21:00:35 +02:00
epenet
6057aeee2f Prevent NumberEntity and RestoreEntity inheritance (#93467) 2023-05-24 20:59:14 +02:00
J. Nick Koston
dc3826f68e Update generic_hygrostat tests to avoid patching utcnow (#93476) 2023-05-24 20:57:56 +02:00
J. Nick Koston
cff72f9653 Update derivative tests to avoid patching utcnow (#93477) 2023-05-24 20:54:50 +02:00
J. Nick Koston
70c1fe8c6c Update integration tests to avoid patching utcnow (#93480) 2023-05-24 20:54:11 +02:00
Luke
8dd9482bb5 Add Roborock Consumable sensors (#91972)
* add sensors to roborock

* add value_fn typing

* fixed strings

* Update homeassistant/components/roborock/sensor.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* change to work time instead of time left

* added time left back

* fixed tests

* made diagnostic

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-05-24 20:31:02 +02:00
J. Nick Koston
e80579e52f Update generic_thermostat tests to avoid patching utcnow (#93479) 2023-05-24 13:17:28 -05:00
J. Nick Koston
da5ad4a17d Update binary_sensor tests to avoid patching utcnow (#93474) 2023-05-24 13:17:11 -05:00
Raman Gupta
3e84c374f4 Improve zwave.cover tests (#93458)
* Improve zwave.cover tests

* Update conftest.py
2023-05-24 18:51:15 +02:00
J. Nick Koston
08c8c22fac Fix non threadsafe call in xiaomi_aqara again (#93461)
Fix non threadsafe call in xiaomi_aqara

The original fix in #93405 was ineffective and only moved the problem

fixes #93400
2023-05-24 18:21:44 +02:00
Martin Malina
d2d21b4158 Show current day in met weather forecast (#91891)
Version 0.10.0 of pyMetno added the option
to defined range_start when calling get_forecast:
https://github.com/Danielhiversen/pyMetno/pull/35/files

So let's use that to include today in the forecast.
2023-05-24 16:07:59 +02:00
Vova-SH
f8fdeeabc2 Add resize_keyboard and one_time_keyboard attributes to telegram bot service (#91613)
* Add new params for telegram bot

Add resize_keyboard and one_time_keyboard attributes

* Apply review changes

* Update homeassistant/components/telegram_bot/__init__.py

* Update __init__.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-05-24 16:07:22 +02:00
starkillerOG
16780bf4c2 Prevent firmware update error when internet blocked for Reolink camera (#91738)
* Prevent firmware update error when internet blocked

* fix styling

* switch back to async_config_entry_first_refresh

* fix still raising when starting

* missing return

* Catch CancelledError
2023-05-24 15:16:35 +02:00
MarkGodwin
e97b331942 Add gateway WAN/LAN port connectivity entities to TP-Link Omada (#91905)
* Add gateway WAN/LAN port status entities

* Fix copy pasta comments

* Add omada binary_sensor to coveragerc
2023-05-24 15:12:51 +02:00
Raman Gupta
872cd47e87 Add proper support for zwave_js Indicator CC (#90248)
* Add proper support for zwave_js Indicator CC

* remove stale test

* Make all indicators diagnostic

* only set entity category if it is specified

* Only set properties from discovery if specified

* Conditionally set assumed state as well

* fix const name

* Don't create task

* Disable property keys 3-5 by default

* add additional dispatcher_connects so we catch all signals

* be consistent about order

* rename new discovery parameter

* comment

* exclude property keys 3-5

* fix remove logic

* add comment so I don't forget

* Switch entity category to config where necessary

* cut line

* less lines

* Update homeassistant/components/zwave_js/switch.py

Co-authored-by: kpine <keith.pine@gmail.com>

* Move async_remove to respond to interview started event

* Set up listener immediately so we don't wait for platform creation

* remove dupe import

* black

* append

---------

Co-authored-by: kpine <keith.pine@gmail.com>
2023-05-24 09:09:38 -04:00
Raman Gupta
66f7218b68 Do optimistic state update for Z-Wave multilevel switch entities (#90490)
* Do optimistic state update for Z-Wave multilevel switch entities

* simplify

* define constant for setting value to previous value

* Rework to only consider value of 255 and only places where we know that the previous state is known by the integration due to the service being called

* missed commit

* better code

* Add tests and use constant from lib

* fix logic

* fix bug

* Add comments with more details
2023-05-24 09:04:11 -04:00
Raman Gupta
3e93dd6a01 Update name for Notification CC sensors and buttons (#93019)
* Update name for Notification CC sensors and buttons

* Add comment with reference to names
2023-05-24 09:00:37 -04:00
rappenze
83f206a6fe Code cleanup: Separate fibaro scene logic (#91895)
* Code cleanup fibaro scene

* Remove duplicated code

* Fixes
2023-05-24 14:57:35 +02:00
rappenze
11accd8ba7 Set available state in fibaro integration (#91893) 2023-05-24 14:54:10 +02:00
Aaron Godfrey
89f1677307 Fix todoist state updates (#91915)
* Update event when coordinator updates data.

* Move function to make diff easier to view

* Actually make it easier to view

* Move all tasks calculation to extra_state_attributes.
2023-05-24 14:46:13 +02:00
ad0p
ef24e508f8 Bump pydeconz to v112 (#91924)
* Bump pydeconz to v112

* PR review - add suggested_display_precision

* Test - fix

* Bump pydeconz to v112

* PR review - add suggested_display_precision

* Fix tests

---------

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2023-05-24 14:43:02 +02:00
Jeff Grieger
7e165021a3 Fix directv attribute media_position_updated_at (#92383)
* Fix directv attribute media_position_updated_at

Fix to update media_position_updated_at attribute when media_position attribute is updated.

* Do not update media_position_updated_at when paused
2023-05-24 14:22:56 +02:00
David Knowles
ace45f31ff Add a DataUpdateCoordinator to Hydrawise (#93223)
* Add a DataUpdateCoordinator to Hydrawise

* Replace DATA_HYDRAWISE with DOMAIN

* Replace persistent notification with a ConfigEntryNotReady exception

* Changes requested during PR review

* Add a type annotation to the `monitored_conditions` field.

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-05-24 14:07:37 +02:00
Colin Robbins
f355f0cc6d Add UDP listener in Lightwave (#85385) 2023-05-24 13:44:12 +02:00
epenet
c475273145 Prevent SensorEntity and RestoreEntity inheritance (#88971) 2023-05-24 12:49:35 +02:00
Joost Lekkerkerker
db33aadcbb Implement OpenSky library (#92814)
* Implement OpenSky library

* Move function to library

* Fix feedback
2023-05-24 12:48:55 +02:00
Tom Schneider
0ca0ed3a31 Bump pygti and change the request for the new api version (#92283)
Bump pygti and change request for the new api version
2023-05-24 12:43:36 +02:00
Mike Heath
2a7ba60574 Fully Kiosk: Truncate long URLs (#92347)
* Truncate long URLs

URL's longer than 256 characters will result in a
`homeassistant.exceptions.InvalidStateError`. This fixes that problem
and adds 2 extra_state_attributes: `full_url`, and `truncated`.

Fixes #89249

* Refactor to use function ref in entity description
2023-05-24 12:32:26 +02:00
Erik Montnemery
937ebb374c Enable strict type checks of cloud (#92576)
* Enable strict type checks of cloud

* Fix circular import

* Address review comments

* Apply suggestions from code review
2023-05-24 11:46:11 +02:00
Franck Nijhof
a8ce4d3c66 Remove legacy translations from electrasmart (#93446) 2023-05-24 11:42:49 +02:00
Álvaro Fernández Rojas
746a47f094 Update aioairzone-cloud to v0.1.3 (#93443) 2023-05-24 11:37:41 +02:00
Mike Degatano
08a719e09e Add backup location and mount failed repair (#93126)
* Add backup location and mount failed repair

* Fix coverage

* Change storage_location to backup_location

* Use backticks

* Update homeassistant/helpers/selector.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-05-24 10:33:41 +02:00
Raman Gupta
9b53484e2e Remove unused zwave discovery logic (#93436) 2023-05-24 10:02:50 +02:00
Jafar Atili
7bc9e1ae9f Bump PySwitchbee to 1.8.0 (#92348)
* fix

* fixes

* bump pyswitchbee

* bump pyswitchbee

* bump pyswitchbee

* fix

* bump pyswitchbee

* Apply suggestions from code review

---------

Co-authored-by: Jafar Atili <jafar.atili@axonius.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-05-24 09:44:36 +02:00
Ludy
a310b5c1c3 remove template deprecated function device_trigger.py (#93419)
remove template deprecated fun `device_trigger.py`
2023-05-24 09:42:44 +02:00
Mike Degatano
2906caf4d1 Fix reference string in data disk repair (#93220)
* Fix reference string in data disk repair

* Use backticks
2023-05-24 09:42:30 +02:00
epenet
7c72b97d79 Use SnapshotAssertion in Renault tests (part 2) (#92395) 2023-05-24 09:39:37 +02:00
epenet
dc14b83249 Add ability to unload demo integration (#92515)
* Add unload to demo integration

* Adjust config tests to use kitchen_sink

* Use async_unload_platforms
2023-05-24 09:38:29 +02:00
Joost Lekkerkerker
326d80f4f7 Move Twitch constants to separate file (#92605)
* Move Twitch constants to separate file

* Move Twitch constants to separate file

* Move Twitch constants to separate file

* Update branch
2023-05-24 09:18:20 +02:00
Guido Schmitz
9363fa6561 Update quality scale of devolo Home Control (#92646)
Update quality scale
2023-05-24 09:16:41 +02:00
ollo69
62ccecb690 Change utility_meter log level for invalid old state (#93026) 2023-05-24 09:10:51 +02:00
jjlawren
abf08f66a4 Bump sonos-websocket to 0.1.2 (#93429)
Bump sonos-websocket to 0.1.2
2023-05-24 08:38:16 +02:00
Jesse Hills
bb39b99a3f ESPHome fix changing light color_mode (#93434) 2023-05-24 08:37:42 +02:00
uvjustin
67515f8ac3 Bump ha-av to v10.1.0 (#93420) 2023-05-24 08:28:04 +02:00
Chris Talkington
5bdc830664 Bump rokuecp to 0.18.0 (#93424) 2023-05-24 08:27:20 +02:00
Dara Adib
3bd6dea63b Add tests for Microsoft TTS (#92215)
* Add tests for Microsoft TTS

* Update requirements_test_all

* Update tests/components/microsoft/__init__.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-05-24 08:25:03 +02:00
Ludy
3c7e6bf3cc Add missing constants trigger_typeand condition_type (#93415)
* Add missing `trigger_type`and  ´condition_type`

* auto generate `TURNED_ON` and  `TURNED_OFF`
2023-05-24 08:22:52 +02:00
Álvaro Fernández Rojas
a29adc0a6a Airzone select improvements (#92894)
* airzone: select: remove unneed .keys()

Fixes late comment when select platform was introduced.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone: select: make options translatable

This was a late comment when the select platform was introduced.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone: select: change options to lists (from enums)

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* tests: airzone: fix python 3.10 tests

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone: select: add manual dict values

This was requested in order to keep control of the translation strings.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Revert "airzone: select: add manual dict values"

This reverts commit b818a2674d.

* Revert "tests: airzone: fix python 3.10 tests"

This reverts commit 93f8bd1430.

* Revert "airzone: select: change options to lists (from enums)"

This reverts commit e503a1dd3a.

* airzone: select: options: copy dict to list

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone: select: use degree symbol

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-24 08:21:24 +02:00
luar123
869f970e59 Fix Snapcast connection issues (#93010)
* Add (dis)connect and update listeners, terminate connection and reconnect. Set availability

* Pass entry_id to constructor
2023-05-24 08:16:09 +02:00
Tom
a43dcaf812 Plugwise add value_fn for select (#93375)
* Plugwise prepare value_fn for select

* Plugwise prepare value_fn for select

* Try proposed options

* Fix initial defs

---------

Co-authored-by: Bouwe Westerdijk <11290930+bouwew@users.noreply.github.com>
2023-05-24 07:56:17 +02:00
J. Nick Koston
d8493a41aa Add Yale Home virtual integration (#93364)
* Add Yale Home virtual integration

Yale split all their customers outside of North America off into
a new brand recently

https://www.yalehome.com/in/en/news/news/introducing-the-new-yale-home-app#:~:text=The%20Yale%20Home%20app,products%20and%20new%20products%20alike.

* init

* brands
2023-05-24 07:21:49 +02:00
Franck Nijhof
3107d7514c 2023.5.4 (#93422) 2023-05-23 23:51:57 +02:00
Franck Nijhof
264bed1af7 Bumped version to 2023.5.4 2023-05-23 21:54:57 +02:00
J. Nick Koston
63b81d86ef Fix race in tracking pending writes in recorder (#93414) 2023-05-23 21:54:33 +02:00
Marcel van der Veldt
41702410f7 Bump Matter server library to 3.4.1 and address changes (#93411)
* bump python matter server to 3.4.1

* address renamed attribute names in sdk 1.1

* ignore AllClustersAppServerExample

* clusters.ColorControl.Bitmaps.ColorCapabilities

* address discovery schemas

* fix all fixtures due to attribute rename

* bump python matter server to 3.4.1

* address renamed attribute names in sdk 1.1

* ignore AllClustersAppServerExample

* clusters.ColorControl.Bitmaps.ColorCapabilities

* address discovery schemas

* fix all fixtures due to attribute rename

* lint

* update requirements_all
2023-05-23 21:54:30 +02:00
J. Nick Koston
0f888340da Fix non threadsafe call xiaomi_aqara (#93405) 2023-05-23 21:54:26 +02:00
epenet
fce2275083 Bump httpx to 0.24.1 (#93396) 2023-05-23 21:53:42 +02:00
J. Nick Koston
cc94a9f4bb Fix august configuration url with Yale Home brand (#93361)
* Fix august configuration url with Yale Home brand

changelog: https://github.com/bdraco/yalexs/compare/v1.4.6...v1.5.0

* bump
2023-05-23 21:51:24 +02:00
Dominik
dbbd9265d6 Bump glances_api to 0.4.2 (#93352) 2023-05-23 21:51:20 +02:00
Raman Gupta
d1ee479e31 Bump zwave-js-server-python to 0.48.1 (#93342)
* Bump zwave-js-server-python to 0.48.1

* fix mypy
2023-05-23 21:51:16 +02:00
Aaron Bach
e1cd5b627a Bump aionotion to 2023.05.5 (#93334) 2023-05-23 21:51:13 +02:00
Steven Looman
97bbc52c75 Bump async-upnp-client to 0.33.2 (#93329)
* Bump async-upnp-client to 0.33.2

* Fix tests
2023-05-23 21:51:09 +02:00
J. Nick Koston
1a0035798b Add support for Yale Home brand to august (#93214) 2023-05-23 21:51:06 +02:00
J. Nick Koston
65c5e70064 Disconnect yale access locks at the stop event (#93192) 2023-05-23 21:51:02 +02:00
Brett Adams
9bfd636ade Add Fan and Dry HVAC modes to Advantage Air MyTemp preset (#93189) 2023-05-23 21:50:59 +02:00
rikroe
8ebd827667 Fix china login for bmw_connected_drive (#93180)
* Bump bimmer_connected to 0.13.5

* Fix snapshots after dependency bump

* Load gcid from config entry if available

* Add tests

---------

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-05-23 21:50:55 +02:00
J. Nick Koston
94130b7134 Bump pyatv to 0.11.0 (#93172) 2023-05-23 21:50:52 +02:00
Aaron Bach
0d432a4dd3 Bump regenmaschine to 2023.05.1 (#93139) 2023-05-23 21:50:49 +02:00
Diogo Gomes
fab670434e Better handling of source sensor unavailability in Riemman Integration (#93137)
* refactor and increase coverage

* fix log order
2023-05-23 21:50:45 +02:00
Maciej Bieniek
40c0447292 Bump accuweather to version 0.5.2 (#93130) 2023-05-23 21:50:42 +02:00
Jan Bouwhuis
397864c497 Fix last imap message is not reset on empty search (#93119) 2023-05-23 21:50:39 +02:00
J. Nick Koston
fa6834347a Bump pyunifiprotect to 4.9.0 (#93106)
changelog: https://github.com/AngellusMortis/pyunifiprotect/compare/v4.8.3...v4.9.0
2023-05-23 21:50:35 +02:00
J. Nick Koston
a9afccb406 Fix ONVIF cameras that change the xaddr for the pull point service (#93104) 2023-05-23 21:50:32 +02:00
Nerdix
c200c9fb4b Increase timeout to 30 seconds for homeassistant_alerts integration (#93089) 2023-05-23 21:50:29 +02:00
MatthewFlamm
ce98324da3 Fix NWS error with no observation (#92997)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-05-23 21:50:26 +02:00
Michael Mraka
cd195b7f50 Update solax state class for sensors with no units (#92914)
Update sensor.py

Units.NONE is used for text entities which are not measurements.
Marking them so breaks their history.
2023-05-23 21:50:23 +02:00
J. Nick Koston
367198a20c Fix onvif cameras that cannot parse relative time (#92711)
* Fix onvif cameras that cannot parse relative time

The spec requires that the camera can parse relative or absolute timestamps
However there are many cameras that cannot parse time correctly.

Much of the event code has been offloaded to the library and
support to determine if the camera has broken time and switch
to absolute timestamps is now built into the library

* adjust verison

* fixes

* bump

* bump

* bump

* more fixes

* preen

* fix resume

* one more fix

* fix race in webhook setup

* bump to 3.1.3 which has more fixes for broken camera firmwares

* bump 3.1.4 for more fixes

* fix

* fix comment

* bump

* fix url limit

* bump

* more fixes

* old hik uses -s
2023-05-23 21:50:20 +02:00
Daniel Gangl
5b0d53389c Fix weather handling in zamg (#85635)
* TypeError handling in weather

* Check for None

* Use walrus operator as proposed
2023-05-23 21:50:05 +02:00
J. Nick Koston
f09abb0f2e Fix race in tracking pending writes in recorder (#93414) 2023-05-23 21:47:31 +02:00
Brett Adams
f6e7b727b0 Add Fan and Dry HVAC modes to Advantage Air MyTemp preset (#93189) 2023-05-23 21:32:47 +02:00
Marcel van der Veldt
56d2048ffa Bump Matter server library to 3.4.1 and address changes (#93411)
* bump python matter server to 3.4.1

* address renamed attribute names in sdk 1.1

* ignore AllClustersAppServerExample

* clusters.ColorControl.Bitmaps.ColorCapabilities

* address discovery schemas

* fix all fixtures due to attribute rename

* bump python matter server to 3.4.1

* address renamed attribute names in sdk 1.1

* ignore AllClustersAppServerExample

* clusters.ColorControl.Bitmaps.ColorCapabilities

* address discovery schemas

* fix all fixtures due to attribute rename

* lint

* update requirements_all
2023-05-23 20:42:09 +02:00
Patrick Li
46103f56c4 Fix trusted_users group schema (#92847)
* Fix trusted_users group schema

* Add tests for CONFIG_SCHEMA
2023-05-23 20:11:25 +02:00
andarotajo
fa366e59e0 Improve dwd_weather_warnings code quality (#92738)
Improve code quality by removing unnecessary data
2023-05-23 19:34:47 +02:00
epenet
160fce781d Bump httpx to 0.24.1 (#93396) 2023-05-23 12:31:03 -05:00
Álvaro Fernández Rojas
8edb253ace Add Airzone Cloud integration (#93238)
* airzone-cloud: add new integration

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Add missing aioairzone-cloud to test requirements

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Update aioairzone-cloud to v0.0.4

Allows to handle TooManyRequests exception on coordinator.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* aioairzone_cloud: reduce API requests

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: remove system_zone_id

As opposed to the Local API of Airzone devices, the Cloud API provides unique
IDs for both systems and zones, so we can remove the system_zone_id copied from
the Local API integration.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: minor improvements

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* tests: airzone_cloud: simplify mock_get_webserver

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Update aioairzone to v0.0.5

- Add token refresh and relogin support.
- Improve fetching installation devices.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: add to strict typing

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Update aioairzone to v0.0.7

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* trigger CI

* airzone_cloud: remove unneeded api_get_user call

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Add Airzone brand

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Update aioairzone to v0.1.1

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: use unique_id instead of entry_id

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: remove special handling of TooManyRequests

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: bump coordinator timeout to 30s

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: make AirzoneEntity an ABC

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: fix strings typo

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* tests: airzone_cloud: simplify webserver mock

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Update aioairzone-cloud to v0.1.2

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-23 19:22:50 +02:00
Michael Mraka
8bf22014ce Update solax state class for sensors with no units (#92914)
Update sensor.py

Units.NONE is used for text entities which are not measurements.
Marking them so breaks their history.
2023-05-23 19:20:04 +02:00
Álvaro Fernández Rojas
942089d590 Add QNAP QSW firmware update support (#92869)
* qnap_qsw: add firmware update support

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* tests: qnap_qsw: remove backup leftovers

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* tests: qnap_qsw: remove backup leftovers v2

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-23 19:10:33 +02:00
chiefdragon
9672db0354 Add new preset to Tado to enable geofencing mode (#92877)
* Add new preset to Tado to enable geofencing mode
Add new 'auto' preset mode to enable Tado to be set to auto geofencing
mode.  The existing ‘home’ and ‘away’ presets switched Tado into manual
geofencing mode and there was no way to restore it to auto mode.
Note 1: Since preset modes (home, away and auto) apply to the Tado home
holistically, irrespective of the Tado climate entity used to select
the preset, three new sensors have been added to display the state of
the Tado home
Note 2: Auto mode is only supported if the Auto Assist skill is enabled
in the owner's Tado home. Various checks have been added to ensure the
Tado supports auto geofencing and if it is not supported, the preset is
not listed in the preset modes available

* Update codeowners in manifest.json

* Update main codeowners file for Tado component
2023-05-23 19:08:00 +02:00
J. Nick Koston
761943e1e6 Fix non threadsafe call xiaomi_aqara (#93405) 2023-05-23 18:56:27 +02:00
Aaron Bach
fdf40fd1e5 Remove @bachya as a Slack codeowner (#93408)
* Remove @bachya as a Slack codeowner

* Manifest
2023-05-23 18:55:55 +02:00
Tom Harris
e2fb1de0d9 Clean up Insteon config_flow (#93004)
* Clean up config_flow

* Remove unnecessary logging

* Remove logger

* Add more tests

* Test closing modem connection

* Simplify patching
2023-05-23 17:31:17 +02:00
Erik Montnemery
d62cdf3d65 Improve error message for sensors with a non-numeric value (#93399)
* Improve error message for sensors with a non-numeric value

* Address review comment
2023-05-23 15:54:24 +02:00
rikroe
f8f83906f8 Add climate on/off for supported BMW vehicles (#92962)
* Add switch platform

* Add tests

* Remove separate button

* Bump coverage

---------

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-05-23 15:21:29 +02:00
J. Nick Koston
28fa6f541f Bump ifaddr to 0.2.0 (#93377) 2023-05-23 14:18:26 +02:00
J. Nick Koston
bb8dfc9470 Bump protobuf to 4.23.1 (#93338) 2023-05-23 13:16:20 +02:00
RenierM26
497fa1980b Add Ezviz update entity (#85377)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-05-23 12:32:14 +02:00
epenet
c23718d13d Cleanup samsungtv strings (#93395) 2023-05-23 12:06:19 +02:00
erikbadman
2721874f13 Get kostal plenticore hostname id from get_settings (#93008)
* Get hostname id from get_settings

* Add try except in get_hostname_id function

* Update tests after adding get_hostname_id function

* Revert "Update tests after adding get_hostname_id function"

This reverts commit 5fa4e533cb.

* Add test for G2 models in config flow.

* Add test for helper module.

* Fix test for numbers.

* Revert "Add try except in get_hostname_id function"

This reverts commit 059f5bd9b4.

* Update variable name with known hostname ids to be private

---------

Co-authored-by: Stefan Gmeiner <stefangm42@gmail.com>
2023-05-23 11:42:54 +02:00
epenet
1dccb8a9a9 Cleanup deprecated YAML from samsungtv (#93392) 2023-05-23 11:33:51 +02:00
Paul Frank
d0d74eb30e Bump mystrom to 2.2.0 (#93389) 2023-05-23 11:28:33 +02:00
Álvaro Fernández Rojas
7e1a946705 Support Airzone temperature ranges (HEAT_COOL) (#93110)
* airzone: climate: add Temperature range support

This is useful for HEAT_COOL climate mode (Airzone AUTO).

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* trigger CI

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-23 11:23:32 +02:00
luar123
86ad5ad113 Change snapcast to local_push (#93113) 2023-05-23 11:21:50 +02:00
Diogo Gomes
e100bcfaea Better handling of source sensor unavailability in Riemman Integration (#93137)
* refactor and increase coverage

* fix log order
2023-05-23 11:19:29 +02:00
Erik Montnemery
b754f03eb1 Add WS command for getting a config entry (#93387)
* Add WS command for getting a config entry

* Update tests
2023-05-23 10:44:02 +02:00
Dominik
657d285e8f Bump glances_api to 0.4.2 (#93352) 2023-05-22 23:15:01 +02:00
Tom
400263cf04 Plugwise binary_sensor typing improvement (#93371)
Typing miss correction (spotted by epenet)
2023-05-22 23:02:42 +02:00
Tom
af3bbdee82 Plugwise add value_fn for switch (#93345)
* Plugwise add value_fn for switch

* Skip none as suggested
2023-05-22 22:15:02 +02:00
Maciej Bieniek
71466e5012 Add new sensors to AccuWeather (#93362)
* Add solar irradiance and condition sensors

* Use entity_registry_enabled_by_default fixture
2023-05-22 21:55:54 +02:00
Franck Nijhof
d2a39e0e6f Update requests to 2.31.0 (#93363) 2023-05-22 20:48:56 +02:00
Guido Schmitz
91da7516d0 Use snapshots in devolo_home_control tests (#93202) 2023-05-22 18:16:57 +02:00
Matthias Alphart
b10e73e2d4 Configurable KNX Telegram history size (#93248)
* Configurable KNX Telegram history size

* Add maximum value to description
2023-05-22 18:09:59 +02:00
Raman Gupta
3bf9eaffdf Bugfix and add test coverage for zwave_js.light (#93257)
Add test coverage for zwave_js.light
2023-05-22 12:08:29 -04:00
Raman Gupta
18eeeaaf68 Refactor zwave_js.fan and add tests (#93256)
* Refactor zwave_js.fan and add tests

* fix const
2023-05-22 12:08:13 -04:00
Raman Gupta
03300c24da Bugfix and small refactor for zwave_js.device_action (#93261)
Improve test coverage for zwave_js.device_action
2023-05-22 18:04:04 +02:00
Raman Gupta
e1dd7118e0 Refactor zwave_js.sensor and add test coverage (#93259)
* Refactor zwave_js.sensor and add test coverage

* use walrus

* inherit config parameter class from list class

* use walrus in more places

* improve config parameter test
2023-05-22 11:58:10 -04:00
Raman Gupta
d6997d8656 Improve test coverage for zwave_js.trigger (#93260)
Improve coverage for zwave_js.trigger
2023-05-22 17:55:03 +02:00
J. Nick Koston
5d02be5d7f Fix august configuration url with Yale Home brand (#93361)
* Fix august configuration url with Yale Home brand

changelog: https://github.com/bdraco/yalexs/compare/v1.4.6...v1.5.0

* bump
2023-05-22 10:39:56 -05:00
Jan Bouwhuis
a81fe517c1 Make mqtt device_tracker state_topic optional when json_attribute_topic is used (#93322)
* Make device_tracker state_topic optional

* No state_topic needed
2023-05-22 15:49:18 +02:00
David Knowles
4d44d60e73 Move HydrawiseEntity into entity.py (#93359) 2023-05-22 15:47:32 +02:00
Franck Nijhof
9eca234948 Update Home Assistant base image to 2023.05.0 (#93350) 2023-05-22 15:45:29 +02:00
Franck Nijhof
7537667e53 Adjust counter to not restore configuration parameters (#93344) 2023-05-22 15:27:44 +02:00
Franck Nijhof
f2899a19c1 Deprecate counter.configure service (#93343) 2023-05-22 15:27:33 +02:00
Dmitry Vlasov
6df030a455 Update zwave-me-ws version to 0.4.3 (#93348)
Up zwave-me-ws to 0.4.3
2023-05-22 15:20:18 +02:00
David Knowles
ab8a13ae6b Add myself as a code owner of the Hydrawise integration (#93358) 2023-05-22 15:15:20 +02:00
David Knowles
3d6d650a16 Move Hydrawise constants into const.py (#93357) 2023-05-22 15:11:32 +02:00
Raman Gupta
ec12d9a197 Improve test coverage for zwave_js (#93262) 2023-05-22 12:20:01 +02:00
Jan Bouwhuis
5bc825a8ab Add advanced imap option to set custom event max message size (#93163) 2023-05-22 12:14:06 +02:00
Raman Gupta
4b67839e19 Bump zwave-js-server-python to 0.48.1 (#93342)
* Bump zwave-js-server-python to 0.48.1

* fix mypy
2023-05-22 11:06:34 +02:00
Aaron Bach
d16452bed7 Bump aionotion to 2023.05.5 (#93334) 2023-05-22 10:14:52 +02:00
Tom
79cafd5a46 Plugwise prepare typing for binary_sensor (#93162) 2023-05-22 09:19:00 +02:00
J. Nick Koston
aa937b1640 Use slots for template RenderInfo (#93337) 2023-05-22 08:52:49 +02:00
Franck Nijhof
31c0374c98 Update apprise to 1.4.0 (#93331) 2023-05-22 07:31:02 +02:00
Franck Nijhof
69770bac22 Update sentry-sdk to 1.23.1 (#93330) 2023-05-21 22:09:52 -04:00
Steven Looman
63c2b5868e Bump async-upnp-client to 0.33.2 (#93329)
* Bump async-upnp-client to 0.33.2

* Fix tests
2023-05-21 17:17:08 -05:00
Álvaro Fernández Rojas
c3cd60e0cb Fix pressure for AEMET stations close to sea level (#87094) 2023-05-21 22:17:26 +02:00
Luke
2cc9fcc977 Add scaffolds to vscode tasks (#92015) 2023-05-21 21:29:33 +02:00
Joost Lekkerkerker
c12fae4775 Bump TwitchAPI to 3.10.0 (#92418)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-05-21 21:13:59 +02:00
J. Nick Koston
e27554f7a6 Improve http handler performance (#93324) 2023-05-21 13:36:03 -05:00
J. Nick Koston
ab0d35df92 Add zeroconf support to roomba (#93309) 2023-05-21 16:12:19 +02:00
Ernst Klamer
40c74ad5b7 Add support for sleepy BTHome devices (#92991)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-05-21 09:01:09 -05:00
starkillerOG
5821a563c7 Bump motionblinds to 0.6.18 (#93300) 2023-05-21 15:20:50 +02:00
henryptung
8a0f3a8c88 Fix Broadlink discovery for new RM Mini3 (again) (#93158) 2023-05-21 14:53:06 +02:00
Maciej Bieniek
d47e58fb38 Bump accuweather to version 1.0.0 (#93305) 2023-05-21 14:50:10 +02:00
J. Nick Koston
90984c34a9 Fix double call to options in sensor state (#93311) 2023-05-21 15:42:19 +03:00
J. Nick Koston
780f9bcdc0 Fix shutdown being delayed for cancelling tasks (#93287) 2023-05-21 14:17:34 +02:00
rikroe
72c76d35cc Bump bimmer_connected to 0.13.6 (#93307) 2023-05-21 14:16:47 +02:00
G Johansson
e676cbe9f2 Fix import issue in Workday (#92727)
* Workday fix import

* Messages
2023-05-21 10:13:36 +02:00
G Johansson
ddb9a6e33c Add change service to timer (#84775)
* Add change service

* test subtract

* Test no change if timer not running

* Modify example

* Raise

* Finalize

* test event

* Fix tests

* Fix tracking time
2023-05-21 10:11:08 +02:00
J. Nick Koston
fc7a421a48 Fix lookin falling back to polling too quickly (#93227) 2023-05-20 14:41:16 -05:00
J. Nick Koston
cbee514c2a Bump sqlalchemy to 2.0.15 (#93293) 2023-05-20 14:26:33 -05:00
J. Nick Koston
2a2b19ed7c Add support for Yale Home brand to august (#93214) 2023-05-20 09:42:19 -05:00
Mick Vleeshouwer
fa415480d6 Bump pyoverkiz to 1.7.9 (#93275)
Update PyOverkiz to v1.7.9
2023-05-20 12:52:43 +01:00
Jafar Atili
1935e126bf Add new integration to control Electra Smart HVAC devices (#70361)
* Added new integration to support Electra Smart (HVAC)

* fixes + option to set scan interval

* renamed the module to electrasmart and added unittests

* added non tested files to .coveragerc

* changed the usage from UpdateCoordinator to each entity updates it self

* small fixes

* increased pypi package version, increased polling timeout to 60 seconds, improved error handling

* PARALLEL_UPDATE=1 to prevent multi access to the API

* code improvements

* aligned with the new HA APIs

* fixes

* fixes

* more

* fixes

* more

* more

* handled re-atuh flow

* fixed test

* removed hvac action

* added shabat mode

* tests: 100% coverage

* ran hassfest

* Update homeassistant/components/electrasmart/manifest.json

Co-authored-by: Shay Levy <levyshay1@gmail.com>

* Update homeassistant/components/electrasmart/manifest.json

Co-authored-by: Shay Levy <levyshay1@gmail.com>

* Update homeassistant/components/electrasmart/manifest.json

Co-authored-by: Shay Levy <levyshay1@gmail.com>

* Update homeassistant/components/electrasmart/climate.py

Co-authored-by: Shay Levy <levyshay1@gmail.com>

* address Shay's comments

* address Shay's comments

* address more comments

---------

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2023-05-20 13:13:32 +03:00
Tom Brien
09a8479cf0 Add MASK wallets to Coinbase (#90742) 2023-05-19 22:31:19 +01:00
Luke
0ce1117287 Bump Roborock to 17.0 adding device specific support and bugfixes (#92547)
* init commit

* use official version release

* remove options

* moved first refresh to gather

* add extra tests

* remove model_sepcification

* remove old mqtt test

* bump to 13.4

* fix dndtimer

* bump to 14.1

* add status back

* bump to 17.0

* remove error as it is not used

* addressing mr comments

* making enum access use get()

* add check for empty hass data
2023-05-18 20:55:39 -07:00
J. Nick Koston
aebded049b Mark oralb devices as sleepy (#93250) 2023-05-18 16:32:24 -05:00
J. Nick Koston
be08bb5ba6 Convert proximity to be async (#93241) 2023-05-18 16:32:12 -05:00
Jan Čermák
3cdcfb1654 Bump rapt-ble to v0.1.1 (#93242) 2023-05-18 14:15:39 -05:00
Ville Skyttä
cb22154b36 Capture warnings.warn and friends messages in logs (#85875)
The default behavior of these warnings is to go to stderr, which in
some setups goes easily unnoticed. For example in Docker based ones,
they end up only in the container logs, and not e.g. in the HA log.

Capture these to make them available in logs where other such messages
are, and to make them subject to filtering as usual.
https://docs.python.org/3/library/logging.html#logging.captureWarnings
2023-05-18 21:41:13 +03:00
Guido Schmitz
3abcffe3a0 Raise on reauth in devolo Home Network switch platform (#92850) 2023-05-18 11:28:17 -05:00
Andre Lengwenus
0fca90127b Bump pypck to 0.7.17 (#93234) 2023-05-18 11:26:37 -05:00
J. Nick Koston
763b898621 Add always connected option to Yale Access Bluetooth (#93224)
* Add always connected option to Yale Access Bluetooth

If the lock does not support push updates via advertisements or you want lock operation to be more responsive, you can enable always connected mode. Always connected will cause the lock to stay connected to Home Assistant via Bluetooth, which will use more battery.

* Update homeassistant/components/yalexs_ble/config_flow.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-05-18 10:48:04 -05:00
J. Nick Koston
2eef2ed911 Add option to disable webhooks in ONVIF (#93186) 2023-05-18 10:34:09 -05:00
Ville Skyttä
0c51de25a2 Update UpCloud config entry data on successful reconfig (#68718)
* Update UpCloud config entry data on successful reconfig

* Add already configured test

* Improve success case request mocking

So that the data fetch that might happen in the background after success
won't trash the test log with misleading errors.

* Simplify already configured test

Thanks-to: Martin Hjelmare <marhje52@gmail.com>
2023-05-18 16:04:27 +03:00
Joakim Plate
ae7930c0ad Use entity translation in dsmr (#93017)
* Use entity translation in dsmr

* Combine a few strings
2023-05-17 22:31:04 +02:00
epenet
6481ee3c82 Fix lingering timers in yeelight (#92118) 2023-05-17 22:08:49 +02:00
epenet
dad3fbf5e2 Fix lingering timer in esphome (#92533) 2023-05-17 22:05:44 +02:00
J. Nick Koston
3f43184187 Speed up signing paths (#93127) 2023-05-17 22:01:13 +02:00
MatthewFlamm
d0460d5424 Fix NWS error with no observation (#92997)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-05-17 22:00:13 +02:00
Aaron Bach
b9798e4f4f Add support for SimpliSafe Smoke+CO detector (#93217) 2023-05-17 21:56:49 +02:00
Michael Benz
0828cc0e44 Add light entity to Tuya Air Purifiers (#92861) 2023-05-17 20:16:54 +01:00
Franck Nijhof
1173039392 Add virtual integration: Whisper (#93183) 2023-05-17 13:34:09 +02:00
Franck Nijhof
08fd0fd441 Add virtual integration: Piper (#93182) 2023-05-17 13:33:52 +02:00
J. Nick Koston
af1bac8745 Disconnect yale access locks at the stop event (#93192) 2023-05-17 13:25:28 +02:00
Nerdix
7cdd6b4cbc Increase timeout to 30 seconds for homeassistant_alerts integration (#93089) 2023-05-17 13:15:28 +02:00
J. Nick Koston
00b600bfa8 Fix ONVIF cameras that change the xaddr for the pull point service (#93104) 2023-05-17 13:14:31 +02:00
Franck Nijhof
fb7c579216 Add missing entity attribute translations to humidifier entity component (#93206) 2023-05-17 13:10:08 +02:00
J. Nick Koston
32481065a8 Increase size of valid entity id cache (#93125) 2023-05-17 13:06:52 +02:00
Ziv
f564a0ca24 Fix failure to register services in dynalite (#93069)
* fixed bug that fails to register services when there is no YAML config

* style improvement per thecode's suggestion
2023-05-17 14:05:36 +03:00
Matthias Alphart
c522ea855d KNX Group Monitor: Load latest 50 Telegrams on start (#93153)
* remove impossible test

IndividualAddress telegrams are not processed by xknx.telegram_queue

* Use Telegrams helper class for group monitor messages

* Store 50 telegrams in deque for group monitor

* Send recent telegrams at once on connection of group monitor

* Update KNX-frontend to support group monitor prepopulation
2023-05-17 09:58:00 +02:00
J. Nick Koston
b993fe1c9d Cache generation of the service descriptions (#93131) 2023-05-16 21:42:37 -05:00
tronikos
6c56ceead0 Create Google Generative AI Conversation integration (#93156)
* Copy openai_conversation to google_generative_ai_conversation
This is to improve diff of the next commit with the actual implementation.

Commands used:
cp -r homeassistant/components/openai_conversation/ homeassistant/components/google_generative_ai_conversation/
cp -r tests/components/openai_conversation/ tests/components/google_generative_ai_conversation/

find homeassistant/components/google_generative_ai_conversation/ tests/components/google_generative_ai_conversation/ -type f | xargs sed -i \
-e 's@openai_conversation@google_generative_ai_conversation@g' \
-e 's@OpenAI Conversation@Google Generative AI Conversation@g' \
-e 's@balloob@tronikos@g'

* Add google_generative_ai_conversation to Google brand

* Google Generative AI Conversation

* Sync recent openai changes

* handle empty responses
2023-05-16 21:05:56 -04:00
rikroe
defc23cc7c Fix china login for bmw_connected_drive (#93180)
* Bump bimmer_connected to 0.13.5

* Fix snapshots after dependency bump

* Load gcid from config entry if available

* Add tests

---------

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-05-17 02:03:01 +02:00
J. Nick Koston
210c309770 Bump pyatv to 0.11.0 (#93172) 2023-05-16 18:52:18 -05:00
Aaron Bach
e48961d29b Bump regenmaschine to 2023.05.1 (#93139) 2023-05-16 16:28:20 -06:00
J. Nick Koston
bf16f6b104 Remove as_compressed_state cache (#93169)
* Remove as_compressed_state cache

All calls to as_compressed_state are now covered by a higher level
JSON cache so there is no need to store these in memory anymore

* Remove as_compressed_state cache

All calls to as_compressed_state are now covered by a higher level
JSON cache so there is no need to store these in memory anymore
2023-05-16 12:39:16 -05:00
Ville Skyttä
e949344dd9 Huawei LTE connection management cleanups (#85929)
* Disconnect rather than just logout at end of config flow

Neither the connection or the requests session will be reused, so
there's no reason just to logout. Do all of the connection closure
so we get all of huawei-lte-api's cleanups explicitly done.

* Name connect functions consistently, analoguous to disconnect
2023-05-16 20:34:03 +03:00
Maciej Bieniek
685016052b Bump accuweather to version 0.5.2 (#93130) 2023-05-16 11:38:17 -05:00
Álvaro Fernández Rojas
e5c12122e2 Update aioairzone to v0.5.6 (#93146) 2023-05-16 12:51:22 +02:00
epenet
9bd49e4f1d Fix lingering timer in usgs_earthquakes_feed (#93084) 2023-05-16 11:13:14 +02:00
J. Nick Koston
32b70ea133 Bump PyJWT to 2.7.0 (#93128) 2023-05-16 10:26:04 +02:00
J. Nick Koston
99265a983a Speed up reconnects by caching state serialize (#93050) 2023-05-16 02:33:12 -05:00
J. Nick Koston
9c039a17ea Bump guppy3 to 3.1.3 (#93124) 2023-05-16 08:26:17 +02:00
epenet
f6b700372a Allow wemo config entry to be unloaded (#93082)
* Fix lingering timer in wemo

* Also stop the subscriptions
2023-05-16 06:31:31 +02:00
Guido Schmitz
36332eb441 Bump devolo_plc_api to 1.3.1 (#93099) 2023-05-15 20:12:44 -05:00
Matthias Alphart
2f8e8901fc Add KNX interface device trigger for telegrams (#93102)
* telegram device trigger initial

* add Telegrams helper class

to parse and convert Telegram only once instead of once per device trigger

* translation

* label for extra_field

* test device trigger

* test trigger callback removal

* rename extra_field key to same name as used in trigger

* typo
2023-05-15 22:59:29 +02:00
J. Nick Koston
72a6d3a748 Re-enable cleanup_closed on cpython >= 3.11.4 (#93120) 2023-05-15 21:29:41 +02:00
luar123
d8d4446563 Bump snapcast to 2.3.3 (#93112)
bump snapcast to 2.3.3
2023-05-15 22:29:28 +03:00
J. Nick Koston
b400c53159 Bump pyunifiprotect to 4.9.0 (#93106)
changelog: https://github.com/AngellusMortis/pyunifiprotect/compare/v4.8.3...v4.9.0
2023-05-15 22:26:29 +03:00
J. Nick Koston
64623283b2 Bump aioesphomeapi to 13.7.5 (#93121)
performance improvements

changelog: https://github.com/esphome/aioesphomeapi/compare/v13.7.4...v13.7.5
2023-05-15 22:24:17 +03:00
luar123
209650dca1 Remove snapcast friendly_name attribute (#93116)
Remove friendly_name attribute and fix names
2023-05-15 22:23:24 +03:00
epenet
b38a7aabe9 Fix lingering timer in withings (#93085) 2023-05-15 21:20:20 +02:00
Pascal Vizeli
cf957f1880 Bump aioecowitt 2023.5.0 (#93094) 2023-05-15 21:19:27 +02:00
Jan Bouwhuis
c97e0f11a5 Fix last imap message is not reset on empty search (#93119) 2023-05-15 21:15:10 +02:00
Daniel Gangl
d12ea0040f Fix weather handling in zamg (#85635)
* TypeError handling in weather

* Check for None

* Use walrus operator as proposed
2023-05-15 19:26:02 +02:00
epenet
48ab74eedf Add missing mock in wiffi tests (#93083) 2023-05-15 11:15:19 +02:00
Jens Østergaard Nielsen
01dc27e2a2 Remove default unit of measurement in IHC sensors (#93054)
Remove sensor default unit of measurement
2023-05-15 09:50:39 +02:00
Stephan Uhle
55c675d0fd Bump pysml to 0.0.11 (#93035)
Updated pysml to 0.0.11
2023-05-15 09:15:22 +02:00
Pieter Viljoen
77f99e4162 Add MEASUREMENT state class to Sense Voltage sensors (#93044)
Add MEASUREMENT to Voltage sensors
2023-05-15 09:11:12 +02:00
J. Nick Koston
ef887e529f Fix onvif cameras that cannot parse relative time (#92711)
* Fix onvif cameras that cannot parse relative time

The spec requires that the camera can parse relative or absolute timestamps
However there are many cameras that cannot parse time correctly.

Much of the event code has been offloaded to the library and
support to determine if the camera has broken time and switch
to absolute timestamps is now built into the library

* adjust verison

* fixes

* bump

* bump

* bump

* more fixes

* preen

* fix resume

* one more fix

* fix race in webhook setup

* bump to 3.1.3 which has more fixes for broken camera firmwares

* bump 3.1.4 for more fixes

* fix

* fix comment

* bump

* fix url limit

* bump

* more fixes

* old hik uses -s
2023-05-14 16:08:39 -04:00
J. Nick Koston
d5a0824924 Use futures instead of asyncio.Event for async_get_integrations (#93060)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-05-14 14:42:04 -05:00
Paulus Schoutsen
e0a97ec90d 2023.5.3 (#93066) 2023-05-14 13:00:18 -04:00
J. Nick Koston
b95405a7e9 Small performance improvements to state diff messages (#92963)
Adds missing test coverage
2023-05-14 12:28:34 -04:00
J. Nick Koston
3314eed8d1 Switch to using a ContextVar for template RenderInfo (#93016)
The ContextVar is about 40% faster than the attr
and dict lookups
2023-05-14 12:23:31 -04:00
J. Nick Koston
2848f8648d Log last message when websocket reaches peak limit (#93038)
When we hit the absolute limit, we would log the last messages as
it was key to finding out the source. We now do the same when
we hit the peak limit
2023-05-14 12:22:19 -04:00
Paulus Schoutsen
1f6a601fc9 Bumped version to 2023.5.3 2023-05-14 12:11:32 -04:00
Aaron Bach
ff14277805 Fix a series of bugs due to Notion API changes (#93039)
* Fix a series of bugs due to Notion API changes

* Simplify

* Reduce blast radius

* Reduce blast radius

* Fix tests
2023-05-14 12:11:22 -04:00
J. Nick Koston
6424dee231 Fix sslv2/sslv3 with unverified connections (#93037)
In #90191 we use the same ssl context for httpx now to avoid
a memory leak, but httpx previously allowed sslv2/sslv3 for
unverified connections

This reverts to the behavior before #90191
2023-05-14 12:11:21 -04:00
J. Nick Koston
13c51e9c34 Disable cleanup_closed for aiohttp.TCPConnector with cpython 3.11.1+ (#93013)
* Disable cleanup_closed for aiohttp.TCPConnector with cpython 3.11.2+

There is currently a relatively fast memory leak when using
cpython 3.11.2+ and cleanup_closed with aiohttp

For my production instance it was leaking ~450MiB per day
of `MemoryBIO`, `SSLProtocol`, `SSLObject`, `_SSLProtocolTransport`
`memoryview`, and `managedbuffer` objects

see https://github.com/aio-libs/aiohttp/issues/7252
see https://github.com/python/cpython/pull/98540

* Update homeassistant/helpers/aiohttp_client.py
2023-05-14 12:11:20 -04:00
puddly
304c34a119 Bump bellows to 0.35.5 to fix Aqara Zigbee connectivity issue (#92999)
Bump bellows to 0.35.5
2023-05-14 12:11:19 -04:00
starkillerOG
d840d27f2d Bump reolink-aio to 0.5.15 (#92979) 2023-05-14 12:11:18 -04:00
Michael
a8cf3fadaa Fix remove of device when surveillance station is not used in Synology DSM (#92957) 2023-05-14 12:11:17 -04:00
Joost Lekkerkerker
a3f3b43c20 Bump python-vehicle to 1.0.1 (#92933) 2023-05-14 12:11:17 -04:00
Robert Hillis
b0520ccb94 Bump eternalegypt to 0.0.16 (#92919) 2023-05-14 12:11:16 -04:00
Jonathan Keslin
fe308e26dc Bump volvooncall to 0.10.3 to fix sensor type error (#92913) 2023-05-14 12:11:15 -04:00
Michael
60fb71159d Fix uptime sensor deviation detection in Fritz!Tools (#92907) 2023-05-14 12:11:14 -04:00
G Johansson
413dbe89e5 Fix already_configured string in workday (#92901)
* Fix already_configured string in workday

* Fix strings
2023-05-14 12:11:13 -04:00
J. Nick Koston
7abe9f1f9a Bump bluetooth-auto-recovery to 1.2.0 (#92893) 2023-05-14 12:11:12 -04:00
Glenn Waters
252b99f00b Bump UPB integration library to 0.5.4 (#92879) 2023-05-14 12:11:11 -04:00
J. Nick Koston
8e407334b7 Add ONVIF services to diagnostics (#92878) 2023-05-14 12:11:10 -04:00
puddly
91faa31e8c Bump ZHA dependencies (#92870) 2023-05-14 12:11:09 -04:00
Michael Hansen
5e77de35bd Allow "no" to match "nb" in language util (#92862)
* Allow "no" to match "nb"

* Adjust comparison for speed
2023-05-14 12:11:09 -04:00
jjlawren
c1b18dcbba Bump sonos-websocket to 0.1.1 (#92834) 2023-05-14 12:11:08 -04:00
Diogo Gomes
3c45bda0e8 Don't try to restore unavailable nor unknown states (#92825) 2023-05-14 12:11:07 -04:00
Álvaro Fernández Rojas
7361c29cba Update aioairzone to v0.5.5 (#92812) 2023-05-14 12:11:06 -04:00
Álvaro Fernández Rojas
a551de06c7 Fix Airzone Auto operation mode (#92796) 2023-05-14 12:11:05 -04:00
Erik Montnemery
84ce2f13f2 Fix race in Alexa async_enable_proactive_mode (#92785) 2023-05-14 12:11:04 -04:00
Álvaro Fernández Rojas
5c949bd862 Update aioairzone to v0.5.3 (#92780) 2023-05-14 12:11:03 -04:00
Keilin Bickar
16020d8ab9 Bump asyncsleepiq to 1.3.5 (#92759) 2023-05-14 12:11:02 -04:00
karwosts
f866d6100d Fix zwave_js services example data (#92748) 2023-05-14 12:11:01 -04:00
Brandon Rothweiler
8d0da78fab Increase timeout to 30 seconds for Mazda integration (#92744) 2023-05-14 12:11:00 -04:00
J. Nick Koston
7173a4f377 Bump aioesphomeapi to 3.7.4 to fix proxied BLE connections not retrying right away on error (#92741) 2023-05-14 12:11:00 -04:00
Eduard van Valkenburg
d4acb2a381 Update deprecated functions in SIA (#92737)
update deprecated functions
2023-05-14 12:10:59 -04:00
Shay Levy
b1111eb2c7 Bump aiowebostv to 0.3.3 to fix Python 3.11 support (#92736)
Bump aiowebostv to 0.3.3
2023-05-14 12:10:58 -04:00
Mick Vleeshouwer
4895ca218f Bump pyoverkiz to 1.7.8 (#92702) 2023-05-14 12:10:57 -04:00
Aaron Bach
91e9d21548 Bump aionotion to 2023.05.1 (#92697) 2023-05-14 12:10:56 -04:00
J. Nick Koston
996c6c4a92 Fix onvif reauth when device returns a http 401/403 error (#92690) 2023-05-14 12:10:55 -04:00
J. Nick Koston
96ff24aa2f Always request at least one zone for multi-zone LIFX devices (#92683) 2023-05-14 12:08:33 -04:00
J. Nick Koston
dcc5940f9b Fix parallel_updates being acquired too late for entity executor jobs (#92681)
* Fix parallel_updates being acquired too late for entity executor jobs

* tweak
2023-05-14 12:08:33 -04:00
rikroe
dd51bba677 Bump bimmer_connected to 0.13.3 (#92648)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-05-14 12:08:32 -04:00
Luke
ac9da5c167 Roborock continue on failed mqtt disconnect (#92502)
continue on async disconnect failure
2023-05-14 12:08:31 -04:00
J. Nick Koston
e073f091b1 Cache ip address stringify in zeroconf (#92800)
stringify IPv6 addresses is expensive, and since zeroconf sees the same
ones over and over again an LRU can avoid the constant stringify
2023-05-14 12:07:38 -04:00
Aaron Bach
637941df4d Fix a series of bugs due to Notion API changes (#93039)
* Fix a series of bugs due to Notion API changes

* Simplify

* Reduce blast radius

* Reduce blast radius

* Fix tests
2023-05-14 12:07:15 -04:00
J. Nick Koston
e593ceaaf2 Fix sslv2/sslv3 with unverified connections (#93037)
In #90191 we use the same ssl context for httpx now to avoid
a memory leak, but httpx previously allowed sslv2/sslv3 for
unverified connections

This reverts to the behavior before #90191
2023-05-13 20:16:11 -04:00
J. Nick Koston
7d371a33bb Disable cleanup_closed for aiohttp.TCPConnector with cpython 3.11.1+ (#93013)
* Disable cleanup_closed for aiohttp.TCPConnector with cpython 3.11.2+

There is currently a relatively fast memory leak when using
cpython 3.11.2+ and cleanup_closed with aiohttp

For my production instance it was leaking ~450MiB per day
of `MemoryBIO`, `SSLProtocol`, `SSLObject`, `_SSLProtocolTransport`
`memoryview`, and `managedbuffer` objects

see https://github.com/aio-libs/aiohttp/issues/7252
see https://github.com/python/cpython/pull/98540

* Update homeassistant/helpers/aiohttp_client.py
2023-05-13 20:15:02 -04:00
imerla1
a9778c4236 fixed typo (#93029) 2023-05-13 21:05:55 +02:00
puddly
61cd36d628 Bump bellows to 0.35.5 to fix Aqara Zigbee connectivity issue (#92999)
Bump bellows to 0.35.5
2023-05-13 14:06:22 -04:00
Justas
0437926db8 Adding newly supported language codes to Google TTS (#93030) 2023-05-13 14:03:20 -04:00
G Johansson
01e131b278 Fix already_configured string in workday (#92901)
* Fix already_configured string in workday

* Fix strings
2023-05-13 10:42:04 +02:00
J. Nick Koston
81796fbf7b Bump orjson to 3.8.12 (#92935)
changes: https://github.com/ijl/orjson/releases/tag/3.8.12
2023-05-13 10:06:32 +03:00
starkillerOG
051d631504 Poll Reolink motion when ONVIF not available (#92837)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-05-12 18:48:32 +02:00
J. Nick Koston
8711735ec0 Improve websocket throughput and reduce latency (#92967) 2023-05-13 00:13:57 +09:00
Erik Montnemery
9a70f47049 Teach UnitlessRatioConverter about ppm and ppb (#92989) 2023-05-12 16:46:37 +02:00
Matrix
7807df4426 Fix yolink dimmer Incorrect state update (#92986)
fix state update
2023-05-12 16:15:04 +02:00
starkillerOG
4a50c3fbae Bump reolink-aio to 0.5.15 (#92979) 2023-05-12 23:04:36 +09:00
Michael
e883fef8ab Fix remove of device when surveillance station is not used in Synology DSM (#92957) 2023-05-12 23:02:42 +09:00
Álvaro Fernández Rojas
45e7283584 Add Airzone fan speed support (#92840) 2023-05-12 22:56:17 +09:00
Jan Bouwhuis
a05c20a498 Filter replaying unrelated retained MQTT messages when subscribing to share topics (#88826)
* Do not replay already processed retained subscr.

* Add tests

* Always replay wildcards

* Update tests for debouncer

* Rework for retained topics

* Fix test

* Correct comment

* Add cleanup and test

* Fix key error

* Correct helper

* Rename mock

* Add comment on function _retained_init

* Always replay initial retained payload

* Apply suggestion moving msg.retain to outer check

* Improve test on edge case

* Improve comment formatting

* Follow up comment - improve comments on test

* Update homeassistant/components/mqtt/client.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-05-12 15:23:05 +02:00
Robert Hillis
bd7e943efe Move Netgear LTE services to their own file (#92945)
* Move Netgear LTE services to their own file

* Update homeassistant/components/netgear_lte/services.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-05-12 15:18:34 +02:00
Erik Montnemery
30f52b8d96 Minor typing adjustment in entity_platform (#92978) 2023-05-12 15:17:01 +02:00
J. Nick Koston
93bfd7d8d0 Small speed up to validating entity ids (#92970) 2023-05-12 15:04:09 +02:00
Piotr Tobolski
02b5d643e7 Add unique_id support to history_stats sensor (#92972) 2023-05-12 15:03:06 +02:00
J. Nick Koston
24284fe379 Speed up validating domains in templates (#92975)
This path gets called quite a bit since most templates
access the state via states.DOMAIN...
2023-05-12 14:57:51 +02:00
Erik Montnemery
5a7c3aaa2d Add sensor device class volatile_organic_compounds_parts (#92973) 2023-05-12 14:37:54 +02:00
Erik Montnemery
7546e8efa4 Remove stale comment from sensor.const (#92974) 2023-05-12 14:34:29 +02:00
Robert Hillis
b4e85b7692 Move Netgear LTE entity to its own file (#92944) 2023-05-12 13:29:56 +02:00
Álvaro Fernández Rojas
e9705364a8 Fix Airzone Auto operation mode (#92796) 2023-05-12 16:07:29 +09:00
J. Nick Koston
809f394ff5 Bump sqlalchemy to 2.0.13 (#92936) 2023-05-12 04:37:16 +09:00
Joost Lekkerkerker
30c35e7398 Bump python-vehicle to 1.0.1 (#92933) 2023-05-11 21:31:17 +02:00
Ian
0fcf8f968b Move nextbus constants and utils (#92211)
* NextBus: Move general components to const and util

* Remove not yet used code
2023-05-11 17:28:29 +01:00
Robert Hillis
aee3f115d6 Move Netgear LTE constants to their own file (#92924)
* Move Netgear LTE parts to their own files

* Revert to only move constants

* uno mas
2023-05-11 16:49:11 +01:00
J. Nick Koston
52c773a776 Always request at least one zone for multi-zone LIFX devices (#92683) 2023-05-11 12:02:32 +02:00
Erik Montnemery
c1f716487c Include data for entire periods in response to recorder/statistics_during_period (#92848)
* Include data for entire periods in response to recorder/statistics_during_period

* Break out function for calculating the end of the month
2023-05-11 11:28:33 +02:00
Franck Nijhof
67d5ca4894 Mark entities from the sun as diagnostic (#92909) 2023-05-11 18:27:19 +09:00
Bram Kragten
75f8ea48f4 Add tts get engine ws command (#92336)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-05-11 10:51:00 +02:00
Erik Montnemery
4568207f9b Support calculating changes between consecutive sum statistics (#92823)
* Support calculating changes between consecutive sum statistics

* Add support for unit conversion when calculating change

* Don't include sum in WS response unless requested

* Improve tests

* Break out calculating change to its own function

* Improve test coverage
2023-05-11 10:05:58 +02:00
J. Nick Koston
8b57d31eba Add ONVIF services to diagnostics (#92878) 2023-05-11 17:03:31 +09:00
Jonathan Keslin
c14efef582 Bump volvooncall to 0.10.3 to fix sensor type error (#92913) 2023-05-11 09:42:04 +02:00
epenet
949e8f7b13 Migrate rest notify to httpx (#90769) 2023-05-11 08:26:16 +01:00
Michael
26f7843800 Fix uptime sensor deviation detection in Fritz!Tools (#92907) 2023-05-11 09:10:06 +02:00
J. Nick Koston
bf2cfb8edf Bump bluetooth-auto-recovery to 1.2.0 (#92893) 2023-05-11 08:58:29 +02:00
epenet
0cc3e8200c Fix lingering timer in iaqualink (#92856) 2023-05-11 08:55:36 +02:00
epenet
2c79adad5e Fix lingering timer in flux (#92573) 2023-05-11 08:54:51 +02:00
Ståle Storø Hauknes
fbd06e0745 Add model name to Airthings integration (#92921) 2023-05-11 08:44:38 +02:00
Marc Mueller
2b59adc955 Update mypy to 1.3.0 (#92911) 2023-05-11 08:38:08 +02:00
J. Nick Koston
3c8659d5d7 Fix missing f-string in async_track_utc_time_change (#92916) 2023-05-11 08:37:15 +02:00
Ståle Storø Hauknes
2ea21e9c2a Adjust link for Airthings (cloud) devices (#92922) 2023-05-11 08:31:23 +02:00
Robert Hillis
14752fdfc2 Bump eternalegypt to 0.0.16 (#92919) 2023-05-10 20:32:14 -04:00
Ziv
dd7db85529 User config flow and custom panel for Dynalite integration (#77181) 2023-05-11 00:17:23 +02:00
Matthias Alphart
6250b0a230 Add a custom panel for KNX with a group monitor (#92355)
* Add KNX panel

* provide project data for the panel group monitor

* upload and delete project from panel

* test project store

* more tests

* finish tests

* use integers for DPTBinary payload monitor display

* add project to diagnostics

* require new frontend version

* update knx_frontend

* review suggestions

* update xknxproject to 3.1.0

---------

Co-authored-by: Marvin Wichmann <me@marvin-wichmann.de>
2023-05-11 00:13:22 +02:00
Flo
0f2caf864a Alexa Intent: Use the 'id' field and expose nearest resolutions as variables (#86709)
* Use the 'id' field and nearest resolutions
Expose nearest Resolution (ID and Value) as Variables

* Add more specific type hints

* Change type definition of request

* Add deprecation warning and remove variables

* Remove deprecation warning & update tests

* Fix wrong value assignment

* revert future changes
2023-05-10 21:25:08 +02:00
Franck Nijhof
97cac66195 Add counter.set_value service (#92863) 2023-05-10 18:52:10 +02:00
puddly
98b91bcad9 Bump ZHA dependencies (#92870) 2023-05-10 18:04:46 +02:00
Glenn Waters
74c26fb5e0 Bump UPB integration library to 0.5.4 (#92879) 2023-05-10 18:03:38 +02:00
Dave T
4d26486c98 Add minor comment to assist development in aurora_abb_powerone (#90936)
Add comment to assist development
2023-05-10 15:53:00 +02:00
Kashif Khan
7439ca5b1a Bump azure-servicebus to 7.10.0 (#92866) 2023-05-10 12:36:44 +02:00
Malte Franken
649557ed2e Add config flow to geo_json_events (#87062)
* migrated geo_json_events integration to config flow

* improve test coverage

* code reformatting

* fix tests

* fix entity manager

* changes after review

* improve test coverage and fixed form

* remove unused code

* remove commented out code

* changes after review

* make title prettier

* fixed tests

* simplified code

* changes after review

* fix test

* push deprecation out

* changes after review

* changes after review

* changes after review

* changes after review

* changes after review

* removed scan interval from user flow and import flow
2023-05-10 10:28:45 +02:00
Arkadii Yakovets
0c0d59d3e2 Correct workday strings typo (#92880) 2023-05-10 09:47:42 +02:00
epenet
be040f8259 Bump samsungtvws to 2.6.0 (#92876) 2023-05-10 08:52:38 +09:00
Diogo Gomes
23e24d75dc Don't try to restore unavailable nor unknown states (#92825) 2023-05-09 22:22:06 +02:00
Jan Bouwhuis
9e9073d5da Move raise on MQTT publish outside lock (#92860)
* Move raise outside lock

* Move log too
2023-05-09 20:55:29 +02:00
Michael Hansen
5d6ccd6a32 Allow "no" to match "nb" in language util (#92862)
* Allow "no" to match "nb"

* Adjust comparison for speed
2023-05-09 13:46:57 -05:00
Erik Montnemery
7d29d584fd Fix race in Alexa async_enable_proactive_mode (#92785) 2023-05-09 19:58:00 +02:00
Erik Montnemery
67c1051305 Allow setting an entity's name by its device class (#90767)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-05-09 18:55:55 +02:00
epenet
337b59ba23 Fix lingering timer in hassio (#92854) 2023-05-09 18:42:04 +02:00
kernelpanic85
923276a333 Bump panacotta to 0.2 (#92797) 2023-05-09 18:28:10 +02:00
epenet
5f7496f97b Fix lingering timer in hue light tests (#92858) 2023-05-09 17:07:23 +02:00
Jan Bouwhuis
25549eed85 Debounce and group mqtt unsubscribes (#92201)
* Debounce MQTT unsubscribes and merge to one call

* Make _async_unsubscribe a callback

* Make sure unsubscribes are processed

* Move debug log out of lock

* Reduce calls and raise outside lock

* Cancel any unsubscribe when queing

* Copy pending unsubscribes

* Only convert topics to list once

* No copy needed

* Typo in comment
2023-05-09 16:36:19 +02:00
Álvaro Fernández Rojas
0199c6f5b2 Update aioairzone to v0.5.5 (#92812) 2023-05-09 09:21:47 +02:00
epenet
cc9de2cc21 Drop unused argument in hassio (#92820) 2023-05-09 08:54:55 +02:00
jjlawren
04c298b772 Bump sonos-websocket to 0.1.1 (#92834) 2023-05-09 07:58:56 +02:00
G Johansson
0bda869553 Lock entity options (#88139) 2023-05-08 22:06:11 +02:00
J. Nick Koston
cdc4b315e5 Bump aioesphomeapi to 3.7.4 to fix proxied BLE connections not retrying right away on error (#92741) 2023-05-08 18:56:06 +02:00
Jan Bouwhuis
689c6fbef7 Merge pending MQTT subscribes to a single call to the paho client (#92172)
* Merge mqtt subscribes in one call

* Cleanup

* cleanup, log outside of lock

* Remove function wrapper

* Add test that we bundle subscriptions
2023-05-08 15:37:25 +02:00
Álvaro Fernández Rojas
bafb01246a Update aioairzone to v0.5.3 (#92780) 2023-05-08 15:16:16 +02:00
Erik Montnemery
043812bfc3 Bump hass-nabucasa to 0.67.1 (#92484)
* Bump hass-nabucasa to 0.67.1

* Fix typing
2023-05-08 10:51:47 +02:00
G Johansson
6ad4e13b38 Manual trigger entity and refactor command_line switch (#91506)
* TriggerEntity to CoordinatorTriggerEntity

* _render_templates

* split manual vs coordinator

* name

* ManualTriggerEntity

* value

* Remove ManualTriggerEntity

* ManualTriggerEntity

* process_manual_data

* Add test

* imports

* Move ManualTriggerEntity

* cmd_line switch

* Review comments

* Fix templating

* Review comments

* Remove unneeded logging
2023-05-08 10:19:37 +02:00
G Johansson
2e65b77b2b Bump pytrafikverket to 0.3.3 (#92761) 2023-05-07 22:03:37 +02:00
Stephan Uhle
d14af51f56 Add debug logs for EDL21 (#92763) 2023-05-07 21:24:42 +02:00
Keilin Bickar
86e5efd929 Bump asyncsleepiq to 1.3.5 (#92759) 2023-05-07 20:58:14 +02:00
Brandon Rothweiler
bfb38d2f9c Increase timeout to 30 seconds for Mazda integration (#92744) 2023-05-07 17:32:11 +02:00
karwosts
266905a9d3 Fix zwave_js services example data (#92748) 2023-05-07 17:31:25 +02:00
G Johansson
5b8e72feda Fix regression in rainbird (#92745) 2023-05-07 17:11:55 +02:00
Joakim Plate
6fe596b64f Bump nibe to 2.2.0 (#92740) 2023-05-07 17:11:34 +02:00
Robert Hillis
54b303dfea Cleanup after removing D-Link yaml (#92739) 2023-05-07 16:49:34 +02:00
Robert Hillis
e753a33fd7 Fix regression in Skybell (#92735) 2023-05-07 16:48:49 +02:00
Eduard van Valkenburg
28efeb9d9e Update deprecated functions in SIA (#92737)
update deprecated functions
2023-05-07 16:47:02 +02:00
Shay Levy
78fa7fc5da Bump aiowebostv to 0.3.3 to fix Python 3.11 support (#92736)
Bump aiowebostv to 0.3.3
2023-05-07 16:33:15 +03:00
Guido Schmitz
f165a41b7a Add button platform to devolo Home Network (#85834)
* Add Start WPS button

* Add remaining buttons

* Set correct entity categories

* Inherit from DevoloEntity

* Fix mypy

* Apply feedback

* Raise on DevicePasswordProtected

* Fix ruff

* Really fix ruff

* Adapt to recent development

* Change error message
2023-05-07 14:53:46 +02:00
Gerard
8c67e96e38 Add AC current limit and Pre entry climatization (#92688)
* Add AC current limit and Pre entry climatization

Additional information available for EVs

* Add pre entry climatization

* Fix mypy error

* Change for black and mypy
2023-05-07 12:46:00 +02:00
Austin Mroczek
16c915864b Add diagnostic sensors for TotalConnect (#73152)
* add diagnostic sensors

* test binary_sensor.py file

* add tests for binary sensor

* fix zone type checks and error on unknown

* improve entity tests

* hide entities by default

* Revert "hide entities by default"

This reverts commit 9808d732471385e45ccc5f7c3aea93bfecbdfa6f.

* Update homeassistant/components/totalconnect/binary_sensor.py

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

* update binary_sensor per comments

* update test

* move to _attr_extra_state_attributes

* no spaces in unique_id

* update per balloob suggestions

* fix typing

* fix black and mypy

* Apply suggestions from code review

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* add more to binary_sensor tests

* remove unused import

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-05-07 10:27:33 +02:00
andarotajo
bf6d429339 Add config flow to dwd_weather_warnings (#91040)
* Add config flow to dwd_weather_warnings

* Add additional test for more coverage

* Apply code review changes

* Apply further code review changes

* Rename constant for configuration

* Apply code review changes

* Simplify config flow code
2023-05-07 10:26:39 +02:00
Thijs W
b22c45ea29 Fix radio_id can be unavailable (#92698)
Allow radio_id to be unavailable
2023-05-07 08:59:36 +02:00
G Johansson
2c5cad4ca0 Clean config flow for SQL (#92332) 2023-05-07 01:42:37 +02:00
J. Nick Koston
f47f49c9a1 Reduce overhead to check bluetooth logging (#92512) 2023-05-07 01:30:54 +02:00
J. Nick Koston
ce3cb5864a Improve reliablity of recorder purge test (#92641) 2023-05-07 01:28:43 +02:00
epenet
7cb25e9710 Fix lingering timer in generic_hygrostat (#92575) 2023-05-07 01:28:10 +02:00
G Johansson
7e19bb4ee0 Minor cleanup config flow Workday (#92163) 2023-05-07 00:55:06 +02:00
J. Nick Koston
c624e50b60 Update onvif error checking to use explict None check (#92642) 2023-05-07 00:47:15 +02:00
Mick Vleeshouwer
4a2af45e37 Change IO_OUTLET_ENGINE sensor from Liter to Cubic Meters Per Hour in Overkiz (#92704) 2023-05-07 00:44:26 +02:00
Mick Vleeshouwer
99ab7c5a37 Bump pyoverkiz to 1.7.8 (#92702) 2023-05-07 00:36:21 +02:00
J. Nick Koston
d05724a42a Fix onvif reauth when device returns a http 401/403 error (#92690) 2023-05-07 00:12:24 +02:00
G Johansson
d66305ddd3 Remove dlink yaml import (#92590) 2023-05-07 00:01:58 +02:00
Marc Mueller
14fd5b7cda Update pylint to 2.17.4 (#92703) 2023-05-06 23:21:31 +02:00
Aaron Bach
c634d8f940 Bump aionotion to 2023.05.1 (#92697) 2023-05-06 13:11:57 -05:00
G Johansson
9538d8bcfe Bump pysensibo to 1.0.28 (#92684) 2023-05-06 12:02:09 -05:00
Luke
3f8ffcae73 Bump anova_wifi to 0.10.0 to add better debug (#92686)
add more debig
2023-05-06 18:32:44 +02:00
G Johansson
080ce51ed9 Remove issue from pushover (#92595)
* Remove issue pushover

* Remove strings
2023-05-06 16:49:34 +02:00
J. Nick Koston
4c3e98b77c Fix parallel_updates being acquired too late for entity executor jobs (#92681)
* Fix parallel_updates being acquired too late for entity executor jobs

* tweak
2023-05-06 16:46:00 +02:00
Artem Draft
d816da9355 Add media_player platform to Android TV Remote (#91677) 2023-05-06 09:18:34 -05:00
Christoffer Poulsen
053eaad2bd Add charging target sensor to bmw_connected_drive (#92628)
* Add chaging status sensor

* Add unit type based on review
2023-05-06 11:57:53 +02:00
Joakim Plate
f9fe3f4af4 Add nibe heat pump water heater entities (#79099)
* Add water heater platform

* Enable water heater platform

* No need to set target temp feature

* Split out preset mode

* Switch to parameters from lib

* Drop presets

* Add missing callback to coordinator update

* Drop support for heatpump activity

- Current entity model does not support it

* Handle s series lack of mappings

* Protect for missing operation modes to set
2023-05-06 11:41:11 +02:00
Sebastian Lövdahl
e680ec6247 Remove deprecated Vallox YAML configuration (#91096)
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-05-06 10:23:14 +02:00
rikroe
7e041a95c9 Bump bimmer_connected to 0.13.3 (#92648)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-05-06 10:05:57 +02:00
rikroe
9a65a89aa4 Improve internet/API error handling for BMW (#90274)
* Improve internet/API error handling

* Switch to library exceptions for HTTP status errors

* Remove duplicate logging after reconnect

* Raise UpdateFailed instead of custom log handling

---------

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-05-06 10:00:37 +02:00
Matthias Alphart
1af1f4db0c Fix devolo home lint errors from ruff (#92649) 2023-05-05 17:11:05 -05:00
Guido Schmitz
b195d5d1db Assemble platforms upfront in devolo Home Network (#80126)
* Assemble platforms upfront in devolo Home Network

* Add tests

* Optimize mocks

* Use async_forward_entry_setups

* Adapt tests to newly added switch platform
2023-05-05 23:01:57 +02:00
Tom Harris
bdd786b1f0 Cleanup Insteon to use Platform vs DOMAIN constants (#92366)
* Utilize Platform constant

* Use Platform constant
2023-05-05 21:32:51 +02:00
Guido Schmitz
2b3f7ad70d Add diagnostics to devolo Home Control (#86069)
* Add diagnostics to devolo Home Control

* Apply feedback
2023-05-05 21:24:42 +02:00
Paulus Schoutsen
e904edb12e 2023.5.2 (#92610) 2023-05-05 15:23:51 -04:00
mkmer
774f1c8ef9 Dont reload integration on auth error in Aladdin Connect (#92399)
Remove reload on auth error
2023-05-05 21:22:55 +02:00
mkmer
7a57435e8c Address connection error wording in Honeywell (#92488)
Connection error wording in Honeywell
2023-05-05 21:21:22 +02:00
Luke
f326dd919b Roborock continue on failed mqtt disconnect (#92502)
continue on async disconnect failure
2023-05-05 21:20:30 +02:00
G Johansson
82b4368d1d Bump pytrafikverket to 0.3.1 (#92425)
* Bump pytrafikverket 0.3.0

* 0.3.1

* mypy

* Fix exceptions
2023-05-05 21:19:16 +02:00
G Johansson
85dcd4007c Remove yaml config issue from steam_online (#92592)
Remove yaml config issue from steam
2023-05-05 21:02:40 +02:00
G Johansson
e597b3a862 Remove issue from skybell (#92602)
Remove issue
2023-05-05 20:56:49 +02:00
Steve Easley
6bbcf2f689 Add JVC Projector integration (#84748)
* Initial commit of jvcprojector

* Renamed domain

* Initial commit

* Support for v1.0.6 device api

* Fixed failing test

* Removed TYPE_CHECKING constant

* Removed jvc brand

* Removed constant rename

* Renaming more constants

* Renaming yet more constants

* Improved config_flow tests

* More changes based on feedback

* Moved config_flow dependency

* Removed default translation title

* Removed translation file

* Order manifest properly
2023-05-05 20:44:53 +02:00
J. Nick Koston
ddebfb3ac5 Fix duplicate ONVIF sensors (#92629)
Some cameras do not configure the video source correctly
when using webhooks but work fine with PullPoint which
results in duplicate sensors
2023-05-05 14:41:00 -04:00
J. Nick Koston
fe57901b5f Add support for visitor detections to onvif (#92350) 2023-05-05 14:40:59 -04:00
J. Nick Koston
73d4c73dbb Fix missing ONVIF events when switching from PullPoint to webhooks (#92627)
We now let the PullPoint subscription expire instead of explicitly
unsubscribing when pausing the subscription. We will still unsubscribe
it if Home Assistant is shutdown or the integration is reloaded

Some cameras will cancel ALL subscriptions when we do an unsubscribe
so we want to let the PullPoint subscription expire instead
of explicitly cancelling it.
2023-05-05 14:39:32 -04:00
Bram Kragten
f1bccef224 Update frontend to 20230503.3 (#92617) 2023-05-05 14:39:31 -04:00
Joost Lekkerkerker
cf243fbe11 Lower scan interval for OpenSky (#92593)
* Lower scan interval for opensky to avoid hitting rate limit

* Lower scan interval for opensky to avoid hitting rate limit

* Update homeassistant/components/opensky/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/opensky/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-05-05 14:39:30 -04:00
J. Nick Koston
35c48d3d0e Improve reliability of ONVIF subscription renewals (#92551)
* Improve reliablity of onvif subscription renewals

upstream changelog: https://github.com/hunterjm/python-onvif-zeep-async/compare/v2.0.0...v2.1.0

* ```
Traceback (most recent call last):
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/onvif/client.py", line 75, in _async_wrap_connection_error_retry
    return await func(*args, **kwargs)
  File "/Users/bdraco/home-assistant/homeassistant/components/onvif/event.py", line 441, in _async_call_pullpoint_subscription_renew
    await self._pullpoint_subscription.Renew(SUBSCRIPTION_RELATIVE_TIME)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/proxy.py", line 64, in __call__
    return await self._proxy._binding.send_async(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/wsdl/bindings/soap.py", line 156, in send_async
    response = await client.transport.post_xml(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/transports.py", line 235, in post_xml
    response = await self.post(address, message, headers)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/transports.py", line 220, in post
    response = await self.client.post(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1845, in post
    return await self.request(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1530, in request
    return await self.send(request, auth=auth, follow_redirects=follow_redirects)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1617, in send
    response = await self._send_handling_auth(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1645, in _send_handling_auth
    response = await self._send_handling_redirects(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1682, in _send_handling_redirects
    response = await self._send_single_request(request)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1719, in _send_single_request
    response = await transport.handle_async_request(request)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_transports/default.py", line 352, in handle_async_request
    with map_httpcore_exceptions():
  File "/opt/homebrew/Cellar/python@3.10/3.10.10_1/Frameworks/Python.framework/Versions/3.10/lib/python3.10/contextlib.py", line 153, in __exit__
    self.gen.throw(typ, value, traceback)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_transports/default.py", line 77, in map_httpcore_exceptions
    raise mapped_exc(message) from exc
httpx.ReadTimeout
```

* adjust timeouts for slower tplink cameras

* tweak

* more debug

* tweak

* adjust message

* tweak

* Revert "tweak"

This reverts commit 10ee2a8de7.

* give time in seconds

* revert

* revert

* Update homeassistant/components/onvif/event.py

* Update homeassistant/components/onvif/event.py
2023-05-05 14:39:29 -04:00
J. Nick Koston
bcbc8539a6 Fix missing ONVIF events when switching from PullPoint to webhooks (#92627)
We now let the PullPoint subscription expire instead of explicitly
unsubscribing when pausing the subscription. We will still unsubscribe
it if Home Assistant is shutdown or the integration is reloaded

Some cameras will cancel ALL subscriptions when we do an unsubscribe
so we want to let the PullPoint subscription expire instead
of explicitly cancelling it.
2023-05-05 14:38:36 -04:00
J. Nick Koston
c8c1466c06 Fix duplicate ONVIF sensors (#92629)
Some cameras do not configure the video source correctly
when using webhooks but work fine with PullPoint which
results in duplicate sensors
2023-05-05 14:32:55 -04:00
Bram Kragten
cd02a67847 Update frontend to 20230503.3 (#92617) 2023-05-05 14:27:48 -04:00
Joost Lekkerkerker
6d1e607756 Lower scan interval for OpenSky (#92593)
* Lower scan interval for opensky to avoid hitting rate limit

* Lower scan interval for opensky to avoid hitting rate limit

* Update homeassistant/components/opensky/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/opensky/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-05-05 14:27:28 -04:00
J. Nick Koston
9a589a3a54 Improve reliability of ONVIF subscription renewals (#92551)
* Improve reliablity of onvif subscription renewals

upstream changelog: https://github.com/hunterjm/python-onvif-zeep-async/compare/v2.0.0...v2.1.0

* ```
Traceback (most recent call last):
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/onvif/client.py", line 75, in _async_wrap_connection_error_retry
    return await func(*args, **kwargs)
  File "/Users/bdraco/home-assistant/homeassistant/components/onvif/event.py", line 441, in _async_call_pullpoint_subscription_renew
    await self._pullpoint_subscription.Renew(SUBSCRIPTION_RELATIVE_TIME)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/proxy.py", line 64, in __call__
    return await self._proxy._binding.send_async(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/wsdl/bindings/soap.py", line 156, in send_async
    response = await client.transport.post_xml(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/transports.py", line 235, in post_xml
    response = await self.post(address, message, headers)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/transports.py", line 220, in post
    response = await self.client.post(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1845, in post
    return await self.request(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1530, in request
    return await self.send(request, auth=auth, follow_redirects=follow_redirects)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1617, in send
    response = await self._send_handling_auth(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1645, in _send_handling_auth
    response = await self._send_handling_redirects(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1682, in _send_handling_redirects
    response = await self._send_single_request(request)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_client.py", line 1719, in _send_single_request
    response = await transport.handle_async_request(request)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_transports/default.py", line 352, in handle_async_request
    with map_httpcore_exceptions():
  File "/opt/homebrew/Cellar/python@3.10/3.10.10_1/Frameworks/Python.framework/Versions/3.10/lib/python3.10/contextlib.py", line 153, in __exit__
    self.gen.throw(typ, value, traceback)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/httpx/_transports/default.py", line 77, in map_httpcore_exceptions
    raise mapped_exc(message) from exc
httpx.ReadTimeout
```

* adjust timeouts for slower tplink cameras

* tweak

* more debug

* tweak

* adjust message

* tweak

* Revert "tweak"

This reverts commit 10ee2a8de7.

* give time in seconds

* revert

* revert

* Update homeassistant/components/onvif/event.py

* Update homeassistant/components/onvif/event.py
2023-05-05 14:26:58 -04:00
Jan Bouwhuis
53e533af6b Improve and enforce type hints for imap (#92325) 2023-05-05 19:21:57 +02:00
G Johansson
e41a75f617 Remove yaml import rainbird (#92599) 2023-05-05 16:53:40 +02:00
G Johansson
835be4758a Remove deprecated service for rainbird (#92601) 2023-05-05 07:22:07 -07:00
epenet
70bfbde8aa Add ability to shutdown a coordinator on STOP (#92611) 2023-05-05 16:05:03 +02:00
ollo69
8001ed865d Fix switchbot binary sensor translation key (#92557) 2023-05-05 08:04:11 -05:00
Paulus Schoutsen
15ef53cd9a Bumped version to 2023.5.2 2023-05-05 08:47:12 -04:00
Erik Montnemery
fb29e1a14e Bump hatasmota to 0.6.5 (#92585)
* Bump hatasmota to 0.6.5

* Fix tests
2023-05-05 08:47:08 -04:00
epenet
f8c3586f6b Fix hassio get_os_info retry (#92569) 2023-05-05 08:47:07 -04:00
Paulus Schoutsen
e8808b5fe7 Re-run expose entities migration if first time failed (#92564)
* Re-run expose entities migration if first time failed

* Count number of exposed entities

* Add tests

---------

Co-authored-by: Erik <erik@montnemery.com>
2023-05-05 08:47:06 -04:00
J. Nick Koston
82c0967716 Bump elkm1-lib to 2.2.2 (#92560)
changelog: https://github.com/gwww/elkm1/compare/2.2.1...2.2.2

fixes #92467
2023-05-05 08:47:05 -04:00
J. Nick Koston
163823d2a5 Allow duplicate state updates when force_update is set on an esphome sensor (#92553)
* Allow duplicate states when force_update is set on an esphome sensor

fixes #91221

* Update homeassistant/components/esphome/entry_data.py

Co-authored-by: pdw-mb <pdw@mythic-beasts.com>

---------

Co-authored-by: pdw-mb <pdw@mythic-beasts.com>
2023-05-05 08:47:04 -04:00
puddly
2dd1ce2047 Handle invalid ZHA cluster handlers (#92543)
* Do not crash on startup when an invalid cluster handler is encountered

* Add a unit test
2023-05-05 08:47:03 -04:00
J. Nick Koston
241cacde62 Bump aioesphomeapi to 13.7.3 to fix disconnecting while handshake is in progress (#92537)
Bump aioesphomeapi to 13.7.3

fixes #92432
2023-05-05 08:47:02 -04:00
Erik Montnemery
8a11ee81c4 Improve cloud migration (#92520)
* Improve cloud migration

* Tweak

* Use entity_ids func

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-05-05 08:47:01 -04:00
J. Nick Koston
e3762724a3 Fix blocking I/O in the event loop when starting ONVIF (#92518) 2023-05-05 08:47:00 -04:00
karwosts
b973825833 Fix scene service examples (#92501) 2023-05-05 08:46:59 -04:00
Eduard van Valkenburg
b2fcbbe50e Fix for SIA Code not being handled well (#92469)
* updated sia requirements

* updates because of changes in package

* linting and other small fixes

* fix for unknown code

* added same to alarm_control_panel
2023-05-05 08:46:58 -04:00
Francesco Carnielli
d96b37a004 Fix power sensor state_class in Netatmo integration (#92468) 2023-05-05 08:46:57 -04:00
DDanii
affece8857 Fix transmission error handling (#91548)
* transmission error handle fix

* added unexpected case tests
2023-05-05 08:46:56 -04:00
epenet
b222c58642 Fix hassio get_os_info retry (#92569) 2023-05-05 08:43:56 -04:00
epenet
802e907a35 Migrate rest switch to httpx (#90768) 2023-05-05 14:43:39 +02:00
Erik Montnemery
5843c1fa3b Bump hatasmota to 0.6.5 (#92585)
* Bump hatasmota to 0.6.5

* Fix tests
2023-05-05 08:40:30 -04:00
epenet
176820d665 Fix lingering timer in freedns (#92572)
* Fix lingering timer in freedns

* type hint
2023-05-05 14:11:31 +02:00
Paulus Schoutsen
19dcc8c88f Re-run expose entities migration if first time failed (#92564)
* Re-run expose entities migration if first time failed

* Count number of exposed entities

* Add tests

---------

Co-authored-by: Erik <erik@montnemery.com>
2023-05-05 08:11:09 -04:00
epenet
6f3c9324ac Fix lingering timer in hdmi_cec (#92579) 2023-05-05 14:10:44 +02:00
G Johansson
e55f2173f8 Use selectors in Trafikverket Train (#92554)
Use selectors
2023-05-05 13:29:00 +02:00
Eduard van Valkenburg
1976232d5a Fix for SIA Code not being handled well (#92469)
* updated sia requirements

* updates because of changes in package

* linting and other small fixes

* fix for unknown code

* added same to alarm_control_panel
2023-05-05 10:47:49 +02:00
epenet
603aa759d3 Fix KeyError in rest (#92464) 2023-05-05 09:05:31 +02:00
DDanii
9ce062411d Fix transmission error handling (#91548)
* transmission error handle fix

* added unexpected case tests
2023-05-05 08:42:51 +02:00
Erik Montnemery
b6664ce367 Improve cloud migration (#92520)
* Improve cloud migration

* Tweak

* Use entity_ids func

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-05-04 23:10:43 -04:00
J. Nick Koston
3f630493ff Allow duplicate state updates when force_update is set on an esphome sensor (#92553)
* Allow duplicate states when force_update is set on an esphome sensor

fixes #91221

* Update homeassistant/components/esphome/entry_data.py

Co-authored-by: pdw-mb <pdw@mythic-beasts.com>

---------

Co-authored-by: pdw-mb <pdw@mythic-beasts.com>
2023-05-04 22:21:42 -04:00
J. Nick Koston
6dd88a767b Bump elkm1-lib to 2.2.2 (#92560)
changelog: https://github.com/gwww/elkm1/compare/2.2.1...2.2.2

fixes #92467
2023-05-04 22:20:25 -04:00
J. Nick Koston
785faf4380 Bump aioesphomeapi to 13.7.3 to fix disconnecting while handshake is in progress (#92537)
Bump aioesphomeapi to 13.7.3

fixes #92432
2023-05-04 22:18:20 -04:00
puddly
5f22b0c6cc Handle invalid ZHA cluster handlers (#92543)
* Do not crash on startup when an invalid cluster handler is encountered

* Add a unit test
2023-05-04 20:02:17 -04:00
Franck Nijhof
9e529d1d59 Refactor of unique ID and entity description handling in Rituals Perfume Genie (#92545) 2023-05-04 21:54:28 +02:00
rrooggiieerr
7b8936b420 Add support for setting NumberMode using NumberEntityDescription (#92427) 2023-05-04 21:41:32 +02:00
Franck Nijhof
7d00804f13 Add entity descriptions to selects of Rituals Perfume Genie (#92522) 2023-05-04 20:13:04 +02:00
Franck Nijhof
80e9219546 Add entity descriptions to sensors of Rituals Perfume Genie (#92527) 2023-05-04 20:12:52 +02:00
Erik Montnemery
a72bcfde4a Refactor multipan options flow (#92175) 2023-05-04 19:50:43 +02:00
Jan Bouwhuis
56dcb908bc Wait for mqtt client to become available (#92524) 2023-05-04 19:48:32 +02:00
Franck Nijhof
677ab5837f Add entity descriptions to switch of Rituals Perfume Genie (#92531) 2023-05-04 19:20:58 +02:00
Franck Nijhof
dd3ae96d5f Add entity descriptions to numbers of Rituals Perfume Genie (#92486) 2023-05-04 19:13:05 +02:00
epenet
628236209b Fix lingering timer in cloud (#92498) 2023-05-04 19:10:44 +02:00
J. Nick Koston
7987b00d89 Fix blocking I/O in the event loop when starting ONVIF (#92518) 2023-05-04 12:05:29 -05:00
epenet
e0903b8bc4 Fix lingering timer in duckdns (#92516) 2023-05-04 19:03:54 +02:00
epenet
4d77c6f27f Fix lingering timer in elkm1 (#92517) 2023-05-04 19:03:26 +02:00
epenet
b6930c0f04 Fix lingering timer in demo geo_location (#92514) 2023-05-04 19:02:52 +02:00
Erik Montnemery
887e656570 Small improvement of assist_pipeline test coverage (#92115) 2023-05-04 19:01:41 +02:00
Paulus Schoutsen
bce18bf61a 2023.5.1 (#92513) 2023-05-04 12:45:55 -04:00
Francesco Carnielli
57af4672d5 Fix power sensor state_class in Netatmo integration (#92468) 2023-05-04 17:36:31 +02:00
karwosts
8237d6b9f0 Fix scene service examples (#92501) 2023-05-04 17:35:52 +02:00
Paulus Schoutsen
eda0731e60 Bumped version to 2023.5.1 2023-05-04 10:23:58 -04:00
Bram Kragten
238c87055f Update frontend to 20230503.2 (#92508) 2023-05-04 10:23:53 -04:00
Erik Montnemery
4b4464a3de Force migration of cloud settings to exposed_entities (#92499) 2023-05-04 10:23:52 -04:00
J. Nick Koston
a07fbdd61c Bump bluetooth-auto-recovery 1.1.2 (#92495)
Improve handling when getting the power state times out

https://github.com/Bluetooth-Devices/bluetooth-auto-recovery/compare/v1.1.1...v1.1.2
2023-05-04 10:23:52 -04:00
J. Nick Koston
3126ebe9d6 Fix lifx light strips when color zones are not initially populated (#92487)
fixes #92456
2023-05-04 10:23:51 -04:00
Aaron Bach
89aec9d356 Bump aionotion to 2023.05.0 (#92451) 2023-05-04 10:23:49 -04:00
J. Nick Koston
0cfa566ff6 Fix onvif cameras with invalid encodings in device info (#92450)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-05-04 10:23:49 -04:00
J. Nick Koston
fffece95f5 Fix onvif setup when time set service is not functional (#92447) 2023-05-04 10:23:48 -04:00
Bram Kragten
d66fabb5b5 Update frontend to 20230503.2 (#92508) 2023-05-04 10:22:48 -04:00
J. Nick Koston
36cb8a7184 Bump bluetooth-auto-recovery 1.1.2 (#92495)
Improve handling when getting the power state times out

https://github.com/Bluetooth-Devices/bluetooth-auto-recovery/compare/v1.1.1...v1.1.2
2023-05-04 09:53:43 -04:00
Erik Montnemery
e14be8b0ab Force migration of cloud settings to exposed_entities (#92499) 2023-05-04 09:53:28 -04:00
J. Nick Koston
9b74cb9507 Fix lifx light strips when color zones are not initially populated (#92487)
fixes #92456
2023-05-04 08:55:47 -04:00
epenet
8a9b9c35e0 Fix lingering timer in lifx (#92476)
* Fix lingering timer in lifx

* Remove duplicate code
2023-05-04 14:06:38 +02:00
Franck Nijhof
a73a66bb0c Add entity descriptions to binary sensors of Rituals Perfume Genie (#92485) 2023-05-04 13:54:57 +02:00
J. Nick Koston
41515249a0 Fix onvif cameras with invalid encodings in device info (#92450)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-05-04 06:48:13 -05:00
epenet
95023ecf08 Fix lingering timer in rfxtrx (#92461) 2023-05-04 12:27:17 +02:00
Erik Montnemery
78da1168db Adjust type hints in CloudClient (#92465) 2023-05-04 12:26:52 +02:00
Franck Nijhof
46bf0e59f3 Move naming of entities in Rituals Perfume Genie (#92482) 2023-05-04 12:25:22 +02:00
J. Nick Koston
5ee6595998 Bump dbus-fast to 1.86.0 (#92435) 2023-05-04 12:24:26 +02:00
epenet
9fca594777 Fix lingering timer in rflink (#92460) 2023-05-04 12:23:45 +02:00
Aaron Bach
b0b53574f9 Bump aionotion to 2023.05.0 (#92451) 2023-05-04 12:21:58 +02:00
epenet
71b86e9f97 Fix lingering timer in sabnzbd (#92462) 2023-05-04 12:19:40 +02:00
J. Nick Koston
88019d70fe Bump zeroconf to 0.62.0 (#92444) 2023-05-04 12:18:08 +02:00
J. Nick Koston
322c5152be Fix onvif setup when time set service is not functional (#92447) 2023-05-04 11:50:12 +02:00
epenet
7dc5d131b4 Fix lingering timer in jewish_calendar (#92470) 2023-05-04 11:38:24 +02:00
epenet
a4a795e35b Fix lingering timer in kira tests (#92471) 2023-05-04 11:28:05 +02:00
epenet
8ab8b7152a Fix lingering timer in kostal_plenticore (#92473) 2023-05-04 11:27:17 +02:00
epenet
6836e15d98 Add type hints to tests (#92477) 2023-05-04 11:25:35 +02:00
epenet
3b4828d736 Drop tmpdir from media_source tests (#92478) 2023-05-04 11:24:29 +02:00
epenet
1cca6f7c9e Fix lingering timer in shelly (#92466) 2023-05-04 10:34:15 +02:00
J. Nick Koston
ef9bcd9285 Bump zeroconf to 0.61.0 (#92424)
changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.60.0...0.61.0
2023-05-04 00:09:35 +03:00
Franck Nijhof
c61e29709c 2023.5.0 (#92422) 2023-05-03 20:46:28 +02:00
Michael Hansen
458fe17a48 Bump voip-utils to 0.0.7 (#92372) 2023-05-03 20:02:45 +02:00
Franck Nijhof
15fdefd23b Bumped version to 2023.5.0 2023-05-03 19:44:53 +02:00
Michael Hansen
576f9600b5 Pass OPUS payload ID through VoIP (#92421) 2023-05-03 19:44:34 +02:00
Michael Hansen
aa78962a9a Pass OPUS payload ID through VoIP (#92421) 2023-05-03 19:43:14 +02:00
Franck Nijhof
7a62574360 Bumped version to 2023.5.0b9 2023-05-03 18:59:42 +02:00
Erik Montnemery
0251d677d8 Migrate cloud settings for all Google entities (#92416) 2023-05-03 18:59:32 +02:00
Michael Hansen
2cd9b94ecb Skip unexposed entities in intent handlers (#92415)
* Filter intent handler entities by exposure

* Add test for skipping unexposed entities
2023-05-03 18:59:29 +02:00
Erik Montnemery
3cd2ab2319 Migrate cloud settings for all Alexa entities (#92413)
* Migrate cloud settings for all Alexa entities

* Also set settings for unknown entities
2023-05-03 18:59:25 +02:00
J. Nick Koston
4f0d403393 Bump bluetooth-auto-recovery to 1.1.1 (#92412)
* Bump bluetooth-auto-recovery to 1.1.0

https://github.com/Bluetooth-Devices/bluetooth-auto-recovery/releases/tag/v1.1.0

In https://github.com/home-assistant/operating-system/issues/2485 is was discovered that a more aggressive reset strategy is needed due to a yet unsolved bug in the linux 6.1.x kernel series

* bump to 1.1.1 since event 47 cannot be decoded (newer kernels only)
2023-05-03 18:59:22 +02:00
Bram Kragten
b558cf8b59 Update frontend to 20230503.1 (#92410) 2023-05-03 18:59:18 +02:00
Erik Montnemery
820c7b77ce Update cloud WS API for getting entity (#92409)
* Update cloud WS API for getting entity

* Adjust comment
2023-05-03 18:59:15 +02:00
Erik Montnemery
9d0fc916fc Use exposed_entities API in cloud tests (#92408) 2023-05-03 18:59:11 +02:00
Erik Montnemery
387f07a97f Include all entities in cloud lists (#92406) 2023-05-03 18:59:08 +02:00
J. Nick Koston
44968cfc7c Handle webhook URL rejection in onvif (#92405) 2023-05-03 18:59:04 +02:00
Erik Montnemery
c6751bed86 Allow setting google disable 2fa flag on any entity (#92403)
* Allow setting google disable 2fa flag on any entity

* Fix test

* Include disable_2fa flag in cloud/google_assistant/entities/get
2023-05-03 18:59:01 +02:00
Bram Kragten
b87e3860d9 Update frontend to 20230503.0 (#92402) 2023-05-03 18:58:57 +02:00
David F. Mulcahey
8ef6bd85f5 Bump ZHA quirks (#92400) 2023-05-03 18:58:54 +02:00
Erik Montnemery
ad4fed4f60 Allow exposing any entity to the default conversation agent (#92398)
* Allow exposing any entity to the default conversation agent

* Tweak

* Fix race, update tests

* Update tests
2023-05-03 18:58:51 +02:00
Erik Montnemery
1050895657 Don't use storage collection helper in ExposedEntities (#92396)
* Don't use storage collection helper in ExposedEntities

* Fix tests
2023-05-03 18:58:47 +02:00
Erik Montnemery
c31d657206 Improve exposed entities tests (#92389) 2023-05-03 18:58:44 +02:00
repaxan
88343bed77 Add ZHA binding for window coverings (#92387) 2023-05-03 18:58:40 +02:00
Artem Draft
51a10a84da Bump pybravia to 0.3.3 (#92378) 2023-05-03 18:58:35 +02:00
Erik Montnemery
a9d8bc989e Migrate cloud settings for all Google entities (#92416) 2023-05-03 18:56:48 +02:00
Erik Montnemery
51be90d87e Migrate cloud settings for all Alexa entities (#92413)
* Migrate cloud settings for all Alexa entities

* Also set settings for unknown entities
2023-05-03 12:39:27 -04:00
J. Nick Koston
4abf0ddeb9 Bump bluetooth-auto-recovery to 1.1.1 (#92412)
* Bump bluetooth-auto-recovery to 1.1.0

https://github.com/Bluetooth-Devices/bluetooth-auto-recovery/releases/tag/v1.1.0

In https://github.com/home-assistant/operating-system/issues/2485 is was discovered that a more aggressive reset strategy is needed due to a yet unsolved bug in the linux 6.1.x kernel series

* bump to 1.1.1 since event 47 cannot be decoded (newer kernels only)
2023-05-03 12:18:47 -04:00
Michael Hansen
74560ab139 Skip unexposed entities in intent handlers (#92415)
* Filter intent handler entities by exposure

* Add test for skipping unexposed entities
2023-05-03 12:18:31 -04:00
Bram Kragten
2ae3e90238 Update frontend to 20230503.1 (#92410) 2023-05-03 17:27:42 +02:00
Erik Montnemery
f089f52504 Update cloud WS API for getting entity (#92409)
* Update cloud WS API for getting entity

* Adjust comment
2023-05-03 17:06:42 +02:00
Erik Montnemery
470c3a0f5f Use exposed_entities API in cloud tests (#92408) 2023-05-03 16:50:43 +02:00
Erik Montnemery
b71f98e8b7 Include all entities in cloud lists (#92406) 2023-05-03 16:14:04 +02:00
Erik Montnemery
31de1b17e8 Allow setting google disable 2fa flag on any entity (#92403)
* Allow setting google disable 2fa flag on any entity

* Fix test

* Include disable_2fa flag in cloud/google_assistant/entities/get
2023-05-03 09:55:38 -04:00
J. Nick Koston
20942ab26f Handle webhook URL rejection in onvif (#92405) 2023-05-03 15:46:53 +02:00
Bram Kragten
9162bad4da Update frontend to 20230503.0 (#92402) 2023-05-03 15:46:14 +02:00
Erik Montnemery
0126cfa9d9 Allow exposing any entity to the default conversation agent (#92398)
* Allow exposing any entity to the default conversation agent

* Tweak

* Fix race, update tests

* Update tests
2023-05-03 09:45:54 -04:00
David F. Mulcahey
6a8668effc Bump ZHA quirks (#92400) 2023-05-03 08:35:53 -04:00
repaxan
1d6b08e194 Add ZHA binding for window coverings (#92387) 2023-05-03 08:35:20 -04:00
Erik Montnemery
4860a8d1e8 Don't use storage collection helper in ExposedEntities (#92396)
* Don't use storage collection helper in ExposedEntities

* Fix tests
2023-05-03 12:39:22 +02:00
Erik Montnemery
7aa94f97c0 Improve exposed entities tests (#92389) 2023-05-03 10:49:01 +02:00
Artem Draft
d417cbaf0f Bump pybravia to 0.3.3 (#92378) 2023-05-03 08:52:56 +02:00
Paulus Schoutsen
5f3bbf2804 Bumped version to 2023.5.0b8 2023-05-02 22:39:38 -04:00
Paulus Schoutsen
b8eebf085c Fix deserialize bug + add test coverage (#92382) 2023-05-02 22:39:33 -04:00
Paulus Schoutsen
1baa4d5109 Fix deserialize bug + add test coverage (#92382) 2023-05-02 22:38:54 -04:00
Franck Nijhof
cdfd53e1cc Bumped version to 2023.5.0b7 2023-05-02 22:44:32 +02:00
Bram Kragten
ca147dd97e Update frontend to 20230502.0 (#92373) 2023-05-02 22:43:23 +02:00
Erik Montnemery
5b1278d885 Allow exposing entities not in the entity registry to assistants (#92363) 2023-05-02 22:43:19 +02:00
J. Nick Koston
0db28dcf4d Start onvif events later (#92354) 2023-05-02 22:43:15 +02:00
Raman Gupta
7c651665c5 Clean up zwave_js.cover (#92353) 2023-05-02 22:43:12 +02:00
J. Nick Koston
2f3964e3ce Bump ulid-transform to 0.7.2 (#92344) 2023-05-02 22:43:08 +02:00
John Pettitt
eef95fa0d4 Increase default timeout in sense (#90556)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-05-02 22:43:03 +02:00
Bram Kragten
5ed41d3d51 Update frontend to 20230502.0 (#92373) 2023-05-02 22:41:35 +02:00
Michael Hansen
17db1aa38b Bump voip-utils to 0.0.7 (#92372) 2023-05-02 22:39:41 +02:00
Erik Montnemery
e3c16e634b Allow exposing entities not in the entity registry to assistants (#92363) 2023-05-02 22:08:09 +02:00
John Pettitt
cc4e741cfa Increase default timeout in sense (#90556)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-05-02 09:50:34 -05:00
J. Nick Koston
a9d992c2de Add support for visitor detections to onvif (#92350) 2023-05-02 12:19:27 +02:00
Raman Gupta
9f7c085652 Clean up zwave_js.cover (#92353) 2023-05-02 12:18:19 +02:00
J. Nick Koston
c0fa078b0b Start onvif events later (#92354) 2023-05-02 12:17:01 +02:00
J. Nick Koston
2636a46a5f Bump ulid-transform to 0.7.2 (#92344) 2023-05-02 08:46:14 +02:00
Franck Nijhof
43a1eb043b Bumped version to 2023.5.0b6 2023-05-01 22:55:49 +02:00
Bram Kragten
6b77775ed5 Update frontend to 20230501.0 (#92339) 2023-05-01 22:55:34 +02:00
Michael Hansen
7077d23127 Bump voip-utils to 0.0.6 (#92334) 2023-05-01 22:55:31 +02:00
J. Nick Koston
c7eac0ebbb Avoid starting ONVIF PullPoint if the camera reports its unsupported (#92333) 2023-05-01 22:55:27 +02:00
David F. Mulcahey
7f13033f69 Don't poll ZHA electrical measurement sensors unnecessarily (#92330) 2023-05-01 22:55:23 +02:00
Paulus Schoutsen
eba201e71b Add voip configuration url (#92326) 2023-05-01 22:55:20 +02:00
G Johansson
1e9d777201 Fix db_url issue in SQL (#92324)
* db_url fix

* Add test

* assert entry.options
2023-05-01 22:55:16 +02:00
J. Nick Koston
030b7f8a37 Bump sqlalchemy to 2.0.12 (#92315)
changelog: https://docs.sqlalchemy.org/en/20/changelog/changelog_20.html#change-2.0.12
2023-05-01 22:55:12 +02:00
J. Nick Koston
8cbc69fc92 Retry onvif setup when it is unexpectedly cancelled (#92313)
* Retry onvif setup when it is unexpectedly cancelled

fixes #92308

* Retry onvif setup when it is unexpectedly cancelled

fixes #92308
2023-05-01 22:55:08 +02:00
J. Nick Koston
2a5f5ea039 Reduce size of migration transactions to accommodate slow/busy systems (#92312)
* Reduce size of migration transactions to accommodate slow/busy systems

related issue #91489

* handle overloaded RPIs better
2023-05-01 22:55:04 +02:00
Michael Hansen
0ba662e7bc Allow configuring SIP port in VoIP (#92210)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-05-01 22:54:59 +02:00
J. Nick Koston
86f8147782 Bump zeroconf to 0.60.0 (#92335) 2023-05-01 22:51:30 +02:00
Raman Gupta
5dd3209e42 Add date and time platforms to core files (#92343) 2023-05-01 22:50:44 +02:00
Bram Kragten
a6d6d59c93 Update frontend to 20230501.0 (#92339) 2023-05-01 22:49:38 +02:00
Franck Nijhof
a7088e767e Migrate unique IDs of Rituals Perfume Genie (#92342)
* Migrate unique IDs of Rituals Perfume Genie

* Fix doc string
2023-05-01 22:46:38 +02:00
Michael Hansen
40896514eb Bump voip-utils to 0.0.6 (#92334) 2023-05-01 22:43:27 +02:00
Michael Hansen
b1d6f3afc0 Allow configuring SIP port in VoIP (#92210)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-05-01 22:42:27 +02:00
Marc Mueller
d66056cfab Improve fritz generic typing (#92327) 2023-05-01 21:11:40 +02:00
J. Nick Koston
324df197d1 Avoid starting ONVIF PullPoint if the camera reports its unsupported (#92333) 2023-05-01 18:33:52 +02:00
David F. Mulcahey
2bc2c4a651 Don't poll ZHA electrical measurement sensors unnecessarily (#92330) 2023-05-01 18:32:40 +02:00
Paulus Schoutsen
adaae46178 Add voip configuration url (#92326) 2023-05-01 16:20:37 +02:00
G Johansson
9795699669 Fix db_url issue in SQL (#92324)
* db_url fix

* Add test

* assert entry.options
2023-05-01 16:17:01 +02:00
Luke
7b5d26d3fa Bump anova version (#92206)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-05-01 11:15:29 +02:00
J. Nick Koston
ede1f08c51 Reduce size of migration transactions to accommodate slow/busy systems (#92312)
* Reduce size of migration transactions to accommodate slow/busy systems

related issue #91489

* handle overloaded RPIs better
2023-04-30 23:18:00 -04:00
J. Nick Koston
30dd8b9f3a Retry onvif setup when it is unexpectedly cancelled (#92313)
* Retry onvif setup when it is unexpectedly cancelled

fixes #92308

* Retry onvif setup when it is unexpectedly cancelled

fixes #92308
2023-04-30 23:12:01 -04:00
J. Nick Koston
32f6dd4a82 Bump sqlalchemy to 2.0.12 (#92315)
changelog: https://docs.sqlalchemy.org/en/20/changelog/changelog_20.html#change-2.0.12
2023-04-30 23:11:29 -04:00
Allen Porter
e7433c42b9 Cleanup code from nest yaml migration and OOB auth deprecation (#92311) 2023-04-30 18:00:40 -07:00
Raman Gupta
c0d0c89293 Add time platform (#81949) 2023-04-30 22:33:51 +02:00
Allen Porter
6f63ed07f9 Deprecate legacy Works With Nest (again) (#92304) 2023-04-30 21:56:29 +02:00
Franck Nijhof
5cbf08f89a Only store and pass around coordinator in Rituals Perfume Genie (#92298) 2023-04-30 21:32:14 +02:00
J. Nick Koston
bb4c03ce3c Avoid returning statistics columns that the metadata knows are impossible (#92095) 2023-04-30 20:46:26 +02:00
Raman Gupta
d138bbe26e Add date platform (#81948) 2023-04-30 20:34:57 +02:00
Franck Nijhof
05530d656a Bumped version to 2023.5.0b5 2023-04-30 20:16:39 +02:00
Jan Bouwhuis
2b2be6a333 Fix mqtt not available when starting snips (#92296) 2023-04-30 20:16:28 +02:00
J. Nick Koston
5bd54490ea Ensure onvif webhook can be registered (#92295) 2023-04-30 20:16:25 +02:00
J. Nick Koston
00a28caa6d Bump bleak to 0.20.2 (#92294) 2023-04-30 20:16:21 +02:00
J. Nick Koston
c4aa6ba262 Bump beacontools to fix conflict with construct<2.10 and >=2.8.16 (#92293) 2023-04-30 20:16:18 +02:00
J. Nick Koston
7a90db903b Prevent pysnmp from being installed as it does not work with newer python (#92292) 2023-04-30 20:16:14 +02:00
Robert Hillis
fe279c8593 Add missing fstrings in Local Calendar (#92288) 2023-04-30 20:16:10 +02:00
Maximilian
ddf5a9fbcc Bump pynina to 0.3.0 (#92286) 2023-04-30 20:16:07 +02:00
J. Nick Koston
093d5d6176 Fix august lock state when API reports locking and locked with the same timestamp (#92276) 2023-04-30 20:16:01 +02:00
J. Nick Koston
f95f2d1cfc Prevent pysnmp from being installed as it does not work with newer python (#92292) 2023-04-30 20:13:47 +02:00
epenet
b969790e95 Use SnapshotAssertion in Renault tests (#90778) 2023-04-30 18:55:31 +02:00
stickpin
9317ddb1c7 Home Connect add WasherDryer support (#90673) 2023-04-30 18:50:51 +02:00
Joost Lekkerkerker
cd52e05075 Move lastfm constants to separate file (#92289) 2023-04-30 18:09:02 +02:00
J. Nick Koston
ed286fc223 Fix august lock state when API reports locking and locked with the same timestamp (#92276) 2023-04-30 18:08:12 +02:00
J. Nick Koston
4fcf05c202 Ensure onvif webhook can be registered (#92295) 2023-04-30 18:06:38 +02:00
J. Nick Koston
a08cda3cfe Bump beacontools to fix conflict with construct<2.10 and >=2.8.16 (#92293) 2023-04-30 18:06:09 +02:00
Maximilian
696e714190 Bump pynina to 0.3.0 (#92286) 2023-04-30 18:05:22 +02:00
Jan Bouwhuis
7a43b29f38 Fix mqtt not available when starting snips (#92296) 2023-04-30 17:35:24 +02:00
Franck Nijhof
2cc31d6a5b Extract Rituals Perfume Genie DataUpdateCoordinator into module (#92284) 2023-04-30 17:07:55 +02:00
J. Nick Koston
b629bf37bb Bump bleak to 0.20.2 (#92294) 2023-04-30 17:07:00 +02:00
Robert Hillis
464c81ec9d Add missing fstrings in Local Calendar (#92288) 2023-04-30 06:15:57 -07:00
Tomer Figenblat
2cb73b4a1f Remove myself from switcher_kis codeowners (#92277)
chore: remove myself switcher_kis codeowners

Signed-off-by: Tomer Figenblat <tomer@tomfi.info>
2023-04-30 11:19:46 +03:00
Paulus Schoutsen
eb586c7144 Bumped version to 2023.5.0b4 2023-04-29 21:23:22 -04:00
J. Nick Koston
ec15a03706 Handle AttributeError from wrong port in ONVIF config flow (#92272)
* Handle AttributeError from wrong port in ONVIF config flow

fixes
```
2023-04-29 19:17:22.289 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/aiohttp/web_protocol.py", line 433, in _handle_request
    resp = await request_handler(request)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/aiohttp/web_app.py", line 504, in _handle
    resp = await handler(request)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/aiohttp/web_middlewares.py", line 117, in impl
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/security_filter.py", line 85, in security_filter_middleware
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/forwarded.py", line 100, in forwarded_middleware
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/request_context.py", line 28, in request_context_middleware
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/ban.py", line 80, in ban_middleware
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/auth.py", line 235, in auth_middleware
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/view.py", line 146, in handle
    result = await result
  File "/Users/bdraco/home-assistant/homeassistant/components/config/config_entries.py", line 180, in post
    return await super().post(request, flow_id)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/data_validator.py", line 72, in wrapper
    result = await method(view, request, data, *args, **kwargs)
  File "/Users/bdraco/home-assistant/homeassistant/helpers/data_entry_flow.py", line 110, in post
    result = await self._flow_mgr.async_configure(flow_id, data)
  File "/Users/bdraco/home-assistant/homeassistant/data_entry_flow.py", line 271, in async_configure
    result = await self._async_handle_step(
  File "/Users/bdraco/home-assistant/homeassistant/data_entry_flow.py", line 367, in _async_handle_step
    result: FlowResult = await getattr(flow, method)(user_input)
  File "/Users/bdraco/home-assistant/homeassistant/components/onvif/config_flow.py", line 233, in async_step_configure
    errors, description_placeholders = await self.async_setup_profiles()
  File "/Users/bdraco/home-assistant/homeassistant/components/onvif/config_flow.py", line 277, in async_setup_profiles
    await device.update_xaddrs()
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/onvif/client.py", line 433, in update_xaddrs
    capabilities = await devicemgmt.GetCapabilities({"Category": "All"})
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/proxy.py", line 64, in __call__
    return await self._proxy._binding.send_async(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/wsdl/bindings/soap.py", line 164, in send_async
    return self.process_reply(client, operation_obj, response)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/wsdl/bindings/soap.py", line 204, in process_reply
    doc = parse_xml(content, self.transport, settings=client.settings)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/loader.py", line 51, in parse_xml
    docinfo = elementtree.getroottree().docinfo
AttributeError: NoneType object has no attribute getroottree
```

* port

* Revert "port"

This reverts commit 4693f3f33a.

* misfire
2023-04-29 21:23:16 -04:00
J. Nick Koston
24b851c184 Auto repair incorrect collation on MySQL schema (#92270)
* Auto repair incorrect collation on MySQL schema

As we do more union queries in 2023.5.x if there is a mismatch
between collations on tables, they will fail with an error
that is hard for the user to figure out how to fix

`Error executing query: (MySQLdb.OperationalError) (1271, "Illegal mix of collations for operation UNION")`

This was reported in the #beta channel and by PM from others
so the problem is not isolated to a single user

https://discord.com/channels/330944238910963714/427516175237382144/1100908739910963272

* test with ascii since older maraidb versions may not work otherwise

* Revert "test with ascii since older maraidb versions may not work otherwise"

This reverts commit 787fda1aefcd8418a28a8a8f430e7e7232218ef8.t

* older version need to check collation_server because the collation is not reflected if its the default
2023-04-29 21:23:15 -04:00
Michael
a8539b89e8 Fix call deflection update in Fritz!Tools (#92267)
fix
2023-04-29 21:23:14 -04:00
Jan Bouwhuis
8cf1ed81a8 Fix MQTT certificate files setup (#92266) 2023-04-29 21:23:13 -04:00
Robert Hillis
fe452452e6 Fix Google Mail Sensor key error (#92262)
Fix Google Mail key error
2023-04-29 21:23:13 -04:00
Michael Hansen
c632d27197 Add VoIP error tone (#92260)
* Play error tone when pipeline error occurs

* Play listening tone at the start of each cycle
2023-04-29 21:23:12 -04:00
J. Nick Koston
6a6eba1ca3 Handle onvif errors when detail is returned as bytes (#92259) 2023-04-29 21:23:11 -04:00
J. Nick Koston
a5241b3118 Pin pyasn1 and pysnmplib since pyasn1 0.5.0 has breaking changes and pysnmp-pyasn1 and pyasn1 are both using the pyasn1 namespace (#92254) 2023-04-29 21:23:10 -04:00
J. Nick Koston
193b2694a9 Handle AttributeError from wrong port in ONVIF config flow (#92272)
* Handle AttributeError from wrong port in ONVIF config flow

fixes
```
2023-04-29 19:17:22.289 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/aiohttp/web_protocol.py", line 433, in _handle_request
    resp = await request_handler(request)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/aiohttp/web_app.py", line 504, in _handle
    resp = await handler(request)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/aiohttp/web_middlewares.py", line 117, in impl
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/security_filter.py", line 85, in security_filter_middleware
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/forwarded.py", line 100, in forwarded_middleware
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/request_context.py", line 28, in request_context_middleware
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/ban.py", line 80, in ban_middleware
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/auth.py", line 235, in auth_middleware
    return await handler(request)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/view.py", line 146, in handle
    result = await result
  File "/Users/bdraco/home-assistant/homeassistant/components/config/config_entries.py", line 180, in post
    return await super().post(request, flow_id)
  File "/Users/bdraco/home-assistant/homeassistant/components/http/data_validator.py", line 72, in wrapper
    result = await method(view, request, data, *args, **kwargs)
  File "/Users/bdraco/home-assistant/homeassistant/helpers/data_entry_flow.py", line 110, in post
    result = await self._flow_mgr.async_configure(flow_id, data)
  File "/Users/bdraco/home-assistant/homeassistant/data_entry_flow.py", line 271, in async_configure
    result = await self._async_handle_step(
  File "/Users/bdraco/home-assistant/homeassistant/data_entry_flow.py", line 367, in _async_handle_step
    result: FlowResult = await getattr(flow, method)(user_input)
  File "/Users/bdraco/home-assistant/homeassistant/components/onvif/config_flow.py", line 233, in async_step_configure
    errors, description_placeholders = await self.async_setup_profiles()
  File "/Users/bdraco/home-assistant/homeassistant/components/onvif/config_flow.py", line 277, in async_setup_profiles
    await device.update_xaddrs()
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/onvif/client.py", line 433, in update_xaddrs
    capabilities = await devicemgmt.GetCapabilities({"Category": "All"})
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/proxy.py", line 64, in __call__
    return await self._proxy._binding.send_async(
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/wsdl/bindings/soap.py", line 164, in send_async
    return self.process_reply(client, operation_obj, response)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/wsdl/bindings/soap.py", line 204, in process_reply
    doc = parse_xml(content, self.transport, settings=client.settings)
  File "/Users/bdraco/home-assistant/venv/lib/python3.10/site-packages/zeep/loader.py", line 51, in parse_xml
    docinfo = elementtree.getroottree().docinfo
AttributeError: NoneType object has no attribute getroottree
```

* port

* Revert "port"

This reverts commit 4693f3f33a.

* misfire
2023-04-29 21:17:56 -04:00
J. Nick Koston
1a82b353e0 Auto repair incorrect collation on MySQL schema (#92270)
* Auto repair incorrect collation on MySQL schema

As we do more union queries in 2023.5.x if there is a mismatch
between collations on tables, they will fail with an error
that is hard for the user to figure out how to fix

`Error executing query: (MySQLdb.OperationalError) (1271, "Illegal mix of collations for operation UNION")`

This was reported in the #beta channel and by PM from others
so the problem is not isolated to a single user

https://discord.com/channels/330944238910963714/427516175237382144/1100908739910963272

* test with ascii since older maraidb versions may not work otherwise

* Revert "test with ascii since older maraidb versions may not work otherwise"

This reverts commit 787fda1aefcd8418a28a8a8f430e7e7232218ef8.t

* older version need to check collation_server because the collation is not reflected if its the default
2023-04-29 21:17:09 -04:00
Franck Nijhof
3a5a9a90b2 Update orjson to 3.8.11 (#92228) 2023-04-29 20:22:33 -04:00
Franck Nijhof
7d518c5484 Update coverage to 7.2.4 (#92229) 2023-04-29 20:22:15 -04:00
Franck Nijhof
3363830ede Fix incorrect entity category for SmartThings sensors (#92232) 2023-04-29 20:21:55 -04:00
Franck Nijhof
ed3c1d9b59 Fix incorrect entity category for huawei_lte sensors (#92235) 2023-04-29 20:21:38 -04:00
Robert Hillis
a5044227a8 Fix Google Mail Sensor key error (#92262)
Fix Google Mail key error
2023-04-29 20:20:43 -04:00
Michael
895c0be82c Fix call deflection update in Fritz!Tools (#92267)
fix
2023-04-29 20:19:41 -04:00
Franck Nijhof
e2636587f8 Add myself as codeowner to Rituals perfume genie (#92261) 2023-04-29 18:49:52 -05:00
Jan Bouwhuis
9468aed689 Fix MQTT certificate files setup (#92266) 2023-04-30 00:01:44 +02:00
Franck Nijhof
bff7119230 Update requests to 2.29.0 (#92231) 2023-04-29 23:44:20 +02:00
Ian
1f2da1217b NextBus: Correct iot_class (#92208) 2023-04-29 21:41:35 +02:00
shbatm
d9e0681123 Remove deprecated ISY994 Insteon and variable sensor entities (#92255) 2023-04-29 21:40:58 +02:00
J. Nick Koston
b0b4134ded Handle onvif errors when detail is returned as bytes (#92259) 2023-04-29 21:33:25 +02:00
J. Nick Koston
f38d45151a Pin pyasn1 and pysnmplib since pyasn1 0.5.0 has breaking changes and pysnmp-pyasn1 and pyasn1 are both using the pyasn1 namespace (#92254) 2023-04-29 21:32:57 +02:00
Michael Hansen
c35aabe497 Add VoIP error tone (#92260)
* Play error tone when pipeline error occurs

* Play listening tone at the start of each cycle
2023-04-29 15:24:56 -04:00
Franck Nijhof
b9f2b0ad8b Update pyfibaro to 0.7.1 (#92248) 2023-04-29 19:06:14 +02:00
Franck Nijhof
3bab40753d Bumped version to 2023.5.0b3 2023-04-29 19:03:08 +02:00
J. Nick Koston
546c68196e Bump pyunifiprotect to 4.8.3 (#92251) 2023-04-29 19:02:59 +02:00
Bouwe Westerdijk
379db033af Bump plugwise to v0.31.1 (#92249) 2023-04-29 19:02:55 +02:00
Franck Nijhof
4b9355e1ca Fix unknown/unavailable source sensor in Filter entities (#92241) 2023-04-29 19:02:52 +02:00
Franck Nijhof
89eca22b93 Fix history YAML deprecation (#92238) 2023-04-29 19:02:48 +02:00
Allen Porter
2cb665a1d9 Add more detail to invalid rrule calendar error message (#92222)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-29 19:02:45 +02:00
Michael Davie
1d54a0ed3d Bump env_canada to 0.5.34 (#92216)
Bump env_canada to v.0.5.34
2023-04-29 19:02:41 +02:00
jjlawren
7af1521812 Bump sonos-websocket to 0.1.0 (#92209)
Bump sonos-websocket to 0.1.0
2023-04-29 19:02:38 +02:00
Tom Harris
c8cc6bfbb7 Fix Insteon scenes with disabled entities (#92137) 2023-04-29 19:02:34 +02:00
Rajeevan
401e61588c Fix solaredge-local protobuf exception (#92090) 2023-04-29 19:02:31 +02:00
Michael
3f948da2af Turn AVM FRITZ!Box Tools call deflection switches into coordinator entities (#91913)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-04-29 19:02:27 +02:00
Mick Vleeshouwer
aafbc64e02 Revert "Add silent option for DynamicShutter (ogp:Shutter) in Overkiz" (#91354) 2023-04-29 19:02:24 +02:00
rikroe
e460bc7ecb Move BMW Target SoC to number platform (#91081)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-04-29 19:02:19 +02:00
J. Nick Koston
11131070ab Bump pyunifiprotect to 4.8.3 (#92251) 2023-04-29 18:59:44 +02:00
IceBotYT
d23bd2ad68 Add diagnostics to LaCrosse View (#92212) 2023-04-29 18:53:40 +02:00
Michael
ac4d9216d6 Turn AVM FRITZ!Box Tools call deflection switches into coordinator entities (#91913)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-04-29 18:51:38 +02:00
IceBotYT
d8bc37c695 Bump LaCrosse View to version 1.0.1 (#92213) 2023-04-29 18:50:22 +02:00
Bouwe Westerdijk
e08d5d240d Bump plugwise to v0.31.1 (#92249) 2023-04-29 18:49:15 +02:00
J. Nick Koston
e136070718 Speed up purging the database (#92247) 2023-04-29 18:45:14 +02:00
Mick Vleeshouwer
0e0ab4427b Revert "Add silent option for DynamicShutter (ogp:Shutter) in Overkiz" (#91354) 2023-04-29 18:34:21 +02:00
Diogo Gomes
a48a07bd8d Removing self from SQL sensor CODEOWNERS (#92250) 2023-04-29 18:27:39 +02:00
Franck Nijhof
37723792c7 Fix unknown/unavailable source sensor in Filter entities (#92241) 2023-04-29 17:47:04 +02:00
rikroe
1028841690 Move BMW Target SoC to number platform (#91081)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-04-29 17:41:34 +02:00
Franck Nijhof
acc4b001cd Fix history YAML deprecation (#92238) 2023-04-29 08:02:34 -04:00
Franck Nijhof
06c4da2bb6 Fix incorrect entity category for flux_led sensors (#92234) 2023-04-29 06:11:50 -05:00
Franck Nijhof
f8942e7dcc Fix incorrect entity category for isy994 sensors (#92233) 2023-04-29 06:10:52 -05:00
Rajeevan
44186bb731 Fix solaredge-local protobuf exception (#92090) 2023-04-29 11:33:43 +02:00
epenet
7dfbfd45ae Cleanup onewire tests (#92117) 2023-04-29 11:18:16 +02:00
Tom Harris
58c5d98958 Fix Insteon scenes with disabled entities (#92137) 2023-04-29 11:16:04 +02:00
Allen Porter
282d5f4488 Add more detail to invalid rrule calendar error message (#92222)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-29 09:57:30 +02:00
Michael Davie
4511e91cfd Bump env_canada to 0.5.34 (#92216)
Bump env_canada to v.0.5.34
2023-04-29 07:17:52 +02:00
Raman Gupta
96455c74f0 Use enum sensor device class in Z-Wave (#92029)
* Use enum sensor device class where appropriate

* update docstring
2023-04-28 23:24:35 -04:00
jjlawren
65837c9075 Bump sonos-websocket to 0.1.0 (#92209)
Bump sonos-websocket to 0.1.0
2023-04-28 16:10:48 -05:00
Franck Nijhof
1b39abe3bc Bumped version to 2023.5.0b2 2023-04-28 21:42:27 +02:00
J. Nick Koston
29bff59707 Fix missing preset_mode feature in bond fans (#92202) 2023-04-28 21:42:18 +02:00
Jean-François Roy
faa8f38fa8 Add missing PRESET_MODE feature to BAF fans (#92200) 2023-04-28 21:42:15 +02:00
Paul Bottein
1f6dbe96f6 Update frontend to 20230428.0 (#92190) 2023-04-28 21:42:12 +02:00
Jan Bouwhuis
98075da069 Fix mqtt subscribe debouncer initial delay too long when birth message is disabled (#92188)
Fix mqtt subscribe deboucer initial delay
2023-04-28 21:42:08 +02:00
David F. Mulcahey
652bb8ef95 Fix ZHA device triggers (#92186)
* Fix missing endpoint data on ZHA events

* revert to flat structure

* update test
2023-04-28 21:42:05 +02:00
Nolan Gilley
96d2b53798 Upgrade lakeside to 0.13 (#92173) 2023-04-28 21:42:01 +02:00
Raman Gupta
25d621ab94 Bump pyvizio to 0.1.61 (#92161) 2023-04-28 21:41:58 +02:00
Erik Montnemery
fa3f19e7bf Keep expose setting in sync for assist (#92158)
* Keep expose setting in sync for assist

* Fix initialization, add test

* Fix tests

* Add AgentManager.async_setup

* Fix typo

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-28 21:41:53 +02:00
jjlawren
412ea937ff Properly resolve media_source URLs for Sonos announcements (#92154)
Properly resolve media_source URLs for Sonos announcements
2023-04-28 21:41:46 +02:00
Luke
b7f5c144a8 Bump Roborock to 0.8.3 (#92151) 2023-04-28 21:41:42 +02:00
J. Nick Koston
658128c892 Fix ignored apple tvs being scanned over and over (#92150) 2023-04-28 21:41:38 +02:00
J. Nick Koston
ff2f6029ce Ensure purge can cleanup old format detached states in the database (#92145) 2023-04-28 21:41:35 +02:00
puddly
8017a04efe Fix ZHA startup failure with the Konke button (#92144)
* Ensure devices with bad cluster subclasses do not prevent startup

* Explicitly unit test an affected SML001 device

* Do not use invalid `hue_occupancy` attribute name

* Actually remove `hue_occupancy`

* Bump ZHA dependencies
2023-04-28 21:41:31 +02:00
G Johansson
ef350949fd Fix options flow Workday (#92140)
* Fix options flow workday

* simpler
2023-04-28 21:41:26 +02:00
Luke
7b1b3970b1 Bump roborock to 0.8.1 for beta fixes (#92131)
* bump to 0.8.1

* add tests for new config flow errors

* removed logs for known errors
2023-04-28 21:40:35 +02:00
epenet
c483860560 Fix lingering timer in qld_bushfire (#92189) 2023-04-28 21:16:26 +02:00
epenet
c303487c1b Fix lingering timer in feedreader (#92180) 2023-04-28 21:16:08 +02:00
J. Nick Koston
07d1a16efd Add as_dict cache to Context and Event (#92162) 2023-04-28 21:15:39 +02:00
epenet
67a7de1869 Improve init type hints in enocean (#92176) 2023-04-28 21:14:37 +02:00
Sven Serlier
8c64eda58f Update URLs in PR template (#92194) 2023-04-28 21:12:26 +02:00
epenet
397a5ff992 Fix lingering timer in broadlink (#92179) 2023-04-28 21:08:08 +02:00
Sven Serlier
a0cd0b3c6c Fix typo in anova integration (#92191) 2023-04-28 21:07:17 +02:00
epenet
d366b43866 Fix lingering timer in lifx discovery (#92185) 2023-04-28 21:06:32 +02:00
J. Nick Koston
e156d3132e Ensure purge can cleanup old format detached states in the database (#92145) 2023-04-28 21:03:59 +02:00
J. Nick Koston
293fb374ed Fix missing preset_mode feature in bond fans (#92202) 2023-04-28 21:03:16 +02:00
Paul Bottein
75560aab1b Update frontend to 20230428.0 (#92190) 2023-04-28 21:01:28 +02:00
Jean-François Roy
57f41958e6 Add missing PRESET_MODE feature to BAF fans (#92200) 2023-04-28 21:00:54 +02:00
Jan Bouwhuis
cff7829a8d Fix mqtt subscribe debouncer initial delay too long when birth message is disabled (#92188)
Fix mqtt subscribe deboucer initial delay
2023-04-28 18:56:22 +02:00
Erik Montnemery
f8f7de5d5a Remove homeassistant from conversation dependencies (#92170)
* Remove homeassistant from conversation dependencies

* Fix tests
2023-04-28 18:17:48 +02:00
David F. Mulcahey
e6438dabff Fix ZHA device triggers (#92186)
* Fix missing endpoint data on ZHA events

* revert to flat structure

* update test
2023-04-28 11:29:24 -04:00
Erik Montnemery
ebd9cd096a Keep expose setting in sync for assist (#92158)
* Keep expose setting in sync for assist

* Fix initialization, add test

* Fix tests

* Add AgentManager.async_setup

* Fix typo

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-28 15:59:21 +02:00
J. Nick Koston
2bfa521068 Fix hassio with python3.11 (#92178) 2023-04-28 15:38:32 +02:00
Nolan Gilley
c3d3bc4b74 Upgrade lakeside to 0.13 (#92173) 2023-04-28 14:30:10 +02:00
Erik Montnemery
ec1ae7e2df Remove homeassistant from cloud dependencies (#92169) 2023-04-28 14:27:06 +02:00
Raman Gupta
6b829ca57b Bump pyvizio to 0.1.61 (#92161) 2023-04-28 11:31:16 +02:00
Robert Svensson
cad0310193 Fix lingering timer in Axis library (#92143) 2023-04-28 11:41:21 +03:00
Franck Nijhof
0411b384dd Fix release build for armhf, exclude pandas (#92159) 2023-04-28 09:53:04 +02:00
J. Nick Koston
3a95a1fd8a Fix ignored apple tvs being scanned over and over (#92150) 2023-04-28 09:52:20 +02:00
Luke
a6a485e59f Bump Roborock to 0.8.3 (#92151) 2023-04-28 09:49:35 +02:00
G Johansson
d648a93dcb Fix options flow Workday (#92140)
* Fix options flow workday

* simpler
2023-04-28 09:44:23 +02:00
jjlawren
4ce1106243 Properly resolve media_source URLs for Sonos announcements (#92154)
Properly resolve media_source URLs for Sonos announcements
2023-04-27 23:51:51 -04:00
puddly
9d0dd0b784 Fix ZHA startup failure with the Konke button (#92144)
* Ensure devices with bad cluster subclasses do not prevent startup

* Explicitly unit test an affected SML001 device

* Do not use invalid `hue_occupancy` attribute name

* Actually remove `hue_occupancy`

* Bump ZHA dependencies
2023-04-27 18:35:07 -04:00
Franck Nijhof
cdbffee781 Remove legacy pip resolver (#92124)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-27 22:39:29 +02:00
J. Nick Koston
89d8bda4ba Bump pyTibber to 0.27.2 (#92136) 2023-04-27 22:00:07 +02:00
Luke
efec50c8f0 Bump roborock to 0.8.1 for beta fixes (#92131)
* bump to 0.8.1

* add tests for new config flow errors

* removed logs for known errors
2023-04-27 21:10:34 +02:00
Franck Nijhof
e03f3c05b3 Bumped version to 2023.5.0b1 2023-04-27 19:59:11 +02:00
Franck Nijhof
3e8e2c68b9 Add add-on discovery URL and title to Wyoming integration (#92129) 2023-04-27 19:58:56 +02:00
J. Nick Koston
54e52182ab Bump sqlalchemy to 2.0.11 to fix a critical regression with postgresql (#92126) 2023-04-27 19:58:53 +02:00
Paul Bottein
c35872531f Update frontend to 20230427.0 (#92123) 2023-04-27 19:58:49 +02:00
Erik Montnemery
7d5c90a81e Add WS command cloud/alexa/entities/get (#92121)
* Add WS command cloud/alexa/entities/get

* Fix bugs, add test
2023-04-27 19:58:46 +02:00
Thijs W
1f52b71477 Fix frontier_silicon not retrying setup and missing strings (#92111)
Address late review comments for frontier_silicon config flow
2023-04-27 19:58:43 +02:00
Erik Montnemery
9a7f7ef35c Avoid exposing unsupported entities to Alexa (#92107)
* Avoid exposing unsupported entities to Alexa

* Update homeassistant/components/cloud/alexa_config.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-27 19:58:39 +02:00
Erik Montnemery
a41128dae3 Avoid exposing unsupported entities to Google Assistant (#92105)
* Avoid exposing unsupported entities to Google Assistant

* Add Google Assistant specific support sets

* Add test
2023-04-27 19:58:36 +02:00
Raman Gupta
5c3094520d Fix vizio integration_type (#92103) 2023-04-27 19:58:32 +02:00
Paulus Schoutsen
8db1d13c71 Use pipeline ID in event (#92100)
* Use pipeline ID in event

* Fix tests
2023-04-27 19:58:28 +02:00
Paulus Schoutsen
47c6cb88a4 Fix capitalization names Assist entities (#92098)
* Fix capitalization names Assist entities

* Adjust names to be 'in progress'

* Update tests/components/esphome/test_binary_sensor.py

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>

---------

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-04-27 19:58:25 +02:00
Michael
a1d4740785 Fix reconfigure by SSDP or Zeroconf discovery in Synology DSM (#92088) 2023-04-27 19:58:22 +02:00
Franck Nijhof
b3d685cc31 Update YARL to 1.9.2 (#92086) 2023-04-27 19:58:19 +02:00
avee87
019f26a17c Remove name attribute from transmission services manifest (#92083) 2023-04-27 19:58:15 +02:00
puddly
9970af5fe9 Add a channel changing API to ZHA (#92076)
* Expose channel changing over the websocket API

* Expose channel changing as a service

* Type annotate some existing unit test fixtures

* Add unit tests

* Rename `api.change_channel` to `api.async_change_channel`

* Expand on channel migration in the service description

* Remove channel changing service, we only really need the websocket API

* Update homeassistant/components/zha/websocket_api.py

* Black

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-27 19:58:12 +02:00
Michael Hansen
f7e72ef62b Bump intents to 2023.4.26 (#92070)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-04-27 19:58:08 +02:00
Jesse Hills
a445e29bca ESPHome voice assistant: Version 2 - Stream raw tts audio back to device for playback (#92052)
* Send raw audio back

* Update tests

* More tests

* Fix docstrings and remove unused patches

* More tests

* MORE

* Only set raw for v2
2023-04-27 19:58:04 +02:00
Jesse Hills
ba69e29e8f Set pipeline_id from pipeline select (#92085) 2023-04-27 19:57:23 +02:00
Franck Nijhof
ac21f69ad0 Add add-on discovery URL and title to Wyoming integration (#92129) 2023-04-27 19:51:26 +02:00
Paul Bottein
52816a8cd4 Update frontend to 20230427.0 (#92123) 2023-04-27 19:07:56 +02:00
J. Nick Koston
47b289b632 Bump sqlalchemy to 2.0.11 to fix a critical regression with postgresql (#92126) 2023-04-27 18:52:43 +02:00
Franck Nijhof
15c2ed7b04 Cleanup pybluez from machine builds (#92122) 2023-04-27 18:02:26 +02:00
Erik Montnemery
2522c6d697 Add WS command cloud/alexa/entities/get (#92121)
* Add WS command cloud/alexa/entities/get

* Fix bugs, add test
2023-04-27 17:10:29 +02:00
Franck Nijhof
3aa82e122c Remove usbutils from machine builds (#91942) 2023-04-27 17:10:07 +02:00
puddly
f9ac1f3839 Add a channel changing API to ZHA (#92076)
* Expose channel changing over the websocket API

* Expose channel changing as a service

* Type annotate some existing unit test fixtures

* Add unit tests

* Rename `api.change_channel` to `api.async_change_channel`

* Expand on channel migration in the service description

* Remove channel changing service, we only really need the websocket API

* Update homeassistant/components/zha/websocket_api.py

* Black

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-27 11:04:22 -04:00
Franck Nijhof
f7f950a273 Update Home Assistant base image to 2023.04.2 - Python 3.11 (#92114) 2023-04-27 14:53:12 +02:00
Doug Hoffman
24acc71519 Resolve warnings due to incorrectly defined entities in airthings_ble (#92097)
* airthings_ble: Define state_class only in SensorEntityDescription

* airthings_ble: Drop incompatible device_class for voc
2023-04-27 13:44:42 +02:00
Joakim Sørensen
0ef29bfc0c Add filters to upcoming launch library launches (#92110)
Add filters to upcoming launches
2023-04-27 13:36:43 +02:00
epenet
7801eeb063 Use snapshot in onewire diagnostics tests (#92112) 2023-04-27 13:34:13 +02:00
epenet
aac750a44f Improve TAI8570 ignore tests in onewire (#92113)
Improve TAI8570 tests in onewire
2023-04-27 13:33:30 +02:00
Erik Montnemery
7215f6320e Avoid exposing unsupported entities to Alexa (#92107)
* Avoid exposing unsupported entities to Alexa

* Update homeassistant/components/cloud/alexa_config.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-27 13:31:24 +02:00
Thijs W
21d887dd04 Fix frontier_silicon not retrying setup and missing strings (#92111)
Address late review comments for frontier_silicon config flow
2023-04-27 13:14:25 +02:00
Erik Montnemery
65c9d4a4ae Avoid exposing unsupported entities to Google Assistant (#92105)
* Avoid exposing unsupported entities to Google Assistant

* Add Google Assistant specific support sets

* Add test
2023-04-27 10:38:21 +02:00
avee87
a164530a64 Remove name attribute from transmission services manifest (#92083) 2023-04-27 09:45:49 +02:00
Franck Nijhof
bd72ea11fc Update sentry-sdk to 1.21.0 (#92087) 2023-04-27 09:43:34 +02:00
Raman Gupta
7d2243344e Fix vizio integration_type (#92103) 2023-04-27 09:22:03 +02:00
Paulus Schoutsen
7c696754ed Use pipeline ID in event (#92100)
* Use pipeline ID in event

* Fix tests
2023-04-26 22:40:17 -04:00
Jesse Hills
32ed45084a ESPHome voice assistant: Version 2 - Stream raw tts audio back to device for playback (#92052)
* Send raw audio back

* Update tests

* More tests

* Fix docstrings and remove unused patches

* More tests

* MORE

* Only set raw for v2
2023-04-26 22:24:29 -04:00
Paulus Schoutsen
ddc2807361 Fix capitalization names Assist entities (#92098)
* Fix capitalization names Assist entities

* Adjust names to be 'in progress'

* Update tests/components/esphome/test_binary_sensor.py

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>

---------

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-04-26 22:13:21 -04:00
Franck Nijhof
13fc22aa3c Update syrupy to 4.0.2 (#92089) 2023-04-27 01:39:49 +02:00
Franck Nijhof
9f885a68ff Update YARL to 1.9.2 (#92086) 2023-04-27 01:39:32 +02:00
Michael
4e7f39e3d0 Fix reconfigure by SSDP or Zeroconf discovery in Synology DSM (#92088) 2023-04-27 00:52:17 +02:00
Jesse Hills
29ca43acf6 Set pipeline_id from pipeline select (#92085) 2023-04-27 10:29:08 +12:00
Joakim Sørensen
fdfd567ee5 Bump pylaunches from 1.3.0 to 1.4.0 (#92061) 2023-04-26 23:01:22 +02:00
Franck Nijhof
b5edf47454 Bump version to 2023.6.0dev0 (#92081) 2023-04-26 22:58:26 +02:00
Michael Hansen
929bfd3dfc Bump intents to 2023.4.26 (#92070)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-04-26 22:31:35 +02:00
Franck Nijhof
45d826c941 Bumped version to 2023.5.0b0 2023-04-26 21:56:02 +02:00
Franck Nijhof
583453f327 Merge branch 'master' into dev 2023-04-26 21:53:40 +02:00
Arturo
75be1b4ff9 Remove bridged matter devices when matter bridge is removed (#91995)
* Removes bridged matter devices when matter bridge is removed

* Didn't have the fetch the config entry since that is already provided to us

* Switched to a safer method of removing the child devices
2023-04-26 21:44:40 +02:00
puddly
2bbebeb925 Add a warning step to ZHA's config flow to advise against some radios (#92078) 2023-04-26 21:40:46 +02:00
puddly
4f660cc5f5 Allow the ZHA default light transition time to be configured as a float (#92075) 2023-04-26 21:24:06 +02:00
Marcel van der Veldt
3c44c7416f Fix Matter cover deviceclass and inverted position (#92063) 2023-04-26 21:21:31 +02:00
Bram Kragten
e7e50243d1 Update frontend to 20230426.0 (#92074) 2023-04-26 21:19:06 +02:00
Franck Nijhof
b6a3ffb20f Revert "Fail TTS tests if default TTS cache dir exists (#92023)" (#92079) 2023-04-26 21:18:17 +02:00
Jan Bouwhuis
5a78684998 Fix large imap_content event warning by truncating the email text body to 2 KiB (#92066) 2023-04-26 18:44:22 +02:00
J. Nick Koston
ead761dfa2 Ensure device_automation can handle RequirementsNotFound (#92037) 2023-04-26 18:43:38 +02:00
Erik Montnemery
330a7afdfc Teach switch_as_x about exposed entities (#92059) 2023-04-26 18:42:49 +02:00
J. Nick Koston
ec5f50913a Retry creating esphome update entities later if dashboard is unavailable (#92042) 2023-04-26 18:41:00 +02:00
J. Nick Koston
f33e8c518f Ensure lutron_caseta logbook platform does not raise when integration is not loaded (#91978) 2023-04-26 18:39:42 +02:00
Bram Kragten
aa4544accb Add assist pipeline and language selectors (#92030) 2023-04-26 18:39:02 +02:00
Jan Bouwhuis
f6d8859dd2 Add codeowner for imap integration (#92067) 2023-04-26 18:21:58 +02:00
Erik Montnemery
ce99319ea5 Add LED settings support to Home Assistant Yellow (#86451)
* Add LED control support to Home Assistant Yellow

* Fix the handlers

* Remove switch platform

* Allow configuring LED settings from the options flow

* Add missing translations

* Add tests

* Add tests
2023-04-26 11:02:52 -04:00
Ondřej Kolenatý
64e4414a5e Add today's remaining production estimate (#91965) 2023-04-26 15:58:28 +02:00
Erik Montnemery
32ffedd365 Fail TTS tests if default TTS cache dir exists (#92023)
Fail tests if default tts cache dir exists
2023-04-26 15:28:48 +02:00
Erik Montnemery
904ce226fb Tweak response of /api/cloud/login (#92058) 2023-04-26 15:28:08 +02:00
Franck Nijhof
565b26e884 Fix tts add-on discovery for Wyoming (#92064) 2023-04-26 08:04:46 -05:00
Matthias Alphart
0b9fbb1800 Fix typo in Nextcloud YAML deprecation message (#92060) 2023-04-26 13:51:47 +02:00
Erik Montnemery
2750a5c3e6 Make assist_pipeline an after dependency of cloud (#92057) 2023-04-26 13:45:32 +02:00
Erik Montnemery
ed737f306b Remove cloud assist pipeline setup from cloud client (#92056) 2023-04-26 06:53:58 -04:00
J. Nick Koston
6b931b208f Small cleanups to bluetooth internals (#92045)
* Small cleanups to bluetooth internals

Improve the performance of _async_on_advertisement

Fixes

```
tests/components/bluetooth/test_models.py::test_ble_device_with_proxy_client_out_of_connections_uses_best_available
tests/components/bluetooth/test_models.py::test_ble_device_with_proxy_client_out_of_connections_uses_best_available_macos
  /Users/bdraco/home-assistant/homeassistant/components/bluetooth/wrappers.py:226: FutureWarning: This method will be removed future version, pass the callback to the BleakClient constructor instead.
    self._backend.set_disconnected_callback(

tests/components/bluetooth/test_models.py::test_ble_device_with_proxy_client_out_of_connections_uses_best_available_macos
  /Users/bdraco/home-assistant/tests/components/bluetooth/test_models.py:506: FutureWarning: BLEDevice.metadata is deprecated and will be removed in a future version of Bleak, use AdvertisementData instead
    switchbot_proxy_device_no_connection_slot.metadata["delegate"] = 0

tests/components/bluetooth/test_models.py::test_ble_device_with_proxy_client_out_of_connections_uses_best_available_macos
  /Users/bdraco/home-assistant/tests/components/bluetooth/test_models.py:521: FutureWarning: BLEDevice.metadata is deprecated and will be removed in a future version of Bleak, use AdvertisementData instead
    switchbot_proxy_device_has_connection_slot.metadata["delegate"] = 0

tests/components/bluetooth/test_models.py::test_ble_device_with_proxy_client_out_of_connections_uses_best_available_macos
  /Users/bdraco/home-assistant/tests/components/bluetooth/test_models.py:535: FutureWarning: BLEDevice.metadata is deprecated and will be removed in a future version of Bleak, use AdvertisementData instead
    switchbot_device.metadata["delegate"] = 0

```

* put back kwargs
2023-04-26 11:16:34 +02:00
Joakim Sørensen
c429bfae3e Bump hass-nabucasa from 0.66.1 to 0.66.2 (#92054) 2023-04-26 10:47:41 +02:00
J. Nick Koston
cf69da40f3 Only check support_entry_unload/support_remove_from_device once (#92041) 2023-04-26 10:23:18 +02:00
Ondřej Kolenatý
5399dfd39d Set forecast-solar energy sensor's units of measurement to Wh (#92022)
* All energy units of measurement changed to Wh.

* All energy units of measurement changed to Wh.
2023-04-26 10:09:30 +02:00
Robert Svensson
09109d093e Allow UniFi control PoE passthrough properly (#92028) 2023-04-26 09:16:18 +02:00
J. Nick Koston
828aed73af Bump zeroconf to 0.58.2 (#92049) 2023-04-26 09:14:34 +02:00
J. Nick Koston
5f1fc3259c Bump aioesphomeapi to 13.7.2 (#92027) 2023-04-26 09:12:52 +02:00
Michael Hansen
8dfecac013 Time out TTS based on audio length (#92032)
* Time out TTS based on audio length

* Use async mock
2023-04-26 00:35:14 -04:00
Michael Hansen
257944c3b7 Allow numbers in TTS engine part of cache key (#92031) 2023-04-26 00:33:45 -04:00
Raman Gupta
3190e5d7cf Add button entities to manually idle zwave notification values (#91446)
* Add button entities to manually idle zwave notification values

* Update discovery.py

* Improve discovery check

* fix tests

* make unique ID more clear
2023-04-25 21:41:29 -04:00
Erik Montnemery
57a59d808b Automaticially create an assist pipeline using cloud stt + tts (#91991)
* Automaticially create an assist pipeline using cloud stt + tts

* Return the id of the cloud enabled pipeline

* Wait for platforms to load

* Fix typing

* Fix startup race

* Update tests

* Create a cloud pipeline only when logging in

* Fix tests

* Tweak _async_resolve_default_pipeline_settings

* Improve assist_pipeline test coverage

* Improve cloud test coverage
2023-04-25 20:40:01 -05:00
J. Nick Koston
74e0341d83 Bump yalexs-ble to 2.1.16 (#92034) 2023-04-25 18:53:08 -05:00
puddly
6842cdcb65 Clean up default ZHA entity names (#91841)
* Always use `Light` for lights, including subclasses

* Clean up other platforms

* Add a unit test to ensure all future entity classes have names

* Remove stale `_name`

* Address review feedback and rename `Open` to `Opening`
2023-04-25 19:51:39 -04:00
shbatm
da05763a5c ISY994 remove value when calling open cover with no position (#92036) 2023-04-25 18:17:11 -05:00
shbatm
969db343bd Invert ISY994 dusk/dawn sensors to match expected state (#92035) 2023-04-25 17:15:48 -05:00
nachonam
2d510bfe0d Add camera platform to Freebox (#88104)
* Add Freebox cameras

* Apply suggestions from code review

add code corrections after PR review

Co-authored-by: Quentame <polletquentin74@me.com>

* Update base_class.py

* add some code syntax corrections add unit tests

* add unit tests

* add syntax changes

* Update homeassistant/components/freebox/router.py

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/router.py

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/base_class.py

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/router.py

Co-authored-by: Quentame <polletquentin74@me.com>

* clear code  and add minor changes

* correct syntax error and check home granted access

* typing functions

* Update tests/components/freebox/conftest.py

don't needed, and will fix tests.

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/camera.py

Rename _volume_micro variable

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/camera.py

Use const not literal

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/camera.py

set to true not needed

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/camera.py

use _attr_supported_features instead _supported_features

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/camera.py

overload the entity with command_flip property and set_flip not needed

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/camera.py

Cameras does not default to False,

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/camera.py

delete this function because is not needed

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/camera.py

Co-authored-by: Quentame <polletquentin74@me.com>

* consts,  rollback _command flip is protected var

* VALUE_NOT_SET does not exists anymore

* Use HOME_COMPATIBLE_PLATFORMS

* Rename FreeboxHomeBaseClass to FreeboxHomeEntity

* Update Freebox Home comment

* Use CATEGORY_TO_MODEL to set model attr of FreeboxHomeEntity

* Use Home API from the router

* Add SERVICE_FLIP const

* Use SERVICE_FLIP const

* Fix typo in HOME_COMPATIBLE_PLATFORMS

* fix somme code issues

* use SERVICE_FLIP (lost in merge)

* use _attr_device_info

* clear code

* HOME_COMPATIBLE_PLATFORMS is a list

* Update homeassistant/components/freebox/home_base.py

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/home_base.py

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/config_flow.py

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/home_base.py

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/home_base.py

Co-authored-by: Quentame <polletquentin74@me.com>

* clear config_flow permission

* Update homeassistant/components/freebox/home_base.py

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/camera.py

Co-authored-by: Quentame <polletquentin74@me.com>

* add untested files to. coveragerc

* clear unused attributes

* add not tested file camera.py

* clear unusued const

* add extra_state_attributes

* Update .coveragerc

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/freebox/camera.py

Co-authored-by: Quentame <polletquentin74@me.com>

* fetch _flip

* del flip service

* add device_info via_device

* Update .coveragerc

* Update .coveragerc

* Update .coveragerc

* Update .coveragerc

* Remove flip reference

* Fix issue on router without Home API

* Fix "Home access is not granted" log repeats every 30s

* Fix sensor device_info

---------

Co-authored-by: Quentame <polletquentin74@me.com>
2023-04-26 00:03:39 +02:00
Jan Bouwhuis
62bb584522 Add note for using xfail on test for mqtt_statestream (#91999)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-25 22:49:47 +02:00
Jan Bouwhuis
aab7dffdb9 Only expose MQTT advanced settings in advanced mode (#91996) 2023-04-25 22:23:17 +02:00
Martin Hjelmare
0594fefb0c Clean up tts fixtures (#92025) 2023-04-25 22:21:18 +02:00
Maciej Bieniek
5244f5731e Do not reload Shelly TRV config entry (#92000) 2023-04-25 22:20:59 +02:00
Michel van de Wetering
ee3cebe37b Enable open,close,stop device actions for all covers (#92006) 2023-04-25 22:19:37 +02:00
Erik Montnemery
18f7b92438 Fall back to domain for conversation agents without title (#92014) 2023-04-25 22:14:44 +02:00
Raman Gupta
78a49ecbce Bump zwave-js-server-python to 0.48.0 (#91989)
* Bump zwave-js-server-python to 0.48.0

* Add handling of FailedZWaveCommand exception

* Reset mock to avoid unintentional side effects

* Fix bump
2023-04-25 15:41:37 -04:00
Dave T
dedb3f8b6b Fix comment typos (#92021) 2023-04-25 21:04:36 +02:00
Erik Montnemery
64cbc91697 Use addon uuid as wyoming config entry unique id (#92008) 2023-04-25 21:04:11 +02:00
Arjan
74e3cac8b5 Fix timezone issue (#92005) 2023-04-25 21:02:02 +02:00
Joakim Sørensen
083f42cce6 Bump hass-nabucasa from 0.65.0 to 0.66.1 (#92020) 2023-04-25 21:00:23 +02:00
Daniel Hjelseth Høyer
9d3a0d676a Update tibber lib to 0.27.1 (#92016) 2023-04-25 13:40:48 -05:00
J. Nick Koston
2354f8194e Add reauth to onvif (#91957)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-04-25 12:20:17 -05:00
Erik Montnemery
8e70446ef8 Tweak a couple of stt and tts related asserts (#92012)
Tweak a couple of stt and tts related asserts
2023-04-25 11:50:37 -05:00
Erik Montnemery
933761d425 Fix cloud connected signal only firing once (#92009) 2023-04-25 12:15:27 -04:00
Alberto Geniola
dae05a0c93 Add check on disarm code for Alarm Control Panel - Elmax (#91158) 2023-04-25 17:56:01 +02:00
Erik Montnemery
792ea92e55 Remove fuzzy language matching from stt and tts (#92002)
* Remove fuzzy language matching from stt and tts

* Update tests
2023-04-25 17:54:42 +02:00
Clay Benson
d1e6e4078c Bump asyncsleepiq lib to 1.3.4 (#91860) 2023-04-25 09:54:32 -05:00
J. Nick Koston
e7e7990b60 Bump sqlalchemy to 2.0.10 (#91982) 2023-04-25 09:45:49 -05:00
Alberto Geniola
aa1304e93a Elmax/sensors improvements (#74323)
* Address suggestions in PR #64090

* Remove redundant force-refresh at discovery time

* Improve re-auth UX

* Resolve linting warning

* Cover reauth case when no entry is in place

* Add missing reauth_successful message

* Use ad-hoc schema for reauth flow

* Align test cases with latest modifications

* Improve re-authentication flow, align tests

* Remove None check (as it can never happen)

* Remove panel_id from reauth dialog

* Remove panel_id from reauth dialog

* Simplify try-catch block

* Address suggestions in PR #64090

* Remove redundant force-refresh at discovery time

* Improve re-auth UX

* Resolve linting warning

* Cover reauth case when no entry is in place

* Add missing reauth_successful message

* Use ad-hoc schema for reauth flow

* Align test cases with latest modifications

* Improve re-authentication flow, align tests

* Remove None check (as it can never happen)

* Remove panel_id from reauth dialog

* Remove panel_id from reauth dialog

* Simplify try-catch block

* Improve type handling

* Remove translations

* Add unique-id attribute within context object

* Optimize local variable usage
2023-04-25 15:40:46 +02:00
Diogo Gomes
a3048234d3 Support for multiple contracts in Prosegur (#89097)
* support for multiple contracts - tested live

* update tests

* address review

* address review

* fix
2023-04-25 15:16:51 +02:00
G Johansson
1fa82fa886 Move TriggerBaseEntity into helpers (#91945)
* Move TriggerBaseEntity

* mypy
2023-04-25 09:56:40 +02:00
Stephan Uhle
b56f0ad668 Remove unused attributes in EDL21 integration (#91922) 2023-04-25 09:50:23 +02:00
Diogo Gomes
48546c77b5 Follow the unavailability of the source sensor (#91975) 2023-04-25 09:49:58 +02:00
Erik Montnemery
63f3767a29 Include UUID in hassio discovery data (#91970) 2023-04-25 09:48:47 +02:00
puddly
0b0573c387 Bump ZHA dependencies (#91969) 2023-04-25 09:47:22 +02:00
Michael Hansen
ebabf504da Play pre-recorded message if pipeline is misconfigured (#91985)
* Play pre-recorded message if pipeline is misconfigured

* Use voip_device
2023-04-24 21:48:40 -05:00
J. Nick Koston
5114a1400f Ensure logbook still responds if describe event throws (#91961)
* Ensure logbook still responds if describe event throws

If describe fails, the logbook stream should not collapse

* Ensure logbook still responds if describe event throws

If describe fails, the logbook stream should not collapse
2023-04-24 22:22:53 -04:00
J. Nick Koston
18532e453a Bump home-assistant-bluetooth to 1.10.0 (#91977)
changelog: https://github.com/home-assistant-libs/home-assistant-bluetooth/blob/main/CHANGELOG.md
2023-04-24 22:22:11 -04:00
Robert Svensson
cecd657a09 Bump aiounifi to v47 (#91966) 2023-04-24 18:06:12 -05:00
Luke
b5bf88215c Add mopping abilities to Roborock (#91766)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-04-24 22:53:45 +02:00
J. Nick Koston
e3a110f04f Bump yalexs to 1.3.2 (#91963) 2023-04-24 22:13:30 +02:00
Michael Hansen
b4bd3b97f8 Use order in preferred regions list (#91959)
* Use order in preferred regions list

* Use float for score (inf = exact match)
2023-04-24 14:12:38 -04:00
Erik Montnemery
b601fb17d3 Create a default assist pipeline on start (#91947)
* Create a default assist pipeline on start

* Minor adjustments

* Address review comments

* Remove tts.async_get_agent

* Fix bugs, improve test coverage
2023-04-24 14:00:52 -04:00
Franck Nijhof
4b619f7251 Relax polling rate on Rituals Perfume Genie (#91949) 2023-04-24 19:28:14 +02:00
Michael Hansen
5a57602163 Wait for TTS before restarting pipeline (#91962) 2023-04-24 13:27:13 -04:00
Ondřej Kolenatý
36f90cda92 Dependency upgrade to forecast-solar 3.0.0 (#91951) 2023-04-24 19:18:18 +02:00
Alberto Geniola
f104bba683 Elmax -Handle 422 busy error with a retry approach (#91926) 2023-04-24 18:51:40 +02:00
J. Nick Koston
e2d2aeadaa Fix typo in powerwall strings (#91956) 2023-04-24 17:54:22 +02:00
Michael
2ba2c6c6ab Correct entity categories in AVM FRITZ!SmartHome (#91073) 2023-04-24 16:57:34 +02:00
Erik Montnemery
a956f16f73 Suppress pylint error related to audioop deprecation (#91950)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-04-24 16:56:20 +02:00
Michael Hansen
5075281add Fix zh Hant/Hans (#91390)
* Fix zh Hant/Hans

* Fix comments
2023-04-24 16:55:08 +02:00
Luke
1ae7610622 Add Vacuum test for Roborock (#91870) 2023-04-24 16:46:00 +02:00
Jan Bouwhuis
88f0e4000b Cleanup unreachable code where device_entry will never be None on an update event (#91855) 2023-04-24 16:09:36 +02:00
Jan Bouwhuis
3f6541a6db Add cipher list option to IMAP config flow (#91896)
* Add cipher list option to IMAP config flow

* Use client_context to get the ssl_context

* Formatting

* Add ssl error no make error handling more specific

* Make ssl_ciper_list an advanced option
2023-04-24 15:37:21 +02:00
J. Nick Koston
c3262ebdb3 Add rule parser for onvif LineDetector and CountAggregation (#91885) 2023-04-24 15:23:59 +02:00
J. Nick Koston
e25885b943 Improve error reporting in onvif in config flow (#91876) 2023-04-24 15:20:37 +02:00
Erik Montnemery
1c3e1d2e13 Don't resolve default tts engine in assist pipelines (#91943)
* Don't resolve default tts engine in assist pipelines

* Set tts engine when creating default pipeline

* Update tests
2023-04-24 14:40:11 +02:00
J. Nick Koston
392a9f32c9 Add fallback to device zone time or no timezone to onvif when setting time fails (#91882) 2023-04-24 14:37:56 +02:00
J. Nick Koston
ddb3955a23 Add guards to onvif for when the PullPoint to Webhook url changes (#91886) 2023-04-24 14:35:45 +02:00
J. Nick Koston
6c024405a6 Ensure onvif can still be unloaded if camera fails to unsubscribe (#91887) 2023-04-24 14:13:04 +02:00
Erik Montnemery
c5d0c392a9 Don't resolve default stt engine in assist pipelines (#91936)
* Don't resolve default stt engine in assist pipelines

* Apply suggestion from code review

* Add tests

* Tweak

* Add test

* Improve test coverage
2023-04-24 13:37:13 +02:00
Joost Lekkerkerker
0d815a1688 Bump Pylast to 5.1.0 (#91909) 2023-04-24 13:11:14 +02:00
Franck Nijhof
43880ffdc4 Remove unneeded pygatt package from machine builds (#91940) 2023-04-24 12:39:51 +02:00
rubenbe
2f1a5942ab Add MQTT fan direction support (#91700)
* Add MQTT fan direction support

* Add MQTT fan direction abbreviations

* Add MQTT fan direction tests

* Shorten MQTT fan test payloads
2023-04-24 11:48:00 +02:00
J. Nick Koston
739963b5ee Remove deprecated async_setup_platforms (#91929) 2023-04-23 22:38:35 -05:00
Paulus Schoutsen
a203149133 Allow entity names for STT entities (#91932)
* Allow entity names for STT entities

* Fix tests
2023-04-23 23:06:34 -04:00
J. Nick Koston
fba7c6cacd Remove deprecated async_get_registry (#91928)
Deprecated in 2021 via #46265, report was added a year ago in #72088
2023-04-23 23:02:21 -04:00
J. Nick Koston
f3838dde3a Cleanup onvif topic before lookup (#91914)
* Cleanup onvif topic before lookup

Some devices will append . and / to the path. We need
to strip it off to find the correct matcher

fixes #51870

* Update homeassistant/components/onvif/event.py

* Update homeassistant/components/onvif/event.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-23 23:02:08 -04:00
Michael Hansen
5348ea3ac4 Add processing tone (#91931)
* Add processing tone

* Update homeassistant/components/voip/voip.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Update homeassistant/components/voip/voip.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Fix linting

* Fix tests

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-23 21:28:56 -05:00
Paulus Schoutsen
c8c8e4dede Remove duplicate name from Wyoming TTS entity (#91930) 2023-04-23 20:13:32 -05:00
J. Nick Koston
14d2645de2 Avoid creating onvif switches on unsupported devices (#91907)
* Avoid creating onvif switches on unsupported devices

fixes #89064

* cover
2023-04-23 20:56:43 -04:00
J. Nick Koston
0b0c94ee52 Fix migration with negative event type cache (#91910)
* Fix migration with negative event type cache

fixes a regression with #91770

* Update homeassistant/components/recorder/table_managers/event_types.py
2023-04-23 20:56:17 -04:00
J. Nick Koston
c38839d72f Suppress events for tns1:MediaControl/VideoEncoderConfiguration with onvif (#91916)
These events are not useful to the integration and generate a
confusing log message
```
2023-04-23 14:01:21.866 INFO (MainThread) [homeassistant.components.onvif] DS-HD1: No registered handler for event from 80:91:33:88:8d:bd: {
    SubscriptionReference: None,
    Topic: {
        _value_1: tns1:MediaControl/VideoEncoderConfiguration,
        Dialect: http://www.onvif.org/ver10/tev/topicExpression/ConcreteSet,
        _attr_1: {
    }
    },
    ProducerReference: None,
    Message: {
        _value_1: {
            Source: {
                SimpleItem: [
                    {
                        Name: VideoEncoderConfigurationToken,
                        Value: VideoEncoderToken_1
                    }
                ],
                ElementItem: [],
                Extension: None,
                _attr_1: None
            },
            Key: None,
            Data: {
                SimpleItem: [],
                ElementItem: [
                    {
                        _value_1: <Element {http://www.onvif.org/ver10/media/wsdl}Configuration at 0x2a9e103c0>,
                        Name: Config
                    }
                ],
                Extension: None,
                _attr_1: None
            },
            Extension: None,
            UtcTime: datetime.datetime(2023, 4, 23, 20, 1, 17, tzinfo=<isodate.tzinfo.Utc object at 0x1696b1270>),
            PropertyOperation: Initialized,
            _attr_1: {
        }
        }
    }
}

```

We now ignore them
2023-04-23 20:54:37 -04:00
J. Nick Koston
ed468fa390 Bump zeroconf to 0.58.0 (#91917)
* Bump zeroconf to 0.57.0

changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.56.0...0.57.0

* again
2023-04-23 20:54:13 -04:00
Franck Nijhof
e795ac5a8e Wheels: Fix typo in env_canada dep for armhf (#91918) 2023-04-23 14:53:42 -05:00
Pablo Estevez
780d0a484d Add NUT device actions (#80986)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-23 14:09:36 -05:00
Michael Hansen
b6f2b29a99 Wyoming tts (#91712)
* Add tts entity

* Add tts entity and tests

* Re-add name to TextToSpeechEntity

* Fix linting

* Fix ruff linting

* Support voice attr (unused)

* Remove async_get_text_to_speech_entity

* Move name property to Wyoming TTS entity

* Fix id

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-23 13:06:56 -05:00
Paulus Schoutsen
f4df0ca50a Assist pipeline to use configured values (#91901)
* Assist pipeline to use configured values

* Include voice in TTS-START event

* Use correct tts language var

* More vars

* Apply suggestions from code review

* Update

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2023-04-23 12:48:11 -04:00
Franck Nijhof
ec1952b926 Wheels: Disable Pandas for Python 3.11 on armhf (#91898) 2023-04-23 16:42:44 +02:00
Markus
1a14a93df6 HA deconz: Add support for Tuya Smart Air Housekeeper 6in1 Air Quality Monitor (#87866)
* fix check for airquality sensor (was always TRUE)

* import additional const required

* add support for formaldehyd sensor

* add support for co2 sensor

* add support for pm25 sensor

* sort const a-z

* adapt to typo fixed function

* adapt to new key names (formaldehyde)

* adapt co2 sensor to new key names

* Update homeassistant/components/deconz/sensor.py

remove unnecessary code

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* add device_class for air_quality_ppb

* add test_air_quality_sensor_6_in_1

* fix Air quality PPB test to match device_class

* remove device_class of air_quality_ppb

* remove device_class test of airqualityppb

* explicit units

* remove device_class test of airquality_1_ppb

* dependency bump pydeconz to 111

* Update homeassistant/components/deconz/sensor.py

remove unnecessary device_class

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* import formatting

* formatting

* Update homeassistant/components/deconz/sensor.py

change key for pm2_5

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* add airquality co2 ch2o pm25 sensor testdata

* remove test_air_quality_sensor_6_in_1

* formatting

* bump pydeconz for requirements

---------

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2023-04-23 16:12:52 +02:00
Marc Mueller
06520217bc Update pylint to 2.17.2 (#91894) 2023-04-23 14:46:48 +02:00
J. Nick Koston
1a00644b0a Bump ulid-transform to 0.7.0 (#91888)
changelog: https://github.com/bdraco/ulid-transform/compare/v0.6.3...v0.7.0
2023-04-23 06:53:53 -04:00
Marc Mueller
00e600d406 Improve notion generic typing (#91883) 2023-04-23 11:24:39 +02:00
Paulus Schoutsen
f18056f0a4 Add a VoIP user (#91884)
* Add a VoIP user

* Fix tests
2023-04-22 23:44:13 -04:00
Michael Hansen
7fcf07c964 Ensure .pcm binary files do not have line endings changed (#91881) 2023-04-22 22:22:30 -04:00
Michael Hansen
8abd047e21 Rename raw audio files to .pcm (#91879) 2023-04-22 22:03:08 -04:00
Paulus Schoutsen
1eef4af493 Use configured voice in TTS output for assist pipeline (#91878) 2023-04-22 22:01:32 -04:00
Matthias Alphart
33808cd268 Add entity name translations to KNX system sensors (#91396)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-04-23 01:31:59 +02:00
J. Nick Koston
82340907c2 Ensure onvif retries setup if camera fails to respond correctly (#91866) 2023-04-23 01:27:54 +02:00
[pʲɵs]
6013584b7b Add balance entity for Sonos speakers (#85205) 2023-04-23 01:18:17 +02:00
J. Nick Koston
942a955a77 Handle 404 for media/ptz/image onvif services to allow setup to proceed (#91875) 2023-04-23 01:16:37 +02:00
J. Nick Koston
e4744199ce Raise an exception when trying to save camera snapshots to a not allowed path (#91869) 2023-04-23 01:15:56 +02:00
Marc Mueller
9ccc0059d2 Add run-name for workflow_dispatch runs [ci] (#91873) 2023-04-23 01:15:09 +02:00
J. Nick Koston
bba225abc5 Mark onvif events as stale when the subscription renewal fails (#91567) 2023-04-23 01:14:22 +02:00
Franck Nijhof
dccef1020c Revert "Update opencv-python-headless to 4.7.0.72" (#91871) 2023-04-23 01:09:35 +02:00
Luke
498e69695b Add Anova integration (#86254)
* init setup of Anova Sous Vide

* bump anova-wifi to 0.2.4

* Removed yaml support

* Bump to anova-wifi 0.2.5

* Added support for adding sous vide while offline

* Added basic test for sensor

* added better tests for sensors and init

* expanded code coverage

* Decreased timedelta to lowest functioning value.

* Updating my username

* migrate to async_forward_entry_setups

* applying pr recommended changes

* bump anova-wifi to 0.2.7

* Improvements to hopefully get this review ready

* formatting changes

* clean ups for pr review

* remove unneeded unique id check.

* bump ao anova_wifi 0.3.0

* rename device_id to device_unique_id

* renamed to 'anova'

* added unique_id to MockConfigEntry

* removed leftover anova sous vides

* added device id to strings

* added error for incorrect device id

* add has_entity_name

* added attr name for tests

* added authentication functionality

* bump to 0.4.3

* split entity into its own class/object

* pulling firmware version out of async_setup

Co-authored-by: J. Nick Koston <nick@koston.org>

* addressed pr changes

* fixed pytest

* added anova data model

* removed unneeded time change

* add logging in package

* rework step_user

* Update homeassistant/components/anova/sensor.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Removed lower from attr unique id

Co-authored-by: J. Nick Koston <nick@koston.org>

* Removed unneeded member variables in sensor

Co-authored-by: J. Nick Koston <nick@koston.org>

* removed repeated subclass attr

Co-authored-by: J. Nick Koston <nick@koston.org>

* simplify update_failed test

* created descriptionentity

* bump to 0.6.1 limit ws connect

* add translation for sensor entities

* version bump - support pro model

* add anova to strict typing

* fixed sensor not getting datas type

* Apply suggestions from code review

Co-authored-by: J. Nick Koston <nick@koston.org>

* Check for new devices in init

* style changes

* return false instead of config entry not ready

* move serialize_device_list to utils

* move repeating device check into api

* moved unneeded code out of try except

* fixed tests to get 100% cov

* Update homeassistant/components/anova/strings.json

Co-authored-by: J. Nick Koston <nick@koston.org>

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-22 18:05:14 -05:00
Eric Severance
68ce59e9c1 Skip adding WeMo device on failure (#91621)
* Skip adding WeMo device on failure

* Only create a single log entry for each failed device

* Fix typo s/serial_number/serialnumber/

* Discard failed devices on success
2023-04-22 23:10:08 +02:00
Franck Nijhof
66a25a9e72 Wheels: Don't build opencv-python-headless on cp311 (#91872) 2023-04-22 22:44:29 +02:00
cirrusblau
ae91ef8e74 Bump locationsharinglib to 5.0.1 (#91259) 2023-04-22 22:05:23 +02:00
Franck Nijhof
5533eed30c Wheels: Don't build beacontools on cp311 (#91868) 2023-04-22 22:00:32 +02:00
epenet
7906e39df7 Add missing ViCare diagnostics tests (#90821)
Co-authored-by: Hans Oischinger <hans.oischinger@gmail.com>
2023-04-22 21:29:40 +02:00
epenet
98b1005b63 Ensure config entries are unloaded in tests (#90850) 2023-04-22 21:26:07 +02:00
Michael
4ed23b18e3 Add entity name translations to Supervisor (#90937) 2023-04-22 21:17:00 +02:00
epenet
41f8f9fcad Fix lingering timer in yeelight SSDP discovery (#91694) 2023-04-22 21:13:36 +02:00
epenet
102613a1af Fix lingering timer in wiz (#91745) 2023-04-22 21:12:48 +02:00
Michael
957181d38f Correct unit of measurement for Synology DSM sensors (#90633) 2023-04-22 21:11:03 +02:00
Ernst Klamer
328b79a4af Add events to BTHome (#91691)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-22 14:10:27 -05:00
Franck Nijhof
ca76285bcf CI: Cancel concurrent Wheel jobs (#91867) 2023-04-22 20:56:52 +02:00
Franck Nijhof
0f80d0625a Wheels: Don't build azure-servicebus on cp311 (#91862) 2023-04-22 19:29:42 +02:00
Michael
fe2c11a698 Add diagnostics to PI-Hole (#91383) 2023-04-22 19:29:28 +02:00
jjlawren
d5a6840588 Create repair issue if Sonos subscriptions fail (#87437)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-04-22 19:28:04 +02:00
David Poll
93a87d3c82 Add device_trackers attribute to person entities (#91312) 2023-04-22 19:26:12 +02:00
Tristan Richard
94a1429c65 Update Egardia to support more devices (#91430)
Co-authored-by: Tristan Richard <trichard@jabra.com>
2023-04-22 19:10:17 +02:00
Christopher Bailey
512e03746b Bump pyunifiprotect to 4.8.2 (#91861) 2023-04-22 18:44:27 +02:00
Paulus Schoutsen
d4fb2cdcf7 Conversation list command to support match-all languages agents (#91844)
* Conversation list command to support match-all languages agnets

* Reuse var
2023-04-22 12:43:09 -04:00
Matthias Alphart
95d44e100b Update xknx to 2.9.0 (#91282)
* Update xknx to 2.8.0

* add tests for validators

* Update strings.json

* Update xknx to 2.9.0
2023-04-22 18:25:14 +02:00
András Rutkai
2e9dc209f9 Updated list of supported voices in Watson TTS integration (#91458) 2023-04-22 18:11:18 +02:00
Maciej Bieniek
8389086388 Add new parental control switches for NextDNS (#91507) 2023-04-22 18:09:54 +02:00
MarkGodwin
e19c6ac011 Bump tplink-omada-client to 1.2.4 (#91853) 2023-04-22 18:09:02 +02:00
Jan Bouwhuis
8910afa474 Substate will never be None when subscribing mqtt topics (#91856) 2023-04-22 17:54:39 +02:00
mkmer
cb87942b28 Bump whirlpool-sixth-sense to 0.18.3 (#91859) 2023-04-22 17:53:04 +02:00
J. Nick Koston
3beb6e9718 Add webhook support to onvif (#91485) 2023-04-22 17:49:41 +02:00
Franck Nijhof
a491859875 Several changes to Wheels building for the cp311 ABI (#91850) 2023-04-22 17:23:02 +02:00
epenet
60d7ea6f0d Use SnapshotAssertion in 1-wire tests (#90782) 2023-04-22 17:22:05 +02:00
epenet
b568dd3060 Refactor SnapshotAssertion is SFR Box (#90775) 2023-04-22 17:20:27 +02:00
Maciej Bieniek
ee23d79a00 Add air quality sensors to Accuweather integration (#91516) 2023-04-22 17:19:21 +02:00
Franck Nijhof
20a42c65cf CI: Add automatic retries to codecov upload action (#91857) 2023-04-22 17:16:43 +02:00
starkillerOG
228233ae0c Bump reolink-aio to v0.5.13 (#91550) 2023-04-22 16:14:36 +02:00
Franck Nijhof
f39f07e19b Update YARL to 1.9.1 (#91852) 2023-04-22 09:14:27 -04:00
Lucas
48a2fe9e7a Add more PrusaLink sensors (#80424)
* Add more PrusaLink sensors

* Disable prusalink target temperatures by default, add prusa to brands

* Disable prusalink z-height by default

* Remove uneccessary Prusa from brands

* Move target temperatures to the telemetry section of the sensor

* Fix entity naming for prusalink

* Add tests for new prusalink sensors

* Test fixes, fix rebase errors

* Clean up deprecated unit usage

* Add translations for entity names

* Fix tests for translations

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-04-22 09:04:10 -04:00
J. Nick Koston
b76551cf35 Reduce number of columns selected for logbook (#91718) 2023-04-22 14:25:22 +02:00
J. Nick Koston
34b824a27b Reduce number of columns when selecting attributes for history (#91717) 2023-04-22 14:21:08 +02:00
J. Nick Koston
6e628d2f06 Add a negative cache to the recorder event type manager (#91770) 2023-04-22 14:09:04 +02:00
starkillerOG
8544d73b88 Reolink doorbell extend features (#90469) 2023-04-22 13:57:10 +02:00
Jan Bouwhuis
9197316b57 Add tests mqtt light with single supported color_mode (#91811) 2023-04-22 13:55:43 +02:00
J. Nick Koston
b5fbbf8410 Speed up processing binary columns on SQLite/MariaDB/MySQL (#91818) 2023-04-22 13:55:11 +02:00
Jan Bouwhuis
fc0c8bf113 Improve comment on patching the _import method in test bootstrap dependencies test (#91848) 2023-04-22 13:40:38 +02:00
Bouwe Westerdijk
624b8d1cbd Bump plugwise to v0.31.0 (#91831) 2023-04-22 12:59:47 +02:00
Jan Bouwhuis
ad355b3396 Remove unreachable code in mqtt integration discovery (#91796) 2023-04-22 12:31:32 +02:00
J. Nick Koston
7a02e992f9 Bump sense_energy to 0.11.2 (#91836) 2023-04-22 12:12:16 +02:00
J. Nick Koston
95fcdc5684 Speed up sql queries where ORM rows are not needed (#91839)
* Speed up logbook and history queries where ORM rows are not needed

This avoids having sqlalchemy wrap Result in ChunkedIteratorResult
which has additional overhead we do not need for these cases

* more places

* anything that uses _sorted_statistics_to_dict does not need orm rows either
2023-04-21 23:28:07 -04:00
J. Nick Koston
2663901603 Speed up LazyEventPartialState for logbook (#91840)
* Speed up LazyEventPartialState for logbook

We should avoid the getattr call since every row would
have to call the sqlalchemy key not found implemention
if we blindly getattr

* Speed up LazyEventPartialState for logbook

We should avoid the getattr call since every row would
have to call the sqlalchemy key not found implemention
if we blindly getattr
2023-04-21 23:27:23 -04:00
Erik Montnemery
9a0de43f98 Add name to tts voices (#91814)
* Add name to tts voices

* Add new file
2023-04-21 20:41:14 -04:00
Paulus Schoutsen
cdbdf1ba4f 2023.4.6 (#91833) 2023-04-21 20:31:05 -04:00
Aaron Bach
c6d846453d Bump aionotion to 2023.04.2 to address imminent API change (#91786)
* Bump `aionotion` to 2023.04.0

* Bump `aionotion` to 2023.04.2 to address imminent API change

* Clean migration

* Reduce blast area

* Fix tests

* Better naming
2023-04-21 19:52:57 -04:00
J. Nick Koston
d58f62cb5e Remove old migration tests that have been replaced (#91842)
These tests were moved to test_migration_from_schema_32.py in `dev`
and have changed. Remove the old tests as they are no longer
correct
2023-04-21 19:12:21 -04:00
Paulus Schoutsen
f1c4605fba Bumped version to 2023.4.6 2023-04-21 14:58:46 -04:00
Paulus Schoutsen
deb55a74da Disallow uploading files to bypass the media dirs (#91817) 2023-04-21 14:58:42 -04:00
Allen Porter
30da629285 Relax the constraint that events must have a consistent timezone for start/end (#91788) 2023-04-21 14:58:41 -04:00
Stephan Uhle
26b28001c5 Bump pysml to 0.0.10 (#91773) 2023-04-21 14:58:40 -04:00
Nathan Spencer
64f8059f00 Bump pylitterbot to 2023.4.0 (#91759) 2023-04-21 14:58:39 -04:00
Jan Bouwhuis
8363183943 Do not wait for mqtt at startup mqtt_statestream (#91721) 2023-04-21 14:58:38 -04:00
Teemu R
e19279fda5 Bump python-songpal dependency (#91708) 2023-04-21 14:58:38 -04:00
J. Nick Koston
591ffe2340 Fallback to generating a new ULID on migraiton if context is missing or invalid (#91704)
* Fallback to generating a new ULID on migraiton if context is missing or invalid

It was discovered that postgresql will do a full scan if
there is a low cardinality on the index because of missing
context ids. We will now generate a ULID for the timestamp
of the row if the context data is missing or invalid

fixes #91514

* tests

* tweak

* tweak

* preen
2023-04-21 14:58:37 -04:00
Shay Levy
fc4e8e5e7b Bump aioshelly to 5.3.2 (#91679) 2023-04-21 14:58:36 -04:00
J. Nick Koston
36d2accb5b Handle long format context UUIDs during migration (#91657)
In https://github.com/home-assistant/core/issues/91514 is was discovered
these exist in older versions
2023-04-21 14:58:07 -04:00
epenet
38de9765df Bump renault-api to 0.1.13 (#91609) 2023-04-21 14:55:51 -04:00
Duco Sebel
6b02892c28 Handle UnsupportedError in HomeWizard (#91608)
* Handle UnsupportedEror

* Make error message more clear

* Remove debug line, whoops
2023-04-21 14:55:50 -04:00
Tom Harris
c544da7426 Fix Insteon thermostat issue (#91568)
* Bump pyinsteon

* Bump pyinsteon

* Bump pyinsteon
2023-04-21 14:55:49 -04:00
Aaron Godfrey
71f0f53ddc Fix tasks with no due date from not triggering on calendar state. (#91196)
Fix tasks with no due date.

Prior to this change we were setting the start date/time to utc rather
than the user's timezone.
2023-04-21 14:55:48 -04:00
Jan Bouwhuis
4de124cdd5 Follow up on comments on changes bootstrap tests (#91803)
* Remove commented code

* Add comment to explain mock

* typo
2023-04-21 21:44:14 +03:00
Franck Nijhof
5e243da470 Clean up gateway logic from Plugwise (#91769) 2023-04-21 21:38:45 +03:00
epenet
33a8eb1716 Add type hints to broadlink device/heartbeat (#91737)
* Add type hints to broadlink device/heartbeat

* Improve

* Force bool

* Revert "Force bool"

This reverts commit 65bce837d0.
2023-04-21 21:36:18 +03:00
CodingSquirrel
6137aeb30a Bump pyeconet to 0.1.20 (#90950)
chore: Bump pyeconet to 0.1.20 to fix reloading values
2023-04-21 19:25:00 +02:00
epenet
24428d98a1 Fix lingering timer in smartthings tests (#91697) 2023-04-21 18:58:07 +02:00
epenet
3d39854ffc Fix lingering timer in traccar (#91812) 2023-04-21 18:49:54 +02:00
epenet
4663ad75a0 Fix lingering timer in tplink (#91806) 2023-04-21 16:52:23 +02:00
epenet
07aef27ea8 Fix lingering timer in todoist (#91808) 2023-04-21 16:41:54 +02:00
Allen Porter
93eac97983 Relax the constraint that events must have a consistent timezone for start/end (#91788) 2023-04-21 10:25:52 -04:00
Paulus Schoutsen
78e29d526c Disallow uploading files to bypass the media dirs (#91817) 2023-04-21 10:21:20 -04:00
epenet
9665bc61f2 Fix lingering timer in usb (#91800) 2023-04-21 13:41:22 +02:00
Kevin Stillhammer
609a7ccda8 Use Selectors for waze_travel_time flows (#91778)
* Use Selectors for waze_travel_time flows

* Use correct selector option in tests

* Remove duplicate option

* Use suggested values
2023-04-21 12:57:45 +02:00
Franck Nijhof
3b0068bc85 Update opencv-python-headless to 4.7.0.72 (#91802) 2023-04-21 12:23:46 +02:00
Franck Nijhof
5b9ad6a6d3 Update psutil to 5.9.5 (#91807) 2023-04-21 12:06:28 +02:00
epenet
459af7f834 Fix lingering timer in discovery (#91804)
* Fix lingering timer in discovery

* type hint
2023-04-21 11:49:10 +02:00
Miroslav Ždrale
2198492f1b Bump openwrt-luci-rpc version to 1.1.16 (#91358) 2023-04-21 11:27:26 +02:00
Eduard van Valkenburg
09517668fe Update pysiaalarm to 3.1.0 (#91500)
* updated sia requirements

* updates because of changes in package

* linting and other small fixes

* linting and other small fixes

* small release on package that fixes issue with autospec
2023-04-21 10:51:49 +02:00
dependabot[bot]
faf78fc6b1 Bump codecov/codecov-action from 3.1.2 to 3.1.3 (#91791)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-21 10:48:28 +02:00
dependabot[bot]
0e2541c843 Bump actions/setup-python from 4.5.0 to 4.6.0 (#91792)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-21 10:47:35 +02:00
Franck Nijhof
7af63c2cdf Remove libexecinfo-dev package from Wheels jobs (#91798) 2023-04-21 10:36:13 +02:00
epenet
79ad9a3646 Shutdown coordinator on entry unload (#91748)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-21 10:07:31 +02:00
Franck Nijhof
a37a87e972 Build wheels for CPython ABI cp311 (#91736) 2023-04-21 09:10:39 +02:00
Jan Bouwhuis
92bb61d25b Let MQTT availability for snips be managed by dependencies (#91790)
MQTT availability for snips via dependencies
2023-04-21 09:05:13 +02:00
Jan Bouwhuis
0552ec834d Do not wait for mqtt at startup mqtt_statestream (#91721) 2023-04-21 09:00:48 +02:00
Jan Bouwhuis
da26b0a930 Ensure dependencies are awaited correctly when setting up integrations (#91454)
* Do not wait

* Correct tests

* Manage after dependencies stage 1

* test bootstrap dependencies

* Assert log the dependenciy is waited for

* Improve docstrings

* Assert outside callback

* Patch async_get_integrations

* Revert changes made to snips integration

* Undo changes to mqtt_statestream
2023-04-21 08:33:50 +02:00
J. Nick Koston
2e18b37291 Bump dbus-fast to 1.85.0 (#91784) 2023-04-21 08:26:44 +02:00
puddly
72414a5864 Load quirks in ZHA unit tests (#91779) 2023-04-21 08:24:39 +02:00
Franck Nijhof
f9416e1c34 Update sentry-sdk to 1.20.0 (#91771) 2023-04-21 08:23:09 +02:00
Stephan Uhle
beb0085b53 Bump pysml to 0.0.10 (#91773) 2023-04-21 08:16:32 +02:00
Franck Nijhof
65d7e48815 Update ruff to v0.0.262 (#91767) 2023-04-21 08:15:41 +02:00
kernelpanic85
7a20335943 Bump arcam-fmj to 1.3.0 (#91747)
Bump arcam-fmj to 1.3.0
2023-04-21 07:08:00 +02:00
Martin Hjelmare
1a18dc7425 Add tts entity (#91692)
* Add tts entity

* Allow passing engine id to url view

* Update async_resolve_engine

* Add and update more tests

* Fix assist pipeline tests temporarily

* Move fixtures

* Update notify platform

* Complete legacy tests

* Update media source tests

* Update async_get_text_to_speech_languages

* Address comment

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-20 22:55:46 -04:00
J. Nick Koston
458276a6a6 Bump aioesphomeapi to 13.7.1 (#91783)
changelog: https://github.com/esphome/aioesphomeapi/compare/v13.7.0...v13.7.1
2023-04-20 16:36:11 -10:00
J. Nick Koston
c407fb0861 Bump recommended esphome version to 2023.4.0 for bluetooth (#91509) 2023-04-20 15:36:12 -10:00
Michael Hansen
5080654776 VoIP listening tone and "not configured" message (#91762)
* Play tone when starting a VoIP call

* Play audio message when call is rejected

* Add option to disable tone for tests

* Send RTP audio in executor to reduce jitter

* Don't start pipeline until speech

* Bump voip utils
2023-04-20 20:30:51 -04:00
Keilin Bickar
f4f3962ee9 Bump asyncsleepiq lib to 1.3.3 (#91772) 2023-04-20 12:01:49 -10:00
epenet
2aa90b1d12 Fix lingering timer in netatmo (#91728) 2023-04-20 21:00:24 +02:00
Teemu R
dcae9a0d02 Bump python-songpal dependency (#91708) 2023-04-20 20:57:45 +02:00
epenet
821b9bdb5f Fix lingering timer in hassio (#91702) 2023-04-20 20:56:45 +02:00
Jannick
cf4c491e79 Update URLs forwarding to HA blog posts (#91698) 2023-04-20 20:55:13 +02:00
epenet
62f76a81bb Fix wallbox tests (#91752) 2023-04-20 08:42:22 -10:00
Franck Nijhof
fd3aa5338c Add Supervisor add-on discovery to Wyoming integration (#91761) 2023-04-20 20:38:39 +02:00
Nathan Spencer
8ac74c5979 Bump pylitterbot to 2023.4.0 (#91759) 2023-04-20 20:29:35 +02:00
Michael Hansen
9fdc794b36 Prefer country over language family + MATCH_ALL (#91753)
* Prefer country over language family

* More test fixes
2023-04-20 13:55:26 -04:00
Kevin McCormack
672fb44041 Add pjlink const (#91749)
* Add pjlink const

This is a precursor

* Use DOMAIN const in pjlink media player

* fixup! Add pjlink const
2023-04-20 19:27:44 +02:00
Erik Montnemery
b3d50e67cd Fix assist_pipeline tests (#91757) 2023-04-20 12:19:31 -04:00
epenet
62d38b49bc Fix lingering timers in bluetooth (part 1) (#91673)
* Fix lingering timers in bluetooth (part 1)

* Use a local var
2023-04-20 18:07:38 +02:00
Erik Montnemery
0525ce59d7 Add additional parameters to assist pipelines (#91619)
* Add additional parameters to assist pipelines

* Improve WS schema validation

* Tweak

* Add test

* Address review comments
2023-04-20 11:02:55 -04:00
Luke
b4e0a1f1fc Add new Roborock Integration (#89456)
* init roborock commit

* init commit of roborock

* removed some non-vacuum related code

* removed some non-needed constants

* removed translations

* removed options flow

* removed manual control

* remove password login

* removed go-to

* removed unneeded function and improved device_stat

* removed utils as it is unused

* typing changes in vacuum.py

* fixed test patch paths

* removed unneeded records

* removing unneeded code in tests

* remove password from strings

* removed maps in code

* changed const, reworked functions

* remove menu

* fixed tests

* 100% code coverage config_flow

* small changes

* removed unneeded patch

* bump to 0.1.7

* removed services

* removed extra functions and mop

* add () to configEntryNotReady

* moved coordinator into seperate file

* update roborock testing

* removed stale options code

* normalize username for unique id

* removed unneeded variables

* fixed linter problems

* removed stale comment

* additional pr changes

* simplify config_flow

* fix config flow test

* Apply suggestions from code review

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* First pass at resolving PR comments

* reworked config flow

* moving vacuum attr

* attempt to clean up conflig flow more

* update package and use offline functionality

* Fixed errors and fan bug

* rework model and some other small changes

* bump version

* used default factory

* moved some client creation into coord

* fixed patch

* Update homeassistant/components/roborock/coordinator.py

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* moved async functions into gather

* reworked gathers

* removed random line

* error catch if networking doesn't exist or timeout

* bump to 0.6.5

* fixed mocked data reference url

* change checking if we have no network information

Co-authored-by: Allen Porter <allen.porter@gmail.com>

---------

Co-authored-by: Allen Porter <allen.porter@gmail.com>
Co-authored-by: Allen Porter <allen@thebends.org>
2023-04-20 07:02:58 -07:00
Erik Montnemery
af193094b5 Add WS command for getting an assist pipeline (#91725)
* Add WS command for getting an assist pipeline

* Return preferred pipeline if none is specified
2023-04-20 09:15:19 -04:00
Franck Nijhof
a419c78524 Rename HomeKit to HomeKit Bridge (#91741) 2023-04-20 09:03:12 -04:00
Erik Montnemery
a98be9dc84 Test specifying pipeline in calls to async_pipeline_from_audio_stream (#91739) 2023-04-20 09:01:31 -04:00
Erik Montnemery
0429b321b8 Include matching languages in WS conversation/agent/list (#91730)
* Include matching languages in WS conversation/agent/list

* Allow specifying country
2023-04-20 08:58:43 -04:00
Erik Montnemery
768c499b6f Include matching languages in WS stt/engine/list (#91731)
* Include matching languages in WS stt/engine/list

* Allow specifying country
2023-04-20 08:57:48 -04:00
Erik Montnemery
79de27a4a9 Include matching languages in WS tts/engine/list (#91732)
* Include matching languages in WS tts/engine/list

* Allow specifying country
2023-04-20 08:56:50 -04:00
Erik Montnemery
6d619579b4 Add WS API for listing languages supported by a full assist pipeline (#91669)
* Add WS API for listing languages supported by a full assist pipeline

* Address review comments, change logic
2023-04-20 08:55:17 -04:00
Erik Montnemery
03dcb915e3 Add missing callback decorator on StorageCollectionWebsocket.ws_list_item (#91727) 2023-04-20 07:58:11 -04:00
epenet
bb2461ea93 Fix lingering timers in bluetooth (part 2) (#91674) 2023-04-20 11:04:07 +02:00
Franck Nijhof
d8c9ed3a64 Update Home Assistant base image to 2023.04.0 (#91720) 2023-04-20 10:57:18 +02:00
Jan Bouwhuis
0bcda9fe9c Make sure MQTT client is available when starting depending platforms (#91164)
* Make sure MQTT is available starting mqtt_json

* Wait for mqtt client

* Sync client connect

* Simplify

* Addiitional tests async_wait_for_mqtt_client

* Improve comment waiting for mqtt

* Improve docstr

* Do not wait unless the MQTT client is in setup

* Handle entry errors during setup

* More comments - do not clear event

* Add snips and mqtt_room

* Add manual_mqtt

* Update homeassistant/components/mqtt/__init__.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Use a fixture, improve tests

* Simplify

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-20 08:07:35 +02:00
J. Nick Koston
adc472862b Fallback to generating a new ULID on migraiton if context is missing or invalid (#91704)
* Fallback to generating a new ULID on migraiton if context is missing or invalid

It was discovered that postgresql will do a full scan if
there is a low cardinality on the index because of missing
context ids. We will now generate a ULID for the timestamp
of the row if the context data is missing or invalid

fixes #91514

* tests

* tweak

* tweak

* preen
2023-04-19 21:56:07 -04:00
J. Nick Koston
56a6244d90 Remove legacy context lookup implementation from logbook (#91710)
* Remove legacy context lookup implemention from logbook

This object can now be replaced with a simple dict

* Remove legacy context lookup implemention from logbook

This object can now be replaced with a simple dict

* scope

* fix order issue
2023-04-19 21:54:34 -04:00
Mike Degatano
24fe6dfc63 Fix from feedback on supervisor issues to repairs (#91680)
* Fix from feedback on supervisor issues to repairs

* Use cls parameter in classmethods
2023-04-20 01:02:40 +02:00
Paulus Schoutsen
6342992791 Detect eero brand for Thread (#91699) 2023-04-19 22:18:09 +02:00
epenet
8d35426c69 Fix lingering timer in ZHA cluster tests (#91693) 2023-04-19 21:04:53 +02:00
epenet
2df5d34374 Fix lingering timer in unifiprotect discovery (#91695) 2023-04-19 21:02:37 +02:00
Shay Levy
54a659c51b Bump aioshelly to 5.3.2 (#91679) 2023-04-19 20:26:45 +03:00
epenet
1797dca0b8 Fix lingering timer in ZHA tests (#91688)
* Fix lingering timer in ZHA discovery tests

* Add type hints

* Also update gateway tests
2023-04-19 13:00:25 -04:00
epenet
d70ae8afc5 Fix lingering timer in ZHA debouncers (#91685) 2023-04-19 18:45:27 +02:00
epenet
ec914815bd Fix lingering timer in ZHA light transition (#91683) 2023-04-19 18:20:17 +02:00
epenet
dace1add1f Fix lingering timer in SinopeTechnologiesThermostat (#91681) 2023-04-19 18:19:58 +02:00
Erik Montnemery
4e0b8a7363 Allow complex schemas for validating WS commands (#91655) 2023-04-19 11:37:09 -04:00
J. Nick Koston
90e92aa9d8 Add test case for matching the shelly button (#91642) 2023-04-19 11:26:21 -04:00
J. Nick Koston
573c15d67a Update bluetooth debug logging for newer bleak (#91643)
fixes

```
homeassistant/components/bluetooth/wrappers.py:268: FutureWarning: BLEDevice.rssi is deprecated and will be removed in a future version of Bleak, use AdvertisementData.rssi instead
  rssi = wrapped_backend.device.rssi
```
2023-04-19 11:26:02 -04:00
J. Nick Koston
f8fa382ebc Add test coverage for bluetooth devices being rediscoverable after they go unavailable (#91645)
* Fix bluetooth devices not being discovered after they go unavailable and reavailable

* Update homeassistant/components/bluetooth/manager.py
2023-04-19 11:25:38 -04:00
Erik Montnemery
b5ab83def4 Add test for WS conversation/agent/info (#91652) 2023-04-19 11:15:21 -04:00
Duco Sebel
9092f6a60f Handle UnsupportedError in HomeWizard (#91608)
* Handle UnsupportedEror

* Make error message more clear

* Remove debug line, whoops
2023-04-19 11:14:28 -04:00
epenet
55c723753e Cleanup device handles on ZHA controller shutdown (#91591) 2023-04-19 17:13:58 +02:00
Erik Montnemery
9bd739df82 Add assist_pipeline to default_config (#91651) 2023-04-19 10:59:43 -04:00
Erik Montnemery
eabbe8969d Adjust typing of AbstractConversationAgent.supported_languages (#91648)
* Adjust typing of AbstractConversationAgent.supported_languages

* Update test
2023-04-19 10:53:49 -04:00
Erik Montnemery
5e9bbeb4ad Refactor conversation agent WS API for listing agents (#91590)
* Refactor conversation agent WS API for listing agents

* Add conversation/agent/info back
2023-04-19 10:53:24 -04:00
David F. Mulcahey
9c784ac622 Refactor ZHA (#91476)
* rename channel -> cluster handler

* remove refs to channels and create endpoint class

* remove remaining references to channels

* fix filter

* take in latest changes from #91403

* missed one

* missed a reference
2023-04-19 10:47:07 -04:00
Erik Montnemery
090f59aaa2 Make context a mandatory parameter for async_pipeline_from_audio_stream (#91658) 2023-04-19 09:30:29 -04:00
Tom Harris
ebd20c8a7b Fix Insteon thermostat issue (#91568)
* Bump pyinsteon

* Bump pyinsteon

* Bump pyinsteon
2023-04-19 08:41:32 -04:00
J. Nick Koston
408b2171ae Handle long format context UUIDs during migration (#91657)
In https://github.com/home-assistant/core/issues/91514 is was discovered
these exist in older versions
2023-04-19 08:40:04 -04:00
Joost Lekkerkerker
162c36f108 Move Steam Entity to separate file (#91630) 2023-04-19 14:14:59 +02:00
Joost Lekkerkerker
88f5f04be8 Refactor LastFM to use shorthand attributes (#91606)
* Preliminary PR for the coordinator

* Preliminary PR for the coordinator

* Preliminary PR for the coordinator

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Preliminary PR for the coordinator

* Preliminary PR for the coordinator

* Preliminary PR for the coordinator

* Preliminary PR for the coordinator

* Preliminary PR for the coordinator

* Preliminary PR for the coordinator

* Preliminary PR for the coordinator

* Apply feedback

* Apply feedback

* Apply feedback

* Apply feedback

* Apply feedback

* Update homeassistant/components/lastfm/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/lastfm/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Apply feedback

* Apply feedback

* Fix tests

* Update homeassistant/components/lastfm/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Fix tests

* Fix feedback

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-19 14:13:43 +02:00
Erik Montnemery
f3e6d6dfc0 Add async_get_supported_voices to tts.Provider (#91649)
* Add async_get_supported_voices to tts.Provider

* Update WS API
2023-04-19 13:47:49 +02:00
Michael Hansen
85d57a046c Add wyoming integration with stt (#91579)
* Add wyoming integration with stt/tts

* Forward config entry setup

* Use SpeechToTextEntity

* Add strings to config flow

* Move connection into config flow

* Add tests

* On load/unload used platforms

* Tweaks

* Add unload test

* Fix stt

* Add missing file

* Add test for no services

* Improve coverage

* Finish test coverage

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-19 06:10:59 -04:00
G Johansson
f74103c57e Add config flow to Workday (#72558)
* Initial commit Workday Config Flow

* Add tests

* Remove day_to_string

* new entity name, new depr. version, clean

* Use repairs for depr. warning

* Fix issue_registry moved

* tweaks

* hassfest

* Fix CI

* FlowResultType

* breaking version

* remove translation

* Fixes

* naming

* duplicates

* abort entries match

* add_suggested_values_to_schema

* various

* validate country

* abort_entries_match in option flow

* Remove country test

* remove country not exist string

* docstring exceptions

* easier

* break version

* unneeded check

* slim tests

* Fix import test

* Fix province in abort_match

* review comments

* Fix import province

* Add review fixes

* fix reviews

* Review fixes
2023-04-19 11:50:11 +02:00
Mike Degatano
a511e7d6bc Make repairs out of select supervisor issues (#90893)
* Make repairs out of select supervisor issues

* Fix comment formatting

* Add a test case for API error

* Testing and type fix
2023-04-19 08:07:38 +02:00
Michael Hansen
6b5e82ed40 Support both stt entity and legacy providers (#91633) 2023-04-18 16:59:06 -05:00
Erik Montnemery
dc3c47986b Add property supported_languages to AbstractConversationAgent (#91588)
* Add property supported_languages to AbstractConversationAgent

* Fix test

* Use MATCH_ALL for openai supported languages
2023-04-18 15:11:04 -05:00
epenet
d7eb4c4740 Bump renault-api to 0.1.13 (#91609) 2023-04-18 19:33:09 +02:00
epenet
1a787bba3f Remove webhook translation file (#91616) 2023-04-18 19:29:37 +02:00
epenet
ae0cbffdd8 Add ability to shutdown update coordinator (#91456)
* Add ability to shutdown update coordinator

* Adjust nibe_heatpump

* Add tests

* Use async

* Remove duplicate code in update coordinator

* Adjust

* Revert nibe changes - it can now be done in a follow-up PR

* Adjust

* Fix incorrect merge

* async_fire_time_changed
2023-04-18 18:56:43 +02:00
Erik Montnemery
bdffb1f298 Drop language parameter from async_get_pipeline (#91612) 2023-04-18 18:07:20 +02:00
Erik Montnemery
10606c4d1e Use the preferred assist pipeline if none was specified (#91611)
* Use the preferred assist pipeline if none was specified

* Add test
2023-04-18 17:35:33 +02:00
Erik Montnemery
016e051db6 Add timestamp to pipeline runs (#91599)
* Add timestamp to pipeline runs

* Include the timestamp in the list
2023-04-18 10:43:46 -04:00
Jan Bouwhuis
4132f08146 Remove check on remove deprecated call back for mqtt subscribe (#91464)
Remove check on deprecated callback wrapper
2023-04-18 16:02:24 +02:00
Erik Montnemery
5f7d98f15b Improve comment in conversation (#91595) 2023-04-18 09:27:14 -04:00
J. Nick Koston
03c517b066 Add a guard against selecting all entities in state_changes_during_period (#91585)
Add a guard against selecting all entities in state_changes_during_period

This cannot happen in `dev` because we require entity ids
2023-04-18 09:26:41 -04:00
Paulus Schoutsen
f3897d8dae Bump hass-nabucasa to 0.65.0 (#91565) 2023-04-18 08:42:03 -04:00
Jan Bouwhuis
599cc4a5c6 Cleanup MQTT platform set up and discovery start (#91007)
Cleanup platform set up and discovery start
2023-04-18 14:33:58 +02:00
J. Nick Koston
2ec1359063 Dynamically size recorder max backlog based on available memory (#90894)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-04-18 12:35:49 +02:00
Sander Striker
f49dc65ff2 EasyEnergy: Add two additional sensors to help pick the best hours (#90543) 2023-04-18 10:18:51 +02:00
J. Nick Koston
2530031454 Use cache to lookup event type ids in logbook (#91576)
noticed we can speed this up while looking at
https://github.com/home-assistant/core/issues/91514

Note: this will not fix that issue as there is more going on there
2023-04-17 23:40:03 -04:00
Michael Hansen
f96515b90a Use language util in stt/tts (#91521)
* Use language util in stt/tts

* Test language util in stt/tts

* Fix common in TTS

* Update snapshot
2023-04-17 23:23:43 -04:00
Michael Hansen
95d16c9829 VoIP audio queue (#91577)
* Clear audio queue after every conversation turn

* Stream STT audio when voice command starts
2023-04-17 22:51:14 -04:00
Jesse Hills
aeb19831d2 ESPHome select for assist pipeline selection (#91526)
* ESPHome: Add assist pipeline select entity

* Add translation strings

* Tests
2023-04-17 22:22:11 -04:00
Paulus Schoutsen
b05fcd7904 2023.4.5 (#91544) 2023-04-17 22:20:19 -04:00
shbatm
ef7e3e27ba Remove previously deprecated ISY994 YAML support (#91575) 2023-04-17 15:37:19 -10:00
Jesse Hills
8d201b205f ESPHome binary sensor representing assist pipeline running (#91406)
* ESPHome binary sensor representing assist pipeline running

* Apply suggestions from code review

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Rename to call active
Simplify with attrs a little

* Load binary sensor if voice assistant on device

* Add some tests

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-17 19:52:37 -04:00
epenet
28652345bd Remove duplicate code in update coordinator (#91573) 2023-04-17 13:07:58 -10:00
Bram Kragten
c6b4c88355 Fix pipeline select (#91570)
Fix pipline select
2023-04-17 18:55:38 -04:00
shbatm
c663f7677c Remove previously deprecated ISY994 services (#91569) 2023-04-17 11:43:01 -10:00
J. Nick Koston
da4c144a5e Fix history stats query using incorrect microseconds (#91250) 2023-04-17 11:37:30 -10:00
epenet
81f018b7e5 Make Debouncer shutdown async (#91542)
* Make shutdown async in Debouncer

* Adjust test
2023-04-17 23:31:30 +02:00
Erik Montnemery
e32dacc62d Add WS API to tts (#91330)
* Add WS API to tts

* Use language util, change from entity_id to engine_id

* Fix rebase mistake
2023-04-17 22:52:19 +02:00
Michael Hansen
2819ad9a16 Bump intents dependency (#91556) 2023-04-17 22:13:31 +02:00
Erik Montnemery
b5817e40f7 Add WS API to stt (#91329) 2023-04-17 22:09:30 +02:00
Bram Kragten
e3ff7d048a Make tts/stt/conversation optional on pipeline (#91555) 2023-04-17 20:54:04 +02:00
G Johansson
afc9e4303a Create base TriggerEntity (#91128)
* Trigger entity base class

* mods

* TriggerEntity to CoordinatorTriggerEntity

* variables to variable

* mypy

* unique_id

* Fix

* docstring

* _render_templates

* split manual vs coordinator

* name

* ManualTriggerEntity

* value

* use super

* Remove ManualTriggerEntity

* Use super()
2023-04-17 19:55:54 +02:00
Paulus Schoutsen
bd22e0bd43 Allow picking a pipeline for voip devices (#91524)
* Allow picking a pipeline for voip device

* Add tests

* Fix test

* Adjust on new pipeline data
2023-04-17 12:09:11 -05:00
Martin Hjelmare
9bd12f6503 Move legacy tts (#91538)
* Move legacy tts

* Add error log on unknown platform

* Add legacy tests and delint all tests

* Consolidate log format

* Add more legacy tests

* Test default legacy provider attributes

* Remove test generated files

* Clean up after merge conflict
2023-04-17 13:01:50 -04:00
Erik Montnemery
0ecd23baee Add WS API for debugging previous assist_pipeline runs (#91541)
* Add WS API for debugging previous assist_pipeline runs

* Improve typing
2023-04-17 11:48:02 -04:00
Erik Montnemery
b597415b01 Make it non-optional to implement supported_languages in tts.Provider (#91347) 2023-04-17 10:59:21 -04:00
Erik Montnemery
8c1c7e1e4c Remove PipelineEvent.as_dict (#91546) 2023-04-17 16:33:53 +02:00
Franck Nijhof
940861e2be Bumped version to 2023.4.5 2023-04-17 15:37:08 +02:00
Christopher Bailey
559ce6a275 Bump unifiprotect to 4.8.1 (#91522) 2023-04-17 15:36:51 +02:00
rappenze
273e1fd2be Fix state mapping in fibaro climate (#91505) 2023-04-17 15:36:48 +02:00
Ben Morton
5ddc18f8ed Resolve issue with switchbot blind tilt devices getting stuck in opening/closing state (#91495) 2023-04-17 15:36:44 +02:00
J. Nick Koston
489a6e766b Fix onvif failing to reload (#91482) 2023-04-17 15:36:40 +02:00
starkillerOG
572f2cc167 Reolink ONVIF move read to primary callback (#91478)
* Move read to primary callback

* fix styling

* Do not raise on ConnectionResetError

* Split request.text() to .read() and decode("utf-8")
2023-04-17 15:36:37 +02:00
J. Nick Koston
5321c60058 Handle a few more transient onvif errors (#91473) 2023-04-17 15:36:33 +02:00
J. Nick Koston
00a86757fa Bump onvif-zeep-async to 1.2.11 (#91472) 2023-04-17 15:36:30 +02:00
J. Nick Koston
b06d624d43 Fix creating onvif pull point subscriptions when InitialTerminationTime is required (#91470)
* Fix creating onvif pull point subscriptions when InitialTerminationTime is required

fixes #85902

* Bump again because I got it wrong the first time.. this is why retest is good
2023-04-17 15:36:26 +02:00
Michael Davie
89b1d5bb68 Bump env_canada to v0.5.33 (#91468) 2023-04-17 15:36:22 +02:00
Erik Montnemery
bf389440dc Save Thread dataset store when changing preferred dataset (#91411) 2023-04-17 15:36:18 +02:00
puddly
2b9cc39d2b Fix attribute reporting config failures in ZHA (#91403) 2023-04-17 15:36:15 +02:00
J. Nick Koston
afe3fd5ec0 Bump onvif-zeep-async to 1.2.5 (#91399) 2023-04-17 15:36:11 +02:00
Aidan Timson
e29d5a1356 Fix listener running in foreground for System Bridge integration (#91391)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-17 15:36:08 +02:00
rich-kettlewell
5f7b447d7a Tado set_water_heater_timer should use water_heater domain (#91364) 2023-04-17 15:36:03 +02:00
epenet
0e3f462bfb Add missing mock in sharkiq tests (#91325) 2023-04-17 15:33:52 +02:00
starkillerOG
8feab57d59 Reolink prevent ONVIF push being lost due to ConnectionResetError (#91070)
* Make "Connection lost" error less likely

* Handle connection loss during ONVIF event reading

* tweak

* fix styling

* catch asyncio.CancelledError from request.text()

* missing ()

* re-raise cancelation for proper cleanup

* Simplify

* Also set webhook_reachable if connection lost

* fix styntax

* Send HTTP_OK directly after data read done

* protect agains garbage collection

* Protect shielded task (inner) not shielded future (outer)

* fix black

* Make sure exceptions are logged

* fix spelling

* fix black

* fix spelling

* Simplify using hass.async_create_task

* clarify comment

* Eleborate comment

* Update homeassistant/components/reolink/host.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Apply suggestions from bdraco

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-17 15:28:25 +02:00
Mark Adkins
2bda40d352 Fix SharkIQ token expiration (#89357) 2023-04-17 15:27:44 +02:00
Meow
47398f03dd Add SetSynchronizationPoint fallback to onvif (#86400)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-17 15:22:17 +02:00
mkmer
799080eb00 Don't reload integration for AuthError in Honeywell (#91228) 2023-04-17 14:55:52 +02:00
epenet
3364f0fce2 Allow config entries unload action to be coroutine (#91531)
* Allow config entries unload action to be coroutine

* Adjust comment
2023-04-17 08:41:25 -04:00
Franck Nijhof
6a80f5fc60 Update cryptography to 40.0.2 (#91528) 2023-04-17 08:36:42 -04:00
Allen Porter
4c5746d6ed Update Todoist all day event handling following best practices (#90491) 2023-04-17 14:21:49 +02:00
J. Nick Koston
9be9defbb8 Add more rule parsers to onvif (#91533) 2023-04-17 13:41:15 +02:00
G Johansson
c3e22cfa63 SQL strings update db_url (#91537) 2023-04-17 13:37:27 +02:00
Franck Nijhof
f1bb4ed0ed Update pip constraint to allow for pip 23.1 (#91535) 2023-04-17 12:39:13 +02:00
epenet
d1b8f2987c Fix incorrect regex in translation script (#91536) 2023-04-17 12:18:34 +02:00
Martin Hjelmare
5c7d124f02 Add core as codeowner to tts (#91539) 2023-04-17 12:05:54 +02:00
krazos
717898fc92 Change entity category of IR light setting from control to config (#91382) 2023-04-17 11:10:06 +02:00
rappenze
a5b863cd75 Fix state mapping in fibaro climate (#91505) 2023-04-17 11:09:11 +02:00
starkillerOG
88bde2a914 Reolink ONVIF move read to primary callback (#91478)
* Move read to primary callback

* fix styling

* Do not raise on ConnectionResetError

* Split request.text() to .read() and decode("utf-8")
2023-04-16 22:48:39 -10:00
epenet
dd7de48efc Fix lingering timers in sia tests (#91407) 2023-04-17 10:36:13 +02:00
epenet
7c9242b4a7 Fix lingering timer in alert integration (#91452) 2023-04-17 10:35:53 +02:00
Erik Montnemery
3367e86686 Enable strict typing of assist_pipeline (#91529) 2023-04-17 10:32:14 +02:00
J. Nick Koston
9985516f80 Build protobuf upb wheels (#90812) 2023-04-17 10:30:22 +02:00
Jeef
752d5958dc Add monessen virtual integration for Intellifire (#89315) 2023-04-17 10:03:37 +02:00
J. Nick Koston
b875706bdd Default homekit to listening on all interfaces to match Home Assistant behavior (#91520) 2023-04-17 09:41:57 +02:00
rappenze
01046b88e5 Update pyfibaro to 0.7.0 (#91510) 2023-04-17 09:39:13 +02:00
jjlawren
c88d4b09c9 Handle invalidated Plex token (#91438) 2023-04-17 09:38:16 +02:00
epenet
d26160a509 Prevent combined translations in strings.json (#91334) 2023-04-17 09:36:25 +02:00
Jesse Hills
42b0602190 ESPHome: Use existing property with generated signal string (#91525) 2023-04-16 18:37:12 -10:00
Christopher Bailey
5dcc4d49c8 Bump unifiprotect to 4.8.1 (#91522) 2023-04-16 17:50:06 -10:00
Christopher Bailey
fdc80e14e6 Remove deprecated set_doorbell_message UniFi Protect service (#91523)
* Removes deprecated service

* Linting

* Linting

* More cleanup

* Linting
2023-04-16 17:30:41 -10:00
Jan Čermák
9680161701 Add RAPT Bluetooth integration (#87872)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-16 17:19:03 -10:00
Paulus Schoutsen
2b6fd0df6a VoIP: Add is active call binary sensor (#91486)
* Refactor VoIP integration for more entities

* Add active call binary sensor

* Add actually missing binary sensor files

* Improve test coverage
2023-04-16 22:59:05 -04:00
Brett Adams
58ea657fbc Add a data model to Advantage Air (#91519)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-16 15:04:30 -10:00
Brett Adams
8fe900885a Bump Advantage Air to 0.4.4 (#91147) 2023-04-16 14:56:57 -10:00
Lode Smets
263901841f Add Synology Photos support (#86894)
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
Co-authored-by: mib1185 <mail@mib85.de>
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-16 12:29:15 -10:00
Brett Adams
5001a50876 Add MyPlace support to Advantage Air (#91108)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-16 12:27:37 -10:00
J. Nick Koston
4420201fe6 Use bluetooth data tools for address conversion in esphome (#91443) 2023-04-16 11:55:08 -10:00
J. Nick Koston
ac76a2b1df Bump bluetooth-data-tools to 0.4.0 (#91442) 2023-04-16 11:06:03 -10:00
MarkGodwin
691cd4f2ed Bump TP-Link Omada API to enforce minimum controller version (#91498)
Bump omada API
2023-04-16 16:45:02 -04:00
J. Nick Koston
4d266e99dc Bump aioruuvigateway to 0.1.0 (#91512) 2023-04-16 10:26:08 -10:00
J. Nick Koston
7f7909e0d1 Add dhcp ip update support to onvif (#91474)
* Add dhcp ip update support to onvif

If we know the mac address of the camera we can
update the config entry when the ip changes

* fix lookup

* coverage

* remove unreachable

* remove unreachable

* remove unreachable
2023-04-16 15:55:33 -04:00
Ben Morton
d16e1b4ed0 Resolve issue with switchbot blind tilt devices getting stuck in opening/closing state (#91495) 2023-04-16 09:32:51 -10:00
J. Nick Koston
fdc6cf3472 Continue recording events until final write (#91260) 2023-04-16 09:22:47 -10:00
Jack Boswell
00191ace6c Expose ping drop rate Starlink sensor (#91444) 2023-04-16 08:25:36 -10:00
Franck Nijhof
1dc0870163 Update pytest to 7.3.1 (#91497) 2023-04-16 12:21:10 -04:00
J. Nick Koston
9625444989 Automatically retry lost/timed out LIFX requests (#91157) 2023-04-16 14:27:17 +02:00
epenet
3ff03eef46 Fix lingering timer in buienradar (#91378) 2023-04-16 14:20:54 +02:00
Allen Porter
b0e0ada512 Streamline todoist test fixtures (#91405) 2023-04-16 14:20:07 +02:00
J. Nick Koston
cb6ffa5b03 Handle a few more transient onvif errors (#91473) 2023-04-16 14:06:30 +02:00
J. Nick Koston
e7373d979b Fix onvif failing to reload (#91482) 2023-04-16 14:05:10 +02:00
Mark Adkins
0cf29f0f84 Fix SharkIQ token expiration (#89357) 2023-04-16 14:04:18 +02:00
Maciej Bieniek
9d68cdca18 Remove ozone state attribute and ozone sensors from Accuweather (#91492) 2023-04-16 14:01:22 +02:00
J. Nick Koston
24538a44fc Bump onvif-zeep-async to 1.2.11 (#91472) 2023-04-16 13:56:10 +02:00
Maciej Bieniek
09c41ca2d8 Bump nextdns to version 1.4.0 (#91490) 2023-04-16 13:51:07 +02:00
epenet
bdb55a4262 Fix lingering timer in samsungtv (#91450) 2023-04-16 08:24:04 +02:00
dougiteixeira
dc03a5c81e Fix error for when column does not exist in query to SQL (#91166)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-15 12:54:56 -10:00
Michael
323d16cc21 Add ssl_cipher_list option to rest (#91078) 2023-04-15 11:22:41 -10:00
Michael Davie
59dc0ea2e0 Bump env_canada to v0.5.33 (#91468) 2023-04-15 09:44:07 -10:00
Meow
963648a333 Add SetSynchronizationPoint fallback to onvif (#86400)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-15 09:41:34 -10:00
J. Nick Koston
72dfd95831 Fix creating onvif pull point subscriptions when InitialTerminationTime is required (#91470)
* Fix creating onvif pull point subscriptions when InitialTerminationTime is required

fixes #85902

* Bump again because I got it wrong the first time.. this is why retest is good
2023-04-15 15:34:07 -04:00
Michael
67c4de90f3 Add option to select list of accepted ssl ciphers in httpx client (#91389) 2023-04-15 09:32:30 -10:00
Jan Bouwhuis
f37b1fc9f8 Improve tests subscribe connection for mqtt status (#91463)
Improve test_subscribe_connection_status
2023-04-15 15:29:31 -04:00
epenet
a018ba0696 Improve async_track_point_in_time (#91451)
* Adjust async_track_point_in_time

* Adjust name
2023-04-15 20:28:08 +02:00
Erik Montnemery
8f8a398631 Support marking an assist pipeline as preferred (#91418)
* Support marking an assist pipeline as preferred

* Adjust

* Revert unneeded change

* Send preferred pipeline id in pipeline list

* Don't use property functions for the preferred pipeline
2023-04-15 10:05:46 -04:00
Joost Lekkerkerker
714ec3f023 Update screenshot of featured integrations (#91345) 2023-04-15 15:56:46 +02:00
epenet
d173590477 Remove combined translations in integrations (#91337)
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2023-04-15 15:51:04 +02:00
Aidan Timson
3bc023986c Fix listener running in foreground for System Bridge integration (#91391)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-15 15:49:05 +02:00
puddly
a9db39a833 Fix attribute reporting config failures in ZHA (#91403) 2023-04-15 15:48:34 +02:00
starkillerOG
adc8a13f93 Reolink prevent ONVIF push being lost due to ConnectionResetError (#91070)
* Make "Connection lost" error less likely

* Handle connection loss during ONVIF event reading

* tweak

* fix styling

* catch asyncio.CancelledError from request.text()

* missing ()

* re-raise cancelation for proper cleanup

* Simplify

* Also set webhook_reachable if connection lost

* fix styntax

* Send HTTP_OK directly after data read done

* protect agains garbage collection

* Protect shielded task (inner) not shielded future (outer)

* fix black

* Make sure exceptions are logged

* fix spelling

* fix black

* fix spelling

* Simplify using hass.async_create_task

* clarify comment

* Eleborate comment

* Update homeassistant/components/reolink/host.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Apply suggestions from bdraco

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-14 21:05:22 -04:00
J. Nick Koston
1379ad60c8 Ensure recorder always attempts clean shutdown if recorder thread raises (#91261)
* Ensure recorder run shutdown if the run loop raises

If anything goes wrong with the recorder we should
still try to shutdown cleanly

* tweak

* tests

* tests

* handle migraiton failure

* tweak comment

* naming

* order

* order

* order

* reword

* adjust test

* fixes

* threading

* failure case

* fix test

* have to wait for stop because the task blocks on thread join
2023-04-14 21:03:24 -04:00
J. Nick Koston
56cc6633f5 Use fast path for track_time_change that fires every second (#91432)
We were missing a check for `*` and were only checking
`None`. Automations use `*`, python code uses `None`.
2023-04-14 21:02:54 -04:00
J. Nick Koston
5ffd833fdf Improve performance of tracking time changes (#91433)
* Improve performance of async_track_time_interval

Uses HassJob internally to avoid looking up the function
target type every time it fires

* name
2023-04-14 21:02:13 -04:00
epenet
19a6530c3c Add ability to shutdown a Debouncer (#91439)
* Add ability to shutdown a Debouncer

* Use async_create_task
2023-04-14 21:01:21 -04:00
J. Nick Koston
698345e88b Bump yalexs to 1.3.0 (#91431)
changelog: https://github.com/bdraco/yalexs/compare/v1.2.7...v1.3.0

fixes for missing user ids
2023-04-14 20:02:09 -04:00
Harvey
bf4559719a History API entity_id validation (#90067)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-14 09:41:54 -10:00
rlippmann
f5911bcad6 Add slots to dataclasses in default_config (#91410)
* add dataclass slots to default config items

* remove slots from sun mixing
2023-04-14 14:22:39 -04:00
PatrickGlesner
f65e06dc26 Delete obsolete lines and add some missing type hints in OpenTherm Gateway integration (#90530) 2023-04-14 15:28:26 +02:00
epenet
f52fd13d6d Remove duplicate webhook test (#91420)
Fix webhook test
2023-04-14 14:52:28 +02:00
Maciej Bieniek
808830b90e Bump accuweather to version 0.5.1 (#91412)
Bump accuweather
2023-04-14 08:31:33 -04:00
Eric Severance
94f35ea968 Add webhook trigger allowed_methods/local_only options (#66494)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-04-14 12:49:12 +02:00
Erik Montnemery
b23cedeae9 Save Thread dataset store when changing preferred dataset (#91411) 2023-04-14 11:48:03 +02:00
Jarek Świerczyński
47f5160154 Allow GET in webhook triggers (#56446) 2023-04-14 09:46:00 +02:00
Franck Nijhof
ce16d8eeac Rename Particulate matter sensors to PM (#91384) 2023-04-14 09:43:15 +02:00
Jan Bouwhuis
fc8c5f1bbd Do not allow mqtt lights to set brightness to zero (#91296)
* Do not allow mqtt lights to set brightness to zero

* Loglevel to debug

* Typo
2023-04-14 09:01:29 +02:00
J. Nick Koston
025e1792db Bump onvif-zeep-async to 1.2.5 (#91399) 2023-04-14 08:37:12 +02:00
jjlawren
27f3b53872 Support Sonos announcements using websockets (#91145) 2023-04-13 20:08:53 -10:00
epenet
a061f56833 Fix lingering timer in EntityRegistryDisabledHandler (#91376)
Mark EntityRegistryDisabledHandler as cancellable
2023-04-14 06:37:49 +02:00
epenet
e39f0320df Fix lingering timers in analytics (#91363) 2023-04-14 06:37:22 +02:00
Aaron Godfrey
7061b104a9 Fix tasks with no due date from not triggering on calendar state. (#91196)
Fix tasks with no due date.

Prior to this change we were setting the start date/time to utc rather
than the user's timezone.
2023-04-13 21:12:58 -07:00
Jesse Hills
0ddccb26fa ESPHome voice assistant (#90691)
* Add ESPHome push-to-talk

* Send pipeline events to device

* Bump aioesphomeapi to 13.7.0

* Log error instead of print

* Rename variable

* lint

* Rename

* Fix type and cast

* Move event data manipulation into voice_assistant callback
Process full url

* Add a test?

* Remove import

* More tests

* Update import

* Update manifest

* fix tests

* Ugh

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-13 19:18:56 -04:00
epenet
1c0b2630da Fix lingering timers in flux_led (#91379) 2023-04-13 11:54:29 -10:00
J. Nick Koston
e1a5ad069c Improve performance of sums in the energy dashboard (#91342) 2023-04-13 11:52:38 -10:00
Erik Montnemery
4e80154ebe Rename voice_assistant to assist_pipeline (#91371)
* Rename voice_assistant to assist_pipeline

* Fix tests

* Fix voip test

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2023-04-13 17:25:38 -04:00
Franck Nijhof
32344a8488 Fix incorrect warn of async_update_ha_state use (#91387) 2023-04-13 22:39:03 +02:00
dependabot[bot]
b7b22b79d1 Bump actions/checkout from 3.5.0 to 3.5.2 (#91373)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-13 22:11:47 +02:00
epenet
9744e72d5a Add ability to auto-cancel track_time_interval (#91381) 2023-04-13 21:31:16 +02:00
Joost Lekkerkerker
77a445ee16 Add entity name translations to Picnic (#91362)
* Add translatable entities for Picnic

* Apply fixes
2023-04-13 20:27:33 +02:00
Martin Hjelmare
473cbf7f9b Add stt entity (#91230)
* Add stt entity

* Update demo platform

* Rename ProviderEntity to SpeechToTextEntity

* Fix get method

* Run all init tests for config entry setup

* Fix and test metadata from header

* Test config entry unload

* Rename get provider entity

* Test post for non existing provider

* Test entity name before addition

* Test restore state

* Use register shutdown

* Update deprecation comment
2023-04-13 13:58:35 -04:00
Franck Nijhof
22a1a6846d Warn for unneeded use of async_update_ha_state (#91372) 2023-04-13 13:49:56 -04:00
rich-kettlewell
f2997ce4cc Tado set_water_heater_timer should use water_heater domain (#91364) 2023-04-13 19:49:07 +02:00
epenet
592ac37436 Add missing mock in sharkiq tests (#91325) 2023-04-13 19:33:38 +02:00
Franck Nijhof
445b823232 Avoid task creation when calling schedule_update_ha_state without force update (#91352) 2023-04-13 18:39:03 +02:00
epenet
9e1a670e6e Fail CI on lingering timers (part 2) (#89976)
* Fail CI on lingering timers (part 2)

* Improve error message

* Adjust tts
2023-04-13 17:03:52 +02:00
Joost Lekkerkerker
a272f8dfb2 Move picnic sensor definitions (#91367)
* Move types and mixin to sensor

* Move types and mixin to sensor
2023-04-13 16:46:10 +02:00
Franck Nijhof
3f0f5dc303 2023.4.4 (#91356) 2023-04-13 15:32:45 +02:00
epenet
c40836b49f Fix lingering timers in tts (#90834)
* Fix lingering timers in tts

* Improve

* Use HassJob with cancel_on_shutdown
2023-04-13 15:27:13 +02:00
epenet
c1b7aa084c Fix race condition in deconz (#91328)
* Fix race condition in deconz

* Use a new separate test
2023-04-13 15:04:21 +02:00
Franck Nijhof
b5ac3ee288 Bumped version to 2023.4.4 2023-04-13 13:50:25 +02:00
Bram Kragten
51c99d26b4 Update frontend to 20230411.1 (#91344) 2023-04-13 13:50:10 +02:00
J. Nick Koston
f77ce413be Bump aiolifx to 0.8.10 (#91324) 2023-04-13 13:50:06 +02:00
Duco Sebel
7a8159052e Bump python-homewizard-energy to 2.0.1 (#91097) 2023-04-13 13:50:02 +02:00
Duco Sebel
8ca3440f33 Bump python-homewizard-energy to 2.0.1 (#91097) 2023-04-13 13:42:35 +02:00
J. Nick Koston
274a6fd3d7 Bump aiolifx to 0.8.10 (#91324) 2023-04-13 13:38:27 +02:00
Bram Kragten
8527048f07 Update frontend to 20230411.1 (#91344) 2023-04-13 13:37:37 +02:00
Franck Nijhof
d320c73fb7 Use async_write_ha_state in tests (#91333) 2023-04-13 12:36:36 +02:00
Franck Nijhof
208a44e437 Use async_write_ha_state in generic hygrostat (#91331) 2023-04-13 09:42:12 +02:00
epenet
4a0988eb5d Adjust shutdown registration in EntityComponent (#90938)
* Adjust shutdown registration in EntityComponent

* Adjust

* Make it more explicit

* docstring
2023-04-13 08:47:04 +02:00
J. Nick Koston
6dbe67e909 Bump httpx to 0.24.0 and httpcore to 0.17.0 (#91308) 2023-04-12 20:11:59 -10:00
Paulus Schoutsen
c9d81bd217 Pipelines to default to Home Assistant agent (#91321)
* Pipelines to default to Home Assistant agent

* Tests fix
2023-04-13 00:34:19 -04:00
Paulus Schoutsen
0678ab4e45 Add VoIP entities (#91320)
* WIP

* Add VoIP entities to enable calls

* Mark voip entities as config only

* Remove commented code
2023-04-12 23:23:20 -04:00
Paulus Schoutsen
8ec6afb85a 2023.4.3 (#91316) 2023-04-12 21:50:11 -04:00
Michael Hansen
f0c625b2ad Add language util (#91290)
* Add language util

* Add no match tests

* Update tests/util/test_language.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-12 20:27:09 -05:00
Franck Nijhof
bbf2d0e6ad Remove codecov from Python test requirements (#91295) 2023-04-12 20:51:59 -04:00
tronikos
c073cee049 Google Assistant SDK: Fix broadcast command for Portuguese (#91293)
Fix broadcast command for pt
2023-04-12 20:51:58 -04:00
epenet
687c035bb2 Make auth test fixtures async (#91263)
Make auth fixtures async in tests
2023-04-12 20:43:50 -04:00
Franck Nijhof
e4d2409ca4 Update debugpy to 1.6.7 (#91267) 2023-04-12 20:43:26 -04:00
tronikos
27dd4cd261 Google Assistant SDK: Fix broadcast command for Portuguese (#91293)
Fix broadcast command for pt
2023-04-12 20:42:51 -04:00
Franck Nijhof
355404a959 Raise HomeAssistant error on failed Spotify service calls (#91299) 2023-04-12 20:42:33 -04:00
Franck Nijhof
99afab723b Fix combined translation in Pi-hole strings (#91305) 2023-04-12 20:41:27 -04:00
Franck Nijhof
02e79cf7e6 Update coverage to 7.2.3 (#91309) 2023-04-12 20:40:31 -04:00
Franck Nijhof
b2416a4020 Update sentry-sdk to 1.19.1 (#91310) 2023-04-12 20:40:19 -04:00
Paulus Schoutsen
e9f1148c0a Bumped version to 2023.4.3 2023-04-12 20:35:59 -04:00
J. Nick Koston
a420007e80 Restore use of local timezone for MariaDB/MySQL in SQL integration (#91313)
* Use local timezone for recorder connection

The fix in #90335 had an unexpected side effect of
using UTC for the timezone since all recorder operations
use UTC. Since only sqlite much use the database executor
we can use a seperate connection pool which uses local time

This also ensures that the engines are disposed of
when Home Assistant is shutdown as previously we
did not cleanly disconnect

* coverage

* fix unclean shutdown in config flow

* tweaks
2023-04-12 20:35:50 -04:00
puddly
64a9bfcc22 Bump ZHA dependencies (#91291) 2023-04-12 20:35:49 -04:00
codyhackw
fd53eda5c6 Update Inovelli Blue Series switch support in ZHA (#91254)
Co-authored-by: David F. Mulcahey <david.mulcahey@icloud.com>
2023-04-12 20:35:49 -04:00
Erik Montnemery
d6574b4a2e Fix switch_as_x name (#91232) 2023-04-12 20:35:48 -04:00
Bram Kragten
8eb75beb96 Update frontend to 20230411.0 (#91219) 2023-04-12 20:35:47 -04:00
Erik Montnemery
68920a12aa Flush conversation name cache when an entity is renamed (#91214) 2023-04-12 20:35:46 -04:00
Aaron Bach
a806e070a2 Bump pytile to 2023.04.0 (#91191) 2023-04-12 20:35:45 -04:00
David F. Mulcahey
a87c78ca20 Cleanup ZHA from Zigpy deprecated property removal (#91180) 2023-04-12 20:35:44 -04:00
Aidan Timson
48df638f5d Reduce startup time for System Bridge integration (#91171) 2023-04-12 20:35:43 -04:00
Allen Porter
c601266f9c Fix all day event coercion logic (#91169) 2023-04-12 20:35:42 -04:00
starkillerOG
30d615f206 Reolink config flow fix custom port when USE_HTTPS not selected (#91137)
give USE_HTTPS a default
2023-04-12 20:35:41 -04:00
J. Nick Koston
2db8d70c2f Fix false positive in SQL sensor full table scan check (#91134) 2023-04-12 20:35:40 -04:00
J. Nick Koston
3efffe7688 Bump ulid-transform to 0.6.3 (#91133)
* Bump ulid-transform to 0.6.2

changelog: https://github.com/bdraco/ulid-transform/compare/v0.6.0...v0.6.2

32bit fixes

fixes #91092

* 0.6.3
2023-04-12 20:35:39 -04:00
Allen Porter
dc777f78b8 Relax calendar event validation to allow existing zero duration events (#91129)
Relax event valudation to allow existing zero duration events
2023-04-12 20:35:38 -04:00
Michael Davie
4cd00da319 Bump env_canada to 0.5.32 (#91126) 2023-04-12 20:35:37 -04:00
Robert Hillis
3f6486db3e Bump aiopyarr to 23.4.0 (#91110) 2023-04-12 20:35:36 -04:00
Diogo Gomes
2d41fe837c Track availability of source sensor in utility meter (#91035)
* track availability of source sensor

* address review comments
2023-04-12 20:35:35 -04:00
Pascal Reeb
34394d90c0 Fall back to polling if webhook cannot be registered on Nuki (#91013)
fix(nuki): throw warning if webhook cannot be created
2023-04-12 20:35:34 -04:00
Anthony Mattas
fa29aea68e Fix configuring Flo instances (#90990)
* Update config_flow.py

Used constant string for consistency

* Update config_flow.py

Removed code for location ID and name the integration using the username

* Update manifest.json

Updated codeowners

* Update config_flow.py

* Update config_flow.py

Formatted with black

* Update manifest.json

Updated codeowners

* Update test_config_flow.py

Updated test
2023-04-12 20:35:33 -04:00
J. Nick Koston
4366f83ac8 Restore use of local timezone for MariaDB/MySQL in SQL integration (#91313)
* Use local timezone for recorder connection

The fix in #90335 had an unexpected side effect of
using UTC for the timezone since all recorder operations
use UTC. Since only sqlite much use the database executor
we can use a seperate connection pool which uses local time

This also ensures that the engines are disposed of
when Home Assistant is shutdown as previously we
did not cleanly disconnect

* coverage

* fix unclean shutdown in config flow

* tweaks
2023-04-12 20:24:55 -04:00
Olliver Schinagl
2d1ae6660b Dockerdev: Improve docker caching layers (#85186) 2023-04-13 00:46:54 +02:00
Joakim Sørensen
2c8b704a6d Add certificate status for cloud remote (#91277) 2023-04-13 00:38:32 +02:00
Aidan Timson
d6c954a909 Reduce startup time for System Bridge integration (#91171) 2023-04-13 00:36:51 +02:00
David Poll
ea12d7a86f Add pretty printing, key sorting, and better performance to to_json in Jinja (#91253)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-13 00:32:13 +02:00
J. Nick Koston
9b2e9b8746 Update typing on recorder pool for sqlalchemy 2.0 (#91244) 2023-04-13 00:09:15 +02:00
epenet
d483ad820c Make hass test fixture async (#91264) 2023-04-12 23:55:40 +02:00
Brig Lamoreaux
ff1fd86b91 Clean up srp_energy (#86822)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-12 23:47:37 +02:00
Assaf Inbal
7446ff478f Add h264_v4l2m2m codec and profiles to HomeKit cameras (#91246) 2023-04-12 10:46:21 -10:00
codyhackw
4f507e7f57 Update Inovelli Blue Series switch support in ZHA (#91254)
Co-authored-by: David F. Mulcahey <david.mulcahey@icloud.com>
2023-04-12 22:09:16 +02:00
puddly
fd7d0fff1f Bump ZHA dependencies (#91291) 2023-04-12 22:09:03 +02:00
Franck Nijhof
5b389a4dbc Remove codecov from Python test requirements (#91295) 2023-04-12 21:32:32 +02:00
Jan Bouwhuis
722b991234 Support unknown state, position or tilt for template cover (#91172)
* Support unknown state for template cover

* Remove not related changes
2023-04-12 21:23:24 +02:00
dougiteixeira
1ef6391e9c Preserves config flow information in case of error for SQL (#91142) 2023-04-12 09:03:14 -10:00
mkmer
6aa1460143 Add tests to honeywell (#87209)
* lower case aiosomecomfort

* add tests

* Test updates for 0.0.6

* lower case aiosomecomfort

* Missing changes after merge

* Add missing type hints

* Fix tests for PR#89393

* Test hold on when setting temperature

* Remove unnecessary init function

* Remove unnecessary assert

* Address missing tests
Cleanup related to comments for EM

* Move to snapshot for static test

* Updated snapshot

* Remove unnecessary assert
2023-04-12 20:34:32 +02:00
Jan Bouwhuis
e36fd5f222 Allow None device_class and UOM for mqtt entities (#91240)
* Allow None device_class and UOM for mqtt entities

* Rever not needed changes

* Revert another unwanted change
2023-04-12 19:14:16 +02:00
Paulus Schoutsen
325733158d Allow multiple instances for OpenAI (#90609)
* Allow multiple instances for OpenAI

* Add test
2023-04-12 08:29:13 -04:00
Chuck Deal
a4a8f6ebc8 Add platform state tests for vesync integration (#90466)
* Test coverage for init and common

* Update snapshot

* break setup state snapshot test across platforms

* Fix state snapshot test methods

* Remove the test_init snapshot

* Remove test_common and test_init changes

* refactor the request_mock fixture
2023-04-12 14:15:22 +02:00
Mike Knoop
e8fb7b8cf1 Fix Lutron keypad led state always off at startup (#91149) 2023-04-12 12:59:52 +02:00
Joakim Sørensen
8ce17458a9 Bump hass-nabucasa from 0.63.1 to 0.64.1 (#91271) 2023-04-12 12:38:57 +02:00
dependabot[bot]
5b89996476 Bump codecov/codecov-action from 3.1.1 to 3.1.2 (#91258)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-12 11:10:38 +02:00
G Johansson
00847ee4bc Add config flow to Brottsplatskartan (#70233)
* Brottsplatskartan Config Flow

* Fix import

* Modify sensor

* Mod version

* Mod version 2

* has_entity_name

* Fix api constructor

* Switch to issue for depr.

* Fix docstrings

* Minor cleaning

* Fix argument for bpk constructor

* remove translations

* Fix tests

* reset config

* uuid to conftest

* hassfest

* depr version

* unique id

* reset not linked changes

* review comments

* fix area none

* relevant changes

* depr version

* slim test

* unique_id

* create_entry

* review comments and tests

* fix init test

* review comments
2023-04-12 11:05:24 +02:00
Dmitry Vlasov
a409da947f Update zwave-me-ws version to 0.4.2 (#91068) 2023-04-12 10:18:01 +02:00
Matthias Alphart
0ba339e56c Run socket.gethostbyname in executor in Obihai and Sonos (#91190)
* Run  in executor in Obihai and Sonos

* fix Sonos test

* fix sonos test differently (review)
2023-04-12 09:58:27 +02:00
Jan Bouwhuis
bb15923968 Rename MQTT entry mock and cleanup (#91223)
Rename to mqtt_mock_entry and cleanup
2023-04-12 09:43:03 +02:00
G Johansson
b7cc42d135 Use RestoreSensor in derivative (#91071)
RestoreSensor
2023-04-12 08:46:55 +02:00
epenet
e277bbb513 Use tmp_path in tests (#91203)
* Use tmp_path in tests

* Use joinpath

* Prefer / operator

* Cleanup
2023-04-12 08:19:01 +02:00
epenet
4e78bcb236 Suppress CancelledError in zwave-js unload (#91222) 2023-04-12 08:09:00 +02:00
J. Nick Koston
237faf62ac Add a name to the background service call tasks (#91252) 2023-04-11 19:23:25 -10:00
Michael
0916701a0b Catch ssl errors in rest (#91074)
* catch ssl.SSLError

* add test

* fail setup on ssl error

* adjust tests
2023-04-12 06:51:41 +02:00
Erik Montnemery
2c9e9d0fde Allow UI configuration of entities exposed to voice_assistant (#91233)
* Allow UI configuration of entities exposed to voice_assistant

* Invalidate cache when settings change

* Add tests

* Expose entities to conversation by default

* Update tests
2023-04-11 22:39:40 -04:00
J. Nick Koston
e40a373c4b Call sqlite pragma optimize during periodic cleanup task (#91245)
https://www.sqlite.org/pragma.html#pragma_optimize

> To achieve the best long-term query performance without the need to do a detailed engineering analysis of the application schema and SQL, it is recommended that applications run "PRAGMA optimize" (with no arguments) just before closing each database connection. Long-running applications might also benefit from setting a timer to run "PRAGMA optimize" every few hours.

> This pragma is usually a no-op or nearly so and is very fast.

Since we keep the recorder connection open for the entire time HA
is running we fall into the long-running application bucket
2023-04-11 22:39:19 -04:00
J. Nick Koston
4e6937d20f Avoid multiple round trips to the database for history API calls (#91193)
* delete more code

* tweak

* tweak

* wrappers

* restore lost performance

* restore lost performance

* restore lost performance

* compact

* reduce

* fix refactor

* DRY

* tweak

* delete the start time state injector

* move away the legacy code

* tweak

* adjust

* adjust

* tweak

* ignore impossible

* fix a bug where the first start was changed to the start time when there was no previous history recorded before

* avoid the empty scan most cases

* postgresql

* fixes

* workaround for mariadb < 10.4

* remove unused

* remove unused

* adjust

* bail early

* tweak

* tweak

* fix more tests

* fix recorderrun being init in the future in the test

* run history tests on schema 30 as well

* Revert "run history tests on schema 30 as well"

This reverts commit d798b100ac.

* reduce

* cleanup

* tweak

* reduce

* prune

* adjust

* adjust

* adjust

* reverse later is faster because the index is in forward order and the data size we are reversing is much smaller even if we are in python code

* Revert "reverse later is faster because the index is in forward order and the data size we are reversing is much smaller even if we are in python code"

This reverts commit bf974e103e.

* fix test

* Revert "Revert "reverse later is faster because the index is in forward order and the data size we are reversing is much smaller even if we are in python code""

This reverts commit 119354499e.

* more coverage

* adjust

* fix for table order

* impossible for it to be missing

* remove some more legacy from the all states
2023-04-11 22:38:23 -04:00
epenet
7f62ed15fa Ensure entry is unloaded in azure event hub tests (#91224) 2023-04-11 16:31:05 -10:00
epenet
524832ceaf Fix config entry unload in withings tests (#91210) 2023-04-11 16:29:49 -10:00
Michael Hansen
78fec33b17 Voip integration (#90945)
* Media playback working

* Working on OPUS audio

* Before rollback

* Fix is_end

* First working pipeline

* Clean up

* Remove asserts

* Send HA version in SDP

* Use async_pipeline_from_audio_stream

* Use config flow with allowed IP

* Satisfy ruff

* Remove use of regex for SIP IP

* Use voip-utils

* Fix imports

* Add Pipeline to __all__

* Fix voice assistant tests

* Basic VoIP test

* Run hassfest

* Generate requirements

* Bump voip utils (missing requirement)

* Allow tts_options to be passed in to pipeline run

* Add config flow tests

* Update test snapshots

* More tests

* Remove get_extra_info

* Appeasing the codebot
2023-04-11 20:25:05 -04:00
rlippmann
3a72054f93 Make dataclasses in HA core slotted (#91208) 2023-04-11 07:58:28 -10:00
Erik Montnemery
eb63bc7967 Fix switch_as_x name (#91232) 2023-04-11 13:54:30 -04:00
Jan Bouwhuis
aa68d1d617 Cleanup mqtt CONFIG_SCHEMA_ENTRY (#90791) 2023-04-11 17:41:38 +02:00
Franck Nijhof
ca101cc7d1 Update Pillow to 9.5.0 (#91218) 2023-04-11 17:01:56 +02:00
Franck Nijhof
e418c66d69 Update spotipy to 2.23.0 (#91217) 2023-04-11 17:01:39 +02:00
Regev Brody
d14e96942d Bump aioswitcher to 3.3.0 (#91215)
fix: #85096 Switcher "No devices found on the network"
2023-04-11 09:16:26 -04:00
Bram Kragten
e65da42a39 Update frontend to 20230411.0 (#91219) 2023-04-11 08:35:08 -04:00
Erik Montnemery
3c8397a7b9 Flush conversation name cache when an entity is renamed (#91214) 2023-04-11 08:33:08 -04:00
Robert Svensson
0d7711f787 Fix UniFi client tracker host_name missing (#91188) 2023-04-11 11:56:55 +02:00
Pascal Reeb
62bc8df964 Fall back to polling if webhook cannot be registered on Nuki (#91013)
fix(nuki): throw warning if webhook cannot be created
2023-04-11 11:13:52 +02:00
Avi Miller
95109072b5 Remove myself as a codeowner of the LIFX integration (#91143) 2023-04-11 10:09:53 +02:00
epenet
7b3a932cd9 Remove incorrect constant usage in test (#91198) 2023-04-11 10:00:17 +02:00
epenet
2f7c5a56eb Use tmp_path in recorder tests (#91202) 2023-04-11 09:18:16 +02:00
epenet
a7093d3687 Fix flaky filesize tests (#91200)
* Fix flaky filesize tests

* Adjust constant usage

* Once more

* Use joinpath
2023-04-11 08:57:34 +02:00
Aaron Bach
504cedaa87 Bump pytile to 2023.04.0 (#91191) 2023-04-10 18:06:26 -06:00
Paulus Schoutsen
1aa8e94224 Voice Assistant: Require sample rate as input (#91182)
Require sample rate as input
2023-04-10 18:28:03 -05:00
David F. Mulcahey
0fee49a32e Cleanup ZHA from Zigpy deprecated property removal (#91180) 2023-04-10 14:16:11 -04:00
starkillerOG
e8142987a7 Reolink config flow fix custom port when USE_HTTPS not selected (#91137)
give USE_HTTPS a default
2023-04-10 12:44:25 -04:00
Diogo Gomes
86fe0c9683 Track availability of source sensor in utility meter (#91035)
* track availability of source sensor

* address review comments
2023-04-10 12:37:45 -04:00
Anthony Mattas
ee1644c24e Fix configuring Flo instances (#90990)
* Update config_flow.py

Used constant string for consistency

* Update config_flow.py

Removed code for location ID and name the integration using the username

* Update manifest.json

Updated codeowners

* Update config_flow.py

* Update config_flow.py

Formatted with black

* Update manifest.json

Updated codeowners

* Update test_config_flow.py

Updated test
2023-04-10 12:37:36 -04:00
J. Nick Koston
f2d10473eb Bump orjson to 3.8.10 (#91132)
changelog: https://github.com/ijl/orjson/compare/3.8.9...3.8.10
2023-04-10 12:23:19 -04:00
Allen Porter
cf9ada3b0e Fix all day event coercion logic (#91169) 2023-04-10 12:05:08 -04:00
J. Nick Koston
49079691d4 Reduce overhead of legacy database columns on new installs (#90246)
* Reduce overhead of legacy database columns on new installs

* Reduce overhead of legacy database columns on new installs

* Reduce overhead of legacy database columns on new installs

* Reduce overhead of legacy database columns on new installs

* not working as expected

* override the type compiler

* override the type compiler

* override the type compiler

* override the type compiler

* Apply suggestions from code review

* pgsql char1

* make entity filter test setup with old schema

* fix some more tests that were mutating state

* fix some more tests that were mutating state

* fix some more tests that were mutating state

* fix more dbstate mutations

* add shim for older tests

* split migration tests

* add coverage for purging legacy data

* tweak

* more fixes

* drop some legacy

* fix another test

* fix a few more

* add casts for postgresql in case someone deletes the schema changes table

* dry

* dry

* dry
2023-04-10 10:08:46 -04:00
Allen Porter
14b95ffe3a Relax calendar event validation to allow existing zero duration events (#91129)
Relax event valudation to allow existing zero duration events
2023-04-10 10:04:42 -04:00
J. Nick Koston
6b9d748529 Bump ulid-transform to 0.6.3 (#91133)
* Bump ulid-transform to 0.6.2

changelog: https://github.com/bdraco/ulid-transform/compare/v0.6.0...v0.6.2

32bit fixes

fixes #91092

* 0.6.3
2023-04-10 10:03:21 -04:00
J. Nick Koston
a62ede78ca Reduce space to store state_attributes and event_data for new MariaDB/MySQL databases (#91150)
Since MySQL and MariaDB support unsigned ints we can store the
hashes in 4 bytes instead of 8 bytes
2023-04-10 10:02:42 -04:00
J. Nick Koston
bd0378a961 Bump sqlalchemy to 2.0.9 (#91151)
changes: https://docs.sqlalchemy.org/en/20/changelog/changelog_20.html#change-2.0.9
2023-04-10 10:01:49 -04:00
J. Nick Koston
6e9fcbfec1 Fix false positive in SQL sensor full table scan check (#91134) 2023-04-09 19:45:08 -10:00
Brett Adams
82c80ec8d2 Bump Advantage Air to 0.4.2 (#91144) 2023-04-09 19:04:19 -10:00
hahn-th
a48ede7332 Bump homematicip to 1.0.14 (#91140)
Bump homematicip to 1.0.14
2023-04-09 18:50:34 -04:00
Jörg Thalheim
7e46d7e808 Bump transmission-rpc to 4.1.5 (#91088)
Signed-off-by: Jörg Thalheim <joerg@thalheim.io>
2023-04-09 16:51:31 -04:00
Robert Hillis
e30c307f9f Bump aiopyarr to 23.4.0 (#91110) 2023-04-09 16:48:37 -04:00
Michael Davie
78cb0cd1e1 Bump env_canada to 0.5.32 (#91126) 2023-04-09 13:35:43 -04:00
Paulus Schoutsen
7928b31087 2023.4.2 (#91111) 2023-04-08 23:41:48 -04:00
J. Nick Koston
e792350be6 Fix fnvhash import in schema 32 test backport (#91112) 2023-04-08 23:41:19 -04:00
J. Nick Koston
66b105fb21 Reduce creation of MQTT related discovery tasks (#90801)
* Reduce creation of MQTT related discovery tasks

Most of the branching can avoid creating a task as it
did not need to await for the majority of cases. We
fallback to creating a task for the cases were we do
need to await.

* comment

* revert
2023-04-08 23:14:22 -04:00
J. Nick Koston
d442f2aedb Add names to homekit tasks to better track startup problems (#90802)
* Add names to homekit tasks to better track startup problems

* fix test
2023-04-08 23:13:47 -04:00
J. Nick Koston
3be3226aaa Convert tasmota discovery callback function to a normal function (#90865)
* Convert tasmota discovery callback function to a normal function

Nothing was being awaited when the payload had not changed.
This allows us to avoid creating a task.

see #90801

* comment
2023-04-08 23:13:22 -04:00
J. Nick Koston
59872f1914 Reduce bond fallback polling interval when BPUP is alive (#90871)
* Reduce bond fallback polling interval when BPUP is alive

If push updates are alive we should not check every
10 seconds.

* tweak

* tweak

* coverage

* coverage

* coverage
2023-04-08 23:12:42 -04:00
J. Nick Koston
8fe597b7c6 Clarify HomeKit include behavior in the config flow (#91106)
* Clarify HomeKit include behavior in the config flow

If a domain is selected to be included and specific entities are
not selected in the domain, all entities will be included in that
domain.

* tweak
2023-04-08 23:12:02 -04:00
Paulus Schoutsen
5f0553dd22 Bumped version to 2023.4.2 2023-04-08 22:58:28 -04:00
J. Nick Koston
8f6b77235e Make the device_tracker more forgiving when passed an empty ip address string (#91101)
This has come up over and over and over again

fixes #87165 fixes #51980
2023-04-08 22:56:49 -04:00
J. Nick Koston
8ababc75d4 Bump flux_led to 0.28.37 (#91099)
changes: https://github.com/Danielhiversen/flux_led/releases/tag/0.28.37
2023-04-08 22:56:48 -04:00
J. Nick Koston
0a8f399655 Fix context_user_id round trip when calling to_native (#91098)
We do not actually use this in the history or logbook
APIs so nothing broke but there was a bug here for anyone
calling this directly

fixes #91090
2023-04-08 22:56:47 -04:00
Michael Davie
19567e7fee Bump env_canada to v0.5.31 (#91094) 2023-04-08 22:56:46 -04:00
Garrett
3a137cb24c Bump subarulink to 0.7.6 (#91064) 2023-04-08 22:56:45 -04:00
Allen Porter
935af6904d Bump gcal_sync to 4.1.4 (#91062) 2023-04-08 22:56:44 -04:00
Allen Porter
4fed5ad21c Make location optional in google calendar create service (#91061) 2023-04-08 22:56:44 -04:00
J. Nick Koston
9dc15687b5 Bump zeroconf to 0.56.0 (#91060) 2023-04-08 22:56:43 -04:00
J. Nick Koston
38a0eca223 Bump zeroconf to 0.55.0 (#90987) 2023-04-08 22:56:42 -04:00
David F. Mulcahey
6836e0b511 Fix Smartthings acceleration sensor in ZHA (#91056) 2023-04-08 22:55:52 -04:00
David F. Mulcahey
cab88b72b8 Bump ZHA quirks lib (#91054) 2023-04-08 22:55:51 -04:00
Steven Looman
07421927ec Make sure upnp-router is also initialized when first seen through an advertisement (#91037) 2023-04-08 22:55:50 -04:00
Diogo Gomes
828a2779a0 Delay utility_meter until HA has started (#91017)
* increase information for end user

* only warn after home assistant has started

* delay utility_meter until HA has startED
2023-04-08 22:55:49 -04:00
Joost Lekkerkerker
7392a5780c Bump roombapy to 1.6.8 (#91012)
* Update roombapy to 1.6.7

* Update roombapy to 1.6.8
2023-04-08 22:55:48 -04:00
Aaron Bach
804270a797 Bump aioambient to 2023.04.0 (#90991) 2023-04-08 22:55:47 -04:00
J. Nick Koston
7f5f286648 Bump vallox-websocket-api to 3.2.1 (#90980)
unblocks https://github.com/home-assistant/core/pull/90901
which will finally fix the races in websockets
2023-04-08 22:55:46 -04:00
J. Nick Koston
0a70a29e92 Resume entity id post migration after a restart (#90973)
* Restart entity id post migration after a restart

If the entity migration finished and Home Assistant was
restarted during the post migration it would never be resumed
which means the old index and space would never be recovered

* add migration resume test
2023-04-08 22:55:46 -04:00
J. Nick Koston
dc2f2e8d3f Raise an issue for legacy SQL queries that will cause full table scans (#90971)
* Raise an issue for SQL queries that will cause full table scans

* Raise an issue for SQL queries that will cause full table scans

* Raise an issue for SQL queries that will cause full table scans

* Raise an issue for SQL queries that will cause full table scans

* Update homeassistant/components/sql/sensor.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* coverage

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-08 22:55:45 -04:00
J. Nick Koston
6522a3ad1b Bump websockets constraint to 11.0.1+ (#90901) 2023-04-08 22:55:44 -04:00
PatrickGlesner
be65d4f33e Fix NMBS AttributeError (#90525)
* Fix NMBS AttributeError (Issue #90505)

* Set and use API_FAILURE

* Configure the logger to track API failures

* Remove broad exceptions and rewite logging
2023-04-08 22:55:43 -04:00
J. Nick Koston
a730ee2c43 Bump flux_led to 0.28.37 (#91099)
changes: https://github.com/Danielhiversen/flux_led/releases/tag/0.28.37
2023-04-08 22:48:01 -04:00
Allen Porter
23af02b941 Make location optional in google calendar create service (#91061) 2023-04-08 22:40:39 -04:00
J. Nick Koston
5f0d983df1 Make the device_tracker more forgiving when passed an empty ip address string (#91101)
This has come up over and over and over again

fixes #87165 fixes #51980
2023-04-08 22:32:56 -04:00
J. Nick Koston
69f751703b Fix context_user_id round trip when calling to_native (#91098)
We do not actually use this in the history or logbook
APIs so nothing broke but there was a bug here for anyone
calling this directly

fixes #91090
2023-04-08 22:31:28 -04:00
J. Nick Koston
3d1556a4a2 Switch back to using call_later for the slow entity update warning (#91067)
* Switch back to using call_later for the slow entity update warning

I had originally changed this to create a task and wait
in #41184 but that does not make sense anymore with newer
cpython as the profile now shows the original method is cheaper
(or I did it wrong the first time)

* fix missing block till done since there is no longer a task being created which would run the event loop once
2023-04-08 22:22:56 -04:00
J. Nick Koston
d0d4ab6056 Require a list of entity ids when fetching history (#90992) 2023-04-08 16:14:44 -10:00
Brett Adams
667a00e7f9 Handle all three operating modes in Advantage Air climate (#91107)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-08 13:50:26 -10:00
Michael Davie
5e2b0b23c9 Bump env_canada to v0.5.31 (#91094) 2023-04-08 09:25:58 -10:00
Diogo Gomes
fe393c84e2 Delay utility_meter until HA has started (#91017)
* increase information for end user

* only warn after home assistant has started

* delay utility_meter until HA has startED
2023-04-08 10:36:34 -04:00
tronikos
6c7f2167ff Android TV Remote: Bump androidtvremote2==0.0.7 (#91001)
* Bump androidtvremote2 to 0.0.5

* Log exception that caused disconnect

* fix test

* Revert "fix test"

This reverts commit 63fbedd208.

* Revert "Log exception that caused disconnect"

This reverts commit 110fa881ff.

* Bump androidtvremote2==0.0.7
2023-04-08 09:50:34 +02:00
Diogo Gomes
b1a23c5f73 Filtered values are no longer rounded if values are not changed/calculated (#76164)
* address 75732

* catchup

* catchup

* catchup

* catchup

* use default if precision is None

* Update homeassistant/components/filter/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* fix type hint

* in progress

* refactor

* Update homeassistant/components/filter/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* add *

* no need to check - review comment

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-07 23:26:07 -04:00
Allen Porter
96a3e10ff3 Bump gcal_sync to 4.1.4 (#91062) 2023-04-07 22:38:33 -04:00
J. Nick Koston
53d7e33607 Raise an issue for legacy SQL queries that will cause full table scans (#90971)
* Raise an issue for SQL queries that will cause full table scans

* Raise an issue for SQL queries that will cause full table scans

* Raise an issue for SQL queries that will cause full table scans

* Raise an issue for SQL queries that will cause full table scans

* Update homeassistant/components/sql/sensor.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* coverage

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-07 22:32:36 -04:00
J. Nick Koston
dbfd0d50ba Bump zeroconf to 0.56.0 (#91060) 2023-04-07 16:01:53 -10:00
Garrett
77287eb021 Bump subarulink to 0.7.6 (#91064) 2023-04-07 21:56:39 -04:00
David F. Mulcahey
90f857e926 Fix Smartthings acceleration sensor in ZHA (#91056) 2023-04-07 15:55:37 -10:00
Steven Looman
2f4325246b Make sure upnp-router is also initialized when first seen through an advertisement (#91037) 2023-04-07 13:11:31 -10:00
Joost Lekkerkerker
9b95a04c29 Bump roombapy to 1.6.8 (#91012)
* Update roombapy to 1.6.7

* Update roombapy to 1.6.8
2023-04-07 19:02:13 -04:00
David F. Mulcahey
62a6a4cd19 Bump ZHA quirks lib (#91054) 2023-04-07 19:00:03 -04:00
mrwogu
7eccef87c2 Disable lazy discover in xiaomi_miio (#82601)
* Add lazy discover config option to xiaomi_miio (#59215)

* disable lazy_discover for default

* extend tests to support lazy_discover

* revert config option
2023-04-07 16:27:59 +02:00
Joost Lekkerkerker
b8abc1350a Move plant const to separate file (#91008)
* Move plant const to separate file

* Fix feedback

* Fix feedback

* Update homeassistant/components/plant/const.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-07 13:45:40 +02:00
PatrickGlesner
06e36bcff5 Fix NMBS AttributeError (#90525)
* Fix NMBS AttributeError (Issue #90505)

* Set and use API_FAILURE

* Configure the logger to track API failures

* Remove broad exceptions and rewite logging
2023-04-07 12:13:39 +02:00
epenet
9705607db4 Fix lingering timer in cloud (#90822)
* Fix lingering timer in cloud

* Rename variable

* Improve

* Improve again

* Adjust

* Adjust

* Add property to HassJob instead

* Adjust

* Rename

* Adjust

* Adjust

* Make it read-only

* Add specific test
2023-04-07 11:38:17 +02:00
Aaron Bach
175f38b68a Bump aioambient to 2023.04.0 (#90991) 2023-04-06 19:22:27 -10:00
J. Nick Koston
fabfc59dfb Bump zeroconf to 0.55.0 (#90987) 2023-04-06 18:07:17 -10:00
J. Nick Koston
0fb210b886 Bump websockets constraint to 11.0.1+ (#90901) 2023-04-06 18:03:33 -10:00
Marc Mueller
823eb23600 Improve proxmoxve generic typing (#90948) 2023-04-06 19:32:49 -07:00
J. Nick Koston
9793cae2d3 Bump vallox-websocket-api to 3.2.1 (#90980)
unblocks https://github.com/home-assistant/core/pull/90901
which will finally fix the races in websockets
2023-04-06 21:19:10 -04:00
J. Nick Koston
398762fdd5 Resume entity id post migration after a restart (#90973)
* Restart entity id post migration after a restart

If the entity migration finished and Home Assistant was
restarted during the post migration it would never be resumed
which means the old index and space would never be recovered

* add migration resume test
2023-04-06 21:16:45 -04:00
tronikos
d4c10f0a98 Bump androidtvremote2 to 0.0.5 (#90922) 2023-04-06 17:54:45 -04:00
Paulus Schoutsen
0c15c75781 2023.4.1 (#90956) 2023-04-06 17:52:14 -04:00
Heikki Partanen
2bf51a033b Fix verisure autolock (#90960)
Fix verisure autolock #90959
2023-04-06 20:54:40 +00:00
Heikki Partanen
0b1241cb8f Fix verisure autolock (#90960)
Fix verisure autolock #90959
2023-04-06 16:54:18 -04:00
Steven Rollason
cfd8695aaa Fix command_template sensor value_template not being used if json_attributes set (#90603)
* Allow value_template to be used if json_attributes set

* Set state to None if no value_template and json_attributes used

* Refactor check for no value_template when json_attributes used

* Updated and additional unit test

* Updated to set _attr_native_value and return if value_template is None

* Update unit test docstring

* Updated test docstring based on feedback
2023-04-06 20:49:32 +00:00
Jan Bouwhuis
e8a6a2e105 Fix error after losing an imap connection (#90966)
Cleanup first after losing an imap connection
2023-04-06 20:46:54 +00:00
Jan Bouwhuis
6becf523ec Fix error after losing an imap connection (#90966)
Cleanup first after losing an imap connection
2023-04-06 16:46:32 -04:00
Allen Porter
73a960af34 Bump gcal_sync to 4.1.3 (#90968) 2023-04-06 20:44:52 +00:00
Allen Porter
9f5dfdc67c Bump gcal_sync to 4.1.3 (#90968) 2023-04-06 16:44:34 -04:00
Allen Porter
bbb571fdf8 Coerce previously persisted local calendars to have valid durations (#90970) 2023-04-06 20:42:00 +00:00
Allen Porter
3595e2fd5a Coerce previously persisted local calendars to have valid durations (#90970) 2023-04-06 16:41:38 -04:00
J. Nick Koston
c944be8215 Fix state being cleared on disconnect with deep sleep esphome devices (#90925)
* Fix state being cleared on disconnect with deep sleep esphome devices

fixes #90923

* fix logic
2023-04-06 20:39:04 +00:00
J. Nick Koston
5e903e04cf Avoid writing state to all esphome entities at shutdown (#90555) 2023-04-06 20:39:00 +00:00
J. Nick Koston
87c22c3ad5 Fix state being cleared on disconnect with deep sleep esphome devices (#90925)
* Fix state being cleared on disconnect with deep sleep esphome devices

fixes #90923

* fix logic
2023-04-06 16:32:02 -04:00
J. Nick Koston
20d0362914 Add mysql 8.0.32 to the CI (#90898) 2023-04-06 09:33:08 -10:00
Steven Rollason
2b46734bd3 Fix command_template sensor value_template not being used if json_attributes set (#90603)
* Allow value_template to be used if json_attributes set

* Set state to None if no value_template and json_attributes used

* Refactor check for no value_template when json_attributes used

* Updated and additional unit test

* Updated to set _attr_native_value and return if value_template is None

* Update unit test docstring

* Updated test docstring based on feedback
2023-04-06 21:06:31 +02:00
starkillerOG
6884b0a421 Bump reolink-aio to 0.5.10 (#90963)
* use is_doorbell instead of is_doorbell_enabled

* Bump reolink-aio to 0.5.10
2023-04-06 14:35:39 -04:00
starkillerOG
fca9052430 Bump reolink-aio to 0.5.10 (#90963)
* use is_doorbell instead of is_doorbell_enabled

* Bump reolink-aio to 0.5.10
2023-04-06 14:35:22 -04:00
Aaron Bach
a1c7159304 Bump aioambient to 2022.10.0 (#90940)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-06 14:34:25 -04:00
epenet
d65791027f Fix flaky test in vesync (#90921)
* Fix flaky test in vesync

* Move sorting to the test
2023-04-06 14:34:24 -04:00
Aaron Bach
e9f6a963a0 Bump aioambient to 2022.10.0 (#90940)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-06 14:33:41 -04:00
Paulus Schoutsen
5ffa0cba39 Bumped version to 2023.4.1 2023-04-06 13:21:13 -04:00
Bram Kragten
f5be600383 Update frontend to 20230406.1 (#90951) 2023-04-06 13:21:07 -04:00
Pascal Reeb
9b2e26c270 Handle NoURLAvailableError in Nuki component (#90927)
* fix(nuki): handle NoURLAvailableError

* only try internal URLs
2023-04-06 13:21:06 -04:00
stickpin
e25edea815 Return empty available programs list if an appliance is off during initial configuration (#90905) 2023-04-06 13:21:05 -04:00
J. Nick Koston
849000d5ac Bump aiodiscover to 1.4.16 (#90903) 2023-04-06 13:21:04 -04:00
Aaron Bach
cb06541fda Bump simplisafe-python to 2023.04.0 (#90896)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-06 13:21:03 -04:00
J. Nick Koston
70d1e733f6 Fix entity_id migration query failing with MySQL 8.0.30 (#90895) 2023-04-06 13:21:02 -04:00
J. Nick Koston
0b3012071e Guard against invalid ULIDs in contexts while recording events (#90889) 2023-04-06 13:21:01 -04:00
J. Nick Koston
42b7ed115f Bump ulid-transform 0.6.0 (#90888)
* Bump ulid-transform 0.6.0

changelog: https://github.com/bdraco/ulid-transform/compare/v0.5.1...v0.6.0

to find the source of the invalid ulids in https://github.com/home-assistant/core/issues/90887
2023-04-06 13:21:00 -04:00
J. Nick Koston
513a13f369 Fix missing bluetooth client wrapper in bleak_retry_connector (#90885) 2023-04-06 13:20:59 -04:00
Michael
f341d0787e Migrate entity unique ids in PI-Hole (#90883)
* migrate entity unique ids

* Update homeassistant/components/pi_hole/__init__.py

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-04-06 13:20:58 -04:00
J. Nick Koston
c8ee45b53c Add MariaDB deadlock retry wrapper to database timestamp column migrations (#90880)
Add deadlock retry wrapper to timestamp column migrations

fixes #90819
2023-04-06 13:20:57 -04:00
J. Nick Koston
b4e2dd4e06 Add constraint for websockets to <11.0 (#90868) 2023-04-06 13:20:56 -04:00
J. Nick Koston
c663d8754b Generate a seperate log message per dumped object for profiler.dump_log_objects (#90867)
Since some objects are very large we can generate overly large log messages
```
Event data for system_log_event exceed maximum size of 32768 bytes. This can cause database performance issues; Event data will not be stored
```

Reported in https://ptb.discord.com/channels/330944238910963714/427516175237382144/1093069996101472306
2023-04-06 13:20:55 -04:00
Tom Harris
968a4e4818 Fix issue with Insteon All-Link Database loading (#90858)
Bump to 1.4.1
2023-04-06 13:20:54 -04:00
saschaabraham
833b95722e Bump fritzconnection to 1.12.0 (#90799) 2023-04-06 13:20:53 -04:00
mkmer
096e814929 Handle Uncaught exceptions in async_update Honeywell (#90746) 2023-04-06 13:20:52 -04:00
Erik Montnemery
44c89a6b6c Refactor handling of exposed entities for cloud Alexa and Google (#89877)
* Refactor handling of exposed entities for cloud Alexa

* Tweak WS API

* Validate assistant parameter

* Address some review comments

* Refactor handling of exposed entities for cloud Google

* Raise when attempting to expose an unknown entity

* Add tests

* Adjust cloud tests

* Allow getting expose new entities flag

* Test Alexa migration

* Test Google migration

* Add WS command cloud/google_assistant/entities/get

* Fix return value

* Update typing

* Address review comments

* Rename async_get_exposed_entities to async_get_assistant_settings
2023-04-06 13:09:45 -04:00
Bram Kragten
0d84106947 Update frontend to 20230406.1 (#90951) 2023-04-06 13:08:52 -04:00
Erik Montnemery
b3b83b7bb2 Add a pipeline store to voice_assistant (#90844)
* Add a pipeline store to voice_assistant

* Improve error handling

* Improve test coverage

* Improve test coverage

* Use StorageCollectionWebsocket

* Correct rebase
2023-04-06 12:55:16 -04:00
Marc Mueller
b2bcdf7c19 Update mypy to 1.2.0 (#90947)
* Update mypy to 1.2.0

* Add type ignore
2023-04-06 12:51:16 -04:00
epenet
385630f9b4 Fix flaky test in vesync (#90921)
* Fix flaky test in vesync

* Move sorting to the test
2023-04-06 12:51:02 -04:00
Paulus Schoutsen
86e9f6643f Allow TTS requests to resolve in the background (#90944) 2023-04-06 10:42:55 -05:00
Erik Montnemery
59a02cd08c Allow storing other items than untyped dict in StorageCollection (#90932)
Allow storing other items than untyped dict in StorageCollection
2023-04-06 10:57:00 -04:00
Erik Montnemery
8025fbf398 Remove the coronavirus integration (#90934)
* Remove the coronavirus integration

* Run hassfest and gen_requirements_all
2023-04-06 10:43:09 -04:00
Pascal Reeb
4667b27405 Handle NoURLAvailableError in Nuki component (#90927)
* fix(nuki): handle NoURLAvailableError

* only try internal URLs
2023-04-06 13:51:37 +02:00
epenet
842d89f419 Rewrite mailbox tests (#90906)
* Rewrite mailbox tests

* Use some bytes for get_media

* Split __init__ method

* Cleanup lingering timers

* Simplify message text

* Simplify msgtime

* Remove cleanup

* Use a constant
2023-04-06 13:48:19 +02:00
Erik Montnemery
fa308d8e10 Drop unused logger argument for StorageCollection() (#90913) 2023-04-06 13:28:34 +02:00
mkmer
3d426e1e2b Handle Uncaught exceptions in async_update Honeywell (#90746) 2023-04-06 10:44:13 +02:00
Michael
03e9cb233f Add entity name translations to CO2signal (#90877) 2023-04-06 10:39:49 +02:00
stickpin
e8cbf439e5 Return empty available programs list if an appliance is off during initial configuration (#90905) 2023-04-06 10:38:09 +02:00
J. Nick Koston
96c5e845e5 Guard against invalid ULIDs in contexts while recording events (#90889) 2023-04-06 10:34:54 +02:00
J. Nick Koston
19f71b3bb9 Fix entity_id migration query failing with MySQL 8.0.30 (#90895) 2023-04-06 10:34:13 +02:00
J. Nick Koston
571204fa44 Fix missing bluetooth client wrapper in bleak_retry_connector (#90885) 2023-04-06 10:33:00 +02:00
Aaron Bach
de3f25571d Bump simplisafe-python to 2023.04.0 (#90896)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-06 10:32:35 +02:00
saschaabraham
df40b4bf9f Bump fritzconnection to 1.12.0 (#90799) 2023-04-06 10:31:43 +02:00
J. Nick Koston
e5931dfce2 Bump aiodiscover to 1.4.16 (#90903) 2023-04-06 10:30:29 +02:00
Franck Nijhof
823c506296 Merge branch 'master' into dev 2023-04-06 10:26:34 +02:00
J. Nick Koston
479a35c499 Revert "Move local calendar diagnostics to pytest.mark.freezetime" (#90899)
Revert "Move local calendar diagnostics to pytest.mark.freezetime (#90886)"

This reverts commit a01952981f.
2023-04-05 22:12:21 -07:00
Allen Porter
a01952981f Move local calendar diagnostics to pytest.mark.freezetime (#90886) 2023-04-05 19:57:09 -07:00
Jesse Hills
eb469d6a2f Move enum mapper to own file to prevent circular dependency (#90890)
* Move enum_mapper to own file to prevent circular dependency

* Add enum mapper test
2023-04-05 22:55:51 -04:00
J. Nick Koston
2fc34e7cce Bump ulid-transform 0.6.0 (#90888)
* Bump ulid-transform 0.6.0

changelog: https://github.com/bdraco/ulid-transform/compare/v0.5.1...v0.6.0

to find the source of the invalid ulids in https://github.com/home-assistant/core/issues/90887
2023-04-05 22:19:43 -04:00
Ernst Klamer
96ed4a1be1 Bump xiaomi-ble to 0.17.0 (#90806)
Add support for new Xiaomi BLE sensors
2023-04-05 22:14:21 -04:00
epenet
aa218e6f9c Fix lingering timer in device_tracker (#90824) 2023-04-05 21:12:26 -04:00
Paul Bottein
71697df3c2 Add device name fallback if no hostname in PrusaLink (#90831)
Device name fallback if no hostname in PrusaLink
2023-04-05 21:03:39 -04:00
tronikos
49468ef5d0 Android TV Remote integration (#89935)
* Android TV Remote integration

* Add diagnostics

* Remove test pem files from when api was not mocked

* Address review comments

* Remove hass.data call in test

* Store the certificate and key in /config/.storage

* update comments

* Update homeassistant/components/androidtv_remote/__init__.py

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

* import callback

* use async_generate_cert_if_missing

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-04-05 21:00:40 -04:00
Tom Harris
a6c5b5e238 Fix issue with Insteon All-Link Database loading (#90858)
Bump to 1.4.1
2023-04-05 20:53:44 -04:00
J. Nick Koston
4c767b2f72 Generate a seperate log message per dumped object for profiler.dump_log_objects (#90867)
Since some objects are very large we can generate overly large log messages
```
Event data for system_log_event exceed maximum size of 32768 bytes. This can cause database performance issues; Event data will not be stored
```

Reported in https://ptb.discord.com/channels/330944238910963714/427516175237382144/1093069996101472306
2023-04-05 20:53:19 -04:00
Michael
397fbc0e41 Migrate entity unique ids in PI-Hole (#90883)
* migrate entity unique ids

* Update homeassistant/components/pi_hole/__init__.py

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-04-05 20:52:37 -04:00
J. Nick Koston
b4fec762bc Switch to fnv-hash-fast from fnvhash (#90761)
* Switch to fnv-hash-fast from fnvhash

Replaces the pure python implemention with a fast cpp one
when available (with fallback to pure python)

changelog: https://github.com/bdraco/fnv-hash-fast/releases/tag/v0.3.1
source: https://github.com/bdraco/fnv-hash-fast/tree/main/src/fnv_hash_fast

* Apply suggestions from code review

* lint
2023-04-05 20:52:23 -04:00
J. Nick Koston
a8f1d033a0 Add MariaDB deadlock retry wrapper to database timestamp column migrations (#90880)
Add deadlock retry wrapper to timestamp column migrations

fixes #90819
2023-04-05 20:46:56 -04:00
epenet
60692bcfdb Fix lingering timers in calendar tests (#90845) 2023-04-05 20:46:05 -04:00
Erik Montnemery
4276ce96ea Use send_json_auto_id in voice_assistant tests (#90857) 2023-04-05 19:07:42 -05:00
Erik Montnemery
4104659986 Allow import of deprecated audioop module (#90869) 2023-04-05 19:03:46 -05:00
J. Nick Koston
ef5d8d83cb Add constraint for websockets to <11.0 (#90868) 2023-04-05 08:03:47 -10:00
Franck Nijhof
cff493fb98 2023.4.0 (#90855) 2023-04-05 19:57:42 +02:00
epenet
19ab76dad9 Fix lingering timers in sensor tests (#90856) 2023-04-05 19:52:30 +02:00
shbatm
04cfd7b41d Use built-in percentage unit for ISY994 relative humidity (#90863) 2023-04-05 07:50:06 -10:00
Stackie Jia
5c2af99520 Improve the HomeKit (de)humidifier min/max humidity handling (#90854) 2023-04-05 06:35:47 -10:00
Franck Nijhof
d67265bb66 Bumped version to 2023.4.0 2023-04-05 17:37:57 +02:00
Erik Montnemery
6e51f0d6f5 Adjust OTBR channel conflict URL (#90847) 2023-04-05 17:37:06 +02:00
Bram Kragten
82977f33ed Bump frontend to 20230405.0 (#90841) 2023-04-05 17:37:03 +02:00
epenet
fb2d432d32 Adjust async_track_time_interval name argument (#90838)
Adjust async_track_time_interval naming
2023-04-05 17:36:59 +02:00
Tom Puttemans
0d019a3c4c Support entity name translation in DSMR Reader component (#90836)
* Use translation_key instead of name for the entity names and enum values

This change allows for the translation of entity names and their values based on a key, instead of having the English text in the code

* Adjusted tariff options order

Not really wrong, but this way it is consistent with all other entities
2023-04-05 17:36:55 +02:00
Paul Bottein
65b877bb77 Add entity name translations to prusalink entities (#90833) 2023-04-05 17:36:52 +02:00
Jan Bouwhuis
2a23583d67 Suppress imap logging on reconnect and presume state (#90826) 2023-04-05 17:36:48 +02:00
Penny Wood
80fe5051b3 Master RAS zone (#90825)
Fixes issue in some systems with different numbering systems
2023-04-05 17:36:44 +02:00
J. Nick Koston
2dfe33d177 Bump aioesphomeapi to 10.6.1 (#90816) 2023-04-05 17:36:41 +02:00
J. Nick Koston
617037a92d Fix BLEDevice not getting updated when details change for remote scanners (#90815) 2023-04-05 17:36:36 +02:00
Tom Puttemans
3538844181 Support entity name translation in DSMR Reader component (#90836)
* Use translation_key instead of name for the entity names and enum values

This change allows for the translation of entity names and their values based on a key, instead of having the English text in the code

* Adjusted tariff options order

Not really wrong, but this way it is consistent with all other entities
2023-04-05 10:59:07 -04:00
epenet
c01b1eb013 Adjust async_track_time_interval name argument (#90838)
Adjust async_track_time_interval naming
2023-04-05 10:58:02 -04:00
Bram Kragten
0f8060fd00 Bump frontend to 20230405.0 (#90841) 2023-04-05 16:41:24 +02:00
Erik Montnemery
bff5b75377 Adjust OTBR channel conflict URL (#90847) 2023-04-05 16:06:00 +02:00
epenet
acec2fd7db Fix lingering timers in mailbox tests (#90830) 2023-04-05 14:09:51 +02:00
epenet
84f58543ef Fix lingering timers in image processing tests (#90829) 2023-04-05 14:09:15 +02:00
epenet
35b642c6c8 Improve type hints in calendar trigger tests (#90827) 2023-04-05 14:08:55 +02:00
J. Nick Koston
7cf1926081 Fix BLEDevice not getting updated when details change for remote scanners (#90815) 2023-04-05 12:19:37 +02:00
Penny Wood
3ddfe027fd Master RAS zone (#90825)
Fixes issue in some systems with different numbering systems
2023-04-05 12:18:54 +02:00
Jan Bouwhuis
94817f61e5 Suppress imap logging on reconnect and presume state (#90826) 2023-04-05 12:18:16 +02:00
Paul Bottein
58ac8404ef Add entity name translations to prusalink entities (#90833) 2023-04-05 12:17:00 +02:00
andarotajo
08dd0a5efa Move dwd_weather_warnings constants to separate file (#90810)
* Move constants to seperate file

* Use __package__ for the logger name

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-05 09:16:17 +02:00
J. Nick Koston
5eb0c35a97 Add names to common helper tasks (#90803) 2023-04-05 08:41:15 +02:00
Hans Oischinger
21a873f0af Remove myself from vicare codeowners (#90755) 2023-04-05 08:29:57 +02:00
mletenay
83704f0334 Update to goodwe v0.2.31 (#90808) 2023-04-05 07:52:05 +03:00
J. Nick Koston
02c749a111 Bump aioesphomeapi to 10.6.1 (#90816) 2023-04-04 17:22:01 -10:00
Paulus Schoutsen
8f60a2bdd4 Bumped version to 2023.4.0b7 2023-04-04 21:09:22 -04:00
Patrick ZAJDA
9f7b2ba6c1 Add entity name translations to Broadlink sensors (#90783)
* Add entity name translations to Broadlink sensors

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Update tests

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-04 21:09:10 -04:00
Patrick ZAJDA
af34e25c89 Add translations for Nuki entity name and battery critical state attribute (#90772)
* Add translations for Nuki entity name and battery critical state attribute

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Remove door sensor name

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

---------

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>
2023-04-04 21:09:09 -04:00
Pascal Reeb
c43dc37713 Add Warning in the issue registry if a HTTPS webhook is used for Nuki (#90718)
feat(nuki): create issue when https webhook URL was created
2023-04-04 21:09:08 -04:00
Maciej Bieniek
0d6177dbdb Address late review for NextDNS entity name translations (#90771) 2023-04-04 21:07:21 -04:00
starkillerOG
f03b9036c5 Add async_write_ha_state to Reolink select (#90764)
Add async_write_ha_state to select
2023-04-04 21:07:20 -04:00
Jan Bouwhuis
1848a723cd Fix recovering imap connection triggers re-auth (#90762) 2023-04-04 21:07:19 -04:00
Erik Montnemery
8230a52e0a Update template environment from the event loop (#90758) 2023-04-04 21:07:18 -04:00
Paulus Schoutsen
d0e9470c7c Fix frontend test again (#90754) 2023-04-04 21:07:17 -04:00
J. Nick Koston
b50354f362 Add render count to templates repr (#90753) 2023-04-04 21:07:16 -04:00
J. Nick Koston
e4b3a146be Bump aiohomekit to 2.6.3 (#90752) 2023-04-04 21:07:15 -04:00
TheJulianJES
1861a621b2 Restore state for ZHA OnOff binary sensors (#90749)
* Restore state for ZHA OnOff binary sensors

* Let `Motion` extend `Opening`

`Motion` is just a specified version of `Opening` that only changes the device class for some motion sensors.
Since we have more "special code" in the OnOff/Opening sensor now, we also want to make sure that gets applied to `Motion` binary sensors.

* Improve comment and type

* Add test to verify that binary sensors restore last HA state
2023-04-04 21:07:14 -04:00
J. Nick Koston
0746e09256 Prevent overly large event data from being stored in the database (#90747)
This is the same change as #87105 for events
2023-04-04 21:07:13 -04:00
J. Nick Koston
0166cd082b Bump zeroconf to 0.54.0 (#90744)
* Bump zeroconf to 0.54.0

fixes incorrect addresses when the server name changes

changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.53.0...0.54.0

* fix
2023-04-04 21:07:12 -04:00
Maciej Bieniek
0a74f946db Add entity name translations to NextDNS (#90743)
Add entity name translations
2023-04-04 21:07:11 -04:00
Mark Adkins
d04b45a821 SharkIQ Hotfix - Handle current installations by using default REGION (#90741)
* Add default region on async_setup_entry

* Move logic to migration function

* Move update logic back to setup function, but updates the config if needed.

* Remove commented out code

* Update Tests & Config setting method

* Update homeassistant/components/sharkiq/__init__.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Update homeassistant/components/sharkiq/__init__.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Accept Suggestions & Formatting

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-04-04 21:07:10 -04:00
Maciej Bieniek
a5a6641bb4 Add entity name translations to Tractive (#90738)
Add entity name translations
2023-04-04 21:07:09 -04:00
Michael
1420cda837 Add entity name translations to SMS (#90727) 2023-04-04 21:07:08 -04:00
Fabio De Simone
cba5751ca2 Fix bluetooth_le_tracker reporting devices Home when they leave (#90641)
* fix bluetooth_le_tracker reporting devices Home when they leave

* refactor

* implement tests for BLE service_info.time check

* update bluetooth_le_tracker tests

* tweaks

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-04 21:07:07 -04:00
Mark Adkins
1f7ebe9249 SharkIQ Hotfix - Handle current installations by using default REGION (#90741)
* Add default region on async_setup_entry

* Move logic to migration function

* Move update logic back to setup function, but updates the config if needed.

* Remove commented out code

* Update Tests & Config setting method

* Update homeassistant/components/sharkiq/__init__.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Update homeassistant/components/sharkiq/__init__.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Accept Suggestions & Formatting

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-04-04 21:06:24 -04:00
Fabio De Simone
8495da1af0 Fix bluetooth_le_tracker reporting devices Home when they leave (#90641)
* fix bluetooth_le_tracker reporting devices Home when they leave

* refactor

* implement tests for BLE service_info.time check

* update bluetooth_le_tracker tests

* tweaks

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-04 20:59:57 -04:00
Vincent Knoop Pathuis
03caf63ec2 Remove getattr for Landis+Gyr Heat Meter (#90637)
* Remove getattr and update tests

* Apply suggestion for test from PR review

* Make constants capitalized
2023-04-04 22:01:35 +02:00
Patrick ZAJDA
e748f0c623 Add entity name translations to Broadlink sensors (#90783)
* Add entity name translations to Broadlink sensors

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Update tests

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-04 15:18:41 -04:00
Guy Khmelnitsky
22a1c8f00f Bump locationsharinglib to 5.0.0 (#90790)
* Update GoogleMaps intergration dependency

* Update requirements_all.txt
2023-04-04 11:43:20 -07:00
Jan Bouwhuis
4a0d3e881a Rework MQTT config merging and adding defaults (#90529)
* Cleanup config merging and adding defaults

* Optimize and update tests

* Do not mix entry and yaml config

* Make sure hass.data is initilized

* remove check on get_mqtt_data

* Tweaks to MQTT client

* Remove None assigment mqtt client and fix mock
2023-04-04 18:12:18 +02:00
Erik Montnemery
690a0f34e5 Fix glob expansion for partial prettier run (#90787) 2023-04-04 17:27:15 +02:00
Erik Montnemery
6642db917f Remove legacy services from lock/services.yaml (#90779) 2023-04-04 17:03:43 +02:00
Erik Montnemery
28d85bc405 Run prettier on matter fixture (#90784) 2023-04-04 16:13:08 +02:00
Matija Kovacic
e7c5325ba8 Extract Supla base entity into its own file (#90781)
* Extracting Supla base entity

* Fix improper import

* Making Black happy.

* Use set for membership check

* Making ruff happy.
2023-04-04 16:11:27 +02:00
J. Nick Koston
5e3796c333 Prevent legacy device tracker from creating hundreds of executor jobs (#90690)
* Prevent legacy device tracker from creating hundreds of executor jobs

The legacy device tracker would create an executor job for
each set of extra state attributes and device name lookup.

For routers this meant hundreds of jobs

* Prevent legacy device tracker from creating hundreds of executor jobs

The legacy device tracker would create an executor job for
each set of extra state attributes and device name lookup.

For routers this meant hundreds of jobs

* tweak

* simplify
2023-04-04 08:55:25 -04:00
Martin Hjelmare
535fb34207 Move legacy stt (#90776)
* Move legacy stt to separate module

* Remove case for None as provider

* Add error log for unknown platform

* Add some tests
2023-04-04 14:52:36 +02:00
epenet
584066b809 Rename renault coordinator and base entity (#90760)
Refactor renault coordinator and base entity
2023-04-04 14:38:52 +02:00
epenet
f24634e198 Use domain constants in rest tests (#90765) 2023-04-04 14:33:41 +02:00
Martin Hjelmare
3b2127b1dc Add core as codeowner for stt integration (#90777) 2023-04-04 08:28:34 -04:00
hidaris
a9e14cd8d7 Preliminary support for Matter cover (#90262)
Preliminary support for Matter cover, curtain tilt support has not been added yet.
2023-04-04 14:16:11 +02:00
Patrick ZAJDA
e962dd64cf Add translations for Nuki entity name and battery critical state attribute (#90772)
* Add translations for Nuki entity name and battery critical state attribute

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Remove door sensor name

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

---------

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>
2023-04-04 13:43:51 +02:00
Jan Bouwhuis
9b03d331ca Fix recovering imap connection triggers re-auth (#90762) 2023-04-04 12:59:57 +02:00
Michael
b4e12d34f6 Add entity name translations to SMS (#90727) 2023-04-04 12:58:42 +02:00
Maciej Bieniek
2f22613cf9 Address late review for NextDNS entity name translations (#90771) 2023-04-04 12:56:39 +02:00
J. Nick Koston
b66a99fe8a Bump sqlalchemy to 2.0.8 (#90756) 2023-04-04 12:47:54 +02:00
J. Nick Koston
0cc9b2e803 Use slots for discovery dataclasses (#90751) 2023-04-04 12:44:59 +02:00
Raman Gupta
bfea1367a7 Add ms to units comment for duration sensor device class (#90757) 2023-04-04 12:42:33 +02:00
starkillerOG
a05fbdeedb Add async_write_ha_state to Reolink select (#90764)
Add async_write_ha_state to select
2023-04-04 11:48:14 +02:00
epenet
dfa0b5439b Add myself to rest code owners (#90770) 2023-04-04 11:36:36 +02:00
Erik Montnemery
37661fe79f Update template environment from the event loop (#90758) 2023-04-04 09:52:47 +02:00
J. Nick Koston
edd93e989e Add render count to templates repr (#90753) 2023-04-03 19:38:15 -10:00
J. Nick Koston
a4bf71b655 Bump aiohomekit to 2.6.3 (#90752) 2023-04-03 19:38:04 -10:00
Paulus Schoutsen
79101b31d5 Fix frontend test again (#90754) 2023-04-04 00:11:20 -04:00
Paulus Schoutsen
6e4c78686e Run pipeline from audio stream function (#90748)
* Run pipeline from audio stream function

* Fix tests

---------

Co-authored-by: Michael Hansen <mike@rhasspy.org>
2023-04-04 00:06:51 -04:00
J. Nick Koston
4f1574b859 Prevent overly large event data from being stored in the database (#90747)
This is the same change as #87105 for events
2023-04-04 00:02:49 -04:00
J. Nick Koston
6dc55e4a3a Bump zeroconf to 0.54.0 (#90744)
* Bump zeroconf to 0.54.0

fixes incorrect addresses when the server name changes

changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.53.0...0.54.0

* fix
2023-04-04 00:02:07 -04:00
Maciej Bieniek
a854a5620f Add entity name translations to Tractive (#90738)
Add entity name translations
2023-04-04 00:01:46 -04:00
Maciej Bieniek
449f18c9c1 Add entity name translations to NextDNS (#90743)
Add entity name translations
2023-04-04 00:01:04 -04:00
Avi Miller
5e7e96c5da Remove the LIFX sensor update coordinator (#90740) 2023-04-03 17:48:32 -10:00
TheJulianJES
a58b3721ed Restore state for ZHA OnOff binary sensors (#90749)
* Restore state for ZHA OnOff binary sensors

* Let `Motion` extend `Opening`

`Motion` is just a specified version of `Opening` that only changes the device class for some motion sensors.
Since we have more "special code" in the OnOff/Opening sensor now, we also want to make sure that gets applied to `Motion` binary sensors.

* Improve comment and type

* Add test to verify that binary sensors restore last HA state
2023-04-03 22:27:57 -04:00
Paulus Schoutsen
a3e66b5dde Bumped version to 2023.4.0b6 2023-04-03 16:51:04 -04:00
Bram Kragten
83dd52ab1f Update frontend to 20230403.0 (#90735) 2023-04-03 16:51:01 -04:00
Michael
da1e5f6a3c Add entity name translations to sun (#90732) 2023-04-03 16:51:00 -04:00
Michael
8f9868024c Add entity name translations to Luftdaten (#90725) 2023-04-03 16:50:59 -04:00
Erik Montnemery
c90396cd57 Bump pychromecast to 13.0.7 (#90724) 2023-04-03 16:50:58 -04:00
Aaron Bach
509c1ca99c Fix missing battery sensors for SimpliSafe locks (#90722) 2023-04-03 16:50:57 -04:00
Michael
431fbee641 Fix translation of status binary sensor in PI-Hole (#90719) 2023-04-03 16:50:56 -04:00
Michael
28983bca85 Add entity name translations to Pi-hole (#90713) 2023-04-03 16:50:55 -04:00
Felix Rotthowe
601498617d Fix Livisi climate min/max temperature (#90712)
* Correctly set livisi climate min/max temp

* fix imports
2023-04-03 16:50:54 -04:00
Michael
6c208f655d Add entity name translations to NUT (#90709) 2023-04-03 16:50:53 -04:00
Michael
eaaf24d326 Add entity name translations to AVM Fritz!SmartHome (#90707)
* add entity name translation

* sort and capitalize

* adjust tests

* sort entities
2023-04-03 16:50:52 -04:00
Michael
0c12d45581 Add entity name translations to Synology DSM (#90706)
* add entity name translation

* sort strings

* sort and capitalize strings
2023-04-03 16:50:51 -04:00
Michael
c2e46db76d Add entity name translations to AVM Fritz!Tools (#90703)
* add entity name translation

* apply suggestions

* sort strings
2023-04-03 16:50:50 -04:00
Maciej Bieniek
47c8b7804d Add entity name translations to BraviaTV (#90702)
Add entity name translations
2023-04-03 16:50:49 -04:00
Maciej Bieniek
8d302aea9e Use the default entity names in GIOS (#90700) 2023-04-03 16:50:48 -04:00
Stephan Uhle
3a73425888 Fix ha version in EDL21 deprecation warning (#90699)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-03 16:50:47 -04:00
epenet
f9e4fe016f Use entity name translations in SFR Box (#90698) 2023-04-03 16:50:46 -04:00
epenet
5835ae03bc Use entity name translations in Renault (#90697) 2023-04-03 16:50:45 -04:00
epenet
71608d4795 Use entity name translations in 1-wire (#90696)
* Use entity name translations in onewire

* Adjust binary sensors

* Adjust switches

* Cleanup
2023-04-03 16:50:44 -04:00
Maciej Bieniek
e38590e40a Use the default entity names in Airly (#90693) 2023-04-03 16:50:43 -04:00
Maciej Bieniek
9e3b54f539 Add entity name translations to NAM (#90681) 2023-04-03 16:50:42 -04:00
J. Nick Koston
24ff2ddae5 Ensure system log does not raise while processing logger messages (#90652) 2023-04-03 16:50:41 -04:00
Michael Davie
621de8bb5f Bump env_canada to v0.5.30 (#90644) 2023-04-03 16:50:40 -04:00
Patrick ZAJDA
6cbf9288b5 Add entity name translations to Switchbot (#90600)
* Add entity name translations to Switchbot

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Apply suggestions from code review

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Fix tests

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Update homeassistant/components/switchbot/strings.json

Co-authored-by: Patrick ZAJDA <patrick@zajda.fr>

---------

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-04-03 16:50:39 -04:00
Franck Nijhof
9f95da7793 Add entity name translations to Plugwise (#90537)
* Add entity name translations to Plugwise

* Re-use extisting translation where possible
2023-04-03 16:50:38 -04:00
Nerdix
cb5326b798 Correct handling if WIFI combine suffix is "None" (#90528)
* Correct handling of "None" WIFI combine suffix

* Update tests/components/unifi/test_config_flow.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* Update tests/components/unifi/test_config_flow.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

---------

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2023-04-03 16:50:37 -04:00
Erik Montnemery
1aa6d3e896 Raise repair issue if OTBR and ZHA are on different channels (#90494)
* Raise repair issue if OTBR and ZHA are on different channels

* Update issues after creating or setting dataset

* Explain impact

* Add link to documentation, adjust language

* Update homeassistant/components/otbr/strings.json

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-03 16:50:36 -04:00
Matthias Alphart
1c8d4b8bb8 Use entity name translations in Fronius (#90463) 2023-04-03 16:50:35 -04:00
G Johansson
8669ee3685 Remove Darksky integration (#90322) 2023-04-03 16:50:34 -04:00
Erik Montnemery
59511cc3f7 Make service field filter parameters exclusive (#90728) 2023-04-03 21:46:23 +02:00
Michael
d4d77d9395 Add sort list service to Shopping List (#90671) 2023-04-03 21:34:44 +02:00
Bram Kragten
8c621699af Update frontend to 20230403.0 (#90735) 2023-04-03 21:32:40 +02:00
Emory Penney
7c6a32ebb5 Add DHCP discovery to Obihai (#88984)
* Add DHCP discovery to Obihai

* Unique ID is MAC

* Move try blocks, cleanup

* Migrate existing unique_ids

* Use PyObihai to update Unique ID

* Auth then use get_device_mac

* Config flow changes

* Reworking flow according to feedback

* Cleanup
2023-04-03 21:17:56 +02:00
Michael
fa332668d6 Add entity name translations to sun (#90732) 2023-04-03 21:15:44 +02:00
Matthias Alphart
edaee89e34 Use entity name translations in Fronius (#90463) 2023-04-03 20:05:52 +02:00
Michael
682ebbd4d5 Add entity name translations to Luftdaten (#90725) 2023-04-03 19:55:54 +02:00
Michael
7e543882fc Add entity name translations to Synology DSM (#90706)
* add entity name translation

* sort strings

* sort and capitalize strings
2023-04-03 13:08:22 -04:00
epenet
2d1bb6135c Use entity name translations in 1-wire (#90696)
* Use entity name translations in onewire

* Adjust binary sensors

* Adjust switches

* Cleanup
2023-04-03 13:07:02 -04:00
Michael
9d508ac7ae Add entity name translations to AVM Fritz!SmartHome (#90707)
* add entity name translation

* sort and capitalize

* adjust tests

* sort entities
2023-04-03 13:04:09 -04:00
Erik Montnemery
d52ef83899 Bump pychromecast to 13.0.7 (#90724) 2023-04-03 13:02:36 -04:00
Erik Montnemery
c3091fad4c Raise repair issue if OTBR and ZHA are on different channels (#90494)
* Raise repair issue if OTBR and ZHA are on different channels

* Update issues after creating or setting dataset

* Explain impact

* Add link to documentation, adjust language

* Update homeassistant/components/otbr/strings.json

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-04-03 13:02:10 -04:00
epenet
73d0124c98 Use entity name translations in Renault (#90697) 2023-04-03 18:20:11 +02:00
Michael
1cce55d176 Add entity name translations to NUT (#90709) 2023-04-03 18:18:23 +02:00
Aaron Bach
ba58fc25bd Fix missing battery sensors for SimpliSafe locks (#90722) 2023-04-03 16:42:24 +02:00
Michael
aeeadb570a Fix translation of status binary sensor in PI-Hole (#90719) 2023-04-03 16:38:54 +02:00
Patrick ZAJDA
4456557a02 Add entity name translations to Switchbot (#90600)
* Add entity name translations to Switchbot

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Apply suggestions from code review

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Fix tests

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Update homeassistant/components/switchbot/strings.json

Co-authored-by: Patrick ZAJDA <patrick@zajda.fr>

---------

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-04-03 10:10:30 -04:00
Franck Nijhof
186f47ba46 Add entity name translations to Plugwise (#90537)
* Add entity name translations to Plugwise

* Re-use extisting translation where possible
2023-04-03 09:25:02 -04:00
Pascal Reeb
e72c2029cb Add Warning in the issue registry if a HTTPS webhook is used for Nuki (#90718)
feat(nuki): create issue when https webhook URL was created
2023-04-03 14:49:15 +02:00
Felix Rotthowe
bacbe4aa58 Fix Livisi climate min/max temperature (#90712)
* Correctly set livisi climate min/max temp

* fix imports
2023-04-03 14:17:57 +02:00
epenet
45038bac16 Use entity name translations in SFR Box (#90698) 2023-04-03 14:04:02 +02:00
Michael
628142527d Add entity name translations to Pi-hole (#90713) 2023-04-03 14:00:27 +02:00
Matija Kovacic
34245a6b3d Add support for Supla garage doors (#90593)
* Adding support for additional Supla channel types

Newly supported channel types are - CONTROLLINGTHEGARAGEDOOR, DIMMER, RGBLIGHTING.

* Remove light platform additions

* Remove light devices

* Update homeassistant/components/supla/cover.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Removing some Black automatic formatting.

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-03 13:56:40 +02:00
Maciej Bieniek
1eadc63cd5 Add entity name translations to BraviaTV (#90702)
Add entity name translations
2023-04-03 07:40:52 -04:00
Michael
33a4c2c162 Add entity name translations to AVM Fritz!Tools (#90703)
* add entity name translation

* apply suggestions

* sort strings
2023-04-03 07:35:35 -04:00
Maciej Bieniek
eb748416ed Use the default entity names in GIOS (#90700) 2023-04-03 12:42:55 +02:00
Maciej Bieniek
34041c7564 Add entity name translations to NAM (#90681) 2023-04-03 12:37:01 +02:00
andarotajo
37556a57af Upgrade dwd_weather_warnings dependency dwdwfsapi to 1.0.6 (#90683) 2023-04-03 11:12:35 +02:00
Maciej Bieniek
cacd6708f0 Use the default entity names in Airly (#90693) 2023-04-03 10:50:24 +02:00
Stephan Uhle
3c536e31eb Fix ha version in EDL21 deprecation warning (#90699)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-04-03 10:48:06 +02:00
G Johansson
724eb7f2bd Remove Darksky integration (#90322) 2023-04-03 10:34:36 +02:00
Nerdix
d539bddabc Correct handling if WIFI combine suffix is "None" (#90528)
* Correct handling of "None" WIFI combine suffix

* Update tests/components/unifi/test_config_flow.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* Update tests/components/unifi/test_config_flow.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

---------

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2023-04-03 09:47:08 +02:00
Jan Bouwhuis
580b20b0a8 Deprecate imap_content_sensor (#90429)
* Deprecate imap_content_sensor

* Rename unique_id to issue_id

* Migrate config to imap entry

* Improve dialogs

* Improve dialog texts

* Add repairs.py to .coveragerc

* Test the integration component setup

* Text tweak

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

* Use flow for creating entries

* Rename schema add tests

* Patch client instead

* Add tests repairs - refactor async_step_confirm

* Comments test, correct calling next step

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-03 07:27:41 +02:00
starkillerOG
ddb1610e90 Reolink late review comments (#90668)
review comments
2023-04-03 07:22:38 +02:00
J. Nick Koston
73714a6656 Ensure system log does not raise while processing logger messages (#90652) 2023-04-02 15:18:50 -10:00
Paulus Schoutsen
20d8bbbd0c Bumped version to 2023.4.0b5 2023-04-02 20:57:16 -04:00
J. Nick Koston
e10e3ee7cc Fix memory churn in state templates (#90685)
* Fix memory churn in state templates

The LRU for state templates was limited to 512 states. As soon
as it was exaused, system performance would tank as each template
that iterated all states would have to create and GC any state
> 512

* does it scale?

* avoid copy on all

* comment

* preen

* cover

* cover

* comments

* comments

* comments

* preen

* preen
2023-04-02 20:57:07 -04:00
Maciej Bieniek
83b7018be2 Fix default sensor entity name for PM1 (#90684)
Fix PM1 text
2023-04-02 20:57:06 -04:00
J. Nick Koston
6d967ac535 Bump zeroconf to 0.53.0 (#90682) 2023-04-02 20:57:05 -04:00
Paulus Schoutsen
77bc745bed Fix frontend test (#90679) 2023-04-02 20:57:04 -04:00
Patrick ZAJDA
8fe7b01baa Add entity name translations for Nest sensors (#90677)
Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>
2023-04-02 20:57:04 -04:00
J. Nick Koston
5e5888b37a Bump zeroconf to 0.52.0 (#90660)
* Bump zeroconf to 0.52.0

Switch to using the new ip_addresses_by_version which avoids
all the ip address conversions

* updates
2023-04-02 20:57:03 -04:00
Maciej Bieniek
90de51fff3 Add entity name translations to Airly (#90656)
Add entity name translations
2023-04-02 20:55:38 -04:00
Maciej Bieniek
89230b75be Add entity name translations to GIOS (#90655)
* Add entity name translations

* Update tests
2023-04-02 20:55:37 -04:00
J. Nick Koston
cbe3cabf0a Add object source logger to profiler (#90650)
* Add object source logger to profiler

* fixes

* cleanup

* tweaks

* logging

* logging

* too intensive

* adjust

* Update homeassistant/bootstrap.py

* fixes

* fixes

* coverage
2023-04-02 20:55:36 -04:00
Maciej Bieniek
c259c1afe3 Add entity name translations to Brother (#90634)
* Add entity name translations

* Fix sensor name

* Update tests

* Suggested change
2023-04-02 20:55:36 -04:00
mletenay
1ff93518b5 Update goodwe library to v0.2.30 (#90607) 2023-04-02 20:55:34 -04:00
J. Nick Koston
51ff027fce Add object source logger to profiler (#90650)
* Add object source logger to profiler

* fixes

* cleanup

* tweaks

* logging

* logging

* too intensive

* adjust

* Update homeassistant/bootstrap.py

* fixes

* fixes

* coverage
2023-04-02 20:54:21 -04:00
Maciej Bieniek
2229a63acd Fix default sensor entity name for PM1 (#90684)
Fix PM1 text
2023-04-02 20:53:00 -04:00
J. Nick Koston
17719663f0 Fix memory churn in state templates (#90685)
* Fix memory churn in state templates

The LRU for state templates was limited to 512 states. As soon
as it was exaused, system performance would tank as each template
that iterated all states would have to create and GC any state
> 512

* does it scale?

* avoid copy on all

* comment

* preen

* cover

* cover

* comments

* comments

* comments

* preen

* preen
2023-04-02 20:51:25 -04:00
mletenay
0198c751b4 Update goodwe library to v0.2.30 (#90607) 2023-04-02 20:25:29 -04:00
Michael Davie
6a6b6cf826 Bump env_canada to v0.5.30 (#90644) 2023-04-02 20:20:11 -04:00
Patrick ZAJDA
22fd6138bd Add entity name translations for Nest sensors (#90677)
Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>
2023-04-02 20:19:03 -04:00
J. Nick Koston
368d1c9b54 Bump zeroconf to 0.53.0 (#90682) 2023-04-02 13:32:00 -10:00
Paulus Schoutsen
c5a87addc1 Fix frontend test (#90679) 2023-04-02 14:28:52 -04:00
Maciej Bieniek
fc81b82932 Add entity name translations to GIOS (#90655)
* Add entity name translations

* Update tests
2023-04-02 14:25:38 -04:00
Maciej Bieniek
d32fb7c22f Add entity name translations to Airly (#90656)
Add entity name translations
2023-04-02 14:24:40 -04:00
tronikos
b52fab0f6d Rename Android TV to Android Debug Bridge (#90657)
* Rename Android TV to Android debug bridge

* More renaming
2023-04-02 14:22:16 -04:00
J. Nick Koston
17270979e6 Bump zeroconf to 0.52.0 (#90660)
* Bump zeroconf to 0.52.0

Switch to using the new ip_addresses_by_version which avoids
all the ip address conversions

* updates
2023-04-02 14:09:44 -04:00
Paulus Schoutsen
4a4d3201f5 Fix voice assistant error variable (#90658) 2023-04-01 22:34:52 -05:00
J. Nick Koston
84292d4797 Cleanup some duplicate code in recorder statistics (#90549)
* Cleanup some duplicate code in recorder statistics

* more cleanup

* reduce

* reduce
2023-04-01 21:40:14 -04:00
Maciej Bieniek
5fc103947f Add entity name translations to Brother (#90634)
* Add entity name translations

* Fix sensor name

* Update tests

* Suggested change
2023-04-01 21:39:46 -04:00
Paulus Schoutsen
aa6cf3d208 Bumped version to 2023.4.0b4 2023-04-01 15:23:53 -04:00
Bram Kragten
2a28d40dc8 Update frontend to 20230401.0 (#90646) 2023-04-01 15:23:45 -04:00
Jan Bouwhuis
c006b3b1df Fix mqtt device_tracker is not reloading yaml (#90639) 2023-04-01 15:23:44 -04:00
nono
bacd77a03a Fix Rest switch init was not retrying if unreachable at setup (#90627)
* Fix Rest switch init was not retrying if unreachable at setup

* pass error log to platformnotready
prevents spamming the same message in logs.
2023-04-01 15:23:43 -04:00
J. Nick Koston
75694307e2 Bump zeroconf to 0.51.0 (#90622)
* Bump zeroconf to 0.50.0

changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.47.4...0.50.0

* bump to 51
2023-04-01 15:23:42 -04:00
J. Nick Koston
1189b2ad70 Small speed up to _collection_changed (#90621)
attrgetter builds a fast method which happens in native code
4664a7cf68/Modules/_operator.c (L1413)
2023-04-01 15:23:42 -04:00
Joakim Sørensen
d5d5bb0732 Only limit stats to started add-ons (#90611) 2023-04-01 15:23:41 -04:00
J. Nick Koston
6242dd2214 Avoid sorting domain/all states in templates (#90608) 2023-04-01 15:23:40 -04:00
Bram Kragten
2852fe6786 Update frontend to 20230401.0 (#90646) 2023-04-01 15:21:51 -04:00
Jan Bouwhuis
9965d9d81d Fix mqtt device_tracker is not reloading yaml (#90639) 2023-04-01 15:17:53 -04:00
J. Nick Koston
8263c3de23 Bump zeroconf to 0.51.0 (#90622)
* Bump zeroconf to 0.50.0

changelog: https://github.com/python-zeroconf/python-zeroconf/compare/0.47.4...0.50.0

* bump to 51
2023-04-01 15:15:17 -04:00
J. Nick Koston
00a4279d64 Speed up backups (#90613) 2023-04-01 15:14:59 -04:00
starkillerOG
b47ac524ea Use async_timeout instead of asyncio.wait_for (#90496)
* Use async_timeout instead of asyncio.wait_for

* fix imports

* fix imports

* break out Event.wait patch

* Update tests/components/reolink/conftest.py

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

* Simplify

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-04-01 17:47:31 +02:00
nono
9cab05c4b9 Fix Rest switch init was not retrying if unreachable at setup (#90627)
* Fix Rest switch init was not retrying if unreachable at setup

* pass error log to platformnotready
prevents spamming the same message in logs.
2023-04-01 17:45:24 +02:00
J. Nick Koston
f1fa63281e Adjust context id variable names in the logbook processor to improve readability (#90617)
Adjust some variable names in the logbook process to improve readablity

There were some places were we used context_id that should have been context_id_bin
2023-04-01 10:24:02 -04:00
J. Nick Koston
e94c11371d Bump securetar to 2023.3.0 (#90612)
changelog: https://github.com/pvizeli/securetar/compare/2022.02.0...2023.3.0
2023-04-01 10:22:26 -04:00
Michael Hansen
90d81e9844 Use webrcvad to detect silence in pipelines (#90610)
* Add webrtcvad requirement

* Use webrcvad for voice command segmenting

* Add vad test
2023-03-31 23:55:07 -04:00
J. Nick Koston
44b35fea47 Speed up entity filter when there are many glob matchers (#90615)
* Speed up entity filter when there are many glob matchers

Since we do no care about which glob matches we can
combine all the translated globs into a single regex
which reduces the overhead

* delete unused code

* preen
2023-03-31 21:18:29 -04:00
J. Nick Koston
3e94f2a502 Small speed up to _collection_changed (#90621)
attrgetter builds a fast method which happens in native code
4664a7cf68/Modules/_operator.c (L1413)
2023-03-31 21:15:36 -04:00
Joakim Sørensen
3e59687902 Only limit stats to started add-ons (#90611) 2023-03-31 23:57:39 +02:00
J. Nick Koston
f4c341253b Avoid sorting domain/all states in templates (#90608) 2023-03-31 11:27:55 -10:00
Paulus Schoutsen
03f085d7be Bumped version to 2023.4.0b3 2023-03-31 15:41:37 -04:00
Raman Gupta
b3348c3e6f Bump zwave-js-server-python to 0.47.3 (#90606)
* Bump zwave-js-server-python to 0.47.2

* Bump zwave-js-server-python to 0.47.3
2023-03-31 15:41:33 -04:00
puddly
590db0fa74 Perform an energy scan when downloading ZHA diagnostics (#90605) 2023-03-31 15:41:32 -04:00
puddly
f56ccf90d9 Fix ZHA definition error on received command (#90602)
* Fix use of deprecated command schema access

* Add a unit test
2023-03-31 15:41:31 -04:00
Bram Kragten
c63f8e714e Update frontend to 20230331.0 (#90594) 2023-03-31 15:41:30 -04:00
starkillerOG
a20771f571 Bump reolink-aio to 0.5.9 (#90590) 2023-03-31 15:41:29 -04:00
Franck Nijhof
2d482f1f57 Raise on invalid (dis)arm code in manual mqtt alarm (#90584) 2023-03-31 15:41:28 -04:00
Erik Montnemery
499962f4ee Tweak yalexs_ble translations (#90582) 2023-03-31 15:41:27 -04:00
Franck Nijhof
88a407361c Raise on invalid (dis)arm code in manual alarm (#90579) 2023-03-31 15:41:26 -04:00
Franck Nijhof
89dc6db5a7 Add arming/disarming state to Verisure (#90577) 2023-03-31 15:41:25 -04:00
J. Nick Koston
de9e7e47fe Make sonos activity check a background task (#90553)
Ensures the task is canceled at shutdown if the device
is offline and the ping is still in progress
2023-03-31 15:41:24 -04:00
epenet
ab66664f20 Allow removal of sensor settings in scrape (#90412)
* Allow removal of sensor settings in scrape

* Adjust

* Adjust

* Add comment

* Simplify

* Simplify

* Adjust

* Don't allow empty string

* Only allow None

* Use default as None

* Use sentinel "none"

* Not needed

* Adjust unit of measurement

* Add translation keys for "none"

* Use translations

* Sort

* Add enum and timestamp

* Use translation references

* Remove default and set suggested_values

* Disallow enum device class

* Adjust tests

* Adjust _strip_sentinel
2023-03-31 15:41:23 -04:00
Raman Gupta
6db96847d5 Bump zwave-js-server-python to 0.47.3 (#90606)
* Bump zwave-js-server-python to 0.47.2

* Bump zwave-js-server-python to 0.47.3
2023-03-31 15:39:08 -04:00
puddly
3f398818c5 Perform an energy scan when downloading ZHA diagnostics (#90605) 2023-03-31 15:37:00 -04:00
Paulus Schoutsen
01a05340c6 Voice Assistant: improve error handling (#90541)
Co-authored-by: Michael Hansen <mike@rhasspy.org>
2023-03-31 14:04:22 -05:00
puddly
84eb9c5f97 Fix ZHA definition error on received command (#90602)
* Fix use of deprecated command schema access

* Add a unit test
2023-03-31 14:53:42 -04:00
Paulus Schoutsen
ad26317b75 Conversation: allow getting agent info (#90540)
* Conversation: allow getting agent info

* Add unset agenet back
2023-03-31 14:36:39 -04:00
Paulus Schoutsen
8018be28ee TTS: allow resolving engine and test supported options (#90539)
TTS: allow resolving engine
2023-03-31 13:34:42 -05:00
J. Nick Koston
44eaf70625 Make sonos activity check a background task (#90553)
Ensures the task is canceled at shutdown if the device
is offline and the ping is still in progress
2023-03-31 14:33:44 -04:00
starkillerOG
09d54428c9 Bump reolink-aio to 0.5.9 (#90590) 2023-03-31 14:31:04 -04:00
Martin Hjelmare
8256d9b472 Remove xbox_live integration (#90592) 2023-03-31 14:30:04 -04:00
epenet
611d4135fd Add ComponentProtocol to improve type checking (#90586) 2023-03-31 14:19:58 -04:00
Bram Kragten
03137feba5 Update frontend to 20230331.0 (#90594) 2023-03-31 14:15:49 -04:00
J. Nick Koston
c566303edb Avoid writing state to all esphome entities at shutdown (#90555) 2023-03-31 18:23:05 +02:00
Erik Montnemery
149e610bca Drop __eq__ dunder method from Entity (#90585) 2023-03-31 17:03:02 +02:00
Franck Nijhof
469321157d Raise on invalid (dis)arm code in manual alarm (#90579) 2023-03-31 16:08:16 +02:00
Franck Nijhof
8e77d215e7 Raise on invalid (dis)arm code in manual mqtt alarm (#90584) 2023-03-31 16:08:02 +02:00
Erik Montnemery
9a17c437ad Remove some dead code from google_assistant (#90581) 2023-03-31 15:59:48 +02:00
Erik Montnemery
3467f4674e Remove unnecessary calls to async_update_entry from async_migrate_entry (#90575) 2023-03-31 15:53:35 +02:00
Erik Montnemery
1ca7f0dc6a Tweak yalexs_ble translations (#90582) 2023-03-31 15:50:49 +02:00
Franck Nijhof
23372e8bc4 Add arming/disarming state to Verisure (#90577) 2023-03-31 14:55:48 +02:00
epenet
4f54e33f67 Allow removal of sensor settings in scrape (#90412)
* Allow removal of sensor settings in scrape

* Adjust

* Adjust

* Add comment

* Simplify

* Simplify

* Adjust

* Don't allow empty string

* Only allow None

* Use default as None

* Use sentinel "none"

* Not needed

* Adjust unit of measurement

* Add translation keys for "none"

* Use translations

* Sort

* Add enum and timestamp

* Use translation references

* Remove default and set suggested_values

* Disallow enum device class

* Adjust tests

* Adjust _strip_sentinel
2023-03-31 14:34:20 +02:00
Hans Oischinger
ea32cc5d92 Refactor vicare config_flow tests (#90568)
* Refactor vicare config_flow tests

* Address review comments

* Remove unused parameters
2023-03-31 14:33:58 +02:00
Rami Mosleh
8cbe394028 Use get_ha_sensor_data method to update glances sensors (#83983)
* Use `get_ha_sensor_data` method to update sensor state

* update tests

* Use `get_ha_sensor_data` to validate connection

* Update test_sensor.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-31 14:27:37 +02:00
epenet
a616ac2b60 Move attribution constants to entity attributes (#90519)
* Move attribution constants to entity attributes

* Adjust meteo france

* Adjust meteoclimatic

* Adjust nws
2023-03-31 14:25:49 +02:00
epenet
ab699d17a5 Ensure numeric sensors have a valid value (#85605)
* Ensure numeric sensors have a valid value

* Flake8
2023-03-31 14:12:51 +02:00
Timm Schäuble
2e26b6e0cc Add attachments to simplepush (#81033)
* Add attachments

* Fix looking for attachment keywords in values

* Improve attachment input format

* Implement better approach to attachment parsing

* Make ruff happy

* Adjust attachment format and implementation according to comment from emontnemery
2023-03-31 14:10:12 +02:00
Franck Nijhof
28736e2ce4 Update orjson to 3.8.9 (#90570) 2023-03-31 13:59:49 +02:00
Franck Nijhof
6153f17155 Update sentry-sdk to 1.18.0 (#90571) 2023-03-31 13:58:53 +02:00
luar123
c7e8fc9f9d Use more meaningful states for snapcast groups and clients (#77449)
* Show muted snapcast groups as idle and use playing/idle state instead of on state for clients

* New module constant STREAM_STATUS

* Fix return type hint in snapcast

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-31 12:38:23 +02:00
Franck Nijhof
6bad5f02c6 Update black to 23.3.0 (#90569) 2023-03-31 12:20:08 +02:00
Franck Nijhof
b24a5750c3 Add CI timeout to codecov job (#90572) 2023-03-31 12:19:45 +02:00
Franck Nijhof
b9f0701336 Update ruff to v0.0.260 (#90566) 2023-03-31 11:43:28 +02:00
Hans Oischinger
b3887a633d Bump PyVicare to 2.25.0 (#90536) 2023-03-31 09:44:30 +02:00
epenet
d0c38c1e12 Move icon constants to entity attributes (#90518)
* Move icon constants to attribute

* Adjust test
2023-03-31 09:34:17 +02:00
J. Nick Koston
2e0ecf9bd9 Avoid more task creation in the discovery helper (#90552)
* Avoid more task creation in the discovery helper

There is no longer a reason to awaiti the jobs being dispatched
since nothing was using the result and there is no risk of
job being garbage collected prematurely anymore since
the task revamp

* Update homeassistant/helpers/discovery.py
2023-03-31 09:10:55 +02:00
J. Nick Koston
ed673a1b35 Avoid creating a task on callback in owntracks when using mqtt (#90548)
Nothing was being awaited in the callback. It did not
need to be a coro
2023-03-31 09:05:56 +02:00
Paulus Schoutsen
e7e2532c68 Bumped version to 2023.4.0b2 2023-03-30 20:55:55 -04:00
puddly
4bf10c01f0 Bump ZHA dependencies (#90547)
* Bump ZHA dependencies

* Ensure the network is formed on channel 15 when multi-PAN is in use
2023-03-30 20:55:37 -04:00
J. Nick Koston
aad1f4b766 Handle garbage in the context_id column during migration (#90544)
* Handle garbage in the context_id column during migration

* Update homeassistant/components/recorder/migration.py

* lint
2023-03-30 20:55:36 -04:00
J. Nick Koston
e32d89215d Fix migration when encountering a NULL entity_id/event_type (#90542)
* Fix migration when encountering a NULL entity_id/event_type

reported in #beta on discord

* simplify
2023-03-30 20:55:36 -04:00
Franck Nijhof
9478518937 Add entity name translations to LaMetric (#90538)
* Add entity name translations to LaMetric

* Consistency
2023-03-30 20:55:35 -04:00
Bram Kragten
8a99d2a566 Update frontend to 20230330.0 (#90524) 2023-03-30 20:55:34 -04:00
TheJulianJES
38aff23be5 Migrate old ZHA IasZone sensor state to zigpy cache (#90508)
* Migrate old ZHA IasZone sensor state to zigpy cache

* Use correct type for ZoneStatus

* Test that migration happens

* Test that migration only happens once

* Fix parametrize
2023-03-30 20:55:33 -04:00
puddly
3a3c738945 Bump ZHA dependencies (#90547)
* Bump ZHA dependencies

* Ensure the network is formed on channel 15 when multi-PAN is in use
2023-03-30 20:55:01 -04:00
Franck Nijhof
47af325a88 Add entity name translations to LaMetric (#90538)
* Add entity name translations to LaMetric

* Consistency
2023-03-30 20:54:31 -04:00
J. Nick Koston
a2efe2445a Fix migration when encountering a NULL entity_id/event_type (#90542)
* Fix migration when encountering a NULL entity_id/event_type

reported in #beta on discord

* simplify
2023-03-30 20:54:13 -04:00
J. Nick Koston
6b0c98045e Handle garbage in the context_id column during migration (#90544)
* Handle garbage in the context_id column during migration

* Update homeassistant/components/recorder/migration.py

* lint
2023-03-30 20:53:47 -04:00
Bram Kragten
6f89390251 Update frontend to 20230330.0 (#90524) 2023-03-30 13:48:21 -04:00
rikroe
565f311f5c Add EV charging remote services for BMW/Mini (#88759)
* Add select for EV charging to bmw_connected_drive

* Use snapshot for select tests, split select_option tests

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Further adjustments from code review

---------

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-30 19:37:03 +02:00
TheJulianJES
fd55d0f2dd Migrate old ZHA IasZone sensor state to zigpy cache (#90508)
* Migrate old ZHA IasZone sensor state to zigpy cache

* Use correct type for ZoneStatus

* Test that migration happens

* Test that migration only happens once

* Fix parametrize
2023-03-30 11:15:12 -04:00
Paulus Schoutsen
705e68be9e Bumped version to 2023.4.0b1 2023-03-30 10:40:19 -04:00
Franck Nijhof
4a319c73ab Add a device to the sun (#90517) 2023-03-30 10:40:12 -04:00
Paulus Schoutsen
576780be74 Unregister webhook when registering webhook with nuki fials (#90514) 2023-03-30 10:40:11 -04:00
Petro31
01734c0dab Fix for is_hidden_entity when using it in select, selectattr, reject, and rejectattr (#90512)
fix
2023-03-30 10:40:10 -04:00
Erik Montnemery
2157a4d0fc Include channel in response to WS thread/list_datasets (#90493) 2023-03-30 10:40:09 -04:00
Paulus Schoutsen
b83cb5d1b1 OpenAI to rely on built-in areas variable (#90481) 2023-03-30 10:40:08 -04:00
J. Nick Koston
2a627e63f1 Fix filesize doing blocking I/O in the event loop (#90479)
Fix filesize doing I/O in the event loop
2023-03-30 10:40:06 -04:00
puddly
30af4c769e Correctly load ZHA settings from API when integration is not running (#90476)
Correctly load settings from the zigpy database when ZHA is not running
2023-03-30 10:40:05 -04:00
epenet
02f108498c Add missing strings to sensor integration (#90475)
* Add missing strings to sensor integration

* Enumeration

* Apply suggestion

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-30 10:40:04 -04:00
J. Nick Koston
9f3c0fa927 Bump yalexs-ble to 2.1.14 (#90474)
changelog: https://github.com/bdraco/yalexs-ble/compare/v2.1.13...v2.1.14

reduces ble traffic (fixes a bug were we were checking when we did not need to be)
2023-03-30 10:40:03 -04:00
Guido Schmitz
b5811ad1c2 Add entity name translations for devolo Home Network (#90471) 2023-03-30 10:40:02 -04:00
starkillerOG
baccbd98c7 Bump reolink-aio to 0.5.8 (#90467) 2023-03-30 10:40:01 -04:00
Thijs W
9d116799d6 Add missing strings in frontier_silicon (#90446)
Improve confirm message for ssdp flow
2023-03-30 10:40:00 -04:00
RenierM26
e877fd6682 Use auth token in Ezviz (#54663)
* Initial commit

* Revert "Initial commit"

This reverts commit 452027f1a3c1be186cedd4115cea6928917c9467.

* Change ezviz to token auth

* Bump API version.

* Add fix for token expired. Fix options update and unload.

* Fix tests (PLATFORM to PLATFORM_BY_TYPE)

* Uses and stores token only, added reauth step when token expires.

* Add tests MFA code exceptions.

* Fix tests.

* Remove redundant try/except blocks.

* Rebase fixes.

* Fix errors in reauth config flow

* Implement recommendations

* Fix typing error in config_flow

* Fix tests after rebase, readd camera check on init

* Change to platform setup

* Cleanup init.

* Test for MFA required under user form

* Remove useless if block.

* Fix formating after rebase

* Fix formating.

* No longer stored in the repository

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-03-30 10:39:58 -04:00
Franck Nijhof
cf628dbf23 Add a device to the sun (#90517) 2023-03-30 10:38:35 -04:00
Paulus Schoutsen
87c4659520 Unregister webhook when registering webhook with nuki fials (#90514) 2023-03-30 15:23:13 +02:00
Paulus Schoutsen
0b72cc9f5e OpenAI to rely on built-in areas variable (#90481) 2023-03-30 15:21:45 +02:00
Erik Montnemery
976efb437b Include channel in response to WS thread/list_datasets (#90493) 2023-03-30 09:16:27 -04:00
Petro31
642984a042 Fix for is_hidden_entity when using it in select, selectattr, reject, and rejectattr (#90512)
fix
2023-03-30 09:14:58 -04:00
Maciej Bieniek
8d21e2b168 Use metric units internally in Accuweather integration (#90444)
* Use metric units internally

* Remove unnecessary code

* Simplify sensor classes

* Remove AccuWeatherForecastSensor class

* Update wind speed value in test

* Return suggested_unit_of_measurement for wind entities

* Clean test

* Use _attr_suggested_unit_of_measurement

* Remove _get_suggested_unit()

* Remove unnecessarey code
2023-03-30 13:11:33 +02:00
Erik Montnemery
ead88cc3f8 Add preferred wind speed unit to unit systems (#90504)
* Add preferred wind speed unit to unit systems

* Tweak

* Update tests
2023-03-30 12:54:12 +02:00
Erik Montnemery
b316ffff9b Rename hassfest _validate_dependencies_exist (#90503) 2023-03-30 12:05:11 +02:00
Aarni Koskela
196f5702b8 Make hassfest.dependencies faster with multiprocessing (#81486)
* hassfest.dependencies: split to two loops

* hassfest.dependencies: use multiprocessing for import scan
2023-03-30 11:25:14 +02:00
Nalin Mahajan
0e7d7f32c1 Add new control4 helper function (#90234)
* Add new helper function to retrieve device variables and update light platform

* seperate try catch from helper function and fix typing

* Change helper function name

* Remove unnecessary forced type changes

* More type changes
2023-03-30 10:33:01 +02:00
epenet
3599515325 Add missing strings to sensor integration (#90475)
* Add missing strings to sensor integration

* Enumeration

* Apply suggestion

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-30 10:21:11 +02:00
Vincent Knoop Pathuis
a7040a0487 Add Landis+Gyr MWh-readings from ultraheat-api (#89937)
* Use mwh values from ultraheat api when available

Remove manifest cleanup from PR

Remove added device class from this PR

Restore entity registry fixture

Replace filter by attr_entity_registry_enabled_default

* Catchup with #90182 and #90183

* Add comment explaining disabling some entities

* Add parameterisation of test cases
2023-03-30 09:07:47 +02:00
jellenijhof12
ba32e28fc6 Add dimmable lights support to niko home control (#90141)
* added support for dimmable lights and auto host discover

* split up merge request

* fixed feedback brightness support

* fixed feedback

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* resolved feedback

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-30 08:59:29 +02:00
Thijs W
053ed3cfdc Add reauth to frontier_silicon config flow (#90443)
* Add reauth to frontier_silicon config flow

* Update patch target

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Add reauth_successful to strings.json

* Don't manually set "title_placeholders"

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-30 08:49:46 +02:00
Thijs W
40cb0eeb68 Add missing strings in frontier_silicon (#90446)
Improve confirm message for ssdp flow
2023-03-30 08:05:24 +02:00
luar123
f0710bae06 Add config-flow to Snapcast (#80288)
* initial stab at snapcast config flow

* fix linting errors

* Fix linter errors

* Add import flow, support unloading

* Add test for import flow

* Add dataclass and remove unique ID in config-flow

* remove translations

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Refactor config flow and terminate connection

* Rename test_config_flow.py

* Fix tests

* Minor fixes

* Make mock_create_server a fixture

* Combine tests

* Abort if entry already exists

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Move HomeAssistantSnapcast to own file. Clean-up last commit

* Split import flow from user flow. Fix tests.

* Use explicit asserts. Add default values to dataclass

* Change entry title to Snapcast

---------

Co-authored-by: Barrett Lowe <barrett.lowe@gmail.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-30 07:42:09 +02:00
Raman Gupta
fc78290e2f Remove callback decorators where unneeded (#90478)
* Remove callback decorators where unneeded

* revert extra replace
2023-03-30 00:04:39 +02:00
RenierM26
93d1961aae Use auth token in Ezviz (#54663)
* Initial commit

* Revert "Initial commit"

This reverts commit 452027f1a3c1be186cedd4115cea6928917c9467.

* Change ezviz to token auth

* Bump API version.

* Add fix for token expired. Fix options update and unload.

* Fix tests (PLATFORM to PLATFORM_BY_TYPE)

* Uses and stores token only, added reauth step when token expires.

* Add tests MFA code exceptions.

* Fix tests.

* Remove redundant try/except blocks.

* Rebase fixes.

* Fix errors in reauth config flow

* Implement recommendations

* Fix typing error in config_flow

* Fix tests after rebase, readd camera check on init

* Change to platform setup

* Cleanup init.

* Test for MFA required under user form

* Remove useless if block.

* Fix formating after rebase

* Fix formating.

* No longer stored in the repository

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-03-29 17:43:54 -04:00
J. Nick Koston
4c21caa917 Fix filesize doing blocking I/O in the event loop (#90479)
Fix filesize doing I/O in the event loop
2023-03-29 17:26:28 -04:00
starkillerOG
1023628821 Bump reolink-aio to 0.5.8 (#90467) 2023-03-29 17:26:05 -04:00
Guido Schmitz
706e6597d8 Add entity name translations for devolo Home Network (#90471) 2023-03-29 17:25:33 -04:00
J. Nick Koston
3bebd4318e Bump yalexs-ble to 2.1.14 (#90474)
changelog: https://github.com/bdraco/yalexs-ble/compare/v2.1.13...v2.1.14

reduces ble traffic (fixes a bug were we were checking when we did not need to be)
2023-03-29 17:24:47 -04:00
puddly
d0a492644d Correctly load ZHA settings from API when integration is not running (#90476)
Correctly load settings from the zigpy database when ZHA is not running
2023-03-29 17:24:26 -04:00
dougiteixeira
43a7247dde Move ProxmoxEntity to entity.py (#90480)
* Move ProxmoxEntity to entity.py

* Update homeassistant/components/proxmoxve/entity.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/proxmoxve/entity.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/proxmoxve/entity.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/proxmoxve/entity.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/proxmoxve/binary_sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-29 23:04:37 +02:00
Franck Nijhof
7010447b04 Bump version to 2023.5.0dev0 (#90477) 2023-03-29 16:46:32 -04:00
Chris Xiao
7c778847e7 Add config flow to qBittorrent (#82560)
* qbittorrent: implement config_flow

Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com>

* qbittorrent: add English translations

Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com>

* qbittorrent: create sensors with config_flow

Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com>

* qbittorrent: set unique_id and icon

Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com>

* qbittorrent: add tests for config_flow

Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com>

* qbittorrent: detect duplicate config entries

Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com>

* qbittorrent: import YAML config

Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com>

* qbittorrent: update coveragerc

Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com>

* qbittorrent: delete translations file

* create `deprecated_yaml` issue in `setup_platform`

* move qbittorrent test fixtures to conftest.py

* improve code quality & remove wrong unique_id

* keep PLATFORM_SCHEMA until YAML support is removed

* remove CONF_NAME in config entry, fix setup_entry

* improve test suite

* clean up QBittorrentSensor class

* improve user flow tests

* explicit result assertion & minor tweaks in tests

Co-authored-by: epenet <epenet@users.noreply.github.com>

* implement entry unloading

Co-authored-by: epenet <epenet@users.noreply.github.com>

* add type hints

* tweak config_flow data handling

---------

Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com>
Co-authored-by: epenet <epenet@users.noreply.github.com>
2023-03-29 22:13:41 +02:00
Franck Nijhof
fc67a147ce Bumped version to 2023.4.0b0 2023-03-29 22:01:31 +02:00
Erik Montnemery
5bc9545b81 Rename custom_jinja to custom_templates (#90473)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-03-29 21:58:25 +02:00
Michael
cf0550f5c2 Add re-auth flow to nextcloud (#90472) 2023-03-29 21:46:08 +02:00
Kevin Stillhammer
28d045cf75 Allow resetting filters for waze_travel_time (#88253)
* Allow resetting filters by using vol.Maybe

* Fix return types

* Use suggested values

* Apply feedback

* Apply nitpick
2023-03-29 21:05:20 +02:00
Bram Kragten
a478e278fd Update frontend to 20230329.0 (#90461) 2023-03-29 21:04:04 +02:00
Raman Gupta
4877cf8d5d Bump zwave-js-server-python to 0.47.1 (#90464) 2023-03-29 14:30:30 -04:00
Michael
b881995efc Add verify ssl option to nextcloud (#90462)
add verify sssl option to config flow
2023-03-29 19:36:42 +02:00
Marcel van der Veldt
a33c70e595 Bump python-matter-server to 3.2.0 (#90457) 2023-03-29 18:52:21 +02:00
Luke
7ca5beddfc Fix Oralb Logger (#90460) 2023-03-29 06:36:01 -10:00
Paulus Schoutsen
81c39e42f4 Bump home-assistant-intents to 2023.3.29 (#90459) 2023-03-29 11:25:08 -05:00
epenet
f7925763a4 Make abort_entries_match available in options flow (#90406)
* Make abort_entries_match available in options flow

* Add tests

* Exclude ignore entries and add test

* Move to OptionsFlow

* Adjust tests

* Use mock_config_flow

* Use AbortFlow

* Remove duplicate code
2023-03-29 17:20:51 +02:00
mletenay
a1c94919de Fix goodwe export limit unit on single phase DT inverters (#90427)
* Fix export limit unit on single phase DT inverters

* Update homeassistant/components/goodwe/number.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-29 16:01:14 +02:00
starkillerOG
d427c35c87 Reolink improve config flow login (#90036) 2023-03-29 14:41:38 +02:00
Renat Sibgatulin
8dbcbd156a Add new sensors to airq (#90413)
Support for the sensors introduced in air-Q firmware v1.82.0
2023-03-29 11:33:27 +02:00
MatthewFlamm
c06bc28434 Limit observations requested for NWS (#90137)
* fetch data only for 70 minutes

* Use timezone aware now

* Type hint

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-29 10:34:29 +02:00
J. Nick Koston
b58c90602f Bump yalexs-ble to 2.1.13 (#90442) 2023-03-29 09:39:44 +02:00
Klaas Schoute
0327f312f2 Fix data issue for easyEnergy during midnight (#90434) 2023-03-29 08:37:20 +02:00
Klaas Schoute
12edaa052c Fix data issue for energyzero during midnight (#90433) 2023-03-29 08:29:44 +02:00
J. Nick Koston
8096be768d Isolate the sql integration with a separate query cache (#90438)
* Isolate the sql integration with a seperate query cache

If there were a lot of sql integrations they could affect
the performance of the recorder/logbook/history since they
were sharing the same LRU and since the sql sensor updates
frequently it would evict the recorder queries from the
LRU.

* generate in stmt

* avoid double gen

* Revert "avoid double gen"

This reverts commit 6a5aa65268.
2023-03-28 23:54:03 -04:00
J. Nick Koston
5dc96a6952 Fix unbound variable in sql when session setup fails (#90439)
Traceback (most recent call last):
  File "/Users/bdraco/home-assistant/homeassistant/helpers/entity_platform.py", line 304, in _async_setup_platform
    await asyncio.shield(task)
  File "/Users/bdraco/home-assistant/homeassistant/components/sql/sensor.py", line 75, in async_setup_platform
    await async_setup_sensor(
  File "/Users/bdraco/home-assistant/homeassistant/components/sql/sensor.py", line 150, in async_setup_sensor
    sessmaker := await hass.async_add_executor_job(
  File "/opt/homebrew/Cellar/python@3.10/3.10.9/Frameworks/Python.framework/Versions/3.10/lib/python3.10/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/Users/bdraco/home-assistant/homeassistant/components/sql/sensor.py", line 205, in _validate_and_get_session_maker_for_db_url
    if sess:
UnboundLocalError: local variable 'sess' referenced before assignment
2023-03-28 23:52:44 -04:00
Paulus Schoutsen
885be98f8f OpenAI to use GPT3.5 (#90423)
* OpenAI to use GPT3.5

* Add snapshot
2023-03-29 05:37:43 +02:00
J. Nick Koston
403dffc12d Reduce cache key size for queries that only need single columns (#90430)
* Reduce cache key size for queries that only need single columns

These queries only cared about a single row but would select
the whole set of columns from the orm object

* wrap it
2023-03-28 23:28:24 -04:00
J. Nick Koston
ce28bfe5b2 Remove unused types argument in statistics query generation (#90431)
* Remove unused types argument in statistics query generation

* update test
2023-03-28 23:01:11 -04:00
Nathan Spencer
2c7c8ccbfe Fix bluetooth polling recovered log missing argument (#90436) 2023-03-28 16:36:26 -10:00
Thijs W
e3cad8baac Migrate ssdp to config_flow for frontier_silicon (#89496)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-28 16:06:21 -10:00
TheJulianJES
47a2598b66 Add Aqara smoke sensor entities to ZHA (#90159)
* Add Aqara smoke sensor entities (WIP)

* Update smoke sensor entities (WIP)

* Drop two init attributes

* Move self-test button

* Remove self-test switch, add icons

* Add smoke sensor dbm entity

* Also add SMOKE device class to linkage alarm

Note: Enable "Linkage alarm" for this
2023-03-28 21:30:56 -04:00
TheJulianJES
12f49006cf Add Aqara E1 thermostat entities to ZHA (#90158)
* Add Aqara E1 thermostat entities (WIP)

* Remove calibrate button for now

* Add diagnostic entity category to calibrated + external sensor

* Add multiplier for ZHA config number/away preset temp

* Set default multiplier correctly

* Add and use `CONFIG_DIAGNOSTIC_MATCH` for diagnostic entities
2023-03-28 21:12:21 -04:00
David F. Mulcahey
8660035027 Bump ZHA quirks to 0.0.95 (#90435) 2023-03-28 20:59:26 -04:00
J. Nick Koston
4f05246654 Bump onvif-zeep-async to 1.2.3 (#90382) 2023-03-28 13:54:33 -10:00
MattWestb
ee2101ef38 Add binding of IKEA Matter Switch cluster in ZHA (#89623)
* Adding binding of IKEA Matter Switch cluster

IKEA Symfonisk Gen 2 is using Matter ZCL Switch command but on manufacture cluster then its not supported in ZVL R8 that need being bond for sending the commands to the coordinator.

* Update manufacturerspecific.py

* Update manufacturerspecific.py

Delete not needed function `@registries.BINDABLE_CLUSTERS.register(0xFC80)`
2023-03-28 19:33:06 -04:00
J. Nick Koston
9dc936f8b9 Add sqlalchemy LRUs to the profiler lru service (#90428) 2023-03-28 12:02:35 -10:00
mletenay
9ae0236208 Add goodwe sensors for apparent/reactive pwr (#87940) 2023-03-28 23:31:14 +02:00
J. Nick Koston
f60e9c71a2 Make bootstrap cancelation safe (#90420) 2023-03-28 11:22:41 -10:00
Erik Montnemery
e22618a555 Write protect entity options (#90185) 2023-03-28 22:56:51 +02:00
J. Nick Koston
0550b17d54 Rework recorder filters to avoid caching mistakes (#90419) 2023-03-28 22:51:46 +02:00
Jan Bouwhuis
93e1cd8dd8 Add header with parsed date to imap event data (#90422) 2023-03-28 22:50:25 +02:00
mkmer
0ceee2b6c3 Catch somecomfort error in Honeywell (#90425) 2023-03-28 22:48:27 +02:00
starkillerOG
e9925f6062 Check webhook url is reachable in Reolink (#89585)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-28 22:46:59 +02:00
Jan Bouwhuis
24d0d15f38 Implement imap_content event for imap integration (#90242) 2023-03-28 21:02:43 +02:00
J. Nick Koston
d21433b6af Ensure filters are generated inside the lambda locks (#90418) 2023-03-28 20:50:10 +02:00
Aaron Godfrey
9ccd43e5f1 Add DataUpdateCoordinator to the Todoist integration (#89836)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-28 18:57:24 +02:00
TheJulianJES
89a3c304c2 Refactor ZHA binary sensors to read from zigpy cache (#89481)
* Construct binary sensor state from zigpy cache (WIP)

* Workaround zha-quirks issue where "MotionWithReset" quirks don't update attribute cache (WIP)

zha-quirks currently has an issue where the ZONE_STATE attribute is updated (when the zone_STATUS changes).
https://github.com/zigpy/zha-device-handlers/pull/2231 is a proper fix for this.

For now, we just update the attribute cache when we get the "zone status update notification" command.

This wasn't noticed before, as the "attribute report signal" was sent from the `cluster_command()` method and the used the provided attribute (in the signal) to update the `_state` value in the binary sensor class.
As we just tell HA to write state again when we get an attribute report now, the ZONE_STATUS attribute is read now (and needs to be correct).

* Use parse() method of main class for IasZone entity (with stripped bits)

* Change wording in comment, remove explicitly sending attr signal

(This comment should be removed/changed later anyway)

* Remove note

* Get zone_status attribute id with zigpy

* Remove `security.` prefix for `IasZone` import

`AceCluster` was already directly imported and `IasZone` is too now for getting the attribute id

* Store full zone status attribute in cache

* Check that non-alarm bits are ignored in IasZone sensor test

* Re-enable occupancy binary sensor test

This test seems to work fine and I don't see any reason why it was commented out for a while

* Fix cached read mix-up for `zone_status`/`zone_state`

This allows cached reads for `zone_state` (enrolled or not), but forces a new read for `zone_status` (alarm or not).
2023-03-28 12:39:10 -04:00
Dmitry Vlasov
4b3c1f2800 Update zwave-me-ws version to 0.3.6 (#90233) 2023-03-28 17:24:19 +02:00
DerEnderKeks
9fecdddf01 Don't use force_update for Tasmota sensors (#85943)
* fix: don't use force_update for Tasmota sensors

* Update binary_sensor.py

* Update test_binary_sensor.py

* Update test_sensor.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-28 17:14:52 +02:00
Michał Huryn
0a51914740 Blebox cover tilt (#85515)
* feature: added tilt for shutterBox

* test: include tilt in tests
2023-03-28 17:11:48 +02:00
Joakim Sørensen
d907bd2ca3 Add connected relayer region to system health (#90410) 2023-03-28 17:09:59 +02:00
Wesley Vos
478a1d5e9a Add periodically resetting meter option to utility meter (#88446)
* Use last valid state if meter is not periodically resetting

* Fix unload of entry, used during options flow submit

* Adjustments based on code review

* Move DecimalException handling to validation method

* Add test for invalid new state in calculate_adjustment method
2023-03-28 17:09:20 +02:00
ehendrix23
e45eab600f Add has_value function/test to Jinja2 template (#79550) 2023-03-28 17:04:29 +02:00
Chris Xiao
048d30904e Simplify qbittorrent sensor class init (#90411)
catch LoginException directly in QBittorrentSensor init

Since the `exception` arg in QBittorrentSensor `__init__` is always
LoginException, we catch LoginException directly in `__init__` instead
of passing LoginException as an argument.
2023-03-28 16:52:16 +02:00
Dave T
f081fa8feb Add basic tests for temper USB temperature sensor integration (#80220)
* Add basic tests

* Updated requriements_test_all.txt

* Update temperusb version

* Add type hints

Co-authored-by: Christian Knittl-Frank <lcnittl@gmail.com>

* Add type hints

Co-authored-by: Christian Knittl-Frank <lcnittl@gmail.com>

* Correct typo in type hint

* Fix isort

* Fix requirements_test_all.txt

---------

Co-authored-by: Dave T <davet2001@users.noreply.github.com>
Co-authored-by: Christian Knittl-Frank <lcnittl@gmail.com>
2023-03-28 16:50:59 +02:00
Robert Hillis
866518c5a0 Add tests to Lidarr (#79610)
* Add tests to Lidarr

* fix js files

* take out the trash

* fix 3.9

* uno mas

* fix fixture

* ruff

* Update const.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-28 16:49:32 +02:00
Guido Schmitz
a26d95ec02 Add switch tests for devolo_home_control (#80154) 2023-03-28 16:45:06 +02:00
Alexander Momchilov
abe60375b3 Disable esphome stopping a cover if the cover doesn't support stopping (#80104)
* Make "CoverEntityFeature.STOP" conditional

* Check APIVersion before checking false by default flag

* sort

---------

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-03-28 16:43:47 +02:00
b-uwe
3662c651c9 Add brand for HomeSeer (#90066) 2023-03-28 16:37:57 +02:00
epenet
bdf29b594f Replace comments with docstring in ColorMode enum (#90408) 2023-03-28 16:32:39 +02:00
epenet
02e2e4d039 Add rest encoding test (#90404)
* Add rest encoding test

* docstring
2023-03-28 16:29:24 +02:00
Erik Montnemery
b4775ed2eb Don't rely on the demo integration in voice_assistant tests (#90405) 2023-03-28 15:22:48 +02:00
Petro31
2123600039 Add minutely updates to relative_time and today_at template functions (#86815)
* add minutely update

* fix mypy
2023-03-28 15:10:28 +02:00
Nathan Spencer
cdefc48fcd Add panel brightness control for Litter-Robot 4 (#86269)
* Add panel brightness control for Litter-Robot 4

* Use translation_key

* Fix test
2023-03-28 15:07:09 +02:00
Renat Sibgatulin
091932c3ac Improve airq test coverage (#90192)
* Add a missing test for aborting with "already_configured"

Test that config_flow aborts with "already_configured" when the
integration has already been configured

* Don't copy test data

Since #90232 is merged, it is no longer needed

* Split the initialisation into two steps, as it should be
2023-03-28 14:59:03 +02:00
Erik J. Olson
d228df6d81 Fix Notify Group payload data mis-merge (#90253)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-28 14:56:10 +02:00
Robert Hillis
8e7013b079 Add HTML support for Google Mail messages (#87201) 2023-03-28 14:34:57 +02:00
avee87
cc404cfe77 Refactor Tado to use entity descriptions and new naming style (#75750)
* Refactor Tado to use entity descriptions and new naming style

* minor fixes

* typing
2023-03-28 08:24:19 -04:00
Maikel Punie
0eb409cff1 Add support for select entities in velbus (#87568)
* Add support for select entities in velbus

* Implement comments

* EntityCategory is now in homeassistant.const

* more comments
2023-03-28 08:01:31 -04:00
Ryan Fleming
7b18df321b Have octoprint camera respect verify_ssl configuration (#90384) 2023-03-28 14:00:35 +02:00
Martin Hjelmare
29645d5820 Remove mysensors ir switch (#90403) 2023-03-28 13:39:32 +02:00
MarkGodwin
6e23e00b5a TP-Link Omada update entities code review feedback (#89668) 2023-03-28 13:25:10 +02:00
Geoff
08444eeb76 Update transmission up/down speed values (#88528)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-28 13:20:20 +02:00
PatrickGlesner
f72bf73b03 Fix NMBS IndexError (#90365) 2023-03-28 13:19:52 +02:00
J. Nick Koston
de2ca31a71 Remove lru_cache on websocket _state_diff (#90392) 2023-03-28 13:08:43 +02:00
Martin Hjelmare
e6c94d7854 Remove mysensors notify (#90402) 2023-03-28 13:05:09 +02:00
Jan Iven
b6a0ac6f0a Fix envoy last_seven_days_energy* state class (#84528)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-28 13:04:08 +02:00
J. Nick Koston
b207790177 Fix benign typo in discovery flow helper (#90396) 2023-03-28 13:01:41 +02:00
Willem-Jan van Rootselaar
4575352101 Bump python-bsblan to 0.5.11 (#90377) 2023-03-28 12:50:57 +02:00
Michael
e4bb339a1e Add device info to Nextcloud integration (#90328)
* add device_info

* use entry_id as identifier + device name

* use shorthand attributes

* remove model from device info

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-28 12:43:00 +02:00
Olivier Ouellet
1c465b5ad0 Add encoding configuration setting to REST and Scape (#90254)
* Create new config parameter for default character encoding if no character encoding is declared

* Changes suggested by gjohansson-ST

* Added config flow for scape

* Removed "character"

* Change to create_async_httpx_client

* Remove CONF_ENCODING from Scrape SENSOR_SCHEMA

* Debug scrape test
2023-03-28 12:42:31 +02:00
Erik Montnemery
3c3860c923 Make OTBR use same channel as ZHA (#88546) 2023-03-28 12:34:25 +02:00
Allen Porter
ae41547b73 Update calendar to always request start/end dates in local time rather than UTC (#90386) 2023-03-28 12:25:44 +02:00
J. Nick Koston
be5714e3fd Use slots for recorder tasks to reduce memory (#90387) 2023-03-28 12:24:12 +02:00
BNolet
6fbdcac323 Fix setting color + brightness of Tuya lights (#88470)
* Check if changing TO a color mode

Changing brightness alone does not change work mode, but changing brightness with a color value will keep the light in white mode. 

By verifying the new state has color or not, rather than the existing state being in color work mode, the light will change to color correctly.

Tuya interprets HSV as including the brightness in the (v) value (which is generally what that's used for when setting HSV values). The brightness value given by Home Assistant is still used in this case.

* Fix brightness-only turning colour mode to white

This will take into account the case where brightness is the only parameter for both the case of colour mode and white mode.

Tests passed after this change:

* Brightness only (colour mode) 
* Brightness only (white mode) 
* Colour only (colour mode) 
* Colour only (white mode) 
* Colour temp only (colour mode) 
* Colour temp only (white mode) 
* Colour + brightness (colour mode) 
* Colour + brightness (white mode) 
* Colour temp + brightness (colour mode) 
* Colour temp + brightness (white mode) 

* Fix code formatting
2023-03-28 12:20:54 +02:00
epenet
96dae587a9 Fix ridwell tests (#90401) 2023-03-28 11:54:16 +02:00
Chris Xiao
e617bfb1bb Display unit of elevation in met config flow (#88283)
* display unit of elevation in met config flow

Co-authored-by: lijake8 <lijake8@users.noreply.github.com>
Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com>

* use NumberSelector for met config flow

* met remove unused is_metric param

---------

Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com>
Co-authored-by: lijake8 <lijake8@users.noreply.github.com>
2023-03-28 11:51:35 +02:00
Pascal Reeb
23a1a8075c Add callback support to nuki (#88346)
* feat(nuki): add callback support

* fix(nuki): add webhook_enabled to tests

* remove callback choice, add repair if it's https

* black

* fix(nuki): implemented feedback from pvizeli and frenck

* remove unneded test change

* remove issue_registry and http check

* remove unneded response

* add await to executor_job
2023-03-28 11:28:04 +02:00
J. Nick Koston
2fd872b253 Speed up profiler lru test (#90395) 2023-03-28 11:02:08 +02:00
Jens Østergaard Nielsen
e0424c8322 Use shorthand attributes in IHC (#90350)
* typings to make linter happy

* Moving device_class and native_value to init

* remove is_on and use attr_is_on

* Use try_parse_enum for sensor type

* Remove not needed sensor_type

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/ihc/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-28 10:23:00 +02:00
dougiteixeira
190393c6bb Improve Proxmox VE type hints (#90359)
* Improves some type hints in Proxmox VE

* update

* update]

* fix isort

* Fix vm_id type

* Fix vm_id type

* Update homeassistant/components/proxmoxve/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/proxmoxve/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Change initialization of _proxmox

* Move definition of _proxmox to class level

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-28 10:17:33 +02:00
Raman Gupta
c51ed4b328 Redact secret zwave values in diagnostics (#90389)
* redact secret zwave values from diagnostics

* shhrink

* rename
2023-03-28 09:59:01 +02:00
Jan Bouwhuis
14ffda9758 Remove dependency on async_setup from mqtt integration (#87987)
* Remove async_setup from mqtt integration

* Final update common tests

* Related tests init

* Related tests diagnostics

* Related tests config_flow

* Cleanup and correct test

* Keep websockets_api commands in async_setup
2023-03-28 09:37:07 +02:00
Erik Montnemery
5e03272821 Bump pychromecast to 13.0.6 (#90390) 2023-03-28 09:36:34 +02:00
G Johansson
706e8d5612 Add product calculation to Group sensor (#87373)
* Group product

* config flow
2023-03-28 09:35:09 +02:00
Aaron Godfrey
8b7594ae08 Look up todoist collaborators only when adding new task (#87957)
* Look up collaborators only when adding new task.

Also fixed a few api call arguments that were incorrect. The `labels`
key should have been a list of strings and the `assignee` key should
have been `assignee_id`.

* Add missing type in test.

* Remove print
2023-03-28 09:33:32 +02:00
Aaron Bach
ff135ecdc6 Add a calendar entity to Ridwell (#88108)
* Subclass a `DataUpdateCoordinator` for Ridwell

* Add a calendar entity to Ridwell

* Simpler unique ID

* Fix tests

* Docstring
2023-03-28 09:31:36 +02:00
Joakim Plate
0666a4750c Add re-auth support to philips_js (#88774)
* Add re-auth support to philips_js

* Adjustments from review

* Don't allow duplicate entries for now
2023-03-28 09:30:42 +02:00
stickpin
dc05272120 Display only supported Home Connect appliance programs (#88801)
Show only supported device programs
2023-03-28 09:14:19 +02:00
Erik Montnemery
586471b5a9 Improve threshold binary sensor (#88978)
Improve threshold sensor
2023-03-28 09:11:13 +02:00
gjong
bfb5daa31c Add phase information to YouLess (#89255) 2023-03-28 08:49:31 +02:00
Mark Adkins
38f3b9f165 Add SharkIQ EU region support (#89349)
* SharkIQ Dep & Codeowner Update

* Update code owners

* Add EU Region Support

* Update Config Flow Tests

* Standardize Region Comparison Strings

* Add Translation Support to Region Selector

* Fix Validation Tests
2023-03-28 08:48:32 +02:00
Penny Wood
db6f0827aa Allow reloading iZone config entry (#89572)
* Allow reloading of iZone config entries
---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-28 08:47:45 +02:00
Cosmin Luță
8807878529 Add Mikrotik WifiWave2 (#89711)
* Add support for wifiwave2

* Add test for wifiwave2
2023-03-28 08:46:16 +02:00
mkmer
b399e5c8b7 Handle uncaught exceptions during update in Aladdin_connect (#89889)
* Handle uncaught errors during update

* Remove unnecssary patch

* Update tests/components/aladdin_connect/test_cover.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Update tests/components/aladdin_connect/test_cover.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Remove unasserted statement

* Blocking is True - one more

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-28 08:45:10 +02:00
Michael
c0387a655c Turn AVM FRITZ!Box Tools binary sensors into coordinator entities (#89955)
make binary sensors coordinator entities
2023-03-28 08:39:34 +02:00
Maciej Bieniek
33fef5592f Refactor GIOS sensor platform (#89389) 2023-03-28 08:36:42 +02:00
J. Nick Koston
dc37d92197 Add lru stats to the profiler integration (#90388) 2023-03-28 08:34:56 +02:00
Matthias Alphart
3dd3cb195f Set default value for some Fronius entities (#89475) 2023-03-28 08:23:53 +02:00
Renat Sibgatulin
e27d3c9523 Improve airq handling of DeviceInfo (#90232)
* Reduce data sharing between ConfigFlow and DataUpdateCoordinator

Instead of fetching device information from the device once in
`ConfigFlow` and then piping it through in `ConfigEntry.data`,
only use as much as needed in `ConfigFlow.async_step_user`, then fetch
again in `AirQCoordinator._async_update_data` if a key is missing.

Additionally, factor `AirQCoordinator` out into a sumbodule.

Add a simple test for `AirQCoordinator.device_info` update.

Positive side effect: `AirQCoordinator.device_info` is
updated explicitly, instead of dumping the entire content of (a fully
compatible) `TypedDict`, retrieved from `aioairq`.

* Remove tests ill-suited to this PR

`test_config_flow.test_duplicate_error` slipped through by mistake,
while `test_coordinator.test_fetch_device_info_on_first_update` may need
a more thoroughly suite of accompanying tests

* Ignore airq/coordinator.py

...newly separated from airq/__init__.py, that's already in this list

* Reorder files alphabetically
2023-03-28 08:18:47 +02:00
dougiteixeira
5b4663d2ca Bump proxmoxer to 2.0.1 in Proxmox VE (#90378) 2023-03-28 01:27:54 +02:00
J. Nick Koston
59113a3e4c Bump flux_led to 0.28.36 (#90380) 2023-03-28 00:50:11 +02:00
Michael
a361fba8f5 Bump nextcloudmonitor to 1.4.0 (#90372) 2023-03-28 00:48:14 +02:00
J. Nick Koston
1cd2fe9d28 Bump aiodiscover to 1.4.15 (#90383) 2023-03-28 00:44:34 +02:00
J. Nick Koston
058a2c9d83 Bump yalexs-ble to 2.1.12 (#90381) 2023-03-28 00:41:51 +02:00
G Johansson
cb6d384dba Workday cleanup (#90267)
* clean binary sensor

* fix const

* clean sensor

* Fix tests

* Clean up

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-03-27 23:11:49 +02:00
Martin Hjelmare
182af87f97 Refactor matter device entity value conversion (#90368) 2023-03-27 22:21:56 +02:00
Franck Nijhof
fb4b35709d Add state translations for helpers (#90356)
* Add state translations for helpers

* Managed via the UI
2023-03-27 16:19:25 -04:00
Jonas Bergler
9f04c23414 Support toggling debug logging for custom components (#90340)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-27 09:40:58 -10:00
Denis Shulyaka
71b5ccee23 Fix generic_hygrostat error at startup (#88764) 2023-03-27 21:22:36 +02:00
G Johansson
96698813ef Cleanup command_line (#90268)
* Cleanup command_line

* Fix ipv6 resolver

* Fix fix

* Fix tests

* Align states
2023-03-27 21:19:09 +02:00
Franck Nijhof
2ceb24e5d0 Fail CI if codecov upload fails (#90363) 2023-03-27 20:49:49 +02:00
Erik Montnemery
506a916a13 Add reauth flow to dormakaba dkey (#90225) 2023-03-27 08:37:31 -10:00
epenet
1937d803c5 Add RestoreEntity pylint checks to all platforms (#90020) 2023-03-27 20:08:20 +02:00
Martin Hjelmare
18933df95c Clean dead code from matter (#90369) 2023-03-27 20:06:59 +02:00
Erik Montnemery
f84651b14e Improve tts test coverage (#90370) 2023-03-27 20:00:54 +02:00
Franck Nijhof
a405112142 Add state translations for Script entities (#90354) 2023-03-27 13:59:57 -04:00
Trevor Bernard
d59e2b1349 Add "stream" to default_config (#90153)
* add stream to manifest

* Update __init__.py

remove av check from init

* Update homeassistant/components/default_config/__init__.py

* Update requirements

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-03-27 13:57:56 -04:00
Franck Nijhof
b033232b06 Filter out ASCII tab or newline from input URLs (#90348) 2023-03-27 13:49:40 -04:00
javicalle
f4fda55405 Fix quirk_class_validator in ZHA unit tests (#90140)
* Fix `quirk_class_validator`

Fix the `quirk_class_validator` for quirks with more than 1 module level

* fix black

* Shorten `quirk_cls` in `clss`

Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>

* Update comment

---------

Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>
2023-03-27 11:57:40 -04:00
Franck Nijhof
89f89cab2c Use entity name translations in Verisure (#90362) 2023-03-27 16:55:10 +02:00
Jan Bouwhuis
fd3280260d Remove unreachable continue statement in imap push coordinator (#90361) 2023-03-27 16:39:51 +02:00
dougiteixeira
2ce3c014ff Move Proxmox VE constants (#90357)
* Move constants to const.py

* Update homeassistant/components/proxmoxve/const.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/proxmoxve/const.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/proxmoxve/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-27 15:27:55 +02:00
Avi Miller
a32c78238e Bump lifx dependencies (#90345) 2023-03-27 14:06:30 +02:00
Erik Montnemery
a91aef9d52 Rewrite tts tests (#90355) 2023-03-27 14:01:17 +02:00
epenet
c193402ba7 Remove incorrect ignore in pylint plugin (#90024)
* Remove incorrect ignore_missing_annotations

* Allow tuple[int, int] in hs_color

* Adjust notify targets

* Always check for return type inheritance

* Adjust tests

* Revert "Always check for return type inheritance"

This reverts commit 3528742adf98edc6481f2c954c032ace881e1d6e.

* Revert "Allow tuple[int, int] in hs_color"

This reverts commit d51c1731eff3d59b9e94e7a7e914933ceaf8e34f.

* Revert "Adjust notify targets"

This reverts commit 4cba77a7309dc89980e29d6d5b9107d9e55f7070.
2023-03-27 13:53:14 +02:00
epenet
53de9dcdbc Fix pylint plugin for binary websocket (#90351) 2023-03-27 13:09:42 +02:00
Raman Gupta
c11a3881af Bump zwave-js-server-python to 0.47.0 (#90212) 2023-03-27 12:25:04 +02:00
Joel Goguen
d9471fd01a Bump python-holidays to 0.21.13 (#89724)
Update Python holidays module to 0.21.13

python-holidays 0.19-0.21.13 adds support for new countries and enhances
support for many currently supported countries.
2023-03-27 12:14:16 +02:00
Jan Bouwhuis
5b3c57ff1e Add option flow for imap integration (#89914)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-27 11:47:22 +02:00
starkillerOG
0d58646823 Bump reolink-aio to 0.5.7 (#90344) 2023-03-27 11:11:38 +02:00
starkillerOG
97f8a3fdcd Reolink add auto tracking entities (#90063) 2023-03-27 11:04:03 +02:00
PatrickGlesner
56293ad876 Revert "Fix NMBS IndexError" (#90346) 2023-03-27 11:00:52 +02:00
epenet
94a52d5cca Adjust tts default_options type hints (#90053)
* Adjust tts default_options type hints

* Improve other components

* Adjust

* Revert component changes

* Adjust get_tts_audio in amazon_polly
2023-03-27 11:00:23 +02:00
epenet
8c519e1abb Use SnapshotAssertion in gree climate tests (#90339) 2023-03-27 10:01:39 +02:00
epenet
164482dc08 Use lambda in gree switch (#90316) 2023-03-27 10:00:41 +02:00
Franck Nijhof
2041a0b4f9 Merge branch 'master' into dev 2023-03-27 09:42:15 +02:00
J. Nick Koston
6a5c05e7d2 Add support for clearing the on device GATT cache to esphome (#90318) 2023-03-27 09:34:28 +02:00
Jan Bouwhuis
a773c37190 Cleanup name assignment imap sensor (#90306) 2023-03-27 08:33:46 +02:00
G Johansson
624860da0e Remove deprecated platform yaml in Scrape (#90272)
* Deprecate platform yaml

* typing

* DiscoveryInfoType
2023-03-27 08:05:30 +02:00
Paulus Schoutsen
c3717f8182 Clean up voice assistant integration (#90239)
* Clean up voice assistant

* Reinstate auto-removed imports

* Resample STT audio from 44.1Khz to 16Khz

* Energy based VAD for prototyping

---------

Co-authored-by: Michael Hansen <mike@rhasspy.org>
2023-03-26 21:41:17 -05:00
J. Nick Koston
7098debe09 Fix sql doing I/O in the event loop at startup (#90335)
* Fix sql doing I/O in the event loop

* Fix sql doing I/O in the event loop

* no test query on main db

* fix mocking because it was targeting the recorder
2023-03-26 21:02:24 -04:00
Anders Melchiorsen
75e28826e0 Upgrade netgear_lte third-party library to v0.0.15 (#90324)
* Upgrade netgear_lte third-party library to 0.0.15

* Create explicit tasks for asyncio.wait()
2023-03-26 19:22:20 -04:00
J. Nick Koston
65e46e3261 Bump aioesphomeapi to 13.6.0 (#90330) 2023-03-26 12:58:07 -10:00
J. Nick Koston
ce9099a386 Bump cryptography to 40.0.1 (#90326) 2023-03-26 12:30:17 -10:00
J. Nick Koston
a7c796a2f7 Ensure esphome connected future is awaited when connecting is canceled (#90329) 2023-03-26 12:30:00 -10:00
J. Nick Koston
a733ca96a2 Bump yalexs-ble to 2.1.9 (#90320) 2023-03-27 00:17:32 +02:00
skrynklarn
bdd095423b Add last trip time attribute to Verisure binary sensors (#89944) 2023-03-27 00:17:12 +02:00
Michael
00ce757051 Apply late review comments from #89396 in Nextcloud (#90327) 2023-03-27 00:10:57 +02:00
Raman Gupta
16028dc9bc Add milliseconds as valid duration sensor unit (#90018) 2023-03-26 23:52:01 +02:00
epenet
c06ec1f78f Improve onewire test coverage (#90184) 2023-03-26 23:46:52 +02:00
Chris Xiao
2642d37505 Set qbittorrent integration_type to service (#90236) 2023-03-26 23:40:59 +02:00
Jens Østergaard Nielsen
0393797ade Bump ihcsdk to 2.8.5 (#90266) 2023-03-26 23:32:06 +02:00
Allen Porter
fa35867765 Bump ical to 4.5.1 and set PRODID for home assistant in local calendar ics (#90291) 2023-03-26 23:00:45 +02:00
Aaron Godfrey
745df277a0 Fix Todoist end date for all day event (#89837) 2023-03-26 22:08:36 +02:00
J. Nick Koston
8c9966aa05 Ensure esphome subscribes to bluetooth connection free before accepting connect requests (#90319) 2023-03-26 22:06:14 +02:00
Franck Nijhof
916b274ec8 Update pipdeptree to 2.7.0 (#90312) 2023-03-26 09:47:47 -10:00
Igor Santos
94cc188885 [Issue template] Point to health page for version info (#80708) 2023-03-26 21:37:24 +02:00
Michael
45262c6114 Implement config flow for nextcloud (#89396)
* implement config flow

* add tests

* fix hassfest and requirements

* abort import on connection error

* add add_suggested_values_to_schema

* mock async_setup_entry

* revert code owner change

* fix try connect in config flow

* add device info

* allow multiple instances

* fix import in config flow

* remove custom scan interval from coordinator

* applay suggestions

* apply suggestions

* take over ownership from @meichthys

* cleanup import data before passing to user step

* apply suggestions to tests

* add untested files to .coveragerc
2023-03-26 21:14:17 +02:00
J. Nick Koston
542def7f82 Bump pySwitchbot to 0.37.5 (#90317) 2023-03-26 09:10:35 -10:00
Alexey Baturin
89355e0879 Add WLED IP as a sensor (#90241)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-26 20:03:03 +02:00
epenet
c075dac916 Fix pylint plugin for tuple[float, float] returns (#90047) 2023-03-26 19:54:21 +02:00
epenet
3b83340f6e Improve get_browse_image type hints in media player (#90057) 2023-03-26 19:54:01 +02:00
epenet
3058cc8d56 Adjust targets type hint in notify platform (#90062) 2023-03-26 19:52:55 +02:00
epenet
a036e31495 Use SnapshotAssertion in gree switch tests (#90222) 2023-03-26 19:51:48 +02:00
Niels Perfors
1baadc1d09 Update Verisure package to 2.6.1 (#89318)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: RobinBolder <33325401+RobinBolder@users.noreply.github.com>
Co-authored-by: Tobias Lindaaker <tobias@thobe.org>
2023-03-26 19:32:25 +02:00
epenet
6e92dac61f Adjust pylint plugin for return type inheritance (#90046) 2023-03-26 18:37:26 +02:00
rikroe
bec7bbeb92 Use SnapshotAssertion in bmw_connected_drive tests (#90128) 2023-03-26 16:57:19 +02:00
epenet
69a46d4002 Adjust pylint plugin for components fixtures (#90217)
* Adjust pylint plugin for components fixtures

* Adjust components

* Use MagicMock

* Adjust

* Use None
2023-03-26 15:21:19 +02:00
epenet
e0ec3488d3 Adjust IntFlag handling in syrupy (#90223) 2023-03-26 14:20:05 +02:00
J. Nick Koston
f8431278c8 Bump yalexs-ble to 2.1.6 (#90295) 2023-03-26 11:05:21 +02:00
Robert Svensson
a0b6da33ab Strict typing of UniFi integration (#90278)
* Fix typing of UniFi controller

* Strict typing of unifi.__init__

* Strict typing of UniFi config_flow

* Strict typing of UniFi switch

* Strict typing UniFi sensor

* Strict typing UniFi device tracker

* Strict typing of UniFi

* Fix library issues related to typing
2023-03-26 09:57:13 +02:00
G Johansson
e8f3b9c09a Remove Volvooncall integration yaml import (#90288)
Depr yaml import
2023-03-26 09:42:38 +02:00
G Johansson
b3f3f234c6 Remove pushbullet platform yaml import (#90285)
Depr pushbullet yaml
2023-03-26 09:40:07 +02:00
Felix Rotthowe
40131d811c Handle Livisi TokenExpiredException (#90258)
* reauth

* Request new Token on TokenExpiredException

* relogin using stored auth data

* fix imports

* import formatting
2023-03-26 09:35:49 +02:00
J. Nick Koston
0b8fb36a7e Fix onvif binary sensors (#90202)
* Fix httpx client creating a new ssl context with each client

While working on https://github.com/home-assistant/core/issues/83524
it was discovered that each new httpx client creates a new ssl context

f1157dbc41/httpx/_transports/default.py (L261)

If an ssl context is passed in creating a new one is avoided here

f1157dbc41/httpx/_config.py (L110)

This change makes httpx ssl no-verify behavior match aiohttp ssl no-verify
behavior

6da04694fd/aiohttp/connector.py (L892)

aiohttp solved this by wrapping the code that generates the ssl context
in an lru_cache

* compact

* Fix onvif binary sensors

fixes #83524

needs https://github.com/hunterjm/python-onvif-zeep-async/pull/9 first
to avoid recreating the memory leak

* Fix memory leak in onvif

Work around until https://github.com/hunterjm/python-onvif-zeep-async/pull/9

followup to https://github.com/home-assistant/core/pull/83006

* move check

* onvif-zeep-async 1.2.2

* fix unloading
2023-03-25 23:28:38 -04:00
J. Nick Koston
bd08d88812 Bump yalexs-ble to 2.1.5 (#90287)
Bump yalexs-ble 2.1.5

Some of the lever locks need a bit longer debounce time
since they still report stale state for up to 6s

changelog: https://github.com/bdraco/yalexs-ble/compare/v2.1.4...v2.1.5
2023-03-25 23:27:35 -04:00
J. Nick Koston
5f59bab9ec Bump bleak to 0.20.1 (#90282)
Co-authored-by: Charles Garwood <cgarwood@newdealmultimedia.com>
2023-03-25 16:29:26 -10:00
G Johansson
53726cb4a1 Remove Magicseaweed (#90277) 2023-03-25 22:02:10 -04:00
J. Nick Koston
255f12ec05 Bump bleak-retry-connector to 3.0.2 (#90279)
changelog: https://github.com/Bluetooth-Devices/bleak-retry-connector/compare/v3.0.1...v3.0.2
2023-03-25 21:48:03 -04:00
G Johansson
92beb48a41 Add sensor platform to Sun (#81045)
* Sun sensor
* remove extra attr
* Add tests
* Add back attributes
* position sensors disabled default
* entity id
* unique id
* test init to attributes
* Fix test init
* Fix test sensor
* test unique id
* uom
* remove rising
* Remove not needed uom property
* Fix reload issue
* degree
2023-03-26 07:24:43 +08:00
G Johansson
7f6406127e Remove platform yaml radiotherm (#90284) 2023-03-25 12:43:44 -10:00
G Johansson
89d00ac733 Fix default ipv6 resolver (#90269) 2023-03-25 12:31:01 -10:00
Franck Nijhof
5c839e2367 Add entity name translations to Elgato (#89629) 2023-03-25 23:06:03 +01:00
J. Nick Koston
668b2726fe Bump yalexs-ble to 2.1.4 (#90276) 2023-03-25 10:12:48 -10:00
J. Nick Koston
fd460996ba Bump onvif-zeep-async to 1.2.2 to fix memory leak (#90216) 2023-03-25 09:21:05 -10:00
rikroe
cc337c4ff6 Add Re-Auth to bmw_connected_drive (#90251)
* Add Re-Auth to bmw_connected_drive

* Always store refresh token to entry

* Fix tests

* Typo

---------

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2023-03-25 10:09:33 -07:00
J. Nick Koston
7bceedfc95 Bump sqlalchemy to 2.0.7 (#90256) 2023-03-25 07:05:35 -10:00
Franck Nijhof
7cbe705ebb Update vehicle to 1.0.0 (#90189) 2023-03-25 18:00:15 +01:00
Luca Angemi
6d8eaa0bee Add location field to calendar create_event service supported by Google Calendar and Local Calendar (#90098)
* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update calendar.py

* Update calendar.py

* Update services.yaml

* Update services.yaml

* Update calendar.py

* Update calendar.py

* Update __init__.py

* Update services.yaml

* Update services.yaml

* Update test_calendar.py

* Update test_init.py

* Update test_init.py

* Update test_init.py

* Update test_init.py

* Update __init__.py

* Update const.py

* Address changes to service.yaml

* Address changes to service.yaml

* Update test_calendar.py

* Update test_calendar.py

* Update test_calendar.py

* Update conftest.py

* Update conftest.py

* Update calendar.py

* Update __init__.py
2023-03-25 09:43:49 -07:00
J. Nick Koston
02ef7d445d Allow passing an optional name to async_track_time_interval (#90244)
* Allow passing an optional name to async_track_time_interval

This is the same idea as passing a name to asyncio.create_task which
makes it easier to track down bugs

* more

* short

* still cannot find it

* add a few more

* test
2023-03-25 10:11:14 -04:00
Matthias Alphart
52a94dd2ac Check for empty lists in KNX address configuration (#90249) 2023-03-24 21:36:23 -11:00
Jeef
970036b328 Refactor Gree switch to use EntityDescription (#90143)
* Post-rebase

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* feat: Tests passing!

* Removing custom attributes as no longer needed

* removed extraneous class

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/gree/switch.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/gree/test_switch.py

Co-authored-by: solazs <soltesz.balazs.91@gmail.com>

* Update tests/components/gree/test_switch.py

Co-authored-by: solazs <soltesz.balazs.91@gmail.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: solazs <soltesz.balazs.91@gmail.com>
2023-03-25 09:15:46 +01:00
epenet
f56bf134d2 Improve browse_media type hints in media player (#90060)
* Improve browse_media type hints in media player

* Adjust components

* Adjust base entity
2023-03-24 21:49:12 -07:00
epenet
5f3868b141 Add missing type hints to tests (#90218)
* Add type hints to tests

* Revert gree as handled in #90222
2023-03-24 19:34:01 -07:00
Robert Svensson
7f1fff12ef Bump aiounifi to v45 (#90250)
* Bump aiounifi to v45

* Replace local TypeVar with library TypeVar
2023-03-25 00:27:16 +01:00
J. Nick Koston
e17cefd61c Clear recorder startup tasks from memory after processing (#90240)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-03-24 10:24:02 -10:00
J. Nick Koston
8e07b71644 Use the json load helper in a few more incoming web requests (#90194)
* Use the json load helper in a few more incoming web requests

* drop hassio change as there is no coverage there

* Remove everything except emulated_hue since its has its own site/web
2023-03-24 15:38:08 -04:00
J. Nick Koston
72b09bfee7 Subclass aiohttp requests to use json helper (#90214)
* Subclass aiohttp requests to use json helper

* Subclass aiohttp requests to use json helper

* remove unneeded

* revert for new pr

* override loads is never used so drop it

* override loads is never used so drop it
2023-03-24 15:37:43 -04:00
Felix Rotthowe
0bb0b4bfc5 Add livisi window sensor (WDS) (#90220)
* Added support for livisi window sensor

* Add const strings

* added postpix for device_id

* Remove unnecessary import

* Fix imports

* Fix lint errors, remove redundant device class property

* Format code

* Update .coveragerc

* Finish basic window door sensor support

* currently, only one binary sensor (wds) is supported

* Remove unused imports

* Fix isort issue

* Simplify code as suggested in PR

* rename get_device_response to get_device_state

* fix ruff issue

* Be more defensive in interpreting what we get from aiolivisi

* Simplify coordinator

* remove window sensor specific code (isOpen)

* parameter order, type hinta

* Update homeassistant/components/livisi/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/livisi/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/livisi/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/livisi/binary_sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/livisi/binary_sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/livisi/binary_sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: Tecotix <78791840+Tecotix@users.noreply.github.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-24 14:52:50 +01:00
J. Nick Koston
4c45c3c63b Add a faster query for get_last_state_changes when the number of states is 1 (#90211)
* Add a faster query for get_last_state_changes when the number of states is 1

related issue #90113

* Add a faster query for get_last_state_changes when the number of states is 1

related issue #90113

* coverage

* Apply suggestions from code review
2023-03-24 09:39:55 -04:00
Chris Xiao
8149652f9f Move qbittorrent constants to const.py (#90201)
* move qbittorrent constants to const.py

* move SENSOR_TYPE_* consts back to sensors.py
2023-03-24 14:20:37 +01:00
dependabot[bot]
a66bef6fdf Bump actions/checkout from 3.4.0 to 3.5.0 (#90215)
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v3.4.0...v3.5.0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-24 13:55:17 +01:00
Felix Rotthowe
3157579992 Remove duplicate code in livisi coordinator (#90227)
* Simplify coordinator

* remove window sensor specific code (isOpen)

* parameter order, type hinta

* Update homeassistant/components/livisi/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/livisi/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-24 12:59:59 +01:00
Robert Svensson
ee74e21541 Rework UniFi wireless client "wired bug" logic (#89757) 2023-03-24 10:06:09 +01:00
Jan Bouwhuis
7364e6ecb3 Remove incorrect parametrize decorator (#90219) 2023-03-24 09:38:43 +01:00
Nalin Mahajan
34324c98de Rename create_api_object to be private (#90187) 2023-03-24 08:44:35 +01:00
Jan Bouwhuis
1224b1aff6 Use helper on tests MQTT fan platform (#90196)
Use helper on tests fan
2023-03-24 08:42:23 +01:00
Jan Bouwhuis
f2b4c95a04 Prepare MQTT platform tests part7 (#90130)
* Tests select

* Tests sensor

* Deduplicate test code
2023-03-24 08:42:00 +01:00
Jan Bouwhuis
0570405a3c Prepare MQTT platform tests part6 (#90129)
* Tests lock

* Tests mixins

* Tests number

* Tests scene
2023-03-24 08:41:36 +01:00
Jan Bouwhuis
a404d5f6d7 Prepare MQTT platform tests part5 (#90108)
* Tests light_json

* Tests light_template

* Tests light
2023-03-24 08:41:04 +01:00
J. Nick Koston
1f2268a878 Fix httpx client creating a new ssl context with each client (memory leak) (#90191)
* Fix httpx client creating a new ssl context with each client

While working on https://github.com/home-assistant/core/issues/83524
it was discovered that each new httpx client creates a new ssl context

f1157dbc41/httpx/_transports/default.py (L261)

If an ssl context is passed in creating a new one is avoided here

f1157dbc41/httpx/_config.py (L110)

This change makes httpx ssl no-verify behavior match aiohttp ssl no-verify
behavior

6da04694fd/aiohttp/connector.py (L892)

aiohttp solved this by wrapping the code that generates the ssl context
in an lru_cache

* compact
2023-03-24 08:40:47 +01:00
Chris Xiao
ca157f4d19 Add icons for qbittorrent speed sensors (#90203)
add icons for qbittorrent speed sensors
2023-03-24 07:23:05 +01:00
J. Nick Koston
f1ec77b8e0 Small cleanups to logbook statement generator (#90200)
We should only convert the context id to binary if
its going to be used.

Avoid some intermediate vars that are no longer needed
2023-03-23 20:56:58 -04:00
J. Nick Koston
a44d6f30c9 Fix refactoring error in states/events context id migration (#90193)
fixes #90074
2023-03-23 20:56:04 -04:00
J. Nick Koston
e7e7f603c2 Remove async_response from websocket apis where nothing was being awaited (#90204) 2023-03-23 20:53:18 -04:00
J. Nick Koston
d49fbc17df Fix recorder attribute excludes not being effective until after startup (#90198)
* Fix attribute excludes not being effective until after startup

fixes #90016

* reduce
2023-03-23 20:52:37 -04:00
J. Nick Koston
dd0f05b980 Avoid calling the http access logging when logging is disabled (#90152) 2023-03-23 09:55:02 -10:00
epenet
38a4f08e15 Fix missing mock in islamic_prayer_times (#90178)
* Fix missing mock in islamic_prayer_times

* Restore 100% coverage

* Update test_config_flow.py
2023-03-23 20:10:51 +01:00
Michael Hansen
3e3ece4e56 Add speech to text over binary websocket to pipeline (#90082)
* Allow passing binary to the WS connection

* Expand test coverage

* Test non-existing handler

* Add text to speech and stages to pipeline

* Default to "cloud" TTS when engine is None

* Refactor pipeline request to split text/audio

* Refactor with PipelineRun

* Generate pipeline from language

* Clean up

* Restore TTS code

* Add audio pipeline test

* Clean TTS cache in test

* Clean up tests and pipeline base class

* Stop pylint and pytest magics from fighting

* Include mock_get_cache_files

* Working on STT

* Preparing to test

* First successful test

* Send handler_id

* Allow signaling end of stream using empty payloads

* Store handlers in a list

* Handle binary handlers raising exceptions

* Add stt/tts dependencies to voice_assistant

* Include STT audio in pipeline test

* Working on tests

* Refactoring with stages

* Fix tests

* Add more tests

* Add method docs

* Change stt demo/cloud to AsyncIterable

* Add pipeline error events

* Move handler id to separate message before pipeline

* Add test for invalid stage order

* Change "finish" to "end"

* Use enum

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-03-23 14:44:19 -04:00
Jan Bouwhuis
185d6d74d7 Prepare MQTT platform tests part9 (#90133)
* Tests switch

* Tests text

* Tests update
2023-03-23 19:17:27 +01:00
Jan Bouwhuis
db63c8584e Prepare MQTT platform tests part8 (#90132)
* Tests state_vacuum

* Tests siren
2023-03-23 19:16:54 +01:00
Jan Bouwhuis
2c1b59be0e Prepare MQTT platform tests part4 (#90107)
* Tests humidifier

* Tests legacy_vacuum
2023-03-23 19:14:44 +01:00
Jan Bouwhuis
44add1dc11 Prepare MQTT platform tests part3 (#90106)
* Tests cover

* Tests fan
2023-03-23 19:14:08 +01:00
Jan Bouwhuis
8fd88d6703 Prepare MQTT platform tests part2 (#90105)
* Tests button

* Tests camera

* Tests climate
2023-03-23 19:13:36 +01:00
Vincent Knoop Pathuis
87475e8ff6 Cleanup some leftovers for Landis+Gyr (#90183)
Cleanup some leftovers
2023-03-23 17:34:57 +01:00
Nalin Mahajan
e290febb38 Bump pyControl4 to 1.1.0 (#90115)
* Bump pyControl4 to 1.1.0

* Remove mock token_expiration from control4
2023-03-23 17:34:38 +01:00
Vincent Knoop Pathuis
cb578c71e0 Add Landis+Gyr missing device class (#90182)
Add missing device class for heat_previous_year_gj
2023-03-23 17:21:21 +01:00
PeteRager
73ed6e039a Improve logging for unavailable sonos hosts (#90172)
* Repeated warning messages on unavailable manually specified hosts

Sonos logs warning messages every 1 minute 12 seconds for hosts that are not on-line.  This fixes the issue and the warning will be logged the first time, and subsequent logs messages will be at DEBUG level

* Update homeassistant/components/sonos/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Log info message when reconnect succeeds

* Use pop to simplify code

* Add additional test, fix key error with pop

* Use pop with default return value

* Update tests/components/sonos/test_init.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/sonos/test_init.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/sonos/test_init.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/sonos/test_init.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/sonos/test_init.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update comment, remove unneeded line of code

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-23 16:15:55 +01:00
Nalin Mahajan
504793882d Remove unecessary variable in control4 (#90176)
Remove unecessary expiration value
2023-03-23 16:09:00 +01:00
Marc Mueller
d5f949f4d8 Update pydantic to 1.10.7 (#90164) 2023-03-23 08:42:39 -04:00
G Johansson
b1370cbd42 Add constants file to workday (#90168)
Constants workday
2023-03-23 12:01:03 +01:00
G Johansson
dd4a3089ec Add constants file for Brottsplatskartan (#90165)
* bpk constants

* not used
2023-03-23 11:54:15 +01:00
G Johansson
2b4514ae25 Add codeowner Workday (#90167)
codeowner
2023-03-23 11:53:22 +01:00
Vincent Knoop Pathuis
568a731e2d Use snapshot test for Landis+Gyr (#90126)
Initial commit for snapshot test
2023-03-23 10:30:31 +01:00
epenet
92bcb04e4f Adjust scaffold docstring (#90157)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-03-23 10:13:53 +01:00
J. Nick Koston
60ae1f99e0 Update powerwall strings for newer models (#90151) 2023-03-23 10:13:18 +01:00
Erik Montnemery
50ea0c5cf2 Tweak multiprotocol tests (#90163) 2023-03-23 10:12:42 +01:00
dependabot[bot]
4c26741e40 Bump actions/stale from 7.0.0 to 8.0.0 (#90155)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-23 10:09:03 +01:00
J. Nick Koston
2cb4ec82df Bump yalexs-ble to 2.1.2 (#90156) 2023-03-23 10:08:06 +01:00
On Freund
10cf92246f Bump pyrympro to 0.0.7 (#90118) 2023-03-23 10:05:08 +01:00
rikroe
1a2fa51ac9 Bump bimmer_connected to 0.13.0 (#90127) 2023-03-23 10:01:01 +01:00
Erik Montnemery
6739542a5d Simplify some multi pan code (#90135)
* Simplify some multi pan code

* Adjust ZHA config flow
2023-03-23 09:18:35 +01:00
solazs
b151923619 Add health mode to gree integration (#89764)
Add health mode to gree integration.
2023-03-23 08:56:47 +01:00
Jan Bouwhuis
1e64a55a1a Add missing translation for invalid imap folder (#90154)
Add missing translation for invalid folder
2023-03-23 08:08:52 +01:00
J. Nick Koston
9878738321 Use rel_url for looking up frontend panels (#90149)
* Use rel_url for looking up frontend panels

request.url builds a new URL every time where-as
rel_url is always available

https://docs.aiohttp.org/en/stable/web_reference.html#aiohttp.web.BaseRequest.rel_url

* Use rel_url for looking up frontend panels

request.url builds a new URL every time where-as
rel_url is always available

https://docs.aiohttp.org/en/stable/web_reference.html#aiohttp.web.BaseRequest.rel_url
2023-03-23 00:14:54 -04:00
Paulus Schoutsen
ca5a88342b 2023.3.6 (#90150) 2023-03-22 23:58:20 -04:00
Paulus Schoutsen
117113cdfc Bumped version to 2023.3.6 2023-03-22 22:59:47 -04:00
Paulus Schoutsen
174342860b Always enforce URL param ordering for signed URLs (#90148)
Always enforce URL param ordering
2023-03-22 22:59:42 -04:00
J. Nick Koston
a7b5a0297e Bump PySwitchbot to 0.37.4 (#90146)
fixes #90090 fixes #89061

changelog: https://github.com/Danielhiversen/pySwitchbot/compare/0.37.3...0.37.4
2023-03-22 22:59:41 -04:00
Luke
406e92511b Bump to oralb-ble 0.17.6 (#90081) 2023-03-22 22:59:40 -04:00
Klaas Schoute
146347e31a Bump easyEnergy to v0.2.2 (#90080) 2023-03-22 22:59:39 -04:00
Klaas Schoute
3747fd5dcb Bump easyEnergy to v0.2.1 (#89630) 2023-03-22 22:59:38 -04:00
J. Nick Koston
53d400ca96 Bump yalexs-ble to 2.1.1 (#90015)
* Bump yalexs-ble to 2.1.1

There was another task that could be prematurely GCed

changelog: https://github.com/bdraco/yalexs-ble/compare/v2.1.0...v2.1.1

* fixes
2023-03-22 22:57:41 -04:00
J. Nick Koston
2a18261efb Bump yalexs_ble to 2.1.0 (#89772)
switches to using cryptography to reduce the number of deps

changelog: https://github.com/bdraco/yalexs-ble/compare/v2.0.4...v2.1.0
2023-03-22 22:57:40 -04:00
J. Nick Koston
1f71068740 Handle cancelation of wait_for_ble_connections_free in esphome bluetooth (#90014)
Handle cancelation in wait_for_ble_connections_free

If `wait_for_ble_connections_free` was canceled due to timeout or
the esp disconnecting from Home Assistant the future would get
canceled. When we reconnect and get the next callback we need
to handle it being done.

fixes
```
2023-03-21 02:34:36.876 ERROR (MainThread) [homeassistant] Error doing job: Fatal error: protocol.data_received() call failed.
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/asyncio/selector_events.py", line 868, in _read_ready__data_received
    self._protocol.data_received(data)
  File "/usr/local/lib/python3.10/site-packages/aioesphomeapi/_frame_helper.py", line 195, in data_received
    self._callback_packet(msg_type_int, bytes(packet_data))
  File "/usr/local/lib/python3.10/site-packages/aioesphomeapi/_frame_helper.py", line 110, in _callback_packet
    self._on_pkt(Packet(type_, data))
  File "/usr/local/lib/python3.10/site-packages/aioesphomeapi/connection.py", line 688, in _process_packet
    handler(msg)
  File "/usr/local/lib/python3.10/site-packages/aioesphomeapi/client.py", line 482, in on_msg
    on_bluetooth_connections_free_update(resp.free, resp.limit)
  File "/usr/src/homeassistant/homeassistant/components/esphome/entry_data.py", line 136, in async_update_ble_connection_limits
    fut.set_result(free)
asyncio.exceptions.InvalidStateError: invalid state
```
2023-03-22 22:54:42 -04:00
micha91
92fb978a03 Bump aiomusiccast to 0.14.8 (#89978) 2023-03-22 22:54:42 -04:00
J. Nick Koston
127f2289a1 Remove async_block_till_done in freebox (#89928)
async_block_till_done() is not meant to be called in integrations
2023-03-22 22:54:41 -04:00
Jan Bouwhuis
de6f55dcfb Fix blocking MQTT entry unload (#89922)
* Remove unneeded async_block_till_done

* use await asyncio.sleep(0) instead
2023-03-22 22:54:40 -04:00
Joakim Plate
713d3025f2 Correct missing wordswap for S series nibe (#89866)
Correct missing wordswap for nibe
2023-03-22 22:54:39 -04:00
J. Nick Koston
1e03ff68a2 Bump aioharmony to 0.2.10 (#89831)
fixes #89823
2023-03-22 22:54:38 -04:00
Jan Bouwhuis
a5aa5c0c01 Fix imap_email_content unknown status and replaying stale states (#89563) 2023-03-22 22:54:37 -04:00
Paulus Schoutsen
12352b2ce1 Always enforce URL param ordering for signed URLs (#90148)
Always enforce URL param ordering
2023-03-22 22:54:09 -04:00
J. Nick Koston
dcc52bd366 Bump PySwitchbot to 0.37.4 (#90146)
fixes #90090 fixes #89061

changelog: https://github.com/Danielhiversen/pySwitchbot/compare/0.37.3...0.37.4
2023-03-22 22:10:47 -04:00
J. Nick Koston
ca576d45ac Cache decode of JWT tokens (#90013) 2023-03-22 16:03:41 -10:00
J. Nick Koston
8a591fa16e Add auto repairs for events schema (#90136)
* Add auto repairs for events schema

* Add auto repairs for events schema

* Add auto repairs for events schema

* Add auto repairs for events schema

* Add auto repairs for events schema

* fix bug - wrong table
2023-03-22 21:17:36 -04:00
J. Nick Koston
31c988c4f0 Fix index not being dropped on postgresql databases with a schema prefix (#90144)
* Fix index not being dropped on postgresql databases with a schema prefix

Added logging in case index drops fail so we can tell
why in the future

* coverage
2023-03-22 21:03:26 -04:00
J. Nick Koston
99b58f157e Bump PyJWT to 2.6.0 (#90134)
* Bump PyJWT to 2.6.0

* fix time being frozen too late which makes the access token creation time in the future

* revert zha change

* fix repairs test

* fix ical test
2023-03-22 20:00:47 -04:00
Michael
03aeaba7ef Turn AVM FRITZ!Box Tools sensors into coordinator entities (#89953)
* make sensors coordinator entities

* apply suggestions

* move _attr_has_entity_name up
2023-03-22 22:34:23 +01:00
J. Nick Koston
4ebce9746d Add schema auto repairs for states tables (#90083) 2023-03-22 10:05:23 -10:00
Erik Montnemery
5948347b6b Fix switch_as_x entity naming (#89992)
* Fix switch_as_x entity naming

* Simplify name logic
2023-03-22 20:24:05 +01:00
Erik Montnemery
1ea3312ed4 Deduplicate multiprotocol addon helper (#90102)
* Deduplicate multiprotocol addon helper

* Clarify
2023-03-22 20:20:42 +01:00
J. Nick Koston
4c98495fe0 Bump ulid-transform to 0.5.1 (#90123)
changelog: https://github.com/bdraco/ulid-transform/compare/v0.4.2...v0.5.1
2023-03-22 15:19:43 -04:00
Erik Montnemery
3931e11fd9 Try to load integration before starting option flow (#90111)
* Try to load integration before starting option flow

* Adjust tests
2023-03-22 20:10:10 +01:00
Franck Nijhof
6db8867b81 Update wled to 0.16.0 (#90120) 2023-03-22 13:55:50 -04:00
Erik Montnemery
94e247dc69 Fix islamic_prayer_times setup (#90122) 2023-03-22 13:52:52 -04:00
Franck Nijhof
cc4ff55347 Update pvo to 1.0.0 (#90109) 2023-03-22 17:02:49 +01:00
puddly
c581116c82 ZHA network settings API (#88564)
* Rename `zha.api` to `zha.websocket_api`

* Implement a ZHA network settings API

* Use the enum name as the radio type

* Don't filter out ignored config entries

* [WIP] Start unit tests

* Add unit tests

* Rename ZHA websocket API module in `.coveragerc`

* Rename `api` to `websocket_api`

* Increase test coverage to 100%
2023-03-22 11:15:46 -04:00
Erik Montnemery
130c8ea5f5 Update OTRB config entry if REST API port has changed (#90101)
* Update OTRB config entry if REST API port has changed

* Improve test coverage
2023-03-22 14:03:39 +01:00
Erik Montnemery
0ecd043cb2 Add test helper mock_config_flow (#90103) 2023-03-22 08:59:35 -04:00
Paulus Schoutsen
0ca6723378 Allow passing binary to the WS connection (#89882)
* Allow passing binary to the WS connection

* Expand test coverage

* Test non-existing handler

* Allow signaling end of stream using empty payloads

* Store handlers in a list

* Handle binary handlers raising exceptions
2023-03-22 08:36:36 -04:00
Erik Montnemery
19d56a7102 Change error handling in async_process_play_media_url (#90052) 2023-03-22 13:32:02 +01:00
Paulus Schoutsen
9b9ed21dc4 Update hass-nabucasa to 0.62.0 (#90085) 2023-03-22 13:24:28 +01:00
Matrix
87e6dd3949 YoLink flexfob support (#90027) 2023-03-22 12:01:04 +01:00
Klaas Schoute
7efe058aa6 Bump easyEnergy to v0.2.2 (#90080) 2023-03-22 10:46:17 +01:00
Jan Bouwhuis
214286acb9 Prepare MQTT platorm tests part1 (#90051)
* Add help_custom_config

* Tests alarm_control_panel

* Tests binary_sensor

* Only use help_custom_config with iterable options
2023-03-22 10:23:08 +01:00
Michael
d25e394310 Implement data update coordinator for nextcloud (#89652)
* implement data update coordinator

* apply suggestions

* apply suggestions
2023-03-22 09:18:09 +01:00
J. Nick Koston
96225bb287 Rename recorder run_history to table_managers.recorder_runs_manager (#90070) 2023-03-21 18:38:33 -10:00
Luke
1439a3d572 Bump to oralb-ble 0.17.6 (#90081) 2023-03-21 17:09:38 -10:00
J. Nick Koston
88ad97f112 Fix generating statistics for time periods smaller than we can measure (#90069)
If the time period for the mean/time weighted average was smaller
than we can measure (less than one microsecond), generating
statistics would fail with a divide by zero error. This is likely
only happens if the database schema precision is incorrect.
2023-03-21 21:12:45 -04:00
Michael Hansen
0e7ffff869 Add TTS to pipelines (#90004)
* Add text to speech and stages to pipeline

* Default to "cloud" TTS when engine is None

* Refactor pipeline request to split text/audio

* Refactor with PipelineRun

* Generate pipeline from language

* Clean up

* Restore TTS code

* Add audio pipeline test

* Clean TTS cache in test

* Clean up tests and pipeline base class

* Stop pylint and pytest magics from fighting

* Include mock_get_cache_files
2023-03-21 21:10:31 -04:00
J. Nick Koston
ddcaa9d372 Break out statistics repairs into a auto_repairs modules (#90068)
* Break out statistics schema repairs into a repairs module

A future PR will add repairs for events, states, etc

* reorg

* reorg

* reorg

* reorg

* fixes

* fix patch targets

* name space rename
2023-03-21 21:08:06 -04:00
J. Nick Koston
086bcfb2fc Make recorder migration column types for each dialect constants (#90072)
Make column types for each dialect constants
2023-03-21 21:06:10 -04:00
Franck Nijhof
f98d685154 Refactor WLED select tests (#89219) 2023-03-21 22:32:41 +01:00
Franck Nijhof
980425508a Update twentemilieu to 1.0.0 (#90071) 2023-03-21 22:31:55 +01:00
Michael
d4cc4a343d Use has_template property from lib in Fritz!SmartHome (#89152) 2023-03-21 21:33:33 +01:00
dougiteixeira
0f5c49c7be Fix translation string for fan oscillation (#90045)
Fix string
2023-03-21 15:42:44 -04:00
starkillerOG
d20b07f3ac Bump reolink-aio to 0.5.6 (#90059) 2023-03-21 14:16:50 -04:00
Franck Nijhof
ed4e49a4c2 Add translations for Counter (#89989) 2023-03-21 18:41:27 +01:00
J. Nick Koston
616e6e6ae8 Fix missing length on context id and incorrect precision with MariaDB (dev only fix) (#90058)
Fix missing length on context id column with MariaDB

spotted by @dcoder42

The migration still worked as intented but the blob should have been
a bit smaller.

This only affects dev so there is no need for a backport
2023-03-21 13:14:27 -04:00
epenet
c507ca1e66 Improve type hints in rachio switch (#90050) 2023-03-21 15:53:51 +01:00
epenet
1895c82ffc Fix fritzbox TypedDict definition (#90043) 2023-03-21 15:52:30 +01:00
epenet
1303dd12e7 Improve type hints in zha fan (#90042) 2023-03-21 15:21:56 +01:00
Jan Bouwhuis
6f88fe93ef Only publish mqtt_statestream when MQTT is started (#89833)
* Only publish mqtt_statestream when ha is started

* also catch startup states and use event filter

* Add check for MQTT to be available first

* Make sure MQTT is available and started

* Fix test

* Improve test

* Reset mock before assertung not called
2023-03-21 10:21:45 -04:00
Erik Montnemery
41ea8fa9b4 Guess media type when cast is playing media without media type (#90048) 2023-03-21 10:01:35 -04:00
epenet
93efdc4991 Improve switch and climate type hints in integrations (#90040) 2023-03-21 13:26:41 +01:00
jan iversen
9092a76dbf Correct typing of pymodbus in modbus (#90039) 2023-03-21 13:26:03 +01:00
epenet
f01f5e1d2a Improve type hints in tuya vacuum (#90041) 2023-03-21 13:25:19 +01:00
Franck Nijhof
2a0401366b Add state translations for all day calendar attribute (#89988) 2023-03-21 07:53:05 -04:00
Franck Nijhof
6d3c3ff4fb Add state translations for Select entities (#89995) 2023-03-21 12:45:06 +01:00
Franck Nijhof
0467c8ff63 Add attribute state translations for oscillating fans (#89990) 2023-03-21 07:39:07 -04:00
epenet
485a78e0cf Improve light type hints in integrations (#90035)
* Improve light type hints in integrations

* Improve
2023-03-21 11:40:33 +01:00
epenet
33e698d67f Improve notify type hints in integrations (#90034) 2023-03-21 11:40:19 +01:00
epenet
86b4354477 Improve native_value type hints in integrations (#90033) 2023-03-21 11:40:06 +01:00
epenet
0e1c76f81f Improve sensor type hints in integrations (#90031)
* Improve sensor type hints in integrations

* Improve
2023-03-21 11:39:42 +01:00
epenet
4836404288 Improve media_player type hints in integrations (#90029)
Fix some media_player type hints
2023-03-21 11:10:12 +01:00
epenet
04872f72ea Improve humidifier type hints in integrations (#90030)
Fix humidifier type hints in integrations
2023-03-21 10:32:13 +01:00
epenet
292feb4e24 Enable inheritance checks on ExtraStoredData (#90021) 2023-03-21 09:51:05 +01:00
Allen Porter
43ce6f843c Update the calendar trigger based on PR feedback (#90017) 2023-03-21 09:21:14 +01:00
Jan Bouwhuis
d865440012 Prepare MQTT common tests part3 (#90022) 2023-03-21 09:19:20 +01:00
Franck Nijhof
23f136e9d6 Add state translations for Siren entities (#89994) 2023-03-21 09:16:32 +01:00
Jan Bouwhuis
fe49861e26 Prepare MQTT common tests part4 (#90023)
* Upd test_setting_attribute_via_mqtt_json_message

* Update test_setting_attribute_with_template

* Update test_update_with_json_attrs_not_dict

* Update test_update_with_json_attrs_bad_json
2023-03-21 09:07:46 +01:00
epenet
dd1700954b Deprecate YAML in SamsungTV (#89743)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-21 09:00:17 +01:00
Tom Harris
0c0c86bf7b Add support for new Insteon i3 devcies (#89892) 2023-03-20 21:56:44 -10:00
J. Nick Koston
a8e95684fa Fix websocket back pressure bottleneck (#89905) 2023-03-20 21:51:39 -10:00
Jan Bouwhuis
91dbda1ce7 Add mqtt common tests for availability (part2) (#89805)
* update test_availability_when_connection_lost

* Adjust test_availability_without_topic

* Update test_default_availability_payload + helper

* Update test_default_availability_list_payload

* Use helper for async_setup_component

* Update test_default_availability_list_*

* Update test_custom_availability_payload
2023-03-21 08:20:37 +01:00
J. Nick Koston
0303618705 Handle cancelation of wait_for_ble_connections_free in esphome bluetooth (#90014)
Handle cancelation in wait_for_ble_connections_free

If `wait_for_ble_connections_free` was canceled due to timeout or
the esp disconnecting from Home Assistant the future would get
canceled. When we reconnect and get the next callback we need
to handle it being done.

fixes
```
2023-03-21 02:34:36.876 ERROR (MainThread) [homeassistant] Error doing job: Fatal error: protocol.data_received() call failed.
Traceback (most recent call last):
  File "/usr/local/lib/python3.10/asyncio/selector_events.py", line 868, in _read_ready__data_received
    self._protocol.data_received(data)
  File "/usr/local/lib/python3.10/site-packages/aioesphomeapi/_frame_helper.py", line 195, in data_received
    self._callback_packet(msg_type_int, bytes(packet_data))
  File "/usr/local/lib/python3.10/site-packages/aioesphomeapi/_frame_helper.py", line 110, in _callback_packet
    self._on_pkt(Packet(type_, data))
  File "/usr/local/lib/python3.10/site-packages/aioesphomeapi/connection.py", line 688, in _process_packet
    handler(msg)
  File "/usr/local/lib/python3.10/site-packages/aioesphomeapi/client.py", line 482, in on_msg
    on_bluetooth_connections_free_update(resp.free, resp.limit)
  File "/usr/src/homeassistant/homeassistant/components/esphome/entry_data.py", line 136, in async_update_ble_connection_limits
    fut.set_result(free)
asyncio.exceptions.InvalidStateError: invalid state
```
2023-03-20 23:49:59 -04:00
J. Nick Koston
7158dbc142 Bump yalexs-ble to 2.1.1 (#90015)
* Bump yalexs-ble to 2.1.1

There was another task that could be prematurely GCed

changelog: https://github.com/bdraco/yalexs-ble/compare/v2.1.0...v2.1.1

* fixes
2023-03-20 23:49:30 -04:00
Arturo
5e5ace9c4e Add door lock device type to matter integration (#89277)
* Adds base code for matter lock

* Adds basic matter door lock support

* Adds matter lock fixture

* Adds tests for matter lock

* Addresses feedback

* Added logic to handle inter states of matter lock

* Addesses feedback
2023-03-21 01:29:33 +01:00
Raman Gupta
cbe85126cb Introduce a delay between update entity calls (#89737)
* Introduce a delay between update entity calls

* Update homeassistant/components/zwave_js/update.py

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

* move delay to constant and patch

* rename constant

* Switch to async_call_later

* Remove failing test

* Reimplement to solve task problem

* comment

* pass count directly so that value doesn't mutate before we store it

* lines

* Fix logic and tests

* Comments

* Readd missed coverage

* Add test for delays

* cleanup

* Fix async_added_to_hass logic

* flip conditional

* Store firmware info in extra data so we can restore it along with latest version

* Comment

* comment

* Add test for is_running check and fix bugs

* comment

* Add tests for various restore state scenarios

* move comment so it's less confusing

* improve typing

* consolidate into constant and remove unused one

* Update update.py

* update test to unknown state during partial restore

* fix elif check

* Fix type

* clean up test docstrings and function names

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-03-20 18:30:56 -04:00
epenet
18df3a22ca Add FTTH information to SFR Box (#89781) 2023-03-20 20:06:44 +01:00
J. Nick Koston
49f08ad71d Filter out duplicate updates in esphome state dispatch (#89779) 2023-03-20 20:04:46 +01:00
Jon Caruana
20c9ed6d89 Mark LiteJet as Platinum integration (#88623) 2023-03-20 20:01:14 +01:00
J. Nick Koston
6bb80adbb9 Rollback the session after performing stats schema validation (#89904) 2023-03-20 17:15:11 +01:00
Jan Bouwhuis
51b12cbf96 Add user_input as suggested value in imap config flow (#89982)
Add user_input as suggested value to config_schema
2023-03-20 15:52:54 +01:00
Jan Bouwhuis
e4275a053c Remove yaml import from imap integration (#89981)
* Remove yaml import from imap integration

* Cleanup sensor code and strings.json
2023-03-20 15:52:07 +01:00
Steven Looman
9a5ceb9ef8 Use default rounding/presentation mechanism for upnp (#89954) 2023-03-20 15:44:05 +01:00
Franck Nijhof
9949ca13aa Adjust state class of Toon monetary sensors (#89985) 2023-03-20 08:42:59 -04:00
Franck Nijhof
b9ff69d3ac Extend attribute state translations for Camera (#89876)
* Extend attribute state translations for Camera

* Add common generic translations
2023-03-20 08:39:20 -04:00
Malte Franken
0bf652ca96 Refactor constants in geo_json_events integration (#89912)
move constants to separate file
2023-03-20 13:26:38 +01:00
Joakim Plate
9f1e170851 Correct missing wordswap for S series nibe (#89866)
Correct missing wordswap for nibe
2023-03-20 12:08:27 +01:00
J. Nick Koston
146a31163c Use bluetooth address instead of uuid on MacOS (#89926) 2023-03-20 12:07:41 +01:00
Michael
e258f36ded Remove deprecated binary update sensor from AVM FRITZ!Box Tools (#89940) 2023-03-20 12:06:40 +01:00
J. Nick Koston
c3043fb0ee Bump bluetooth deps for bleak 0.20 (#89925)
Co-authored-by: K <z@kwi.li>
2023-03-20 12:06:15 +01:00
micha91
f3b3818d1f Bump aiomusiccast to 0.14.8 (#89978) 2023-03-20 11:59:27 +01:00
Jesse Moody
c4ee35570d Update django github references to main instead of master branch. (#89951) 2023-03-20 10:27:55 +01:00
epenet
9a784fddef Fail CI on lingering timers (#89292) 2023-03-20 10:20:19 +01:00
J. Nick Koston
f62bb0e2ea Bump zeroconf to 0.47.4 (#89973) 2023-03-20 09:32:21 +01:00
J. Nick Koston
d33a303a83 Fix statistics schema µs precision auto repair being ineffective (#89902)
If a user manually migrated their database to MySQL or PostgresSQL
and incorrectly created the timestamp columns as float we would
fail to correct them to double because when we migrated to use
timestamps for the columns I missed that we needed to change the
columns and types for µs precision
2023-03-20 00:06:37 -04:00
J. Nick Koston
e798c30b8b Fix statistics schema auto repair when there is bad data (#89903)
- If the user had previously duplicated data we could end up
  picking the next metadata_id and there could be stale rows
  in the database that have that metadata_id. This can only happen
  from bad manual migrations (which is what this is function
  is validating in the first place). To solve this we now insert
  data with a future date and look at the latest inserted row
  instead of the first.

Example
```
['stored_statistics',
  defaultdict(<class 'list'>,
              {'recorder.db_test_schema': [{'end': 948589200.0,
                                            'last_reset': None,
                                            'max': None,
                                            'mean': 2021.0,
                                            'min': None,
                                            'start': 948585600.0,
                                            'state': None,
                                            'sum': 394.5068},
                                          {'end': 1601946000.000001,
                                            'last_reset': 1601942400.000001,
                                            'max': 1.000000000000001,
                                            'mean': 1.000000000000001,
                                            'min': 1.000000000000001,
                                            'start': 1601942400.000001,
                                            'state': 1.000000000000001,
                                            'sum': 1.000000000000001}]})]
```
2023-03-20 00:06:23 -04:00
Allen Porter
9721ba59b6 Rewrite the calendar trigger to fix potential bugs (#89918)
Update the calander event trigger logic to have more exhaustive coverage. The
trigger will now use a timespan to create an explicit window for considering
upcoming events. The start/end of the time span is now more explicit, rather
than getting it from the alarm time.

The trigger is now broken into composable pieces:
- A timespan object for more explicitly managing the time window
- A function to get events during a time span
- A function to process upcoming events and determine the trigger times

The existing listener is now just responsible for scheduling alarms and glue.

This fixes bug with DST handling where the conversion back and forth between
UTC and timezone ends up dropping events during the jump forward. In practice,
an event was returned from the scanning, but it was never fired by the trigger
because (1) it was filtered out of the interval and (2) the event list was
previously cleared every iteration so it would get dropped.

Future improvements can bake more invariant checking into this structure.
2023-03-19 23:42:12 -04:00
Jan Bouwhuis
2039955ef7 Fix imap_email_content unknown status and replaying stale states (#89563) 2023-03-19 17:35:45 -10:00
starkillerOG
939fce4607 Shield Reolink webhook callback from cancelation (#89798)
* shield Reolink webhook callback from cancelation

* Update homeassistant/components/reolink/host.py

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

* fix styling

* fix black

* Revert to using asyncio.shield

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-03-19 23:35:16 -04:00
J. Nick Koston
c94b054d75 Retain history when renaming an entity_id (#89963)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-03-19 17:33:21 -10:00
J. Nick Koston
affb48d271 Avoid joining states_meta for statistics queries (#89941) 2023-03-19 16:44:35 -10:00
J. Nick Koston
bf63e6cbd4 Set unique on StatesMeta and EventTypes database tables (#89971)
Set unique on StatesMeta and EventTypes

These should have been marked unique originally to prevent
collision bugs from going unnoticed. These have not been
to beta yet so this is not a breaking change
2023-03-19 22:30:01 -04:00
J. Nick Koston
817ba97227 Remove unneeded lambda_stmt in place add in statistics (#89943)
We can generate this entire query in a single lambda_stmt
so there is no need to add two which increases the size
of the cache key
2023-03-19 22:05:39 -04:00
J. Nick Koston
f27d73fc34 Remove legacy event lookups from logbook (#89945)
Events recorded with Home Assistant 2022.5.x or older will no
longer display context information in the logbook
2023-03-19 22:05:07 -04:00
J. Nick Koston
aebe4c66a6 Fix cpu thrashing during purge after all legacy events were removed (#89923)
* Fix cpu thrashing during purge after all legacy events were removed

We now remove the the index of of event ids on the states table when its
all NULLs to save space. The purge path needs to avoid checking for legacy
rows to purge if the index has been removed since it will result in a full
table scan each purge cycle that will always find no legacy rows to purge

* one more place

* drop the key constraint as well

* fixes

* more sqlite
2023-03-19 22:04:24 -04:00
J. Nick Koston
7f3e4cb3af Guard against selecting all invalid entity_ids in history (#89929)
If all the entity_ids that were provided do not exist we would
end up passing an empty list of ids to the SQL query which
would do an unbounded select
2023-03-19 22:03:12 -04:00
J. Nick Koston
5ffb233004 Avoid database executor job to fetch statistic metadata on cache hit (#89960)
* Avoid database executor job to fetch statistic metadata on cache hit

Since we will almost always have a cache hit fetching
statistic meta data we can avoid an executor job

* Avoid database executor job to fetch statistic metadata on cache hit

Since we will almost always have a cache hit fetching
statistic meta data we can avoid an executor job

* Avoid database executor job to fetch statistic metadata on cache hit

Since we will almost always have a cache hit fetching
statistic meta data we can avoid an executor job

* remove exception catch since the threading.excepthook will actually catch this in production

* fix a few missed ones

* threadsafe

* Update homeassistant/components/recorder/table_managers/statistics_meta.py

* coverage and optimistic caching
2023-03-19 22:01:16 -04:00
Jesse Moody
d7de23fa65 Adjust eventloop -> event loop spelling (#89931)
eventloop -> event loop spelling
2023-03-19 21:53:21 +01:00
Matthias Alphart
557b9c7d51 Add KNX interface device with diagnostic entities (#89213) 2023-03-19 02:13:52 -11:00
Oliver
0441a64c69 Update media state via telnet in denonavr integration (#89788) 2023-03-19 00:47:01 -10:00
J. Nick Koston
87264d219a Fix ssl context being recreated frequently in httpx (#89932)
* Fix ssl context being created every time in httpx

* its expensive, only do it once
2023-03-19 05:13:48 -04:00
epenet
0e7bd401f2 Fix lingering timer in config entry flow tests (#89853) 2023-03-19 08:56:24 +01:00
Sven Serlier
36ad2c81f1 Adjust "Lovelace" to "Dashboards" (#89927)
"Lovelace" to "Dashboards"
2023-03-19 08:06:44 +01:00
J. Nick Koston
300f7b4f77 Remove async_block_till_done in freebox (#89928)
async_block_till_done() is not meant to be called in integrations
2023-03-19 07:59:05 +01:00
Jesse Moody
95240e8aad Change README demo to demo.home-assistant.io subdomain (#89921)
change home assistant demo link
2023-03-19 07:52:42 +01:00
Jan Bouwhuis
e937693d97 Fix blocking MQTT entry unload (#89922)
* Remove unneeded async_block_till_done

* use await asyncio.sleep(0) instead
2023-03-18 14:57:40 -10:00
Vincent Knoop Pathuis
6ad9f420ab Add Landis+Gyr poll on restart (#89644) 2023-03-18 08:50:50 -11:00
Franck Nijhof
d106cb48d2 Add state attribute translations for light (#89818)
* Add state attribute translations for light

* Process review comments
2023-03-17 20:35:25 -04:00
Franck Nijhof
cd3819abec Add state attribute translations for Sensor (#89896) 2023-03-17 20:32:52 -04:00
J. Nick Koston
30e7ab247d Small cleanups to writing entity state (#89890)
* Small cleanups to writing entity state

* reduce one prop access

* small cleanups

* small cleanups

* name conflict
2023-03-17 20:32:24 -04:00
Franck Nijhof
8ecd73cac7 Add state attribute translations for Weather (#89897) 2023-03-17 20:29:48 -04:00
Franck Nijhof
1f4164def8 Add state (attribute) translations for Text (#89898) 2023-03-17 20:29:12 -04:00
J. Nick Koston
e87359761b Fix some I/O in the event loop during backup (#89894) 2023-03-17 20:28:29 -04:00
J. Nick Koston
b1f64de6ce Remove the old ix_states_event_id index if its no longer being used (#89901)
* Remove the old ix_states_event_id index if its no longer being used

* cover it

* fixes

* fixup

* Update homeassistant/components/recorder/tasks.py
2023-03-17 20:27:33 -04:00
J. Nick Koston
138bbd9c28 Use json_loads_object util in backup (#89895)
* Use json_loads_object util in backup

* adjust test
2023-03-17 20:25:29 -04:00
Franck Nijhof
dbebf8c783 Add state attribute translations for media players (#89821)
* Add state attribute translations for media players

* Process review comments

* Process review comments

* Fix and extend

* Add yes/no as generic state
2023-03-17 20:24:33 -04:00
Jan Bouwhuis
5f22796b38 Refactor imap coordinator (#89759)
* Warn if the previous push wait task it taking longer than the update interval

* refactor

* Call _async_fetch_number_of_messages first

* Add cleanup in case fetching fails

* mypy

* Set sensor to unknown if an error occured.

* Handling invalid auth an reraise when needed

* Handle invalid folder as setup error

* Close IMAP stream before logout at cleanup

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-17 22:45:15 +01:00
epenet
469dbec089 Add type hints to plex data (#89221)
* Add type hints to plex data

* Rename method
2023-03-17 22:14:24 +01:00
J. Nick Koston
377dff5ee4 Ensure all recorder session executes use retries or the execute helper (#89888) 2023-03-17 10:45:58 -10:00
Franck Nijhof
fd5b57ae6c Drop autoflake in favor of Ruff (#89874) 2023-03-17 21:37:41 +01:00
Kevin Worrel
b403a96ea0 Bump screenlogicpy to v0.8.2 (#89832) 2023-03-17 10:10:37 -10:00
Franck Nijhof
95515fbe78 Improve/extend state translations for Alarm Control Panel (#89872) 2023-03-17 14:25:20 -04:00
Franck Nijhof
e402e733a0 Add translations for Image processing (#89879) 2023-03-17 13:52:59 -04:00
Franck Nijhof
db5a7b0e5e Add translations for Geolocation (#89880) 2023-03-17 13:52:34 -04:00
Franck Nijhof
5657fcd1e8 Add state attribute translations for Number (#89881) 2023-03-17 13:52:19 -04:00
Franck Nijhof
a15c45dbfe Drop pyupgrade in favor of Ruff (#89865) 2023-03-17 14:17:05 +01:00
Franck Nijhof
a7a972fe96 Upgrade pytest-xdist to 3.2.1 (#89857) 2023-03-17 13:43:16 +01:00
Franck Nijhof
b1a3bfb298 Drop flake8 in favor of Ruff (#89863) 2023-03-17 13:30:06 +01:00
Martin Hjelmare
f4de050904 Bump hass-nabucasa to 0.61.1 (#89864) 2023-03-17 13:27:05 +01:00
lunmay
cdb01146da Fix misstype translation reference keynames (#89855) 2023-03-17 12:05:29 +01:00
Malte Franken
ed0a059053 Refactor entity manager code in geo_json_events integration (#89847)
* moved entity manager

* fix circular reference

* simplify new entity signal
2023-03-17 11:59:29 +01:00
epenet
ab6e929443 Fix EntityComponent lingering timer in helper tests (#89801)
* Fix lingering timer in entity platform tests

* Tweak

* Fix entity and entity_component also

* Remove async_shutdown

* Adjust

* Adjust
2023-03-17 10:26:05 +01:00
epenet
abd91dd934 Ensure MockEntityPlatform shuts down after tests (#89849) 2023-03-17 10:22:43 +01:00
J. Nick Koston
aa72b48725 Mark recorder system_health session read_only (#89842) 2023-03-17 10:22:21 +01:00
epenet
ab4a726e6c Add tmpdir to known fixtures in pylint (#89844) 2023-03-17 10:22:02 +01:00
J. Nick Koston
dbb2706c76 Reduce number of tasks created by compiling missing statistics (#89835) 2023-03-16 21:07:14 -10:00
J. Nick Koston
d671d7fc1f Add native_step to baf (#89780) 2023-03-16 19:13:42 -10:00
Jean-François Roy
5a6234d60e Bump aiobafi6 to 0.8.0 (#89840) 2023-03-16 19:13:23 -10:00
J. Nick Koston
f6f3565796 Reduce latency to find stats metadata (#89824) 2023-03-16 19:00:02 -10:00
Allen Porter
04a99fdbfc Add local calendar diagnostics platform (#89776)
* Add local calendar diagnostics platform

* Use redaction from ical

* Update diagnostics for new ical version

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Use snapshot tests for local calendar diagnostics

* Setup diagnostics directly in tests rather than via dependencies

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-16 23:05:01 -04:00
Erik Montnemery
ae127e7687 Change light white service call attribute to accept True (#89803) 2023-03-16 23:02:56 -04:00
Franck Nijhof
a153720599 Add state attribute translations for automations (#89815) 2023-03-16 23:02:11 -04:00
Franck Nijhof
a2b6ef3d7b Add state attribute translations for fans (#89816) 2023-03-16 23:01:47 -04:00
epenet
79c9447770 Fix lingering timer in event helper tests (#89819)
Fix lingering timer in event tests
2023-03-16 23:01:23 -04:00
Franck Nijhof
f8da3ee50e Add state attribute translations for locks (#89820) 2023-03-16 23:00:45 -04:00
J. Nick Koston
350e967a89 Bump aioharmony to 0.2.10 (#89831)
fixes #89823
2023-03-16 22:44:49 -04:00
epenet
ff8b91aeea Add freezer to known test fixtures in pylint (#89825)
Add freezer to known fixtures in pylint
2023-03-16 22:39:41 -04:00
Michael Hansen
e16f17f5a8 Voice assistant integration with pipelines (#89822)
* Initial commit

* Add websocket test tool

* Small tweak

* Tiny cleanup

* Make pipeline work with frontend branch

* Add some more info to start event

* Fixes

* First voice assistant tests

* Remove run_task

* Clean up for PR

* Add config_flow.py

* Remove CLI tool

* Simplify by removing stt/tts for now

* Clean up and fix tests

* More clean up and API changes

* Add quality_scale

* Remove data from run-finish

* Use StrEnum backport

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-03-16 20:42:26 -04:00
epenet
81c0382e4b Fix lingering timer in bootstrap tests (#89790)
* Fix lingering timer in bootstrap test

* Adjust comment

* Use a constant
2023-03-16 17:20:27 -04:00
epenet
9893b1cf4a Cleanup get_local_ip in global conftest (#89826) 2023-03-16 22:03:06 +01:00
Franck Nijhof
f9919bb7cf Add pre-defined entity name translations (#89792) 2023-03-16 21:10:20 +01:00
Franck Nijhof
b6d001bfe6 2023.3.5 (#89814) 2023-03-16 20:45:14 +01:00
Franck Nijhof
e6f280cf7a Add state attribute translations for device trackers (#89810) 2023-03-16 19:58:52 +01:00
Franck Nijhof
298dae55fa Add missing state translations for Lock entities (#89795) 2023-03-16 19:06:35 +01:00
Franck Nijhof
d99c02b46f Add state attribute translations for covers (#89812) 2023-03-16 19:04:25 +01:00
Franck Nijhof
cb8ed4a1cc Add state attribute translations for alarm control panel (#89809) 2023-03-16 19:04:11 +01:00
Franck Nijhof
3e89b81e1d Add state attribute translations for calendars (#89811) 2023-03-16 19:03:23 +01:00
Franck Nijhof
7e18e15cac Bumped version to 2023.3.5 2023-03-16 18:48:17 +01:00
Bram Kragten
e651ca747b Update frontend to 20230309.1 (#89802) 2023-03-16 18:47:51 +01:00
J. Nick Koston
9fa73fe3a9 Bump aioesphomeapi to 13.5.1 (#89777) 2023-03-16 18:47:47 +01:00
Jan Bouwhuis
abda7b8a5b Fix imap server push holding HA startup (#89750) 2023-03-16 18:47:44 +01:00
jan iversen
90a4afb6fa Correct modbus serial method parameter (#89738) 2023-03-16 18:47:40 +01:00
Marcio Granzotto Rodrigues
52981699cf Bump bond-async to 0.1.23 (#89697) 2023-03-16 18:47:37 +01:00
Joakim Plate
c3d7696c2e Update to nibe 2.1.4 (#89686) 2023-03-16 18:47:33 +01:00
jan iversen
f120bac17f Secure modbus hub_collect remains valid (#89684)
Secure hub_collect remains valid.
2023-03-16 18:47:28 +01:00
Joakim Plate
02738fb9d4 Handle int or mapping for off case in nibe cooling (#89680)
Handle int or mapping for off case in nibe
2023-03-16 18:47:25 +01:00
J. Nick Koston
a9a6ff50cc Bump aioesphomeapi to 13.5.0 (#89262) 2023-03-16 18:47:21 +01:00
zhangshengdong29
fdd9c5383f ArestData does not have available (#88631) 2023-03-16 18:47:17 +01:00
epenet
69aa3a75c5 Fix lingering timer in event sun tests (#89808) 2023-03-16 18:32:34 +01:00
Bram Kragten
ba4a638b39 Update frontend to 20230309.1 (#89802) 2023-03-16 18:32:07 +01:00
epenet
1a7e316b51 Fix lingering timer in condition tests (#89807) 2023-03-16 18:19:29 +01:00
Jan Bouwhuis
6e25abfdcc Fix typo in docstr (#89804) 2023-03-16 16:54:26 +01:00
Erik Montnemery
9384ec18f8 Add filters to climate and light service descriptions (#86162)
* Add filters to climate and light service descriptions

* Allow specifying enums directly

* Update service descriptions

* Adjust test

* Cache entity features

* Lint

* Improve error handling, add list of known base components

* Don't allow specifying an entity feature as int
2023-03-16 15:59:51 +01:00
Jan Bouwhuis
c81a38effb Mqtt prepare test base part1 (#89796)
* Refactor test_reloadable

* Refactor test_disabling_and_enabling_entry

* optimize test_unload_config_entry

* Cleanup help_test_unload_config_entry

* cleanup test_unload_entry

* Update test tls_version

* More tests to entry only

* Add validate and hassconfig patch

* Revert fixture changes patch_hass_config

* Follow up comments
2023-03-16 15:57:01 +01:00
Erik Montnemery
886c2635ad Add support for constant selector (#89573)
* Add support for constant selector

* Adapt to frontend PR changes
2023-03-16 09:02:26 -04:00
epenet
c6568ffb62 Fix lingering timer in collection helper tests (#89793)
* Fix lingering timer in collection helper tests

* One more
2023-03-16 08:38:22 -04:00
Joakim Plate
b3bd80d905 Handle int or mapping for off case in nibe cooling (#89680)
Handle int or mapping for off case in nibe
2023-03-16 13:26:56 +01:00
Kevin Siml
e57031b1b5 Add Pushsafer notify parameters (#89555) 2023-03-16 13:03:05 +01:00
Franck Nijhof
f32b7859b8 Restructure translations for entity components (#89702) 2023-03-16 12:16:08 +01:00
Erik Montnemery
f55aaf7664 Drop unused Google entity settings from cloud (#89786) 2023-03-16 11:15:38 +01:00
Vincent Knoop Pathuis
273d794f7a Add device class for Landis+Gyr GJ energy sensor (#89522) 2023-03-16 11:12:05 +01:00
epenet
46a5aa71ec Add type hints to helper tests (#89784) 2023-03-16 11:10:56 +01:00
epenet
69e85b3216 Fix SFR Box diagnostics (#89783) 2023-03-16 11:09:54 +01:00
epenet
fec6236dd9 Add type hints to root tests (#89785) 2023-03-16 11:08:47 +01:00
epenet
8a58457203 Fix lingering timer in config entries test (#89787) 2023-03-16 11:07:42 +01:00
dependabot[bot]
a591f64258 Bump actions/checkout from 3.3.0 to 3.4.0 (#89778)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-16 09:46:40 +01:00
epenet
913156b0e0 Avoid lingering timer on script shutdown (#89753) 2023-03-16 08:00:21 +01:00
J. Nick Koston
c707ddbf7c Bump aioesphomeapi to 13.5.1 (#89777) 2023-03-15 20:00:47 -10:00
jan iversen
2365a884d2 Secure modbus hub_collect remains valid (#89684)
Secure hub_collect remains valid.
2023-03-15 23:48:00 -04:00
J. Nick Koston
ecf6922ade Bump yalexs_ble to 2.1.0 (#89772)
switches to using cryptography to reduce the number of deps

changelog: https://github.com/bdraco/yalexs-ble/compare/v2.0.4...v2.1.0
2023-03-15 23:47:26 -04:00
J. Nick Koston
ed27dae173 Small cleanups to recorder history (#89774)
* Small cleanups to recorder history

* Small cleanups to recorder history

* fixes

* flake8 cannot figure it out
2023-03-15 23:44:33 -04:00
J. Nick Koston
99d6b1fa57 Migrate States to use a table manager (#89769) 2023-03-15 16:19:43 -10:00
J. Nick Koston
4080d68489 Fix logbook tests failing because time was not url encoded correctly (#89770) 2023-03-15 15:29:41 -10:00
J. Nick Koston
e379aa23bd Migrate StateAttributes to use a table manager (#89760)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-03-15 15:26:29 -10:00
J. Nick Koston
ccab45520b Remove asyncio.coroutine workarounds (#88560) 2023-03-15 20:04:31 -04:00
Matthias Alphart
a360da8bc3 Update xknx to 2.7.0 (#89765) 2023-03-15 23:28:43 +01:00
J. Nick Koston
69078b5aed Bump pyblackbird to 0.6 for py3.11 (#89719) 2023-03-15 12:14:49 -10:00
J. Nick Koston
aec2d63302 Add keep_days to recorder.purge_entities (#89726) 2023-03-15 11:13:47 -10:00
Jan Bouwhuis
6ba5f8e43a Fix imap server push holding HA startup (#89750) 2023-03-15 21:22:13 +01:00
Raman Gupta
7a267460d3 Cache remote app list for vizio TVs (#89003) 2023-03-15 20:42:23 +01:00
Jack Boswell
b43b2eb3cb Avoid rounding Starlink sensor data & instead allow configurable precision (#89486) 2023-03-15 20:40:22 +01:00
epenet
3aa5629665 Improve type hints in condition helper tests (#89754) 2023-03-15 19:42:23 +01:00
zhangshengdong29
bf21b2622c ArestData does not have available (#88631) 2023-03-15 19:13:32 +01:00
Michael
d4edec2863 Move calculation of current value into lib in Fritz!SmartHome (#89150) 2023-03-15 18:59:03 +01:00
Erik Montnemery
b7ac0058af Fix hassio cleanup when addon in uninstalled (#89756) 2023-03-15 18:56:58 +01:00
Marcel van der Veldt
fceb208381 Abort Hue config flow if bridge can not be reached (#88893)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-03-15 18:55:34 +01:00
starkillerOG
4eee626770 Reolink check firmware (#88903) 2023-03-15 18:54:28 +01:00
Maciej Bieniek
dea29f539f Use SensorDeviceClass.ENUM and add state attributes translations in Shelly integration (#89660) 2023-03-15 18:52:42 +01:00
epenet
54ad8b8ee9 Avoid lingering timers in update coordinator tests (#89749) 2023-03-15 18:50:32 +01:00
epenet
c416d18506 Add WAN information to SFR Box (#89678) 2023-03-15 18:49:57 +01:00
PatrickGlesner
cb74b934dc Fix NMBS IndexError (#89698) 2023-03-15 18:09:39 +01:00
epenet
35c02ddc81 Add type hints to update coordinator tests (#89748) 2023-03-15 18:07:43 +01:00
Allen Porter
b588b8b215 Bump ical to 4.5.0 (#89744) 2023-03-15 18:06:46 +01:00
StefanIacobLivisi
6b768b90b4 Bump aiolivisi to 0.0.19 (#89752) 2023-03-15 18:05:45 +01:00
epenet
8cbb1e542f Address late feedback for SamsungTV (#89751) 2023-03-15 17:14:27 +01:00
Erik Montnemery
4d3799a9de Make CalendarEntityFeature an IntFlag (#89733) 2023-03-15 09:22:16 -04:00
jan iversen
6e5b4f9f82 Add modbus hvac_* write registers (#89695) 2023-03-15 14:09:14 +01:00
J. Nick Koston
a244749712 Make StatesMetaManager thread-safe when an entity_id is fully deleted from the database and than re-added (#89732)
* refactor to make StatesMetaManager threadsafe

* refactor to make StatesMetaManager threadsafe

* refactor to make StatesMetaManager threadsafe

* refactor to make StatesMetaManager threadsafe

* reduce

* comments
2023-03-15 08:54:02 -04:00
starkillerOG
6a01c3369d Reolink auto quick reply (#89656) 2023-03-15 12:56:01 +01:00
epenet
6270776fbb Add turn_on trigger to Samsung TV (#89018)
* Add turn_on trigger to Samsung TV

* Add tests

* Apply suggestions from code review

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

* Remove assert

* Cleanup mock_send_magic_packet

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-03-15 12:43:53 +01:00
jan iversen
cd23caff58 Correct modbus serial method parameter (#89738) 2023-03-15 12:27:45 +01:00
epenet
9719f817c0 Bump ruff to 0.0.256 (#89734) 2023-03-15 10:07:12 +01:00
J. Nick Koston
59de7f3057 Migrate EventData management to a table manager (#89716) 2023-03-14 21:40:59 -10:00
Joakim Plate
bf8c4cae27 Update to nibe 2.1.4 (#89686) 2023-03-15 06:01:34 +01:00
Allen Porter
a91055cc2a Fix additional typing in local calendar tests (#89704)
* Fix additional typing in local calendar tests

* Update tests/components/local_calendar/test_calendar.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-14 19:33:46 -07:00
J. Nick Koston
b906d67c1e Fix filtered purge not removing newer events (#89721) 2023-03-14 16:33:19 -10:00
Penny Wood
858fc30fcd Fix infinite loop in sun.sun (#89723) 2023-03-14 16:27:29 -10:00
Allen Porter
4ddcb14053 Add additional CalendarEvent validation (#89533)
Add additional event validation
2023-03-14 20:27:38 -04:00
Jack Boswell
c33ca4f664 Add diagnostics to Starlink (#86328) 2023-03-14 22:24:47 +01:00
J. Nick Koston
0630b7b962 Reduce size of load query to prime event_types and states_meta at startup (#89677) 2023-03-14 21:31:31 +01:00
Erik Montnemery
c2c809682a Tweak OTBR tests (#89694) 2023-03-14 21:26:16 +01:00
J. Nick Koston
a6d6807dd0 Add typing to statistics results (#89118) 2023-03-14 09:06:56 -10:00
Marcio Granzotto Rodrigues
9d2c62095f Bump bond-async to 0.1.23 (#89697) 2023-03-14 08:44:55 -10:00
Ernst Klamer
d1969fd0c2 Add water sensor to bthome (#89595)
* Add water sensor to bthome

* Use TOTAL state class for gas water and energy
2023-03-14 19:26:05 +01:00
epenet
71dc98a39c Improve hass_ws_client type hint in tests (#89703) 2023-03-14 16:31:40 +01:00
Allen Porter
1bc4802c04 Move local calendar text fixtures to conftest.py (#89674)
* Move local calendar text fixtures to conftest.py

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Add imports for suggested typing fixes

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-14 08:12:44 -07:00
Erik Montnemery
85e0177195 Add WS command for connecting OTBR to a known Thread network (#89692)
* Add WS command for connecting OTBR to a known Thread network

* Add test
2023-03-14 15:28:06 +01:00
Bram Kragten
a213ef2475 Add websocket command to set preferred thread dataset (#89700) 2023-03-14 15:27:31 +01:00
Aidan Timson
73e1942eeb Update entity names to capitalize first word only for System Bridge (#89688) 2023-03-14 12:28:43 +01:00
epenet
2809a686be Remove duplicate code in nextcloud (#89681) 2023-03-14 12:14:29 +01:00
Jan Bouwhuis
ec1b8b616f Debounce and group MQTT subscriptions (#88862)
* Debounce and group mqtt subscriptions

* Cleanup

* Do not cooldown on resubscribe

* Remove lock from task

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* ruff

* Longer initial cool down. Manages unsubscribes

* Own lock for access to self._pending_subscriptions

* adjust

* Subscribe to highest QoS when sharing subscription

* do not block _pending_subscriptions_lock with io

* Test the highest qos is subscribed at

* Cleanup max qos

* Follow up comments part 1

* Make docstr more generic

* Make max qos update thread safe

* Add lock on clearing _max_qos when resubscribing

* Wait for linger task

* User copy

* Check for key before cleaning up

* Fix lingering task

* Do not use a lock

* do not await _async_queue_subscriptions

* Replace copy with assignment

* Update max qos before returning

* Do not iterate if max_qos == 0

* Do not ieterate subs if max qos == 0

* Set initial cooldown correctly

* Ensure discovery cooldown ends after subscribing

* plan last subscribe with debouncer timeout

* cooldown if self._pending_subscriptions is set

* Revert format changes

* Remove stale assingnment self._last_subscribe

* Remove not used property

* Also check while for pending subscriptions

* revert first added sleep()

* Optimize

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-14 11:13:55 +01:00
J. Nick Koston
03b204f445 Execute sql queries in the database executor when using the recorder database (#89673) 2023-03-14 10:56:02 +01:00
J. Nick Koston
dbc0890ce8 Add index to event_type and entity_id (#89676) 2023-03-14 10:09:21 +01:00
epenet
b620e5d8a6 Move nextcloud constants (#89679) 2023-03-14 09:51:03 +01:00
amitfin
cbee1ba496 Increase timeout for coolmaster with swing (#87573)
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-03-14 09:47:26 +01:00
Paulus Schoutsen
d084e70aff 2023.3.4 (#89647) 2023-03-14 00:10:23 -04:00
J. Nick Koston
2cb673db04 Handle bytes data in sql sensors (#89169) 2023-03-13 18:07:05 -10:00
G Johansson
afa58b80bd Default to recorder db for SQL integration (#85436)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-13 17:41:32 -10:00
puddly
69582b7ecb Bump ZHA dependencies (#89667)
* Bump `zha-quirks` library and account for `setup_quirks` signature

* Bump other ZHA dependencies

* Revert zigpy bump
2023-03-13 22:06:05 -04:00
Erik Montnemery
2f4e9c8ef3 Use otbr domain as dataset source (#89653) 2023-03-13 20:56:09 -04:00
Aidan Timson
a99f6f7124 Handle ConnectionClosedException from System Bridge (#89654)
Handle unretrieved ConnectionClosedException from System Bridge
2023-03-13 20:55:37 -04:00
Aidan Timson
6809bd3029 Remove incorrect state class for System Bridge sensors (#89655) 2023-03-13 20:54:49 -04:00
J. Nick Koston
8e242c1fe6 Force binary build of sqlalchemy wheels (#89658)
Force binary build of sqlalchemy
2023-03-13 20:52:53 -04:00
J. Nick Koston
6713253553 Bump ulid-transform to 0.4.2 (#89666)
32 bit fixes

changelog: https://github.com/bdraco/ulid-transform/compare/v0.4.0...v0.4.2
2023-03-13 20:52:27 -04:00
puddly
cbffaf30ba Bump ZHA dependencies (#89667)
* Bump `zha-quirks` library and account for `setup_quirks` signature

* Bump other ZHA dependencies

* Revert zigpy bump
2023-03-13 20:52:01 -04:00
Mick Vleeshouwer
0442a189e9 Add silent option for DynamicShutter (ogp:Shutter) in Overkiz (#89164)
Add new switch
2023-03-14 00:42:12 +01:00
Pascal Vizeli
5104e7f51a Use C-Extension for sqlalchemy (#89661) 2023-03-13 22:22:28 +01:00
Paulus Schoutsen
160518350f Bump SQLAlchemy to 2.0.6 (#89650) 2023-03-13 14:54:27 -04:00
Paulus Schoutsen
8a4233ac8e Bump SQLAlchemy to 2.0.6 (#89650) 2023-03-13 08:51:01 -10:00
Erik Montnemery
d422b0dcc2 Make OTBR add newly created dataset to thread credential store (#89645) 2023-03-13 14:09:09 -04:00
starkillerOG
d54259f9ac Bump reolink-aio to 0.5.5 (#89646) 2023-03-13 18:47:00 +01:00
Paulus Schoutsen
daa5718a80 Bumped version to 2023.3.4 2023-03-13 13:26:50 -04:00
tomrennen
f5562e93ac Improved "ON" state check for Use room sensor for cooling (#89634) 2023-03-13 13:26:44 -04:00
Erik Montnemery
d2f90236d1 Rename modules named repairs.py which are not repairs platforms (#89618) 2023-03-13 13:26:43 -04:00
J. Nick Koston
65c614421a Increase maximum aiohttp connections to 4096 (#89611)
fixes #89408
2023-03-13 13:26:41 -04:00
Eugenio Panadero
22922da607 Bump aiopvpc to 4.1.0 (#89593) 2023-03-13 13:26:40 -04:00
J. Nick Koston
ca0304ffc4 Fix get_significant_states_with_session query looking at legacy columns (#89558) 2023-03-13 13:26:39 -04:00
Robert Svensson
950a1f6e9e Bump pydeconz to v110 (#89527)
* Bump pydeconz to v109

* Bump pydeconz to v110 for additional color modes
2023-03-13 13:26:38 -04:00
rappenze
1e7f58d859 Fix bug in fibaro cover (#89502) 2023-03-13 13:26:37 -04:00
J. Nick Koston
7cb4620671 Fix data migration never finishing when database has invalid datetimes (#89474)
* Fix data migration never finishing when database has invalid datetimes

If there were impossible datetime values in the database (likely
from a manual sqlite to MySQL conversion) the conversion would
never complete

* Update homeassistant/components/recorder/migration.py
2023-03-13 13:26:36 -04:00
Kevin Worrel
8c2569d2ce Reconnect on any ScreenLogic exception (#89269)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-13 13:26:34 -04:00
Arjan
6ebd493c4d Fix gtfs with 2023.3 (sqlachemy update) (#89175) 2023-03-13 13:26:33 -04:00
Jan Stienstra
990ecbba72 Recode Home Assistant instance name to ascii for Jellyfin (#87368)
Recode instance name to ascii
2023-03-13 13:26:32 -04:00
David Poll
0457bb2717 Add is_hidden_entity test for Jinja templates (#89011) 2023-03-13 18:20:33 +01:00
G Johansson
02389960ce Refactor Command line sensor to inherit TemplateSensor (#81222)
* Refactor sensor

* Remove not needed

* block until done

* reset test

* test sensor

* Add time
2023-03-13 17:23:25 +01:00
Nick Borgers
a7396af4bb Bump pybravia to 0.3.2 (#89635) 2023-03-13 16:06:29 +01:00
Erik Montnemery
8a0522ca2a Include extended address in thread discovery data (#89640) 2023-03-13 15:59:22 +01:00
Erik Montnemery
0f2abe7f25 Bump python-otbr-api to 1.0.9 (#89637) 2023-03-13 15:52:36 +01:00
Joakim Sørensen
11e21378b1 Add sensors for supervisor host (#89461)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-03-13 15:39:49 +01:00
epenet
07b25939a2 Use SnapshotAssertion in SFR button tests (#89633) 2023-03-13 15:23:00 +01:00
tomrennen
15506da332 Improved "ON" state check for Use room sensor for cooling (#89634) 2023-03-13 15:15:13 +01:00
Thijs Walcarius
cdfb43d403 Address late review comments for frontier_silicon config flow (#89507)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: wlcrs <wlcrs@users.noreply.github.com>
2023-03-13 15:06:45 +01:00
Klaas Schoute
3aeda1792a Bump easyEnergy to v0.2.1 (#89630) 2023-03-13 15:00:50 +01:00
anotherthomas
179cc4d7f7 Improve warnings in mqtt light messages (#89552)
* improved warnings in mqtt light messages.

* fixed tests.
2023-03-13 14:46:16 +01:00
Erik Montnemery
3637d787cf Fix intellifire name property (#89632)
Fix intellifire name property
2023-03-13 14:01:28 +01:00
Erik Montnemery
a230732087 Correct naming of some otbr tests (#89631) 2023-03-13 13:56:08 +01:00
epenet
f3da95fb1f Use SnapshotAssertion in SFR binary sensor tests (#89624) 2023-03-13 13:37:51 +01:00
Penny Wood
429e52cf3d Improve typing in climate.py (#89577) 2023-03-13 12:40:09 +01:00
starkillerOG
431a8d0047 Add support for dual lens cameras in Reolink (#89554) 2023-03-13 12:16:52 +01:00
Arjan
40ed3be4a8 Fix gtfs with 2023.3 (sqlachemy update) (#89175) 2023-03-13 11:57:49 +01:00
starkillerOG
6e10cd81dd Use repair issue when port enable fails in Reolink (#89591)
* Reolink use repair issue for disabled ports

* fix styling

* Add port repair issue tests

* Update homeassistant/components/reolink/strings.json

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-13 11:43:41 +01:00
Franck Nijhof
62bd2e97f5 Merge branch 'master' into dev 2023-03-13 11:35:16 +01:00
Jan Rieger
78e8de9bd7 Add ESERA 1-Wire virtual integration (#89487) 2023-03-13 11:33:35 +01:00
cnico
e73e88b922 Bump flipr-api to 1.5.0 (#89598)
flipr api 1.5.0 to use the new cloud api
2023-03-13 11:16:45 +01:00
David Poll
7284af6a3e Add an in-memory-preloading loader for Jinja imports (#88850)
* Adds a loader to enable jinja imports.

* Switch to in-memory

* Move loading custom_jinja off of the event loop

* Raise TemplateNotFound if template doesn't exist

* Fix docstring

* Adds a service to reload custom jinja

* Remove IO from test setup

* Improve coverage and small refactor

* Incorporate feedback and use .jinja extension

* Check the loaded sources in test.

* Incorporate PR feedback.

* Update homeassistant/helpers/template.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-13 11:00:05 +01:00
G Johansson
5c4f93fa36 Refactor Command line cover to inherit TemplateEntity (#81214)
* Refactor cover

* Remove not needed
2023-03-13 10:57:30 +01:00
G Johansson
5c42261210 Refactor Command line binary sensor to inherit TemplateEntity (#81212)
* Refactor binary sensor

* Align
2023-03-13 10:56:18 +01:00
epenet
5e73ad9cb0 Use SnapshotAssertion in SFR sensor tests (#89619)
* Use SnapshotAssertion in SFR sensor tests

* Name snapshots

* Cleanup const.py

* Remove name from snapshot
2023-03-13 10:45:59 +01:00
Erik Montnemery
fd5c56fc7d Rename modules named repairs.py which are not repairs platforms (#89618) 2023-03-13 09:44:20 +01:00
J. Nick Koston
d1ee303e85 Drop duplicated indices from recorder database schema (#89613)
Drop duplicated indices from schema

https://docs.percona.com/percona-toolkit/pt-duplicate-key-checker.html

```
% pt-duplicate-key-checker --databases fresh

ALTER TABLE `fresh`.`events` DROP INDEX `ix_events_event_type_id`;

ALTER TABLE `fresh`.`states` DROP INDEX `ix_states_metadata_id`;

ALTER TABLE `fresh`.`statistics` DROP INDEX `ix_statistics_metadata_id`;

ALTER TABLE `fresh`.`statistics_short_term` DROP INDEX `ix_statistics_short_term_metadata_id`;

```
2023-03-13 09:24:57 +01:00
dougiteixeira
470b0b5471 Adjust Tuya entity naming (#89616)
Fix entity name
2023-03-13 09:23:04 +01:00
dependabot[bot]
e33cb2ee60 Bump actions/cache from 3.3.0 to 3.3.1 (#89617)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-13 09:10:47 +01:00
Eugenio Panadero
1fb11aec26 Bump aiopvpc to 4.1.0 (#89593) 2023-03-13 09:07:10 +01:00
Stephan Uhle
c45fb85f17 Bump pysml to 0.0.9 (#89603) 2023-03-13 08:25:59 +01:00
Stephan Uhle
17c0e18776 Code quality update for EDL21 (#89561)
Enhance code quality.
2023-03-13 08:04:24 +01:00
J. Nick Koston
e34853a82a Switch underlying history stats calculation to use seconds (#77857)
* Switch history stats to report in seconds

Because hours were previously used, the data would always be off because
of the loss of resolution when the time being tracked was in a window
of more than 12s

* Apply suggestions from code review

* Update homeassistant/components/history_stats/sensor.py

* tweak
2023-03-12 23:05:48 -04:00
J. Nick Koston
4dcf7c6267 Fix history_stats test failing during DST (#89589)
Note that there is one test that needs `now()` as it is
timezone aware
2023-03-12 23:03:48 -04:00
J. Nick Koston
0575b9bc88 Increase maximum aiohttp connections to 4096 (#89611)
fixes #89408
2023-03-12 16:57:22 -10:00
Barry Loong
877efc993b Add support for window device class to google assistant (#89564) 2023-03-12 22:45:25 -04:00
J. Nick Koston
b9ac6b4a7c Improve reliability of context id migration (#89609)
* Split context id migration into states and events tasks

Since events can finish much earlier than states we
would keep looking at the table because states as not
done. Make them seperate tasks

* add retry dec

* fix migration happening twice

* another case
2023-03-12 21:41:48 -04:00
J. Nick Koston
85ca94e9d4 Mark database sessions that do not write data as read_only (#89600)
* Mark sessions that do not write data as read_only

* Mark sessions that do not write data as read_only
2023-03-12 21:33:28 -04:00
J. Nick Koston
977a07de13 Generate large history responses in the executor (#89606) 2023-03-12 21:32:26 -04:00
MarkGodwin
41b4c5532d Add Update entities to TP-Link Omada integration (#89562)
* Bump tplink-omada

* Add omada firmware updates

* Excluded from code coverage

* Fixed entity name
2023-03-12 21:26:34 -04:00
J. Nick Koston
459ea048ba Fix old indices never being removed with PostgreSQL (#89599) 2023-03-12 14:07:05 -10:00
J. Nick Koston
e809b636e6 Bump rflink to 0.0.65 for python 3.11 (#89601) 2023-03-12 12:44:47 -10:00
J. Nick Koston
c41f91be89 Deduplicate entity_id in the states table (#89557) 2023-03-12 10:01:58 -10:00
Jan Stienstra
8d88b02c2e Recode Home Assistant instance name to ascii for Jellyfin (#87368)
Recode instance name to ascii
2023-03-12 13:31:10 -05:00
J. Nick Koston
73cd62bd32 Fix lingering tasks in google_wifi tests (#89571) 2023-03-12 06:39:07 -10:00
Marc Mueller
b4b7605b82 Improve screenlogic generic typing (#89587) 2023-03-12 06:38:26 -10:00
G Johansson
e932139721 Strict typing threshold (#82786) 2023-03-12 17:10:00 +01:00
Erik Montnemery
cf7e500a8e Support translating entity names (#88242) 2023-03-12 15:55:04 +01:00
Erik Montnemery
376a6eb82a Convert device_sun_light_trigger test fixture to async (#89578) 2023-03-12 14:48:46 +01:00
Erik Montnemery
234610b1cc Simplify command_line sensor tests (#89576) 2023-03-12 14:47:43 +01:00
J. Nick Koston
edb06c58fa Add some more typing to screenlogic (#88522) 2023-03-11 23:04:19 -05:00
J. Nick Koston
84327f203c Fix flux_led set time to not happen during DST switch (#89559)
* Fix flux_led set time test

If this test was run at the wrong time of the day
it would not have been long enough for the set time
to fire since it only happens at 2:40:30 in the morning
local time

* Revert "Fix flux_led set time test"

This reverts commit 3241912eff.

* Change time set to not be during DST switch
2023-03-11 21:52:17 -05:00
J. Nick Koston
1c57339ec3 Refactor recorder tests to use recorder history API (#89565) 2023-03-11 21:51:16 -05:00
J. Nick Koston
50c31a5355 Move legacy database queries and models to prepare for schema v38 (#89532) 2023-03-11 11:26:30 -10:00
J. Nick Koston
16b420d660 Fix get_significant_states_with_session query looking at legacy columns (#89558) 2023-03-11 10:37:00 -10:00
J. Nick Koston
8bd43760b6 Deduplicate event_types in the events table (#89465)
* Deduplicate event_types in the events table

* Deduplicate event_types in the events table

* more fixes

* adjust

* adjust

* fix product

* fix tests

* adjust

* migrate

* migrate

* migrate

* more test fixes

* more test fixes

* fix

* migration test

* adjust

* speed up

* fix index

* fix more tests

* handle db failure

* preload

* tweak

* adjust

* fix stale docs strings, remove dead code

* refactor

* fix slow tests

* coverage

* self join to resolve query performance

* fix typo

* no need for quiet

* no need to drop index already dropped

* remove index that will never be used

* drop index sooner as we no longer use it

* Revert "remove index that will never be used"

This reverts commit 461aad2c52.

* typo
2023-03-11 14:54:55 -05:00
Kevin Worrel
56454c8580 Reconnect on any ScreenLogic exception (#89269)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-11 09:27:33 -10:00
Robert Svensson
8564768d9e UniFi library controls add/update signalling (#89525)
* Library controls add/update signalling

* Remove add/remove signalling

* Remove unifi_entity_base and unifi_client to make mypy pass
2023-03-11 20:14:39 +01:00
Robert Svensson
7487a004fd Bump pydeconz to v110 (#89527)
* Bump pydeconz to v109

* Bump pydeconz to v110 for additional color modes
2023-03-11 20:13:27 +01:00
J. Nick Koston
52cea16f74 Remove unused code in RecorderRuns.entity_ids (#89526) 2023-03-11 12:46:12 +01:00
J. Nick Koston
01e1221443 Refactor logbook data to use a dataclass (#89534) 2023-03-11 12:45:27 +01:00
rappenze
fccdd7b102 Fix bug in fibaro cover (#89502) 2023-03-11 09:15:05 +01:00
Robert Svensson
288a4203ab Make client tracker use common UniFi entity class (#84942)
* Make client tracker use common UniFi entity class

* Fix tests

* Fix mypy

* Remove legacy data

* Fix comment: skip else use return

* Minor change

* Remove missed stuff from previous rebase

* Import async_device_available_fn from entities.py rather than specifying it in device_tracker

* Avoid using asserts

* Keep explicit parenthesis for readability

* Allow loading entities on option changes
2023-03-11 06:23:49 +01:00
Paulus Schoutsen
d6a223f0e1 Await block till done inside patched config entry in tests (#89515) 2023-03-10 06:42:53 -10:00
epenet
96bd714364 Add FTTH and WAN info to SFR box diagnostics (#89492)
* Add FTTH and WAN info to SFR box diagnostics

* Adjust tests

* Use snapshots
2023-03-10 10:09:04 -05:00
epenet
74d4a26f97 Add missing mock in jellyfin config flow tests (#89510) 2023-03-10 10:06:53 -05:00
epenet
f22fabdd7f Add missing mock in kmtronic config flow tests (#89511) 2023-03-10 10:05:31 -05:00
epenet
401273dcff Add missing mock in lacrosse_view config flow tests (#89512) 2023-03-10 10:05:13 -05:00
epenet
f674559a71 Add missing mock in landisgyr config flow tests (#89513) 2023-03-10 10:04:45 -05:00
Vincent Knoop Pathuis
75bca76e68 Landis+Gyr move coordinator to own file (#89433)
* Move coordinator to own file and add test cases

* Apply typing improvements from review

* Remove testcase for exception during setup

* Simplify unittest for failing serial connection

* Readd checks in serial connection test after review
2023-03-10 15:57:35 +01:00
epenet
029093d0b2 Fix lingering timer in device registry (#89422) 2023-03-10 09:48:58 -05:00
dependabot[bot]
f4b8598979 Bump home-assistant/builder from 2022.11.0 to 2023.03.0 (#89485)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-10 13:27:07 +01:00
epenet
b4c1c0beb7 Bump pytest-xdist to 3.2.0 (#89501) 2023-03-10 13:08:45 +01:00
epenet
0f15f8b84b Bump pytest-sugar to 0.9.6 (#89500) 2023-03-10 12:58:29 +01:00
epenet
a0f725dfcb Add type hints to tests (#89497) 2023-03-10 12:06:50 +01:00
Thijs W
b8bda93d87 Add config flow to frontier_silicon (#64365)
* Add config_flow to frontier_silicon

* Add missing translation file

* Delay unique_id validation until radio_id can be determined

* Fix tests

* Improve tests

* Use FlowResultType

* Bump afsapi to 0.2.6

* Fix requirements_test_all.txt

* Stash ssdp, reauth and unignore flows for now

* Re-introduce SSDP flow

* hassfest changes

* Address review comments

* Small style update

* Fix tests

* Update integrations.json

* fix order in manifest.json

* fix black errors

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Address review comments

* fix black errors

* Use async_setup_platform instead of async_setup

* Address review comments on tests

* parameterize tests

* Remove discovery component changes from this PR

* Address review comments

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Add extra asserts to tests

* Restructure _async_step_device_config_if_needed

* Add return statement

* Update homeassistant/components/frontier_silicon/media_player.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-10 10:26:03 +01:00
Erik Montnemery
fde205c158 Add unconfigured flag to thread discovery data (#89230)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-03-09 22:32:32 -05:00
J. Nick Koston
9e1ba8534a Fix data migration never finishing when database has invalid datetimes (#89474)
* Fix data migration never finishing when database has invalid datetimes

If there were impossible datetime values in the database (likely
from a manual sqlite to MySQL conversion) the conversion would
never complete

* Update homeassistant/components/recorder/migration.py
2023-03-09 21:03:41 -05:00
TheJulianJES
d828263ee3 Add device class to ZHA Xiaomi plug "consumer connected" sensor (#89476)
Add device class to ZHA Xiaomi plug "consumer connected"
2023-03-09 20:15:22 -05:00
Jared Szechy
4591bb1823 Add Ruth and Stephen voices to AWS Polly (#89344)
Add Ruth and Stephen
2023-03-09 19:13:56 -05:00
epenet
f8462fd5b7 Add missing mock in guardian config flow tests (#89451) 2023-03-09 22:57:16 +01:00
Lucas Mindêllo de Andrade
eed16dc185 Add list areas function to template (#88441) 2023-03-09 22:32:30 +01:00
epenet
48fca3bb27 Fix missing debouncer cancel in update coordinator (#89383)
* Fix missing debouncer cancel in update coordinator

* Improve

* Adjust with comment

* Adjust again

* Simplify PR

* Adjust tests to avoid lingering timer

* Improve
2023-03-09 15:16:52 -05:00
Paulus Schoutsen
ddde17606d 2023.3.3 (#89459) 2023-03-09 14:40:06 -05:00
Paulus Schoutsen
3fba181e7b Bumped version to 2023.3.3 2023-03-09 13:30:46 -05:00
Erik Montnemery
da79bf8534 Fix Dormakaba dKey deadbolt binary sensor (#89447)
* Fix Dormakaba dKey deadbolt binary sensor

* Spelling
2023-03-09 13:18:23 -05:00
Paul Bottein
83e2cc32b7 Update frontend to 20230309.0 (#89446) 2023-03-09 13:18:22 -05:00
Joakim Sørensen
c7fb404a17 Add paths for add-on changelog and documentation (#89411) 2023-03-09 13:18:21 -05:00
Jan Bouwhuis
f1e114380a Allow enum as MQTT sensor device_class (#89391) 2023-03-09 13:18:20 -05:00
Brandon Rothweiler
04e4a644cb Bump pymazda to 0.3.8 (#89387) 2023-03-09 13:18:19 -05:00
Dillon Fearns
e606c2e227 Bump roombapy to 1.6.6 (#89366)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-09 13:18:17 -05:00
Jan Bouwhuis
ebf95feff3 Fix MQTT rgb light brightness scaling (#89264)
* Normalize received RGB colors to 100% brightness

* Assert on rgb_color attribute

* Use max for RGB to get brightness

* Avoid division and add clamp

* remove clamp

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-09 13:18:15 -05:00
Erik Montnemery
7ef1c289be Fix Dormakaba dKey deadbolt binary sensor (#89447)
* Fix Dormakaba dKey deadbolt binary sensor

* Spelling
2023-03-09 13:17:29 -05:00
Kirill Kulakov
d1734bc0ab Xiaomi Air Purifier S2 illuminance sensor support (#89208)
* Add sensor illuminance sensor support xiaomi s2 air purifier

* Add sensor illuminance sensor support xiaomi s2 air purifier

* fix sorting
2023-03-09 19:15:14 +01:00
Stephan Uhle
3796a73856 Add device info to edl21 (#89327) 2023-03-09 19:08:55 +01:00
Joakim Sørensen
4f29e1e180 Add stats sensors for core and supervisor (#89455)
* Add stats sensors for core and supervisor

* Update homeassistant/components/hassio/__init__.py
2023-03-09 19:06:35 +01:00
epenet
3a4ce260b4 Add missing mock in freedompro config flow tests (#89442) 2023-03-09 19:05:23 +01:00
epenet
f3084165b1 Add missing mock in filesize config flow tests (#89441) 2023-03-09 19:04:51 +01:00
epenet
4e4608183e Add missing mock in fibaro config flow tests (#89440) 2023-03-09 19:04:07 +01:00
Paul Bottein
01d8eaa5b6 Update frontend to 20230309.0 (#89446) 2023-03-09 12:28:02 -05:00
epenet
adfd263635 Add missing mock in gree config flow tests (#89450) 2023-03-09 18:12:22 +01:00
Marc Mueller
3c27f9ea7d Update actions/cache to 3.3.0 (#89438) 2023-03-09 17:58:03 +01:00
Stefan Agner
f903c536fb Add Hardkernel ODROID-M1 (#89431)
* Add Hardkernel ODROID-M1

Add Hardkernel ODROID-M1 machine. ODROID-M1 is a Rockchip RK3568B2 SoC
based single board computer with 4xCortex-A55, NVMe support and up to
8GB of RAM.

* Update homeassistant/components/hardkernel/hardware.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Fix tests

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-09 14:18:19 +01:00
epenet
dcff2f37f7 Add DSL prefix to SFRBox ADSL sensors (#89276) 2023-03-09 13:19:22 +01:00
Jeef
3545209355 Add vermont_castings virtual integration for Intellifire (#89317) 2023-03-09 13:17:50 +01:00
epenet
4a082403eb Add missing mock in coronavirus config flow tests (#89428) 2023-03-09 13:16:36 +01:00
Jack Boswell
c6d2824afe Disable some less commonly used starlink entities by default (#87869)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-09 13:06:27 +01:00
epenet
b0631fed1d Add missing mock in braviatv config flow tests (#89419) 2023-03-09 13:05:32 +01:00
epenet
9faf251321 Add missing mock in buienradar config flow tests (#89420) 2023-03-09 13:05:04 +01:00
J. Nick Koston
86ad8261d8 Update logbook queries for SADeprecationWarning (#87108) 2023-03-09 13:03:08 +01:00
avee87
c2f69dc59d Revert Transmission entities name changes (#89409) 2023-03-09 13:02:12 +01:00
TheJulianJES
3989ef8863 Parse attribute reports for ZHA select entity (#89418)
* Parse attribute reports for ZHA select entity

* Add test for checking that select entity attribute reports are parsed
2023-03-09 07:01:18 -05:00
Jeef
ead3662b7a Add quadrafire virtual integration for Intellifire (#89316) 2023-03-09 13:00:31 +01:00
epenet
c5ff3e9914 Add review-process link to PR template (#89430) 2023-03-09 11:52:20 +01:00
epenet
dbebe57d51 Avoid unnecessary Task in debouncer (#89370) 2023-03-09 11:41:59 +01:00
starkillerOG
c9d5baca75 Add hostname to DHCP discovery title (#89426) 2023-03-09 11:12:29 +01:00
Felix Rotthowe
5828e9a8d2 Simplify LivisiEntity inheritance (#89424)
* We don't need to inherit Entity. The CoordinatorEntity already does that.

* update imports
2023-03-09 09:27:53 +01:00
Jan Bouwhuis
1a4b14c217 Fix MQTT rgb light brightness scaling (#89264)
* Normalize received RGB colors to 100% brightness

* Assert on rgb_color attribute

* Use max for RGB to get brightness

* Avoid division and add clamp

* remove clamp

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-09 08:02:59 +01:00
Joakim Sørensen
e5ce8e920d Add paths for add-on changelog and documentation (#89411) 2023-03-08 20:23:33 -05:00
J. Nick Koston
170a13302c Reduce overhead to store context ids in the database (#88942) 2023-03-08 14:51:45 -10:00
Marc Mueller
386533a16f Update mypy to 1.1.1 (#89268)
* Update mypy to 1.1.1
* Update pydantic to 1.10.6
2023-03-08 22:57:54 +01:00
Matthias Alphart
bfae8992a9 Better log message for KNX expose conversion error (#89400) 2023-03-08 22:42:07 +01:00
Dillon Fearns
0d948a0f11 Bump roombapy to 1.6.6 (#89366)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-08 22:39:33 +01:00
Jan Bouwhuis
366baef7f6 Allow enum as MQTT sensor device_class (#89391) 2023-03-08 22:35:06 +01:00
Mark Adkins
8af37f7fee Update SharkIQ code owners (#89388) 2023-03-08 22:05:23 +01:00
mkmer
5c768c3f89 Bump aiosomecomfort to 0.0.14 (#89393) 2023-03-08 22:02:18 +01:00
J. Nick Koston
e1d62b554a Migrate integration_platform helper to use async_get_integrations (#89303)
* Migrate integration_platform helper to use async_get_integrations

We were fetching integrations inside the gather one
at a time. This is inefficent.

* cleanup

* cleanup

* add task name

* small tweaks

* gather only if we have tasks
2023-03-08 16:01:47 -05:00
Brandon Rothweiler
4f11344bc3 Bump pymazda to 0.3.8 (#89387) 2023-03-08 10:56:40 -10:00
J. Nick Koston
5dbab21f9a Fix missing f-string in filterable_job (#89340)
* Fix missing f-string in filterable_job

* remove bad test
2023-03-08 15:53:48 -05:00
Malte Franken
b07f614cf5 Add loggers to gdacs manifest file (#89338)
define loggers
2023-03-08 15:53:12 -05:00
Erik Montnemery
09915f8047 Add WS API for getting an OTBR's extended address (#89384)
* Add WS API for getting an OTBR's extended address

* Bump python-otbr-api to 1.0.8

* Really add require_admin decorator to otbr WS API
2023-03-08 15:52:53 -05:00
Robert Svensson
5a499050f2 Remove lingering timer related to camera (#89394) 2023-03-08 15:52:01 -05:00
J. Nick Koston
cefba7c638 Avoid falling back to listening for all states when a template render raises an exception (#89392)
When a template render raised an exception we would start listening for
all states until the template did not raise an exception anymore. This
was not needed since the entity that is causing the exception was
already in the tracker.

Re-rendering on all state changes can be extremely expensive and can
bring an instance into a sluggish or unresponsive state when updating
from a much older version that did not raise ValueError when a default
was missing.
2023-03-08 15:50:34 -05:00
Mark Adkins
84b5ea8ac0 Bump SharkIQ to 1.0.2 (#89346)
* SharkIQ Dep & Codeowner Update

* Update code owners

* Revert code owner changes
2023-03-08 15:31:32 -05:00
Erik Montnemery
7232a0a786 Add require_admin decorator to otbr WS API (#89385)
* Add require_admin decorator to otbr WS API

* Add require_admin decorator to forgotten otbr WS API
2023-03-08 19:21:04 +01:00
Franck Nijhof
3dca4c2f23 2023.3.2 (#89381) 2023-03-08 18:35:50 +01:00
parliament119
7d97653895 Bump pyfritzhome to 0.6.8 and add support for Non-Color-Bulbs (#89141) 2023-03-08 18:24:37 +01:00
Erik Montnemery
18cb53a35c Pass hass instance when validating templates (#89242)
* Pass hass instance when validating templates

* Update tests

* Fix validating templates without hass

* Update service tests
2023-03-08 11:28:53 -05:00
Vincent Knoop Pathuis
b0013247ff Move Landis+Gyr sensor descriptions to sensor platform (#89382)
Move HEAT_METER_SENSOR_TYPES to sensor platform
2023-03-08 16:56:04 +01:00
Marc Mueller
bfb89fd8f2 Update pylint to 2.17.0 (#89377)
* Update pylint to 2.17.0

* Remove unused pylint disable comments
2023-03-08 10:54:19 -05:00
epenet
7982f713e1 Fix lingering tasks in plex (#89282)
* Cleanup expected_lingering_tasks in plex

* Adjust
2023-03-08 10:53:08 -05:00
J. Nick Koston
aff7345ea0 Improve event filters to reject earlier (#89337)
* Improve event filters to reject earlier

- Avoid running the callbacks for state added/removed from
  a domain if there are no listeners that care about the domain

- Remove some impossible checks in the listeners that will
  never match since they were already rejected by the filter

* leave one guard since there is a race when we return control via await
2023-03-08 10:25:42 -05:00
Franck Nijhof
3f8f38f2df Bumped version to 2023.3.2 2023-03-08 16:24:08 +01:00
epenet
0844a0b269 Fix invalid state class in litterrobot (#89380) 2023-03-08 16:23:30 +01:00
Franck Nijhof
b65180d20a Improve Supervisor API handling (#89379) 2023-03-08 16:23:26 +01:00
starkillerOG
7f8a9697f0 Fix setting Reolink focus (#89374)
fix setting focus
2023-03-08 16:23:22 +01:00
J. Nick Koston
563bd4a0dd Fix bluetooth history and device expire running in the executor (#89342) 2023-03-08 16:23:18 +01:00
J. Nick Koston
614a1b03c1 Use an event filter for event triggers (#89339)
We avoid the overhead of call_soon and event loop
scheduling if the event does not match the schema
2023-03-08 10:23:13 -05:00
Florent Thoumie
29b5ef31c1 Recreate iaqualink httpx client upon service exception (#89341) 2023-03-08 16:23:13 +01:00
Renat Sibgatulin
863f8b727d Remove invalid device class in air-Q integration (#89329)
Remove device_class from sensors using inconsistent units
2023-03-08 16:23:09 +01:00
J. Nick Koston
83ed8cf689 Fix thread diagnostics loading blocking the event loop (#89307)
* Fix thread diagnostics loading blocking the event loop

* patch target
2023-03-08 16:23:06 +01:00
Tom Harris
52cd2f9429 Fix Insteon open issues with adding devices by address and missing events (#89305)
* Add missing events

* Bump dependancies

* Update for code review
2023-03-08 16:23:02 +01:00
puddly
74d3b2374b Clean ZHA radio path with trailing whitespace (#89299)
* Clean config flow entries with trailing whitespace

* Rewrite the config entry at runtime, without upgrading

* Skip intermediate `data = config_entry.data` variable

* Perform a deepcopy to ensure the config entry will actually be updated
2023-03-08 16:22:58 +01:00
epenet
f982af2412 Ignore DSL entities if SFR box is not adsl (#89291) 2023-03-08 16:22:53 +01:00
luar123
0b5ddd9cbf Bump python-snapcast to 2.3.2 (#89259) 2023-03-08 16:22:49 +01:00
J. Nick Koston
8d1aa0132e Make sql subqueries threadsafe (#89254)
* Make sql subqueries threadsafe

fixes #89224

* fix join outside of lambda

* move statement generation into a seperate function to make it easier to test

* add cache key tests

* no need to mock hass
2023-03-08 16:22:45 +01:00
J. Nick Koston
d737b97c91 Bump sqlalchemy to 2.0.5post1 (#89253)
changelog: https://docs.sqlalchemy.org/en/20/changelog/changelog_20.html#change-2.0.5

mostly bugfixes for 2.x regressions
2023-03-08 16:22:41 +01:00
Marc Mueller
0fac12866d Fix conditional check (#89231) 2023-03-08 16:22:38 +01:00
Bram Kragten
e3fe71f76e Update frontend to 20230306.0 (#89227) 2023-03-08 16:22:34 +01:00
J. Nick Koston
eba1bfad51 Bump aioesphomeapi to 13.4.2 (#89210) 2023-03-08 16:22:30 +01:00
Franck Nijhof
1a0a385e03 Fix Tuya Python 3.11 compatibility issue (#89189) 2023-03-08 16:22:26 +01:00
MarkGodwin
c9999cd08c Fix host IP and scheme entry issues in TP-Link Omada (#89130)
Fixing host IP and scheme entry issues
2023-03-08 16:22:22 +01:00
rappenze
8252aeead2 Bump pyfibaro version to 0.6.9 (#89120) 2023-03-08 16:22:18 +01:00
J. Nick Koston
c27a69ef85 Handle InnoDB deadlocks during migration (#89073)
* Handle slow InnoDB rollback when encountering duplicates during migration

fixes #89069

* adjust

* fix mock

* tests

* return on success
2023-03-08 16:22:15 +01:00
J. Nick Koston
d4c28a1f4a Cache transient templates compiles provided via api (#89065)
* Cache transient templates compiles provided via api

partially fixes #89047 (there is more going on here)

* add a bit more coverage just to be sure

* switch method

* Revert "switch method"

This reverts commit 0e9e1c8cbe.

* tweak

* hold hass

* empty for github flakey
2023-03-08 16:22:10 +01:00
Andrew Westrope
322eb4bd83 Check type key of zone exists in geniushub (#86798)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-08 16:22:05 +01:00
J. Nick Koston
4ce36366c3 Add names to the config entry setup and shutdown tasks (#89309)
* name the entry setup tasks

* name a few more tasks

* Update homeassistant/config_entries.py

* Update homeassistant/setup.py
2023-03-08 10:19:36 -05:00
epenet
3e2ee7cd11 Add missing mock in aemet config flow tests (#89360) 2023-03-08 10:18:44 -05:00
epenet
33906059d3 Add missing mock in airq config flow tests (#89364) 2023-03-08 10:18:31 -05:00
epenet
3a40f5f35b Add missing mock in airvisual_pro config flow tests (#89362) 2023-03-08 15:18:24 +00:00
epenet
23698eb99f Add missing mock in agent_dvr config flow tests (#89361) 2023-03-08 15:18:17 +00:00
epenet
959c2205d5 Add missing mock in airvisual config flow tests (#89359) 2023-03-08 10:18:07 -05:00
epenet
b61ad43144 Add missing mock in amber config flow tests (#89358) 2023-03-08 10:17:45 -05:00
epenet
f4572a2e1c Add missing mock in atag config flow tests (#89356) 2023-03-08 10:16:51 -05:00
epenet
ea6a95176d Add missing mock in azure event hub config flow tests (#89355) 2023-03-08 10:16:28 -05:00
Florent Thoumie
2ec78ae70e Recreate iaqualink httpx client upon service exception (#89341) 2023-03-08 15:37:24 +01:00
J. Nick Koston
5374c70c97 Fix bluetooth history and device expire running in the executor (#89342) 2023-03-08 15:27:34 +01:00
epenet
2626dd2c83 Fix invalid state class in litterrobot (#89380) 2023-03-08 15:24:19 +01:00
Franck Nijhof
feb3f543be Improve Supervisor API handling (#89379) 2023-03-08 15:21:11 +01:00
starkillerOG
9381865f1c Fix setting Reolink focus (#89374)
fix setting focus
2023-03-08 12:25:51 +01:00
Renat Sibgatulin
452e1d341d Remove invalid device class in air-Q integration (#89329)
Remove device_class from sensors using inconsistent units
2023-03-08 10:00:40 +01:00
epenet
30884f6d17 Add missing mock in axis config flow tests (#89365) 2023-03-08 09:38:55 +01:00
epenet
adb4414440 Add missing mock in brother config flow tests (#89354) 2023-03-08 08:43:07 +01:00
Marc Mueller
58280dc2ec Improve gios generic typing (#89321) 2023-03-08 08:39:15 +01:00
Nathan Spencer
ff83b8adb8 Bump pybalboa to 1.0.1 (#89310) 2023-03-08 08:26:34 +01:00
J. Nick Koston
3e5e937541 Use a filter for the PersonStorageCollection EVENT_ENTITY_REGISTRY_UPDATED listener (#89335)
Avoids creating a task unless a device_tracker is removed
2023-03-07 21:07:24 -05:00
Tom Harris
008a30618c Fix Insteon open issues with adding devices by address and missing events (#89305)
* Add missing events

* Bump dependancies

* Update for code review
2023-03-07 21:06:29 -05:00
puddly
fa128fbcec Clean ZHA radio path with trailing whitespace (#89299)
* Clean config flow entries with trailing whitespace

* Rewrite the config entry at runtime, without upgrading

* Skip intermediate `data = config_entry.data` variable

* Perform a deepcopy to ensure the config entry will actually be updated
2023-03-07 20:24:08 -05:00
J. Nick Koston
bde40cde48 Fix thread diagnostics loading blocking the event loop (#89307)
* Fix thread diagnostics loading blocking the event loop

* patch target
2023-03-07 20:21:26 -05:00
J. Nick Koston
099f16f6b8 Fix missing f-string in async_listen (#89336) 2023-03-07 20:19:08 -05:00
Erik Montnemery
aa2267d68e Rename hass context variable (#89302) 2023-03-07 23:21:47 +01:00
starkillerOG
2d3c5cf8ee Reolink test init 100% (#89112)
* Split out reolink tests

* Bring __init__ coverage to 100%

* Improve docstrings

* Use patching and autospec=True for ReolinkHost

* Use fixture

* fix styling

* Parametrize tests

* Update tests/components/reolink/conftest.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Apply suggestions from code review

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Update test_config_flow.py

* convert to fixture

* review comments

* Update tests/components/reolink/conftest.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/reolink/conftest.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/reolink/conftest.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* fix tests

* fix imports

* Update test_init.py

* Check if host is logout on reload

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-07 20:29:38 +01:00
epenet
f9a59c0839 Ignore DSL entities if SFR box is not adsl (#89291) 2023-03-07 19:04:50 +01:00
Erik Montnemery
bc0b3abb01 Remove unittest.TestCase from service helper tests (#89283)
* Remove unittest.TestCase from service helper tests

* Update

* Improve tests
2023-03-07 16:54:35 +01:00
Erik Montnemery
058bb4c3e6 Drop deepcopy of Alexa config (#89284) 2023-03-07 16:16:46 +01:00
Erik Montnemery
f5a3c4f7f5 Drop deepcopy of intent_script config (#89285) 2023-03-07 16:16:24 +01:00
Erik Montnemery
f48b535d9d Drop deepcopy of manual alarm control panel config (#89286) 2023-03-07 16:15:48 +01:00
Erik Montnemery
3f061e9101 Drop deepcopy of manual mqtt alarm control panel config (#89287) 2023-03-07 16:15:26 +01:00
epenet
ff2a88b426 Bump ruff to 0.0.254 (#89273) 2023-03-07 13:25:31 +01:00
Franck Nijhof
8c282e2b0d Remove deprecated DSMR Reader YAML configuration (#89239) 2023-03-07 13:24:41 +01:00
epenet
14bf68ad03 Cleanup expected_lingering_tasks in knx (#89279) 2023-03-07 11:59:31 +01:00
epenet
c51bde9a26 Fail CI on lingering tasks (#88905) 2023-03-07 11:35:48 +01:00
Aidan Timson
85bcf11aeb Update systembridgeconnector to 3.4.8 (#79732)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-07 10:22:31 +01:00
Doney den Ouden
755c44d152 Add HomeKit Door accessory type (#80741)
Co-authored-by: Jason Redd <jredd46@gmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-06 18:07:43 -10:00
J. Nick Koston
3c70dd9b42 Make sql subqueries threadsafe (#89254)
* Make sql subqueries threadsafe

fixes #89224

* fix join outside of lambda

* move statement generation into a seperate function to make it easier to test

* add cache key tests

* no need to mock hass
2023-03-06 20:44:11 -05:00
J. Nick Koston
9672b5f02c Bump sqlalchemy to 2.0.5post1 (#89253)
changelog: https://docs.sqlalchemy.org/en/20/changelog/changelog_20.html#change-2.0.5

mostly bugfixes for 2.x regressions
2023-03-06 20:20:37 -05:00
J. Nick Koston
ee89922c1b Add support for bluetooth pairing in esphome (#88603)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2023-03-06 14:24:35 -10:00
J. Nick Koston
5ccaa549d1 Bump aioesphomeapi to 13.5.0 (#89262) 2023-03-06 14:04:10 -10:00
luar123
7972dbf9fb Bump python-snapcast to 2.3.2 (#89259) 2023-03-06 22:48:40 +01:00
Marc Mueller
84034959ba Improve reolink generic typing (#88786)
Co-authored-by: starkillerOG <starkiller.og@gmail.com>
2023-03-06 21:54:34 +01:00
J. Nick Koston
83fa4c6c60 Bump aioesphomeapi to 13.4.2 (#89210) 2023-03-06 18:49:54 +01:00
Maciej Bieniek
1538f639ae Bump gios library to version 3.1.0 (#89044) 2023-03-06 18:12:19 +01:00
Marc Mueller
b407227d4a Update pylint to 2.16.4 (#89240) 2023-03-06 17:50:42 +01:00
starkillerOG
f9be796ca3 Reolink extend DHCP discovery (#89238) 2023-03-06 17:23:24 +01:00
epenet
91e389c58d Bump ruff to 0.0.253 (#89211)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-03-06 16:16:31 +01:00
starkillerOG
e8bdaaacd9 Add comment about Reolink Floodlight turn on brightness (#89234)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-03-06 16:08:53 +01:00
Robert Svensson
9ff45ca013 Allow loading UniFi entities on config options change (#88762)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-06 16:08:14 +01:00
epenet
ee6f969c2a Add type hints to ps4 media player (#89236) 2023-03-06 15:56:34 +01:00
Jan Bouwhuis
5ee383456f Catch exceptions and add logging when writing states on MQTT entities (#89091)
* Catch exceptions when writing states

* Do not use wrapper for logging and adjust tests

* Catch logging directly on async_write_ha_state()

* Update homeassistant/components/mqtt/models.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Fix test

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-03-06 15:34:47 +01:00
Marc Mueller
0c042e8f72 Fix conditional check (#89231) 2023-03-06 14:04:36 +01:00
starkillerOG
76cc4c9c08 Add Reolink light platform (#88619)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-03-06 12:48:36 +01:00
Bram Kragten
0ce9c6293a Update frontend to 20230306.0 (#89227) 2023-03-06 12:47:01 +01:00
starkillerOG
b2166c3117 Reolink add new number entities (#87932)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-06 12:42:34 +01:00
epenet
14a17b1028 Use mock_setup_entry fixture in melnor (#89226) 2023-03-06 12:28:40 +01:00
Raman Gupta
b572ecc62d Update zwave_js README with contributor instructions (#89158) 2023-03-06 12:06:53 +01:00
epenet
bf5f7c53d8 Move mock_setup_entry to conftest (#88484) 2023-03-06 11:31:50 +01:00
Fabian Pfütsch
ea4d2bd1e8 Sync tado zones after updating climate preset (#79715) 2023-03-06 10:40:34 +01:00
Erik Montnemery
ab1df8065c Refresh homeassistant_alerts when components are loaded (#76049) 2023-03-06 10:26:37 +01:00
epenet
0c65af93af Split reauth tests in plex (#89212) 2023-03-06 10:02:32 +01:00
Franck Nijhof
c7b30b61de Revert "Add device info to edl21" (#89217) 2023-03-06 08:51:33 +01:00
Stephan Uhle
fc673139cd Add device info to edl21 (#89070)
* Added device info for edl21.

* Apply suggestions from code review
2023-03-06 08:29:41 +01:00
MarkGodwin
876776e291 Fix host IP and scheme entry issues in TP-Link Omada (#89130)
Fixing host IP and scheme entry issues
2023-03-05 23:47:45 -05:00
ztamas83
811e286f0f Test coverage for Tibber config flow (#89088)
* Test coverage for Tibber config flow

* Fix isort and ruff errors
2023-03-05 20:38:47 -05:00
Matthias Alphart
36dabaaea6 Fix lingering tasks in KNX tests (#89201) 2023-03-05 20:19:42 -05:00
Franck Nijhof
ff485d4648 Refactor WLED number tests (#88582) 2023-03-05 19:49:01 -05:00
Franck Nijhof
a0ff95cef8 Update pytest to 7.2.2 (#89179) 2023-03-05 19:47:52 -05:00
Franck Nijhof
74566258ba Update watchdog to 2.3.1 (#89190) 2023-03-05 19:47:31 -05:00
Franck Nijhof
570db2a0af Update sentry-sdk to 1.16.0 (#89193) 2023-03-05 19:47:19 -05:00
Franck Nijhof
3e1d9deb29 Update coverage to 7.2.1 (#89196) 2023-03-05 19:47:07 -05:00
Franck Nijhof
216864d8f0 Refactor WLED switch tests (#89197) 2023-03-05 19:46:53 -05:00
starkillerOG
b14c5046e2 Reolink add select platform (#87946)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-05 23:43:58 +01:00
Ernst Klamer
497e3cf744 Bump bthome to 2.8.0 (#89192) 2023-03-05 23:35:48 +01:00
Franck Nijhof
d9fc932253 Fix Tuya Python 3.11 compatibility issue (#89189) 2023-03-05 22:19:40 +01:00
Tucker Kern
37ec442ffb Use title case for Transmission status sensor (#88578
* Use title case for Transmission status sensor

* Use localizations for transmission status sensor

* Assign device class and options as requested by review.

* Don't use title case for entity names
2023-03-05 22:12:30 +01:00
starkillerOG
c792631f15 Add Reolink siren platform (#88217)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-03-05 21:21:22 +01:00
starkillerOG
b2c9208dd0 Reolink add switch platform (#87943)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-03-05 21:00:51 +01:00
Khole
da100040a5 Hive add ability to delete device (#80838) 2023-03-05 20:43:33 +01:00
G Johansson
f4cda2dfda Add device_class and state_class to sql (#85418) 2023-03-05 20:30:42 +01:00
Franck Nijhof
84402a9ae0 Remove deprecated Season YAML configuration (#89166)
* Remove deprecated Season YAML configuration

* Restore old title defaults
2023-03-05 17:07:32 +01:00
Jan Bouwhuis
a9becd8e0e Raise ValueError on date parsing of MQTT sensor with invalid date format (#89036)
* Suppress ValueError on date parsing of MQTT sensor

* Simplify, but not update state on invalid payload

* Still raise an an invalid date

* Make datetime state unknown on invalid format

* remove unrelated added new line
2023-03-05 17:06:48 +01:00
Franck Nijhof
2fc2c2efbe Remove deprecated Moon YAML configuration (#89161)
* Remove deprecated Moon YAML configuration

* Restore old title defaults
2023-03-05 17:05:32 +01:00
Greg Dowling
7b54061ab7 Add repeat to roon media player (#88851) 2023-03-05 15:43:52 +01:00
Chris Talkington
2e1f6cad96 Detect newly connected clients in jellyfin (#89168) 2023-03-05 15:00:16 +01:00
Ben Morton
680f3c27a5 Add support for Spotify podcasts (#87671) 2023-03-05 14:02:38 +01:00
Andrew Westrope
cc6721c06b Check type key of zone exists in geniushub (#86798)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-05 13:51:02 +01:00
Geoff
b51dadbfe6 Update link to opencv in image_process log message (#89008) 2023-03-05 13:49:51 +01:00
Marc Mueller
cf369ff1a5 Unpin pandas for Python 3.11 (#89033) 2023-03-05 13:40:10 +01:00
Felix Rotthowe
189c612100 Add support for Livisi PSSO, ISS and ISS2 switch devices (#89140) 2023-03-05 13:36:56 +01:00
Carlos Cristobal
3614114a8f Revert "Replace Fitbit weight SensorStateClass measurement with total" (#89126) 2023-03-05 13:36:25 +01:00
Greg Dowling
08b3945d9b Bump pyroon to 0.1.4 (#89124) 2023-03-05 13:35:32 +01:00
starkillerOG
3f7a58786f Bump reolink-aio to 0.5.3 (#89145) 2023-03-05 13:34:07 +01:00
starkillerOG
39db0ef173 Add Reolink button platform (#88687)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-03-05 13:01:10 +01:00
Mick Vleeshouwer
85618fd3cd Bump overkiz dependency to 1.7.7 (#89163) 2023-03-05 12:54:39 +01:00
gjong
afd37c8a0a Bump youless api version to v1.0.1 (#89117) 2023-03-05 12:49:02 +01:00
J. Nick Koston
11681f3f31 Pass a helpful name when creating common asyncio tasks in core (#89171) 2023-03-05 12:46:02 +01:00
J. Nick Koston
927b43626c Bump aiodiscover to 1.4.14 (#89174) 2023-03-05 12:44:45 +01:00
Maciej Bieniek
6dc99d2ad8 Bump brother and pysnmplib backend libraries (#89100)
* Bump brother and pysnmplib

* Fix tests
2023-03-05 12:40:12 +01:00
Raman Gupta
62b0603b76 Bump pyvizio to 0.1.60 (#89160) 2023-03-05 01:03:36 -05:00
epenet
ec0223f326 Cleanup plex config flow tests (#88991) 2023-03-05 05:38:26 +01:00
Franck Nijhof
bfadc8453d Clean up import/migration repair in LaMetric (#89153) 2023-03-05 02:41:31 +01:00
Garrett
34f8e94ca9 Bump subarulink to 0.7.5 (#89162) 2023-03-04 22:26:16 +01:00
Franck Nijhof
5e2b7c6377 Refactor WLED diagnostic tests (#88581) 2023-03-04 15:09:47 +01:00
rappenze
2e5801cb6d Bump pyfibaro version to 0.6.9 (#89120) 2023-03-04 12:05:41 +01:00
Franck Nijhof
bab758c951 Refactor WLED button tests (#88580) 2023-03-04 11:45:53 +01:00
Bob van de Vijver
b27b094e27 Add day to event end to correct TwenteMilieu event timespan (#89028)
[TwenteMilieu] Add day to event end to correct event timespan

Co-authored-by: Allen Porter <allen@thebends.org>
2023-03-03 20:06:28 -08:00
J. Nick Koston
1bd9767d8c Handle InnoDB deadlocks during migration (#89073)
* Handle slow InnoDB rollback when encountering duplicates during migration

fixes #89069

* adjust

* fix mock

* tests

* return on success
2023-03-03 22:00:13 -05:00
Charles Garwood
1d9e8c873f Revert Intellifire breaking change from #88666 (#89110) 2023-03-03 17:16:12 +01:00
Felix Rotthowe
3a34f818e8 Refactor Livisi Switch and Climate to inherit from a common base class (#89085)
* Refactor Livisi entities to inherit from a common base class

* Add livisi_entity to .coveragerc

* Device location can be None

* Add use_room_as_device_name argument to constructor of LivisiEntity

When initializing, set entity name attribute only if device name differs (i.e. use_room_as_device_name=True).

* re-add comment for special handling of climate device names

* Add explicit type to constructur argument

* Make use_room_as_device_name a keyword only arg

* rename livisi_entity.py to entity.py

* change livisi_entity.py to entity.py in coveragerc

* Code quality improvements as suggested in PR

* sort .coveragerc

* fix isort issue

* fix all isort issues
2023-03-03 15:23:38 +01:00
Jeef
415190683f Updating Intellifire Naming scheme (#88666) 2023-03-03 09:04:27 -05:00
Stephan Uhle
9736fe1f99 Add missing Edl21 sensor 1-0:0.0.0*255 (#87389)
* Added missing sensor.

* OwnerShip entity is disabled by default.
2023-03-03 13:44:57 +01:00
epenet
0598417894 Enable ruff D404 (#89093) 2023-03-03 12:38:40 +01:00
epenet
9e6f869438 Set Protocol inheritance on EnergyPlatform (#89079) 2023-03-03 11:57:41 +01:00
epenet
699cc6c092 Adjust docstring on hassfest generated files (#89080) 2023-03-03 11:34:20 +01:00
epenet
4a3c0cd0a8 Adjust docstrings for ruff D404 (#89077) 2023-03-03 11:26:13 +01:00
Thibaut
a5cf8210ae Move Cycle command from cover to button (#89043)
Declare Cycle command as a button
2023-03-03 08:38:07 +01:00
epenet
0f493d85c8 Adjust xiaomi_ble tests (#89078)
Adjust xiaomi_ble test docstrings
2023-03-03 08:32:23 +01:00
Emory Penney
1cb1dfa456 Add Obihai reboot button (#88849)
* Obihai: Add reboot service

* Switch to button

* Remove button.py from coverage

* Update homeassistant/components/obihai/const.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/obihai/button.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update homeassistant/components/obihai/button.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* PR Feedback

* Cleanup some typehints

* As a class attr

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-03 07:31:56 +01:00
Raman Gupta
a689ce7283 Remove unused constant (#89071) 2023-03-02 23:21:40 -05:00
J. Nick Koston
48b93e03ee Cache transient templates compiles provided via api (#89065)
* Cache transient templates compiles provided via api

partially fixes #89047 (there is more going on here)

* add a bit more coverage just to be sure

* switch method

* Revert "switch method"

This reverts commit 0e9e1c8cbe.

* tweak

* hold hass

* empty for github flakey
2023-03-02 21:31:12 -05:00
Guy Martin
7365522d1f Add matching on quirk_classes to zha (#87653)
* Add matching on quirk_classes.

* Add and fix tests for matching on quirk_classes.

* Black fix.

* Add a unit test to validate quirk classes.
2023-03-02 19:43:11 -05:00
Paulus Schoutsen
f0f12fd14a 2023.3.1 (#89059) 2023-03-02 15:53:50 -05:00
Mitch
1836e35717 Bump nuheat to 1.0.1 (#88958) 2023-03-02 15:15:15 -05:00
Paulus Schoutsen
4eb55146be Bumped version to 2023.3.1 2023-03-02 14:22:23 -05:00
Jan Bouwhuis
b1ee6e304e Fix check on non numeric custom sensor device classes (#89052)
* Custom device classes are not numeric

* Update homeassistant/components/sensor/__init__.py

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

* Add test

* Update homeassistant/components/sensor/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-02 14:22:12 -05:00
Paul Bottein
d0b195516b Update frontend to 20230302.0 (#89042) 2023-03-02 14:22:11 -05:00
Franck Nijhof
a867f1d3c8 Update orjson to 3.8.7 (#89037) 2023-03-02 14:22:09 -05:00
Matthias Alphart
f7eaeb7a39 Fix KNX Keyfile upload (#89029)
* Fix KNX Keyfile upload

* use shutil.move instead
2023-03-02 14:22:08 -05:00
Erik Montnemery
3e961d3e17 Bump py-dormakaba-dkey to 1.0.4 (#88992) 2023-03-02 14:22:07 -05:00
Mitch
c28e16fa8b Bump requests to 2.28.2 (#88956)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-03-02 14:22:06 -05:00
Toni Juvani
e2e8d74aa6 Update pyTibber to 0.27.0 (#86940)
* Update pyTibber to 0.27.0

* Handle new exceptions
2023-03-02 14:22:05 -05:00
Jan Bouwhuis
8968ed1c47 Fix check on non numeric custom sensor device classes (#89052)
* Custom device classes are not numeric

* Update homeassistant/components/sensor/__init__.py

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

* Add test

* Update homeassistant/components/sensor/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-02 14:20:26 -05:00
epenet
5cab63c5b8 Fix lingering task in debounce tests (#89019)
* Fix lingering task in debounce tests

* Correct fix

* Use async_fire_time_changed
2023-03-02 13:01:50 -05:00
epenet
eebcf70b41 Re-enable Ruff D411 (#89035) 2023-03-02 13:01:05 -05:00
Matthias Alphart
e849878a48 Fix KNX Keyfile upload (#89029)
* Fix KNX Keyfile upload

* use shutil.move instead
2023-03-02 10:13:02 -05:00
Toni Juvani
f69aa7ad9d Update pyTibber to 0.27.0 (#86940)
* Update pyTibber to 0.27.0

* Handle new exceptions
2023-03-02 10:11:34 -05:00
Paul Bottein
fd4d79d24c Update frontend to 20230302.0 (#89042) 2023-03-02 10:10:26 -05:00
Franck Nijhof
ec32b934a5 Update orjson to 3.8.7 (#89037) 2023-03-02 09:40:46 -05:00
Xavier Decuyper
1efc33d4c6 Nuki: show actual device model in device registry (#89017)
* Bump pynuki to 1.6.1 (adds friendly device model names)

* Nuki: use friendly model name for device registry

* Update global dependencies
2023-03-02 13:40:22 +01:00
Brett Adams
e5fc2d3f78 Add Turn On and Turn Off for Advantage Air climate platform (#88684)
* Added Climate On and Climate Off

* Add Tests

* Fix off and on in zone

* Add test assertions for zone HVAC mode
2023-03-02 13:13:31 +01:00
Erik Montnemery
28e8fae280 Fix flaky energy tests (#89026) 2023-03-02 12:33:04 +01:00
Erik Montnemery
aa92d05317 Bump py-dormakaba-dkey to 1.0.4 (#88992) 2023-03-01 21:07:12 -05:00
Franck Nijhof
19c08bfdd5 Refactor WLED binary sensor test (#88579) 2023-03-01 23:44:12 +01:00
Stephan Uhle
adb0455bd2 Add config flow to EDL21 (#87655)
* Added config_flow for edl21.

* Added already_configured check.

* Added config_flow test

* Added setup of the edl21 from configuration.yaml

* Ran script.gen_requirements_all

* Removed the generated translation file.

* Added a deprecation warning when importing from configuration.yaml.

* Readded the platform schema.

* Added handling of optional name for legacy configuration.

* Fixed handling of default value in legacy configuration.

* Added duplication check entries created via legacy config.

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Apply suggestions from code review

* Apply suggestions from code review

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Apply suggestions from code review

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-01 21:19:20 +01:00
Franck Nijhof
8a9fbd650a 2023.3.0 (#88979) 2023-03-01 19:53:46 +01:00
J. Nick Koston
07839cc971 Bump ulid-transform to 0.4.0 (#88982)
changelog: https://github.com/bdraco/ulid-transform/compare/v0.3.1...v0.4.0
2023-03-01 13:35:53 -05:00
Jan Bouwhuis
ae04c5d773 Clean up unused and deprecated TLS version setting on MQTT client (#88674)
* Cleanup CONF_TLS_VERSION remains

* Fix diagnostics tests
2023-03-01 18:42:34 +01:00
epenet
bdbec491eb Enable RUFF ICN001 for registries (#88875)
* Add issue_registry to RUFF extend aliases

* Add area_registry to RUFF extend aliases

* Add device_registry to RUFF extend aliases

* Add entity_registry to RUFF extend aliases

* Adjust scaffold
2023-03-01 12:40:26 -05:00
Paulus Schoutsen
3f32c5d2ad Yaml use dict (#88977)
* Use built-in dict instead of OrderedDict

* Use dict instead of OrderedDict in YAML
2023-03-01 12:29:57 -05:00
Erik Montnemery
243725efe3 Tweak OTBR tests (#88839) 2023-03-01 17:53:38 +01:00
Franck Nijhof
8d59489da8 Bumped version to 2023.3.0 2023-03-01 17:25:44 +01:00
Stefan Agner
c146413a1a Add Home Assistant with space as brand (#88976) 2023-03-01 17:25:08 +01:00
Bram Kragten
a46d63a11b Update frontend to 20230301.0 (#88975) 2023-03-01 17:25:05 +01:00
mkmer
db4f6fb94d Bump Aiosomecomfort to 0.0.11 (#88970) 2023-03-01 17:25:01 +01:00
Erik Montnemery
c50c920589 Revert "Add state_class = MEASUREMENT to Derivative sensor (#88408)" (#88952) 2023-03-01 17:24:56 +01:00
starkillerOG
fe22aa0b4b Motion Blinds DHCP restrict (#88919)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-01 17:23:00 +01:00
Aaron Godfrey
a0162e4986 Fix todoist filtering custom projects by labels (#87904)
* Fix filtering custom projects by labels.

* Don't lowercase the label.

* Labels are case-sensitive, don't lowercase them.
2023-03-01 17:22:56 +01:00
RogerSelwyn
62c5cf51f5 Fix geniushub heating hvac action (#87531) 2023-03-01 17:22:53 +01:00
Frédéric Guardia
89aebba3ab Fix Google Assistant temperature attribute (#85921) 2023-03-01 17:22:48 +01:00
Bram Kragten
89c276bb6b Update frontend to 20230301.0 (#88975) 2023-03-01 11:12:37 -05:00
Stefan Agner
b607a09e4b Add Home Assistant with space as brand (#88976) 2023-03-01 17:10:19 +01:00
epenet
ee78864b05 Adjust entity registry access in homekit tests (#88959) 2023-03-01 16:54:00 +01:00
Erik Montnemery
3818e318db Improve threshold binary sensor tests (#88972) 2023-03-01 16:53:42 +01:00
Erik Montnemery
12933353b2 Drop codeowner from threshold integration (#88973) 2023-03-01 16:46:19 +01:00
Emory Penney
137d2f0d73 Obihai config flow fixes (#88853)
* Commit split issue

* Clearer name

* Add yaml_failure test case

* Not sure why this is failing now

* Update homeassistant/components/obihai/strings.json

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* PR Feedback

* Update homeassistant/components/obihai/config_flow.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-03-01 16:33:32 +01:00
Maciej Bieniek
79bcdf43f7 Add current sensor for Shelly RPC devices (#88863) 2023-03-01 16:26:20 +01:00
epenet
b84eead3f8 Adjust entity registry access in helper tests (#88965) 2023-03-01 16:24:31 +01:00
epenet
d65dff3f9e Adjust entity registry access in tests (2) (#88960) 2023-03-01 16:23:36 +01:00
Erik Montnemery
09f1c2318d Disable gc in-between energy sensor tests (#88593) 2023-03-01 16:21:11 +01:00
mkmer
54de16875d Bump Aiosomecomfort to 0.0.11 (#88970) 2023-03-01 16:19:46 +01:00
Mitch
341d046ba7 Bump requests to 2.28.2 (#88956)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-03-01 16:17:55 +01:00
starkillerOG
eae12bd48d Motion Blinds DHCP restrict (#88919)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-03-01 16:16:04 +01:00
epenet
b94dffb7d3 Add missing mock in esphome tests (#88923) 2023-03-01 16:11:21 +01:00
epenet
9762b684c2 Adjust entity registry access in tests (3) (#88964) 2023-03-01 16:04:40 +01:00
epenet
23cdafd12f Use UnitOfVolumeFlowRate in huisbaasje and plugwise (#88967) 2023-03-01 15:26:39 +01:00
Thibaut
0c66346fb0 Add dynamic unit of measurement support for Overkiz sensor (#80490)
* Add dynamic unit support

* Import all units

* Fix typing

* Add fallback to CORE_ELECTRIC_POWER_CONSUMPTION_STATE_MEASURED_VALUE_TYPE

* Fix rebase

* Give priority to the more accurate attribute

* Don’t use hardcoded seconds unit

* Don’t change SensorDescription

* Rework comment
2023-03-01 13:46:26 +01:00
Frédéric Guardia
85f2693353 Fix Google Assistant temperature attribute (#85921) 2023-03-01 12:54:07 +01:00
RogerSelwyn
b75879194d Fix geniushub heating hvac action (#87531) 2023-03-01 12:34:41 +01:00
Aaron Godfrey
ab9bd5c29e Fix todoist filtering custom projects by labels (#87904)
* Fix filtering custom projects by labels.

* Don't lowercase the label.

* Labels are case-sensitive, don't lowercase them.
2023-03-01 12:01:54 +01:00
Mitch
42a69566ac Bump nuheat to 1.0.1 (#88958) 2023-03-01 11:39:14 +01:00
Erik Montnemery
fca5cc6ea3 Add number + sensor device class volume storage (#88312)
* Add number + sensor device class volume storage

* Fix typo

* Format code

* Update device automations
2023-03-01 11:22:57 +01:00
Erik Montnemery
29b049fc57 Don't create new venv if script/setup is run from within a venv (#88906) 2023-03-01 11:11:29 +01:00
epenet
6febe00516 Fix lingering task in entity_platform test (#88957)
* Fix lingering task in entity_platform test

* Speed up the test
2023-03-01 10:49:13 +01:00
epenet
ed3cdd8fb9 Fix lingering task in timeout test (#88953) 2023-03-01 09:42:55 +01:00
epenet
1fa3f32474 Add missing mock in notion tests (#88951) 2023-03-01 09:41:55 +01:00
epenet
853bd52a22 Adjust entity registry access in tests (1) (#88950) 2023-03-01 09:11:14 +01:00
J. Nick Koston
202bed5d51 Fix lingering reload task in notion reauth (#88949)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-03-01 09:07:46 +01:00
Erik Montnemery
9ab95b6348 Revert "Add state_class = MEASUREMENT to Derivative sensor (#88408)" (#88952) 2023-03-01 08:53:05 +01:00
epenet
42b74e7f56 Adjust entity registry access in integrations (3) (#88948) 2023-03-01 08:24:56 +01:00
epenet
f69d76702a Adjust entity registry access in integrations (2) (#88947) 2023-03-01 08:02:51 +01:00
epenet
b3d6f098d2 Adjust entity registry access in integrations (1) (#88946) 2023-03-01 08:02:34 +01:00
epenet
f2b736fad0 Adjust entity registry access in core platforms (#88944)
* Adjust entity registry access in platforms

* Adjust more core components
2023-03-01 08:02:16 +01:00
epenet
50f908ce2d Use load_json_object in fitbit (#88585)
* Use load_json_object in fitbit

* Remove unnecessary cast
2023-03-01 07:44:29 +01:00
epenet
95dd62186e Use json_loads_object in arwn (#88611) 2023-03-01 07:43:33 +01:00
Marius Stedjan
9fc6700c5a Add ZWaveDiscoverySchema for Merten 507801 (#88342)
* Add ZWaveDiscoverySchema for Merten 507801

* Add discovery tests to Merten 507801 z-wave device

* Add Z-Wave discovery schemas for Merten 507801 to disable endpoint 2 by default

* Add more discovery tests for Merten 507801 z-wave device
2023-03-01 00:47:47 -05:00
Paulus Schoutsen
6c73b9024b Bumped version to 2023.3.0b7 2023-02-28 22:18:39 -05:00
Michael Hansen
59a9ace171 Update intent sentences package (#88933)
* Actually use translated state names in response

* Change test result now that locks are excluded from HassTurnOn

* Bump home-assistant-intents and hassil versions
2023-02-28 22:18:32 -05:00
PatrickGlesner
e751948bc8 Update Tado services.yaml defaults (#88929)
Update services.yaml

Deletes default values in 'time_period' and 'requested_overlay' fields in 'set_climate_timer'.
2023-02-28 22:18:31 -05:00
djtimca
702646427d Bump auroranoaa to 0.0.3 (#88927)
* Bump aurora_api version to fix issues with NOAA conversion values. Fix #82587

* update requirements for aurora.

* Add state_class to aurora sensor.

* Fixed environment to run requirements_all script.

* Revert "Add state_class to aurora sensor."

This reverts commit 213e21e842.
2023-02-28 22:18:30 -05:00
Tom Harris
8a605b1377 Bump pyinsteon to 1.3.3 (#88925)
Bump pyinsteon
2023-02-28 22:18:29 -05:00
Erik Montnemery
8eb8415d3f Bump py-dormakaba-dkey to 1.0.3 (#88924)
* Bump py-dormakaba-dkey to 1.0.3

* Log unexpected errors in config flow
2023-02-28 22:18:28 -05:00
Volker Stolz
9f3f71d0c3 Introduce a UUID configuration option for API token (#88765)
* Introduce a UUID configuration option for API token. (#86547)

If the uuid is configured, it will be used in the HTTP headers. Otherwise,
we'll hash the salted instance URL which should be good enough(tm).

* Generate random 6-digit uuid on startup.
2023-02-28 22:18:28 -05:00
Chuck Deal
09d0128601 Add diagnostics to VeSync (#86350)
* Add diagnostics to VeSync

* Create unit tests for diagnostics and init

* Improved diagnostic test coverage

* Peer review fixes

* Fixed Peer Review comments

* Updated based on Peer Review

* Additional diagnostic redactions

* Removed account_id from diagnostic output
2023-02-28 22:12:48 -05:00
PatrickGlesner
5b49648846 Update Tado services.yaml defaults (#88929)
Update services.yaml

Deletes default values in 'time_period' and 'requested_overlay' fields in 'set_climate_timer'.
2023-02-28 22:02:52 -05:00
epenet
3e8716b37e Adjust AddEntitiesCallback import (part 2) (#88873) 2023-02-28 22:01:36 -05:00
epenet
c724e7c29f Adjust registry access in openai_conversation (#88882) 2023-02-28 21:59:44 -05:00
epenet
246f9784c8 Adjust registry access in Google Assistant (#88883) 2023-02-28 21:59:26 -05:00
epenet
ee781e4f49 Adjust registry access in scripts (#88884) 2023-02-28 21:58:47 -05:00
epenet
54f709f704 Adjust registry access in intent (#88881) 2023-02-28 21:58:19 -05:00
epenet
1bed5c7775 Adjust registry access in tests root (#88880) 2023-02-28 21:56:46 -05:00
epenet
0e4c32efe2 Adjust registry access in conversation (#88879) 2023-02-28 21:56:18 -05:00
epenet
6ab0b2751d Adjust issue_registry imports (#88878)
* Add issue_registry to RUFF extend aliases

* Adjust code accordingly

* Revert "Add issue_registry to RUFF extend aliases"

This reverts commit 4e73dd567b.

* Revert changes to common.py
2023-02-28 21:55:44 -05:00
Volker Stolz
86acc4262e Introduce a UUID configuration option for API token (#88765)
* Introduce a UUID configuration option for API token. (#86547)

If the uuid is configured, it will be used in the HTTP headers. Otherwise,
we'll hash the salted instance URL which should be good enough(tm).

* Generate random 6-digit uuid on startup.
2023-02-28 21:52:45 -05:00
Erik Montnemery
39f5f0946e Store source entity in switch_as_x entity options (#88914) 2023-02-28 21:15:44 -05:00
J. Nick Koston
8f6cfc25c0 Use ulid-transform for constructing ulids (#88939)
* Use ulid-transform for constructing ulids

A future PR will use the new library to reduce the storage
overhead of ulids in the database

* tweak

* tweak

* bump
2023-02-28 21:09:47 -05:00
Michael Hansen
e0bdb3ecc3 Update intent sentences package (#88933)
* Actually use translated state names in response

* Change test result now that locks are excluded from HassTurnOn

* Bump home-assistant-intents and hassil versions
2023-02-28 21:07:18 -05:00
djtimca
c5e39f7039 Add state class to Aurora (#88938)
* Bump aurora_api version to fix issues with NOAA conversion values. Fix #82587

* update requirements for aurora.

* Add state_class to aurora sensor.

* Fixed environment to run requirements_all script.

* Revert "Add state_class to aurora sensor."

This reverts commit 213e21e842.

* Add state class to aurora sensor.

* Revert "Fixed environment to run requirements_all script."

This reverts commit f3f624226e.

* Revert "update requirements for aurora."

This reverts commit a3546ad88d.

* Revert "Bump aurora_api version to fix issues with NOAA conversion values. Fix #82587"

This reverts commit faf3ba7b5b.

* Move state class to _attr_state_class.
2023-02-28 23:47:29 +01:00
djtimca
dccd3e277e Bump auroranoaa to 0.0.3 (#88927)
* Bump aurora_api version to fix issues with NOAA conversion values. Fix #82587

* update requirements for aurora.

* Add state_class to aurora sensor.

* Fixed environment to run requirements_all script.

* Revert "Add state_class to aurora sensor."

This reverts commit 213e21e842.
2023-02-28 23:33:05 +01:00
Tom Harris
47a3c27c9a Bump pyinsteon to 1.3.3 (#88925)
Bump pyinsteon
2023-02-28 15:34:07 -05:00
Erik Montnemery
ad55a5db11 Bump py-dormakaba-dkey to 1.0.3 (#88924)
* Bump py-dormakaba-dkey to 1.0.3

* Log unexpected errors in config flow
2023-02-28 15:33:50 -05:00
Erik Montnemery
69ce6980d6 Add number + sensor device class energy storage (#88310)
* Add number + sensor device class energy storage

* Format code

* Update device automations
2023-02-28 19:35:43 +01:00
Paulus Schoutsen
b82da9418d Bumped version to 2023.3.0b6 2023-02-28 12:13:24 -05:00
Erik Montnemery
38cf725075 Fix Dormakaba dKey binary sensor (#88922) 2023-02-28 12:12:52 -05:00
Franck Nijhof
04cedab8d4 Small improvements to middleware filter (#88921)
Small improvements middleware filter
2023-02-28 12:12:51 -05:00
Erik Montnemery
2238a3f201 Reset state of template cover on error (#88915) 2023-02-28 12:12:50 -05:00
Marcel van der Veldt
f58ca17926 Bump aiohue library to version 4.6.2 (#88907)
* Bump aiohue library to 4.6.2

* Fix long press (fixed in aiohue lib)

* fix test
2023-02-28 12:12:48 -05:00
Marcel van der Veldt
d5e517b874 Do not create Area for Hue zones (#88904)
Do not create HA area for Hue zones
2023-02-28 12:12:47 -05:00
Bram Kragten
f9eeb4f4d8 Fix string for OTBR config flow abort (#88902) 2023-02-28 12:12:46 -05:00
Marcel van der Veldt
86d5e4aaa8 Fix removal of non device-bound resources in Hue (#88897)
Fix removal of non device-bound resources (like entertainment areas)
2023-02-28 12:12:45 -05:00
b-uwe
a56935ed7c Add virtual integration for HELTUN (#88892) 2023-02-28 12:12:44 -05:00
Erik Montnemery
fc56c958c3 Only allow channel 15 during configuration of OTBR (#88874)
* Only allow channel 15 during automatic configuration of OTBR

* Also force channel 15 when creating a new network
2023-02-28 12:12:43 -05:00
Erik Montnemery
a8e1dc8962 Create repairs issue if Thread network is insecure (#88888)
* Bump python-otbr-api to 1.0.5

* Create repairs issue if Thread network is insecure

* Address review comments
2023-02-28 12:12:11 -05:00
Erik Montnemery
32b138b6c6 Add WS API for creating a Thread network (#88830)
* Add WS API for creating a Thread network

* Add tests
2023-02-28 12:11:14 -05:00
b-uwe
c444e1c860 Add virtual integration for HELTUN (#88892) 2023-02-28 18:09:52 +01:00
Erik Montnemery
2112c66804 Add confirm step to thread zeroconf flow (#88869)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-02-28 12:08:18 -05:00
Franck Nijhof
95ed6fbc08 Small improvements to middleware filter (#88921)
Small improvements middleware filter
2023-02-28 12:07:17 -05:00
Erik Montnemery
8321443193 Fix Dormakaba dKey binary sensor (#88922) 2023-02-28 12:07:01 -05:00
Erik Montnemery
7bfc7f134c Reset state of template cover on error (#88915) 2023-02-28 12:06:40 -05:00
epenet
ac6bbc2f1c Add missing mock in webostv config flow tests (#88913) 2023-02-28 12:04:40 -05:00
epenet
ee144d34a9 Adjust core test to avoid lingering task (#88918) 2023-02-28 12:03:36 -05:00
Marcel van der Veldt
36e6a879ad Bump aiohue library to version 4.6.2 (#88907)
* Bump aiohue library to 4.6.2

* Fix long press (fixed in aiohue lib)

* fix test
2023-02-28 11:53:15 -05:00
Erik Montnemery
c38df1102a Fix typo in thread (#88916) 2023-02-28 11:34:46 -05:00
Erik Montnemery
f93bd8ef2c Only allow channel 15 during configuration of OTBR (#88874)
* Only allow channel 15 during automatic configuration of OTBR

* Also force channel 15 when creating a new network
2023-02-28 11:08:45 -05:00
Marcel van der Veldt
e74613f8be Fix removal of non device-bound resources in Hue (#88897)
Fix removal of non device-bound resources (like entertainment areas)
2023-02-28 11:04:10 -05:00
Erik Montnemery
390daf1723 Sort unit lists sent to frontend (#88898) 2023-02-28 16:12:49 +01:00
Marcel van der Veldt
a2a23564a4 Do not create Area for Hue zones (#88904)
Do not create HA area for Hue zones
2023-02-28 09:50:00 -05:00
Bram Kragten
e3e4b44958 Fix string for OTBR config flow abort (#88902) 2023-02-28 15:02:40 +01:00
epenet
7b5c978b95 Add missing mock in overkiz config flow tests (#88899) 2023-02-28 08:59:48 -05:00
Felix Rotthowe
1c4aa26ab6 Add myself to codeowners of Livisi integration (#88900)
Add @planbnet to codeowners of Livisi integration
2023-02-28 14:48:13 +01:00
Erik Montnemery
f41bec6ba9 Create repairs issue if Thread network is insecure (#88888)
* Bump python-otbr-api to 1.0.5

* Create repairs issue if Thread network is insecure

* Address review comments
2023-02-28 13:50:56 +01:00
Felix Rotthowe
4d58c9de8d Add human readable name for Livisi climate devices (#88891)
* Add human readable climate device name

* Remove room name from entity name and set "has_entity_name"
2023-02-28 13:08:52 +01:00
Erik Montnemery
b6f66b3568 Add WS command weather/convertible_units (#85681) 2023-02-28 11:35:47 +01:00
Jan Bouwhuis
4e66554298 Also set hass.config_entries when mock_hass_config fixture is used (#88669)
* Set `hass.config_entries` with `mock_hass_config`

* Update tests/conftest.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-02-28 11:14:04 +01:00
rodriguestiago0
bef5fde832 Add stop charge button to renault integration (#88003)
* Added service to start/stop charge

* Remove comment

* Fixed service

* removed service for start/stop charge

* Remove version

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Format

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Revert change

* Fix lint

* Add tests

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-02-28 10:28:44 +01:00
Erik Montnemery
d397217b5b Add confirm step to thread zeroconf flow (#88869)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-02-28 10:23:36 +01:00
epenet
d2ea773e7f Adjust AddEntitiesCallback import (part 1) (#88870)
Adjust AddEntitiesCallback import
2023-02-28 08:54:05 +01:00
Diogo Gomes
07c25b3dd8 Prosegur late review comments (#88859)
* address late comments on #76428

* adress review

* extra tweaks
2023-02-28 08:16:22 +01:00
Paulus Schoutsen
72c0526d87 Bumped version to 2023.3.0b5 2023-02-27 20:58:22 -05:00
Matthias Alphart
9ed4e01e94 Update xknx to 2.6.0 (#88864) 2023-02-27 20:58:11 -05:00
Paul Bottein
dcf1ecfeb5 Update frontend to 20230227.0 (#88857) 2023-02-27 20:58:10 -05:00
Klaas Schoute
b72224ceff Bump odp-amsterdam to v5.1.0 (#88847) 2023-02-27 20:58:09 -05:00
Erik Montnemery
96ad5c9666 Add thread user flow (#88842) 2023-02-27 20:58:09 -05:00
Erik Montnemery
00b59c142a Fix sensor unit conversion bug (#88825)
* Fix sensor unit conversion bug

* Ensure the correct unit is stored in the entity registry
2023-02-27 20:58:08 -05:00
Michael Davie
b054c81e13 Bump env_canada to 0.5.29 (#88821) 2023-02-27 20:58:07 -05:00
puddly
b0cbcad440 Bump ZHA dependencies (#88799)
* Bump ZHA dependencies

* Use `importlib.metadata.version` to get package versions
2023-02-27 20:58:06 -05:00
stickpin
bafe552af6 Upgrade caldav to 1.2.0 (#88791) 2023-02-27 20:58:05 -05:00
stickpin
d399855e50 Upgrade caldav to 1.1.3 (#88681)
* Update caldav to 1.1.3

* update caldav to 1.1.3

* update caldav to 1.1.3

---------

Co-authored-by: Allen Porter <allen@thebends.org>
2023-02-27 20:58:03 -05:00
mkmer
d26f430766 Bump aiosomecomfort to 0.0.10 (#88766) 2023-02-27 20:56:46 -05:00
Erik Montnemery
f2e4943a53 Catch CancelledError when setting up components (#88635)
* Catch CancelledError when setting up components

* Catch CancelledError when setting up components

* Also catch SystemExit
2023-02-27 20:56:45 -05:00
Bouwe Westerdijk
6512cd901f Correct Plugwise gas_consumed_interval sensor (#87449)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-02-27 20:56:45 -05:00
Paulus Schoutsen
fbe1524f6c Bumped version to 2023.3.0b4 2023-02-26 22:37:34 -05:00
J. Nick Koston
95e337277c Avoid starting a bluetooth poll when Home Assistant is stopping (#88819)
* Avoid starting a bluetooth poll when Home Assistant is stopping

* tests
2023-02-26 22:37:26 -05:00
J. Nick Koston
1503674bd6 Prevent integrations from retrying setup once shutdown has started (#88818)
* Prevent integrations from retrying setup once shutdown has started

* coverage
2023-02-26 22:37:25 -05:00
J. Nick Koston
ab6bd75b70 Fix flux_led discovery running at shutdown (#88817) 2023-02-26 22:37:24 -05:00
J. Nick Koston
2fff836bd4 Fix lock services not removing entity fields (#88805) 2023-02-26 22:37:23 -05:00
J. Nick Koston
d8850758f1 Fix unifiprotect discovery running at shutdown (#88802)
* 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
2023-02-26 22:37:22 -05:00
J. Nick Koston
0449856064 Bump yalexs-ble to 2.0.4 (#88798)
changelog: https://github.com/bdraco/yalexs-ble/compare/v2.0.3...v2.0.4
2023-02-26 22:37:21 -05:00
starkillerOG
e48089e0c9 Do not block on reolink firmware check fail (#88797)
Do not block on firmware check fail
2023-02-26 22:37:20 -05:00
starkillerOG
a7e081f70d Simplify reolink update unique_id (#88794)
simplify unique_id
2023-02-26 22:37:19 -05:00
Paulus Schoutsen
fe181425d8 Check circular dependencies (#88778) 2023-02-26 22:37:18 -05:00
Joakim Plate
8c7b29db25 Update nibe library to 2.0.0 (#88769) 2023-02-26 22:37:17 -05:00
J. Nick Koston
aaa5bb9f86 Fix checking if a package is installed on py3.11 (#88768)
pkg_resources is abandoned and we need to move away
from using it https://github.com/pypa/pkg_resources

In the mean time we need to keep it working. This fixes
a new exception in py3.11 when a module is not installed
which allows proper fallback to pkg_resources.Requirement.parse
when needed

```
2023-02-25 15:46:21.101 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
  File "/opt/homebrew/lib/python3.11/site-packages/aiohttp/web_protocol.py", line 433, in _handle_request
    resp = await request_handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/aiohttp/web_app.py", line 504, in _handle
    resp = await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/aiohttp/web_middlewares.py", line 117, in impl
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/components/http/security_filter.py", line 60, in security_filter_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/components/http/forwarded.py", line 100, in forwarded_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/components/http/request_context.py", line 28, in request_context_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/components/http/ban.py", line 80, in ban_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/components/http/auth.py", line 235, in auth_middleware
    return await handler(request)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/components/http/view.py", line 146, in handle
    result = await result
             ^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/components/config/config_entries.py", line 148, in post
    return await super().post(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/components/http/data_validator.py", line 72, in wrapper
    result = await method(view, request, data, *args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/helpers/data_entry_flow.py", line 71, in post
    result = await self._flow_mgr.async_init(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/config_entries.py", line 826, in async_init
    flow, result = await task
                   ^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/config_entries.py", line 844, in _async_init
    flow = await self.async_create_flow(handler, context=context, data=data)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/config_entries.py", line 950, in async_create_flow
    await async_process_deps_reqs(self.hass, self._hass_config, integration)
  File "/Users/bdraco/home-assistant/homeassistant/setup.py", line 384, in async_process_deps_reqs
    await requirements.async_get_integration_with_requirements(
  File "/Users/bdraco/home-assistant/homeassistant/requirements.py", line 52, in async_get_integration_with_requirements
    return await manager.async_get_integration_with_requirements(domain)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/requirements.py", line 171, in async_get_integration_with_requirements
    await self._async_process_integration(integration, done)
  File "/Users/bdraco/home-assistant/homeassistant/requirements.py", line 186, in _async_process_integration
    await self.async_process_requirements(
  File "/Users/bdraco/home-assistant/homeassistant/requirements.py", line 252, in async_process_requirements
    await self._async_process_requirements(name, missing)
  File "/Users/bdraco/home-assistant/homeassistant/requirements.py", line 284, in _async_process_requirements
    installed, failures = await self.hass.async_add_executor_job(
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/Cellar/python@3.11/3.11.1/Frameworks/Python.framework/Versions/3.11/lib/python3.11/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/requirements.py", line 113, in _install_requirements_if_missing
    if pkg_util.is_installed(req) or _install_with_retry(req, kwargs):
       ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/util/package.py", line 40, in is_installed
    pkg_resources.get_distribution(package)
  File "/opt/homebrew/lib/python3.11/site-packages/pkg_resources/__init__.py", line 478, in get_distribution
    dist = get_provider(dist)
           ^^^^^^^^^^^^^^^^^^
  File "/opt/homebrew/lib/python3.11/site-packages/pkg_resources/__init__.py", line 354, in get_provider
    return working_set.find(moduleOrReq) or require(str(moduleOrReq))[0]
                                            ~~~~~~~~~~~~~~~~~~~~~~~~~^^^
IndexError: list index out of range
``
2023-02-26 22:37:17 -05:00
J. Nick Koston
5b78e0c4ff Restore previous behavior of only waiting for new tasks at shutdown (#88740)
* 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
2023-02-26 22:37:16 -05:00
Franck Nijhof
2063dbf00d Bumped version to 2023.3.0b3 2023-02-25 12:07:47 +01:00
Joakim Sørensen
91a03ab83d Remove homeassistant_hardware after dependency from zha (#88751) 2023-02-25 12:07:25 +01:00
J. Nick Koston
ed8f538890 Prevent new discovery flows from being created when stopping (#88743) 2023-02-25 12:07:22 +01:00
J. Nick Koston
6196607c5d Make hass.async_stop an untracked task (#88738) 2023-02-25 12:07:19 +01:00
J. Nick Koston
833ccafb76 Log futures that are blocking shutdown stages (#88736) 2023-02-25 12:07:15 +01:00
mkmer
ca539d0a09 Add missing reauth strings to Honeywell (#88733)
Add missing reauth strings
2023-02-25 12:07:12 +01:00
Austin Mroczek
0e3e954000 Bump total_connect_client to v2023.2 (#88729)
* bump total_connect_client to v2023.2

* Trigger Build
2023-02-25 12:07:09 +01:00
avee87
4ef96c76e4 Fix log message in recorder on total_increasing reset (#88710) 2023-02-25 12:07:05 +01:00
Álvaro Fernández Rojas
d5b0c1faa0 Update aioqsw v0.3.2 (#88695)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-02-25 12:07:02 +01:00
Arturo
2405908cdd Fix matter light color capabilities bit map (#88693)
* Adds matter light color capabilities bit map

* Fixed matter light hue and saturation test
2023-02-25 12:06:58 +01:00
Paulus Schoutsen
b6e50135f5 Bumped version to 2023.3.0b2 2023-02-24 21:41:02 -05:00
Bram Kragten
64197aa5f5 Update frontend to 20230224.0 (#88721) 2023-02-24 21:40:56 -05:00
J. Nick Koston
5a2d7a5dd4 Reduce overhead to save json data to postgresql (#88717)
* Reduce overhead to strip nulls from json

* Reduce overhead to strip nulls from json

* small cleanup
2023-02-24 21:40:55 -05:00
J. Nick Koston
2d6f84b2a8 Fix timeout in purpleapi test (#88715)
https://github.com/home-assistant/core/actions/runs/4264644494/jobs/7423099757
2023-02-24 21:40:54 -05:00
J. Nick Koston
0c6a469218 Fix migration failing when existing data has duplicates (#88712) 2023-02-24 21:40:53 -05:00
J. Nick Koston
e69271cb46 Bump aioesphomeapi to 13.4.1 (#88703)
changelog: https://github.com/esphome/aioesphomeapi/releases/tag/v13.4.1
2023-02-24 21:40:52 -05:00
Michael Hansen
02bd3f897d Make a copy of matching states so translated state names can be used (#88683) 2023-02-24 21:40:51 -05:00
J. Nick Koston
64ad5326dd Bump mopeka_iot_ble to 0.4.1 (#88680)
* Bump mopeka_iot_ble to 0.4.1

closes #88232

* adjust tests
2023-02-24 21:40:50 -05:00
puddly
74696a3fac Name the Yellow-internal radio and multi-PAN addon as ZHA serial ports (#88208)
* 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
2023-02-24 21:40:49 -05:00
Paulus Schoutsen
70e1d14da0 Bumped version to 2023.3.0b1 2023-02-23 15:00:13 -05:00
Bram Kragten
25f066d476 Update frontend to 20230223.0 (#88677) 2023-02-23 15:00:07 -05:00
Marcel van der Veldt
5adf1dcc90 Fix support for Bridge(d) and composed devices in Matter (#88662)
* 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>
2023-02-23 15:00:05 -05:00
epenet
0fb28dcf9e Add missing async_setup_entry mock in openuv (#88661) 2023-02-23 15:00:04 -05:00
Allen Porter
2fddbcedcf Fix local calendar issue with events created with fixed UTC offsets (#88650)
Fix issue with events created with UTC offsets
2023-02-23 15:00:03 -05:00
J. Nick Koston
951df3df57 Fix untrapped exceptions during Yale Access Bluetooth first setup (#88642) 2023-02-23 15:00:02 -05:00
starkillerOG
35142e456a Bump reolink-aio to 0.5.1 and check if update supported (#88641) 2023-02-23 15:00:01 -05:00
Paulus Schoutsen
cfaba87dd6 Error checking for OTBR (#88620)
* Error checking for OTBR

* Other errors in flow too

* Tests
2023-02-23 15:00:00 -05:00
Erik Montnemery
2db8d4b73a Bump python-otbr-api to 1.0.4 (#88613)
* Bump python-otbr-api to 1.0.4

* Adjust tests
2023-02-23 14:59:59 -05:00
Raman Gupta
0d2006bf33 Add support for firmware target in zwave_js FirmwareUploadView (#88523)
* 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>
2023-02-23 14:59:58 -05:00
puddly
45547d226e Disable the ZHA bellows UART thread when connecting to a TCP coordinator (#88202)
Disable the bellows UART thread when connecting to a TCP coordinator
2023-02-23 14:59:56 -05:00
Franck Nijhof
cebc6dd096 Bumped version to 2023.3.0b0 2023-02-22 20:44:37 +01:00
7747 changed files with 508628 additions and 141693 deletions

View File

@@ -20,12 +20,17 @@ base_platforms: &base_platforms
- homeassistant/components/camera/**
- homeassistant/components/climate/**
- homeassistant/components/cover/**
- homeassistant/components/date/**
- homeassistant/components/datetime/**
- homeassistant/components/device_tracker/**
- homeassistant/components/diagnostics/**
- homeassistant/components/event/**
- homeassistant/components/fan/**
- homeassistant/components/geo_location/**
- homeassistant/components/humidifier/**
- homeassistant/components/image/**
- homeassistant/components/image_processing/**
- homeassistant/components/lawn_mower/**
- homeassistant/components/light/**
- homeassistant/components/lock/**
- homeassistant/components/media_player/**
@@ -39,6 +44,7 @@ base_platforms: &base_platforms
- homeassistant/components/stt/**
- homeassistant/components/switch/**
- homeassistant/components/text/**
- homeassistant/components/time/**
- homeassistant/components/tts/**
- homeassistant/components/update/**
- homeassistant/components/vacuum/**
@@ -49,6 +55,7 @@ base_platforms: &base_platforms
components: &components
- homeassistant/components/alexa/**
- homeassistant/components/application_credentials/**
- homeassistant/components/assist_pipeline/**
- homeassistant/components/auth/**
- homeassistant/components/automation/**
- homeassistant/components/backup/**
@@ -81,6 +88,7 @@ components: &components
- homeassistant/components/lovelace/**
- homeassistant/components/media_source/**
- homeassistant/components/mjpeg/**
- homeassistant/components/modbus/**
- homeassistant/components/mqtt/**
- homeassistant/components/network/**
- homeassistant/components/onboarding/**
@@ -125,6 +133,7 @@ tests: &tests
- tests/mock/**
- tests/pylint/**
- tests/scripts/**
- tests/syrupy.py
- tests/test_util/**
- tests/testing_config/**
- tests/util/**
@@ -136,7 +145,6 @@ other: &other
requirements: &requirements
- .github/workflows/**
- homeassistant/package_constraints.txt
- script/pip_check
- requirements*.txt
- pyproject.toml

View File

@@ -29,13 +29,16 @@ omit =
homeassistant/components/adguard/switch.py
homeassistant/components/ads/*
homeassistant/components/aemet/weather_update_coordinator.py
homeassistant/components/aftership/*
homeassistant/components/aftership/__init__.py
homeassistant/components/aftership/sensor.py
homeassistant/components/agent_dvr/alarm_control_panel.py
homeassistant/components/agent_dvr/camera.py
homeassistant/components/agent_dvr/helpers.py
homeassistant/components/airnow/__init__.py
homeassistant/components/airnow/coordinator.py
homeassistant/components/airnow/sensor.py
homeassistant/components/airq/__init__.py
homeassistant/components/airq/coordinator.py
homeassistant/components/airq/sensor.py
homeassistant/components/airthings/__init__.py
homeassistant/components/airthings/sensor.py
@@ -43,6 +46,7 @@ omit =
homeassistant/components/airthings_ble/sensor.py
homeassistant/components/airtouch4/__init__.py
homeassistant/components/airtouch4/climate.py
homeassistant/components/airtouch4/coordinator.py
homeassistant/components/airvisual/__init__.py
homeassistant/components/airvisual/sensor.py
homeassistant/components/airvisual_pro/__init__.py
@@ -56,6 +60,7 @@ omit =
homeassistant/components/ambiclimate/climate.py
homeassistant/components/ambient_station/__init__.py
homeassistant/components/ambient_station/binary_sensor.py
homeassistant/components/ambient_station/entity.py
homeassistant/components/ambient_station/sensor.py
homeassistant/components/amcrest/*
homeassistant/components/ampio/*
@@ -81,6 +86,7 @@ omit =
homeassistant/components/arwn/sensor.py
homeassistant/components/aseko_pool_live/__init__.py
homeassistant/components/aseko_pool_live/binary_sensor.py
homeassistant/components/aseko_pool_live/coordinator.py
homeassistant/components/aseko_pool_live/entity.py
homeassistant/components/aseko_pool_live/sensor.py
homeassistant/components/asterisk_cdr/mailbox.py
@@ -89,12 +95,15 @@ omit =
homeassistant/components/atome/*
homeassistant/components/aurora/__init__.py
homeassistant/components/aurora/binary_sensor.py
homeassistant/components/aurora/coordinator.py
homeassistant/components/aurora/entity.py
homeassistant/components/aurora/sensor.py
homeassistant/components/avea/light.py
homeassistant/components/avion/light.py
homeassistant/components/azure_devops/__init__.py
homeassistant/components/azure_devops/sensor.py
homeassistant/components/azure_service_bus/*
homeassistant/components/awair/coordinator.py
homeassistant/components/baf/__init__.py
homeassistant/components/baf/climate.py
homeassistant/components/baf/entity.py
@@ -121,7 +130,6 @@ omit =
homeassistant/components/bluetooth_tracker/*
homeassistant/components/bmw_connected_drive/__init__.py
homeassistant/components/bmw_connected_drive/binary_sensor.py
homeassistant/components/bmw_connected_drive/button.py
homeassistant/components/bmw_connected_drive/coordinator.py
homeassistant/components/bmw_connected_drive/lock.py
homeassistant/components/bmw_connected_drive/notify.py
@@ -165,12 +173,18 @@ omit =
homeassistant/components/cmus/media_player.py
homeassistant/components/coinbase/sensor.py
homeassistant/components/comed_hourly_pricing/sensor.py
homeassistant/components/comelit/__init__.py
homeassistant/components/comelit/const.py
homeassistant/components/comelit/cover.py
homeassistant/components/comelit/coordinator.py
homeassistant/components/comelit/light.py
homeassistant/components/comfoconnect/fan.py
homeassistant/components/concord232/alarm_control_panel.py
homeassistant/components/concord232/binary_sensor.py
homeassistant/components/control4/__init__.py
homeassistant/components/control4/director_utils.py
homeassistant/components/control4/light.py
homeassistant/components/coolmaster/coordinator.py
homeassistant/components/cppm_tracker/device_tracker.py
homeassistant/components/crownstone/__init__.py
homeassistant/components/crownstone/devices.py
@@ -180,7 +194,6 @@ omit =
homeassistant/components/crownstone/listeners.py
homeassistant/components/cups/sensor.py
homeassistant/components/currencylayer/sensor.py
homeassistant/components/daikin/__init__.py
homeassistant/components/daikin/climate.py
homeassistant/components/daikin/sensor.py
homeassistant/components/daikin/switch.py
@@ -197,21 +210,25 @@ omit =
homeassistant/components/denonavr/__init__.py
homeassistant/components/denonavr/media_player.py
homeassistant/components/denonavr/receiver.py
homeassistant/components/devolo_home_control/switch.py
homeassistant/components/digital_ocean/*
homeassistant/components/discogs/sensor.py
homeassistant/components/discord/__init__.py
homeassistant/components/discord/notify.py
homeassistant/components/discovergy/__init__.py
homeassistant/components/discovergy/sensor.py
homeassistant/components/discovergy/coordinator.py
homeassistant/components/dlib_face_detect/image_processing.py
homeassistant/components/dlib_face_identify/image_processing.py
homeassistant/components/dlink/data.py
homeassistant/components/dominos/*
homeassistant/components/doods/*
homeassistant/components/doorbird/__init__.py
homeassistant/components/doorbird/button.py
homeassistant/components/doorbird/camera.py
homeassistant/components/doorbird/button.py
homeassistant/components/doorbird/device.py
homeassistant/components/doorbird/entity.py
homeassistant/components/doorbird/util.py
homeassistant/components/doorbird/view.py
homeassistant/components/dormakaba_dkey/__init__.py
homeassistant/components/dormakaba_dkey/binary_sensor.py
homeassistant/components/dormakaba_dkey/entity.py
@@ -226,6 +243,15 @@ omit =
homeassistant/components/dublin_bus_transport/sensor.py
homeassistant/components/dunehd/__init__.py
homeassistant/components/dunehd/media_player.py
homeassistant/components/duotecno/__init__.py
homeassistant/components/duotecno/entity.py
homeassistant/components/duotecno/switch.py
homeassistant/components/duotecno/cover.py
homeassistant/components/duotecno/light.py
homeassistant/components/duotecno/climate.py
homeassistant/components/duotecno/binary_sensor.py
homeassistant/components/dwd_weather_warnings/const.py
homeassistant/components/dwd_weather_warnings/coordinator.py
homeassistant/components/dwd_weather_warnings/sensor.py
homeassistant/components/dweet/*
homeassistant/components/ebox/sensor.py
@@ -237,6 +263,12 @@ omit =
homeassistant/components/ecobee/notify.py
homeassistant/components/ecobee/sensor.py
homeassistant/components/ecobee/weather.py
homeassistant/components/ecoforest/__init__.py
homeassistant/components/ecoforest/coordinator.py
homeassistant/components/ecoforest/entity.py
homeassistant/components/ecoforest/number.py
homeassistant/components/ecoforest/sensor.py
homeassistant/components/ecoforest/switch.py
homeassistant/components/econet/__init__.py
homeassistant/components/econet/binary_sensor.py
homeassistant/components/econet/climate.py
@@ -249,11 +281,17 @@ omit =
homeassistant/components/ecowitt/sensor.py
homeassistant/components/eddystone_temperature/sensor.py
homeassistant/components/edimax/switch.py
homeassistant/components/edl21/*
homeassistant/components/edl21/__init__.py
homeassistant/components/edl21/sensor.py
homeassistant/components/egardia/*
homeassistant/components/eight_sleep/__init__.py
homeassistant/components/eight_sleep/binary_sensor.py
homeassistant/components/eight_sleep/sensor.py
homeassistant/components/electric_kiwi/__init__.py
homeassistant/components/electric_kiwi/api.py
homeassistant/components/electric_kiwi/oauth2.py
homeassistant/components/electric_kiwi/coordinator.py
homeassistant/components/electric_kiwi/select.py
homeassistant/components/eliqonline/sensor.py
homeassistant/components/elkm1/__init__.py
homeassistant/components/elkm1/alarm_control_panel.py
@@ -266,7 +304,8 @@ omit =
homeassistant/components/elmax/alarm_control_panel.py
homeassistant/components/elmax/binary_sensor.py
homeassistant/components/elmax/common.py
homeassistant/components/elmax/binary_sensor.py
homeassistant/components/elmax/const.py
homeassistant/components/elmax/cover.py
homeassistant/components/elmax/switch.py
homeassistant/components/elv/*
homeassistant/components/emby/media_player.py
@@ -283,7 +322,13 @@ omit =
homeassistant/components/enocean/sensor.py
homeassistant/components/enocean/switch.py
homeassistant/components/enphase_envoy/__init__.py
homeassistant/components/enphase_envoy/binary_sensor.py
homeassistant/components/enphase_envoy/coordinator.py
homeassistant/components/enphase_envoy/entity.py
homeassistant/components/enphase_envoy/number.py
homeassistant/components/enphase_envoy/select.py
homeassistant/components/enphase_envoy/sensor.py
homeassistant/components/enphase_envoy/switch.py
homeassistant/components/entur_public_transport/*
homeassistant/components/environment_canada/__init__.py
homeassistant/components/environment_canada/camera.py
@@ -298,23 +343,8 @@ omit =
homeassistant/components/escea/__init__.py
homeassistant/components/escea/climate.py
homeassistant/components/escea/discovery.py
homeassistant/components/esphome/__init__.py
homeassistant/components/esphome/binary_sensor.py
homeassistant/components/esphome/bluetooth/*
homeassistant/components/esphome/button.py
homeassistant/components/esphome/camera.py
homeassistant/components/esphome/climate.py
homeassistant/components/esphome/cover.py
homeassistant/components/esphome/domain_data.py
homeassistant/components/esphome/entry_data.py
homeassistant/components/esphome/fan.py
homeassistant/components/esphome/light.py
homeassistant/components/esphome/lock.py
homeassistant/components/esphome/media_player.py
homeassistant/components/esphome/number.py
homeassistant/components/esphome/select.py
homeassistant/components/esphome/sensor.py
homeassistant/components/esphome/switch.py
homeassistant/components/esphome/manager.py
homeassistant/components/etherscan/sensor.py
homeassistant/components/eufy/*
homeassistant/components/eufylife_ble/__init__.py
@@ -322,14 +352,23 @@ omit =
homeassistant/components/everlights/light.py
homeassistant/components/evohome/*
homeassistant/components/ezviz/__init__.py
homeassistant/components/ezviz/alarm_control_panel.py
homeassistant/components/ezviz/binary_sensor.py
homeassistant/components/ezviz/button.py
homeassistant/components/ezviz/camera.py
homeassistant/components/ezviz/image.py
homeassistant/components/ezviz/light.py
homeassistant/components/ezviz/coordinator.py
homeassistant/components/ezviz/number.py
homeassistant/components/ezviz/entity.py
homeassistant/components/ezviz/select.py
homeassistant/components/ezviz/sensor.py
homeassistant/components/ezviz/siren.py
homeassistant/components/ezviz/switch.py
homeassistant/components/ezviz/update.py
homeassistant/components/faa_delays/__init__.py
homeassistant/components/faa_delays/binary_sensor.py
homeassistant/components/faa_delays/coordinator.py
homeassistant/components/familyhub/camera.py
homeassistant/components/fastdotcom/*
homeassistant/components/ffmpeg/camera.py
@@ -354,13 +393,15 @@ omit =
homeassistant/components/firmata/pin.py
homeassistant/components/firmata/sensor.py
homeassistant/components/firmata/switch.py
homeassistant/components/fitbit/*
homeassistant/components/fivem/__init__.py
homeassistant/components/fivem/binary_sensor.py
homeassistant/components/fivem/coordinator.py
homeassistant/components/fivem/entity.py
homeassistant/components/fivem/sensor.py
homeassistant/components/fixer/sensor.py
homeassistant/components/fjaraskupan/__init__.py
homeassistant/components/fjaraskupan/binary_sensor.py
homeassistant/components/fjaraskupan/coordinator.py
homeassistant/components/fjaraskupan/fan.py
homeassistant/components/fjaraskupan/light.py
homeassistant/components/fjaraskupan/number.py
@@ -384,8 +425,10 @@ omit =
homeassistant/components/foscam/camera.py
homeassistant/components/foursquare/*
homeassistant/components/free_mobile/notify.py
homeassistant/components/freebox/camera.py
homeassistant/components/freebox/device_tracker.py
homeassistant/components/freebox/sensor.py
homeassistant/components/freebox/home_base.py
homeassistant/components/freebox/router.py
homeassistant/components/freebox/switch.py
homeassistant/components/fritz/common.py
homeassistant/components/fritz/device_tracker.py
@@ -394,12 +437,14 @@ omit =
homeassistant/components/fritzbox_callmonitor/__init__.py
homeassistant/components/fritzbox_callmonitor/base.py
homeassistant/components/fritzbox_callmonitor/sensor.py
homeassistant/components/frontier_silicon/const.py
homeassistant/components/frontier_silicon/__init__.py
homeassistant/components/frontier_silicon/browse_media.py
homeassistant/components/frontier_silicon/media_player.py
homeassistant/components/futurenow/light.py
homeassistant/components/garadget/cover.py
homeassistant/components/garages_amsterdam/__init__.py
homeassistant/components/garages_amsterdam/binary_sensor.py
homeassistant/components/garages_amsterdam/entity.py
homeassistant/components/garages_amsterdam/sensor.py
homeassistant/components/gc100/*
homeassistant/components/geniushub/*
@@ -411,7 +456,6 @@ omit =
homeassistant/components/gitlab_ci/sensor.py
homeassistant/components/gitter/sensor.py
homeassistant/components/glances/sensor.py
homeassistant/components/goalfeed/*
homeassistant/components/goodwe/__init__.py
homeassistant/components/goodwe/button.py
homeassistant/components/goodwe/coordinator.py
@@ -477,8 +521,6 @@ omit =
homeassistant/components/homematic/sensor.py
homeassistant/components/homematic/switch.py
homeassistant/components/homeworks/*
homeassistant/components/honeywell/__init__.py
homeassistant/components/honeywell/climate.py
homeassistant/components/horizon/media_player.py
homeassistant/components/hp_ilo/sensor.py
homeassistant/components/huawei_lte/__init__.py
@@ -499,7 +541,12 @@ omit =
homeassistant/components/hvv_departures/__init__.py
homeassistant/components/hvv_departures/binary_sensor.py
homeassistant/components/hvv_departures/sensor.py
homeassistant/components/hydrawise/*
homeassistant/components/hydrawise/__init__.py
homeassistant/components/hydrawise/binary_sensor.py
homeassistant/components/hydrawise/const.py
homeassistant/components/hydrawise/coordinator.py
homeassistant/components/hydrawise/sensor.py
homeassistant/components/hydrawise/switch.py
homeassistant/components/ialarm/alarm_control_panel.py
homeassistant/components/iammeter/sensor.py
homeassistant/components/iaqualink/binary_sensor.py
@@ -516,9 +563,6 @@ omit =
homeassistant/components/ifttt/alarm_control_panel.py
homeassistant/components/iglo/light.py
homeassistant/components/ihc/*
homeassistant/components/imap/__init__.py
homeassistant/components/imap/coordinator.py
homeassistant/components/imap/sensor.py
homeassistant/components/imap_email_content/sensor.py
homeassistant/components/incomfort/*
homeassistant/components/insteon/binary_sensor.py
@@ -596,6 +640,7 @@ omit =
homeassistant/components/keymitt_ble/entity.py
homeassistant/components/keymitt_ble/switch.py
homeassistant/components/keymitt_ble/coordinator.py
homeassistant/components/kitchen_sink/weather.py
homeassistant/components/kiwi/lock.py
homeassistant/components/kodi/__init__.py
homeassistant/components/kodi/browse_media.py
@@ -612,7 +657,6 @@ omit =
homeassistant/components/kwb/sensor.py
homeassistant/components/lacrosse/sensor.py
homeassistant/components/lannouncer/notify.py
homeassistant/components/lastfm/sensor.py
homeassistant/components/launch_library/__init__.py
homeassistant/components/launch_library/sensor.py
homeassistant/components/lcn/climate.py
@@ -627,10 +671,8 @@ omit =
homeassistant/components/lg_netcast/media_player.py
homeassistant/components/lg_soundbar/__init__.py
homeassistant/components/lg_soundbar/media_player.py
homeassistant/components/lidarr/__init__.py
homeassistant/components/lidarr/coordinator.py
homeassistant/components/lidarr/sensor.py
homeassistant/components/life360/__init__.py
homeassistant/components/life360/button.py
homeassistant/components/life360/coordinator.py
homeassistant/components/life360/device_tracker.py
homeassistant/components/lightwave/*
@@ -640,8 +682,10 @@ omit =
homeassistant/components/linux_battery/sensor.py
homeassistant/components/lirc/*
homeassistant/components/livisi/__init__.py
homeassistant/components/livisi/binary_sensor.py
homeassistant/components/livisi/climate.py
homeassistant/components/livisi/coordinator.py
homeassistant/components/livisi/entity.py
homeassistant/components/livisi/switch.py
homeassistant/components/llamalab_automate/notify.py
homeassistant/components/logi_circle/__init__.py
@@ -655,6 +699,7 @@ omit =
homeassistant/components/lookin/light.py
homeassistant/components/lookin/media_player.py
homeassistant/components/lookin/sensor.py
homeassistant/components/loqed/sensor.py
homeassistant/components/luci/device_tracker.py
homeassistant/components/luftdaten/sensor.py
homeassistant/components/lupusec/*
@@ -674,15 +719,16 @@ omit =
homeassistant/components/lyric/api.py
homeassistant/components/lyric/climate.py
homeassistant/components/lyric/sensor.py
homeassistant/components/magicseaweed/sensor.py
homeassistant/components/mailgun/notify.py
homeassistant/components/map/*
homeassistant/components/mastodon/notify.py
homeassistant/components/matrix/*
homeassistant/components/matrix/__init__.py
homeassistant/components/matrix/notify.py
homeassistant/components/matter/__init__.py
homeassistant/components/meater/__init__.py
homeassistant/components/meater/sensor.py
homeassistant/components/media_extractor/*
homeassistant/components/medcom_ble/__init__.py
homeassistant/components/medcom_ble/sensor.py
homeassistant/components/mediaroom/media_player.py
homeassistant/components/melcloud/__init__.py
homeassistant/components/melcloud/climate.py
@@ -700,16 +746,16 @@ omit =
homeassistant/components/meteoclimatic/__init__.py
homeassistant/components/meteoclimatic/sensor.py
homeassistant/components/meteoclimatic/weather.py
homeassistant/components/metoffice/sensor.py
homeassistant/components/metoffice/weather.py
homeassistant/components/microsoft/tts.py
homeassistant/components/miflora/sensor.py
homeassistant/components/mikrotik/hub.py
homeassistant/components/mill/climate.py
homeassistant/components/mill/sensor.py
homeassistant/components/minecraft_server/__init__.py
homeassistant/components/minecraft_server/binary_sensor.py
homeassistant/components/minecraft_server/coordinator.py
homeassistant/components/minecraft_server/entity.py
homeassistant/components/minecraft_server/sensor.py
homeassistant/components/minio/minio_helper.py
homeassistant/components/mitemp_bt/sensor.py
homeassistant/components/mjpeg/camera.py
homeassistant/components/mjpeg/util.py
homeassistant/components/mochad/__init__.py
@@ -722,7 +768,9 @@ omit =
homeassistant/components/moehlenhoff_alpha2/climate.py
homeassistant/components/moehlenhoff_alpha2/sensor.py
homeassistant/components/motion_blinds/__init__.py
homeassistant/components/motion_blinds/coordinator.py
homeassistant/components/motion_blinds/cover.py
homeassistant/components/motion_blinds/entity.py
homeassistant/components/motion_blinds/sensor.py
homeassistant/components/mpd/media_player.py
homeassistant/components/mqtt_room/sensor.py
@@ -755,16 +803,18 @@ omit =
homeassistant/components/neato/__init__.py
homeassistant/components/neato/api.py
homeassistant/components/neato/camera.py
homeassistant/components/neato/entity.py
homeassistant/components/neato/hub.py
homeassistant/components/neato/sensor.py
homeassistant/components/neato/switch.py
homeassistant/components/neato/vacuum.py
homeassistant/components/neato/button.py
homeassistant/components/nederlandse_spoorwegen/sensor.py
homeassistant/components/nest/legacy/*
homeassistant/components/netdata/sensor.py
homeassistant/components/netgear/__init__.py
homeassistant/components/netgear/button.py
homeassistant/components/netgear/device_tracker.py
homeassistant/components/netgear/entity.py
homeassistant/components/netgear/router.py
homeassistant/components/netgear/sensor.py
homeassistant/components/netgear/switch.py
@@ -775,7 +825,11 @@ omit =
homeassistant/components/nexia/climate.py
homeassistant/components/nexia/entity.py
homeassistant/components/nexia/switch.py
homeassistant/components/nextcloud/*
homeassistant/components/nextcloud/__init__.py
homeassistant/components/nextcloud/binary_sensor.py
homeassistant/components/nextcloud/coordinator.py
homeassistant/components/nextcloud/entity.py
homeassistant/components/nextcloud/sensor.py
homeassistant/components/nfandroidtv/__init__.py
homeassistant/components/nfandroidtv/notify.py
homeassistant/components/nibe_heatpump/__init__.py
@@ -785,6 +839,7 @@ omit =
homeassistant/components/nibe_heatpump/select.py
homeassistant/components/nibe_heatpump/sensor.py
homeassistant/components/nibe_heatpump/switch.py
homeassistant/components/nibe_heatpump/water_heater.py
homeassistant/components/niko_home_control/light.py
homeassistant/components/nilu/air_quality.py
homeassistant/components/nissan_leaf/*
@@ -807,9 +862,12 @@ omit =
homeassistant/components/nuki/sensor.py
homeassistant/components/nx584/alarm_control_panel.py
homeassistant/components/oasa_telematics/sensor.py
homeassistant/components/obihai/__init__.py
homeassistant/components/obihai/button.py
homeassistant/components/obihai/connectivity.py
homeassistant/components/obihai/sensor.py
homeassistant/components/octoprint/__init__.py
homeassistant/components/octoprint/coordinator.py
homeassistant/components/oem/climate.py
homeassistant/components/ohmconnect/sensor.py
homeassistant/components/ombi/*
@@ -828,6 +886,7 @@ omit =
homeassistant/components/onvif/event.py
homeassistant/components/onvif/parsers.py
homeassistant/components/onvif/sensor.py
homeassistant/components/onvif/util.py
homeassistant/components/open_meteo/weather.py
homeassistant/components/opencv/*
homeassistant/components/openevse/sensor.py
@@ -839,11 +898,11 @@ omit =
homeassistant/components/opengarage/cover.py
homeassistant/components/opengarage/entity.py
homeassistant/components/opengarage/sensor.py
homeassistant/components/openhardwaremonitor/sensor.py
homeassistant/components/openhome/__init__.py
homeassistant/components/openhome/const.py
homeassistant/components/openhome/media_player.py
homeassistant/components/opensensemap/air_quality.py
homeassistant/components/opensky/sensor.py
homeassistant/components/opentherm_gw/__init__.py
homeassistant/components/opentherm_gw/binary_sensor.py
homeassistant/components/opentherm_gw/climate.py
@@ -855,6 +914,9 @@ omit =
homeassistant/components/openweathermap/sensor.py
homeassistant/components/openweathermap/weather_update_coordinator.py
homeassistant/components/opnsense/__init__.py
homeassistant/components/opower/__init__.py
homeassistant/components/opower/coordinator.py
homeassistant/components/opower/sensor.py
homeassistant/components/opnsense/device_tracker.py
homeassistant/components/opple/light.py
homeassistant/components/oru/*
@@ -918,6 +980,8 @@ omit =
homeassistant/components/point/sensor.py
homeassistant/components/poolsense/__init__.py
homeassistant/components/poolsense/binary_sensor.py
homeassistant/components/poolsense/coordinator.py
homeassistant/components/poolsense/entity.py
homeassistant/components/poolsense/sensor.py
homeassistant/components/powerwall/__init__.py
homeassistant/components/progettihwsw/__init__.py
@@ -935,7 +999,10 @@ omit =
homeassistant/components/pushover/notify.py
homeassistant/components/pushsafer/notify.py
homeassistant/components/pyload/sensor.py
homeassistant/components/qbittorrent/__init__.py
homeassistant/components/qbittorrent/sensor.py
homeassistant/components/qnap/__init__.py
homeassistant/components/qnap/coordinator.py
homeassistant/components/qnap/sensor.py
homeassistant/components/qrcode/image_processing.py
homeassistant/components/quantum_gateway/device_tracker.py
@@ -963,6 +1030,15 @@ omit =
homeassistant/components/rainmachine/switch.py
homeassistant/components/rainmachine/update.py
homeassistant/components/rainmachine/util.py
homeassistant/components/renson/__init__.py
homeassistant/components/renson/const.py
homeassistant/components/renson/coordinator.py
homeassistant/components/renson/entity.py
homeassistant/components/renson/sensor.py
homeassistant/components/renson/button.py
homeassistant/components/renson/fan.py
homeassistant/components/renson/binary_sensor.py
homeassistant/components/renson/number.py
homeassistant/components/raspyrfm/*
homeassistant/components/recollect_waste/sensor.py
homeassistant/components/recorder/repack.py
@@ -971,22 +1047,29 @@ omit =
homeassistant/components/rejseplanen/sensor.py
homeassistant/components/remember_the_milk/__init__.py
homeassistant/components/remote_rpi_gpio/*
homeassistant/components/reolink/__init__.py
homeassistant/components/reolink/binary_sensor.py
homeassistant/components/reolink/button.py
homeassistant/components/reolink/camera.py
homeassistant/components/reolink/entity.py
homeassistant/components/reolink/host.py
homeassistant/components/reolink/light.py
homeassistant/components/reolink/number.py
homeassistant/components/reolink/select.py
homeassistant/components/reolink/sensor.py
homeassistant/components/reolink/siren.py
homeassistant/components/reolink/switch.py
homeassistant/components/reolink/update.py
homeassistant/components/repetier/__init__.py
homeassistant/components/repetier/sensor.py
homeassistant/components/rest/notify.py
homeassistant/components/rest/switch.py
homeassistant/components/ridwell/__init__.py
homeassistant/components/ridwell/calendar.py
homeassistant/components/ridwell/coordinator.py
homeassistant/components/ridwell/switch.py
homeassistant/components/ring/camera.py
homeassistant/components/ripple/sensor.py
homeassistant/components/roborock/coordinator.py
homeassistant/components/rocketchat/notify.py
homeassistant/components/roomba/__init__.py
homeassistant/components/roomba/binary_sensor.py
@@ -1016,9 +1099,10 @@ omit =
homeassistant/components/saj/sensor.py
homeassistant/components/satel_integra/*
homeassistant/components/schluter/*
homeassistant/components/screenlogic/__init__.py
homeassistant/components/screenlogic/binary_sensor.py
homeassistant/components/screenlogic/climate.py
homeassistant/components/screenlogic/coordinator.py
homeassistant/components/screenlogic/const.py
homeassistant/components/screenlogic/entity.py
homeassistant/components/screenlogic/light.py
homeassistant/components/screenlogic/number.py
@@ -1030,12 +1114,6 @@ omit =
homeassistant/components/sense/__init__.py
homeassistant/components/sense/binary_sensor.py
homeassistant/components/sense/sensor.py
homeassistant/components/senseme/__init__.py
homeassistant/components/senseme/discovery.py
homeassistant/components/senseme/entity.py
homeassistant/components/senseme/fan.py
homeassistant/components/senseme/light.py
homeassistant/components/senseme/switch.py
homeassistant/components/senz/__init__.py
homeassistant/components/senz/api.py
homeassistant/components/senz/climate.py
@@ -1088,11 +1166,14 @@ omit =
homeassistant/components/smarty/*
homeassistant/components/sms/__init__.py
homeassistant/components/sms/const.py
homeassistant/components/sms/coordinator.py
homeassistant/components/sms/gateway.py
homeassistant/components/sms/notify.py
homeassistant/components/sms/sensor.py
homeassistant/components/smtp/notify.py
homeassistant/components/snapcast/*
homeassistant/components/snapcast/__init__.py
homeassistant/components/snapcast/media_player.py
homeassistant/components/snapcast/server.py
homeassistant/components/snmp/device_tracker.py
homeassistant/components/snmp/sensor.py
homeassistant/components/snmp/switch.py
@@ -1102,6 +1183,7 @@ omit =
homeassistant/components/solaredge_local/sensor.py
homeassistant/components/solarlog/__init__.py
homeassistant/components/solarlog/sensor.py
homeassistant/components/solarlog/coordinator.py
homeassistant/components/solax/__init__.py
homeassistant/components/solax/sensor.py
homeassistant/components/soma/__init__.py
@@ -1138,7 +1220,13 @@ omit =
homeassistant/components/squeezebox/__init__.py
homeassistant/components/squeezebox/browse_media.py
homeassistant/components/squeezebox/media_player.py
homeassistant/components/starlink/__init__.py
homeassistant/components/starlink/binary_sensor.py
homeassistant/components/starlink/button.py
homeassistant/components/starlink/coordinator.py
homeassistant/components/starlink/device_tracker.py
homeassistant/components/starlink/sensor.py
homeassistant/components/starlink/switch.py
homeassistant/components/starline/__init__.py
homeassistant/components/starline/account.py
homeassistant/components/starline/binary_sensor.py
@@ -1188,6 +1276,9 @@ omit =
homeassistant/components/switchbot/sensor.py
homeassistant/components/switchbot/switch.py
homeassistant/components/switchbot/lock.py
homeassistant/components/switchbot_cloud/coordinator.py
homeassistant/components/switchbot_cloud/entity.py
homeassistant/components/switchbot_cloud/switch.py
homeassistant/components/switchmate/switch.py
homeassistant/components/syncthing/__init__.py
homeassistant/components/syncthing/sensor.py
@@ -1210,6 +1301,7 @@ omit =
homeassistant/components/system_bridge/__init__.py
homeassistant/components/system_bridge/binary_sensor.py
homeassistant/components/system_bridge/coordinator.py
homeassistant/components/system_bridge/notify.py
homeassistant/components/system_bridge/sensor.py
homeassistant/components/systemmonitor/sensor.py
homeassistant/components/tado/__init__.py
@@ -1221,6 +1313,8 @@ omit =
homeassistant/components/tank_utility/sensor.py
homeassistant/components/tankerkoenig/__init__.py
homeassistant/components/tankerkoenig/binary_sensor.py
homeassistant/components/tankerkoenig/coordinator.py
homeassistant/components/tankerkoenig/entity.py
homeassistant/components/tankerkoenig/sensor.py
homeassistant/components/tapsaff/binary_sensor.py
homeassistant/components/tautulli/__init__.py
@@ -1277,13 +1371,12 @@ omit =
homeassistant/components/toon/switch.py
homeassistant/components/torque/sensor.py
homeassistant/components/totalconnect/__init__.py
homeassistant/components/totalconnect/binary_sensor.py
homeassistant/components/touchline/climate.py
homeassistant/components/tplink_lte/*
homeassistant/components/tplink_omada/__init__.py
homeassistant/components/tplink_omada/coordinator.py
homeassistant/components/tplink_omada/entity.py
homeassistant/components/tplink_omada/switch.py
homeassistant/components/tplink_omada/binary_sensor.py
homeassistant/components/tplink_omada/controller.py
homeassistant/components/tplink_omada/update.py
homeassistant/components/traccar/device_tracker.py
homeassistant/components/tractive/__init__.py
homeassistant/components/tractive/binary_sensor.py
@@ -1300,10 +1393,13 @@ omit =
homeassistant/components/tradfri/sensor.py
homeassistant/components/tradfri/switch.py
homeassistant/components/trafikverket_train/__init__.py
homeassistant/components/trafikverket_train/coordinator.py
homeassistant/components/trafikverket_train/sensor.py
homeassistant/components/trafikverket_train/util.py
homeassistant/components/trafikverket_weatherstation/__init__.py
homeassistant/components/trafikverket_weatherstation/coordinator.py
homeassistant/components/trafikverket_weatherstation/sensor.py
homeassistant/components/transmission/__init__.py
homeassistant/components/transmission/sensor.py
homeassistant/components/transmission/switch.py
homeassistant/components/travisci/sensor.py
@@ -1351,6 +1447,7 @@ omit =
homeassistant/components/velbus/entity.py
homeassistant/components/velbus/light.py
homeassistant/components/velbus/sensor.py
homeassistant/components/velbus/select.py
homeassistant/components/velbus/switch.py
homeassistant/components/velux/__init__.py
homeassistant/components/velux/cover.py
@@ -1368,8 +1465,6 @@ omit =
homeassistant/components/verisure/sensor.py
homeassistant/components/verisure/switch.py
homeassistant/components/versasense/*
homeassistant/components/vesync/__init__.py
homeassistant/components/vesync/common.py
homeassistant/components/vesync/fan.py
homeassistant/components/vesync/light.py
homeassistant/components/vesync/sensor.py
@@ -1387,6 +1482,12 @@ omit =
homeassistant/components/vlc/media_player.py
homeassistant/components/vlc_telnet/__init__.py
homeassistant/components/vlc_telnet/media_player.py
homeassistant/components/vodafone_station/__init__.py
homeassistant/components/vodafone_station/button.py
homeassistant/components/vodafone_station/const.py
homeassistant/components/vodafone_station/coordinator.py
homeassistant/components/vodafone_station/device_tracker.py
homeassistant/components/vodafone_station/sensor.py
homeassistant/components/volkszaehler/sensor.py
homeassistant/components/volumio/__init__.py
homeassistant/components/volumio/browse_media.py
@@ -1407,11 +1508,15 @@ omit =
homeassistant/components/watson_tts/tts.py
homeassistant/components/watttime/__init__.py
homeassistant/components/watttime/sensor.py
homeassistant/components/weatherflow/__init__.py
homeassistant/components/weatherflow/const.py
homeassistant/components/weatherflow/sensor.py
homeassistant/components/wiffi/__init__.py
homeassistant/components/wiffi/binary_sensor.py
homeassistant/components/wiffi/sensor.py
homeassistant/components/wiffi/wiffi_strings.py
homeassistant/components/wirelesstag/*
homeassistant/components/withings/api.py
homeassistant/components/wolflink/__init__.py
homeassistant/components/wolflink/sensor.py
homeassistant/components/worldtidesinfo/sensor.py
@@ -1425,7 +1530,6 @@ omit =
homeassistant/components/xbox/media_player.py
homeassistant/components/xbox/remote.py
homeassistant/components/xbox/sensor.py
homeassistant/components/xbox_live/sensor.py
homeassistant/components/xeoma/camera.py
homeassistant/components/xiaomi/camera.py
homeassistant/components/xiaomi_aqara/__init__.py
@@ -1457,7 +1561,6 @@ omit =
homeassistant/components/yale_smart_alarm/alarm_control_panel.py
homeassistant/components/yale_smart_alarm/binary_sensor.py
homeassistant/components/yale_smart_alarm/button.py
homeassistant/components/yale_smart_alarm/coordinator.py
homeassistant/components/yale_smart_alarm/entity.py
homeassistant/components/yale_smart_alarm/lock.py
homeassistant/components/yalexs_ble/__init__.py
@@ -1472,6 +1575,9 @@ omit =
homeassistant/components/yamaha_musiccast/select.py
homeassistant/components/yamaha_musiccast/switch.py
homeassistant/components/yandex_transport/sensor.py
homeassistant/components/yardian/__init__.py
homeassistant/components/yardian/coordinator.py
homeassistant/components/yardian/switch.py
homeassistant/components/yeelightsunflower/light.py
homeassistant/components/yi/camera.py
homeassistant/components/yolink/__init__.py
@@ -1498,8 +1604,8 @@ omit =
homeassistant/components/zeversolar/coordinator.py
homeassistant/components/zeversolar/entity.py
homeassistant/components/zeversolar/sensor.py
homeassistant/components/zha/api.py
homeassistant/components/zha/core/channels/*
homeassistant/components/zha/websocket_api.py
homeassistant/components/zha/core/cluster_handlers/*
homeassistant/components/zha/core/device.py
homeassistant/components/zha/core/gateway.py
homeassistant/components/zha/core/helpers.py
@@ -1520,6 +1626,8 @@ omit =
homeassistant/components/zwave_me/sensor.py
homeassistant/components/zwave_me/siren.py
homeassistant/components/zwave_me/switch.py
homeassistant/components/electrasmart/climate.py
homeassistant/components/electrasmart/__init__.py
[report]
# Regexes for lines to exclude from consideration

View File

@@ -7,43 +7,46 @@
"containerEnv": { "DEVCONTAINER": "1" },
"appPort": ["8123:8123"],
"runArgs": ["-e", "GIT_EDITOR=code --wait"],
"extensions": [
"ms-python.vscode-pylance",
"visualstudioexptteam.vscodeintellicode",
"redhat.vscode-yaml",
"esbenp.prettier-vscode",
"GitHub.vscode-pull-request-github"
],
// Please keep this file in sync with settings in home-assistant/.vscode/settings.default.json
"settings": {
"python.pythonPath": "/usr/local/bin/python",
"python.linting.enabled": true,
"python.linting.pylintEnabled": true,
"python.formatting.blackPath": "/usr/local/bin/black",
"python.linting.flake8Path": "/usr/local/bin/flake8",
"python.linting.pycodestylePath": "/usr/local/bin/pycodestyle",
"python.linting.pydocstylePath": "/usr/local/bin/pydocstyle",
"python.linting.mypyPath": "/usr/local/bin/mypy",
"python.linting.pylintPath": "/usr/local/bin/pylint",
"python.formatting.provider": "black",
"python.testing.pytestArgs": ["--no-cov"],
"editor.formatOnPaste": false,
"editor.formatOnSave": true,
"editor.formatOnType": true,
"files.trimTrailingWhitespace": true,
"terminal.integrated.profiles.linux": {
"zsh": {
"path": "/usr/bin/zsh"
"customizations": {
"vscode": {
"extensions": [
"ms-python.vscode-pylance",
"visualstudioexptteam.vscodeintellicode",
"redhat.vscode-yaml",
"esbenp.prettier-vscode",
"GitHub.vscode-pull-request-github"
],
// Please keep this file in sync with settings in home-assistant/.vscode/settings.default.json
"settings": {
"python.pythonPath": "/usr/local/bin/python",
"python.linting.enabled": true,
"python.linting.pylintEnabled": true,
"python.formatting.blackPath": "/usr/local/bin/black",
"python.linting.pycodestylePath": "/usr/local/bin/pycodestyle",
"python.linting.pydocstylePath": "/usr/local/bin/pydocstyle",
"python.linting.mypyPath": "/usr/local/bin/mypy",
"python.linting.pylintPath": "/usr/local/bin/pylint",
"python.formatting.provider": "black",
"python.testing.pytestArgs": ["--no-cov"],
"editor.formatOnPaste": false,
"editor.formatOnSave": true,
"editor.formatOnType": true,
"files.trimTrailingWhitespace": true,
"terminal.integrated.profiles.linux": {
"zsh": {
"path": "/usr/bin/zsh"
}
},
"terminal.integrated.defaultProfile.linux": "zsh",
"yaml.customTags": [
"!input scalar",
"!secret scalar",
"!include_dir_named scalar",
"!include_dir_list scalar",
"!include_dir_merge_list scalar",
"!include_dir_merge_named scalar"
]
}
},
"terminal.integrated.defaultProfile.linux": "zsh",
"yaml.customTags": [
"!input scalar",
"!secret scalar",
"!include_dir_named scalar",
"!include_dir_list scalar",
"!include_dir_merge_list scalar",
"!include_dir_merge_named scalar"
]
}
}
}

1
.gitattributes vendored
View File

@@ -8,5 +8,6 @@
*.png binary
*.zip binary
*.mp3 binary
*.pcm binary
Dockerfile.dev linguist-language=Dockerfile

View File

@@ -31,9 +31,9 @@ body:
label: What version of Home Assistant Core has the issue?
placeholder: core-
description: >
Can be found in: [Settings -> About](https://my.home-assistant.io/redirect/info/).
Can be found in: [Settings ⇒ System ⇒ Repairs ⇒ Three Dots in Upper Right ⇒ System information](https://my.home-assistant.io/redirect/system_health/).
[![Open your Home Assistant instance and show your Home Assistant version information.](https://my.home-assistant.io/badges/info.svg)](https://my.home-assistant.io/redirect/info/)
[![Open your Home Assistant instance and show the system information.](https://my.home-assistant.io/badges/system_health.svg)](https://my.home-assistant.io/redirect/system_health/)
- type: input
attributes:
label: What was the last working version of Home Assistant Core?
@@ -46,9 +46,9 @@ body:
attributes:
label: What type of installation are you running?
description: >
Can be found in: [Settings -> System-> Repairs -> Three Dots in Upper Right -> System information](https://my.home-assistant.io/redirect/system_health/).
Can be found in: [Settings System Repairs Three Dots in Upper Right System information](https://my.home-assistant.io/redirect/system_health/).
[![Open your Home Assistant instance and show health information about your system.](https://my.home-assistant.io/badges/system_health.svg)](https://my.home-assistant.io/redirect/system_health/)
[![Open your Home Assistant instance and show the system information.](https://my.home-assistant.io/badges/system_health.svg)](https://my.home-assistant.io/redirect/system_health/)
options:
- Home Assistant OS
- Home Assistant Container
@@ -59,15 +59,15 @@ body:
attributes:
label: Integration causing the issue
description: >
The name of the integration. For example: Automation, Philips Hue
The name of the integration, for example Automation or Philips Hue.
- type: input
id: integration_link
attributes:
label: Link to integration documentation on our website
placeholder: "https://www.home-assistant.io/integrations/..."
description: |
Providing a link [to the documentation][docs] helps us categorize the
issue, while also providing a useful reference for others.
Providing a link [to the documentation][docs] helps us categorize the issue and might speed up the
investigation by automatically informing a contributor, while also providing a useful reference for others.
[docs]: https://www.home-assistant.io/integrations

View File

@@ -1,6 +1,6 @@
blank_issues_enabled: false
contact_links:
- name: Report a bug with the UI, Frontend or Lovelace
- name: Report a bug with the UI, Frontend or Dashboards
url: https://github.com/home-assistant/frontend/issues
about: This is the issue tracker for our backend. Please report issues with the UI in the frontend repository.
- name: Report incorrect or missing information on our website

View File

@@ -59,6 +59,7 @@
- [ ] Local tests pass. **Your PR cannot be merged unless tests pass**
- [ ] There is no commented out code in this PR.
- [ ] I have followed the [development checklist][dev-checklist]
- [ ] I have followed the [perfect PR recommendations][perfect-pr]
- [ ] The code has been formatted using Black (`black --fast homeassistant tests`)
- [ ] Tests have been added to verify that the new code works.
@@ -103,7 +104,8 @@ To help with the load of incoming pull requests:
Below, some useful links you could explore:
-->
[dev-checklist]: https://developers.home-assistant.io/docs/en/development_checklist.html
[manifest-docs]: https://developers.home-assistant.io/docs/en/creating_integration_manifest.html
[quality-scale]: https://developers.home-assistant.io/docs/en/next/integration_quality_scale_index.html
[dev-checklist]: https://developers.home-assistant.io/docs/development_checklist/
[manifest-docs]: https://developers.home-assistant.io/docs/creating_integration_manifest/
[quality-scale]: https://developers.home-assistant.io/docs/integration_quality_scale_index/
[docs-repository]: https://github.com/home-assistant/home-assistant.io
[perfect-pr]: https://developers.home-assistant.io/docs/review-process/#creating-the-perfect-pr

View File

@@ -10,7 +10,7 @@ on:
env:
BUILD_TYPE: core
DEFAULT_PYTHON: "3.10"
DEFAULT_PYTHON: "3.11"
jobs:
init:
@@ -24,12 +24,12 @@ jobs:
publish: ${{ steps.version.outputs.publish }}
steps:
- name: Checkout the repository
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
with:
fetch-depth: 0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -48,29 +48,18 @@ jobs:
with:
ignore-dev: true
- name: Generate meta info
shell: bash
run: |
echo "${{ github.sha }};${{ github.ref }};${{ github.event_name }};${{ github.actor }}" > OFFICIAL_IMAGE
- name: Signing meta info file
uses: home-assistant/actions/helpers/codenotary@master
with:
source: file://${{ github.workspace }}/OFFICIAL_IMAGE
asset: OFFICIAL_IMAGE-${{ steps.version.outputs.version }}
token: ${{ secrets.CAS_TOKEN }}
build_python:
name: Build PyPi package
needs: init
environment: ${{ needs.init.outputs.channel }}
needs: ["init", "build_base"]
runs-on: ubuntu-latest
if: github.repository_owner == 'home-assistant' && needs.init.outputs.publish == 'true'
steps:
- name: Checkout the repository
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -100,12 +89,16 @@ jobs:
if: github.repository_owner == 'home-assistant'
needs: init
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
id-token: write
strategy:
matrix:
arch: ${{ fromJson(needs.init.outputs.architectures) }}
steps:
- name: Checkout the repository
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Download nightly wheels of frontend
if: needs.init.outputs.channel == 'dev'
@@ -123,7 +116,7 @@ jobs:
uses: dawidd6/action-download-artifact@v2
with:
github_token: ${{secrets.GITHUB_TOKEN}}
repo: home-assistant/intents
repo: home-assistant/intents-package
branch: main
workflow: nightly.yaml
workflow_conclusion: success
@@ -131,7 +124,7 @@ jobs:
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
if: needs.init.outputs.channel == 'dev'
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -140,7 +133,7 @@ jobs:
shell: bash
run: |
python3 -m pip install packaging tomli
python3 -m pip install --use-deprecated=legacy-resolver .
python3 -m pip install .
version="$(python3 script/version_bump.py nightly)"
if [[ "$(ls home_assistant_frontend*.whl)" =~ ^home_assistant_frontend-(.*)-py3-none-any.whl$ ]]; then
@@ -174,6 +167,18 @@ jobs:
python -m script.gen_requirements_all
fi
- name: Adjustments for armhf
if: matrix.arch == 'armhf'
run: |
# Pandas has issues building on armhf, it is expected they
# will drop the platform in the near future (they consider it
# "flimsy" on 386). The following packages depend on pandas,
# so we comment them out.
sed -i "s|env-canada|# env-canada|g" requirements_all.txt
sed -i "s|noaa-coops|# noaa-coops|g" requirements_all.txt
sed -i "s|pyezviz|# pyezviz|g" requirements_all.txt
sed -i "s|pykrakenapi|# pykrakenapi|g" requirements_all.txt
- name: Download Translations
run: python3 -m script.translations download
env:
@@ -184,29 +189,22 @@ jobs:
run: |
echo "${{ github.sha }};${{ github.ref }};${{ github.event_name }};${{ github.actor }}" > rootfs/OFFICIAL_IMAGE
- name: Login to DockerHub
uses: docker/login-action@v2.1.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/login-action@v2.1.0
uses: docker/login-action@v3.0.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build base image
uses: home-assistant/builder@2022.11.0
uses: home-assistant/builder@2023.09.0
with:
args: |
$BUILD_ARGS \
--${{ matrix.arch }} \
--cosign \
--target /data \
--generic ${{ needs.init.outputs.version }}
env:
CAS_API_KEY: ${{ secrets.CAS_TOKEN }}
- name: Archive translations
shell: bash
@@ -224,6 +222,10 @@ jobs:
if: github.repository_owner == 'home-assistant'
needs: ["init", "build_base"]
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
id-token: write
strategy:
matrix:
machine:
@@ -232,6 +234,7 @@ jobs:
- khadas-vim3
- odroid-c2
- odroid-c4
- odroid-m1
- odroid-n2
- odroid-xu
- qemuarm
@@ -246,9 +249,10 @@ jobs:
- raspberrypi4-64
- tinker
- yellow
- green
steps:
- name: Checkout the repository
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set build additional args
run: |
@@ -261,37 +265,31 @@ jobs:
echo "BUILD_ARGS=--additional-tag stable" >> $GITHUB_ENV
fi
- name: Login to DockerHub
uses: docker/login-action@v2.1.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/login-action@v2.1.0
uses: docker/login-action@v3.0.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build base image
uses: home-assistant/builder@2022.11.0
uses: home-assistant/builder@2023.09.0
with:
args: |
$BUILD_ARGS \
--target /data/machine \
--cosign \
--machine "${{ needs.init.outputs.version }}=${{ matrix.machine }}"
env:
CAS_API_KEY: ${{ secrets.CAS_TOKEN }}
publish_ha:
name: Publish version files
environment: ${{ needs.init.outputs.channel }}
if: github.repository_owner == 'home-assistant'
needs: ["init", "build_machine"]
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Initialize git
uses: home-assistant/actions/helpers/git-init@master
@@ -319,37 +317,36 @@ jobs:
publish_container:
name: Publish meta container for ${{ matrix.registry }}
environment: ${{ needs.init.outputs.channel }}
if: github.repository_owner == 'home-assistant'
needs: ["init", "build_base"]
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
registry:
- "ghcr.io/home-assistant"
- "homeassistant"
permissions:
contents: read
packages: write
id-token: write
steps:
- name: Checkout the repository
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Install Cosign
uses: sigstore/cosign-installer@v3.1.2
with:
cosign-release: "v2.0.2"
- name: Login to DockerHub
if: matrix.registry == 'homeassistant'
uses: docker/login-action@v2.1.0
uses: docker/login-action@v3.0.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container Registry
if: matrix.registry == 'ghcr.io/home-assistant'
uses: docker/login-action@v2.1.0
uses: docker/login-action@v3.0.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Install CAS tools
uses: home-assistant/actions/helpers/cas@master
- name: Build Meta Image
shell: bash
run: |
@@ -359,55 +356,78 @@ jobs:
local tag_l=${1}
local tag_r=${2}
docker manifest create "${{ matrix.registry }}/home-assistant:${tag_l}" \
"${{ matrix.registry }}/amd64-homeassistant:${tag_r}" \
"${{ matrix.registry }}/i386-homeassistant:${tag_r}" \
"${{ matrix.registry }}/armhf-homeassistant:${tag_r}" \
"${{ matrix.registry }}/armv7-homeassistant:${tag_r}" \
"${{ matrix.registry }}/aarch64-homeassistant:${tag_r}"
for registry in "ghcr.io/home-assistant" "docker.io/homeassistant"
do
docker manifest annotate "${{ matrix.registry }}/home-assistant:${tag_l}" \
"${{ matrix.registry }}/amd64-homeassistant:${tag_r}" \
--os linux --arch amd64
docker manifest create "${registry}/home-assistant:${tag_l}" \
"${registry}/amd64-homeassistant:${tag_r}" \
"${registry}/i386-homeassistant:${tag_r}" \
"${registry}/armhf-homeassistant:${tag_r}" \
"${registry}/armv7-homeassistant:${tag_r}" \
"${registry}/aarch64-homeassistant:${tag_r}"
docker manifest annotate "${{ matrix.registry }}/home-assistant:${tag_l}" \
"${{ matrix.registry }}/i386-homeassistant:${tag_r}" \
--os linux --arch 386
docker manifest annotate "${registry}/home-assistant:${tag_l}" \
"${registry}/amd64-homeassistant:${tag_r}" \
--os linux --arch amd64
docker manifest annotate "${{ matrix.registry }}/home-assistant:${tag_l}" \
"${{ matrix.registry }}/armhf-homeassistant:${tag_r}" \
--os linux --arch arm --variant=v6
docker manifest annotate "${registry}/home-assistant:${tag_l}" \
"${registry}/i386-homeassistant:${tag_r}" \
--os linux --arch 386
docker manifest annotate "${{ matrix.registry }}/home-assistant:${tag_l}" \
"${{ matrix.registry }}/armv7-homeassistant:${tag_r}" \
--os linux --arch arm --variant=v7
docker manifest annotate "${registry}/home-assistant:${tag_l}" \
"${registry}/armhf-homeassistant:${tag_r}" \
--os linux --arch arm --variant=v6
docker manifest annotate "${{ matrix.registry }}/home-assistant:${tag_l}" \
"${{ matrix.registry }}/aarch64-homeassistant:${tag_r}" \
--os linux --arch arm64 --variant=v8
docker manifest annotate "${registry}/home-assistant:${tag_l}" \
"${registry}/armv7-homeassistant:${tag_r}" \
--os linux --arch arm --variant=v7
docker manifest push --purge "${{ matrix.registry }}/home-assistant:${tag_l}"
docker manifest annotate "${registry}/home-assistant:${tag_l}" \
"${registry}/aarch64-homeassistant:${tag_r}" \
--os linux --arch arm64 --variant=v8
docker manifest push --purge "${registry}/home-assistant:${tag_l}"
cosign sign --yes "${registry}/home-assistant:${tag_l}"
done
}
function validate_image() {
local image=${1}
if ! cas authenticate --signerID notary@home-assistant.io "docker://${image}"; then
if ! cosign verify --certificate-oidc-issuer https://token.actions.githubusercontent.com --certificate-identity-regexp https://github.com/home-assistant/core/.* "${image}"; then
echo "Invalid signature!"
exit 1
fi
}
docker pull "${{ matrix.registry }}/amd64-homeassistant:${{ needs.init.outputs.version }}"
docker pull "${{ matrix.registry }}/i386-homeassistant:${{ needs.init.outputs.version }}"
docker pull "${{ matrix.registry }}/armhf-homeassistant:${{ needs.init.outputs.version }}"
docker pull "${{ matrix.registry }}/armv7-homeassistant:${{ needs.init.outputs.version }}"
docker pull "${{ matrix.registry }}/aarch64-homeassistant:${{ needs.init.outputs.version }}"
function push_dockerhub() {
local image=${1}
local tag=${2}
validate_image "${{ matrix.registry }}/amd64-homeassistant:${{ needs.init.outputs.version }}"
validate_image "${{ matrix.registry }}/i386-homeassistant:${{ needs.init.outputs.version }}"
validate_image "${{ matrix.registry }}/armhf-homeassistant:${{ needs.init.outputs.version }}"
validate_image "${{ matrix.registry }}/armv7-homeassistant:${{ needs.init.outputs.version }}"
validate_image "${{ matrix.registry }}/aarch64-homeassistant:${{ needs.init.outputs.version }}"
docker tag "ghcr.io/home-assistant/${image}:${tag}" "docker.io/homeassistant/${image}:${tag}"
docker push "docker.io/homeassistant/${image}:${tag}"
cosign sign --yes "docker.io/homeassistant/${image}:${tag}"
}
# Pull images from github container registry and verify signature
docker pull "ghcr.io/home-assistant/amd64-homeassistant:${{ needs.init.outputs.version }}"
docker pull "ghcr.io/home-assistant/i386-homeassistant:${{ needs.init.outputs.version }}"
docker pull "ghcr.io/home-assistant/armhf-homeassistant:${{ needs.init.outputs.version }}"
docker pull "ghcr.io/home-assistant/armv7-homeassistant:${{ needs.init.outputs.version }}"
docker pull "ghcr.io/home-assistant/aarch64-homeassistant:${{ needs.init.outputs.version }}"
validate_image "ghcr.io/home-assistant/amd64-homeassistant:${{ needs.init.outputs.version }}"
validate_image "ghcr.io/home-assistant/i386-homeassistant:${{ needs.init.outputs.version }}"
validate_image "ghcr.io/home-assistant/armhf-homeassistant:${{ needs.init.outputs.version }}"
validate_image "ghcr.io/home-assistant/armv7-homeassistant:${{ needs.init.outputs.version }}"
validate_image "ghcr.io/home-assistant/aarch64-homeassistant:${{ needs.init.outputs.version }}"
# Upload images to dockerhub
push_dockerhub "amd64-homeassistant" "${{ needs.init.outputs.version }}"
push_dockerhub "i386-homeassistant" "${{ needs.init.outputs.version }}"
push_dockerhub "armhf-homeassistant" "${{ needs.init.outputs.version }}"
push_dockerhub "armv7-homeassistant" "${{ needs.init.outputs.version }}"
push_dockerhub "aarch64-homeassistant" "${{ needs.init.outputs.version }}"
# Create version tag
create_manifest "${{ needs.init.outputs.version }}" "${{ needs.init.outputs.version }}"

View File

@@ -1,4 +1,5 @@
name: CI
run-name: "${{ github.event_name == 'workflow_dispatch' && format('CI: {0}', github.ref_name) || '' }}"
# yamllint disable-line rule:truthy
on:
@@ -18,6 +19,10 @@ on:
description: "Skip pytest"
default: false
type: boolean
skip-coverage:
description: "Skip coverage"
default: false
type: boolean
pylint-only:
description: "Only run pylint"
default: false
@@ -30,17 +35,20 @@ on:
env:
CACHE_VERSION: 5
PIP_CACHE_VERSION: 4
MYPY_CACHE_VERSION: 4
HA_SHORT_VERSION: 2023.4
DEFAULT_PYTHON: "3.10"
ALL_PYTHON_VERSIONS: "['3.10', '3.11']"
MYPY_CACHE_VERSION: 5
BLACK_CACHE_VERSION: 1
HA_SHORT_VERSION: "2023.10"
DEFAULT_PYTHON: "3.11"
ALL_PYTHON_VERSIONS: "['3.11']"
# 10.3 is the oldest supported version
# - 10.3.32 is the version currently shipped with Synology (as of 17 Feb 2022)
# 10.6 is the current long-term-support
# - 10.6.10 is the version currently shipped with the Add-on (as of 31 Jan 2023)
# 10.10 is the latest short-term-support
# - 10.10.3 is the latest (as of 6 Feb 2023)
MARIADB_VERSIONS: "['mariadb:10.3.32','mariadb:10.6.10','mariadb:10.10.3']"
# mysql 8.0.32 does not always behave the same as MariaDB
# and some queries that work on MariaDB do not work on MySQL
MARIADB_VERSIONS: "['mariadb:10.3.32','mariadb:10.6.10','mariadb:10.10.3','mysql:8.0.32']"
# 12 is the oldest supported version
# - 12.14 is the latest (as of 9 Feb 2023)
# 15 is the latest version
@@ -48,6 +56,7 @@ env:
POSTGRESQL_VERSIONS: "['postgres:12.14','postgres:15.2']"
PRE_COMMIT_CACHE: ~/.cache/pre-commit
PIP_CACHE: /tmp/pip-cache
BLACK_CACHE: /tmp/black-cache
SQLALCHEMY_WARN_20: 1
PYTHONASYNCIODEBUG: 1
HASS_CI: 1
@@ -76,10 +85,11 @@ jobs:
test_groups: ${{ steps.info.outputs.test_groups }}
tests_glob: ${{ steps.info.outputs.tests_glob }}
tests: ${{ steps.info.outputs.tests }}
skip_coverage: ${{ steps.info.outputs.skip_coverage }}
runs-on: ubuntu-22.04
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Generate partial Python venv restore key
id: generate_python_cache_key
run: >-
@@ -124,6 +134,7 @@ jobs:
test_group_count=10
tests="[]"
tests_glob=""
skip_coverage=""
if [[ "${{ steps.integrations.outputs.changes }}" != "[]" ]];
then
@@ -173,6 +184,12 @@ jobs:
test_full_suite="true"
fi
if [[ "${{ github.event.inputs.skip-coverage }}" == "true" ]] \
|| [[ "${{ contains(github.event.pull_request.labels.*.name, 'ci-skip-coverage') }}" == "true" ]];
then
skip_coverage="true"
fi
# Output & sent to GitHub Actions
echo "mariadb_groups: ${mariadb_groups}"
echo "mariadb_groups=${mariadb_groups}" >> $GITHUB_OUTPUT
@@ -192,6 +209,8 @@ jobs:
echo "tests=${tests}" >> $GITHUB_OUTPUT
echo "tests_glob: ${tests_glob}"
echo "tests_glob=${tests_glob}" >> $GITHUB_OUTPUT
echo "skip_coverage: ${skip_coverage}"
echo "skip_coverage=${skip_coverage}" >> $GITHUB_OUTPUT
pre-commit:
name: Prepare pre-commit base
@@ -203,16 +222,16 @@ jobs:
- info
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v3.2.6
uses: actions/cache@v3.3.2
with:
path: venv
key: >-
@@ -227,9 +246,10 @@ jobs:
pip install "$(cat requirements_test.txt | grep pre-commit)"
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v3.2.6
uses: actions/cache@v3.3.2
with:
path: ${{ env.PRE_COMMIT_CACHE }}
lookup-only: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.pre-commit_cache_key }}
@@ -247,16 +267,23 @@ jobs:
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Generate partial black restore key
id: generate-black-key
run: |
black_version=$(cat requirements_test_pre_commit.txt | grep black | cut -d '=' -f 3)
echo "version=$black_version" >> $GITHUB_OUTPUT
echo "key=black-${{ env.BLACK_CACHE_VERSION }}-$black_version-${{
env.HA_SHORT_VERSION }}-$(date -u '+%Y-%m-%dT%H:%M:%s')" >> $GITHUB_OUTPUT
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: venv
fail-on-cache-miss: true
@@ -265,75 +292,41 @@ jobs:
needs.info.outputs.pre-commit_cache_key }}
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Restore black cache
uses: actions/cache@v3.3.2
with:
path: ${{ env.BLACK_CACHE }}
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
steps.generate-black-key.outputs.key }}
restore-keys: |
${{ runner.os }}-${{ steps.python.outputs.python-version }}-black-${{
env.BLACK_CACHE_VERSION }}-${{ steps.generate-black-key.outputs.version }}-${{
env.HA_SHORT_VERSION }}-
- name: Run black (fully)
if: needs.info.outputs.test_full_suite == 'true'
env:
BLACK_CACHE_DIR: ${{ env.BLACK_CACHE }}
run: |
. venv/bin/activate
pre-commit run --hook-stage manual black --all-files --show-diff-on-failure
- name: Run black (partially)
if: needs.info.outputs.test_full_suite == 'false'
shell: bash
env:
BLACK_CACHE_DIR: ${{ env.BLACK_CACHE }}
run: |
. venv/bin/activate
shopt -s globstar
pre-commit run --hook-stage manual black --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*} --show-diff-on-failure
lint-flake8:
name: Check flake8
runs-on: ubuntu-22.04
needs:
- info
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.5.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-venv-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache/restore@v3.2.6
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Register flake8 problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/flake8.json"
- name: Run flake8 (fully)
if: needs.info.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
pre-commit run --hook-stage manual flake8 --all-files
- name: Run flake8 (partially)
if: needs.info.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
shopt -s globstar
pre-commit run --hook-stage manual flake8 --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*}
lint-ruff:
name: Check ruff
runs-on: ubuntu-22.04
@@ -342,16 +335,16 @@ jobs:
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: venv
fail-on-cache-miss: true
@@ -360,7 +353,7 @@ jobs:
needs.info.outputs.pre-commit_cache_key }}
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
@@ -383,44 +376,6 @@ jobs:
shopt -s globstar
pre-commit run --hook-stage manual ruff --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*} --show-diff-on-failure
lint-isort:
name: Check isort
runs-on: ubuntu-22.04
needs:
- info
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.5.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-venv-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache/restore@v3.2.6
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Run isort
run: |
. venv/bin/activate
pre-commit run --hook-stage manual isort --all-files --show-diff-on-failure
lint-other:
name: Check other linters
runs-on: ubuntu-22.04
@@ -429,16 +384,16 @@ jobs:
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: venv
fail-on-cache-miss: true
@@ -447,7 +402,7 @@ jobs:
needs.info.outputs.pre-commit_cache_key }}
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
@@ -455,19 +410,6 @@ jobs:
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.pre-commit_cache_key }}
- name: Run pyupgrade (fully)
if: needs.info.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
pre-commit run --hook-stage manual pyupgrade --all-files --show-diff-on-failure
- name: Run pyupgrade (partially)
if: needs.info.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
shopt -s globstar
pre-commit run --hook-stage manual pyupgrade --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*} --show-diff-on-failure
- name: Register yamllint problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/yamllint.json"
@@ -495,6 +437,7 @@ jobs:
shell: bash
run: |
. venv/bin/activate
shopt -s globstar
pre-commit run --hook-stage manual prettier --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*}
- name: Register check executables problem matcher
@@ -525,19 +468,6 @@ jobs:
with:
args: hadolint Dockerfile.dev
- name: Run bandit (fully)
if: needs.info.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
pre-commit run --hook-stage manual bandit --all-files --show-diff-on-failure
- name: Run bandit (partially)
if: needs.info.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
shopt -s globstar
pre-commit run --hook-stage manual bandit --files {homeassistant,tests}/components/${{ needs.info.outputs.integrations_glob }}/{*,**/*} --show-diff-on-failure
base:
name: Prepare dependencies
runs-on: ubuntu-22.04
@@ -548,10 +478,10 @@ jobs:
python-version: ${{ fromJSON(needs.info.outputs.python_versions) }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
@@ -562,15 +492,16 @@ jobs:
env.HA_SHORT_VERSION }}-$(date -u '+%Y-%m-%dT%H:%M:%s')" >> $GITHUB_OUTPUT
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v3.2.6
uses: actions/cache@v3.3.2
with:
path: venv
lookup-only: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Restore pip wheel cache
if: steps.cache-venv.outputs.cache-hit != 'true'
uses: actions/cache@v3.2.6
uses: actions/cache@v3.3.2
with:
path: ${{ env.PIP_CACHE }}
key: >-
@@ -599,10 +530,10 @@ jobs:
python -m venv venv
. venv/bin/activate
python --version
pip install --cache-dir=$PIP_CACHE -U "pip>=21.0,<23.1" setuptools wheel
pip install --cache-dir=$PIP_CACHE -r requirements_all.txt --use-deprecated=legacy-resolver
pip install --cache-dir=$PIP_CACHE -r requirements_test.txt --use-deprecated=legacy-resolver
pip install -e .
PIP_CACHE_DIR=$PIP_CACHE pip install -U "pip>=21.3.1" setuptools wheel
PIP_CACHE_DIR=$PIP_CACHE pip install -r requirements_all.txt
PIP_CACHE_DIR=$PIP_CACHE pip install -r requirements_test.txt
pip install -e . --config-settings editable_mode=compat
hassfest:
name: Check hassfest
@@ -615,16 +546,16 @@ jobs:
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore full Python ${{ env.DEFAULT_PYTHON }} virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: venv
fail-on-cache-miss: true
@@ -647,16 +578,16 @@ jobs:
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: venv
fail-on-cache-miss: true
@@ -680,16 +611,16 @@ jobs:
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore full Python ${{ env.DEFAULT_PYTHON }} virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: venv
fail-on-cache-miss: true
@@ -724,10 +655,10 @@ jobs:
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
@@ -740,7 +671,7 @@ jobs:
env.HA_SHORT_VERSION }}-$(date -u '+%Y-%m-%dT%H:%M:%s')" >> $GITHUB_OUTPUT
- name: Restore full Python ${{ env.DEFAULT_PYTHON }} virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: venv
fail-on-cache-miss: true
@@ -748,7 +679,7 @@ jobs:
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Restore mypy cache
uses: actions/cache@v3.2.6
uses: actions/cache@v3.3.2
with:
path: .mypy_cache
key: >-
@@ -775,42 +706,6 @@ jobs:
python --version
mypy homeassistant/components/${{ needs.info.outputs.integrations_glob }}
pip-check:
runs-on: ubuntu-22.04
if: |
github.event.inputs.pylint-only != 'true'
&& github.event.inputs.mypy-only != 'true'
needs:
- info
- base
strategy:
fail-fast: false
matrix:
python-version: ${{ fromJson(needs.info.outputs.python_versions) }}
name: Run pip check ${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v4.5.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Run pip check
run: |
. venv/bin/activate
./script/pip_check $PIP_CACHE
pytest:
runs-on: ubuntu-22.04
if: |
@@ -824,7 +719,6 @@ jobs:
- base
- gen-requirements-all
- hassfest
- lint-isort
- lint-other
- lint-ruff
- mypy
@@ -843,16 +737,16 @@ jobs:
bluez \
ffmpeg
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: venv
fail-on-cache-miss: true
@@ -878,9 +772,19 @@ jobs:
- name: Run pytest (fully)
if: needs.info.outputs.test_full_suite == 'true'
timeout-minutes: 60
id: pytest-full
env:
PYTHONDONTWRITEBYTECODE: 1
run: |
. venv/bin/activate
python --version
set -o pipefail
cov_params=()
if [[ "${{ needs.info.outputs.skip_coverage }}" != "true" ]]; then
cov_params+=(--cov="homeassistant")
cov_params+=(--cov-report=xml)
fi
python3 -X dev -m pytest \
-qq \
--timeout=9 \
@@ -889,37 +793,54 @@ jobs:
--dist=loadfile \
--test-group-count ${{ needs.info.outputs.test_group_count }} \
--test-group=${{ matrix.group }} \
--cov="homeassistant" \
--cov-report=xml \
${cov_params[@]} \
-o console_output_style=count \
-p no:sugar \
tests
tests \
2>&1 | tee pytest-${{ matrix.python-version }}-${{ matrix.group }}.txt
- name: Run pytest (partially)
if: needs.info.outputs.test_full_suite == 'false'
timeout-minutes: 10
id: pytest-partial
shell: bash
env:
PYTHONDONTWRITEBYTECODE: 1
run: |
. venv/bin/activate
python --version
set -o pipefail
if [[ ! -f "tests/components/${{ matrix.group }}/__init__.py" ]]; then
echo "::error:: missing file tests/components/${{ matrix.group }}/__init__.py"
exit 1
fi
cov_params=()
if [[ "${{ needs.info.outputs.skip_coverage }}" != "true" ]]; then
cov_params+=(--cov="homeassistant.components.${{ matrix.group }}")
cov_params+=(--cov-report=xml)
cov_params+=(--cov-report=term-missing)
fi
python3 -X dev -m pytest \
-qq \
--timeout=9 \
-n auto \
--cov="homeassistant.components.${{ matrix.group }}" \
--cov-report=xml \
--cov-report=term-missing \
${cov_params[@]} \
-o console_output_style=count \
--durations=0 \
--durations-min=1 \
-p no:sugar \
tests/components/${{ matrix.group }}
tests/components/${{ matrix.group }} \
2>&1 | tee pytest-${{ matrix.python-version }}-${{ matrix.group }}.txt
- name: Upload pytest output
if: success() || failure() && (steps.pytest-full.conclusion == 'failure' || steps.pytest-partial.conclusion == 'failure')
uses: actions/upload-artifact@v3.1.2
with:
name: pytest-${{ github.run_number }}
path: pytest-*.txt
- name: Upload coverage artifact
if: needs.info.outputs.skip_coverage != 'true'
uses: actions/upload-artifact@v3.1.2
with:
name: coverage-${{ matrix.python-version }}-${{ matrix.group }}
@@ -949,7 +870,6 @@ jobs:
- base
- gen-requirements-all
- hassfest
- lint-isort
- lint-other
- lint-ruff
- mypy
@@ -969,16 +889,16 @@ jobs:
ffmpeg \
libmariadb-dev-compat
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache/restore@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: venv
fail-on-cache-miss: true
@@ -1001,20 +921,33 @@ jobs:
run: |
. venv/bin/activate
pip install mysqlclient sqlalchemy_utils
- name: Compile English translations
run: |
. venv/bin/activate
python3 -m script.translations develop --all
- name: Run pytest (partially)
timeout-minutes: 20
id: pytest-partial
shell: bash
env:
PYTHONDONTWRITEBYTECODE: 1
run: |
. venv/bin/activate
python --version
set -o pipefail
mariadb=$(echo "${{ matrix.mariadb-group }}" | sed "s/:/-/g")
cov_params=()
if [[ "${{ needs.info.outputs.skip_coverage }}" != "true" ]]; then
cov_params+=(--cov="homeassistant.components.recorder")
cov_params+=(--cov-report=xml)
cov_params+=(--cov-report=term-missing)
fi
python3 -X dev -m pytest \
-qq \
--timeout=20 \
-n 1 \
--cov="homeassistant.components.recorder" \
--cov-report=xml \
--cov-report=term-missing \
${cov_params[@]} \
-o console_output_style=count \
--durations=10 \
-p no:sugar \
@@ -1022,8 +955,16 @@ jobs:
tests/components/history \
tests/components/logbook \
tests/components/recorder \
tests/components/sensor
tests/components/sensor \
2>&1 | tee pytest-${{ matrix.python-version }}-${mariadb}.txt
- name: Upload pytest output
if: success() || failure() && steps.pytest-partial.conclusion == 'failure'
uses: actions/upload-artifact@v3.1.2
with:
name: pytest-${{ github.run_number }}
path: pytest-*.txt
- name: Upload coverage artifact
if: needs.info.outputs.skip_coverage != 'true'
uses: actions/upload-artifact@v3.1.2
with:
name: coverage-${{ matrix.python-version }}-mariadb
@@ -1053,7 +994,6 @@ jobs:
- base
- gen-requirements-all
- hassfest
- lint-isort
- lint-other
- lint-ruff
- mypy
@@ -1073,16 +1013,16 @@ jobs:
ffmpeg \
postgresql-server-dev-14
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v3.2.6
uses: actions/cache/restore@v3.3.2
with:
path: venv
fail-on-cache-miss: true
@@ -1105,20 +1045,33 @@ jobs:
run: |
. venv/bin/activate
pip install psycopg2 sqlalchemy_utils
- name: Compile English translations
run: |
. venv/bin/activate
python3 -m script.translations develop --all
- name: Run pytest (partially)
timeout-minutes: 20
id: pytest-partial
shell: bash
env:
PYTHONDONTWRITEBYTECODE: 1
run: |
. venv/bin/activate
python --version
set -o pipefail
postgresql=$(echo "${{ matrix.postgresql-group }}" | sed "s/:/-/g")
cov_params=()
if [[ "${{ needs.info.outputs.skip_coverage }}" != "true" ]]; then
cov_params+=(--cov="homeassistant.components.recorder")
cov_params+=(--cov-report=xml)
cov_params+=(--cov-report=term-missing)
fi
python3 -X dev -m pytest \
-qq \
--timeout=9 \
-n 1 \
--cov="homeassistant.components.recorder" \
--cov-report=xml \
--cov-report=term-missing \
${cov_params[@]} \
-o console_output_style=count \
--durations=0 \
--durations-min=10 \
@@ -1127,8 +1080,16 @@ jobs:
tests/components/history \
tests/components/logbook \
tests/components/recorder \
tests/components/sensor
tests/components/sensor \
2>&1 | tee pytest-${{ matrix.python-version }}-${postgresql}.txt
- name: Upload pytest output
if: success() || failure() && steps.pytest-partial.conclusion == 'failure'
uses: actions/upload-artifact@v3.1.2
with:
name: pytest-${{ github.run_number }}
path: pytest-*.txt
- name: Upload coverage artifact
if: needs.info.outputs.skip_coverage != 'true'
uses: actions/upload-artifact@v3.1.0
with:
name: coverage-${{ matrix.python-version }}-postgresql
@@ -1139,20 +1100,35 @@ jobs:
coverage:
name: Upload test coverage to Codecov
if: needs.info.outputs.skip_coverage != 'true'
runs-on: ubuntu-22.04
needs:
- info
- pytest
timeout-minutes: 10
steps:
- name: Check out code from GitHub
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Download all coverage artifacts
uses: actions/download-artifact@v3
- name: Upload coverage to Codecov (full coverage)
if: needs.info.outputs.test_full_suite == 'true'
uses: codecov/codecov-action@v3.1.1
uses: Wandalen/wretry.action@v1.3.0
with:
flags: full-suite
action: codecov/codecov-action@v3.1.3
with: |
fail_ci_if_error: true
flags: full-suite
token: ${{ env.CODECOV_TOKEN }}
attempt_limit: 5
attempt_delay: 30000
- name: Upload coverage to Codecov (partial coverage)
if: needs.info.outputs.test_full_suite == 'false'
uses: codecov/codecov-action@v3.1.1
uses: Wandalen/wretry.action@v1.3.0
with:
action: codecov/codecov-action@v3.1.3
with: |
fail_ci_if_error: true
token: ${{ env.CODECOV_TOKEN }}
attempt_limit: 5
attempt_delay: 30000

View File

@@ -10,7 +10,7 @@ jobs:
if: github.repository_owner == 'home-assistant'
runs-on: ubuntu-latest
steps:
- uses: dessant/lock-threads@v4.0.0
- uses: dessant/lock-threads@v4.0.1
with:
github-token: ${{ github.token }}
issue-inactive-days: "30"

View File

@@ -1,30 +0,0 @@
{
"problemMatcher": [
{
"owner": "flake8-error",
"severity": "error",
"pattern": [
{
"regexp": "^(.*):(\\d+):(\\d+):\\s([EF]\\d{3}\\s.*)$",
"file": 1,
"line": 2,
"column": 3,
"message": 4
}
]
},
{
"owner": "flake8-warning",
"severity": "warning",
"pattern": [
{
"regexp": "^(.*):(\\d+):(\\d+):\\s([CDNW]\\d{3}\\s.*)$",
"file": 1,
"line": 2,
"column": 3,
"message": 4
}
]
}
]
}

View File

@@ -17,7 +17,7 @@ jobs:
# - No PRs marked as no-stale
# - No issues (-1)
- name: 90 days stale PRs policy
uses: actions/stale@v7.0.0
uses: actions/stale@v8.0.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 90
@@ -42,7 +42,7 @@ jobs:
id: token
# Pinned to a specific version of the action for security reasons
# v1.7.0
uses: tibdex/github-app-token@b62528385c34dbc9f38e5f4225ac829252d1ea92
uses: tibdex/github-app-token@3beb63f4bd073e61482598c45c71c1019b59b73a
with:
app_id: ${{ secrets.ISSUE_TRIAGE_APP_ID }}
private_key: ${{ secrets.ISSUE_TRIAGE_APP_PEM }}
@@ -53,7 +53,7 @@ jobs:
# - No issues marked as no-stale or help-wanted
# - No PRs (-1)
- name: 90 days stale issues
uses: actions/stale@v7.0.0
uses: actions/stale@v8.0.0
with:
repo-token: ${{ steps.token.outputs.token }}
days-before-stale: 90
@@ -83,7 +83,7 @@ jobs:
# - No Issues marked as no-stale or help-wanted
# - No PRs (-1)
- name: Needs more information stale issues policy
uses: actions/stale@v7.0.0
uses: actions/stale@v8.0.0
with:
repo-token: ${{ steps.token.outputs.token }}
only-labels: "needs-more-information"

View File

@@ -10,7 +10,7 @@ on:
- "**strings.json"
env:
DEFAULT_PYTHON: "3.10"
DEFAULT_PYTHON: "3.11"
jobs:
upload:
@@ -19,10 +19,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v4.5.0
uses: actions/setup-python@v4.7.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}

View File

@@ -13,6 +13,10 @@ on:
- "requirements.txt"
- "requirements_all.txt"
concurrency:
group: ${{ github.workflow }}-${{ github.ref_name}}
cancel-in-progress: true
jobs:
init:
name: Initialize wheels builder
@@ -22,7 +26,7 @@ jobs:
architectures: ${{ steps.info.outputs.architectures }}
steps:
- name: Checkout the repository
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Get information
id: info
@@ -43,10 +47,7 @@ jobs:
echo "GRPC_PYTHON_BUILD_SYSTEM_OPENSSL=true"
echo "GRPC_PYTHON_BUILD_WITH_CYTHON=true"
echo "GRPC_PYTHON_DISABLE_LIBC_COMPATIBILITY=true"
# GRPC on armv7 needs -lexecinfo (issue #56669) since home assistant installs
# execinfo-dev when building wheels. The setuptools build setup does not have an option for
# adding a single LDFLAG so copy all relevant linux flags here (as of 1.43.0)
echo "GRPC_PYTHON_LDFLAGS=-lpthread -Wl,-wrap,memcpy -static-libgcc -lexecinfo"
echo "GRPC_PYTHON_LDFLAGS=-lpthread -Wl,-wrap,memcpy -static-libgcc"
# Fix out of memory issues with rust
echo "CARGO_NET_GIT_FETCH_WITH_CLI=true"
@@ -54,6 +55,9 @@ jobs:
# OpenCV headless installation
echo "CI_BUILD=1"
echo "ENABLE_HEADLESS=1"
# Use C-Extension for SQLAlchemy
echo "REQUIRE_SQLALCHEMY_CEXT=1"
) > .env_file
- name: Upload env_file
@@ -69,17 +73,18 @@ jobs:
path: ./requirements_diff.txt
core:
name: Build musllinux wheels with musllinux_1_2 / cp310 at ${{ matrix.arch }} for core
name: Build Core wheels ${{ matrix.abi }} for ${{ matrix.arch }} (musllinux_1_2)
if: github.repository_owner == 'home-assistant'
needs: init
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
abi: ["cp311"]
arch: ${{ fromJson(needs.init.outputs.architectures) }}
steps:
- name: Checkout the repository
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Download env_file
uses: actions/download-artifact@v3
@@ -92,9 +97,9 @@ jobs:
name: requirements_diff
- name: Build wheels
uses: home-assistant/wheels@2022.10.1
uses: home-assistant/wheels@2023.09.1
with:
abi: cp310
abi: ${{ matrix.abi }}
tag: musllinux_1_2
arch: ${{ matrix.arch }}
wheels-key: ${{ secrets.WHEELS_KEY }}
@@ -105,18 +110,19 @@ jobs:
requirements-diff: "requirements_diff.txt"
requirements: "requirements.txt"
integrations:
name: Build musllinux wheels with musllinux_1_2 / cp310 at ${{ matrix.arch }} for integrations
integrations_cp311:
name: Build wheels ${{ matrix.abi }} for ${{ matrix.arch }}
if: github.repository_owner == 'home-assistant'
needs: init
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
abi: ["cp311"]
arch: ${{ fromJson(needs.init.outputs.architectures) }}
steps:
- name: Checkout the repository
uses: actions/checkout@v3.3.0
uses: actions/checkout@v4.1.0
- name: Download env_file
uses: actions/download-artifact@v3
@@ -128,20 +134,30 @@ jobs:
with:
name: requirements_diff
- name: Uncomment packages
- name: (Un)comment packages
run: |
requirement_files="requirements_all.txt requirements_diff.txt"
for requirement_file in ${requirement_files}; do
sed -i "s|# pybluez|pybluez|g" ${requirement_file}
sed -i "s|# beacontools|beacontools|g" ${requirement_file}
sed -i "s|# fritzconnection|fritzconnection|g" ${requirement_file}
sed -i "s|# pyuserinput|pyuserinput|g" ${requirement_file}
sed -i "s|# evdev|evdev|g" ${requirement_file}
sed -i "s|# pycups|pycups|g" ${requirement_file}
sed -i "s|# homekit|homekit|g" ${requirement_file}
sed -i "s|# decora_wifi|decora_wifi|g" ${requirement_file}
sed -i "s|# decora-wifi|decora-wifi|g" ${requirement_file}
sed -i "s|# python-gammu|python-gammu|g" ${requirement_file}
sed -i "s|# opencv-python-headless|opencv-python-headless|g" ${requirement_file}
# Some packages are not buildable on armhf anymore
if [ "${{ matrix.arch }}" = "armhf" ]; then
# Pandas has issues building on armhf, it is expected they
# will drop the platform in the near future (they consider it
# "flimsy" on 386). The following packages depend on pandas,
# so we comment them out.
sed -i "s|env-canada|# env-canada|g" ${requirement_file}
sed -i "s|noaa-coops|# noaa-coops|g" ${requirement_file}
sed -i "s|pyezviz|# pyezviz|g" ${requirement_file}
sed -i "s|pykrakenapi|# pykrakenapi|g" ${requirement_file}
fi
done
- name: Split requirements all
@@ -150,7 +166,7 @@ jobs:
# This is to prevent the build from running out of memory when
# resolving packages on 32-bits systems (like armhf, armv7).
split -l $(expr $(expr $(cat requirements_all.txt | wc -l) + 1) / 2) requirements_all.txt requirements_all.txt
split -l $(expr $(expr $(cat requirements_all.txt | wc -l) + 1) / 3) requirements_all.txt requirements_all.txt
- name: Adjust build env
run: |
@@ -158,41 +174,47 @@ jobs:
echo "NPY_DISABLE_SVML=1" >> .env_file
fi
(
# cmake > 3.22.2 have issue on arm
# Tested until 3.22.5
echo "cmake==3.22.2"
) >> homeassistant/package_constraints.txt
# Do not pin numpy in wheels building
sed -i "/numpy/d" homeassistant/package_constraints.txt
- name: Build wheels (part 1)
uses: home-assistant/wheels@2022.10.1
uses: home-assistant/wheels@2023.09.1
with:
abi: cp310
abi: ${{ matrix.abi }}
tag: musllinux_1_2
arch: ${{ matrix.arch }}
wheels-key: ${{ secrets.WHEELS_KEY }}
env-file: true
apk: "libexecinfo-dev;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev"
skip-binary: aiohttp;grpcio
legacy: true
apk: "bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev"
skip-binary: aiohttp;charset-normalizer;grpcio;SQLAlchemy;protobuf
constraints: "homeassistant/package_constraints.txt"
requirements-diff: "requirements_diff.txt"
requirements: "requirements_all.txtaa"
- name: Build wheels (part 2)
uses: home-assistant/wheels@2022.10.1
uses: home-assistant/wheels@2023.09.1
with:
abi: cp310
abi: ${{ matrix.abi }}
tag: musllinux_1_2
arch: ${{ matrix.arch }}
wheels-key: ${{ secrets.WHEELS_KEY }}
env-file: true
apk: "libexecinfo-dev;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev"
skip-binary: aiohttp;grpcio
legacy: true
apk: "bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev"
skip-binary: aiohttp;charset-normalizer;grpcio;SQLAlchemy;protobuf
constraints: "homeassistant/package_constraints.txt"
requirements-diff: "requirements_diff.txt"
requirements: "requirements_all.txtab"
- name: Build wheels (part 3)
uses: home-assistant/wheels@2023.09.1
with:
abi: ${{ matrix.abi }}
tag: musllinux_1_2
arch: ${{ matrix.arch }}
wheels-key: ${{ secrets.WHEELS_KEY }}
env-file: true
apk: "bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev"
skip-binary: aiohttp;charset-normalizer;grpcio;SQLAlchemy;protobuf
constraints: "homeassistant/package_constraints.txt"
requirements-diff: "requirements_diff.txt"
requirements: "requirements_all.txtac"

1
.gitignore vendored
View File

@@ -67,6 +67,7 @@ htmlcov/
test-reports/
test-results.xml
test-output.xml
pytest-*.txt
# Translations
*.mo

View File

@@ -1,26 +1,12 @@
repos:
- repo: https://github.com/charliermarsh/ruff-pre-commit
rev: v0.0.247
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.0.289
hooks:
- id: ruff
args:
- --fix
- repo: https://github.com/asottile/pyupgrade
rev: v3.3.1
hooks:
- id: pyupgrade
args: [--py310-plus]
stages: [manual]
- repo: https://github.com/PyCQA/autoflake
rev: v2.0.0
hooks:
- id: autoflake
args:
- --in-place
- --remove-all-unused-imports
stages: [manual]
- repo: https://github.com/psf/black
rev: 23.1.0
- repo: https://github.com/psf/black-pre-commit-mirror
rev: 23.9.1
hooks:
- id: black
args:
@@ -31,38 +17,11 @@ repos:
hooks:
- id: codespell
args:
- --ignore-words-list=additionals,alle,alot,ba,bre,bund,currenty,datas,dof,dur,ether,farenheit,falsy,fo,haa,hass,hist,iam,iff,iif,incomfort,ines,ist,lightsensor,mut,nam,nd,pres,pullrequests,referer,resset,rime,ser,serie,sur,te,technik,ue,uint,unsecure,visability,wan,wanna,withing,zar
- --skip="./.*,*.csv,*.json"
- --ignore-words-list=additionals,alle,alot,bund,currenty,datas,farenheit,falsy,fo,haa,hass,iif,incomfort,ines,ist,nam,nd,pres,pullrequests,resset,rime,ser,serie,te,technik,ue,unsecure,withing,zar
- --skip="./.*,*.csv,*.json,*.ambr"
- --quiet-level=2
exclude_types: [csv, json]
exclude: ^tests/fixtures/|homeassistant/generated/
- repo: https://github.com/PyCQA/flake8
rev: 6.0.0
hooks:
- id: flake8
additional_dependencies:
- pycodestyle==2.10.0
- pyflakes==3.0.1
- flake8-docstrings==1.6.0
- pydocstyle==6.2.3
- flake8-comprehensions==3.10.1
- flake8-noqa==1.3.0
- mccabe==0.7.0
exclude: docs/source/conf.py
stages: [manual]
- repo: https://github.com/PyCQA/bandit
rev: 1.7.4
hooks:
- id: bandit
args:
- --quiet
- --format=custom
- --configfile=tests/bandit.yaml
files: ^(homeassistant|script|tests)/.+\.py$
- repo: https://github.com/PyCQA/isort
rev: 5.12.0
hooks:
- id: isort
exclude: ^tests/fixtures/|homeassistant/generated/|tests/components/.*/snapshots/
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.4.0
hooks:
@@ -76,7 +35,7 @@ repos:
- --branch=master
- --branch=rc
- repo: https://github.com/adrienverge/yamllint.git
rev: v1.28.0
rev: v1.32.0
hooks:
- id: yamllint
- repo: https://github.com/pre-commit/mirrors-prettier
@@ -84,7 +43,7 @@ repos:
hooks:
- id: prettier
- repo: https://github.com/cdce8p/python-typing-update
rev: v0.5.0
rev: v0.6.0
hooks:
# Run `python-typing-update` hook manually from time to time
# to update python typing syntax.
@@ -93,7 +52,7 @@ repos:
- id: python-typing-update
stages: [manual]
args:
- --py310-plus
- --py311-plus
- --force
- --keep-updates
files: ^(homeassistant|tests|script)/.+\.py$

View File

@@ -4,3 +4,5 @@ azure-*.yml
docs/source/_templates/*
homeassistant/components/*/translations/*.json
homeassistant/generated/*
tests/components/lidarr/fixtures/initialize.js
tests/components/lidarr/fixtures/initialize-wrong.js

View File

@@ -49,18 +49,22 @@ homeassistant.components.air_quality.*
homeassistant.components.airly.*
homeassistant.components.airvisual.*
homeassistant.components.airzone.*
homeassistant.components.airzone_cloud.*
homeassistant.components.aladdin_connect.*
homeassistant.components.alarm_control_panel.*
homeassistant.components.alert.*
homeassistant.components.alexa.*
homeassistant.components.amazon_polly.*
homeassistant.components.ambient_station.*
homeassistant.components.amcrest.*
homeassistant.components.ampio.*
homeassistant.components.analytics.*
homeassistant.components.anova.*
homeassistant.components.anthemav.*
homeassistant.components.apcupsd.*
homeassistant.components.aqualogic.*
homeassistant.components.aseko_pool_live.*
homeassistant.components.assist_pipeline.*
homeassistant.components.asuswrt.*
homeassistant.components.auth.*
homeassistant.components.automation.*
@@ -84,6 +88,8 @@ homeassistant.components.camera.*
homeassistant.components.canary.*
homeassistant.components.clickatell.*
homeassistant.components.clicksend.*
homeassistant.components.climate.*
homeassistant.components.cloud.*
homeassistant.components.configurator.*
homeassistant.components.cover.*
homeassistant.components.cpuspeed.*
@@ -99,15 +105,19 @@ homeassistant.components.dhcp.*
homeassistant.components.diagnostics.*
homeassistant.components.dlna_dmr.*
homeassistant.components.dnsip.*
homeassistant.components.doorbird.*
homeassistant.components.dormakaba_dkey.*
homeassistant.components.dsmr.*
homeassistant.components.dunehd.*
homeassistant.components.efergy.*
homeassistant.components.electrasmart.*
homeassistant.components.electric_kiwi.*
homeassistant.components.elgato.*
homeassistant.components.elkm1.*
homeassistant.components.emulated_hue.*
homeassistant.components.energy.*
homeassistant.components.esphome.*
homeassistant.components.event.*
homeassistant.components.evil_genius_labs.*
homeassistant.components.fan.*
homeassistant.components.fastdotcom.*
@@ -127,9 +137,11 @@ homeassistant.components.fully_kiosk.*
homeassistant.components.geo_location.*
homeassistant.components.geocaching.*
homeassistant.components.gios.*
homeassistant.components.glances.*
homeassistant.components.goalzero.*
homeassistant.components.google.*
homeassistant.components.google_sheets.*
homeassistant.components.gpsd.*
homeassistant.components.greeneye_monitor.*
homeassistant.components.group.*
homeassistant.components.guardian.*
@@ -137,8 +149,10 @@ homeassistant.components.hardkernel.*
homeassistant.components.hardware.*
homeassistant.components.here_travel_time.*
homeassistant.components.history.*
homeassistant.components.homeassistant.exposed_entities
homeassistant.components.homeassistant.triggers.event
homeassistant.components.homeassistant_alerts.*
homeassistant.components.homeassistant_green.*
homeassistant.components.homeassistant_hardware.*
homeassistant.components.homeassistant_sky_connect.*
homeassistant.components.homeassistant_yellow.*
@@ -163,17 +177,24 @@ homeassistant.components.homekit_controller.utils
homeassistant.components.homewizard.*
homeassistant.components.http.*
homeassistant.components.huawei_lte.*
homeassistant.components.hydrawise.*
homeassistant.components.hyperion.*
homeassistant.components.ibeacon.*
homeassistant.components.idasen_desk.*
homeassistant.components.image.*
homeassistant.components.image_processing.*
homeassistant.components.image_upload.*
homeassistant.components.imap.*
homeassistant.components.input_button.*
homeassistant.components.input_select.*
homeassistant.components.integration.*
homeassistant.components.ipp.*
homeassistant.components.iqvia.*
homeassistant.components.islamic_prayer_times.*
homeassistant.components.isy994.*
homeassistant.components.jellyfin.*
homeassistant.components.jewish_calendar.*
homeassistant.components.jvc_projector.*
homeassistant.components.kaleidescape.*
homeassistant.components.knx.*
homeassistant.components.kraken.*
@@ -181,6 +202,7 @@ homeassistant.components.lacrosse.*
homeassistant.components.lacrosse_view.*
homeassistant.components.lametric.*
homeassistant.components.laundrify.*
homeassistant.components.lawn_mower.*
homeassistant.components.lcn.*
homeassistant.components.ld2410_ble.*
homeassistant.components.lidarr.*
@@ -192,11 +214,14 @@ homeassistant.components.local_ip.*
homeassistant.components.lock.*
homeassistant.components.logbook.*
homeassistant.components.logger.*
homeassistant.components.london_underground.*
homeassistant.components.lookin.*
homeassistant.components.luftdaten.*
homeassistant.components.mailbox.*
homeassistant.components.mastodon.*
homeassistant.components.matrix.*
homeassistant.components.matter.*
homeassistant.components.media_extractor.*
homeassistant.components.media_player.*
homeassistant.components.media_source.*
homeassistant.components.metoffice.*
@@ -227,13 +252,18 @@ homeassistant.components.oncue.*
homeassistant.components.onewire.*
homeassistant.components.open_meteo.*
homeassistant.components.openexchangerates.*
homeassistant.components.opensky.*
homeassistant.components.openuv.*
homeassistant.components.otbr.*
homeassistant.components.overkiz.*
homeassistant.components.peco.*
homeassistant.components.persistent_notification.*
homeassistant.components.pi_hole.*
homeassistant.components.ping.*
homeassistant.components.plugwise.*
homeassistant.components.poolsense.*
homeassistant.components.powerwall.*
homeassistant.components.private_ble_device.*
homeassistant.components.proximity.*
homeassistant.components.prusalink.*
homeassistant.components.pure_energie.*
@@ -265,7 +295,6 @@ homeassistant.components.scene.*
homeassistant.components.schedule.*
homeassistant.components.scrape.*
homeassistant.components.select.*
homeassistant.components.senseme.*
homeassistant.components.sensibo.*
homeassistant.components.sensirion_ble.*
homeassistant.components.sensor.*
@@ -281,7 +310,9 @@ homeassistant.components.smhi.*
homeassistant.components.snooz.*
homeassistant.components.sonarr.*
homeassistant.components.speedtestdotnet.*
homeassistant.components.sql.*
homeassistant.components.ssdp.*
homeassistant.components.starlink.*
homeassistant.components.statistics.*
homeassistant.components.steamist.*
homeassistant.components.stookalert.*
@@ -290,6 +321,7 @@ homeassistant.components.sun.*
homeassistant.components.surepetcare.*
homeassistant.components.switch.*
homeassistant.components.switchbee.*
homeassistant.components.switchbot_cloud.*
homeassistant.components.switcher_kis.*
homeassistant.components.synology_dsm.*
homeassistant.components.systemmonitor.*
@@ -297,6 +329,8 @@ homeassistant.components.tag.*
homeassistant.components.tailscale.*
homeassistant.components.tautulli.*
homeassistant.components.tcp.*
homeassistant.components.text.*
homeassistant.components.threshold.*
homeassistant.components.tibber.*
homeassistant.components.tile.*
homeassistant.components.tilt_ble.*
@@ -305,12 +339,14 @@ homeassistant.components.tplink.*
homeassistant.components.tplink_omada.*
homeassistant.components.tractive.*
homeassistant.components.tradfri.*
homeassistant.components.trafikverket_camera.*
homeassistant.components.trafikverket_ferry.*
homeassistant.components.trafikverket_train.*
homeassistant.components.trafikverket_weatherstation.*
homeassistant.components.trend.*
homeassistant.components.tts.*
homeassistant.components.twentemilieu.*
homeassistant.components.unifi.update
homeassistant.components.unifi.*
homeassistant.components.unifiprotect.*
homeassistant.components.upcloud.*
homeassistant.components.update.*

4
.vscode/launch.json vendored
View File

@@ -23,7 +23,7 @@
"preLaunchTask": "Compile English translations"
},
{
// Debug by attaching to local Home Asistant server using Remote Python Debugger.
// Debug by attaching to local Home Assistant server using Remote Python Debugger.
// See https://www.home-assistant.io/integrations/debugpy/
"name": "Home Assistant: Attach Local",
"type": "python",
@@ -38,7 +38,7 @@
]
},
{
// Debug by attaching to remote Home Asistant server using Remote Python Debugger.
// Debug by attaching to remote Home Assistant server using Remote Python Debugger.
// See https://www.home-assistant.io/integrations/debugpy/
"name": "Home Assistant: Attach Remote",
"type": "python",

55
.vscode/tasks.json vendored
View File

@@ -42,20 +42,6 @@
},
"problemMatcher": []
},
{
"label": "Flake8",
"type": "shell",
"command": "pre-commit run flake8 --all-files",
"group": {
"kind": "test",
"isDefault": true
},
"presentation": {
"reveal": "always",
"panel": "new"
},
"problemMatcher": []
},
{
"label": "Ruff",
"type": "shell",
@@ -117,7 +103,7 @@
{
"label": "Install all Requirements",
"type": "shell",
"command": "pip3 install --use-deprecated=legacy-resolver -r requirements_all.txt",
"command": "pip3 install -r requirements_all.txt",
"group": {
"kind": "build",
"isDefault": true
@@ -131,7 +117,7 @@
{
"label": "Install all Test Requirements",
"type": "shell",
"command": "pip3 install --use-deprecated=legacy-resolver -r requirements_test_all.txt",
"command": "pip3 install -r requirements_test_all.txt",
"group": {
"kind": "build",
"isDefault": true
@@ -151,6 +137,26 @@
"kind": "build",
"isDefault": true
}
},
{
"label": "Run scaffold",
"detail": "Add new functionality to a integration using a scaffold.",
"type": "shell",
"command": "python3 -m script.scaffold ${input:scaffoldName} --integration ${input:integrationName}",
"group": {
"kind": "build",
"isDefault": true
}
},
{
"label": "Create new integration",
"detail": "Use the scaffold to create a new integration.",
"type": "shell",
"command": "python3 -m script.scaffold integration",
"group": {
"kind": "build",
"isDefault": true
}
}
],
"inputs": [
@@ -158,6 +164,23 @@
"id": "integrationName",
"type": "promptString",
"description": "For which integration should the task run?"
},
{
"id": "scaffoldName",
"type": "pickString",
"options": [
"backup",
"config_flow",
"config_flow_discovery",
"config_flow_helper",
"config_flow_oauth2",
"device_action",
"device_condition",
"device_trigger",
"reproduce_state",
"significant_change"
],
"description": "Which scaffold should be run?"
}
]
}

View File

@@ -25,7 +25,7 @@ rules:
comments:
level: error
require-starting-space: true
min-spaces-from-content: 2
min-spaces-from-content: 1
comments-indentation:
level: error
document-end:

View File

@@ -19,8 +19,6 @@ build.json @home-assistant/supervisor
# Other code
/homeassistant/scripts/check_config.py @kellerza
/homeassistant/const.py @epenet
/homeassistant/util/ @epenet
# Integrations
/homeassistant/components/abode/ @shred86
@@ -49,16 +47,18 @@ build.json @home-assistant/supervisor
/tests/components/airq/ @Sibgatulin @dl2080
/homeassistant/components/airthings/ @danielhiversen
/tests/components/airthings/ @danielhiversen
/homeassistant/components/airthings_ble/ @vincegio
/tests/components/airthings_ble/ @vincegio
/homeassistant/components/airtouch4/ @LonePurpleWolf
/tests/components/airtouch4/ @LonePurpleWolf
/homeassistant/components/airthings_ble/ @vincegio @LaStrada
/tests/components/airthings_ble/ @vincegio @LaStrada
/homeassistant/components/airtouch4/ @samsinnamon
/tests/components/airtouch4/ @samsinnamon
/homeassistant/components/airvisual/ @bachya
/tests/components/airvisual/ @bachya
/homeassistant/components/airvisual_pro/ @bachya
/tests/components/airvisual_pro/ @bachya
/homeassistant/components/airzone/ @Noltari
/tests/components/airzone/ @Noltari
/homeassistant/components/airzone_cloud/ @Noltari
/tests/components/airzone_cloud/ @Noltari
/homeassistant/components/aladdin_connect/ @mkmer
/tests/components/aladdin_connect/ @mkmer
/homeassistant/components/alarm_control_panel/ @home-assistant/core
@@ -80,6 +80,10 @@ build.json @home-assistant/supervisor
/tests/components/android_ip_webcam/ @engrbm87
/homeassistant/components/androidtv/ @JeffLIrion @ollo69
/tests/components/androidtv/ @JeffLIrion @ollo69
/homeassistant/components/androidtv_remote/ @tronikos @Drafteed
/tests/components/androidtv_remote/ @tronikos @Drafteed
/homeassistant/components/anova/ @Lash-L
/tests/components/anova/ @Lash-L
/homeassistant/components/anthemav/ @hyralex
/tests/components/anthemav/ @hyralex
/homeassistant/components/apache_kafka/ @bachya
@@ -103,6 +107,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/arris_tg2492lg/ @vanbalken
/homeassistant/components/aseko_pool_live/ @milanmeu
/tests/components/aseko_pool_live/ @milanmeu
/homeassistant/components/assist_pipeline/ @balloob @synesthesiam
/tests/components/assist_pipeline/ @balloob @synesthesiam
/homeassistant/components/asuswrt/ @kennedyshead @ollo69
/tests/components/asuswrt/ @kennedyshead @ollo69
/homeassistant/components/atag/ @MatsNL
@@ -168,6 +174,8 @@ build.json @home-assistant/supervisor
/tests/components/broadlink/ @danielhiversen @felipediel @L-I-Am
/homeassistant/components/brother/ @bieniu
/tests/components/brother/ @bieniu
/homeassistant/components/brottsplatskartan/ @gjohansson-ST
/tests/components/brottsplatskartan/ @gjohansson-ST
/homeassistant/components/brunt/ @eavanvalkenburg
/tests/components/brunt/ @eavanvalkenburg
/homeassistant/components/bsblan/ @liudger
@@ -185,8 +193,8 @@ build.json @home-assistant/supervisor
/tests/components/camera/ @home-assistant/core
/homeassistant/components/cast/ @emontnemery
/tests/components/cast/ @emontnemery
/homeassistant/components/cert_expiry/ @Cereal2nd @jjlawren
/tests/components/cert_expiry/ @Cereal2nd @jjlawren
/homeassistant/components/cert_expiry/ @jjlawren
/tests/components/cert_expiry/ @jjlawren
/homeassistant/components/circuit/ @braam
/homeassistant/components/cisco_ios/ @fbradyirl
/homeassistant/components/cisco_mobility_express/ @fbradyirl
@@ -197,12 +205,18 @@ build.json @home-assistant/supervisor
/tests/components/cloud/ @home-assistant/cloud
/homeassistant/components/cloudflare/ @ludeeus @ctalkington
/tests/components/cloudflare/ @ludeeus @ctalkington
/homeassistant/components/co2signal/ @jpbede
/tests/components/co2signal/ @jpbede
/homeassistant/components/coinbase/ @tombrien
/tests/components/coinbase/ @tombrien
/homeassistant/components/color_extractor/ @GenericStudent
/tests/components/color_extractor/ @GenericStudent
/homeassistant/components/comelit/ @chemelli74
/tests/components/comelit/ @chemelli74
/homeassistant/components/comfoconnect/ @michaelarnauts
/tests/components/comfoconnect/ @michaelarnauts
/homeassistant/components/command_line/ @gjohansson-ST
/tests/components/command_line/ @gjohansson-ST
/homeassistant/components/compensation/ @Petro31
/tests/components/compensation/ @Petro31
/homeassistant/components/config/ @home-assistant/core
@@ -215,8 +229,6 @@ build.json @home-assistant/supervisor
/tests/components/conversation/ @home-assistant/core @synesthesiam
/homeassistant/components/coolmaster/ @OnFreund
/tests/components/coolmaster/ @OnFreund
/homeassistant/components/coronavirus/ @home-assistant/core
/tests/components/coronavirus/ @home-assistant/core
/homeassistant/components/counter/ @fabaff
/tests/components/counter/ @fabaff
/homeassistant/components/cover/ @home-assistant/core
@@ -228,8 +240,10 @@ build.json @home-assistant/supervisor
/homeassistant/components/cups/ @fabaff
/homeassistant/components/daikin/ @fredrike
/tests/components/daikin/ @fredrike
/homeassistant/components/darksky/ @fabaff
/tests/components/darksky/ @fabaff
/homeassistant/components/date/ @home-assistant/core
/tests/components/date/ @home-assistant/core
/homeassistant/components/datetime/ @home-assistant/core
/tests/components/datetime/ @home-assistant/core
/homeassistant/components/debugpy/ @frenck
/tests/components/debugpy/ @frenck
/homeassistant/components/deconz/ @Kane610
@@ -263,8 +277,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/discogs/ @thibmaek
/homeassistant/components/discord/ @tkdrob
/tests/components/discord/ @tkdrob
/homeassistant/components/discovery/ @home-assistant/core
/tests/components/discovery/ @home-assistant/core
/homeassistant/components/discovergy/ @jpbede
/tests/components/discovergy/ @jpbede
/homeassistant/components/dlink/ @tkdrob
/tests/components/dlink/ @tkdrob
/homeassistant/components/dlna_dmr/ @StevenLooman @chishm
@@ -277,13 +291,16 @@ build.json @home-assistant/supervisor
/tests/components/doorbird/ @oblogic7 @bdraco @flacjacket
/homeassistant/components/dormakaba_dkey/ @emontnemery
/tests/components/dormakaba_dkey/ @emontnemery
/homeassistant/components/dremel_3d_printer/ @tkdrob
/tests/components/dremel_3d_printer/ @tkdrob
/homeassistant/components/dsmr/ @Robbie1221 @frenck
/tests/components/dsmr/ @Robbie1221 @frenck
/homeassistant/components/dsmr_reader/ @depl0y @glodenox
/tests/components/dsmr_reader/ @depl0y @glodenox
/homeassistant/components/dunehd/ @bieniu
/tests/components/dunehd/ @bieniu
/homeassistant/components/dwd_weather_warnings/ @runningman84 @stephan192 @Hummel95
/homeassistant/components/duotecno/ @cereal2nd
/tests/components/duotecno/ @cereal2nd
/homeassistant/components/dwd_weather_warnings/ @runningman84 @stephan192 @andarotajo
/tests/components/dwd_weather_warnings/ @runningman84 @stephan192 @andarotajo
/homeassistant/components/dynalite/ @ziv1234
/tests/components/dynalite/ @ziv1234
/homeassistant/components/eafm/ @Jc2k
@@ -292,6 +309,8 @@ build.json @home-assistant/supervisor
/tests/components/easyenergy/ @klaasnicolaas
/homeassistant/components/ecobee/ @marthoc @marcolivierarsenault
/tests/components/ecobee/ @marthoc @marcolivierarsenault
/homeassistant/components/ecoforest/ @pjanuario
/tests/components/ecoforest/ @pjanuario
/homeassistant/components/econet/ @vangorra @w1ll1am23
/tests/components/econet/ @vangorra @w1ll1am23
/homeassistant/components/ecovacs/ @OverloadUT @mib1185
@@ -302,6 +321,10 @@ build.json @home-assistant/supervisor
/homeassistant/components/egardia/ @jeroenterheerdt
/homeassistant/components/eight_sleep/ @mezz64 @raman325
/tests/components/eight_sleep/ @mezz64 @raman325
/homeassistant/components/electrasmart/ @jafar-atili
/tests/components/electrasmart/ @jafar-atili
/homeassistant/components/electric_kiwi/ @mikey0000
/tests/components/electric_kiwi/ @mikey0000
/homeassistant/components/elgato/ @frenck
/tests/components/elgato/ @frenck
/homeassistant/components/elkm1/ @gwww @bdraco
@@ -324,8 +347,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/enigma2/ @fbradyirl
/homeassistant/components/enocean/ @bdurrer
/tests/components/enocean/ @bdurrer
/homeassistant/components/enphase_envoy/ @gtdiehl
/tests/components/enphase_envoy/ @gtdiehl
/homeassistant/components/enphase_envoy/ @bdraco @cgarwood @dgomes @joostlek
/tests/components/enphase_envoy/ @bdraco @cgarwood @dgomes @joostlek
/homeassistant/components/entur_public_transport/ @hfurubotten
/homeassistant/components/environment_canada/ @gwww @michaeldavie
/tests/components/environment_canada/ @gwww @michaeldavie
@@ -337,10 +360,12 @@ build.json @home-assistant/supervisor
/homeassistant/components/eq3btsmart/ @rytilahti
/homeassistant/components/escea/ @lazdavila
/tests/components/escea/ @lazdavila
/homeassistant/components/esphome/ @OttoWinter @jesserockz
/tests/components/esphome/ @OttoWinter @jesserockz
/homeassistant/components/esphome/ @OttoWinter @jesserockz @kbx81 @bdraco
/tests/components/esphome/ @OttoWinter @jesserockz @kbx81 @bdraco
/homeassistant/components/eufylife_ble/ @bdr99
/tests/components/eufylife_ble/ @bdr99
/homeassistant/components/event/ @home-assistant/core
/tests/components/event/ @home-assistant/core
/homeassistant/components/evil_genius_labs/ @balloob
/tests/components/evil_genius_labs/ @balloob
/homeassistant/components/evohome/ @zxdavb
@@ -365,6 +390,8 @@ build.json @home-assistant/supervisor
/tests/components/fireservicerota/ @cyberjunky
/homeassistant/components/firmata/ @DaAwesomeP
/tests/components/firmata/ @DaAwesomeP
/homeassistant/components/fitbit/ @allenporter
/tests/components/fitbit/ @allenporter
/homeassistant/components/fivem/ @Sander0542
/tests/components/fivem/ @Sander0542
/homeassistant/components/fjaraskupan/ @elupus
@@ -377,8 +404,8 @@ build.json @home-assistant/supervisor
/tests/components/flo/ @dmulcahey
/homeassistant/components/flume/ @ChrisMandich @bdraco @jeeftor
/tests/components/flume/ @ChrisMandich @bdraco @jeeftor
/homeassistant/components/flux_led/ @icemanch @bdraco
/tests/components/flux_led/ @icemanch @bdraco
/homeassistant/components/flux_led/ @icemanch
/tests/components/flux_led/ @icemanch
/homeassistant/components/forecast_solar/ @klaasnicolaas @frenck
/tests/components/forecast_solar/ @klaasnicolaas @frenck
/homeassistant/components/forked_daapd/ @uvjustin
@@ -401,10 +428,13 @@ build.json @home-assistant/supervisor
/homeassistant/components/frontend/ @home-assistant/frontend
/tests/components/frontend/ @home-assistant/frontend
/homeassistant/components/frontier_silicon/ @wlcrs
/tests/components/frontier_silicon/ @wlcrs
/homeassistant/components/fully_kiosk/ @cgarwood
/tests/components/fully_kiosk/ @cgarwood
/homeassistant/components/garages_amsterdam/ @klaasnicolaas
/tests/components/garages_amsterdam/ @klaasnicolaas
/homeassistant/components/gardena_bluetooth/ @elupus
/tests/components/gardena_bluetooth/ @elupus
/homeassistant/components/gdacs/ @exxamalte
/tests/components/gdacs/ @exxamalte
/homeassistant/components/generic/ @davet2001
@@ -432,8 +462,8 @@ build.json @home-assistant/supervisor
/tests/components/glances/ @engrbm87
/homeassistant/components/goalzero/ @tkdrob
/tests/components/goalzero/ @tkdrob
/homeassistant/components/gogogate2/ @vangorra @bdraco
/tests/components/gogogate2/ @vangorra @bdraco
/homeassistant/components/gogogate2/ @vangorra
/tests/components/gogogate2/ @vangorra
/homeassistant/components/goodwe/ @mletenay @starkillerOG
/tests/components/goodwe/ @mletenay @starkillerOG
/homeassistant/components/google/ @allenporter
@@ -443,6 +473,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/google_assistant_sdk/ @tronikos
/tests/components/google_assistant_sdk/ @tronikos
/homeassistant/components/google_cloud/ @lufton
/homeassistant/components/google_generative_ai_conversation/ @tronikos
/tests/components/google_generative_ai_conversation/ @tronikos
/homeassistant/components/google_mail/ @tkdrob
/tests/components/google_mail/ @tkdrob
/homeassistant/components/google_sheets/ @tkdrob
@@ -497,6 +529,8 @@ build.json @home-assistant/supervisor
/tests/components/homeassistant/ @home-assistant/core
/homeassistant/components/homeassistant_alerts/ @home-assistant/core
/tests/components/homeassistant_alerts/ @home-assistant/core
/homeassistant/components/homeassistant_green/ @home-assistant/core
/tests/components/homeassistant_green/ @home-assistant/core
/homeassistant/components/homeassistant_hardware/ @home-assistant/core
/tests/components/homeassistant_hardware/ @home-assistant/core
/homeassistant/components/homeassistant_sky_connect/ @home-assistant/core
@@ -527,7 +561,8 @@ build.json @home-assistant/supervisor
/tests/components/hunterdouglas_powerview/ @bdraco @kingy444 @trullock
/homeassistant/components/hvv_departures/ @vigonotion
/tests/components/hvv_departures/ @vigonotion
/homeassistant/components/hydrawise/ @ptcryan
/homeassistant/components/hydrawise/ @dknowles2 @ptcryan
/tests/components/hydrawise/ @dknowles2 @ptcryan
/homeassistant/components/hyperion/ @dermotduffy
/tests/components/hyperion/ @dermotduffy
/homeassistant/components/ialarm/ @RyuzakiKK
@@ -539,14 +574,18 @@ build.json @home-assistant/supervisor
/tests/components/ibeacon/ @bdraco
/homeassistant/components/icloud/ @Quentame @nzapponi
/tests/components/icloud/ @Quentame @nzapponi
/homeassistant/components/idasen_desk/ @abmantis
/tests/components/idasen_desk/ @abmantis
/homeassistant/components/ign_sismologia/ @exxamalte
/tests/components/ign_sismologia/ @exxamalte
/homeassistant/components/image/ @home-assistant/core
/tests/components/image/ @home-assistant/core
/homeassistant/components/image_processing/ @home-assistant/core
/tests/components/image_processing/ @home-assistant/core
/homeassistant/components/image_upload/ @home-assistant/core
/tests/components/image_upload/ @home-assistant/core
/homeassistant/components/imap/ @engrbm87
/tests/components/imap/ @engrbm87
/homeassistant/components/imap/ @jbouwh
/tests/components/imap/ @jbouwh
/homeassistant/components/incomfort/ @zxdavb
/homeassistant/components/influxdb/ @mdegat01
/tests/components/influxdb/ @mdegat01
@@ -578,8 +617,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/iotawatt/ @gtdiehl @jyavenard
/tests/components/iotawatt/ @gtdiehl @jyavenard
/homeassistant/components/iperf3/ @rohankapoorcom
/homeassistant/components/ipma/ @dgomes @abmantis
/tests/components/ipma/ @dgomes @abmantis
/homeassistant/components/ipma/ @dgomes
/tests/components/ipma/ @dgomes
/homeassistant/components/ipp/ @ctalkington
/tests/components/ipp/ @ctalkington
/homeassistant/components/iqvia/ @bachya
@@ -601,6 +640,8 @@ build.json @home-assistant/supervisor
/tests/components/juicenet/ @jesserockz
/homeassistant/components/justnimbus/ @kvanzuijlen
/tests/components/justnimbus/ @kvanzuijlen
/homeassistant/components/jvc_projector/ @SteveEasley
/tests/components/jvc_projector/ @SteveEasley
/homeassistant/components/kaiterra/ @Michsior14
/homeassistant/components/kaleidescape/ @SteveEasley
/tests/components/kaleidescape/ @SteveEasley
@@ -635,10 +676,14 @@ build.json @home-assistant/supervisor
/tests/components/lametric/ @robbiet480 @frenck @bachya
/homeassistant/components/landisgyr_heat_meter/ @vpathuis
/tests/components/landisgyr_heat_meter/ @vpathuis
/homeassistant/components/lastfm/ @joostlek
/tests/components/lastfm/ @joostlek
/homeassistant/components/launch_library/ @ludeeus @DurgNomis-drol
/tests/components/launch_library/ @ludeeus @DurgNomis-drol
/homeassistant/components/laundrify/ @xLarry
/tests/components/laundrify/ @xLarry
/homeassistant/components/lawn_mower/ @home-assistant/core
/tests/components/lawn_mower/ @home-assistant/core
/homeassistant/components/lcn/ @alengwenus
/tests/components/lcn/ @alengwenus
/homeassistant/components/ld2410_ble/ @930913
@@ -650,8 +695,6 @@ build.json @home-assistant/supervisor
/tests/components/lidarr/ @tkdrob
/homeassistant/components/life360/ @pnbruckner
/tests/components/life360/ @pnbruckner
/homeassistant/components/lifx/ @bdraco @Djelibeybi
/tests/components/lifx/ @bdraco @Djelibeybi
/homeassistant/components/light/ @home-assistant/core
/tests/components/light/ @home-assistant/core
/homeassistant/components/linux_battery/ @fabaff
@@ -659,8 +702,8 @@ build.json @home-assistant/supervisor
/tests/components/litejet/ @joncar
/homeassistant/components/litterrobot/ @natekspencer @tkdrob
/tests/components/litterrobot/ @natekspencer @tkdrob
/homeassistant/components/livisi/ @StefanIacobLivisi
/tests/components/livisi/ @StefanIacobLivisi
/homeassistant/components/livisi/ @StefanIacobLivisi @planbnet
/tests/components/livisi/ @StefanIacobLivisi @planbnet
/homeassistant/components/local_calendar/ @allenporter
/tests/components/local_calendar/ @allenporter
/homeassistant/components/local_ip/ @issacg
@@ -673,8 +716,12 @@ build.json @home-assistant/supervisor
/tests/components/logger/ @home-assistant/core
/homeassistant/components/logi_circle/ @evanjd
/tests/components/logi_circle/ @evanjd
/homeassistant/components/london_underground/ @jpbede
/tests/components/london_underground/ @jpbede
/homeassistant/components/lookin/ @ANMalko @bdraco
/tests/components/lookin/ @ANMalko @bdraco
/homeassistant/components/loqed/ @mikewoudenberg
/tests/components/loqed/ @mikewoudenberg
/homeassistant/components/lovelace/ @home-assistant/frontend
/tests/components/lovelace/ @home-assistant/frontend
/homeassistant/components/luci/ @mzdrale
@@ -687,12 +734,18 @@ build.json @home-assistant/supervisor
/homeassistant/components/lyric/ @timmo001
/tests/components/lyric/ @timmo001
/homeassistant/components/mastodon/ @fabaff
/homeassistant/components/matrix/ @PaarthShah
/tests/components/matrix/ @PaarthShah
/homeassistant/components/matter/ @home-assistant/matter
/tests/components/matter/ @home-assistant/matter
/homeassistant/components/mazda/ @bdr99
/tests/components/mazda/ @bdr99
/homeassistant/components/meater/ @Sotolotl @emontnemery
/tests/components/meater/ @Sotolotl @emontnemery
/homeassistant/components/medcom_ble/ @elafargue
/tests/components/medcom_ble/ @elafargue
/homeassistant/components/media_extractor/ @joostlek
/tests/components/media_extractor/ @joostlek
/homeassistant/components/media_player/ @home-assistant/core
/tests/components/media_player/ @home-assistant/core
/homeassistant/components/media_source/ @hunterjm
@@ -715,7 +768,6 @@ build.json @home-assistant/supervisor
/tests/components/meteoclimatic/ @adrianmo
/homeassistant/components/metoffice/ @MrHarcombe @avee87
/tests/components/metoffice/ @MrHarcombe @avee87
/homeassistant/components/miflora/ @danielhiversen @basnijholt
/homeassistant/components/mikrotik/ @engrbm87
/tests/components/mikrotik/ @engrbm87
/homeassistant/components/mill/ @danielhiversen
@@ -730,8 +782,8 @@ build.json @home-assistant/supervisor
/tests/components/moat/ @bdraco
/homeassistant/components/mobile_app/ @home-assistant/core
/tests/components/mobile_app/ @home-assistant/core
/homeassistant/components/modbus/ @adamchengtkc @janiversen @vzahradnik
/tests/components/modbus/ @adamchengtkc @janiversen @vzahradnik
/homeassistant/components/modbus/ @janiversen
/tests/components/modbus/ @janiversen
/homeassistant/components/modem_callerid/ @tkdrob
/tests/components/modem_callerid/ @tkdrob
/homeassistant/components/modern_forms/ @wonderslug
@@ -757,11 +809,12 @@ build.json @home-assistant/supervisor
/tests/components/mutesync/ @currentoor
/homeassistant/components/my/ @home-assistant/core
/tests/components/my/ @home-assistant/core
/homeassistant/components/myq/ @bdraco @ehendrix23
/tests/components/myq/ @bdraco @ehendrix23
/homeassistant/components/myq/ @ehendrix23 @Lash-L
/tests/components/myq/ @ehendrix23 @Lash-L
/homeassistant/components/mysensors/ @MartinHjelmare @functionpointer
/tests/components/mysensors/ @MartinHjelmare @functionpointer
/homeassistant/components/mystrom/ @fabaff
/tests/components/mystrom/ @fabaff
/homeassistant/components/nam/ @bieniu
/tests/components/nam/ @bieniu
/homeassistant/components/nanoleaf/ @milanmeu
@@ -778,13 +831,15 @@ build.json @home-assistant/supervisor
/homeassistant/components/netdata/ @fabaff
/homeassistant/components/netgear/ @hacf-fr @Quentame @starkillerOG
/tests/components/netgear/ @hacf-fr @Quentame @starkillerOG
/homeassistant/components/netgear_lte/ @tkdrob
/homeassistant/components/network/ @home-assistant/core
/tests/components/network/ @home-assistant/core
/homeassistant/components/nexia/ @bdraco
/tests/components/nexia/ @bdraco
/homeassistant/components/nextbus/ @vividboarder
/tests/components/nextbus/ @vividboarder
/homeassistant/components/nextcloud/ @meichthys
/homeassistant/components/nextcloud/ @mib1185
/tests/components/nextcloud/ @mib1185
/homeassistant/components/nextdns/ @bieniu
/tests/components/nextdns/ @bieniu
/homeassistant/components/nfandroidtv/ @tkdrob
@@ -819,8 +874,8 @@ build.json @home-assistant/supervisor
/tests/components/numato/ @clssn
/homeassistant/components/number/ @home-assistant/core @Shulyaka
/tests/components/number/ @home-assistant/core @Shulyaka
/homeassistant/components/nut/ @bdraco @ollo69
/tests/components/nut/ @bdraco @ollo69
/homeassistant/components/nut/ @bdraco @ollo69 @pestevez
/tests/components/nut/ @bdraco @ollo69 @pestevez
/homeassistant/components/nws/ @MatthewFlamm @kamiyo
/tests/components/nws/ @MatthewFlamm @kamiyo
/homeassistant/components/nzbget/ @chriscla
@@ -854,6 +909,9 @@ build.json @home-assistant/supervisor
/homeassistant/components/opengarage/ @danielhiversen
/tests/components/opengarage/ @danielhiversen
/homeassistant/components/openhome/ @bazwilliams
/tests/components/openhome/ @bazwilliams
/homeassistant/components/opensky/ @joostlek
/tests/components/opensky/ @joostlek
/homeassistant/components/opentherm_gw/ @mvn23
/tests/components/opentherm_gw/ @mvn23
/homeassistant/components/openuv/ @bachya
@@ -862,6 +920,8 @@ build.json @home-assistant/supervisor
/tests/components/openweathermap/ @fabaff @freekode @nzapponi
/homeassistant/components/opnsense/ @mtreinish
/tests/components/opnsense/ @mtreinish
/homeassistant/components/opower/ @tronikos
/tests/components/opower/ @tronikos
/homeassistant/components/oralb/ @bdraco @Lash-L
/tests/components/oralb/ @bdraco @Lash-L
/homeassistant/components/oru/ @bvlaicu
@@ -879,6 +939,8 @@ build.json @home-assistant/supervisor
/tests/components/panel_iframe/ @home-assistant/frontend
/homeassistant/components/peco/ @IceBotYT
/tests/components/peco/ @IceBotYT
/homeassistant/components/pegel_online/ @mib1185
/tests/components/pegel_online/ @mib1185
/homeassistant/components/persistent_notification/ @home-assistant/core
/tests/components/persistent_notification/ @home-assistant/core
/homeassistant/components/philips_js/ @elupus
@@ -893,8 +955,8 @@ build.json @home-assistant/supervisor
/tests/components/plaato/ @JohNan
/homeassistant/components/plex/ @jjlawren
/tests/components/plex/ @jjlawren
/homeassistant/components/plugwise/ @CoMPaTech @bouwew @brefra @frenck
/tests/components/plugwise/ @CoMPaTech @bouwew @brefra @frenck
/homeassistant/components/plugwise/ @CoMPaTech @bouwew @frenck
/tests/components/plugwise/ @CoMPaTech @bouwew @frenck
/homeassistant/components/plum_lightpad/ @ColinHarrington @prystupa
/tests/components/plum_lightpad/ @ColinHarrington @prystupa
/homeassistant/components/point/ @fredrike
@@ -903,6 +965,8 @@ build.json @home-assistant/supervisor
/tests/components/poolsense/ @haemishkyd
/homeassistant/components/powerwall/ @bdraco @jrester @daniel-simpson
/tests/components/powerwall/ @bdraco @jrester @daniel-simpson
/homeassistant/components/private_ble_device/ @Jc2k
/tests/components/private_ble_device/ @Jc2k
/homeassistant/components/profiler/ @bdraco
/tests/components/profiler/ @bdraco
/homeassistant/components/progettihwsw/ @ardaseremet
@@ -931,10 +995,13 @@ build.json @home-assistant/supervisor
/homeassistant/components/pvpc_hourly_pricing/ @azogue
/tests/components/pvpc_hourly_pricing/ @azogue
/homeassistant/components/qbittorrent/ @geoffreylagaisse
/tests/components/qbittorrent/ @geoffreylagaisse
/homeassistant/components/qingping/ @bdraco @skgsergio
/tests/components/qingping/ @bdraco @skgsergio
/homeassistant/components/qld_bushfire/ @exxamalte
/tests/components/qld_bushfire/ @exxamalte
/homeassistant/components/qnap/ @disforw
/tests/components/qnap/ @disforw
/homeassistant/components/qnap_qsw/ @Noltari
/tests/components/qnap_qsw/ @Noltari
/homeassistant/components/quantum_gateway/ @cisasteelersfan
@@ -947,8 +1014,8 @@ build.json @home-assistant/supervisor
/tests/components/radarr/ @tkdrob
/homeassistant/components/radio_browser/ @frenck
/tests/components/radio_browser/ @frenck
/homeassistant/components/radiotherm/ @bdraco @vinnyfuria
/tests/components/radiotherm/ @bdraco @vinnyfuria
/homeassistant/components/radiotherm/ @vinnyfuria
/tests/components/radiotherm/ @vinnyfuria
/homeassistant/components/rainbird/ @konikvranik @allenporter
/tests/components/rainbird/ @konikvranik @allenporter
/homeassistant/components/raincloud/ @vanstinator
@@ -958,10 +1025,12 @@ build.json @home-assistant/supervisor
/tests/components/rainmachine/ @bachya
/homeassistant/components/random/ @fabaff
/tests/components/random/ @fabaff
/homeassistant/components/rapt_ble/ @sairon
/tests/components/rapt_ble/ @sairon
/homeassistant/components/raspberry_pi/ @home-assistant/core
/tests/components/raspberry_pi/ @home-assistant/core
/homeassistant/components/rdw/ @frenck
/tests/components/rdw/ @frenck
/homeassistant/components/rdw/ @frenck @joostlek
/tests/components/rdw/ @frenck @joostlek
/homeassistant/components/recollect_waste/ @bachya
/tests/components/recollect_waste/ @bachya
/homeassistant/components/recorder/ @home-assistant/core
@@ -971,6 +1040,8 @@ build.json @home-assistant/supervisor
/tests/components/remote/ @home-assistant/core
/homeassistant/components/renault/ @epenet
/tests/components/renault/ @epenet
/homeassistant/components/renson/ @jimmyd-be
/tests/components/renson/ @jimmyd-be
/homeassistant/components/reolink/ @starkillerOG
/tests/components/reolink/ @starkillerOG
/homeassistant/components/repairs/ @home-assistant/core
@@ -986,10 +1057,12 @@ build.json @home-assistant/supervisor
/tests/components/ridwell/ @bachya
/homeassistant/components/risco/ @OnFreund
/tests/components/risco/ @OnFreund
/homeassistant/components/rituals_perfume_genie/ @milanmeu
/tests/components/rituals_perfume_genie/ @milanmeu
/homeassistant/components/rituals_perfume_genie/ @milanmeu @frenck
/tests/components/rituals_perfume_genie/ @milanmeu @frenck
/homeassistant/components/rmvtransport/ @cgtobi
/tests/components/rmvtransport/ @cgtobi
/homeassistant/components/roborock/ @humbertogontijo @Lash-L
/tests/components/roborock/ @humbertogontijo @Lash-L
/homeassistant/components/roku/ @ctalkington
/tests/components/roku/ @ctalkington
/homeassistant/components/roomba/ @pschmitt @cyr-ius @shenxn
@@ -1002,8 +1075,8 @@ build.json @home-assistant/supervisor
/tests/components/rss_feed_template/ @home-assistant/core
/homeassistant/components/rtsp_to_webrtc/ @allenporter
/tests/components/rtsp_to_webrtc/ @allenporter
/homeassistant/components/ruckus_unleashed/ @gabe565
/tests/components/ruckus_unleashed/ @gabe565
/homeassistant/components/ruckus_unleashed/ @lanrat @ms264556 @gabe565
/tests/components/ruckus_unleashed/ @lanrat @ms264556 @gabe565
/homeassistant/components/ruuvi_gateway/ @akx
/tests/components/ruuvi_gateway/ @akx
/homeassistant/components/ruuvitag_ble/ @akx
@@ -1021,9 +1094,11 @@ build.json @home-assistant/supervisor
/tests/components/scene/ @home-assistant/core
/homeassistant/components/schedule/ @home-assistant/core
/tests/components/schedule/ @home-assistant/core
/homeassistant/components/schlage/ @dknowles2
/tests/components/schlage/ @dknowles2
/homeassistant/components/schluter/ @prairieapps
/homeassistant/components/scrape/ @fabaff @gjohansson-ST @epenet
/tests/components/scrape/ @fabaff @gjohansson-ST @epenet
/homeassistant/components/scrape/ @fabaff @gjohansson-ST
/tests/components/scrape/ @fabaff @gjohansson-ST
/homeassistant/components/screenlogic/ @dieselrabbit @bdraco
/tests/components/screenlogic/ @dieselrabbit @bdraco
/homeassistant/components/script/ @home-assistant/core
@@ -1036,8 +1111,6 @@ build.json @home-assistant/supervisor
/tests/components/select/ @home-assistant/core
/homeassistant/components/sense/ @kbickar
/tests/components/sense/ @kbickar
/homeassistant/components/senseme/ @mikelawrence @bdraco
/tests/components/senseme/ @mikelawrence @bdraco
/homeassistant/components/sensibo/ @andrey-git @gjohansson-ST
/tests/components/sensibo/ @andrey-git @gjohansson-ST
/homeassistant/components/sensirion_ble/ @akx
@@ -1056,8 +1129,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/seven_segments/ @fabaff
/homeassistant/components/sfr_box/ @epenet
/tests/components/sfr_box/ @epenet
/homeassistant/components/sharkiq/ @JeffResc @funkybunch @AritroSaha10
/tests/components/sharkiq/ @JeffResc @funkybunch @AritroSaha10
/homeassistant/components/sharkiq/ @JeffResc @funkybunch
/tests/components/sharkiq/ @JeffResc @funkybunch
/homeassistant/components/shell_command/ @home-assistant/core
/tests/components/shell_command/ @home-assistant/core
/homeassistant/components/shelly/ @balloob @bieniu @thecode @chemelli74 @bdraco
@@ -1080,8 +1153,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/sky_hub/ @rogerselwyn
/homeassistant/components/skybell/ @tkdrob
/tests/components/skybell/ @tkdrob
/homeassistant/components/slack/ @bachya @tkdrob
/tests/components/slack/ @bachya @tkdrob
/homeassistant/components/slack/ @tkdrob @fletcherau
/tests/components/slack/ @tkdrob @fletcherau
/homeassistant/components/sleepiq/ @mfugate1 @kbickar
/tests/components/sleepiq/ @mfugate1 @kbickar
/homeassistant/components/slide/ @ualex73
@@ -1101,6 +1174,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/smhi/ @gjohansson-ST
/tests/components/smhi/ @gjohansson-ST
/homeassistant/components/sms/ @ocalvo
/homeassistant/components/snapcast/ @luar123
/tests/components/snapcast/ @luar123
/homeassistant/components/snooz/ @AustinBrunkhorst
/tests/components/snooz/ @AustinBrunkhorst
/homeassistant/components/solaredge/ @frenck
@@ -1127,10 +1202,10 @@ build.json @home-assistant/supervisor
/homeassistant/components/spider/ @peternijssen
/tests/components/spider/ @peternijssen
/homeassistant/components/splunk/ @Bre77
/homeassistant/components/spotify/ @frenck
/tests/components/spotify/ @frenck
/homeassistant/components/sql/ @dgomes @gjohansson-ST
/tests/components/sql/ @dgomes @gjohansson-ST
/homeassistant/components/spotify/ @frenck @joostlek
/tests/components/spotify/ @frenck @joostlek
/homeassistant/components/sql/ @gjohansson-ST @dougiteixeira
/tests/components/sql/ @gjohansson-ST @dougiteixeira
/homeassistant/components/squeezebox/ @rajlaud
/tests/components/squeezebox/ @rajlaud
/homeassistant/components/srp_energy/ @briglx
@@ -1152,8 +1227,8 @@ build.json @home-assistant/supervisor
/tests/components/stookwijzer/ @fwestenberg
/homeassistant/components/stream/ @hunterjm @uvjustin @allenporter
/tests/components/stream/ @hunterjm @uvjustin @allenporter
/homeassistant/components/stt/ @pvizeli
/tests/components/stt/ @pvizeli
/homeassistant/components/stt/ @home-assistant/core @pvizeli
/tests/components/stt/ @home-assistant/core @pvizeli
/homeassistant/components/subaru/ @G-Two
/tests/components/subaru/ @G-Two
/homeassistant/components/suez_water/ @ooii
@@ -1170,10 +1245,12 @@ build.json @home-assistant/supervisor
/tests/components/switch_as_x/ @home-assistant/core
/homeassistant/components/switchbee/ @jafar-atili
/tests/components/switchbee/ @jafar-atili
/homeassistant/components/switchbot/ @bdraco @danielhiversen @RenierM26 @murtas @Eloston @dsypniewski
/tests/components/switchbot/ @bdraco @danielhiversen @RenierM26 @murtas @Eloston @dsypniewski
/homeassistant/components/switcher_kis/ @tomerfi @thecode
/tests/components/switcher_kis/ @tomerfi @thecode
/homeassistant/components/switchbot/ @danielhiversen @RenierM26 @murtas @Eloston @dsypniewski
/tests/components/switchbot/ @danielhiversen @RenierM26 @murtas @Eloston @dsypniewski
/homeassistant/components/switchbot_cloud/ @SeraphicRav
/tests/components/switchbot_cloud/ @SeraphicRav
/homeassistant/components/switcher_kis/ @thecode
/tests/components/switcher_kis/ @thecode
/homeassistant/components/switchmate/ @danielhiversen @qiz-li
/homeassistant/components/syncthing/ @zhulik
/tests/components/syncthing/ @zhulik
@@ -1184,8 +1261,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/synology_srm/ @aerialls
/homeassistant/components/system_bridge/ @timmo001
/tests/components/system_bridge/ @timmo001
/homeassistant/components/tado/ @michaelarnauts
/tests/components/tado/ @michaelarnauts
/homeassistant/components/tado/ @michaelarnauts @chiefdragon
/tests/components/tado/ @michaelarnauts @chiefdragon
/homeassistant/components/tag/ @balloob @dmulcahey
/tests/components/tag/ @balloob @dmulcahey
/homeassistant/components/tailscale/ @frenck
@@ -1213,14 +1290,14 @@ build.json @home-assistant/supervisor
/homeassistant/components/thethingsnetwork/ @fabaff
/homeassistant/components/thread/ @home-assistant/core
/tests/components/thread/ @home-assistant/core
/homeassistant/components/threshold/ @fabaff
/tests/components/threshold/ @fabaff
/homeassistant/components/tibber/ @danielhiversen
/tests/components/tibber/ @danielhiversen
/homeassistant/components/tile/ @bachya
/tests/components/tile/ @bachya
/homeassistant/components/tilt_ble/ @apt-itude
/tests/components/tilt_ble/ @apt-itude
/homeassistant/components/time/ @home-assistant/core
/tests/components/time/ @home-assistant/core
/homeassistant/components/time_date/ @fabaff
/tests/components/time_date/ @fabaff
/homeassistant/components/tmb/ @alemuro
@@ -1242,6 +1319,8 @@ build.json @home-assistant/supervisor
/tests/components/trace/ @home-assistant/core
/homeassistant/components/tractive/ @Danielhiversen @zhulik @bieniu
/tests/components/tractive/ @Danielhiversen @zhulik @bieniu
/homeassistant/components/trafikverket_camera/ @gjohansson-ST
/tests/components/trafikverket_camera/ @gjohansson-ST
/homeassistant/components/trafikverket_ferry/ @gjohansson-ST
/tests/components/trafikverket_ferry/ @gjohansson-ST
/homeassistant/components/trafikverket_train/ @endor-force @gjohansson-ST
@@ -1250,21 +1329,25 @@ build.json @home-assistant/supervisor
/tests/components/trafikverket_weatherstation/ @endor-force @gjohansson-ST
/homeassistant/components/transmission/ @engrbm87 @JPHutchins
/tests/components/transmission/ @engrbm87 @JPHutchins
/homeassistant/components/tts/ @pvizeli
/tests/components/tts/ @pvizeli
/homeassistant/components/trend/ @jpbede
/tests/components/trend/ @jpbede
/homeassistant/components/tts/ @home-assistant/core @pvizeli
/tests/components/tts/ @home-assistant/core @pvizeli
/homeassistant/components/tuya/ @Tuya @zlinoliver @frenck
/tests/components/tuya/ @Tuya @zlinoliver @frenck
/homeassistant/components/twentemilieu/ @frenck
/tests/components/twentemilieu/ @frenck
/homeassistant/components/twinkly/ @dr1rrb @Robbie1221
/tests/components/twinkly/ @dr1rrb @Robbie1221
/homeassistant/components/twinkly/ @dr1rrb @Robbie1221 @Olen
/tests/components/twinkly/ @dr1rrb @Robbie1221 @Olen
/homeassistant/components/twitch/ @joostlek
/tests/components/twitch/ @joostlek
/homeassistant/components/ukraine_alarm/ @PaulAnnekov
/tests/components/ukraine_alarm/ @PaulAnnekov
/homeassistant/components/unifi/ @Kane610
/tests/components/unifi/ @Kane610
/homeassistant/components/unifiled/ @florisvdk
/homeassistant/components/unifiprotect/ @briis @AngellusMortis @bdraco
/tests/components/unifiprotect/ @briis @AngellusMortis @bdraco
/homeassistant/components/unifiprotect/ @AngellusMortis @bdraco
/tests/components/unifiprotect/ @AngellusMortis @bdraco
/homeassistant/components/upb/ @gwww
/tests/components/upb/ @gwww
/homeassistant/components/upc_connect/ @pvizeli @fabaff
@@ -1291,17 +1374,15 @@ build.json @home-assistant/supervisor
/homeassistant/components/velbus/ @Cereal2nd @brefra
/tests/components/velbus/ @Cereal2nd @brefra
/homeassistant/components/velux/ @Julius2342
/homeassistant/components/venstar/ @garbled1
/tests/components/venstar/ @garbled1
/homeassistant/components/venstar/ @garbled1 @jhollowe
/tests/components/venstar/ @garbled1 @jhollowe
/homeassistant/components/verisure/ @frenck
/tests/components/verisure/ @frenck
/homeassistant/components/versasense/ @flamm3blemuff1n
/homeassistant/components/versasense/ @imstevenxyz
/homeassistant/components/version/ @ludeeus
/tests/components/version/ @ludeeus
/homeassistant/components/vesync/ @markperdue @webdjoe @thegardenmonkey
/tests/components/vesync/ @markperdue @webdjoe @thegardenmonkey
/homeassistant/components/vicare/ @oischinger
/tests/components/vicare/ @oischinger
/homeassistant/components/vilfo/ @ManneW
/tests/components/vilfo/ @ManneW
/homeassistant/components/vivotek/ @HarlemSquirrel
@@ -1309,6 +1390,10 @@ build.json @home-assistant/supervisor
/tests/components/vizio/ @raman325
/homeassistant/components/vlc_telnet/ @rodripf @MartinHjelmare
/tests/components/vlc_telnet/ @rodripf @MartinHjelmare
/homeassistant/components/vodafone_station/ @paoloantinori @chemelli74
/tests/components/vodafone_station/ @paoloantinori @chemelli74
/homeassistant/components/voip/ @balloob @synesthesiam
/tests/components/voip/ @balloob @synesthesiam
/homeassistant/components/volumio/ @OnFreund
/tests/components/volumio/ @OnFreund
/homeassistant/components/volvooncall/ @molobrakos
@@ -1317,9 +1402,12 @@ build.json @home-assistant/supervisor
/tests/components/vulcan/ @Antoni-Czaplicki
/homeassistant/components/wake_on_lan/ @ntilley905
/tests/components/wake_on_lan/ @ntilley905
/homeassistant/components/wake_word/ @home-assistant/core @synesthesiam
/tests/components/wake_word/ @home-assistant/core @synesthesiam
/homeassistant/components/wallbox/ @hesselonline
/tests/components/wallbox/ @hesselonline
/homeassistant/components/waqi/ @andrey-git
/homeassistant/components/waqi/ @joostlek
/tests/components/waqi/ @joostlek
/homeassistant/components/water_heater/ @home-assistant/core
/tests/components/water_heater/ @home-assistant/core
/homeassistant/components/watson_tts/ @rutkai
@@ -1329,6 +1417,10 @@ build.json @home-assistant/supervisor
/tests/components/waze_travel_time/ @eifinger
/homeassistant/components/weather/ @home-assistant/core
/tests/components/weather/ @home-assistant/core
/homeassistant/components/weatherflow/ @natekspencer @jeeftor
/tests/components/weatherflow/ @natekspencer @jeeftor
/homeassistant/components/weatherkit/ @tjhorner
/tests/components/weatherkit/ @tjhorner
/homeassistant/components/webhook/ @home-assistant/core
/tests/components/webhook/ @home-assistant/core
/homeassistant/components/webostv/ @thecode
@@ -1346,23 +1438,24 @@ build.json @home-assistant/supervisor
/homeassistant/components/wilight/ @leofig-rj
/tests/components/wilight/ @leofig-rj
/homeassistant/components/wirelesstag/ @sergeymaysak
/homeassistant/components/withings/ @vangorra
/tests/components/withings/ @vangorra
/homeassistant/components/withings/ @vangorra @joostlek
/tests/components/withings/ @vangorra @joostlek
/homeassistant/components/wiz/ @sbidy
/tests/components/wiz/ @sbidy
/homeassistant/components/wled/ @frenck
/tests/components/wled/ @frenck
/homeassistant/components/wolflink/ @adamkrol93
/tests/components/wolflink/ @adamkrol93
/homeassistant/components/workday/ @fabaff
/tests/components/workday/ @fabaff
/homeassistant/components/workday/ @fabaff @gjohansson-ST
/tests/components/workday/ @fabaff @gjohansson-ST
/homeassistant/components/worldclock/ @fabaff
/tests/components/worldclock/ @fabaff
/homeassistant/components/ws66i/ @ssaenger
/tests/components/ws66i/ @ssaenger
/homeassistant/components/wyoming/ @balloob @synesthesiam
/tests/components/wyoming/ @balloob @synesthesiam
/homeassistant/components/xbox/ @hunterjm
/tests/components/xbox/ @hunterjm
/homeassistant/components/xbox_live/ @MartinHjelmare
/homeassistant/components/xiaomi_aqara/ @danielhiversen @syssi
/tests/components/xiaomi_aqara/ @danielhiversen @syssi
/homeassistant/components/xiaomi_ble/ @Jc2k @Ernst79
@@ -1379,6 +1472,8 @@ build.json @home-assistant/supervisor
/tests/components/yamaha_musiccast/ @vigonotion @micha91
/homeassistant/components/yandex_transport/ @rishatik92 @devbis
/tests/components/yandex_transport/ @rishatik92 @devbis
/homeassistant/components/yardian/ @h3l1o5
/tests/components/yardian/ @h3l1o5
/homeassistant/components/yeelight/ @zewelor @shenxn @starkillerOG @alexyao2015
/tests/components/yeelight/ @zewelor @shenxn @starkillerOG @alexyao2015
/homeassistant/components/yeelightsunflower/ @lindsaymarkward
@@ -1387,6 +1482,8 @@ build.json @home-assistant/supervisor
/tests/components/yolink/ @matrixd2
/homeassistant/components/youless/ @gjong
/tests/components/youless/ @gjong
/homeassistant/components/youtube/ @joostlek
/tests/components/youtube/ @joostlek
/homeassistant/components/zamg/ @killer0071234
/tests/components/zamg/ @killer0071234
/homeassistant/components/zengge/ @emontnemery

View File

@@ -132,8 +132,8 @@ For answers to common questions about this code of conduct, see the FAQ at
<https://www.contributor-covenant.org/faq>. Translations are available at
<https://www.contributor-covenant.org/translations>.
[coc-blog]: /blog/2017/01/21/home-assistant-governance/
[coc2-blog]: /blog/2020/05/25/code-of-conduct-updated/
[coc-blog]: https://www.home-assistant.io/blog/2017/01/21/home-assistant-governance/
[coc2-blog]: https://www.home-assistant.io/blog/2020/05/25/code-of-conduct-updated/
[email]: mailto:safety@home-assistant.io
[homepage]: http://contributor-covenant.org
[mozilla]: https://github.com/mozilla/diversity

View File

@@ -15,10 +15,8 @@ COPY homeassistant/package_constraints.txt homeassistant/homeassistant/
RUN \
pip3 install \
--no-cache-dir \
--no-index \
--only-binary=:all: \
--find-links "${WHEELS_LINKS}" \
--use-deprecated=legacy-resolver \
--index-url "https://wheels.home-assistant.io/musllinux-index/" \
-r homeassistant/requirements.txt
COPY requirements_all.txt home_assistant_frontend-* home_assistant_intents-* homeassistant/
@@ -40,10 +38,8 @@ RUN \
MALLOC_CONF="background_thread:true,metadata_thp:auto,dirty_decay_ms:20000,muzzy_decay_ms:20000" \
pip3 install \
--no-cache-dir \
--no-index \
--only-binary=:all: \
--find-links "${WHEELS_LINKS}" \
--use-deprecated=legacy-resolver \
--index-url "https://wheels.home-assistant.io/musllinux-index/" \
-r homeassistant/requirements_all.txt
## Setup Home Assistant Core
@@ -51,10 +47,8 @@ COPY . homeassistant/
RUN \
pip3 install \
--no-cache-dir \
--no-index \
--only-binary=:all: \
--find-links "${WHEELS_LINKS}" \
--use-deprecated=legacy-resolver \
--index-url "https://wheels.home-assistant.io/musllinux-index/" \
-e ./homeassistant \
&& python3 -m compileall \
homeassistant/homeassistant

View File

@@ -1,15 +1,15 @@
FROM mcr.microsoft.com/vscode/devcontainers/python:0-3.10
FROM mcr.microsoft.com/vscode/devcontainers/python:0-3.11
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
# Uninstall pre-installed formatting and linting tools
# They would conflict with our pinned versions
RUN pipx uninstall black
RUN pipx uninstall flake8
RUN pipx uninstall pydocstyle
RUN pipx uninstall pycodestyle
RUN pipx uninstall mypy
RUN pipx uninstall pylint
RUN \
pipx uninstall black \
&& pipx uninstall pydocstyle \
&& pipx uninstall pycodestyle \
&& pipx uninstall mypy \
&& pipx uninstall pylint
RUN \
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
@@ -45,9 +45,9 @@ WORKDIR /workspaces
# Install Python dependencies from requirements
COPY requirements.txt ./
COPY homeassistant/package_constraints.txt homeassistant/package_constraints.txt
RUN pip3 install -r requirements.txt --use-deprecated=legacy-resolver
RUN pip3 install -r requirements.txt
COPY requirements_test.txt requirements_test_pre_commit.txt ./
RUN pip3 install -r requirements_test.txt --use-deprecated=legacy-resolver
RUN pip3 install -r requirements_test.txt
RUN rm -rf requirements.txt requirements_test.txt requirements_test_pre_commit.txt homeassistant/
# Set the default shell to bash instead of sh

View File

@@ -4,7 +4,7 @@ Home Assistant |Chat Status|
Open source home automation that puts local control and privacy first. Powered by a worldwide community of tinkerers and DIY enthusiasts. Perfect to run on a Raspberry Pi or a local server.
Check out `home-assistant.io <https://home-assistant.io>`__ for `a
demo <https://home-assistant.io/demo/>`__, `installation instructions <https://home-assistant.io/getting-started/>`__,
demo <https://demo.home-assistant.io>`__, `installation instructions <https://home-assistant.io/getting-started/>`__,
`tutorials <https://home-assistant.io/getting-started/automation/>`__ and `documentation <https://home-assistant.io/docs/>`__.
|screenshot-states|
@@ -21,8 +21,8 @@ If you run into issues while using Home Assistant or during development
of a component, check the `Home Assistant help section <https://home-assistant.io/help/>`__ of our website for further help and information.
.. |Chat Status| image:: https://img.shields.io/discord/330944238910963714.svg
:target: https://discord.gg/c5DvZ4e
:target: https://www.home-assistant.io/join-chat/
.. |screenshot-states| image:: https://raw.githubusercontent.com/home-assistant/core/master/docs/screenshots.png
:target: https://home-assistant.io/demo/
:target: https://demo.home-assistant.io
.. |screenshot-integrations| image:: https://raw.githubusercontent.com/home-assistant/core/dev/docs/screenshot-integrations.png
:target: https://home-assistant.io/integrations/

View File

@@ -1,14 +1,16 @@
image: homeassistant/{arch}-homeassistant
shadow_repository: ghcr.io/home-assistant
image: ghcr.io/home-assistant/{arch}-homeassistant
build_from:
aarch64: ghcr.io/home-assistant/aarch64-homeassistant-base:2023.02.0
armhf: ghcr.io/home-assistant/armhf-homeassistant-base:2023.02.0
armv7: ghcr.io/home-assistant/armv7-homeassistant-base:2023.02.0
amd64: ghcr.io/home-assistant/amd64-homeassistant-base:2023.02.0
i386: ghcr.io/home-assistant/i386-homeassistant-base:2023.02.0
aarch64: ghcr.io/home-assistant/aarch64-homeassistant-base:2023.09.0
armhf: ghcr.io/home-assistant/armhf-homeassistant-base:2023.09.0
armv7: ghcr.io/home-assistant/armv7-homeassistant-base:2023.09.0
amd64: ghcr.io/home-assistant/amd64-homeassistant-base:2023.09.0
i386: ghcr.io/home-assistant/i386-homeassistant-base:2023.09.0
codenotary:
signer: notary@home-assistant.io
base_image: notary@home-assistant.io
cosign:
base_identity: https://github.com/home-assistant/docker/.*
identity: https://github.com/home-assistant/core/.*
labels:
io.hass.type: core
org.opencontainers.image.title: Home Assistant

Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 174 KiB

View File

@@ -148,16 +148,6 @@ def get_arguments() -> argparse.Namespace:
return arguments
def cmdline() -> list[str]:
"""Collect path and arguments to re-execute the current hass instance."""
if os.path.basename(sys.argv[0]) == "__main__.py":
modulepath = os.path.dirname(sys.argv[0])
os.environ["PYTHONPATH"] = os.path.dirname(modulepath)
return [sys.executable, "-m", "homeassistant"] + list(sys.argv[1:])
return sys.argv
def check_threads() -> None:
"""Check if there are any lingering threads."""
try:

View File

@@ -14,7 +14,7 @@ from homeassistant.core import CALLBACK_TYPE, HomeAssistant, callback
from homeassistant.data_entry_flow import FlowResult
from homeassistant.util import dt as dt_util
from . import auth_store, models
from . import auth_store, jwt_wrapper, models
from .const import ACCESS_TOKEN_EXPIRATION, GROUP_ID_ADMIN
from .mfa_modules import MultiFactorAuthModule, auth_mfa_module_from_config
from .providers import AuthProvider, LoginFlow, auth_provider_from_config
@@ -555,9 +555,7 @@ class AuthManager:
) -> models.RefreshToken | None:
"""Return refresh token if an access token is valid."""
try:
unverif_claims = jwt.decode(
token, algorithms=["HS256"], options={"verify_signature": False}
)
unverif_claims = jwt_wrapper.unverified_hs256_token_decode(token)
except jwt.InvalidTokenError:
return None
@@ -573,7 +571,9 @@ class AuthManager:
issuer = refresh_token.id
try:
jwt.decode(token, jwt_key, leeway=10, issuer=issuer, algorithms=["HS256"])
jwt_wrapper.verify_and_decode(
token, jwt_key, leeway=10, issuer=issuer, algorithms=["HS256"]
)
except jwt.InvalidTokenError:
return None

View File

@@ -0,0 +1,116 @@
"""Provide a wrapper around JWT that caches decoding tokens.
Since we decode the same tokens over and over again
we can cache the result of the decode of valid tokens
to speed up the process.
"""
from __future__ import annotations
from datetime import timedelta
from functools import lru_cache, partial
from typing import Any
from jwt import DecodeError, PyJWS, PyJWT
from homeassistant.util.json import json_loads
JWT_TOKEN_CACHE_SIZE = 16
MAX_TOKEN_SIZE = 8192
_VERIFY_KEYS = ("signature", "exp", "nbf", "iat", "aud", "iss")
_VERIFY_OPTIONS: dict[str, Any] = {f"verify_{key}": True for key in _VERIFY_KEYS} | {
"require": []
}
_NO_VERIFY_OPTIONS = {f"verify_{key}": False for key in _VERIFY_KEYS}
class _PyJWSWithLoadCache(PyJWS):
"""PyJWS with a dedicated load implementation."""
@lru_cache(maxsize=JWT_TOKEN_CACHE_SIZE)
# We only ever have a global instance of this class
# so we do not have to worry about the LRU growing
# each time we create a new instance.
def _load(self, jwt: str | bytes) -> tuple[bytes, bytes, dict, bytes]:
"""Load a JWS."""
return super()._load(jwt)
_jws = _PyJWSWithLoadCache()
@lru_cache(maxsize=JWT_TOKEN_CACHE_SIZE)
def _decode_payload(json_payload: str) -> dict[str, Any]:
"""Decode the payload from a JWS dictionary."""
try:
payload = json_loads(json_payload)
except ValueError as err:
raise DecodeError(f"Invalid payload string: {err}") from err
if not isinstance(payload, dict):
raise DecodeError("Invalid payload string: must be a json object")
return payload
class _PyJWTWithVerify(PyJWT):
"""PyJWT with a fast decode implementation."""
def decode_payload(
self, jwt: str, key: str, options: dict[str, Any], algorithms: list[str]
) -> dict[str, Any]:
"""Decode a JWT's payload."""
if len(jwt) > MAX_TOKEN_SIZE:
# Avoid caching impossible tokens
raise DecodeError("Token too large")
return _decode_payload(
_jws.decode_complete(
jwt=jwt,
key=key,
algorithms=algorithms,
options=options,
)["payload"]
)
def verify_and_decode(
self,
jwt: str,
key: str,
algorithms: list[str],
issuer: str | None = None,
leeway: int | float | timedelta = 0,
options: dict[str, Any] | None = None,
) -> dict[str, Any]:
"""Verify a JWT's signature and claims."""
merged_options = {**_VERIFY_OPTIONS, **(options or {})}
payload = self.decode_payload(
jwt=jwt,
key=key,
options=merged_options,
algorithms=algorithms,
)
# These should never be missing since we verify them
# but this is an additional safeguard to make sure
# nothing slips through.
assert "exp" in payload, "exp claim is required"
assert "iat" in payload, "iat claim is required"
self._validate_claims(
payload=payload,
options=merged_options,
issuer=issuer,
leeway=leeway,
)
return payload
_jwt = _PyJWTWithVerify()
verify_and_decode = _jwt.verify_and_decode
unverified_hs256_token_decode = lru_cache(maxsize=JWT_TOKEN_CACHE_SIZE)(
partial(
_jwt.decode_payload, key="", algorithms=["HS256"], options=_NO_VERIFY_OPTIONS
)
)
__all__ = [
"unverified_hs256_token_decode",
"verify_and_decode",
]

View File

@@ -6,15 +6,12 @@ from typing import TYPE_CHECKING
import attr
if TYPE_CHECKING:
from homeassistant.helpers import (
device_registry as dev_reg,
entity_registry as ent_reg,
)
from homeassistant.helpers import device_registry as dr, entity_registry as er
@attr.s(slots=True)
class PermissionLookup:
"""Class to hold data for permission lookups."""
entity_registry: ent_reg.EntityRegistry = attr.ib()
device_registry: dev_reg.DeviceRegistry = attr.ib()
entity_registry: er.EntityRegistry = attr.ib()
device_registry: dr.DeviceRegistry = attr.ib()

View File

@@ -13,8 +13,8 @@ from homeassistant.const import CONF_COMMAND
from homeassistant.data_entry_flow import FlowResult
from homeassistant.exceptions import HomeAssistantError
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
CONF_ARGS = "args"
CONF_META = "meta"

View File

@@ -16,8 +16,8 @@ from homeassistant.data_entry_flow import FlowResult
from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers.storage import Store
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
STORAGE_VERSION = 1
STORAGE_KEY = "auth_provider.homeassistant"

View File

@@ -11,8 +11,8 @@ from homeassistant.core import callback
from homeassistant.data_entry_flow import FlowResult
from homeassistant.exceptions import HomeAssistantError
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
USER_SCHEMA = vol.Schema(
{

View File

@@ -15,8 +15,8 @@ from homeassistant.data_entry_flow import FlowResult
from homeassistant.exceptions import HomeAssistantError
import homeassistant.helpers.config_validation as cv
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
AUTH_PROVIDER_TYPE = "legacy_api_password"
CONF_API_PASSWORD = "api_password"

View File

@@ -23,9 +23,9 @@ from homeassistant.data_entry_flow import FlowResult
from homeassistant.exceptions import HomeAssistantError
import homeassistant.helpers.config_validation as cv
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from .. import InvalidAuthError
from ..models import Credentials, RefreshToken, UserMeta
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
IPAddress = IPv4Address | IPv6Address
IPNetwork = IPv4Network | IPv6Network
@@ -46,7 +46,7 @@ CONFIG_SCHEMA = AUTH_PROVIDER_SCHEMA.extend(
[
vol.Or(
cv.uuid4_hex,
vol.Schema({vol.Required(CONF_GROUP): cv.uuid4_hex}),
vol.Schema({vol.Required(CONF_GROUP): str}),
)
],
)

View File

@@ -1,32 +1,15 @@
"""Enum backports from standard lib."""
"""Enum backports from standard lib.
This file contained the backport of the StrEnum of Python 3.11.
Since we have dropped support for Python 3.10, we can remove this backport.
This file is kept for now to avoid breaking custom components that might
import it.
"""
from __future__ import annotations
from enum import Enum
from typing import Any
from enum import StrEnum
from typing_extensions import Self
class StrEnum(str, Enum):
"""Partial backport of Python 3.11's StrEnum for our basic use cases."""
def __new__(cls, value: str, *args: Any, **kwargs: Any) -> Self:
"""Create a new StrEnum instance."""
if not isinstance(value, str):
raise TypeError(f"{value!r} is not a string")
return super().__new__(cls, value, *args, **kwargs)
def __str__(self) -> str:
"""Return self.value."""
return str(self.value)
@staticmethod
def _generate_next_value_(
name: str, start: int, count: int, last_values: list[Any]
) -> Any:
"""Make `auto()` explicitly unsupported.
We may revisit this when it's very clear that Python 3.11's
`StrEnum.auto()` behavior will no longer change.
"""
raise TypeError("auto() is not supported by this implementation")
__all__ = [
"StrEnum",
]

View File

@@ -0,0 +1,71 @@
"""Functools backports from standard lib."""
from __future__ import annotations
from collections.abc import Callable
from types import GenericAlias
from typing import Any, Generic, Self, TypeVar, overload
_T = TypeVar("_T")
class cached_property(Generic[_T]):
"""Backport of Python 3.12's cached_property.
Includes https://github.com/python/cpython/pull/101890/files
"""
def __init__(self, func: Callable[[Any], _T]) -> None:
"""Initialize."""
self.func: Callable[[Any], _T] = func
self.attrname: str | None = None
self.__doc__ = func.__doc__
def __set_name__(self, owner: type[Any], name: str) -> None:
"""Set name."""
if self.attrname is None:
self.attrname = name
elif name != self.attrname:
raise TypeError(
"Cannot assign the same cached_property to two different names "
f"({self.attrname!r} and {name!r})."
)
@overload
def __get__(self, instance: None, owner: type[Any] | None = None) -> Self:
...
@overload
def __get__(self, instance: Any, owner: type[Any] | None = None) -> _T:
...
def __get__(
self, instance: Any | None, owner: type[Any] | None = None
) -> _T | Self:
"""Get."""
if instance is None:
return self
if self.attrname is None:
raise TypeError(
"Cannot use cached_property instance without calling __set_name__ on it."
)
try:
cache = instance.__dict__
# not all objects have __dict__ (e.g. class defines slots)
except AttributeError:
msg = (
f"No '__dict__' attribute on {type(instance).__name__!r} "
f"instance to cache {self.attrname!r} property."
)
raise TypeError(msg) from None
val = self.func(instance)
try:
cache[self.attrname] = val
except TypeError:
msg = (
f"The '__dict__' attribute on {type(instance).__name__!r} instance "
f"does not support item assignment for caching {self.attrname!r} property."
)
raise TypeError(msg) from None
return val
__class_getitem__ = classmethod(GenericAlias)

View File

@@ -8,7 +8,7 @@ from .util.async_ import protect_loop
def enable() -> None:
"""Enable the detection of blocking calls in the event loop."""
# Prevent urllib3 and requests doing I/O in event loop
HTTPConnection.putrequest = protect_loop( # type: ignore[assignment]
HTTPConnection.putrequest = protect_loop( # type: ignore[method-assign]
HTTPConnection.putrequest
)

View File

@@ -19,6 +19,7 @@ import yarl
from . import config as conf_util, config_entries, core, loader
from .components import http
from .const import (
FORMAT_DATETIME,
REQUIRED_NEXT_PYTHON_HA_RELEASE,
REQUIRED_NEXT_PYTHON_VER,
SIGNAL_BOOTSTRAP_INTEGRATIONS,
@@ -31,6 +32,8 @@ from .helpers import (
entity_registry,
issue_registry,
recorder,
restore_state,
template,
)
from .helpers.dispatcher import async_dispatcher_send
from .helpers.typing import ConfigType
@@ -107,8 +110,7 @@ async def async_setup_hass(
runtime_config: RuntimeConfig,
) -> core.HomeAssistant | None:
"""Set up Home Assistant."""
hass = core.HomeAssistant()
hass.config.config_dir = runtime_config.config_dir
hass = core.HomeAssistant(runtime_config.config_dir)
async_enable_logging(
hass,
@@ -131,6 +133,7 @@ async def async_setup_hass(
_LOGGER.info("Config directory: %s", runtime_config.config_dir)
loader.async_setup(hass)
config_dict = None
basic_setup_success = False
@@ -174,14 +177,15 @@ async def async_setup_hass(
old_config = hass.config
old_logging = hass.data.get(DATA_LOGGING)
hass = core.HomeAssistant()
hass = core.HomeAssistant(old_config.config_dir)
if old_logging:
hass.data[DATA_LOGGING] = old_logging
hass.config.skip_pip = old_config.skip_pip
hass.config.skip_pip_packages = old_config.skip_pip_packages
hass.config.internal_url = old_config.internal_url
hass.config.external_url = old_config.external_url
hass.config.config_dir = old_config.config_dir
# Setup loader cache after the config dir has been set
loader.async_setup(hass)
if safe_mode:
_LOGGER.info("Starting in safe mode")
@@ -238,12 +242,15 @@ async def load_registries(hass: core.HomeAssistant) -> None:
# Load the registries and cache the result of platform.uname().processor
entity.async_setup(hass)
template.async_setup(hass)
await asyncio.gather(
area_registry.async_load(hass),
device_registry.async_load(hass),
entity_registry.async_load(hass),
issue_registry.async_load(hass),
hass.async_add_executor_job(_cache_uname_processor),
template.async_load_custom_templates(hass),
restore_state.async_load(hass),
)
@@ -344,7 +351,6 @@ def async_enable_logging(
fmt = (
"%(asctime)s.%(msecs)03d %(levelname)s (%(threadName)s) [%(name)s] %(message)s"
)
datefmt = "%Y-%m-%d %H:%M:%S"
if not log_no_color:
try:
@@ -359,7 +365,7 @@ def async_enable_logging(
logging.getLogger().handlers[0].setFormatter(
ColoredFormatter(
colorfmt,
datefmt=datefmt,
datefmt=FORMAT_DATETIME,
reset=True,
log_colors={
"DEBUG": "cyan",
@@ -375,12 +381,18 @@ def async_enable_logging(
# If the above initialization failed for any reason, setup the default
# formatting. If the above succeeds, this will result in a no-op.
logging.basicConfig(format=fmt, datefmt=datefmt, level=logging.INFO)
logging.basicConfig(format=fmt, datefmt=FORMAT_DATETIME, level=logging.INFO)
# Capture warnings.warn(...) and friends messages in logs.
# The standard destination for them is stderr, which may end up unnoticed.
# This way they're where other messages are, and can be filtered as usual.
logging.captureWarnings(True)
# Suppress overly verbose logs from libraries that aren't helpful
logging.getLogger("requests").setLevel(logging.WARNING)
logging.getLogger("urllib3").setLevel(logging.WARNING)
logging.getLogger("aiohttp.access").setLevel(logging.WARNING)
logging.getLogger("httpx").setLevel(logging.WARNING)
sys.excepthook = lambda *args: logging.getLogger(None).exception(
"Uncaught exception", exc_info=args # type: ignore[arg-type]
@@ -427,7 +439,7 @@ def async_enable_logging(
_LOGGER.error("Error rolling over log file: %s", err)
err_handler.setLevel(logging.INFO if verbose else logging.WARNING)
err_handler.setFormatter(logging.Formatter(fmt, datefmt=datefmt))
err_handler.setFormatter(logging.Formatter(fmt, datefmt=FORMAT_DATETIME))
logger = logging.getLogger("")
logger.addHandler(err_handler)
@@ -508,19 +520,20 @@ async def async_setup_multi_components(
) -> None:
"""Set up multiple domains. Log on failure."""
futures = {
domain: hass.async_create_task(async_setup_component(hass, domain, config))
domain: hass.async_create_task(
async_setup_component(hass, domain, config), f"setup component {domain}"
)
for domain in domains
}
await asyncio.wait(futures.values())
errors = [domain for domain in domains if futures[domain].exception()]
for domain in errors:
exception = futures[domain].exception()
assert exception is not None
_LOGGER.error(
"Error setting up integration %s - received exception",
domain,
exc_info=(type(exception), exception, exception.__traceback__),
)
results = await asyncio.gather(*futures.values(), return_exceptions=True)
for idx, domain in enumerate(futures):
result = results[idx]
if isinstance(result, BaseException):
_LOGGER.error(
"Error setting up integration %s - received exception",
domain,
exc_info=(type(result), result, result.__traceback__),
)
async def _async_set_up_integrations(
@@ -625,6 +638,9 @@ async def _async_set_up_integrations(
- stage_1_domains
)
# Enables after dependencies when setting up stage 1 domains
async_set_domains_to_be_loaded(hass, stage_1_domains)
# Start setup
if stage_1_domains:
_LOGGER.info("Setting up stage 1: %s", stage_1_domains)
@@ -636,7 +652,7 @@ async def _async_set_up_integrations(
except asyncio.TimeoutError:
_LOGGER.warning("Setup timed out for stage 1 - moving forward")
# Enables after dependencies
# Add after dependencies when setting up stage 2 domains
async_set_domains_to_be_loaded(hass, stage_2_domains)
if stage_2_domains:

View File

@@ -0,0 +1,5 @@
{
"domain": "airzone",
"name": "Airzone",
"integrations": ["airzone", "airzone_cloud"]
}

View File

@@ -7,6 +7,7 @@
"homekit",
"ibeacon",
"icloud",
"itunes"
"itunes",
"weatherkit"
]
}

View File

@@ -6,6 +6,7 @@
"google_assistant_sdk",
"google_cloud",
"google_domains",
"google_generative_ai_conversation",
"google_mail",
"google_maps",
"google_pubsub",
@@ -16,6 +17,7 @@
"google",
"nest",
"cast",
"dialogflow"
"dialogflow",
"youtube"
]
}

View File

@@ -0,0 +1,5 @@
{
"domain": "heltun",
"name": "HELTUN",
"iot_standards": ["zwave"]
}

View File

@@ -0,0 +1,5 @@
{
"domain": "homeseer",
"name": "HomeSeer",
"iot_standards": ["zwave"]
}

View File

@@ -1,5 +1,5 @@
{
"domain": "ikea",
"name": "IKEA",
"integrations": ["symfonisk", "tradfri"]
"integrations": ["symfonisk", "tradfri", "idasen_desk"]
}

View File

@@ -10,7 +10,6 @@
"microsoft_face",
"microsoft",
"msteams",
"xbox",
"xbox_live"
"xbox"
]
}

View File

@@ -0,0 +1,5 @@
{
"domain": "switchbot",
"name": "SwitchBot",
"integrations": ["switchbot", "switchbot_cloud"]
}

View File

@@ -2,6 +2,7 @@
"domain": "trafikverket",
"name": "Trafikverket",
"integrations": [
"trafikverket_camera",
"trafikverket_ferry",
"trafikverket_train",
"trafikverket_weatherstation"

View File

@@ -1,5 +1,5 @@
{
"domain": "yale",
"name": "Yale",
"integrations": ["august", "yale_smart_alarm", "yalexs_ble"]
"integrations": ["august", "yale_smart_alarm", "yalexs_ble", "yale_home"]
}

View File

@@ -1,4 +1,4 @@
"""This package contains components that can be plugged into Home Assistant.
"""Contains components that can be plugged into Home Assistant.
Component design guidelines:
- Each component defines a constant DOMAIN that is equal to its filename.

View File

@@ -28,6 +28,7 @@ from homeassistant.const import (
from homeassistant.core import Event, HomeAssistant, ServiceCall
from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady
from homeassistant.helpers import config_validation as cv, entity
from homeassistant.helpers.device_registry import DeviceInfo
from homeassistant.helpers.dispatcher import dispatcher_send
from .const import ATTRIBUTION, CONF_POLLING, DOMAIN, LOGGER
@@ -287,14 +288,14 @@ class AbodeDevice(AbodeEntity):
"""Initialize Abode device."""
super().__init__(data)
self._device = device
self._attr_unique_id = device.device_uuid
self._attr_unique_id = device.uuid
async def async_added_to_hass(self) -> None:
"""Subscribe to device events."""
await super().async_added_to_hass()
await self.hass.async_add_executor_job(
self._data.abode.events.add_device_callback,
self._device.device_id,
self._device.id,
self._update_callback,
)
@@ -302,7 +303,7 @@ class AbodeDevice(AbodeEntity):
"""Unsubscribe from device events."""
await super().async_will_remove_from_hass()
await self.hass.async_add_executor_job(
self._data.abode.events.remove_all_device_callbacks, self._device.device_id
self._data.abode.events.remove_all_device_callbacks, self._device.id
)
def update(self) -> None:
@@ -313,17 +314,17 @@ class AbodeDevice(AbodeEntity):
def extra_state_attributes(self) -> dict[str, str]:
"""Return the state attributes."""
return {
"device_id": self._device.device_id,
"device_id": self._device.id,
"battery_low": self._device.battery_low,
"no_response": self._device.no_response,
"device_type": self._device.type,
}
@property
def device_info(self) -> entity.DeviceInfo:
def device_info(self) -> DeviceInfo:
"""Return device registry information for this entity."""
return entity.DeviceInfo(
identifiers={(DOMAIN, self._device.device_id)},
return DeviceInfo(
identifiers={(DOMAIN, self._device.id)},
manufacturer="Abode",
model=self._device.type,
name=self._device.name,

View File

@@ -34,6 +34,7 @@ class AbodeAlarm(AbodeDevice, alarm.AlarmControlPanelEntity):
"""An alarm_control_panel implementation for Abode."""
_attr_icon = ICON
_attr_name = None
_attr_code_arm_required = False
_attr_supported_features = (
AlarmControlPanelEntityFeature.ARM_HOME
@@ -68,7 +69,7 @@ class AbodeAlarm(AbodeDevice, alarm.AlarmControlPanelEntity):
def extra_state_attributes(self) -> dict[str, str]:
"""Return the state attributes."""
return {
"device_id": self._device.device_id,
"device_id": self._device.id,
"battery_backup": self._device.battery,
"cellular_backup": self._device.is_cellular,
}

View File

@@ -42,6 +42,7 @@ async def async_setup_entry(
class AbodeBinarySensor(AbodeDevice, BinarySensorEntity):
"""A binary sensor implementation for Abode device."""
_attr_name = None
_device: ABBinarySensor
@property

View File

@@ -30,7 +30,7 @@ async def async_setup_entry(
data: AbodeSystem = hass.data[DOMAIN]
async_add_entities(
AbodeCamera(data, device, TIMELINE.CAPTURE_IMAGE) # pylint: disable=no-member
AbodeCamera(data, device, TIMELINE.CAPTURE_IMAGE)
for device in data.abode.get_devices(generic_type=CONST.TYPE_CAMERA)
)
@@ -39,6 +39,7 @@ class AbodeCamera(AbodeDevice, Camera):
"""Representation of an Abode camera."""
_device: AbodeCam
_attr_name = None
def __init__(self, data: AbodeSystem, device: AbodeDev, event: Event) -> None:
"""Initialize the Abode device."""

View File

@@ -29,6 +29,7 @@ class AbodeCover(AbodeDevice, CoverEntity):
"""Representation of an Abode cover."""
_device: AbodeCV
_attr_name = None
@property
def is_closed(self) -> bool:

View File

@@ -42,6 +42,7 @@ class AbodeLight(AbodeDevice, LightEntity):
"""Representation of an Abode light."""
_device: AbodeLT
_attr_name = None
def turn_on(self, **kwargs: Any) -> None:
"""Turn on the light."""

View File

@@ -29,6 +29,7 @@ class AbodeLock(AbodeDevice, LockEntity):
"""Representation of an Abode lock."""
_device: AbodeLK
_attr_name = None
def lock(self, **kwargs: Any) -> None:
"""Lock the device."""

View File

@@ -1,6 +1,8 @@
"""Support for Abode Security System sensors."""
from __future__ import annotations
from collections.abc import Callable
from dataclasses import dataclass
from typing import cast
from jaraco.abode.devices.sensor import Sensor as AbodeSense
@@ -12,27 +14,52 @@ from homeassistant.components.sensor import (
SensorEntityDescription,
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import LIGHT_LUX, PERCENTAGE, UnitOfTemperature
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AbodeDevice, AbodeSystem
from .const import DOMAIN
SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
SensorEntityDescription(
ABODE_TEMPERATURE_UNIT_HA_UNIT = {
CONST.UNIT_FAHRENHEIT: UnitOfTemperature.FAHRENHEIT,
CONST.UNIT_CELSIUS: UnitOfTemperature.CELSIUS,
}
@dataclass
class AbodeSensorDescriptionMixin:
"""Mixin for Abode sensor."""
value_fn: Callable[[AbodeSense], float]
native_unit_of_measurement_fn: Callable[[AbodeSense], str]
@dataclass
class AbodeSensorDescription(SensorEntityDescription, AbodeSensorDescriptionMixin):
"""Class describing Abode sensor entities."""
SENSOR_TYPES: tuple[AbodeSensorDescription, ...] = (
AbodeSensorDescription(
key=CONST.TEMP_STATUS_KEY,
name="Temperature",
device_class=SensorDeviceClass.TEMPERATURE,
native_unit_of_measurement_fn=lambda device: ABODE_TEMPERATURE_UNIT_HA_UNIT[
device.temp_unit
],
value_fn=lambda device: cast(float, device.temp),
),
SensorEntityDescription(
AbodeSensorDescription(
key=CONST.HUMI_STATUS_KEY,
name="Humidity",
device_class=SensorDeviceClass.HUMIDITY,
native_unit_of_measurement_fn=lambda _: PERCENTAGE,
value_fn=lambda device: cast(float, device.humidity),
),
SensorEntityDescription(
AbodeSensorDescription(
key=CONST.LUX_STATUS_KEY,
name="Lux",
device_class=SensorDeviceClass.ILLUMINANCE,
native_unit_of_measurement_fn=lambda _: LIGHT_LUX,
value_fn=lambda device: cast(float, device.lux),
),
)
@@ -54,32 +81,26 @@ async def async_setup_entry(
class AbodeSensor(AbodeDevice, SensorEntity):
"""A sensor implementation for Abode devices."""
entity_description: AbodeSensorDescription
_device: AbodeSense
def __init__(
self,
data: AbodeSystem,
device: AbodeSense,
description: SensorEntityDescription,
description: AbodeSensorDescription,
) -> None:
"""Initialize a sensor for an Abode device."""
super().__init__(data, device)
self.entity_description = description
self._attr_unique_id = f"{device.device_uuid}-{description.key}"
if description.key == CONST.TEMP_STATUS_KEY:
self._attr_native_unit_of_measurement = device.temp_unit
elif description.key == CONST.HUMI_STATUS_KEY:
self._attr_native_unit_of_measurement = device.humidity_unit
elif description.key == CONST.LUX_STATUS_KEY:
self._attr_native_unit_of_measurement = device.lux_unit
self._attr_unique_id = f"{device.uuid}-{description.key}"
@property
def native_value(self) -> float | None:
def native_value(self) -> float:
"""Return the state of the sensor."""
if self.entity_description.key == CONST.TEMP_STATUS_KEY:
return cast(float, self._device.temp)
if self.entity_description.key == CONST.HUMI_STATUS_KEY:
return cast(float, self._device.humidity)
if self.entity_description.key == CONST.LUX_STATUS_KEY:
return cast(float, self._device.lux)
return None
return self.entity_description.value_fn(self._device)
@property
def native_unit_of_measurement(self) -> str:
"""Return the native unit of measurement."""
return self.entity_description.native_unit_of_measurement_fn(self._device)

View File

@@ -1,10 +1,6 @@
capture_image:
name: Capture image
description: Request a new image capture from a camera device.
fields:
entity_id:
name: Entity
description: Entity id of the camera to request an image.
required: true
selector:
entity:
@@ -12,31 +8,21 @@ capture_image:
domain: camera
change_setting:
name: Change setting
description: Change an Abode system setting.
fields:
setting:
name: Setting
description: Setting to change.
required: true
example: beeper_mute
selector:
text:
value:
name: Value
description: Value of the setting.
required: true
example: "1"
selector:
text:
trigger_automation:
name: Trigger automation
description: Trigger an Abode automation.
fields:
entity_id:
name: Entity
description: Entity id of the automation to trigger.
required: true
selector:
entity:

View File

@@ -15,7 +15,7 @@
}
},
"reauth_confirm": {
"title": "Fill in your Abode login information",
"title": "[%key:component::abode::config::step::user::title%]",
"data": {
"username": "[%key:common::config_flow::data::email%]",
"password": "[%key:common::config_flow::data::password%]"
@@ -31,5 +31,41 @@
"single_instance_allowed": "[%key:common::config_flow::abort::single_instance_allowed%]",
"reauth_successful": "[%key:common::config_flow::abort::reauth_successful%]"
}
},
"services": {
"capture_image": {
"name": "Capture image",
"description": "Request a new image capture from a camera device.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "Entity id of the camera to request an image."
}
}
},
"change_setting": {
"name": "Change setting",
"description": "Change an Abode system setting.",
"fields": {
"setting": {
"name": "Setting",
"description": "Setting to change."
},
"value": {
"name": "Value",
"description": "Value of the setting."
}
}
},
"trigger_automation": {
"name": "Trigger automation",
"description": "Trigger an Abode automation.",
"fields": {
"entity_id": {
"name": "Entity",
"description": "Entity id of the automation to trigger."
}
}
}
}
}

View File

@@ -44,6 +44,7 @@ class AbodeSwitch(AbodeDevice, SwitchEntity):
"""Representation of an Abode switch."""
_device: AbodeSW
_attr_name = None
def turn_on(self, **kwargs: Any) -> None:
"""Turn on the device."""

View File

@@ -1,6 +1,7 @@
"""The AccuWeather component."""
from __future__ import annotations
from asyncio import timeout
from datetime import timedelta
import logging
from typing import Any
@@ -8,16 +9,15 @@ from typing import Any
from accuweather import AccuWeather, ApiError, InvalidApiKeyError, RequestsExceededError
from aiohttp import ClientSession
from aiohttp.client_exceptions import ClientConnectorError
from async_timeout import timeout
from homeassistant.components.sensor import DOMAIN as SENSOR_PLATFORM
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_API_KEY, CONF_NAME, Platform
from homeassistant.core import HomeAssistant
from homeassistant.helpers import entity_registry as er
from homeassistant.helpers.aiohttp_client import async_get_clientsession
from homeassistant.helpers.device_registry import DeviceEntryType
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.device_registry import DeviceEntryType, DeviceInfo
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
from homeassistant.util.unit_system import METRIC_SYSTEM
from .const import ATTR_FORECAST, CONF_FORECAST, DOMAIN, MANUFACTURER
@@ -49,6 +49,14 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)
# Remove ozone sensors from registry if they exist
ent_reg = er.async_get(hass)
for day in range(0, 5):
unique_id = f"{coordinator.location_key}-ozone-{day}"
if entity_id := ent_reg.async_get_entity_id(SENSOR_PLATFORM, DOMAIN, unique_id):
_LOGGER.debug("Removing ozone sensor entity %s", entity_id)
ent_reg.async_remove(entity_id)
return True
@@ -112,16 +120,12 @@ class AccuWeatherDataUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]):
async def _async_update_data(self) -> dict[str, Any]:
"""Update data via library."""
forecast: list[dict[str, Any]] = []
try:
async with timeout(10):
current = await self.accuweather.async_get_current_conditions()
forecast = (
await self.accuweather.async_get_forecast(
metric=self.hass.config.units is METRIC_SYSTEM
)
if self.forecast
else {}
)
if self.forecast:
forecast = await self.accuweather.async_get_daily_forecast()
except (
ApiError,
ClientConnectorError,

View File

@@ -2,12 +2,12 @@
from __future__ import annotations
import asyncio
from asyncio import timeout
from typing import Any
from accuweather import AccuWeather, ApiError, InvalidApiKeyError, RequestsExceededError
from aiohttp import ClientError
from aiohttp.client_exceptions import ClientConnectorError
from async_timeout import timeout
import voluptuous as vol
from homeassistant import config_entries

View File

@@ -20,7 +20,6 @@ from homeassistant.components.weather import (
ATTR_CONDITION_WINDY,
)
API_IMPERIAL: Final = "Imperial"
API_METRIC: Final = "Metric"
ATTRIBUTION: Final = "Data provided by AccuWeather"
ATTR_CATEGORY: Final = "Category"
@@ -51,3 +50,8 @@ CONDITION_CLASSES: Final[dict[str, list[int]]] = {
ATTR_CONDITION_SUNNY: [1, 2, 5],
ATTR_CONDITION_WINDY: [32],
}
CONDITION_MAP = {
cond_code: cond_ha
for cond_ha, cond_codes in CONDITION_CLASSES.items()
for cond_code in cond_codes
}

View File

@@ -3,10 +3,10 @@
"name": "AccuWeather",
"codeowners": ["@bieniu"],
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/accuweather/",
"documentation": "https://www.home-assistant.io/integrations/accuweather",
"integration_type": "service",
"iot_class": "cloud_polling",
"loggers": ["accuweather"],
"quality_scale": "platinum",
"requirements": ["accuweather==0.5.0"]
"requirements": ["accuweather==1.0.0"]
}

View File

@@ -16,6 +16,7 @@ from homeassistant.const import (
CONCENTRATION_PARTS_PER_CUBIC_METER,
PERCENTAGE,
UV_INDEX,
UnitOfIrradiance,
UnitOfLength,
UnitOfSpeed,
UnitOfTemperature,
@@ -24,13 +25,10 @@ from homeassistant.const import (
)
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import StateType
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from homeassistant.util.unit_system import METRIC_SYSTEM
from . import AccuWeatherDataUpdateCoordinator
from .const import (
API_IMPERIAL,
API_METRIC,
ATTR_CATEGORY,
ATTR_DIRECTION,
@@ -51,7 +49,7 @@ PARALLEL_UPDATES = 1
class AccuWeatherSensorDescriptionMixin:
"""Mixin for AccuWeather sensor."""
value_fn: Callable[[dict[str, Any], str], StateType]
value_fn: Callable[[dict[str, Any]], str | int | float | None]
@dataclass
@@ -60,172 +58,281 @@ class AccuWeatherSensorDescription(
):
"""Class describing AccuWeather sensor entities."""
attr_fn: Callable[[dict[str, Any]], dict[str, StateType]] = lambda _: {}
metric_unit: str | None = None
us_customary_unit: str | None = None
attr_fn: Callable[[dict[str, Any]], dict[str, Any]] = lambda _: {}
day: int | None = None
FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
AccuWeatherSensorDescription(
key="CloudCoverDay",
icon="mdi:weather-cloudy",
name="Cloud cover day",
entity_registry_enabled_default=False,
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data, _: cast(int, data),
*(
AccuWeatherSensorDescription(
key="AirQuality",
icon="mdi:air-filter",
value_fn=lambda data: cast(str, data[ATTR_CATEGORY]),
device_class=SensorDeviceClass.ENUM,
options=["good", "hazardous", "high", "low", "moderate", "unhealthy"],
translation_key=f"air_quality_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="CloudCoverNight",
icon="mdi:weather-cloudy",
name="Cloud cover night",
entity_registry_enabled_default=False,
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data, _: cast(int, data),
*(
AccuWeatherSensorDescription(
key="CloudCoverDay",
icon="mdi:weather-cloudy",
entity_registry_enabled_default=False,
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data: cast(int, data),
translation_key=f"cloud_cover_day_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="Grass",
icon="mdi:grass",
name="Grass pollen",
entity_registry_enabled_default=False,
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
value_fn=lambda data, _: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
*(
AccuWeatherSensorDescription(
key="CloudCoverNight",
icon="mdi:weather-cloudy",
entity_registry_enabled_default=False,
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data: cast(int, data),
translation_key=f"cloud_cover_night_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="HoursOfSun",
icon="mdi:weather-partly-cloudy",
name="Hours of sun",
native_unit_of_measurement=UnitOfTime.HOURS,
value_fn=lambda data, _: cast(float, data),
*(
AccuWeatherSensorDescription(
key="Grass",
icon="mdi:grass",
entity_registry_enabled_default=False,
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
value_fn=lambda data: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
translation_key=f"grass_pollen_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="Mold",
icon="mdi:blur",
name="Mold pollen",
entity_registry_enabled_default=False,
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
value_fn=lambda data, _: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
*(
AccuWeatherSensorDescription(
key="HoursOfSun",
icon="mdi:weather-partly-cloudy",
native_unit_of_measurement=UnitOfTime.HOURS,
value_fn=lambda data: cast(float, data),
translation_key=f"hours_of_sun_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="Ozone",
icon="mdi:vector-triangle",
name="Ozone",
entity_registry_enabled_default=False,
value_fn=lambda data, _: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
*(
AccuWeatherSensorDescription(
key="LongPhraseDay",
value_fn=lambda data: cast(str, data),
translation_key=f"condition_day_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="Ragweed",
icon="mdi:sprout",
name="Ragweed pollen",
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
entity_registry_enabled_default=False,
value_fn=lambda data, _: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
*(
AccuWeatherSensorDescription(
key="LongPhraseNight",
value_fn=lambda data: cast(str, data),
translation_key=f"condition_night_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureMax",
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel temperature max",
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, _: cast(float, data[ATTR_VALUE]),
*(
AccuWeatherSensorDescription(
key="Mold",
icon="mdi:blur",
entity_registry_enabled_default=False,
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
value_fn=lambda data: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
translation_key=f"mold_pollen_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureMin",
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel temperature min",
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, _: cast(float, data[ATTR_VALUE]),
*(
AccuWeatherSensorDescription(
key="Ragweed",
icon="mdi:sprout",
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
entity_registry_enabled_default=False,
value_fn=lambda data: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
translation_key=f"ragweed_pollen_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureShadeMax",
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel temperature shade max",
entity_registry_enabled_default=False,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, _: cast(float, data[ATTR_VALUE]),
*(
AccuWeatherSensorDescription(
key="RealFeelTemperatureMax",
device_class=SensorDeviceClass.TEMPERATURE,
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
value_fn=lambda data: cast(float, data[ATTR_VALUE]),
translation_key=f"realfeel_temperature_max_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureShadeMin",
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel temperature shade min",
entity_registry_enabled_default=False,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, _: cast(float, data[ATTR_VALUE]),
*(
AccuWeatherSensorDescription(
key="RealFeelTemperatureMin",
device_class=SensorDeviceClass.TEMPERATURE,
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
value_fn=lambda data: cast(float, data[ATTR_VALUE]),
translation_key=f"realfeel_temperature_min_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="ThunderstormProbabilityDay",
icon="mdi:weather-lightning",
name="Thunderstorm probability day",
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data, _: cast(int, data),
*(
AccuWeatherSensorDescription(
key="RealFeelTemperatureShadeMax",
device_class=SensorDeviceClass.TEMPERATURE,
entity_registry_enabled_default=False,
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
value_fn=lambda data: cast(float, data[ATTR_VALUE]),
translation_key=f"realfeel_temperature_shade_max_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="ThunderstormProbabilityNight",
icon="mdi:weather-lightning",
name="Thunderstorm probability night",
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data, _: cast(int, data),
*(
AccuWeatherSensorDescription(
key="RealFeelTemperatureShadeMin",
device_class=SensorDeviceClass.TEMPERATURE,
entity_registry_enabled_default=False,
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
value_fn=lambda data: cast(float, data[ATTR_VALUE]),
translation_key=f"realfeel_temperature_shade_min_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="Tree",
icon="mdi:tree-outline",
name="Tree pollen",
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
entity_registry_enabled_default=False,
value_fn=lambda data, _: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
*(
AccuWeatherSensorDescription(
key="SolarIrradianceDay",
icon="mdi:weather-sunny",
entity_registry_enabled_default=False,
native_unit_of_measurement=UnitOfIrradiance.WATTS_PER_SQUARE_METER,
value_fn=lambda data: cast(float, data[ATTR_VALUE]),
translation_key=f"solar_irradiance_day_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="UVIndex",
icon="mdi:weather-sunny",
name="UV index",
native_unit_of_measurement=UV_INDEX,
value_fn=lambda data, _: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
*(
AccuWeatherSensorDescription(
key="SolarIrradianceNight",
icon="mdi:weather-sunny",
entity_registry_enabled_default=False,
native_unit_of_measurement=UnitOfIrradiance.WATTS_PER_SQUARE_METER,
value_fn=lambda data: cast(float, data[ATTR_VALUE]),
translation_key=f"solar_irradiance_night_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="WindGustDay",
device_class=SensorDeviceClass.WIND_SPEED,
name="Wind gust day",
entity_registry_enabled_default=False,
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, _: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
*(
AccuWeatherSensorDescription(
key="ThunderstormProbabilityDay",
icon="mdi:weather-lightning",
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data: cast(int, data),
translation_key=f"thunderstorm_probability_day_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="WindGustNight",
device_class=SensorDeviceClass.WIND_SPEED,
name="Wind gust night",
entity_registry_enabled_default=False,
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, _: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
*(
AccuWeatherSensorDescription(
key="ThunderstormProbabilityNight",
icon="mdi:weather-lightning",
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data: cast(int, data),
translation_key=f"thunderstorm_probability_night_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="WindDay",
device_class=SensorDeviceClass.WIND_SPEED,
name="Wind day",
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, _: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
*(
AccuWeatherSensorDescription(
key="Tree",
icon="mdi:tree-outline",
native_unit_of_measurement=CONCENTRATION_PARTS_PER_CUBIC_METER,
entity_registry_enabled_default=False,
value_fn=lambda data: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
translation_key=f"tree_pollen_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
AccuWeatherSensorDescription(
key="WindNight",
device_class=SensorDeviceClass.WIND_SPEED,
name="Wind night",
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, _: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
*(
AccuWeatherSensorDescription(
key="UVIndex",
icon="mdi:weather-sunny",
native_unit_of_measurement=UV_INDEX,
value_fn=lambda data: cast(int, data[ATTR_VALUE]),
attr_fn=lambda data: {ATTR_LEVEL: data[ATTR_CATEGORY]},
translation_key=f"uv_index_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
*(
AccuWeatherSensorDescription(
key="WindGustDay",
device_class=SensorDeviceClass.WIND_SPEED,
entity_registry_enabled_default=False,
native_unit_of_measurement=UnitOfSpeed.KILOMETERS_PER_HOUR,
value_fn=lambda data: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
translation_key=f"wind_gust_speed_day_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
*(
AccuWeatherSensorDescription(
key="WindGustNight",
device_class=SensorDeviceClass.WIND_SPEED,
entity_registry_enabled_default=False,
native_unit_of_measurement=UnitOfSpeed.KILOMETERS_PER_HOUR,
value_fn=lambda data: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
translation_key=f"wind_gust_speed_night_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
*(
AccuWeatherSensorDescription(
key="WindDay",
device_class=SensorDeviceClass.WIND_SPEED,
native_unit_of_measurement=UnitOfSpeed.KILOMETERS_PER_HOUR,
value_fn=lambda data: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
translation_key=f"wind_speed_day_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
*(
AccuWeatherSensorDescription(
key="WindNight",
device_class=SensorDeviceClass.WIND_SPEED,
native_unit_of_measurement=UnitOfSpeed.KILOMETERS_PER_HOUR,
value_fn=lambda data: cast(float, data[ATTR_SPEED][ATTR_VALUE]),
attr_fn=lambda data: {"direction": data[ATTR_DIRECTION][ATTR_ENGLISH]},
translation_key=f"wind_speed_night_{day}d",
day=day,
)
for day in range(MAX_FORECAST_DAYS + 1)
),
)
@@ -233,128 +340,117 @@ SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...] = (
AccuWeatherSensorDescription(
key="ApparentTemperature",
device_class=SensorDeviceClass.TEMPERATURE,
name="Apparent temperature",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
value_fn=lambda data: cast(float, data[API_METRIC][ATTR_VALUE]),
translation_key="apparent_temperature",
),
AccuWeatherSensorDescription(
key="Ceiling",
device_class=SensorDeviceClass.DISTANCE,
icon="mdi:weather-fog",
name="Cloud ceiling",
state_class=SensorStateClass.MEASUREMENT,
metric_unit=UnitOfLength.METERS,
us_customary_unit=UnitOfLength.FEET,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
native_unit_of_measurement=UnitOfLength.METERS,
value_fn=lambda data: cast(float, data[API_METRIC][ATTR_VALUE]),
suggested_display_precision=0,
translation_key="cloud_ceiling",
),
AccuWeatherSensorDescription(
key="CloudCover",
icon="mdi:weather-cloudy",
name="Cloud cover",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda data, _: cast(int, data),
value_fn=lambda data: cast(int, data),
translation_key="cloud_cover",
),
AccuWeatherSensorDescription(
key="DewPoint",
device_class=SensorDeviceClass.TEMPERATURE,
name="Dew point",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
value_fn=lambda data: cast(float, data[API_METRIC][ATTR_VALUE]),
translation_key="dew_point",
),
AccuWeatherSensorDescription(
key="RealFeelTemperature",
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel temperature",
state_class=SensorStateClass.MEASUREMENT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
value_fn=lambda data: cast(float, data[API_METRIC][ATTR_VALUE]),
translation_key="realfeel_temperature",
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureShade",
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel temperature shade",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
value_fn=lambda data: cast(float, data[API_METRIC][ATTR_VALUE]),
translation_key="realfeel_temperature_shade",
),
AccuWeatherSensorDescription(
key="Precipitation",
device_class=SensorDeviceClass.PRECIPITATION_INTENSITY,
name="Precipitation",
state_class=SensorStateClass.MEASUREMENT,
metric_unit=UnitOfVolumetricFlux.MILLIMETERS_PER_HOUR,
us_customary_unit=UnitOfVolumetricFlux.INCHES_PER_HOUR,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
native_unit_of_measurement=UnitOfVolumetricFlux.MILLIMETERS_PER_HOUR,
value_fn=lambda data: cast(float, data[API_METRIC][ATTR_VALUE]),
attr_fn=lambda data: {"type": data["PrecipitationType"]},
translation_key="precipitation",
),
AccuWeatherSensorDescription(
key="PressureTendency",
device_class=SensorDeviceClass.ENUM,
icon="mdi:gauge",
name="Pressure tendency",
options=["falling", "rising", "steady"],
value_fn=lambda data: cast(str, data["LocalizedText"]).lower(),
translation_key="pressure_tendency",
value_fn=lambda data, _: cast(str, data["LocalizedText"]).lower(),
),
AccuWeatherSensorDescription(
key="UVIndex",
icon="mdi:weather-sunny",
name="UV index",
state_class=SensorStateClass.MEASUREMENT,
native_unit_of_measurement=UV_INDEX,
value_fn=lambda data, _: cast(int, data),
value_fn=lambda data: cast(int, data),
attr_fn=lambda data: {ATTR_LEVEL: data["UVIndexText"]},
translation_key="uv_index",
),
AccuWeatherSensorDescription(
key="WetBulbTemperature",
device_class=SensorDeviceClass.TEMPERATURE,
name="Wet bulb temperature",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
value_fn=lambda data: cast(float, data[API_METRIC][ATTR_VALUE]),
translation_key="wet_bulb_temperature",
),
AccuWeatherSensorDescription(
key="WindChillTemperature",
device_class=SensorDeviceClass.TEMPERATURE,
name="Wind chill temperature",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
metric_unit=UnitOfTemperature.CELSIUS,
us_customary_unit=UnitOfTemperature.FAHRENHEIT,
value_fn=lambda data, unit: cast(float, data[unit][ATTR_VALUE]),
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
value_fn=lambda data: cast(float, data[API_METRIC][ATTR_VALUE]),
translation_key="wind_chill_temperature",
),
AccuWeatherSensorDescription(
key="Wind",
device_class=SensorDeviceClass.WIND_SPEED,
name="Wind",
state_class=SensorStateClass.MEASUREMENT,
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, unit: cast(float, data[ATTR_SPEED][unit][ATTR_VALUE]),
native_unit_of_measurement=UnitOfSpeed.KILOMETERS_PER_HOUR,
value_fn=lambda data: cast(float, data[ATTR_SPEED][API_METRIC][ATTR_VALUE]),
translation_key="wind_speed",
),
AccuWeatherSensorDescription(
key="WindGust",
device_class=SensorDeviceClass.WIND_SPEED,
name="Wind gust",
entity_registry_enabled_default=False,
state_class=SensorStateClass.MEASUREMENT,
metric_unit=UnitOfSpeed.KILOMETERS_PER_HOUR,
us_customary_unit=UnitOfSpeed.MILES_PER_HOUR,
value_fn=lambda data, unit: cast(float, data[ATTR_SPEED][unit][ATTR_VALUE]),
native_unit_of_measurement=UnitOfSpeed.KILOMETERS_PER_HOUR,
value_fn=lambda data: cast(float, data[ATTR_SPEED][API_METRIC][ATTR_VALUE]),
translation_key="wind_gust_speed",
),
)
@@ -371,14 +467,12 @@ async def async_setup_entry(
]
if coordinator.forecast:
# Some air quality/allergy sensors are only available for certain
# locations.
sensors.extend(
AccuWeatherForecastSensor(coordinator, description, forecast_day=day)
for day in range(MAX_FORECAST_DAYS + 1)
for description in FORECAST_SENSOR_TYPES
if description.key in coordinator.data[ATTR_FORECAST][0]
)
for description in FORECAST_SENSOR_TYPES:
# Some air quality/allergy sensors are only available for certain
# locations.
if description.key not in coordinator.data[ATTR_FORECAST][description.day]:
continue
sensors.append(AccuWeatherSensor(coordinator, description))
async_add_entities(sensors)
@@ -396,51 +490,40 @@ class AccuWeatherSensor(
self,
coordinator: AccuWeatherDataUpdateCoordinator,
description: AccuWeatherSensorDescription,
forecast_day: int | None = None,
) -> None:
"""Initialize."""
super().__init__(coordinator)
self.forecast_day = description.day
self.entity_description = description
self._sensor_data = _get_sensor_data(
coordinator.data, description.key, forecast_day
coordinator.data, description.key, self.forecast_day
)
if forecast_day is not None:
self._attr_name = f"{description.name} {forecast_day}d"
self._attr_unique_id = (
f"{coordinator.location_key}-{description.key}-{forecast_day}".lower()
)
if self.forecast_day is not None:
self._attr_unique_id = f"{coordinator.location_key}-{description.key}-{self.forecast_day}".lower()
else:
self._attr_unique_id = (
f"{coordinator.location_key}-{description.key}".lower()
)
self._attr_native_unit_of_measurement = description.native_unit_of_measurement
if self.coordinator.hass.config.units is METRIC_SYSTEM:
self._unit_system = API_METRIC
if metric_unit := description.metric_unit:
self._attr_native_unit_of_measurement = metric_unit
else:
self._unit_system = API_IMPERIAL
if us_customary_unit := description.us_customary_unit:
self._attr_native_unit_of_measurement = us_customary_unit
self._attr_device_info = coordinator.device_info
if forecast_day is not None:
self.forecast_day = forecast_day
@property
def native_value(self) -> StateType:
def native_value(self) -> str | int | float | None:
"""Return the state."""
return self.entity_description.value_fn(self._sensor_data, self._unit_system)
return self.entity_description.value_fn(self._sensor_data)
@property
def extra_state_attributes(self) -> dict[str, Any]:
"""Return the state attributes."""
if self.forecast_day is not None:
return self.entity_description.attr_fn(self._sensor_data)
return self.entity_description.attr_fn(self.coordinator.data)
@callback
def _handle_coordinator_update(self) -> None:
"""Handle data update."""
self._sensor_data = _get_sensor_data(
self.coordinator.data, self.entity_description.key
self.coordinator.data, self.entity_description.key, self.forecast_day
)
self.async_write_ha_state()
@@ -458,20 +541,3 @@ def _get_sensor_data(
return sensors["PrecipitationSummary"]["PastHour"]
return sensors[kind]
class AccuWeatherForecastSensor(AccuWeatherSensor):
"""Define an AccuWeather forecast entity."""
@property
def extra_state_attributes(self) -> dict[str, Any]:
"""Return the state attributes."""
return self.entity_description.attr_fn(self._sensor_data)
@callback
def _handle_coordinator_update(self) -> None:
"""Handle data update."""
self._sensor_data = _get_sensor_data(
self.coordinator.data, self.entity_description.key, self.forecast_day
)
self.async_write_ha_state()

View File

@@ -24,12 +24,772 @@
},
"entity": {
"sensor": {
"air_quality_0d": {
"name": "Air quality today",
"state": {
"good": "Good",
"hazardous": "Hazardous",
"high": "High",
"low": "Low",
"moderate": "Moderate",
"unhealthy": "Unhealthy"
}
},
"air_quality_1d": {
"name": "Air quality day 1",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
},
"air_quality_2d": {
"name": "Air quality day 2",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
},
"air_quality_3d": {
"name": "Air quality day 3",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
},
"air_quality_4d": {
"name": "Air quality day 4",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
},
"apparent_temperature": {
"name": "Apparent temperature"
},
"cloud_ceiling": {
"name": "Cloud ceiling"
},
"cloud_cover": {
"name": "Cloud cover"
},
"cloud_cover_day_0d": {
"name": "Cloud cover today"
},
"cloud_cover_day_1d": {
"name": "Cloud cover day 1"
},
"cloud_cover_day_2d": {
"name": "Cloud cover day 2"
},
"cloud_cover_day_3d": {
"name": "Cloud cover day 3"
},
"cloud_cover_day_4d": {
"name": "Cloud cover day 4"
},
"cloud_cover_night_0d": {
"name": "Cloud cover tonight"
},
"cloud_cover_night_1d": {
"name": "Cloud cover night 1"
},
"cloud_cover_night_2d": {
"name": "Cloud cover night 2"
},
"cloud_cover_night_3d": {
"name": "Cloud cover night 3"
},
"cloud_cover_night_4d": {
"name": "Cloud cover night 4"
},
"condition_day_0d": {
"name": "Condition today"
},
"condition_day_1d": {
"name": "Condition day 1"
},
"condition_day_2d": {
"name": "Condition day 2"
},
"condition_day_3d": {
"name": "Condition day 3"
},
"condition_day_4d": {
"name": "Condition day 4"
},
"condition_night_0d": {
"name": "Condition tonight"
},
"condition_night_1d": {
"name": "Condition night 1"
},
"condition_night_2d": {
"name": "Condition night 2"
},
"condition_night_3d": {
"name": "Condition night 3"
},
"condition_night_4d": {
"name": "Condition night 4"
},
"dew_point": {
"name": "Dew point"
},
"grass_pollen_0d": {
"name": "Grass pollen today",
"state_attributes": {
"level": {
"name": "Level",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"grass_pollen_1d": {
"name": "Grass pollen day 1",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"grass_pollen_2d": {
"name": "Grass pollen day 2",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"grass_pollen_3d": {
"name": "Grass pollen day 3",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"grass_pollen_4d": {
"name": "Grass pollen day 4",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"hours_of_sun_0d": {
"name": "Hours of sun today"
},
"hours_of_sun_1d": {
"name": "Hours of sun day 1"
},
"hours_of_sun_2d": {
"name": "Hours of sun day 2"
},
"hours_of_sun_3d": {
"name": "Hours of sun day 3"
},
"hours_of_sun_4d": {
"name": "Hours of sun day 4"
},
"mold_pollen_0d": {
"name": "Mold pollen today",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"mold_pollen_1d": {
"name": "Mold pollen day 1",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"mold_pollen_2d": {
"name": "Mold pollen day 2",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"mold_pollen_3d": {
"name": "Mold pollen day 3",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"mold_pollen_4d": {
"name": "Mold pollen day 4",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"precipitation": {
"name": "[%key:component::sensor::entity_component::precipitation::name%]"
},
"pressure_tendency": {
"name": "Pressure tendency",
"state": {
"steady": "Steady",
"rising": "Rising",
"falling": "Falling"
}
},
"ragweed_pollen_0d": {
"name": "Ragweed pollen today",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"ragweed_pollen_1d": {
"name": "Ragweed pollen day 1",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"ragweed_pollen_2d": {
"name": "Ragweed pollen day 2",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"ragweed_pollen_3d": {
"name": "Ragweed pollen day 3",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"ragweed_pollen_4d": {
"name": "Ragweed pollen day 4",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"realfeel_temperature": {
"name": "RealFeel temperature"
},
"realfeel_temperature_max_0d": {
"name": "RealFeel temperature max today"
},
"realfeel_temperature_max_1d": {
"name": "RealFeel temperature max day 1"
},
"realfeel_temperature_max_2d": {
"name": "RealFeel temperature max day 2"
},
"realfeel_temperature_max_3d": {
"name": "RealFeel temperature max day 3"
},
"realfeel_temperature_max_4d": {
"name": "RealFeel temperature max day 4"
},
"realfeel_temperature_min_0d": {
"name": "RealFeel temperature min today"
},
"realfeel_temperature_min_1d": {
"name": "RealFeel temperature min day 1"
},
"realfeel_temperature_min_2d": {
"name": "RealFeel temperature min day 2"
},
"realfeel_temperature_min_3d": {
"name": "RealFeel temperature min day 3"
},
"realfeel_temperature_min_4d": {
"name": "RealFeel temperature min day 4"
},
"realfeel_temperature_shade": {
"name": "RealFeel temperature shade"
},
"realfeel_temperature_shade_max_0d": {
"name": "RealFeel temperature shade max today"
},
"realfeel_temperature_shade_max_1d": {
"name": "RealFeel temperature shade max day 1"
},
"realfeel_temperature_shade_max_2d": {
"name": "RealFeel temperature shade max day 2"
},
"realfeel_temperature_shade_max_3d": {
"name": "RealFeel temperature shade max day 3"
},
"realfeel_temperature_shade_max_4d": {
"name": "RealFeel temperature shade max day 4"
},
"realfeel_temperature_shade_min_0d": {
"name": "RealFeel temperature shade min today"
},
"realfeel_temperature_shade_min_1d": {
"name": "RealFeel temperature shade min day 1"
},
"realfeel_temperature_shade_min_2d": {
"name": "RealFeel temperature shade min day 2"
},
"realfeel_temperature_shade_min_3d": {
"name": "RealFeel temperature shade min day 3"
},
"realfeel_temperature_shade_min_4d": {
"name": "RealFeel temperature shade min day 4"
},
"solar_irradiance_day_0d": {
"name": "Solar irradiance today"
},
"solar_irradiance_day_1d": {
"name": "Solar irradiance day 1"
},
"solar_irradiance_day_2d": {
"name": "Solar irradiance day 2"
},
"solar_irradiance_day_3d": {
"name": "Solar irradiance day 3"
},
"solar_irradiance_day_4d": {
"name": "Solar irradiance day 4"
},
"solar_irradiance_night_0d": {
"name": "Solar irradiance tonight"
},
"solar_irradiance_night_1d": {
"name": "Solar irradiance night 1"
},
"solar_irradiance_night_2d": {
"name": "Solar irradiance night 2"
},
"solar_irradiance_night_3d": {
"name": "Solar irradiance night 3"
},
"solar_irradiance_night_4d": {
"name": "Solar irradiance night 4"
},
"thunderstorm_probability_day_0d": {
"name": "Thunderstorm probability today"
},
"thunderstorm_probability_day_1d": {
"name": "Thunderstorm probability day 1"
},
"thunderstorm_probability_day_2d": {
"name": "Thunderstorm probability day 2"
},
"thunderstorm_probability_day_3d": {
"name": "Thunderstorm probability day 3"
},
"thunderstorm_probability_day_4d": {
"name": "Thunderstorm probability day 4"
},
"thunderstorm_probability_night_0d": {
"name": "Thunderstorm probability tonight"
},
"thunderstorm_probability_night_1d": {
"name": "Thunderstorm probability night 1"
},
"thunderstorm_probability_night_2d": {
"name": "Thunderstorm probability night 2"
},
"thunderstorm_probability_night_3d": {
"name": "Thunderstorm probability night 3"
},
"thunderstorm_probability_night_4d": {
"name": "Thunderstorm probability night 4"
},
"tree_pollen_0d": {
"name": "Tree pollen today",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"tree_pollen_1d": {
"name": "Tree pollen day 1",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"tree_pollen_2d": {
"name": "Tree pollen day 2",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"tree_pollen_3d": {
"name": "Tree pollen day 3",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"tree_pollen_4d": {
"name": "Tree pollen day 4",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"uv_index": {
"name": "UV index",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"uv_index_0d": {
"name": "UV index today",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"uv_index_1d": {
"name": "UV index day 1",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"uv_index_2d": {
"name": "UV index day 2",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"uv_index_3d": {
"name": "UV index day 3",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"uv_index_4d": {
"name": "UV index day 4",
"state_attributes": {
"level": {
"name": "[%key:component::accuweather::entity::sensor::grass_pollen_0d::state_attributes::level::name%]",
"state": {
"good": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::good%]",
"hazardous": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::hazardous%]",
"high": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::high%]",
"low": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::low%]",
"moderate": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::moderate%]",
"unhealthy": "[%key:component::accuweather::entity::sensor::air_quality_0d::state::unhealthy%]"
}
}
}
},
"wet_bulb_temperature": {
"name": "Wet bulb temperature"
},
"wind_speed": {
"name": "[%key:component::weather::entity_component::_::state_attributes::wind_speed::name%]"
},
"wind_chill_temperature": {
"name": "Wind chill temperature"
},
"wind_gust_speed": {
"name": "[%key:component::weather::entity_component::_::state_attributes::wind_gust_speed::name%]"
},
"wind_gust_speed_day_0d": {
"name": "Wind gust speed today"
},
"wind_gust_speed_day_1d": {
"name": "Wind gust speed day 1"
},
"wind_gust_speed_day_2d": {
"name": "Wind gust speed day 2"
},
"wind_gust_speed_day_3d": {
"name": "Wind gust speed day 3"
},
"wind_gust_speed_day_4d": {
"name": "Wind gust speed day 4"
},
"wind_gust_speed_night_0d": {
"name": "Wind gust speed tonight"
},
"wind_gust_speed_night_1d": {
"name": "Wind gust speed night 1"
},
"wind_gust_speed_night_2d": {
"name": "Wind gust speed night 2"
},
"wind_gust_speed_night_3d": {
"name": "Wind gust speed night 3"
},
"wind_gust_speed_night_4d": {
"name": "Wind gust speed night 4"
},
"wind_speed_day_0d": {
"name": "Wind speed today"
},
"wind_speed_day_1d": {
"name": "Wind speed day 1"
},
"wind_speed_day_2d": {
"name": "Wind speed day 2"
},
"wind_speed_day_3d": {
"name": "Wind speed day 3"
},
"wind_speed_day_4d": {
"name": "Wind speed day 4"
},
"wind_speed_night_0d": {
"name": "Wind speed tonight"
},
"wind_speed_night_1d": {
"name": "Wind speed night 1"
},
"wind_speed_night_2d": {
"name": "Wind speed night 2"
},
"wind_speed_night_3d": {
"name": "Wind speed night 3"
},
"wind_speed_night_4d": {
"name": "Wind speed night 4"
}
}
},

View File

@@ -1,20 +1,24 @@
"""Support for the AccuWeather service."""
from __future__ import annotations
from statistics import mean
from typing import Any, cast
from typing import cast
from homeassistant.components.weather import (
ATTR_FORECAST_CLOUD_COVERAGE,
ATTR_FORECAST_CONDITION,
ATTR_FORECAST_NATIVE_APPARENT_TEMP,
ATTR_FORECAST_NATIVE_PRECIPITATION,
ATTR_FORECAST_NATIVE_TEMP,
ATTR_FORECAST_NATIVE_TEMP_LOW,
ATTR_FORECAST_NATIVE_WIND_GUST_SPEED,
ATTR_FORECAST_NATIVE_WIND_SPEED,
ATTR_FORECAST_PRECIPITATION_PROBABILITY,
ATTR_FORECAST_TIME,
ATTR_FORECAST_UV_INDEX,
ATTR_FORECAST_WIND_BEARING,
Forecast,
WeatherEntity,
SingleCoordinatorWeatherEntity,
WeatherEntityFeature,
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
@@ -24,19 +28,19 @@ from homeassistant.const import (
UnitOfSpeed,
UnitOfTemperature,
)
from homeassistant.core import HomeAssistant
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from homeassistant.util.dt import utc_from_timestamp
from homeassistant.util.unit_system import METRIC_SYSTEM
from . import AccuWeatherDataUpdateCoordinator
from .const import (
API_IMPERIAL,
API_METRIC,
ATTR_DIRECTION,
ATTR_FORECAST,
ATTR_SPEED,
ATTR_VALUE,
ATTRIBUTION,
CONDITION_CLASSES,
CONDITION_MAP,
DOMAIN,
)
@@ -54,95 +58,92 @@ async def async_setup_entry(
class AccuWeatherEntity(
CoordinatorEntity[AccuWeatherDataUpdateCoordinator], WeatherEntity
SingleCoordinatorWeatherEntity[AccuWeatherDataUpdateCoordinator]
):
"""Define an AccuWeather entity."""
_attr_has_entity_name = True
_attr_name = None
def __init__(self, coordinator: AccuWeatherDataUpdateCoordinator) -> None:
"""Initialize."""
super().__init__(coordinator)
# Coordinator data is used also for sensors which don't have units automatically
# converted, hence the weather entity's native units follow the configured unit
# system
if coordinator.hass.config.units is METRIC_SYSTEM:
self._attr_native_precipitation_unit = UnitOfPrecipitationDepth.MILLIMETERS
self._attr_native_pressure_unit = UnitOfPressure.HPA
self._attr_native_temperature_unit = UnitOfTemperature.CELSIUS
self._attr_native_visibility_unit = UnitOfLength.KILOMETERS
self._attr_native_wind_speed_unit = UnitOfSpeed.KILOMETERS_PER_HOUR
self._unit_system = API_METRIC
else:
self._unit_system = API_IMPERIAL
self._attr_native_precipitation_unit = UnitOfPrecipitationDepth.INCHES
self._attr_native_pressure_unit = UnitOfPressure.INHG
self._attr_native_temperature_unit = UnitOfTemperature.FAHRENHEIT
self._attr_native_visibility_unit = UnitOfLength.MILES
self._attr_native_wind_speed_unit = UnitOfSpeed.MILES_PER_HOUR
self._attr_native_precipitation_unit = UnitOfPrecipitationDepth.MILLIMETERS
self._attr_native_pressure_unit = UnitOfPressure.HPA
self._attr_native_temperature_unit = UnitOfTemperature.CELSIUS
self._attr_native_visibility_unit = UnitOfLength.KILOMETERS
self._attr_native_wind_speed_unit = UnitOfSpeed.KILOMETERS_PER_HOUR
self._attr_unique_id = coordinator.location_key
self._attr_attribution = ATTRIBUTION
self._attr_device_info = coordinator.device_info
if self.coordinator.forecast:
self._attr_supported_features = WeatherEntityFeature.FORECAST_DAILY
@property
def condition(self) -> str | None:
"""Return the current condition."""
try:
return [
k
for k, v in CONDITION_CLASSES.items()
if self.coordinator.data["WeatherIcon"] in v
][0]
except IndexError:
return None
return CONDITION_MAP.get(self.coordinator.data["WeatherIcon"])
@property
def cloud_coverage(self) -> float:
"""Return the Cloud coverage in %."""
return cast(float, self.coordinator.data["CloudCover"])
@property
def native_apparent_temperature(self) -> float:
"""Return the apparent temperature."""
return cast(
float, self.coordinator.data["ApparentTemperature"][API_METRIC][ATTR_VALUE]
)
@property
def native_temperature(self) -> float:
"""Return the temperature."""
return cast(
float, self.coordinator.data["Temperature"][self._unit_system]["Value"]
)
return cast(float, self.coordinator.data["Temperature"][API_METRIC][ATTR_VALUE])
@property
def native_pressure(self) -> float:
"""Return the pressure."""
return cast(
float, self.coordinator.data["Pressure"][self._unit_system]["Value"]
)
return cast(float, self.coordinator.data["Pressure"][API_METRIC][ATTR_VALUE])
@property
def native_dew_point(self) -> float:
"""Return the dew point."""
return cast(float, self.coordinator.data["DewPoint"][API_METRIC][ATTR_VALUE])
@property
def humidity(self) -> int:
"""Return the humidity."""
return cast(int, self.coordinator.data["RelativeHumidity"])
@property
def native_wind_gust_speed(self) -> float:
"""Return the wind gust speed."""
return cast(
float, self.coordinator.data["WindGust"][ATTR_SPEED][API_METRIC][ATTR_VALUE]
)
@property
def native_wind_speed(self) -> float:
"""Return the wind speed."""
return cast(
float, self.coordinator.data["Wind"]["Speed"][self._unit_system]["Value"]
float, self.coordinator.data["Wind"][ATTR_SPEED][API_METRIC][ATTR_VALUE]
)
@property
def wind_bearing(self) -> int:
"""Return the wind bearing."""
return cast(int, self.coordinator.data["Wind"]["Direction"]["Degrees"])
return cast(int, self.coordinator.data["Wind"][ATTR_DIRECTION]["Degrees"])
@property
def native_visibility(self) -> float:
"""Return the visibility."""
return cast(
float, self.coordinator.data["Visibility"][self._unit_system]["Value"]
)
return cast(float, self.coordinator.data["Visibility"][API_METRIC][ATTR_VALUE])
@property
def ozone(self) -> int | None:
"""Return the ozone level."""
# We only have ozone data for certain locations and only in the forecast data.
if self.coordinator.forecast and self.coordinator.data[ATTR_FORECAST][0].get(
"Ozone"
):
return cast(int, self.coordinator.data[ATTR_FORECAST][0]["Ozone"]["Value"])
return None
def uv_index(self) -> float:
"""Return the UV index."""
return cast(float, self.coordinator.data["UVIndex"])
@property
def forecast(self) -> list[Forecast] | None:
@@ -153,37 +154,30 @@ class AccuWeatherEntity(
return [
{
ATTR_FORECAST_TIME: utc_from_timestamp(item["EpochDate"]).isoformat(),
ATTR_FORECAST_NATIVE_TEMP: item["TemperatureMax"]["Value"],
ATTR_FORECAST_NATIVE_TEMP_LOW: item["TemperatureMin"]["Value"],
ATTR_FORECAST_NATIVE_PRECIPITATION: self._calc_precipitation(item),
ATTR_FORECAST_PRECIPITATION_PROBABILITY: round(
mean(
[
item["PrecipitationProbabilityDay"],
item["PrecipitationProbabilityNight"],
]
)
),
ATTR_FORECAST_NATIVE_WIND_SPEED: item["WindDay"]["Speed"]["Value"],
ATTR_FORECAST_WIND_BEARING: item["WindDay"]["Direction"]["Degrees"],
ATTR_FORECAST_CONDITION: [
k for k, v in CONDITION_CLASSES.items() if item["IconDay"] in v
][0],
ATTR_FORECAST_CLOUD_COVERAGE: item["CloudCoverDay"],
ATTR_FORECAST_NATIVE_TEMP: item["TemperatureMax"][ATTR_VALUE],
ATTR_FORECAST_NATIVE_TEMP_LOW: item["TemperatureMin"][ATTR_VALUE],
ATTR_FORECAST_NATIVE_APPARENT_TEMP: item["RealFeelTemperatureMax"][
ATTR_VALUE
],
ATTR_FORECAST_NATIVE_PRECIPITATION: item["TotalLiquidDay"][ATTR_VALUE],
ATTR_FORECAST_PRECIPITATION_PROBABILITY: item[
"PrecipitationProbabilityDay"
],
ATTR_FORECAST_NATIVE_WIND_SPEED: item["WindDay"][ATTR_SPEED][
ATTR_VALUE
],
ATTR_FORECAST_NATIVE_WIND_GUST_SPEED: item["WindGustDay"][ATTR_SPEED][
ATTR_VALUE
],
ATTR_FORECAST_UV_INDEX: item["UVIndex"][ATTR_VALUE],
ATTR_FORECAST_WIND_BEARING: item["WindDay"][ATTR_DIRECTION]["Degrees"],
ATTR_FORECAST_CONDITION: CONDITION_MAP.get(item["IconDay"]),
}
for item in self.coordinator.data[ATTR_FORECAST]
]
@staticmethod
def _calc_precipitation(day: dict[str, Any]) -> float:
"""Return sum of the precipitation."""
precip_sum = 0
precip_types = ["Rain", "Snow", "Ice"]
for precip in precip_types:
precip_sum = sum(
[
precip_sum,
day[f"{precip}Day"]["Value"],
day[f"{precip}Night"]["Value"],
]
)
return round(precip_sum, 1)
@callback
def _async_forecast_daily(self) -> list[Forecast] | None:
"""Return the daily forecast in native units."""
return self.forecast

View File

@@ -14,6 +14,7 @@ class AcmedaBase(entity.Entity):
"""Base representation of an Acmeda roller."""
_attr_should_poll = False
_attr_has_entity_name = True
def __init__(self, roller: aiopulse.Roller) -> None:
"""Initialize the roller."""
@@ -73,14 +74,9 @@ class AcmedaBase(entity.Entity):
return self.roller.id
@property
def name(self) -> str | None:
"""Return the name of roller."""
return self.roller.name
@property
def device_info(self) -> entity.DeviceInfo:
def device_info(self) -> dr.DeviceInfo:
"""Return the device info."""
return entity.DeviceInfo(
return dr.DeviceInfo(
identifiers={(DOMAIN, self.unique_id)},
manufacturer="Rollease Acmeda",
name=self.roller.name,

View File

@@ -2,11 +2,11 @@
from __future__ import annotations
import asyncio
from asyncio import timeout
from contextlib import suppress
from typing import Any
import aiopulse
import async_timeout
import voluptuous as vol
from homeassistant import config_entries
@@ -43,7 +43,7 @@ class AcmedaFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
hubs: list[aiopulse.Hub] = []
with suppress(asyncio.TimeoutError):
async with async_timeout.timeout(5):
async with timeout(5):
async for hub in aiopulse.Hub.discover():
if hub.id not in already_configured:
hubs.append(hub)

View File

@@ -45,7 +45,9 @@ async def async_setup_entry(
class AcmedaCover(AcmedaBase, CoverEntity):
"""Representation of a Acmeda cover device."""
"""Representation of an Acmeda cover device."""
_attr_name = None
@property
def current_cover_position(self) -> int | None:

View File

@@ -40,16 +40,11 @@ async def async_setup_entry(
class AcmedaBattery(AcmedaBase, SensorEntity):
"""Representation of a Acmeda cover device."""
"""Representation of an Acmeda cover sensor."""
_attr_device_class = SensorDeviceClass.BATTERY
_attr_native_unit_of_measurement = PERCENTAGE
@property
def name(self) -> str:
"""Return the name of roller."""
return f"{super().name} Battery"
@property
def native_value(self) -> float | int | None:
"""Return the state of the device."""

View File

@@ -2,7 +2,7 @@
from __future__ import annotations
import logging
import telnetlib
import telnetlib # pylint: disable=deprecated-module
from typing import Final
import voluptuous as vol
@@ -40,7 +40,7 @@ def get_scanner(
class ActiontecDeviceScanner(DeviceScanner):
"""This class queries an actiontec router for connected devices."""
"""Class which queries an actiontec router for connected devices."""
def __init__(self, config: ConfigType) -> None:
"""Initialize the scanner."""

View File

@@ -1,7 +1,7 @@
"""Support for Adax wifi-enabled home heaters."""
from __future__ import annotations
from typing import Any
from typing import Any, cast
from adax import Adax
from adax_local import Adax as AdaxLocal
@@ -23,7 +23,7 @@ from homeassistant.const import (
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.aiohttp_client import async_get_clientsession
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.device_registry import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import ACCOUNT_ID, CONNECTION_TYPE, DOMAIN, LOCAL
@@ -79,7 +79,10 @@ class AdaxDevice(ClimateEntity):
self._attr_unique_id = f"{heater_data['homeId']}_{heater_data['id']}"
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, heater_data["id"])},
name=self.name,
# Instead of setting the device name to the entity name, adax
# should be updated to set has_entity_name = True, and set the entity
# name to None
name=cast(str | None, self.name),
manufacturer="Adax",
)

View File

@@ -4,8 +4,8 @@ from __future__ import annotations
from adguardhome import AdGuardHome, AdGuardHomeError
from homeassistant.config_entries import SOURCE_HASSIO, ConfigEntry
from homeassistant.helpers.device_registry import DeviceEntryType
from homeassistant.helpers.entity import DeviceInfo, Entity
from homeassistant.helpers.device_registry import DeviceEntryType, DeviceInfo
from homeassistant.helpers.entity import Entity
from .const import DATA_ADGUARD_VERSION, DOMAIN, LOGGER

View File

@@ -39,56 +39,56 @@ class AdGuardHomeEntityDescription(
SENSORS: tuple[AdGuardHomeEntityDescription, ...] = (
AdGuardHomeEntityDescription(
key="dns_queries",
name="DNS queries",
translation_key="dns_queries",
icon="mdi:magnify",
native_unit_of_measurement="queries",
value_fn=lambda adguard: adguard.stats.dns_queries(),
),
AdGuardHomeEntityDescription(
key="blocked_filtering",
name="DNS queries blocked",
translation_key="dns_queries_blocked",
icon="mdi:magnify-close",
native_unit_of_measurement="queries",
value_fn=lambda adguard: adguard.stats.blocked_filtering(),
),
AdGuardHomeEntityDescription(
key="blocked_percentage",
name="DNS queries blocked ratio",
translation_key="dns_queries_blocked_ratio",
icon="mdi:magnify-close",
native_unit_of_measurement=PERCENTAGE,
value_fn=lambda adguard: adguard.stats.blocked_percentage(),
),
AdGuardHomeEntityDescription(
key="blocked_parental",
name="Parental control blocked",
translation_key="parental_control_blocked",
icon="mdi:human-male-girl",
native_unit_of_measurement="requests",
value_fn=lambda adguard: adguard.stats.replaced_parental(),
),
AdGuardHomeEntityDescription(
key="blocked_safebrowsing",
name="Safe browsing blocked",
translation_key="safe_browsing_blocked",
icon="mdi:shield-half-full",
native_unit_of_measurement="requests",
value_fn=lambda adguard: adguard.stats.replaced_safebrowsing(),
),
AdGuardHomeEntityDescription(
key="enforced_safesearch",
name="Safe searches enforced",
translation_key="safe_searches_enforced",
icon="mdi:shield-search",
native_unit_of_measurement="requests",
value_fn=lambda adguard: adguard.stats.replaced_safesearch(),
),
AdGuardHomeEntityDescription(
key="average_speed",
name="Average processing speed",
translation_key="average_processing_speed",
icon="mdi:speedometer",
native_unit_of_measurement=UnitOfTime.MILLISECONDS,
value_fn=lambda adguard: adguard.stats.avg_processing_time(),
),
AdGuardHomeEntityDescription(
key="rules_count",
name="Rules count",
translation_key="rules_count",
icon="mdi:counter",
native_unit_of_measurement="rules",
value_fn=lambda adguard: adguard.filtering.rules_count(allowlist=False),

View File

@@ -1,65 +1,43 @@
add_url:
name: Add url
description: Add a new filter subscription to AdGuard Home.
fields:
name:
name: Name
description: The name of the filter subscription.
required: true
example: Example
selector:
text:
url:
name: Url
description: The filter URL to subscribe to, containing the filter rules.
required: true
example: https://www.example.com/filter/1.txt
selector:
text:
remove_url:
name: Remove url
description: Removes a filter subscription from AdGuard Home.
fields:
url:
name: Url
description: The filter subscription URL to remove.
required: true
example: https://www.example.com/filter/1.txt
selector:
text:
enable_url:
name: Enable url
description: Enables a filter subscription in AdGuard Home.
fields:
url:
name: Url
description: The filter subscription URL to enable.
required: true
example: https://www.example.com/filter/1.txt
selector:
text:
disable_url:
name: Disable url
description: Disables a filter subscription in AdGuard Home.
fields:
url:
name: Url
description: The filter subscription URL to disable.
required: true
example: https://www.example.com/filter/1.txt
selector:
text:
refresh:
name: Refresh
description: Refresh all filter subscriptions in AdGuard Home.
fields:
force:
name: Force
description: Force update (bypasses AdGuard Home throttling). "true" to force, or "false" to omit for a regular refresh.
default: false
selector:
boolean:

View File

@@ -24,5 +24,109 @@
"existing_instance_updated": "Updated existing configuration.",
"already_configured": "[%key:common::config_flow::abort::already_configured_service%]"
}
},
"entity": {
"sensor": {
"dns_queries": {
"name": "DNS queries"
},
"dns_queries_blocked": {
"name": "DNS queries blocked"
},
"dns_queries_blocked_ratio": {
"name": "DNS queries blocked ratio"
},
"parental_control_blocked": {
"name": "Parental control blocked"
},
"safe_browsing_blocked": {
"name": "Safe browsing blocked"
},
"safe_searches_enforced": {
"name": "Safe searches enforced"
},
"average_processing_speed": {
"name": "Average processing speed"
},
"rules_count": {
"name": "Rules count"
}
},
"switch": {
"protection": {
"name": "Protection"
},
"parental": {
"name": "Parental control"
},
"safe_search": {
"name": "Safe search"
},
"safe_browsing": {
"name": "Safe browsing"
},
"filtering": {
"name": "Filtering"
},
"query_log": {
"name": "Query log"
}
}
},
"services": {
"add_url": {
"name": "Add URL",
"description": "Add a new filter subscription to AdGuard Home.",
"fields": {
"name": {
"name": "[%key:common::config_flow::data::name%]",
"description": "The name of the filter subscription."
},
"url": {
"name": "[%key:common::config_flow::data::url%]",
"description": "The filter URL to subscribe to, containing the filter rules."
}
}
},
"remove_url": {
"name": "Remove URL",
"description": "Removes a filter subscription from AdGuard Home.",
"fields": {
"url": {
"name": "[%key:common::config_flow::data::url%]",
"description": "The filter subscription URL to remove."
}
}
},
"enable_url": {
"name": "Enable URL",
"description": "Enables a filter subscription in AdGuard Home.",
"fields": {
"url": {
"name": "[%key:common::config_flow::data::url%]",
"description": "The filter subscription URL to enable."
}
}
},
"disable_url": {
"name": "Disable URL",
"description": "Disables a filter subscription in AdGuard Home.",
"fields": {
"url": {
"name": "[%key:common::config_flow::data::url%]",
"description": "The filter subscription URL to disable."
}
}
},
"refresh": {
"name": "Refresh",
"description": "Refresh all filter subscriptions in AdGuard Home.",
"fields": {
"force": {
"name": "Force",
"description": "Force update (bypasses AdGuard Home throttling). \"true\" to force, or \"false\" to omit for a regular refresh."
}
}
}
}
}

View File

@@ -40,7 +40,7 @@ class AdGuardHomeSwitchEntityDescription(
SWITCHES: tuple[AdGuardHomeSwitchEntityDescription, ...] = (
AdGuardHomeSwitchEntityDescription(
key="protection",
name="Protection",
translation_key="protection",
icon="mdi:shield-check",
is_on_fn=lambda adguard: adguard.protection_enabled,
turn_on_fn=lambda adguard: adguard.enable_protection,
@@ -48,7 +48,7 @@ SWITCHES: tuple[AdGuardHomeSwitchEntityDescription, ...] = (
),
AdGuardHomeSwitchEntityDescription(
key="parental",
name="Parental control",
translation_key="parental",
icon="mdi:shield-check",
is_on_fn=lambda adguard: adguard.parental.enabled,
turn_on_fn=lambda adguard: adguard.parental.enable,
@@ -56,7 +56,7 @@ SWITCHES: tuple[AdGuardHomeSwitchEntityDescription, ...] = (
),
AdGuardHomeSwitchEntityDescription(
key="safesearch",
name="Safe search",
translation_key="safe_search",
icon="mdi:shield-check",
is_on_fn=lambda adguard: adguard.safesearch.enabled,
turn_on_fn=lambda adguard: adguard.safesearch.enable,
@@ -64,7 +64,7 @@ SWITCHES: tuple[AdGuardHomeSwitchEntityDescription, ...] = (
),
AdGuardHomeSwitchEntityDescription(
key="safebrowsing",
name="Safe browsing",
translation_key="safe_browsing",
icon="mdi:shield-check",
is_on_fn=lambda adguard: adguard.safebrowsing.enabled,
turn_on_fn=lambda adguard: adguard.safebrowsing.enable,
@@ -72,7 +72,7 @@ SWITCHES: tuple[AdGuardHomeSwitchEntityDescription, ...] = (
),
AdGuardHomeSwitchEntityDescription(
key="filtering",
name="Filtering",
translation_key="filtering",
icon="mdi:shield-check",
is_on_fn=lambda adguard: adguard.filtering.enabled,
turn_on_fn=lambda adguard: adguard.filtering.enable,
@@ -80,7 +80,7 @@ SWITCHES: tuple[AdGuardHomeSwitchEntityDescription, ...] = (
),
AdGuardHomeSwitchEntityDescription(
key="querylog",
name="Query log",
translation_key="query_log",
icon="mdi:shield-check",
is_on_fn=lambda adguard: adguard.querylog.enabled,
turn_on_fn=lambda adguard: adguard.querylog.enable,

View File

@@ -1,12 +1,12 @@
"""Support for Automation Device Specification (ADS)."""
import asyncio
from asyncio import timeout
from collections import namedtuple
import ctypes
import logging
import struct
import threading
import async_timeout
import pyads
import voluptuous as vol
@@ -301,7 +301,7 @@ class AdsEntity(Entity):
self._ads_hub.add_device_notification, ads_var, plctype, update
)
try:
async with async_timeout.timeout(10):
async with timeout(10):
await self._event.wait()
except asyncio.TimeoutError:
_LOGGER.debug("Variable %s: Timeout during first update", ads_var)

View File

@@ -10,6 +10,7 @@ import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import ConfigType, DiscoveryInfoType, StateType
from .. import ads
from . import (
ADS_TYPEMAP,
CONF_ADS_FACTOR,
@@ -18,7 +19,6 @@ from . import (
STATE_KEY_STATE,
AdsEntity,
)
from .. import ads
DEFAULT_NAME = "ADS sensor"
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(

View File

@@ -1,19 +1,13 @@
# Describes the format for available ADS services
write_data_by_name:
name: Write data by name
description: Write a value to the connected ADS device.
fields:
adsvar:
name: ADS variable
description: The name of the variable to write to.
required: true
example: ".global_var"
selector:
text:
adstype:
name: ADS type
description: The data type of the variable to write to.
required: true
selector:
select:
@@ -25,8 +19,6 @@ write_data_by_name:
- "udint"
- "uint"
value:
name: Value
description: The value to write to the variable.
required: true
selector:
number:

View File

@@ -0,0 +1,22 @@
{
"services": {
"write_data_by_name": {
"name": "Write data by name",
"description": "Write a value to the connected ADS device.",
"fields": {
"adsvar": {
"name": "ADS variable",
"description": "The name of the variable to write to."
},
"adstype": {
"name": "ADS type",
"description": "The data type of the variable to write to."
},
"value": {
"name": "Value",
"description": "The value to write to the variable."
}
}
}
}
}

View File

@@ -7,11 +7,11 @@ from advantage_air import ApiError, advantage_air
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_IP_ADDRESS, CONF_PORT, Platform
from homeassistant.core import HomeAssistant
from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers.aiohttp_client import async_get_clientsession
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
from .const import ADVANTAGE_AIR_RETRY, DOMAIN
from .models import AdvantageAirData
ADVANTAGE_AIR_SYNC_INTERVAL = 15
PLATFORMS = [
@@ -53,29 +53,10 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
update_interval=timedelta(seconds=ADVANTAGE_AIR_SYNC_INTERVAL),
)
def error_handle_factory(func):
"""Return the provided API function wrapped.
Adds an error handler and coordinator refresh.
"""
async def error_handle(param):
try:
if await func(param):
await coordinator.async_refresh()
except ApiError as err:
raise HomeAssistantError(err) from err
return error_handle
await coordinator.async_config_entry_first_refresh()
hass.data.setdefault(DOMAIN, {})
hass.data[DOMAIN][entry.entry_id] = {
"coordinator": coordinator,
"aircon": error_handle_factory(api.aircon.async_set),
"lights": error_handle_factory(api.lights.async_set),
}
hass.data[DOMAIN][entry.entry_id] = AdvantageAirData(coordinator, api)
await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)

View File

@@ -1,8 +1,6 @@
"""Binary Sensor platform for Advantage Air integration."""
from __future__ import annotations
from typing import Any
from homeassistant.components.binary_sensor import (
BinarySensorDeviceClass,
BinarySensorEntity,
@@ -14,6 +12,7 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import DOMAIN as ADVANTAGE_AIR_DOMAIN
from .entity import AdvantageAirAcEntity, AdvantageAirZoneEntity
from .models import AdvantageAirData
PARALLEL_UPDATES = 0
@@ -25,10 +24,10 @@ async def async_setup_entry(
) -> None:
"""Set up AdvantageAir Binary Sensor platform."""
instance = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
instance: AdvantageAirData = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
entities: list[BinarySensorEntity] = []
if aircons := instance["coordinator"].data.get("aircons"):
if aircons := instance.coordinator.data.get("aircons"):
for ac_key, ac_device in aircons.items():
entities.append(AdvantageAirFilter(instance, ac_key))
for zone_key, zone in ac_device["zones"].items():
@@ -48,7 +47,7 @@ class AdvantageAirFilter(AdvantageAirAcEntity, BinarySensorEntity):
_attr_entity_category = EntityCategory.DIAGNOSTIC
_attr_name = "Filter"
def __init__(self, instance: dict[str, Any], ac_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str) -> None:
"""Initialize an Advantage Air Filter sensor."""
super().__init__(instance, ac_key)
self._attr_unique_id += "-filter"
@@ -64,7 +63,7 @@ class AdvantageAirZoneMotion(AdvantageAirZoneEntity, BinarySensorEntity):
_attr_device_class = BinarySensorDeviceClass.MOTION
def __init__(self, instance: dict[str, Any], ac_key: str, zone_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str, zone_key: str) -> None:
"""Initialize an Advantage Air Zone Motion sensor."""
super().__init__(instance, ac_key, zone_key)
self._attr_name = f'{self._zone["name"]} motion'
@@ -82,7 +81,7 @@ class AdvantageAirZoneMyZone(AdvantageAirZoneEntity, BinarySensorEntity):
_attr_entity_registry_enabled_default = False
_attr_entity_category = EntityCategory.DIAGNOSTIC
def __init__(self, instance: dict[str, Any], ac_key: str, zone_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str, zone_key: str) -> None:
"""Initialize an Advantage Air Zone MyZone sensor."""
super().__init__(instance, ac_key, zone_key)
self._attr_name = f'{self._zone["name"]} myZone'

View File

@@ -5,6 +5,8 @@ import logging
from typing import Any
from homeassistant.components.climate import (
ATTR_TARGET_TEMP_HIGH,
ATTR_TARGET_TEMP_LOW,
FAN_AUTO,
FAN_HIGH,
FAN_LOW,
@@ -26,24 +28,17 @@ from .const import (
DOMAIN as ADVANTAGE_AIR_DOMAIN,
)
from .entity import AdvantageAirAcEntity, AdvantageAirZoneEntity
from .models import AdvantageAirData
ADVANTAGE_AIR_HVAC_MODES = {
"heat": HVACMode.HEAT,
"cool": HVACMode.COOL,
"vent": HVACMode.FAN_ONLY,
"dry": HVACMode.DRY,
"myauto": HVACMode.AUTO,
"myauto": HVACMode.HEAT_COOL,
}
HASS_HVAC_MODES = {v: k for k, v in ADVANTAGE_AIR_HVAC_MODES.items()}
AC_HVAC_MODES = [
HVACMode.OFF,
HVACMode.COOL,
HVACMode.HEAT,
HVACMode.FAN_ONLY,
HVACMode.DRY,
]
ADVANTAGE_AIR_FAN_MODES = {
"autoAA": FAN_AUTO,
"low": FAN_LOW,
@@ -53,7 +48,14 @@ ADVANTAGE_AIR_FAN_MODES = {
HASS_FAN_MODES = {v: k for k, v in ADVANTAGE_AIR_FAN_MODES.items()}
FAN_SPEEDS = {FAN_LOW: 30, FAN_MEDIUM: 60, FAN_HIGH: 100}
ZONE_HVAC_MODES = [HVACMode.OFF, HVACMode.HEAT_COOL]
ADVANTAGE_AIR_AUTOFAN = "aaAutoFanModeEnabled"
ADVANTAGE_AIR_MYZONE = "MyZone"
ADVANTAGE_AIR_MYAUTO = "MyAuto"
ADVANTAGE_AIR_MYAUTO_ENABLED = "myAutoModeEnabled"
ADVANTAGE_AIR_MYTEMP = "MyTemp"
ADVANTAGE_AIR_MYTEMP_ENABLED = "climateControlModeEnabled"
ADVANTAGE_AIR_HEAT_TARGET = "myAutoHeatTargetTemp"
ADVANTAGE_AIR_COOL_TARGET = "myAutoCoolTargetTemp"
PARALLEL_UPDATES = 0
@@ -67,15 +69,15 @@ async def async_setup_entry(
) -> None:
"""Set up AdvantageAir climate platform."""
instance = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
instance: AdvantageAirData = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
entities: list[ClimateEntity] = []
if aircons := instance["coordinator"].data.get("aircons"):
if aircons := instance.coordinator.data.get("aircons"):
for ac_key, ac_device in aircons.items():
entities.append(AdvantageAirAC(instance, ac_key))
for zone_key, zone in ac_device["zones"].items():
# Only add zone climate control when zone is in temperature control
if zone["type"] != 0:
if zone["type"] > 0:
entities.append(AdvantageAirZone(instance, ac_key, zone_key))
async_add_entities(entities)
@@ -83,24 +85,45 @@ async def async_setup_entry(
class AdvantageAirAC(AdvantageAirAcEntity, ClimateEntity):
"""AdvantageAir AC unit."""
_attr_fan_modes = [FAN_LOW, FAN_MEDIUM, FAN_HIGH]
_attr_temperature_unit = UnitOfTemperature.CELSIUS
_attr_target_temperature_step = PRECISION_WHOLE
_attr_max_temp = 32
_attr_min_temp = 16
_attr_fan_modes = [FAN_AUTO, FAN_LOW, FAN_MEDIUM, FAN_HIGH]
_attr_hvac_modes = AC_HVAC_MODES
_attr_supported_features = (
ClimateEntityFeature.TARGET_TEMPERATURE | ClimateEntityFeature.FAN_MODE
)
_attr_name = None
def __init__(self, instance: dict[str, Any], ac_key: str) -> None:
_attr_hvac_modes = [
HVACMode.OFF,
HVACMode.COOL,
HVACMode.HEAT,
HVACMode.FAN_ONLY,
HVACMode.DRY,
]
_attr_supported_features = ClimateEntityFeature.FAN_MODE
def __init__(self, instance: AdvantageAirData, ac_key: str) -> None:
"""Initialize an AdvantageAir AC unit."""
super().__init__(instance, ac_key)
if self._ac.get("myAutoModeEnabled"):
self._attr_hvac_modes = AC_HVAC_MODES + [HVACMode.AUTO]
# Set supported features and HVAC modes based on current operating mode
if self._ac.get(ADVANTAGE_AIR_MYAUTO_ENABLED):
# MyAuto
self._attr_supported_features |= (
ClimateEntityFeature.TARGET_TEMPERATURE
| ClimateEntityFeature.TARGET_TEMPERATURE_RANGE
)
self._attr_hvac_modes += [HVACMode.HEAT_COOL]
elif not self._ac.get(ADVANTAGE_AIR_MYTEMP_ENABLED):
# MyZone
self._attr_supported_features |= ClimateEntityFeature.TARGET_TEMPERATURE
# Add "ezfan" mode if supported
if self._ac.get(ADVANTAGE_AIR_AUTOFAN):
self._attr_fan_modes += [FAN_AUTO]
@property
def target_temperature(self) -> float:
def target_temperature(self) -> float | None:
"""Return the current target temperature."""
return self._ac["setTemp"]
@@ -116,53 +139,71 @@ class AdvantageAirAC(AdvantageAirAcEntity, ClimateEntity):
"""Return the current fan modes."""
return ADVANTAGE_AIR_FAN_MODES.get(self._ac["fan"])
@property
def target_temperature_high(self) -> float | None:
"""Return the temperature cool mode is enabled."""
return self._ac.get(ADVANTAGE_AIR_COOL_TARGET)
@property
def target_temperature_low(self) -> float | None:
"""Return the temperature heat mode is enabled."""
return self._ac.get(ADVANTAGE_AIR_HEAT_TARGET)
async def async_turn_on(self) -> None:
"""Set the HVAC State to on."""
await self.async_update_ac({"state": ADVANTAGE_AIR_STATE_ON})
async def async_turn_off(self) -> None:
"""Set the HVAC State to off."""
await self.async_update_ac(
{
"state": ADVANTAGE_AIR_STATE_OFF,
}
)
async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None:
"""Set the HVAC Mode and State."""
if hvac_mode == HVACMode.OFF:
await self.aircon(
{self.ac_key: {"info": {"state": ADVANTAGE_AIR_STATE_OFF}}}
)
await self.async_update_ac({"state": ADVANTAGE_AIR_STATE_OFF})
else:
await self.aircon(
await self.async_update_ac(
{
self.ac_key: {
"info": {
"state": ADVANTAGE_AIR_STATE_ON,
"mode": HASS_HVAC_MODES.get(hvac_mode),
}
}
"state": ADVANTAGE_AIR_STATE_ON,
"mode": HASS_HVAC_MODES.get(hvac_mode),
}
)
async def async_set_fan_mode(self, fan_mode: str) -> None:
"""Set the Fan Mode."""
await self.aircon(
{self.ac_key: {"info": {"fan": HASS_FAN_MODES.get(fan_mode)}}}
)
await self.async_update_ac({"fan": HASS_FAN_MODES.get(fan_mode)})
async def async_set_temperature(self, **kwargs: Any) -> None:
"""Set the Temperature."""
temp = kwargs.get(ATTR_TEMPERATURE)
await self.aircon({self.ac_key: {"info": {"setTemp": temp}}})
if ATTR_TEMPERATURE in kwargs:
await self.async_update_ac({"setTemp": kwargs[ATTR_TEMPERATURE]})
if ATTR_TARGET_TEMP_LOW in kwargs and ATTR_TARGET_TEMP_HIGH in kwargs:
await self.async_update_ac(
{
ADVANTAGE_AIR_COOL_TARGET: kwargs[ATTR_TARGET_TEMP_HIGH],
ADVANTAGE_AIR_HEAT_TARGET: kwargs[ATTR_TARGET_TEMP_LOW],
}
)
class AdvantageAirZone(AdvantageAirZoneEntity, ClimateEntity):
"""AdvantageAir Zone control."""
"""AdvantageAir MyTemp Zone control."""
_attr_hvac_modes = [HVACMode.OFF, HVACMode.HEAT_COOL]
_attr_supported_features = ClimateEntityFeature.TARGET_TEMPERATURE
_attr_temperature_unit = UnitOfTemperature.CELSIUS
_attr_target_temperature_step = PRECISION_WHOLE
_attr_max_temp = 32
_attr_min_temp = 16
_attr_hvac_modes = ZONE_HVAC_MODES
_attr_supported_features = ClimateEntityFeature.TARGET_TEMPERATURE
def __init__(self, instance: dict[str, Any], ac_key: str, zone_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str, zone_key: str) -> None:
"""Initialize an AdvantageAir Zone control."""
super().__init__(instance, ac_key, zone_key)
self._attr_name = self._zone["name"]
self._attr_unique_id = (
f'{self.coordinator.data["system"]["rid"]}-{ac_key}-{zone_key}'
)
@property
def hvac_mode(self) -> HVACMode:
@@ -172,7 +213,7 @@ class AdvantageAirZone(AdvantageAirZoneEntity, ClimateEntity):
return HVACMode.OFF
@property
def current_temperature(self) -> float:
def current_temperature(self) -> float | None:
"""Return the current temperature."""
return self._zone["measuredTemp"]
@@ -181,26 +222,22 @@ class AdvantageAirZone(AdvantageAirZoneEntity, ClimateEntity):
"""Return the target temperature."""
return self._zone["setTemp"]
async def async_turn_on(self) -> None:
"""Set the HVAC State to on."""
await self.async_update_zone({"state": ADVANTAGE_AIR_STATE_OPEN})
async def async_turn_off(self) -> None:
"""Set the HVAC State to off."""
await self.async_update_zone({"state": ADVANTAGE_AIR_STATE_CLOSE})
async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None:
"""Set the HVAC Mode and State."""
if hvac_mode == HVACMode.OFF:
await self.aircon(
{
self.ac_key: {
"zones": {self.zone_key: {"state": ADVANTAGE_AIR_STATE_CLOSE}}
}
}
)
await self.async_turn_off()
else:
await self.aircon(
{
self.ac_key: {
"zones": {self.zone_key: {"state": ADVANTAGE_AIR_STATE_OPEN}}
}
}
)
await self.async_turn_on()
async def async_set_temperature(self, **kwargs: Any) -> None:
"""Set the Temperature."""
temp = kwargs.get(ATTR_TEMPERATURE)
await self.aircon({self.ac_key: {"zones": {self.zone_key: {"setTemp": temp}}}})
await self.async_update_zone({"setTemp": temp})

View File

@@ -16,7 +16,8 @@ from .const import (
ADVANTAGE_AIR_STATE_OPEN,
DOMAIN as ADVANTAGE_AIR_DOMAIN,
)
from .entity import AdvantageAirZoneEntity
from .entity import AdvantageAirThingEntity, AdvantageAirZoneEntity
from .models import AdvantageAirData
PARALLEL_UPDATES = 0
@@ -28,15 +29,25 @@ async def async_setup_entry(
) -> None:
"""Set up AdvantageAir cover platform."""
instance = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
instance: AdvantageAirData = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
entities: list[CoverEntity] = []
if aircons := instance["coordinator"].data.get("aircons"):
if aircons := instance.coordinator.data.get("aircons"):
for ac_key, ac_device in aircons.items():
for zone_key, zone in ac_device["zones"].items():
# Only add zone vent controls when zone in vent control mode.
if zone["type"] == 0:
entities.append(AdvantageAirZoneVent(instance, ac_key, zone_key))
if things := instance.coordinator.data.get("myThings"):
for thing in things["things"].values():
if thing["channelDipState"] in [1, 2]: # 1 = "Blind", 2 = "Blind 2"
entities.append(
AdvantageAirThingCover(instance, thing, CoverDeviceClass.BLIND)
)
elif thing["channelDipState"] == 3: # 3 = "Garage door"
entities.append(
AdvantageAirThingCover(instance, thing, CoverDeviceClass.GARAGE)
)
async_add_entities(entities)
@@ -50,7 +61,7 @@ class AdvantageAirZoneVent(AdvantageAirZoneEntity, CoverEntity):
| CoverEntityFeature.SET_POSITION
)
def __init__(self, instance: dict[str, Any], ac_key: str, zone_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str, zone_key: str) -> None:
"""Initialize an Advantage Air Zone Vent."""
super().__init__(instance, ac_key, zone_key)
self._attr_name = self._zone["name"]
@@ -69,47 +80,52 @@ class AdvantageAirZoneVent(AdvantageAirZoneEntity, CoverEntity):
async def async_open_cover(self, **kwargs: Any) -> None:
"""Fully open zone vent."""
await self.aircon(
{
self.ac_key: {
"zones": {
self.zone_key: {"state": ADVANTAGE_AIR_STATE_OPEN, "value": 100}
}
}
}
await self.async_update_zone(
{"state": ADVANTAGE_AIR_STATE_OPEN, "value": 100},
)
async def async_close_cover(self, **kwargs: Any) -> None:
"""Fully close zone vent."""
await self.aircon(
{
self.ac_key: {
"zones": {self.zone_key: {"state": ADVANTAGE_AIR_STATE_CLOSE}}
}
}
)
await self.async_update_zone({"state": ADVANTAGE_AIR_STATE_CLOSE})
async def async_set_cover_position(self, **kwargs: Any) -> None:
"""Change vent position."""
position = round(kwargs[ATTR_POSITION] / 5) * 5
if position == 0:
await self.aircon(
{
self.ac_key: {
"zones": {self.zone_key: {"state": ADVANTAGE_AIR_STATE_CLOSE}}
}
}
)
await self.async_update_zone({"state": ADVANTAGE_AIR_STATE_CLOSE})
else:
await self.aircon(
await self.async_update_zone(
{
self.ac_key: {
"zones": {
self.zone_key: {
"state": ADVANTAGE_AIR_STATE_OPEN,
"value": position,
}
}
}
"state": ADVANTAGE_AIR_STATE_OPEN,
"value": position,
}
)
class AdvantageAirThingCover(AdvantageAirThingEntity, CoverEntity):
"""Representation of Advantage Air Cover controlled by MyPlace."""
_attr_supported_features = CoverEntityFeature.OPEN | CoverEntityFeature.CLOSE
def __init__(
self,
instance: AdvantageAirData,
thing: dict[str, Any],
device_class: CoverDeviceClass,
) -> None:
"""Initialize an Advantage Air Things Cover."""
super().__init__(instance, thing)
self._attr_device_class = device_class
@property
def is_closed(self) -> bool:
"""Return if cover is fully closed."""
return self._data["value"] == 0
async def async_open_cover(self, **kwargs: Any) -> None:
"""Fully open zone vent."""
return await self.async_turn_on()
async def async_close_cover(self, **kwargs: Any) -> None:
"""Fully close zone vent."""
return await self.async_turn_off()

View File

@@ -9,17 +9,30 @@ from homeassistant.core import HomeAssistant
from .const import DOMAIN as ADVANTAGE_AIR_DOMAIN
TO_REDACT = ["dealerPhoneNumber", "latitude", "logoPIN", "longitude", "postCode"]
TO_REDACT = [
"dealerPhoneNumber",
"latitude",
"logoPIN",
"longitude",
"postCode",
"rid",
"deviceNames",
"deviceIds",
"deviceIdsV2",
"backupId",
]
async def async_get_config_entry_diagnostics(
hass: HomeAssistant, config_entry: ConfigEntry
) -> dict[str, Any]:
"""Return diagnostics for a config entry."""
data = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]["coordinator"].data
data = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id].coordinator.data
# Return only the relevant children
return {
"aircons": data["aircons"],
"aircons": data.get("aircons"),
"myLights": data.get("myLights"),
"myThings": data.get("myThings"),
"system": async_redact_data(data["system"], TO_REDACT),
}

View File

@@ -1,11 +1,14 @@
"""Advantage Air parent entity class."""
from typing import Any
from homeassistant.helpers.entity import DeviceInfo
from advantage_air import ApiError
from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers.device_registry import DeviceInfo
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from .const import DOMAIN
from .models import AdvantageAirData
class AdvantageAirEntity(CoordinatorEntity):
@@ -13,19 +16,34 @@ class AdvantageAirEntity(CoordinatorEntity):
_attr_has_entity_name = True
def __init__(self, instance: dict[str, Any]) -> None:
def __init__(self, instance: AdvantageAirData) -> None:
"""Initialize common aspects of an Advantage Air entity."""
super().__init__(instance["coordinator"])
super().__init__(instance.coordinator)
self._attr_unique_id: str = self.coordinator.data["system"]["rid"]
def update_handle_factory(self, func, *keys):
"""Return the provided API function wrapped.
Adds an error handler and coordinator refresh, and presets keys.
"""
async def update_handle(*values):
try:
if await func(*keys, *values):
await self.coordinator.async_refresh()
except ApiError as err:
raise HomeAssistantError(err) from err
return update_handle
class AdvantageAirAcEntity(AdvantageAirEntity):
"""Parent class for Advantage Air AC Entities."""
def __init__(self, instance: dict[str, Any], ac_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str) -> None:
"""Initialize common aspects of an Advantage Air ac entity."""
super().__init__(instance)
self.aircon = instance["aircon"]
self.ac_key: str = ac_key
self._attr_unique_id += f"-{ac_key}"
@@ -36,6 +54,9 @@ class AdvantageAirAcEntity(AdvantageAirEntity):
model=self.coordinator.data["system"]["sysType"],
name=self.coordinator.data["aircons"][self.ac_key]["info"]["name"],
)
self.async_update_ac = self.update_handle_factory(
instance.api.aircon.async_update_ac, self.ac_key
)
@property
def _ac(self) -> dict[str, Any]:
@@ -45,12 +66,58 @@ class AdvantageAirAcEntity(AdvantageAirEntity):
class AdvantageAirZoneEntity(AdvantageAirAcEntity):
"""Parent class for Advantage Air Zone Entities."""
def __init__(self, instance: dict[str, Any], ac_key: str, zone_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str, zone_key: str) -> None:
"""Initialize common aspects of an Advantage Air zone entity."""
super().__init__(instance, ac_key)
self.zone_key: str = zone_key
self._attr_unique_id += f"-{zone_key}"
self.async_update_zone = self.update_handle_factory(
instance.api.aircon.async_update_zone, self.ac_key, self.zone_key
)
@property
def _zone(self) -> dict[str, Any]:
return self.coordinator.data["aircons"][self.ac_key]["zones"][self.zone_key]
class AdvantageAirThingEntity(AdvantageAirEntity):
"""Parent class for Advantage Air Things Entities."""
_attr_name = None
def __init__(self, instance: AdvantageAirData, thing: dict[str, Any]) -> None:
"""Initialize common aspects of an Advantage Air Things entity."""
super().__init__(instance)
self._id = thing["id"]
self._attr_unique_id += f"-{self._id}"
self._attr_device_info = DeviceInfo(
via_device=(DOMAIN, self.coordinator.data["system"]["rid"]),
identifiers={(DOMAIN, self._attr_unique_id)},
manufacturer="Advantage Air",
model="MyPlace",
name=thing["name"],
)
self.async_update_value = self.update_handle_factory(
instance.api.things.async_update_value, self._id
)
@property
def _data(self) -> dict:
"""Return the thing data."""
return self.coordinator.data["myThings"]["things"][self._id]
@property
def is_on(self):
"""Return if the thing is considered on."""
return self._data["value"] > 0
async def async_turn_on(self, **kwargs: Any) -> None:
"""Turn the thing on."""
await self.async_update_value(True)
async def async_turn_off(self, **kwargs: Any) -> None:
"""Turn the thing off."""
await self.async_update_value(False)

View File

@@ -4,15 +4,12 @@ from typing import Any
from homeassistant.components.light import ATTR_BRIGHTNESS, ColorMode, LightEntity
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.device_registry import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import (
ADVANTAGE_AIR_STATE_OFF,
ADVANTAGE_AIR_STATE_ON,
DOMAIN as ADVANTAGE_AIR_DOMAIN,
)
from .entity import AdvantageAirEntity
from .const import ADVANTAGE_AIR_STATE_ON, DOMAIN as ADVANTAGE_AIR_DOMAIN
from .entity import AdvantageAirEntity, AdvantageAirThingEntity
from .models import AdvantageAirData
async def async_setup_entry(
@@ -22,15 +19,21 @@ async def async_setup_entry(
) -> None:
"""Set up AdvantageAir light platform."""
instance = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
instance: AdvantageAirData = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
entities: list[LightEntity] = []
if my_lights := instance["coordinator"].data.get("myLights"):
if my_lights := instance.coordinator.data.get("myLights"):
for light in my_lights["lights"].values():
if light.get("relay"):
entities.append(AdvantageAirLight(instance, light))
else:
entities.append(AdvantageAirLightDimmable(instance, light))
if things := instance.coordinator.data.get("myThings"):
for thing in things["things"].values():
if thing["channelDipState"] == 4: # 4 = "Light (on/off)""
entities.append(AdvantageAirThingLight(instance, thing))
elif thing["channelDipState"] == 5: # 5 = "Light (Dimmable)""
entities.append(AdvantageAirThingLightDimmable(instance, thing))
async_add_entities(entities)
@@ -38,11 +41,12 @@ class AdvantageAirLight(AdvantageAirEntity, LightEntity):
"""Representation of Advantage Air Light."""
_attr_supported_color_modes = {ColorMode.ONOFF}
_attr_name = None
def __init__(self, instance: dict[str, Any], light: dict[str, Any]) -> None:
def __init__(self, instance: AdvantageAirData, light: dict[str, Any]) -> None:
"""Initialize an Advantage Air Light."""
super().__init__(instance)
self.lights = instance["lights"]
self._id: str = light["id"]
self._attr_unique_id += f"-{self._id}"
self._attr_device_info = DeviceInfo(
@@ -52,24 +56,27 @@ class AdvantageAirLight(AdvantageAirEntity, LightEntity):
model=light.get("moduleType"),
name=light["name"],
)
self.async_update_state = self.update_handle_factory(
instance.api.lights.async_update_state, self._id
)
@property
def _light(self) -> dict[str, Any]:
def _data(self) -> dict[str, Any]:
"""Return the light object."""
return self.coordinator.data["myLights"]["lights"][self._id]
@property
def is_on(self) -> bool:
"""Return if the light is on."""
return self._light["state"] == ADVANTAGE_AIR_STATE_ON
return self._data["state"] == ADVANTAGE_AIR_STATE_ON
async def async_turn_on(self, **kwargs: Any) -> None:
"""Turn the light on."""
await self.lights({"id": self._id, "state": ADVANTAGE_AIR_STATE_ON})
await self.async_update_state(True)
async def async_turn_off(self, **kwargs: Any) -> None:
"""Turn the light off."""
await self.lights({"id": self._id, "state": ADVANTAGE_AIR_STATE_OFF})
await self.async_update_state(False)
class AdvantageAirLightDimmable(AdvantageAirLight):
@@ -77,14 +84,41 @@ class AdvantageAirLightDimmable(AdvantageAirLight):
_attr_supported_color_modes = {ColorMode.ONOFF, ColorMode.BRIGHTNESS}
def __init__(self, instance: AdvantageAirData, light: dict[str, Any]) -> None:
"""Initialize an Advantage Air Dimmable Light."""
super().__init__(instance, light)
self.async_update_value = self.update_handle_factory(
instance.api.lights.async_update_value, self._id
)
@property
def brightness(self) -> int:
"""Return the brightness of this light between 0..255."""
return round(self._light["value"] * 255 / 100)
return round(self._data["value"] * 255 / 100)
async def async_turn_on(self, **kwargs: Any) -> None:
"""Turn the light on and optionally set the brightness."""
data: dict[str, Any] = {"id": self._id, "state": ADVANTAGE_AIR_STATE_ON}
if ATTR_BRIGHTNESS in kwargs:
data["value"] = round(kwargs[ATTR_BRIGHTNESS] * 100 / 255)
await self.lights(data)
return await self.async_update_value(round(kwargs[ATTR_BRIGHTNESS] / 2.55))
return await self.async_update_state(True)
class AdvantageAirThingLight(AdvantageAirThingEntity, LightEntity):
"""Representation of Advantage Air Light controlled by myThings."""
_attr_supported_color_modes = {ColorMode.ONOFF}
class AdvantageAirThingLightDimmable(AdvantageAirThingEntity, LightEntity):
"""Representation of Advantage Air Dimmable Light controlled by myThings."""
_attr_supported_color_modes = {ColorMode.ONOFF, ColorMode.BRIGHTNESS}
@property
def brightness(self) -> int:
"""Return the brightness of this light between 0..255."""
return round(self._data["value"] * 255 / 100)
async def async_turn_on(self, **kwargs: Any) -> None:
"""Turn the light on by setting the brightness."""
await self.async_update_value(round(kwargs.get(ATTR_BRIGHTNESS, 255) / 2.55))

View File

@@ -7,5 +7,5 @@
"iot_class": "local_polling",
"loggers": ["advantage_air"],
"quality_scale": "platinum",
"requirements": ["advantage_air==0.4.1"]
"requirements": ["advantage-air==0.4.4"]
}

View File

@@ -0,0 +1,16 @@
"""The Advantage Air integration models."""
from __future__ import annotations
from dataclasses import dataclass
from advantage_air import advantage_air
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator
@dataclass
class AdvantageAirData:
"""Data for the Advantage Air integration."""
coordinator: DataUpdateCoordinator
api: advantage_air

View File

@@ -1,5 +1,4 @@
"""Select platform for Advantage Air integration."""
from typing import Any
from homeassistant.components.select import SelectEntity
from homeassistant.config_entries import ConfigEntry
@@ -8,6 +7,7 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import DOMAIN as ADVANTAGE_AIR_DOMAIN
from .entity import AdvantageAirAcEntity
from .models import AdvantageAirData
ADVANTAGE_AIR_INACTIVE = "Inactive"
@@ -19,10 +19,10 @@ async def async_setup_entry(
) -> None:
"""Set up AdvantageAir select platform."""
instance = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
instance: AdvantageAirData = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
entities: list[SelectEntity] = []
if aircons := instance["coordinator"].data.get("aircons"):
if aircons := instance.coordinator.data.get("aircons"):
for ac_key in aircons:
entities.append(AdvantageAirMyZone(instance, ac_key))
async_add_entities(entities)
@@ -34,7 +34,7 @@ class AdvantageAirMyZone(AdvantageAirAcEntity, SelectEntity):
_attr_icon = "mdi:home-thermometer"
_attr_name = "MyZone"
def __init__(self, instance: dict[str, Any], ac_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str) -> None:
"""Initialize an Advantage Air MyZone control."""
super().__init__(instance, ac_key)
self._attr_unique_id += "-myzone"
@@ -42,11 +42,12 @@ class AdvantageAirMyZone(AdvantageAirAcEntity, SelectEntity):
self._number_to_name = {0: ADVANTAGE_AIR_INACTIVE}
self._name_to_number = {ADVANTAGE_AIR_INACTIVE: 0}
for zone in instance["coordinator"].data["aircons"][ac_key]["zones"].values():
if zone["type"] > 0:
self._name_to_number[zone["name"]] = zone["number"]
self._number_to_name[zone["number"]] = zone["name"]
self._attr_options.append(zone["name"])
if "aircons" in instance.coordinator.data:
for zone in instance.coordinator.data["aircons"][ac_key]["zones"].values():
if zone["type"] > 0:
self._name_to_number[zone["name"]] = zone["number"]
self._number_to_name[zone["number"]] = zone["name"]
self._attr_options.append(zone["name"])
@property
def current_option(self) -> str:
@@ -55,6 +56,4 @@ class AdvantageAirMyZone(AdvantageAirAcEntity, SelectEntity):
async def async_select_option(self, option: str) -> None:
"""Set the MyZone."""
await self.aircon(
{self.ac_key: {"info": {"myZone": self._name_to_number[option]}}}
)
await self.async_update_ac({"myZone": self._name_to_number[option]})

View File

@@ -19,6 +19,7 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import ADVANTAGE_AIR_STATE_OPEN, DOMAIN as ADVANTAGE_AIR_DOMAIN
from .entity import AdvantageAirAcEntity, AdvantageAirZoneEntity
from .models import AdvantageAirData
ADVANTAGE_AIR_SET_COUNTDOWN_VALUE = "minutes"
ADVANTAGE_AIR_SET_COUNTDOWN_UNIT = "min"
@@ -34,10 +35,10 @@ async def async_setup_entry(
) -> None:
"""Set up AdvantageAir sensor platform."""
instance = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
instance: AdvantageAirData = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
entities: list[SensorEntity] = []
if aircons := instance["coordinator"].data.get("aircons"):
if aircons := instance.coordinator.data.get("aircons"):
for ac_key, ac_device in aircons.items():
entities.append(AdvantageAirTimeTo(instance, ac_key, "On"))
entities.append(AdvantageAirTimeTo(instance, ac_key, "Off"))
@@ -65,7 +66,7 @@ class AdvantageAirTimeTo(AdvantageAirAcEntity, SensorEntity):
_attr_native_unit_of_measurement = ADVANTAGE_AIR_SET_COUNTDOWN_UNIT
_attr_entity_category = EntityCategory.DIAGNOSTIC
def __init__(self, instance: dict[str, Any], ac_key: str, action: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str, action: str) -> None:
"""Initialize the Advantage Air timer control."""
super().__init__(instance, ac_key)
self.action = action
@@ -88,7 +89,7 @@ class AdvantageAirTimeTo(AdvantageAirAcEntity, SensorEntity):
async def set_time_to(self, **kwargs: Any) -> None:
"""Set the timer value."""
value = min(720, max(0, int(kwargs[ADVANTAGE_AIR_SET_COUNTDOWN_VALUE])))
await self.aircon({self.ac_key: {"info": {self._time_key: value}}})
await self.async_update_ac({self._time_key: value})
class AdvantageAirZoneVent(AdvantageAirZoneEntity, SensorEntity):
@@ -98,7 +99,7 @@ class AdvantageAirZoneVent(AdvantageAirZoneEntity, SensorEntity):
_attr_state_class = SensorStateClass.MEASUREMENT
_attr_entity_category = EntityCategory.DIAGNOSTIC
def __init__(self, instance: dict[str, Any], ac_key: str, zone_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str, zone_key: str) -> None:
"""Initialize an Advantage Air Zone Vent Sensor."""
super().__init__(instance, ac_key, zone_key=zone_key)
self._attr_name = f'{self._zone["name"]} vent'
@@ -126,7 +127,7 @@ class AdvantageAirZoneSignal(AdvantageAirZoneEntity, SensorEntity):
_attr_state_class = SensorStateClass.MEASUREMENT
_attr_entity_category = EntityCategory.DIAGNOSTIC
def __init__(self, instance: dict[str, Any], ac_key: str, zone_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str, zone_key: str) -> None:
"""Initialize an Advantage Air Zone wireless signal sensor."""
super().__init__(instance, ac_key, zone_key)
self._attr_name = f'{self._zone["name"]} signal'
@@ -160,7 +161,7 @@ class AdvantageAirZoneTemp(AdvantageAirZoneEntity, SensorEntity):
_attr_entity_registry_enabled_default = False
_attr_entity_category = EntityCategory.DIAGNOSTIC
def __init__(self, instance: dict[str, Any], ac_key: str, zone_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str, zone_key: str) -> None:
"""Initialize an Advantage Air Zone Temp Sensor."""
super().__init__(instance, ac_key, zone_key)
self._attr_name = f'{self._zone["name"]} temperature'

View File

@@ -1,14 +1,10 @@
set_time_to:
name: Set Time To
description: Control timers to turn the system on or off after a set number of minutes
target:
entity:
integration: advantage_air
domain: sensor
fields:
minutes:
name: Minutes
description: Minutes until action
required: true
selector:
number:

View File

@@ -13,7 +13,19 @@
"port": "[%key:common::config_flow::data::port%]"
},
"description": "Connect to the API of your Advantage Air wall mounted tablet.",
"title": "Connect"
"title": "[%key:common::action::connect%]"
}
}
},
"services": {
"set_time_to": {
"name": "Set time to",
"description": "Controls timers to turn the system on or off after a set number of minutes.",
"fields": {
"minutes": {
"name": "Minutes",
"description": "Minutes until action."
}
}
}
}

View File

@@ -1,7 +1,7 @@
"""Switch platform for Advantage Air integration."""
from typing import Any
from homeassistant.components.switch import SwitchEntity
from homeassistant.components.switch import SwitchDeviceClass, SwitchEntity
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
@@ -11,7 +11,8 @@ from .const import (
ADVANTAGE_AIR_STATE_ON,
DOMAIN as ADVANTAGE_AIR_DOMAIN,
)
from .entity import AdvantageAirAcEntity
from .entity import AdvantageAirAcEntity, AdvantageAirThingEntity
from .models import AdvantageAirData
async def async_setup_entry(
@@ -21,13 +22,17 @@ async def async_setup_entry(
) -> None:
"""Set up AdvantageAir switch platform."""
instance = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
instance: AdvantageAirData = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
entities: list[SwitchEntity] = []
if aircons := instance["coordinator"].data.get("aircons"):
if aircons := instance.coordinator.data.get("aircons"):
for ac_key, ac_device in aircons.items():
if ac_device["info"]["freshAirStatus"] != "none":
entities.append(AdvantageAirFreshAir(instance, ac_key))
if things := instance.coordinator.data.get("myThings"):
for thing in things["things"].values():
if thing["channelDipState"] == 8: # 8 = Other relay
entities.append(AdvantageAirRelay(instance, thing))
async_add_entities(entities)
@@ -36,8 +41,9 @@ class AdvantageAirFreshAir(AdvantageAirAcEntity, SwitchEntity):
_attr_icon = "mdi:air-filter"
_attr_name = "Fresh air"
_attr_device_class = SwitchDeviceClass.SWITCH
def __init__(self, instance: dict[str, Any], ac_key: str) -> None:
def __init__(self, instance: AdvantageAirData, ac_key: str) -> None:
"""Initialize an Advantage Air fresh air control."""
super().__init__(instance, ac_key)
self._attr_unique_id += "-freshair"
@@ -49,12 +55,14 @@ class AdvantageAirFreshAir(AdvantageAirAcEntity, SwitchEntity):
async def async_turn_on(self, **kwargs: Any) -> None:
"""Turn fresh air on."""
await self.aircon(
{self.ac_key: {"info": {"freshAirStatus": ADVANTAGE_AIR_STATE_ON}}}
)
await self.async_update_ac({"freshAirStatus": ADVANTAGE_AIR_STATE_ON})
async def async_turn_off(self, **kwargs: Any) -> None:
"""Turn fresh air off."""
await self.aircon(
{self.ac_key: {"info": {"freshAirStatus": ADVANTAGE_AIR_STATE_OFF}}}
)
await self.async_update_ac({"freshAirStatus": ADVANTAGE_AIR_STATE_OFF})
class AdvantageAirRelay(AdvantageAirThingEntity, SwitchEntity):
"""Representation of Advantage Air Thing."""
_attr_device_class = SwitchDeviceClass.SWITCH

View File

@@ -1,14 +1,14 @@
"""Advantage Air Update platform."""
from typing import Any
from homeassistant.components.update import UpdateEntity
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.device_registry import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import DOMAIN as ADVANTAGE_AIR_DOMAIN
from .entity import AdvantageAirEntity
from .models import AdvantageAirData
async def async_setup_entry(
@@ -18,7 +18,7 @@ async def async_setup_entry(
) -> None:
"""Set up AdvantageAir update platform."""
instance = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
instance: AdvantageAirData = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
async_add_entities([AdvantageAirApp(instance)])
@@ -28,7 +28,7 @@ class AdvantageAirApp(AdvantageAirEntity, UpdateEntity):
_attr_name = "App"
def __init__(self, instance: dict[str, Any]) -> None:
def __init__(self, instance: AdvantageAirData) -> None:
"""Initialize the Advantage Air App."""
super().__init__(instance)
self._attr_device_info = DeviceInfo(

Some files were not shown because too many files have changed in this diff Show More