Compare commits

...

3110 Commits

Author SHA1 Message Date
Paulus Schoutsen 435f278053 Merge pull request #59397 from home-assistant/rc 2021-11-08 21:44:29 -08:00
Paulus Schoutsen 4d62d41cc1 Bumped version to 2021.11.2 2021-11-08 20:48:00 -08:00
Bram Kragten a6d795fce1 Update frontend to 20211108.0 (#59364) 2021-11-08 20:47:52 -08:00
Maikel Punie 0f4a35dd28 Bump velbusaio to 2021.11.6 (#59353) 2021-11-08 20:47:51 -08:00
Erik Montnemery 6d3e380f64 Bump paho-mqtt to 1.6.1 (#59339) 2021-11-08 20:47:51 -08:00
Kevin Hellemun 0873c3e92b Support generic xiaomi_miio vacuums (#59317)
* Support generic xiaomi_miio vacuums

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Fix lint

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Remove warning log

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>
2021-11-08 20:47:50 -08:00
Shay Levy 250160f007 Revert "Use DeviceInfo in shelly (#58520)" (#59315)
This reverts commit df6351f86b.
2021-11-08 20:47:49 -08:00
Maciej Bieniek e1b8e2ded3 Remove illuminance sensor (#59305) 2021-11-08 20:47:48 -08:00
Simone Chemelli 8b7686f4f2 Fix condition for fritz integration (#59281) 2021-11-08 20:47:48 -08:00
Alexei Chetroi f9fc92c36b Add Battery sensor regardless if the battery_percent_remaining attribute is supported or not (#59264) 2021-11-08 20:47:47 -08:00
Michael a4253ff54e Increase timeout for fetching camera data on Synology DSM (#59237) 2021-11-08 20:47:46 -08:00
jan iversen dcada92cef Fix tradfri group reachable access (#59217) 2021-11-08 20:47:45 -08:00
J. Nick Koston a6ff89c3e6 Bump flux_led to 0.24.17 (#59211)
* Bump flux_led to 0.24.16

- Changes: https://github.com/Danielhiversen/flux_led/compare/0.24.15...0.24.16

- Fixes turning on/off when device is out of sync internally (seen on 0x33 firmware 8)

- Fixes #59190

* Bump to .17 to fix typing
2021-11-08 20:47:45 -08:00
Michael f5d04de523 bump aioshelly to 1.0.4 (#59209) 2021-11-08 20:47:44 -08:00
Aaron Bach 1cc8e688c3 Change ReCollect Waste device class to date (#59180) 2021-11-08 20:47:43 -08:00
Aaron Bach f47e64e218 Guard against missing data in ReCollect Waste (#59177) 2021-11-08 20:47:42 -08:00
Aaron Bach 3d8ca26c00 Guard against flaky SimpliSafe API calls (#59175) 2021-11-08 20:47:42 -08:00
Aaron Bach e233730494 Bump aioguardian to 2021.11.0 (#59161) 2021-11-08 20:47:41 -08:00
J. Nick Koston 2309dd48c9 Bump flux_led to 0.24.15 (#59159)
- Changes: https://github.com/Danielhiversen/flux_led/compare/0.24.14...0.24.15

- Fixes color reporting for addressable devices
2021-11-08 20:47:40 -08:00
uvjustin 96c08df883 Adjust frag_duration setting in stream (#59135) 2021-11-08 20:47:39 -08:00
Austin Mroczek c150a296d2 Bump total_connect_client to 2021.11.2 (#58818)
* update total_connect_client to 2021.10

* update for total_connect_client changes

* remove unused return value

* bump total_connect_client to 2021.11.1

* bump total_connect_client to 2021.11.2

* Move to public ResultCode

* load locations to prevent 'unknown error occurred'

* add test for zero locations

* Revert "load locations to prevent 'unknown error occurred'"

This reverts commit 28b8984be5.

* Revert "add test for zero locations"

This reverts commit 77bf7908d5.
2021-11-08 20:47:39 -08:00
Paulus Schoutsen 2c21f0ad18 Merge pull request #59129 from home-assistant/rc 2021-11-04 21:57:54 -07:00
Paulus Schoutsen 189677c713 Bumped version to 2021.11.1 2021-11-04 20:14:07 -07:00
J. Nick Koston 039e361bff Bump flux_led to 0.24.14 (#59121) 2021-11-04 20:13:54 -07:00
Erik Montnemery 61918e0e44 Correct rescheduling of ExternalStatisticsTask (#59076) 2021-11-04 20:13:53 -07:00
Erik Montnemery d9d8b538b0 Change minimum supported SQLite version to 3.31.0 (#59073) 2021-11-04 20:13:52 -07:00
Teemu R c3882d0782 Remove use_time sensor from mjjsq humidifers (#59066) 2021-11-04 20:13:51 -07:00
Franck Nijhof c6d651e283 Increase time to authorize OctoPrint (#59051) 2021-11-04 20:13:51 -07:00
Erik Montnemery 543381b6f2 Correct migration to recorder schema 22 (#59048) 2021-11-04 20:13:50 -07:00
Franck Nijhof 433743b0d1 Constrain urllib3 to >=1.26.5 (#59043) 2021-11-04 20:13:49 -07:00
Maikel Punie 58d88c8371 Bump velbus-aio to 2021.11.0 (#59040) 2021-11-04 20:13:49 -07:00
Glenn Waters 6e08cb815b Environment Canada config_flow fix (#59029) 2021-11-04 20:13:48 -07:00
ollo69 b125e2c425 Fix Nut resources option migration (#59020)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-04 20:13:47 -07:00
Teemu R c4aa6af953 Accept all roborock vacuum models for xiaomi_miio (#59018) 2021-11-04 20:13:46 -07:00
Eugenio Panadero dcf6004166 Bump aiopvpc to 2.2.1 (#59008)
happening because some config change in the ESIOS API server,
solved with a version patch in aiopvpc
(details in https://github.com/azogue/aiopvpc/pull/28)
2021-11-04 20:13:45 -07:00
Teemu R af28d927b4 Fix timedelta-based sensors for xiaomi_miio (#58995) 2021-11-04 20:13:44 -07:00
Kevin Hellemun 5e6cac3834 Fix mop attribute for unified mop and water box in Xiaomi Miio (#58990)
Co-authored-by: Teemu R. <tpr@iki.fi>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-04 20:13:43 -07:00
Thomas G 397f303d6d Swap sharkiq vacuum is_docked with is_charging (#58975) 2021-11-04 20:13:43 -07:00
Franck Nijhof 85a4ee68e3 Merge pull request #58994 from home-assistant/rc 2021-11-03 16:31:23 +01:00
Franck Nijhof e3c021a910 Bumped version to 2021.11.0 2021-11-03 15:03:43 +01:00
Bram Kragten 5568121251 Update frontend to 20211103.0 (#58988) 2021-11-03 15:02:39 +01:00
Sergio Gutierrez Alvarez 7afb38ff96 Fix battery_is_charging sensor on system bridge (#58980) 2021-11-03 15:02:35 +01:00
Daniel Hjelseth Høyer 1a08da7856 Bump pyMill to 0.7.4 (#58977) 2021-11-03 12:31:22 +01:00
Hans Oischinger ded0785700 Fix broken ViCare burner & compressor sensors (#58962) 2021-11-03 10:50:09 +01:00
Robert Hillis 4163ba5dbf Add missing ZMW currency (#58959) 2021-11-03 10:50:06 +01:00
Dave T dff98b024c Aurora abb defer unique_id assignment during yaml import (#58887)
* Defer unique_id assignment during yaml import if dark

* Back out variable name change to simplify.

* Allow config flow yaml setup deferral.

* Fix deferred yaml import

* Code review: only wrap necessary lines in try blk

* Code review: catch possible duplicate unique_id

* Simplify assignment.

* Code review: use timedelta to retry yaml import

* Code review: if a different error occurs, raise it

* Remove current config entry if duplicate unique_id

* Code review: remove unnecessary line.

* Code review: revert change, leave to other PR.

* Code review: remove unnecessary patch & min->sec

* Remove unnecessary else after raise.

* Increase test coverage.

* Check the number of config entries at each stage

* Raise ConfigEntryNotReady when connection fails.

* Log & return false for error on yaml import
2021-11-03 10:50:01 +01:00
Dave T 0a27b0f353 Aurora abb energy metering (#58454)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-11-03 10:49:58 +01:00
kodsnutten ae99b678dd Fix unique_id of derived sent-sensors (#58298) 2021-11-03 10:49:54 +01:00
Franck Nijhof e43cb82f29 Merge branch 'master' into rc 2021-11-03 10:22:39 +01:00
Paulus Schoutsen 608b89a6ad Bumped version to 2021.11.0b5 2021-11-02 11:28:43 -07:00
Ernst Klamer a897dfa5b7 Add device configuration URL to Solar-Log (#58954) 2021-11-02 11:28:39 -07:00
Franck Nijhof f8290ed026 Add support for IoT Switches (tdq) in Tuya (#58952) 2021-11-02 11:28:39 -07:00
Franck Nijhof 44334ea4da Extend Tuya Dimmer (tgq) support (#58951) 2021-11-02 11:28:38 -07:00
Erik Montnemery e4143142bf Revert "Add offset support to time trigger" (#58947) 2021-11-02 11:28:37 -07:00
uvjustin d4ba9a137c Add libav.mpegts to logging filter (#58937) 2021-11-02 11:28:36 -07:00
J. Nick Koston 6cd256f26b Fix recursive limit in find_next_time_expression_time (#58914)
* Fix recursive limit in find_next_time_expression_time

* Add test case

* Update test_event.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-02 11:28:35 -07:00
Maciej Bieniek 53cc9f35b9 Add configuration_url to Airly integration (#58911) 2021-11-02 11:28:34 -07:00
Tom Harris 26e925d885 Bump pyinsteon to 1.0.13 (#58908) 2021-11-02 11:28:34 -07:00
Kevin Hellemun 5e09685700 Add ROCKROBO_S6_PURE to supported vacuums for xiaomi_miio (#58901) 2021-11-02 11:28:33 -07:00
Franck Nijhof c97160bf97 Fix incorrect entity category in Advantage Air (#58754) 2021-11-02 11:28:32 -07:00
Peter A. Bigot 34953c4c08 Fix color temp selection when brightness changed in Tuya light (#58341)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-11-02 11:28:31 -07:00
Paulus Schoutsen 632164f283 Bumped version to 2021.11.0b4 2021-11-01 10:56:45 -07:00
Otto Winter b4021de2b0 Fix find_next_time_expression_time (#58894)
* Better tests

* Fix find_next_time_expression_time

* Add tests for Nov 7th 2021, Chicago transtion

* Update event tests

* Update test_event.py

* small performance improvement

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-01 10:56:35 -07:00
Maciej Bieniek cfa4f24395 Handle None values in Xiaomi Miio integration (#58880)
* Initial commit

* Improve _handle_coordinator_update()

* Fix entity_description define

* Improve sensor & binary_sensor platforms

* Log None value

* Use coordinator variable

* Improve log strings

* Filter attributes with None values

* Add hasattr condition

* Update homeassistant/components/xiaomi_miio/sensor.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-01 10:56:35 -07:00
purcell-lab 77c25aa141 Fix renamed solaredge sensor keys (#58875) 2021-11-01 10:56:34 -07:00
Kevin Hellemun 7a0443e2a6 Add ROCKROBO_S4_MAX to supported xiaomi vacuums (#58826) 2021-11-01 10:56:33 -07:00
Marc Hörsken 6e9d759798 Fix OpenWeatherMap options not being initialized the first time (#58736) 2021-11-01 10:56:33 -07:00
Paulus Schoutsen 82b6bbda76 Merge pull request #58905 from home-assistant/2021.10.7 2021-11-01 10:51:04 -07:00
Paulus Schoutsen ad55af4f67 Bumped version to 2021.10.7 2021-11-01 10:01:08 -07:00
Otto Winter 5295ffd6f1 Fix find_next_time_expression_time (#58894)
* Better tests

* Fix find_next_time_expression_time

* Add tests for Nov 7th 2021, Chicago transtion

* Update event tests

* Update test_event.py

* small performance improvement

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-01 10:01:01 -07:00
Simone Chemelli 96d1810019 Abort Fritz config flow for configured hostnames (#58140)
* Abort Fritz config flow for configured hostnames

* Fix tests + consider all combinations

* Fix async context
2021-11-01 09:59:18 -07:00
Brandon Rothweiler fe5b9c75b3 Bump pymazda to 0.2.2 (#58113) 2021-11-01 09:59:17 -07:00
Erik Montnemery 97ba368950 Fix template sensor when name template doesn't render (#58088) 2021-11-01 09:59:17 -07:00
Michael Chisholm 698ceda7c5 Sleep between device requests to detect socket closes (#58087) 2021-11-01 09:59:16 -07:00
micha91 a3c0f7b167 Fix Yamaha MusicCast media_stop (#58024) 2021-11-01 09:59:15 -07:00
Andrey Kupreychik ae463cb210 Abort keenetic SSDP discovery if the unique id is already setup or ignored (#58009) 2021-11-01 09:59:14 -07:00
starkillerOG 387413b5f5 Fix netgear NoneType and discovery (#57904) 2021-11-01 09:59:13 -07:00
Joakim Sørensen 2de74c86e3 Fix Tuya documentation URL (#57889) 2021-11-01 09:59:13 -07:00
Paulus Schoutsen 5ad1ec611d Bumped version to 2021.11.0b3 2021-10-31 20:24:09 -07:00
Maciej Bieniek 375e9fffd1 Add configuration_url to GIOS integration (#58840) 2021-10-31 20:24:03 -07:00
uvjustin 868fbc063d Improve part metadata in stream (#58822) 2021-10-31 20:24:02 -07:00
Robert Hillis 68b0413c98 Bump pyefergy to 0.1.3 (#58821) 2021-10-31 20:24:01 -07:00
Franck Nijhof 6908fa6127 Fix Plugwise not updating config entry with discovery information (#58819) 2021-10-31 20:24:00 -07:00
Kevin Hellemun a0fba15267 Add ROCKROBO_E2 to supported vacuums for xiaomi_miio (#58817)
https://github.com/rytilahti/python-miio/blob/e1adea55f3be237f6e6904210b6f7b52162bf154/miio/vacuum.py#L129
2021-10-31 20:24:00 -07:00
Michael Chisholm 7fae711e0c dlna_dmr: less eager discovery (#58780) 2021-10-31 20:23:59 -07:00
J. Nick Koston e031917a30 Workaround brightness transition delay from off in older yeelight models (#58774) 2021-10-31 20:23:58 -07:00
purcell-lab 184342804e Fix solaredge energy sensor names (#58773) 2021-10-31 20:23:58 -07:00
Michael 2cc3290794 Fix channel.send in Discord (#58756) 2021-10-31 20:23:57 -07:00
J. Nick Koston 0f367722ed Bump zeroconf 0.36.11 (#58755) 2021-10-31 20:23:56 -07:00
Franck Nijhof 9b715383c3 Add configuration_url to OctoPrint (#58753)
* Add configuration_url to Octoprint

* fix device_info() return

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2021-10-31 20:23:56 -07:00
Kapernicus 8800ceba4d Bump nad_receiver to version 0.3.0 (#58751) 2021-10-31 20:23:55 -07:00
J. Nick Koston 2c509bfc06 Add additional test coverage for RYSE smartbridges with HK (#58746) 2021-10-31 20:23:55 -07:00
Anders Liljekvist aae8c2f5dd Fix bluesound player internally used id (#58732) 2021-10-31 20:23:54 -07:00
Tobias Sauerwein 73dfa2d205 Set Netatmo max default temperature (#58718) 2021-10-31 20:23:53 -07:00
Kevin Hellemun b6d2a7a562 Add ROCKROBO_S4 to xiaomi_miio vaccum models (#58682) 2021-10-31 20:23:53 -07:00
Erik Montnemery 8c2af76a51 Coerce to tuple before asserting the sequence (#58672) 2021-10-31 20:23:52 -07:00
Paulus Schoutsen 4086a40c05 Mobile app to update entity registry on re-register sensors (#58378)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-31 20:23:51 -07:00
Michael 2ea90b803c Add configuration url to AVM Fritz!Smarthome (#57711)
* add configuration url

* extend data update coordinator

* improve exception handling during data update

* store coordinator after first refresh

* fix light init
2021-10-31 20:23:51 -07:00
Paulus Schoutsen 94fb8adbdc Bumped version to 2021.11.0b2 2021-10-29 22:18:17 -07:00
J. Nick Koston 030f19c1ed Improve handling of invalid serial numbers in HomeKit Controller (#58723)
Fixes #58719
2021-10-29 22:18:05 -07:00
Aaron Bach f930a1fb06 Fix bug with volumes in SimpliSafe set_system_properties service (#58721)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-29 22:18:04 -07:00
Matthias Alphart d7531096ef reload service: remove entities before disconnection (#58712) 2021-10-29 22:18:04 -07:00
Aaron Bach 8cfdd49f36 Bump aioambient to 2021.10.1 (#58708) 2021-10-29 22:18:03 -07:00
jjlawren 9dda5c5f8a Disable polling Sonos switches by default (#58705) 2021-10-29 22:18:02 -07:00
J. Nick Koston 23c407969f Avoid doorbird device probe during discovery for known devices (#58701) 2021-10-29 22:18:01 -07:00
Franck Nijhof 9af8c60838 Fix OctoPrint SSDP URL parsing and discovered values (#58698) 2021-10-29 22:18:00 -07:00
Marc Mueller 45dc01b8f4 Fix round - wallbox (#58689)
* Fix wallbox round

* Add test case
2021-10-29 22:18:00 -07:00
Franck Nijhof 9821169cea Fix OctoPrint config flow schema (#58688) 2021-10-29 22:17:59 -07:00
Franck Nijhof 76593d6473 Fix spelling of OctoPrint (#58686) 2021-10-29 22:17:58 -07:00
Erik Montnemery 6d000c7d1a Fix regression in MQTT discovery (#58684)
* Fix regression in MQTT discovery

* Update test
2021-10-29 22:17:58 -07:00
Erik Montnemery ec3f730b5e Convert RGBW and RGBWW colors in light turn_on calls (#58680) 2021-10-29 22:17:57 -07:00
Erik Montnemery e9b67b3590 Update light turn_on schema to coerce colors to tuple before asserting sequence type (#58670)
* Make color_name_to_rgb return a tuple

* Tweak

* Tweak

* Update test

* Tweak test
2021-10-29 22:17:56 -07:00
mezz64 78082afa94 Bump pyhik to 0.3.0 (#58659) 2021-10-29 22:17:56 -07:00
Paulus Schoutsen 96d145f2f0 Bumped version to 2021.11.0b1 2021-10-28 21:18:17 -07:00
Franck Nijhof 6ca92812ae Fix missing temperature level on Tuya Heater (qn) devices (#58643) 2021-10-28 21:16:47 -07:00
Clifford Roche 26f3c1adea Bump greeclimate to 0.12.3 (#58635) 2021-10-28 21:16:47 -07:00
Aaron Bach da2addf15a Fix incorrect RainMachine service helper (#58633) 2021-10-28 21:16:46 -07:00
Franck Nijhof ffe008cbef Migrate Tuya unique IDs for switches & lights (#58631) 2021-10-28 21:16:45 -07:00
Hans Oischinger 6858191ca3 Improve ViCare energy units (#58630) 2021-10-28 21:16:45 -07:00
Bram Kragten 2546efe026 Update frontend to 20211028.0 (#58629) 2021-10-28 21:16:44 -07:00
Aaron Bach 92af39cf89 Fix missing triggered state in SimpliSafe alarm control panel (#58628) 2021-10-28 21:16:44 -07:00
J. Nick Koston 22773d0503 Add package constraint to websockets (#58626) 2021-10-28 21:16:43 -07:00
Chen-IL 23841c4b74 Add entity category for load sensors to AsusWRT (#58625) 2021-10-28 21:16:42 -07:00
J. Nick Koston cc9b9a8f95 Fix uncaught exception in sense and retry later (#58623) 2021-10-28 21:16:42 -07:00
Robert Hillis f942131d6a Fix missing config string in sense (#58597) 2021-10-28 21:16:41 -07:00
Guido Schmitz c513516237 Add configuration_url to devolo Home Control (#58594) 2021-10-28 21:16:40 -07:00
Kevin Hellemun e729ee24f8 Add ROCKROBO_S5_MAX to xiaomi_miio vacuum models (#58591)
* Add ROCKROBO_S5_MAX to xiaomi_miio vacuum models.

https://github.com/home-assistant/core/issues/58550

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* disable pylint for todo

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Minor refactor

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>
2021-10-28 21:16:40 -07:00
Robert Chmielowiec 15c2d5c278 Add configuration_url to Huawei LTE integration (#58584) 2021-10-28 21:16:39 -07:00
Paulus Schoutsen a23c1624fb Fix default value for host in octoprint config flow (#58568) 2021-10-28 21:16:39 -07:00
Jesse Hills d36df72701 Add configuration_url to ESPHome (#58565) 2021-10-28 21:16:03 -07:00
Jesse Hills 07c9d77414 Allow configuration_url to be removed/nullified from device registry (#58564)
* Allow configuration_url to be removed from device registry

* Add test

* Check for None before stringifying and url parsing

* Add type to dict to remove mypy error on assigning None
2021-10-28 21:12:47 -07:00
Quentame 928b8bcdbd Add configuration_url to iCloud integration (#58557) 2021-10-28 21:12:46 -07:00
Quentame 211041eb3a Add configuration_url to Freebox integration (#58555) 2021-10-28 21:12:46 -07:00
Paulus Schoutsen e1f9ae4b96 Add entity category to ZHA battery (#58553) 2021-10-28 21:12:45 -07:00
Tom Matheussen c9f4972b59 Add service configuration URL to Doorbird (#58549) 2021-10-28 21:12:44 -07:00
J. Nick Koston 49e0bbe3df Add tplink KP303 to discovery (#58548) 2021-10-28 21:12:44 -07:00
Avi Miller 2cae44c98a Return the real MAC address for LIFX bulbs with newer firmware (#58511) 2021-10-28 21:12:43 -07:00
J. Nick Koston 41007c2864 Reduce rainmachine intervals to avoid device overload (#58319) 2021-10-28 21:12:42 -07:00
Allen Porter 695bc3f23c Add an image placeholder for Nest WebRTC cameras (#58250) 2021-10-28 21:12:42 -07:00
Pieter Mulder 59bee8e830 Allow initialized callback to have arguments (#58129) 2021-10-28 21:12:41 -07:00
Dave Lowper 3650a5e2a4 Fix ZeroDivisionError on freebox/sensor (#57077)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-28 21:12:41 -07:00
Franck Nijhof 4fffeb1155 Bumped version to 2021.11.0b0 2021-10-27 22:01:47 +02:00
Bram Kragten f56802f8e9 Update frontend to 20211027.0 (#58545) 2021-10-27 21:55:58 +02:00
Hans Oischinger 066610923e Support ViCare energy units (#58433) 2021-10-27 21:15:54 +02:00
yeahme49 15c4f3906b Blink arm camera (#56474) 2021-10-27 13:24:55 -05:00
hesselonline 6d6cb03848 Add Number platform to Wallbox (#52786)
Co-authored-by: jan iversen <jancasacondor@gmail.com>
2021-10-27 12:53:14 -05:00
Erik Montnemery abb84d9756 Serialize dates and times to isoformat (#58157) 2021-10-27 10:51:38 -07:00
Marc Mueller ced89d8f29 Enable strict typing - bmw_connected_drive (#58506) 2021-10-27 12:32:10 -05:00
epenet b85217c62e Adjust onewire device model (#58516)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 12:19:55 -05:00
Austin Mroczek baaaf3d2bc Add multi-partition support for TotalConnect (#55429) 2021-10-27 12:15:13 -05:00
Paulus Schoutsen 6cd83d1f66 Allow storing picture in area registry (#58539) 2021-10-27 10:11:05 -07:00
Erik Montnemery f228537458 Fix energy cost sensor for MWh + improve tests (#58540) 2021-10-27 19:07:05 +02:00
jan iversen 55534cfedd When tradfri device goes offline set attr_available false (#58487) 2021-10-27 18:27:16 +02:00
Colin Robbins 39998f5387 Add kWh as cost option for gas (#58426)
* Add kWh as cost option for GAS

* Add kWh as cost option for GAS (pylint)

* Add kWh as cost option for GAS (make CONST)

* Change GAS_UNITS to VALID_ENERGY_UNITS

* Add test for Gas cost in kWh (2)

* Back off ENERGY_WATT_HOUR - unlikely for gas

* Add MEGA_WATT_HOUR support (2)

* Normalise pricing for MEGA_WATT_HOUR

* Normalise pricing for MEGA_WATT_HOUR
2021-10-27 18:06:32 +02:00
terminet85 0111b28a67 Add Solar Edge entity device and state class (#55902) 2021-10-27 16:42:56 +02:00
Erik Montnemery 41e14c4871 Correct changes in Allow extra keys in MQTT discovery messages (#58534) 2021-10-27 16:33:02 +02:00
Franck Nijhof e70606eee9 Merge branch 'master' into dev 2021-10-27 16:11:28 +02:00
Erik Montnemery bed4096430 Allow specifying a super template for async_track_template_result (#58477) 2021-10-27 16:07:17 +02:00
Erik Montnemery dfa50a842a Simplify recorder PgSQL version checks (#58533) 2021-10-27 16:05:40 +02:00
drizzle1 a835917311 Add new orange pi boards to orangepi integration (#58392)
Co-authored-by: Pascal Roeleven <pascal.roeleven@hotmail.com>
Co-authored-by: Pascal Roeleven <dev@pascalroeleven.nl>
2021-10-27 16:00:01 +02:00
epenet 8c1935ce0e Use DeviceInfo in smappee (#58522)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 15:13:18 +02:00
Hans Oischinger e656974e8d Increase setMode flexibility (#58491) 2021-10-27 14:22:16 +02:00
Hans Oischinger 8e8ccb7ce4 Fix Vicare unique_ids (#58531) 2021-10-27 14:19:26 +02:00
epenet 4be8d5ebde Use DeviceInfo in solarlog (#58526)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 13:57:45 +02:00
Franck Nijhof bf693e85b1 Revert "Add warning when entity used in template doesn't exist" (#58527) 2021-10-27 13:53:26 +02:00
Diogo Gomes ad48d78315 Simplify utility_meter code base with croniter (#55625) 2021-10-27 06:41:44 -05:00
J. Nick Koston 5581f58aad Handle accessories without a serial number in homekit_controller (#58498) 2021-10-27 06:24:57 -05:00
epenet 3b7f620aad Use DeviceInfo in sma (#58521)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 13:19:07 +02:00
epenet 6db7f73032 Use DeviceInfo in smartthings (#58523)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 13:17:47 +02:00
epenet 80bbfde07e Use DeviceInfo in smarttub (#58524)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 13:17:20 +02:00
epenet 8e62fc254a Use DeviceInfo in sms (#58525)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 13:16:59 +02:00
Franck Nijhof 6f14f954f9 Move WLED palette to config entity category (#58517) 2021-10-27 13:16:07 +02:00
epenet df6351f86b Use DeviceInfo in shelly (#58520)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 13:44:47 +03:00
epenet c1dc2bbf28 Use DeviceInfo in sharkiq (#58519)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 12:35:53 +02:00
epenet 9d3c75510f Use DeviceInfo in screenlogic (#58518)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 12:20:19 +02:00
Tom Schneider a3dbe8e1e7 Fix media_player grouping while media_player is off (#58070)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-10-27 12:08:19 +02:00
epenet 8017a1e141 Adjust onewire device manufacturer (#58515)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 12:02:07 +02:00
Simone Chemelli f8af44cac2 Fritz clean device_tracker service (#56535) 2021-10-27 05:01:06 -05:00
epenet 19eba5a3a0 Use constants for device registry checks (#58514)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 11:34:58 +02:00
Daniel Hjelseth Høyer 91b07cce20 Fix available for Mill (#58510) 2021-10-27 11:10:54 +02:00
muppet3000 ac08d05b76 Refactor Growatt sensor types (#56544) 2021-10-27 11:09:57 +02:00
uvjustin 35acca1063 Use PyAV fork and set hvc1 codec tag for H.265 (#58309) 2021-10-27 11:04:46 +02:00
Robert Svensson f6e38fc4e2 Fix issue where UniFi DPI groups state wasn't being updated (#58502) 2021-10-27 10:35:44 +02:00
Andreas Sansano d827b2ff56 Add myStrom LED Strip support extending rgblamp bulb_type (#57322) 2021-10-27 10:11:26 +02:00
J. Nick Koston 4653d0b079 Retry yeelight setup later if first update fails (#58446) 2021-10-27 10:09:45 +02:00
Colby Rome 58b6b5854d Bump quantum_gateway to v0.0.6 (#58452) 2021-10-27 10:04:14 +02:00
yeahme49 7d459c03c4 Fix min_humidity and max_humidity in homekit_controller (#58507)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-27 10:02:07 +02:00
Tyler Gibson fab93491cc Fix Microsoft tts defaults to resolve broken settings (#58499) 2021-10-27 09:54:12 +02:00
Oliver Ou 433541862f Fix endpoints issues for Tuya Integration (#58411) 2021-10-26 20:19:26 -07:00
L-I-Am 3727fb5288 Broadlink Integration add support for LB1 (#50953)
Co-authored-by: Felipe Martins Diel <41558831+felipediel@users.noreply.github.com>
2021-10-26 21:20:11 -05:00
Brett Adams b57b2e0243 Add Select platform to Advantage Air (#54747)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-26 20:58:14 -05:00
GitHub Action e75e40f26e [ci skip] Translation update 2021-10-27 00:11:52 +00:00
Jesse Hills c656bf1646 Add entity categories to esphome (#58495) 2021-10-27 12:53:39 +13:00
Aaron Bach e2e19cf4b4 Bump aioambient to 2021.10.0 (#58494) 2021-10-26 17:44:40 -06:00
Glenn Waters de4a4c3ba9 Add async lib and DataUpdateCoordinator for environment_canada (#57746) 2021-10-26 14:23:43 -07:00
Paulus Schoutsen 3715286969 Bump frontend to 20211026.0 (#58500) 2021-10-26 14:08:35 -07:00
Petro31 11034a93c3 Add average template function and filter (#57727) 2021-10-26 22:43:45 +02:00
Erik Montnemery 953ad71d22 Fix flaky UPNP test (#58493) 2021-10-26 13:35:09 -07:00
uvjustin 7024a5d7d9 Minor cleanup on stream (#58486)
* Allow for rounding errors in playlist validation

* Allow EXT-X-TARGETDURATION to change

* Reuse original source in test_record_stream_audio
2021-10-26 13:11:33 -07:00
epenet 577d8b1469 Fix device_info for xiaomi_aqara (#58465)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-26 13:11:05 -07:00
Robert Svensson 26c5f89207 Allow data sources to affect client tracker state after reconnecting to UniFi controller (#58269) 2021-10-26 22:04:16 +02:00
Daniel Hjelseth Høyer 6860acd28f Add Mill Sense Air sensors (#57776)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-26 21:15:33 +02:00
J. Nick Koston c3c0a52929 Fix overriding the yeelight model if it is not known (#56967) 2021-10-26 21:04:19 +02:00
Philip Allgaier 5e88760fa7 Add translations for binary_sensor device classes (#58471)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-26 20:41:44 +02:00
Christian Bilevits 370c7a7ccf Bump pyotp to 2.6.0 (#58413) 2021-10-26 20:41:12 +02:00
Yuval Aboulafia 4db743d01f Remove Huawei Router (ADR-0004) (#57136) 2021-10-26 20:32:22 +02:00
Marc Mueller b60934b10d Enable type checking - bmw_connected_drive (#58310) 2021-10-26 13:27:26 -05:00
Robert Svensson 47f6313e5b Add entity category to UniFi sensors and switches (#58484) 2021-10-26 20:23:20 +02:00
David F. Mulcahey dd1154ad08 Bump ZHA quirks version to 0.0.63 (#58478) 2021-10-26 20:22:18 +02:00
Michael Chisholm 2ea537e1a6 dlna_dmr will gracefully handle device's rejection of subscription attempt (#58451) 2021-10-26 20:19:18 +02:00
FlavorFx c5cf69dd9b Support Energy Sensor and Statistics in Homematic IP Cloud Integration (#57734)
* Update sensor.py

* Update test_device.py
2021-10-26 20:01:42 +02:00
Joakim Sørensen f15840e7ff Limit add-on stats to add-ons that are running (#58479) 2021-10-26 19:58:17 +02:00
Martin Hjelmare 8b021ea06b Fix mysensors metric/non-metric gateway (#58476) 2021-10-26 18:47:10 +02:00
Martin Hjelmare 777589cdcc Add vlc telnet error handler decorator (#58468)
* Add vlc telnet error handler decorator

* Delint

* Update stale docstring
2021-10-26 18:43:33 +02:00
Joakim Plate 6b1b8c9880 Fjaraskupan number entity for periodic venting (#58179) 2021-10-26 10:53:13 -05:00
Paulus Schoutsen 5deeeed672 Add some more required/optional tags to condition schemas (#58424) 2021-10-26 17:25:15 +02:00
Allen Porter f1b082a369 Publish nest event ids in camera related events (#58299) 2021-10-26 10:14:12 -05:00
Tom Brien 11d8bcf0e2 Register Coinbase service in Device Registry and provide configuration URL (#58472) 2021-10-26 16:39:46 +02:00
Tobias Sauerwein 3970a50553 Add reauth for Netatmo when token or token scope is invalid (#57487) 2021-10-26 16:09:10 +02:00
Robert Meijers c9966a3b04 Add offset support to time trigger (#56838) 2021-10-26 15:52:43 +02:00
Allen Porter d49c5d511b Add entity_category to SmartThings sensors (#58375) 2021-10-26 14:55:03 +02:00
Paulus Schoutsen 77d02d08bc Validate device automation capablities WS calls (#58444) 2021-10-26 14:47:07 +02:00
Erik Montnemery ac5e32d648 Corrections for external statistics (#58469) 2021-10-26 14:05:45 +02:00
Tobias Sauerwein ac4496b985 Use async_on_unload in Netatmo (#58461) 2021-10-26 13:43:54 +02:00
Erik Montnemery e9ba5f3b4b Warn when recorder connects to an unsupported database (#58161) 2021-10-26 13:41:59 +02:00
Lukas abf6edea6a Add device_class and state_class as optional attributes to the scrape sensor, to support statistics (#58164) 2021-10-26 13:39:34 +02:00
Brent Petit 6b9fb4bda3 Clean up rounding in Ecobee integration (#56319) 2021-10-26 07:37:43 -04:00
Ville Skyttä b0e1bab58b Use http.HTTPStatus in util.aiohttp (#58456) 2021-10-26 13:13:27 +02:00
Maikel Punie 339d041925 Address late review of velbus (#58463) 2021-10-26 12:45:42 +02:00
Peter Nijssen fd45a07677 Automatic spider supported fan speed and hvac (#58308)
* Automatic fill of supported fan speed and hvac

Automatic fill of supported fan speed and hvac

* Update manifest of spiderpy to 1.5.0

Update manifest of spiderpy to 1.5.0

* Update spiderpy version to 1.5.0 in requirements files

* Code formatted using Black

* Move support fan and hvac values into a class variable

* Move convert to HA value to hvac_modes method

* Log a warning for any invalid operation mode

* Update homeassistant/components/spider/climate.py

Update as suggested by @mivn23

Co-authored-by: mvn23 <schopdiedwaas@gmail.com>

* PR feedback update + dependency update

* Remove logging

Co-authored-by: Bennert <info@bennert.nl>
Co-authored-by: mvn23 <schopdiedwaas@gmail.com>
2021-10-26 11:05:03 +02:00
Andre Richter 486866b576 Use NamedTuple in Vallox service_to_method mapping (#58361) 2021-10-26 10:55:29 +02:00
Maikel Punie 00377a926e Fix velbus climate (#58408)
* Initial work on velbus climate fixes home-assistant/core#58382

* Clean up the code, fixed the preset_mode

* Fix climate havc mode return value
2021-10-26 10:53:13 +02:00
Matthias Alphart d0cc2a530a Remove redundant value test in KNX Number entity (#58455)
* remove redundant test for out of bound value

* increase test coverage for number
2021-10-26 10:42:42 +02:00
Joakim Sørensen d16304a201 Allow homeassistant prefix for device info configuration url (#58414)
* Allow panel prefix for device info configuration url

* Add to add-ons

* Use homeassistant as the prefix

* Update homeassistant/components/hassio/__init__.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-10-26 10:34:02 +02:00
J. Nick Koston def7c80e71 Add support for fan groups (#57941)
* Add support for fan groups

* dry

* dry

* fix refactor error

* tweaks

* wip

* tweaks

* tweaks

* fix

* fixes

* coverage

* tweaks
2021-10-26 10:32:49 +02:00
Erik Montnemery f594bc353b Add support for external statistics (#56607)
* Support external statistics

* Update tests

* Lint

* Adjust code after rebase

* Separate external statistic_id with :, add name to metadata

* Adjust tests

* Simplify get_metadata_with_session

* Address review comments

* Allow updating external statistics

* Validate input

* Adjust tests after rebase

* Pylint

* Adjust tests

* Improve test coverage
2021-10-26 10:26:50 +02:00
Teemu R 2f346a8048 Add speed & intensity controls to wled (#56862)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-26 00:04:19 -07:00
Kevin Stillhammer bd5c131675 Add all kraken entities on startup (#58027)
* Add all kraken entities on startup

* Add _async_add_kraken_sensors

* Add test sensors available after restart

* Add test for config update

* Update tests/components/kraken/test_sensor.py

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

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2021-10-26 00:02:49 -07:00
Raman Gupta cee51ead91 Add typehints to eight_sleep (#58442) 2021-10-25 21:33:44 -07:00
Robert Hillis 2517ba59b5 Fix Aurora abb incorrect attr (#58450) 2021-10-25 23:12:21 -05:00
Franck Nijhof 65b19da3ff Refactor input_select (#53334) 2021-10-25 20:38:06 -07:00
J. Nick Koston 3732ae738e Fix flux_led with RGB/W bulbs (model 0x44) (#58438) 2021-10-25 21:53:13 -05:00
Raman Gupta 207a5029e8 Use class attribute instead of property decorator (#58448) 2021-10-25 21:51:11 -04:00
Dave T e22aaea5b2 Aurora abb (solar) configflow (#36300)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-25 20:04:42 -05:00
Michael Chisholm 44aa1fdc66 dlna_dmr won't support devices that don't provide all DMR services (#58374) 2021-10-25 19:54:58 -05:00
GitHub Action a9a74e0415 [ci skip] Translation update 2021-10-26 00:12:23 +00:00
Paulus Schoutsen cd3e51b3e7 Ensure domain is correct format (#58429) 2021-10-25 15:56:07 -07:00
Aaron Bach a813608185 Re-add support for realtime SimpliSafe websocket (#58061)
* Migrate SimpliSafe to new web-based authentication

* Ensure we're storing data correctly

* Re-add support for realtime websocket in SimpliSafe

* Updates

* Better lock state from websocket

* Unknown states

* Streamline

* Unnecessary assertion

* Remove conditions we can't reach

* Require multiple error states from REST API before reacting

* Only disconnect when needed

* Typing

* Code review
2021-10-25 16:45:13 -06:00
Joakim Sørensen 8b223be073 Add binary sensor to add-ons to show if they are running (#58120) 2021-10-26 00:21:44 +02:00
Raman Gupta b71773fd1d Set entity_category for node status sensor (#58434) 2021-10-25 17:54:13 -04:00
Aaron Bach fbdd445999 Add WattTime config option for showing the monitored location on the map (#57129)
* Add WattTime configuration option for showing the monitored location on the map

* Update tests

* Explicitly pass entry

* Tests
2021-10-25 15:52:14 -06:00
Tim Rightnour dad5d19a35 Add config flow to venstar (#58152) 2021-10-25 23:40:36 +02:00
jjlawren 2d6fa5c453 Fix updating sensor on unlinked Plex server (#58418) 2021-10-25 23:36:26 +02:00
Robert Hillis f2a5c4602e Use DeviceInfo Class L-M (#58312) 2021-10-25 23:26:40 +02:00
Joakim Sørensen 6341dd4883 Add running device class to binary sensor (#58423) 2021-10-25 23:05:27 +02:00
Franck Nijhof ba901bbbbf Complete Air Conditioner (kt) device support for Tuya (#58417) 2021-10-25 22:55:21 +02:00
Simone Chemelli 9d231ac2f8 Abort Fritz config flow for configured hostnames (#58140)
* Abort Fritz config flow for configured hostnames

* Fix tests + consider all combinations

* Fix async context
2021-10-25 22:44:23 +02:00
Raman Gupta 6bc5961f8a Switch to UpdateCoordinator for eight sleep (#52614)
* Switch to UpdateCoordinator for eight sleep

* use super call

* add self as codeowner

* Call API update method directly when creating coordinator

* Update homeassistant/components/eight_sleep/__init__.py

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

* Update homeassistant/components/eight_sleep/__init__.py

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-25 16:18:33 -04:00
Artem Draft 787de8ba66 bump pylgnetcast to 0.3.5 (#58419) 2021-10-25 21:58:17 +02:00
Hans Oischinger d5142bcf51 Update PyVicare to 2.13.1 (#58422)
See changelog: https://github.com/somm15/PyViCare/releases/tag/2.13.1
2021-10-25 21:54:21 +02:00
Robert Hillis 7ccfaed736 Use DeviceInfo Class P-R (#58324) 2021-10-25 18:26:03 +02:00
Martin Hjelmare 5642350070 Add zwave_js sensor entity categories (#58416) 2021-10-25 18:14:44 +02:00
Franck Nijhof 585dcf84f1 Add state_class/entity_category to Verisure (#58403) 2021-10-25 16:32:29 +02:00
Alexei Chetroi fe15736418 Log correct ZHA channel initialization step (#58410) 2021-10-25 16:30:00 +02:00
Alexei Chetroi 0c684cee51 Bump up ZHA dependencies (#58409) 2021-10-25 10:29:47 -04:00
David Le Brun ffd7c998d0 Meteofrance - Add state_class to appropriate sensors (#58401)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-10-25 15:55:49 +02:00
epenet 42793927f7 Use ATTR_VIA_DEVICE constant in onewire tests (#58405)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 09:42:40 -04:00
epenet 29c95a0b34 Use constants in renault tests (#58406)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 09:42:01 -04:00
Brett Adams 71230f1f1c Advantage Air fix logic for motion sensors (#58376)
* Check correct value for motion

* Update fixture for motion

* Small cleanup in fixture
2021-10-25 14:14:41 +02:00
epenet d7c41c0b05 Use DeviceInfo in asuswrt (#58399)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 14:12:49 +02:00
epenet 3c83f31dea Drop unused ATTR_ENTRY_TYPE constant (#58400)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 14:10:56 +02:00
Franck Nijhof 367c4d3676 Add Smart Kettle (bh) device support to Tuya (#58347) 2021-10-25 13:48:43 +02:00
Erik Montnemery 640a7fee9d Allow extra keys in MQTT discovery messages (#58390)
* Allow extra keys in MQTT discovery messages

* Remove extra keys
2021-10-25 13:47:06 +02:00
epenet a8a8b532d0 Use DeviceInfo in mqtt (#58389)
* Use DeviceInfo in mqtt

* Updates for mypy

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 13:46:09 +02:00
Hans Oischinger 66ae116023 Update PyVicare to 2.13.0 (#57700)
* Update PyVicare to 2.x

With PyViCare 2.8.1 a breaking change was introduced which required changes on sensor and binary_sensor platforms:
- Circuit, Burner and Compressor have been separated out from the "main" device
- Multiple circuits and burners allow "duplicate sensors". We add the circuit or burner number as suffix now

At the same time the sensors are now created only when available:
During entity creation we can check if the value is provided for the user's device.

Sensors are not created by heating type anymore but instead the new API structure is reflected, providing device, burner or circuit sensors.

For details of breaking changes from PyViCare 1.x to 2.x please see https://github.com/somm15/PyViCare#breaking-changes-in-version-2x

* Integrate review comments

* variables cleanup

* Update unique ids

The unique ids shall not depend on the name but on the entity
description key (which should not change) and the id of the circuit,
burner or device.
2021-10-25 13:43:43 +02:00
Steven Looman be4b1d15ec Add configuration_url to upnp device (#58385) 2021-10-25 13:19:04 +02:00
epenet cfe1bbcda0 Use DeviceInfo in huawei-lte (#58398)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 13:17:55 +02:00
epenet 48c85fb839 Use DeviceInfo on esphome (#58396)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 13:16:53 +02:00
epenet 4d7c55ff0e Use DeviceInfo on hassio (#58397)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 13:15:00 +02:00
epenet f3ca61ffe0 Use DeviceInfo on awair (#58395)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 13:09:21 +02:00
Brett Adams e529a56430 Add entity category to Advantage Air (#58371) 2021-10-25 12:45:09 +02:00
Simone Chemelli 6d5dd3ee77 Add entity category to MotionEye (#58370) 2021-10-25 12:44:03 +02:00
J. Nick Koston a36ac11d57 Add entity category to hunterdouglas_powerview (#58368) 2021-10-25 12:43:00 +02:00
J. Nick Koston b09f6620eb Add entity category to nut battery (#58363) 2021-10-25 12:42:15 +02:00
Sagi Bernstein 07f268de1f Run nuki bidge.info() on executor (#58345)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-10-25 12:41:32 +02:00
Tobias Sauerwein ab66efba0e Add entity categories to Netatmo (#58383) 2021-10-25 12:38:59 +02:00
epenet c47ac1d9d6 Use DeviceInfo on accuweather (#58394)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 12:38:38 +02:00
epenet 9d952d0242 Use DeviceInfo in control4 (#58388)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 12:23:11 +02:00
Steven Looman e5e38ace6c Bump async-upnp-client to 0.22.10 (#58387) 2021-10-25 12:22:19 +02:00
Franck Nijhof 21709e7170 Upgrade Tuya IoT Python SDK to 0.6.3 (#58240) 2021-10-25 12:09:54 +02:00
epenet ef48238ac3 Adjust DeviceInfo registration on zwave_js (#58391)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-25 12:05:45 +02:00
Andre Richter b3f6be0cec Minor cleanups for Vallox (#58384) 2021-10-25 10:15:18 +02:00
gjong f30963e15b Upgrade youless library to fix LS110 power total is not a number (#58333) 2021-10-25 09:46:08 +02:00
Franck Nijhof 027e167d95 Add support for unit of measurement in MQTT number platform (#58343) 2021-10-25 09:44:43 +02:00
Simone Chemelli 34b936da98 Add entity category to Neato (#58367) 2021-10-25 09:44:15 +02:00
J. Nick Koston 3abb4bd3e5 Add configuration_url to isy994 (#58372) 2021-10-25 09:37:37 +02:00
Franck Nijhof 35872a212b Add Temperature and Humidity Sensor (wsdcg) device support to Tuya (#58335) 2021-10-25 09:19:00 +02:00
J. Nick Koston 80b12346d8 Add entity category to elkm1 (#58364) 2021-10-25 09:00:06 +02:00
J. Nick Koston 837e343c56 Add entity category to gogogate2 (#58366) 2021-10-25 08:59:06 +02:00
J. Nick Koston 1a261f7802 Add entity category to roomba (#58362) 2021-10-25 08:56:51 +02:00
J. Nick Koston d05127cb71 Add entity category to august (#58359) 2021-10-25 08:56:15 +02:00
jan iversen 79f68b050a Bump pytradfri to 7.1.1 (#58379) 2021-10-25 08:55:50 +02:00
J. Nick Koston 9885b3de47 Fix configuration url in gogogate2 (#58365)
- I missed that https:// needed to be prepended because the existing
  device already had the url from previous testing
2021-10-25 08:16:15 +02:00
Patrik Lindgren c950f1ccfa Initial support for Tradfri STARKVIND Air purifier (#58295)
* Initial commit

* Update homeassistant/components/tradfri/const.py

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

* Feedback

* Updates

* Remove logger

* Fix codestring

* Update homeassistant/components/tradfri/fan.py

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

* Update homeassistant/components/tradfri/fan.py

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

* Update homeassistant/components/tradfri/fan.py

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

* Percent value

* Add tests

* Typo

* Update tests

* Fix util function

* Update homeassistant/components/tradfri/fan.py

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

* Update after review

* Review

* Coverage

* Fix test

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-25 08:15:46 +02:00
Paulus Schoutsen a69416521e Add entity category to MyQ (#58377)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-24 22:21:20 -07:00
uvjustin 06008bc343 Fix EXT-X-PROGRAM-DATE-TIME in stream (#58036)
* Fix EXT-X-PROGRAM-DATE-TIME in stream

* Update fragment duration comments in worker

* Update duration test in worker

* Augment test on low latency playlists

* Reset start_time on discontinuity
2021-10-25 11:33:41 +08:00
Marvin Wichmann e9ca511327 Add support for entity category for necessary KNX platforms (#58357) 2021-10-24 20:12:26 -07:00
GitHub Action f3a1c81e22 [ci skip] Translation update 2021-10-25 00:12:33 +00:00
Andre Richter 2fe758edd4 Add Cell State sensor to Vallox (#58358) 2021-10-24 13:30:09 -10:00
jjlawren 5a20d9fce3 Set Sonos alarm and battery entity categories (#58340) 2021-10-24 12:52:15 -10:00
jjlawren 3672889609 Add warning if Sonos not linked to Plex (#58150) 2021-10-24 12:51:45 -10:00
J. Nick Koston 2a6247cf20 Fix lookin push updates when sensor entities disabled (#58346) 2021-10-24 11:53:11 -10:00
jjlawren 0600a21e02 Allow advanced Plex play_media search options (#56226) 2021-10-24 11:22:16 -10:00
Andre Richter 6c01ed8d97 Use DataUpdateCoordinator in Vallox (#56966) 2021-10-24 11:21:35 -10:00
J. Nick Koston 02372cd65a Fix lookin device validation in config flow (#58349)
These need to be prefixed with http:// or validation will fail
2021-10-24 14:13:49 -07:00
Marvin Wichmann 85ecb7ce3a feat: Add unit of measurement to KNX number platform (#58353) 2021-10-24 13:16:19 -07:00
javicalle 137a346d15 add BitronVideo AV2021 ZHA stick (#58337) 2021-10-24 15:57:29 -04:00
Franck Nijhof c6a278a544 Pin pytest-github-actions-annotate-failures to fix broken CI (#58351) 2021-10-24 09:22:17 -10:00
alexanv1 f4c2c54e84 Extend Tuya Humidifier (#58260) 2021-10-24 20:34:05 +02:00
Ivan Belokobylskiy 8c3b711c5e Support suburban railways stations in yandex transport (#58281)
* Add unique ids to yandex_transport entities

* Add support for railway routes to yandex_transport component

* Test suburban timetable parsed correctly

* Remove redundant default value

* Make unique_id unique and stable

* Remove unique_id from yandex_transport component
2021-10-24 17:36:35 +02:00
Ville Skyttä 0de95610e3 Use http.HTTPStatus in components/[wxyz]* (#58330) 2021-10-24 17:25:01 +02:00
Ville Skyttä 1a9bb47f78 Add more Huawei LTE sensor state classes (#57983) 2021-10-24 17:01:50 +03:00
Franck Nijhof f2923d8a91 Add PM2.5 Sensor (pm25) device support to Tuya (#58329) 2021-10-24 07:01:17 -07:00
Franck Nijhof a225d28089 Add Methane Detector (jwbj) device support to Tuya (#58328) 2021-10-24 07:01:03 -07:00
Franck Nijhof 539fdaad69 Add VOC Sensor (voc) device support to Tuya (#58332) 2021-10-24 06:58:11 -07:00
TheNogl 0f965c6b31 Add long-term statistics for Ondilo ICO (#58290) 2021-10-24 11:52:25 +02:00
Franck Nijhof 6f0c1d2345 Complete Solar Light (tyndj) device support to Tuya (#58302) 2021-10-24 11:46:46 +02:00
J. Nick Koston 438ca73aba Complete removal of auto_start, zeroconf_default_interface, and safe_mode from HomeKit (#58320) 2021-10-24 11:46:35 +02:00
Allen Porter 31aa168bbb Fix bug in MediaSource definintion and enable strict type checking (#58321) 2021-10-24 11:39:39 +02:00
Maciej Bieniek 0aa06d22f1 Move configuration_url abbreviation to MQTT DEVICE_ABBREVIATIONS const (#58313) 2021-10-24 11:35:46 +02:00
Robert Hillis 2df13d0118 Use DeviceInfo Class N-O (#58314) 2021-10-24 11:34:45 +02:00
J. Nick Koston 0c94fcecf6 Pull configuration_url from library in gogogate2 (#58318) 2021-10-24 11:32:45 +02:00
Ville Skyttä cc0c79ac9a Use http.HTTPStatus in components/[tuv]* (#58325) 2021-10-24 11:27:17 +02:00
Matthias Alphart 45a98aee10 Configurable mode for KNX number entity (#58268) 2021-10-24 11:24:05 +02:00
Simone Chemelli da7e26c287 Filter by connections instead of identifiers for Shelly (#58305)
* Fix connections

* Switch to helper
2021-10-24 09:51:02 +02:00
GitHub Action 30fb619095 [ci skip] Translation update 2021-10-24 00:12:57 +00:00
jjlawren 084fd2d19f Expose Sonos features as switch entities (#54502)
Co-authored-by: Tobias Sauerwein <cgtobi@users.noreply.github.com>
2021-10-23 23:11:27 +02:00
Nathan Spencer 21daffe905 Bump pylitterbot to 2021.10.1 (#58307) 2021-10-23 11:07:28 -10:00
Daniel Hjelseth Høyer 26f0ea4a24 OpenGarage binary sensor (#58030)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-23 10:53:49 -10:00
fOmey 8bfd5e4d06 Add switch platform to Tuya Light (dj) devices (#58196)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-10-23 22:44:22 +02:00
Franck Nijhof 75e561f1fa Complete Smart Camera (sp) device support to Tuya (#58301) 2021-10-23 12:24:40 -07:00
Chris Browet e961d92b5e Allow service data template to return a dict (#57105) 2021-10-23 21:10:30 +02:00
epenet 9ae7f0ecd7 Add new attribute constants for DeviceInfo registration (#58289)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-23 21:01:34 +02:00
Ville Skyttä 380cff167e Use HTTPStatus in components/[nop]* (#58279) 2021-10-23 20:56:30 +02:00
Ville Skyttä 5626cc4524 Use http.HTTPStatus in components/r* (#58288) 2021-10-23 20:53:39 +02:00
J. Nick Koston 5958e6a3f9 Ensure zeroconf uses the newest non-link local address in discovery (#58257) 2021-10-23 08:50:19 -10:00
Ville Skyttä 50e0c58310 Use http.HTTPStatus in components/s* (#58291) 2021-10-23 20:49:04 +02:00
Robert Hillis 05671557f0 Use DeviceInfo Class I-K (#58300) 2021-10-23 20:42:50 +02:00
Ville Skyttä b52c5c82b1 Use http.HTTPStatus in components/[gh]* (#58246) 2021-10-23 20:34:53 +02:00
Aaron Bach 583ae3c953 Make sure Flu Near You data storage conforms to standards (#57808) 2021-10-23 20:18:34 +02:00
Franck Nijhof 43abf38d92 Complete Heater (qn) device support to Tuya (#58296) 2021-10-23 20:06:46 +02:00
Franck Nijhof 7d0fc8ca98 Add Pressure Sensor (ylcg) device support to Tuya (#58294) 2021-10-23 09:16:28 -07:00
Franck Nijhof 3cdfb84b79 Add Gas Detector (rqbj) device support to Tuya (#58293) 2021-10-23 09:15:52 -07:00
Franck Nijhof 0a272669ed Add CO Detector (cobj) device support to Tuya (#58292) 2021-10-23 09:15:12 -07:00
ANMalko 581d9ec281 Update aiolookin to 0.0.3 version (#58249) 2021-10-23 16:17:25 +02:00
Robert Hillis 4a8e9df026 Use DeviceInfo Class H (#58276) 2021-10-23 15:35:33 +02:00
jrester f176dc512c Update tesla_powerwall to 0.3.12 (#58284) 2021-10-23 15:35:23 +02:00
Robert Hillis cbf236b2f6 Fix modem callerid callback (#58275)
* fix async_on_hass_stop

* fix
2021-10-23 15:15:43 +02:00
Franck Nijhof a4641a91ff Ensure all devices show up in Tuya (#58280) 2021-10-23 15:00:53 +02:00
Joakim Sørensen 23e362faf3 Bump awesomeversion from 21.8.1 to 21.10.1 (#58258) 2021-10-23 14:00:18 +02:00
Joakim Sørensen 2a7192167d Use regex instead of partition to section package definition (#58278) 2021-10-23 13:19:56 +02:00
Franck Nijhof e38754a836 Address Watson TTS review comment (#58277) 2021-10-23 12:14:15 +02:00
epenet 513c90123e Use DeviceInfo on components with suggested_area (#58225)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-23 12:03:14 +02:00
Robert Hillis 63646a19cc Use DeviceInfo Class F-G (#58255) 2021-10-23 12:01:21 +02:00
Robert Hillis 12c067970a Use DeviceInfo Class E (#58230) 2021-10-23 11:44:51 +02:00
Robert Hillis 137d41d8b4 Use DeviceInfo Class B-C (#58217) 2021-10-23 11:41:32 +02:00
Ivan Belokobylskiy 059880ebdc Fix yandex captcha detecting (#56132)
Yandex recently switched to the new captcha page and the new version of aiomaps supports it.
The check for captcha is moved to platform setup.

Fixes #56035
2021-10-23 11:14:32 +02:00
Clifford Roche a0c96f2a9a Bump greeclimate to 0.12.2 (#58256) 2021-10-23 10:19:19 +02:00
Allen Porter 400e85a299 Rename tests filenames to conform to Home Assistant standards (#58266) 2021-10-22 22:25:55 -07:00
Allen Porter fc7be8aa00 Fix a bug in a nest test that causes side effects for other tests (#58264)
Fix a bug where a constant configuration variable in the common test library
is modified during the test, causing side effects for other tests.

This was found by renaming the tests, which caused other tests to fail.
2021-10-22 21:33:40 -07:00
Allen Porter 7627b959f8 Fix format bug in nest log statement (#58263)
* Fix format bug in nest log statement

* Resolve lint error logging-fstring-interpolation
2021-10-22 21:33:19 -07:00
Michael Davie e481c862a6 Change precision of Nest sensors (#56993)
* Change precision of Nest sensors

* Add comment to temp rounding

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

* Update rounding and tests

* Add test for rounding

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2021-10-22 20:31:25 -07:00
Nicolas Mowen 93b061e9d9 Update ismartgate dependency (#58259) 2021-10-22 16:33:30 -10:00
Maikel Punie 37b7eda37a Bump velbusaio to 2021.10.6 (#58168)
* Bump velbusaio to 2021.10.3

* Bump velbusaio to 2021.10.5

* Bump velbusaio to 2021.10.6
2021-10-23 03:42:33 +02:00
some-guy-in-oz b2d67f8d19 Add grid services active sensor to telsa powerwall integration (#56317)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-22 14:25:25 -10:00
GitHub Action 1b42caa34a [ci skip] Translation update 2021-10-23 00:11:40 +00:00
Ville Skyttä 77120a5137 Use http.HTTPStatus in components/m* (#58251) 2021-10-22 23:54:36 +02:00
drinfernoo b49b975999 Allow different voices in Watson TTS calls (#56811) 2021-10-22 23:50:32 +02:00
Allen Porter 7d6ad6e5e3 Add additional nest stream test coverage (#58013) 2021-10-22 23:30:15 +02:00
John James Jacoby 750a8f2d37 Spelling & grammar improvements to bug_report.yml (#56800)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-10-22 23:22:19 +02:00
itairaz1 8d46802558 Apple TV power management (#51520) 2021-10-22 23:13:14 +02:00
Yuval Aboulafia a9ccd70e71 Fully type Jewish Calendar (#56232) 2021-10-22 23:11:41 +02:00
Nihaal Sangha fe0151491e Improve Discord notifier (#52523) 2021-10-22 23:09:30 +02:00
Ville Skyttä ce1eda9809 Use http.HTTPStatus in components/[ikl]* (#58248) 2021-10-22 23:06:18 +02:00
Chris Browet 1867d24b18 Add state_class support to Rest (#58026) 2021-10-22 13:48:13 -07:00
Michael Chisholm ee087c7a05 Discovery ignores DLNA DMR devices when they are better supported by another integration (#57363) 2021-10-22 10:26:33 -10:00
Yuval Aboulafia a195418dd3 ISS cleanup (#55801) 2021-10-22 22:17:05 +02:00
Joakim Plate 8da3b4c79f Bump arcam library to 0.12 with new series support (#53843) 2021-10-22 22:13:17 +02:00
Ville Skyttä b1360ffafb Use http.HTTPStatus in components/f* (#58244) 2021-10-22 22:10:47 +02:00
rik-v 4369b0b8be Fix Fibaro light features (#56385) 2021-10-22 22:09:19 +02:00
Robert Hillis 23710d1496 Add strict typing to modem_callerid (#57683) 2021-10-22 22:04:06 +02:00
Dennis Schroer f1091b80a7 Add statistics support to Huisbaasje (#54651) 2021-10-22 22:00:44 +02:00
Marc Mueller 823ca7ee40 Use attributes octoprint (#58241) 2021-10-22 21:41:06 +02:00
Sören b0b49c611e Nello removal (#57926) 2021-10-22 21:40:39 +02:00
Marvin Wichmann 5193e3115d Restore the previous state of a KNX binary sensor (#57891) 2021-10-22 20:52:41 +02:00
Franck Nijhof b413f7434f Add support for min/max dimmer brightness in Tuya (#58165) 2021-10-22 20:28:16 +02:00
J. Nick Koston c7b4542624 Enable strict typing in lookin (#58238) 2021-10-22 20:14:33 +02:00
avee87 d9b87ee5c5 Add warning when entity used in template doesn't exist (#57316) 2021-10-22 20:09:54 +02:00
Robert Svensson 9c1bee9c16 Add support for device configuration URL to UniFi Controller (#58237) 2021-10-22 20:04:25 +02:00
Raman Gupta e5255cf21f Add area_entities and area_devices template functions/filters (#55228) 2021-10-22 19:59:01 +02:00
Petro31 806dc51125 Add datetime_today template method (#57435) 2021-10-22 19:51:22 +02:00
epenet 001a452bb7 Update naming scheme for Renault entities (#57922)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-22 19:46:02 +02:00
Ville Skyttä 73d192b3f3 Use HTTPStatus instead of HTTP_ consts and magic values in comp.../[bc]* (#57989) 2021-10-22 19:43:40 +02:00
Robert Svensson ab7a34fc71 Add support for device configuration URL to deCONZ gateway (#58184) 2021-10-22 19:41:49 +02:00
Franck Nijhof 843296c1a3 Add product ID to model for Tuya (#58235) 2021-10-22 19:39:31 +02:00
J. Nick Koston 3b7dce8b95 Index in-progress flows to avoid linear search (#58146)
Co-authored-by: Steven Looman <steven.looman@gmail.com>
2021-10-22 07:19:49 -10:00
Marc Mueller fa56be7cc0 Use value_fn for bmw_connected_drive binary_sensor (#57540) 2021-10-22 18:55:13 +02:00
Bouwe Westerdijk 1aa7a8170c Fix plugwise longterm statistics (#58127)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-22 09:46:21 -07:00
Artem Draft 5a102d793e Bump pylgnetcast to 0.3.4 (#58233) 2021-10-22 18:25:01 +02:00
Klaas Schoute efbe8a8689 Fix unit of measurement for P1 Montior (#57495) 2021-10-22 18:24:12 +02:00
Paul Monigatti a3b3c4ebad Consolidate ESPHome icon-handling code into EsphomeEntity (#57744) 2021-10-22 18:21:41 +02:00
Robert Hillis da7b67cc29 Add strict typing to efergy (#57682) 2021-10-22 18:20:39 +02:00
epenet f6ffae9e10 Use DeviceInfo on components with configuration_url (#58223)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-22 17:40:13 +02:00
Lars 416d87c01c Fix fritzbox tests (#58227) 2021-10-22 17:29:36 +02:00
epenet 51a10f88de Use DeviceInfo on components with via_device (#58222)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-22 17:04:25 +02:00
Robert Hillis fc3e7f5b7e Use DeviceInfo Class D (#58218) 2021-10-22 17:00:00 +02:00
Robert Hillis 59fe30e589 Use DeviceInfo class - A (#57859) 2021-10-22 16:35:39 +02:00
Ville Skyttä 8bc1509afa Use HTTPStatus instead of HTTP_ consts and magic values in comp.../[de]* (#57990) 2021-10-22 16:28:56 +02:00
Ryan Fleming c84fee7c6e Rework octoprint (#58040)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-22 15:25:12 +02:00
Simone Chemelli 1a9ac6b657 Switch Fritz to device selector for services (#58005) 2021-10-22 14:34:02 +02:00
Lars 2148c84386 Support for Fritz!DECT 500 lightbulbs (#52830) 2021-10-22 14:30:03 +02:00
Erik Montnemery ab2ff45726 Warn if state_changed events are excluded from recorder (#58021) 2021-10-22 14:25:36 +02:00
thomas-svrts f25d3cf9b3 Gogogate2 add statistics (#58178)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-22 14:24:43 +02:00
Michael Chisholm 164f09c1f0 Sleep between device requests to detect socket closes (#58087) 2021-10-22 14:22:10 +02:00
Ville Skyttä a598d9f353 Use HTTPStatus instead of HTTP_ consts and magic values in components/a* (#57988) 2021-10-22 14:21:34 +02:00
David K Turner 55ffc85a0a Enable long-term statistics for OpenWeatherMap sensors (#57781) 2021-10-22 14:19:19 +02:00
Regev Brody 3c52bc214d Add Smoke Detector (ywbj) device support to Tuya (#58170) 2021-10-22 14:18:01 +02:00
Marc Mueller ea2e94a4e5 Use assignment expressions 24 (#58181) 2021-10-22 14:07:19 +02:00
Marc Mueller eab235173b Use assignment expressions 28 (#58189) 2021-10-22 14:06:04 +02:00
epenet a3d1159a13 Use DeviceInfo on components with via_device (R-X) (#58213)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-22 12:52:33 +02:00
epenet 176ed4f7ba Use DeviceInfo on components with via_device (I-T) (#58212)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-22 12:31:12 +02:00
Aaron Bach 6dd72869a6 Make sure Guardian data storage conforms to standards (#57809) 2021-10-22 12:25:05 +02:00
avee87 a0bb2c8b33 Add memory/cpu percentage to Supervisor addons entities (#57468)
* Add memory/cpu percentage to Supervisor addons entities

* fixed lint

* Use a single update function. Fixed tests

* use constant

* review comments

* oops
2021-10-22 12:23:21 +02:00
Aaron Bach 61e093cecd Make sure Ambient PWS data storage conforms to standards (#57807) 2021-10-22 12:17:25 +02:00
Aaron Bach 8bc10db0bb Make sure RainMachine data storage conforms to standards (#57816) 2021-10-22 12:14:58 +02:00
epenet 8dfa628af0 Use DeviceInfo on components with via_device (A-G) (#58210)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-22 12:12:19 +02:00
Aaron Bach 5c3d2a5071 Make sure IQVIA data storage conforms to standards (#57811) 2021-10-22 12:11:10 +02:00
Tom Brien 024c892b2a Remove black color name for light dropdowns (#58207) 2021-10-22 12:04:12 +02:00
epenet 58c5b5058c Use DeviceInfo on components with via_device (H) (#58211)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-22 11:52:48 +02:00
epenet c00a5fad8f Cleanup device registration in Onewire (#58101)
* Add checks for device registry

* Move registry checks to init.py

* Run device registry check on disabled devices

* Empty commit for testing

* Register devices during initialisation

* Adjust tests accordingly

* Add via_device to device info

* Adjust access to device registry

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-22 11:45:40 +02:00
Tomer 766a693514 Fix registration UI to work for Israel devices (#58192) 2021-10-22 11:45:16 +02:00
Allen Porter 4242711301 Bump google-nest-sdm to 0.3.8 (#58186) 2021-10-22 11:37:30 +02:00
epenet 0b302ab141 Use DeviceInfo on zwave (#58183)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-22 11:36:40 +02:00
Marc Mueller 9990385926 Use assignment expressions 25 (#58182) 2021-10-22 11:34:45 +02:00
epenet 2e5c9b69d4 Use DeviceInfo on zha (#58202)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-22 11:32:15 +02:00
Marc Mueller 184e0d7fdf Use assignment expressions 26 (#58187) 2021-10-22 11:31:17 +02:00
Marc Mueller be201e3ebe Use assignment expressions 27 (#58188) 2021-10-22 11:29:21 +02:00
Tobias Sauerwein 83e45300c2 Add configuration_url to Netatmo devices (#58160) 2021-10-22 11:14:28 +02:00
Marc Mueller 70469e0979 Use assignment expressions 23 (#58180) 2021-10-22 11:13:05 +02:00
Robert Svensson 281adfe3c9 Add support for device configuration URL to Axis devices (#58176) 2021-10-22 11:09:50 +02:00
Maciej Bieniek 038158508c Add configuration_url to AsusWrt integration (#58172) 2021-10-22 11:08:46 +02:00
Álvaro Fernández Rojas f740302287 Add long-term statistics for Tado sensors (#58111) 2021-10-22 11:07:33 +02:00
Joakim Plate c0934ce03c Fjaraskupan entity categories (#57846) 2021-10-22 10:50:21 +02:00
Erik Montnemery 547e36ae94 Tweak energy validator (#58018)
* Tweak energy validator

* Update code and tests

* Tweak implementation

* Update tests

* Update after rebase
2021-10-22 10:38:04 +02:00
J. Nick Koston d67c1118dc Cleanup lookin entity MRO and inheritance (#58194) 2021-10-21 20:22:51 -10:00
J. Nick Koston d27ee4c1a4 Allow setting the nexia run mode with the hvac mode (#57940) 2021-10-21 18:25:25 -10:00
GitHub Action f9d985553c [ci skip] Translation update 2021-10-22 00:14:10 +00:00
J. Nick Koston 7cc924e83c Remove unreachable code in data_entry_flow.py (#58193)
- bc1daf1802 removed the need for this
  guard
2021-10-22 01:45:16 +02:00
Martin Hjelmare cc4241836e Move notify setup to legacy (#58033) 2021-10-21 16:09:08 -07:00
ANMalko 749258a05d Add climate platform to lookin (#58175)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-21 12:00:48 -10:00
J. Nick Koston 4a9209ebc8 Bump async-upnp-client to 0.22.9 (#58185)
Co-authored-by: Steven Looman <steven.looman@gmail.com>
2021-10-21 10:58:34 -10:00
Steven Looman dcf60b54ce Improve SSDP discovery compatibility when device was discovery through an SSDP advertisement (#58133) 2021-10-21 10:57:34 -10:00
ANMalko 626bd25129 Add LOOKin integration (#58125)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-21 07:10:23 -10:00
Álvaro Fernández Rojas 946df49ca8 Add long-term statistics for AEMET sensors (#57844) 2021-10-21 09:03:37 -07:00
Erik Montnemery df1154395e Revert "Swap order of int template helper kwargs (#57729)" (#58015)
This reverts commit f8dbcb953c.
2021-10-21 15:03:33 +02:00
Aaron Bach 2ff356393c Clean up SimpliSafe entity inheritance structure (#58063)
* Migrate SimpliSafe to new web-based authentication

* Ensure we're storing data correctly

* Re-organize SimpliSafe device structure

* Constants

* More work

* Code review
2021-10-21 12:54:50 +02:00
Simone Chemelli c7ff6eb5ee Address late review for Fritz entity_category (#58141) 2021-10-21 08:36:52 +02:00
Brig Lamoreaux 50686bd06d Add Device Type Energy to Srp Energy Sensor (#58147) 2021-10-21 08:35:59 +02:00
Marc Mueller 62c20860ac Use assignment expressions 22 (#57971) 2021-10-21 08:33:10 +02:00
Robert Hillis ea2bc3fde1 Add entity categories to goalzero (#57906) 2021-10-21 08:31:32 +02:00
Marc Mueller 1bcf39517a Use assignment expressions 13 (#57938) 2021-10-21 08:27:42 +02:00
Marc Mueller c979e89b70 Use assignment expressions 14 (#57939) 2021-10-21 08:26:01 +02:00
Paulus Schoutsen 4eea618cc4 input_datetime: Move has_date, has_time to capability_attributes (#58138) 2021-10-21 08:22:34 +02:00
Daniel Perna acb24788d0 Update pyhomematic to 0.1.76 (#58136) 2021-10-21 08:21:48 +02:00
Philip Allgaier 8f1ba96d0b Remove accidental blanks from Shelly trigger type translations (#58151) 2021-10-21 08:21:04 +02:00
Philip Allgaier 548b872229 Add missing names for notify service fields (#58154) 2021-10-21 08:20:37 +02:00
jjlawren 3ffe0b3625 Add configuration_url to Plex integration (#58149) 2021-10-21 08:01:00 +02:00
jjlawren 379a0e2b53 Add configuration_url to Sonos devices (#58148) 2021-10-21 08:00:34 +02:00
Franck Nijhof dcaa689023 Add auto slider/box mode to number entity (#57737) 2021-10-21 07:20:39 +02:00
Paulus Schoutsen 3bdc637d1b Bump frontend to 20211020.0 (#58139) 2021-10-20 20:26:25 -07:00
GitHub Action 4634b65924 [ci skip] Translation update 2021-10-21 00:12:43 +00:00
Brandon Rothweiler a496465235 Bump pymazda to 0.2.2 (#58113) 2021-10-21 00:58:40 +02:00
Ville Skyttä 840dc2b931 Run tests with -X dev and -bb (#58079) 2021-10-20 15:43:04 -07:00
J. Nick Koston 20c35e6032 Move Screenlogic lights to the light platform (#55467)
Co-authored-by: Kevin Worrel <37058192+dieselrabbit@users.noreply.github.com>
2021-10-20 12:38:21 -10:00
Maciej Bieniek 18ce799f74 Add configuration_url to Denon AVR integration (#58116) 2021-10-20 15:34:42 -07:00
Aaron Bach 47678c5995 Add entity categories for appropriate AirVisual entities (#58102) 2021-10-20 15:22:48 -07:00
jan iversen f2a5d92e61 Fix connect_fail test and modbus.py 100% coverage (#57894)
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-10-20 15:22:24 -07:00
jan iversen cca7da77ad Report modbus buffer too small or too big to unpack (#57838) 2021-10-20 15:22:01 -07:00
Aaron Bach 38586d2cf1 Add entity categories for appropriate Ambient PWS entities (#58100) 2021-10-20 15:17:28 -07:00
Aaron Bach 388761922b Add entity categories for appropriate Guardian entities (#58104) 2021-10-20 14:58:09 -07:00
Aaron Bach 03b1150115 Add entity categories for appropriate Notion entities (#58105) 2021-10-20 14:57:45 -07:00
Aaron Bach 745e42621b Add entity categories for appropriate RainMachine entities (#58107) 2021-10-20 14:57:28 -07:00
Andrey Kupreychik a824fa9a7b Abort keenetic SSDP discovery if the unique id is already setup or ignored (#58009) 2021-10-20 14:53:23 -07:00
Erik Montnemery c1d671b817 Fix template sensor when name template doesn't render (#58088) 2021-10-20 14:53:06 -07:00
Marc Mueller 4513ee4ea5 Use assignment expressions 12 (#57937) 2021-10-20 14:34:08 -07:00
Franck Nijhof 7353ea5416 Add Dimmer Switch (tgkg) device support to Tuya (#58134) 2021-10-20 23:19:42 +02:00
Franck Nijhof c204196a7a Add Formaldehyde Detector (jqbj) device support to Tuya (#58118) 2021-10-20 11:49:10 -07:00
Marc Mueller 487fa0a905 Use assignment expressions 20 (#57969) 2021-10-20 20:31:00 +02:00
Erik Montnemery 398061706c Correct unit_of_measurement for statistics sensor (#58023) 2021-10-20 20:28:48 +02:00
Jesse Hills 35e9cf68a2 Add configuration url to Sonarr (#58085) 2021-10-20 20:25:29 +02:00
Aaron Bach 70fc3f84fc Add entity categories for appropriate SimpliSafe entities (#58108) 2021-10-20 20:24:38 +02:00
Robert Svensson 333c80a694 Assign entity category diagnostics to deCONZ tampering sensors (#58112) 2021-10-20 20:24:11 +02:00
Yuval Aboulafia 2fcce7fd12 Bump hdate to 0.10.4 (#58121) 2021-10-20 20:17:46 +02:00
J. Nick Koston ad463b7994 Ensure lutron_caseta triggers can still be attached in setup retry state (#57873) 2021-10-20 07:34:38 -10:00
Franck Nijhof 3e57d0d3d3 Complete Switch/Socket/Power Strip device support for Tuya (#58106) 2021-10-20 19:08:43 +02:00
Franck Nijhof 5fc2897c08 Complete Ceiling Light (xdd) device support for Tuya (#58095) 2021-10-20 09:24:34 -07:00
Marc Mueller ea7252e377 Use assignment expressions 21 (#57970) 2021-10-20 17:47:46 +02:00
Robert Hillis d20936d175 Fix referenced before assignment error in sonos speaker (#57924) 2021-10-20 17:44:08 +02:00
Marc Mueller 9a58bfdf41 Use assignment expressions 17 (#57963)
Co-authored-by: Tobias Sauerwein <cgtobi@users.noreply.github.com>
2021-10-20 17:42:26 +02:00
Robert Svensson 326a302c22 Fix issue where Number still would send force_update to super method (#58110) 2021-10-20 17:06:27 +02:00
Erik Montnemery b301ab25a3 Purge short term statistics (#58028)
* Purge short term statistics

* Less meep

* Add tests
2021-10-20 16:00:59 +02:00
Erik Montnemery 558c2556f1 Report all unrecorded sensors in statistics tool (#58092) 2021-10-20 15:58:28 +02:00
Erik Montnemery e3534eec87 Report orphaned statistics in statistic validation (#57324) 2021-10-20 15:57:22 +02:00
Jan Bouwhuis e2303dc713 bitwise and for test supported_features (#58097) 2021-10-20 15:31:23 +02:00
J. Nick Koston b507b9ebfb Bump ismartgate to 4.0.3 (#58073)
* Bump ismartgate to 4.0.3

Fixes #56245

Changelog: https://github.com/bdraco/ismartgate/compare/v4.0.0...v4.0.3

* restart ci
2021-10-20 15:02:08 +02:00
Robert Svensson 3ad3f4e2ba Simplify signalling for updating available property of deCONZ entities (#58078) 2021-10-20 14:59:36 +02:00
David Le Brun 2bd64cec11 Add state_class to current bandwith sensors for bbox integration (#58086)
* Add state_class to current bandwith sensors

* Fix isort test
2021-10-20 14:53:14 +02:00
Franck Nijhof c75346addc Add CO2 Detector (co2bj) device support to Tuya (#58093) 2021-10-20 14:20:24 +02:00
jan iversen b3117ced75 Please pylint for modbus test (#58089) 2021-10-20 13:38:55 +02:00
jan iversen 45983b5edf Activate tradfri in coverage and clean conftest for tradfri (#58058) 2021-10-20 13:36:02 +02:00
Jan Bouwhuis 62b7453719 Fix supported_features behaviour for fan platform (#58065) 2021-10-20 13:06:06 +02:00
Jan Bouwhuis a679ebcee7 Patch for Alexa percentage_step to precision (#58062)
* speed_step must be an integer and a divider of 100

* use percentage_step in tests to test patch

* test with not supported percentage_step

* undo change in test_capabilities

* Use a default precision of one not percentage_step

* typo 2

* Update tests/components/alexa/test_smart_home.py

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

* Update homeassistant/components/alexa/capabilities.py

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

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-10-20 13:05:11 +02:00
Robert Svensson 4736bf3c32 Don't use deprecated ways of retrieving registries in Axis (#58083) 2021-10-20 13:03:52 +02:00
epenet dfd2501c2c Cleanup duplicate code in Onewire tests (#58082)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-20 11:43:59 +02:00
Robert Svensson 008b784fc5 Add deCONZ number config entity for Hue motion sensor delay (#58076)
* First working draft of number platform

* Replace duration with delay for Hue motion sensors
Improve tests

* Bump dependency to v85

* Use constant for entity category

* Use type rather than using __class__

* Fix unique ID
2021-10-20 11:23:24 +02:00
Robert Svensson 25f4f2d86e Don't use deprecated methods of retrieving registries in deCONZ (#58081) 2021-10-20 11:16:28 +02:00
Robert Svensson b8cf6513d9 Address late review of unifi (#58080)
* Fix late comment from 57570

* Remove other references to legacy ways
2021-10-20 10:59:07 +02:00
Erik Montnemery 5f37fffcd1 Bump pychromecast to 9.3.1 (#58035) 2021-10-20 09:44:20 +02:00
Robert Svensson edefa9f4f4 Assign entity category diagnostics to deCONZ battery sensors (#58077) 2021-10-20 09:11:17 +02:00
epenet 704929ddd0 Remove legacy tests in onewire (#58075)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-20 09:10:32 +02:00
J. Nick Koston cafb3067ce Bump flux_led to 0.24.12 (#58071) 2021-10-20 09:02:02 +02:00
GitHub Action 7a7f5ccc31 [ci skip] Translation update 2021-10-20 00:12:17 +00:00
micha91 518151fbe6 Fix Yamaha MusicCast media_stop (#58024) 2021-10-20 00:18:08 +02:00
Tom Schneider c6aa767be6 Add volume_up and volume_down to musiccast (#57919) 2021-10-20 00:14:55 +02:00
J. Nick Koston 4f0886fd7d Bump flux_led to 0.24.11 (#58020) 2021-10-19 11:40:35 -10:00
Franck Nijhof e65345900f Add Human Presence Sensor (hps) device support to Tuya (#58054) 2021-10-19 23:17:00 +02:00
Aaron Bach 0fe5baa425 Rework RainMachine entity ID generation (#58055) 2021-10-19 10:10:51 -10:00
Aaron Bach bf7c99c1f8 Migrate SimpliSafe to new web-based authentication (#57212) 2021-10-19 10:09:48 -10:00
Ville Skyttä 8e0cb5fcec Fix clickatell send_error error check (#57985) 2021-10-19 22:04:13 +02:00
Erik Montnemery dde8ac4eb5 Add support for kPa to sensor statistics (#58032) 2021-10-19 21:43:08 +02:00
epenet 1b0118a81b Use constants in Onewire tests (#58017)
* Use ATTR_ENTITY_ID constant

* Add ATTR_UNIQUE_ID constant

* Add new attribute constants

* Fix missing ATTR_DEFAULT_DISABLED

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-19 21:41:01 +02:00
Paulus Schoutsen ab0247d112 Add entity category and state class to mobile app (#58012) 2021-10-19 12:29:22 -07:00
Franck Nijhof bc9b134c5d Clean up self references from Tuya climate platform constructor (#58051) 2021-10-19 21:04:46 +02:00
Daniel Hjelseth Høyer d2f7f418c3 Add more sensors to Opengarage (#58042) 2021-10-19 11:15:40 -07:00
Franck Nijhof 6d898a631c Add Water Detector (sj) device support to Tuya (#58049) 2021-10-19 20:09:06 +02:00
Erik Montnemery bb9053e93d Add MWh as an energy unit (#58034) 2021-10-19 11:08:44 -07:00
Daniel Hjelseth Høyer 8eef2113c7 Add more info to OpenGarage device info (#58037) 2021-10-19 11:08:03 -07:00
Daniel Hjelseth Høyer b7db8dd62a Add configuration url to Surepetcare (#58039)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-10-19 20:00:08 +02:00
Daniel Hjelseth Høyer 24d3bf0930 Add configuration url to Tractive (#58038)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-10-19 19:57:01 +02:00
Franck Nijhof fbe3ce1bf7 Add cover platform to Tuya (#58045) 2021-10-19 19:36:15 +02:00
Daniel Hjelseth Høyer eb2f2d3905 Add configuration url to Airthings (#58041)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-10-19 18:47:14 +02:00
Brig Lamoreaux d1e30fdd54 Rewrite test for feedreader (#57292)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-19 17:15:56 +02:00
Paulus Schoutsen 4fe4e65e3e Add entity category to Hue (#58011) 2021-10-19 12:29:43 +02:00
Franck Nijhof d8a354fa8f Add humidifier platform to Tuya (#58025) 2021-10-19 12:10:05 +02:00
Martin Hjelmare 9a5f16d85c Deprecate OpenZWave in manifest (#57987) 2021-10-19 12:07:57 +02:00
Jan Bouwhuis 58569a58a9 MQTT Alarm control panel - Enable remote code validation (#57764)
* Enable remote code validation

* Update homeassistant/components/mqtt/alarm_control_panel.py

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

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-10-19 12:07:38 +02:00
Franck Nijhof 4f2d313a4a Remove device category filtering from Tuya init (#58019) 2021-10-19 10:56:37 +02:00
Erik Montnemery 961ee717ef Store automation and script traces (#56894)
* Store automation and script traces

* Pylint

* Deduplicate code

* Fix issues when no stored traces are available

* Store serialized data for restored traces

* Update WS API

* Update test

* Restore context

* Improve tests

* Add new test files

* Rename restore_traces to async_restore_traces

* Refactor trace.websocket_api

* Defer loading stored traces

* Lint

* Revert refactoring which is no longer needed

* Correct order when restoring traces

* Apply suggestion from code review

* Improve test coverage

* Apply suggestions from code review
2021-10-19 10:23:23 +02:00
epenet 29c062fcc4 Rework Onewire tests to enable disabled entities (#58014)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-19 09:10:26 +02:00
Daniel Hjelseth Høyer a3cae17d88 Open garage sensor (#57976) 2021-10-19 09:05:55 +02:00
Steven Looman db474707a0 Preventing working with incomplete discoveries from user config flow in upnp (#57994) 2021-10-18 20:57:48 -10:00
Robert Hillis 4625a05706 Add init tests for agent dvr (#57022)
* Add init tests for agent dvr

* ci
2021-10-19 08:53:30 +02:00
rikroe 8debb7c784 Add service to stop air conditioning to bmw_connected_drive (#57772)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-10-19 08:46:04 +02:00
Brian Egge 708f2ae089 Fix issue parsing color effect None in flux_led (#57979)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-18 20:36:25 -10:00
Erik Montnemery 9a26a8cfd8 Add support for daily and monthly statistics (#57576)
* Add support for daily and monthly statistics

* Remove debug code

* Format code

* Don't use dateutil package

* Remove 2 TODOs

* Remove TODO

* Add comments
2021-10-19 08:29:23 +02:00
J. Nick Koston 6576225c48 Log unhandled loop exception traces when asyncio debug is on (#57602) 2021-10-18 20:07:51 -07:00
jan iversen f92fe38bbd Change warning to info when modbus is ready (#57953)
* Change warning to info.

* Make level info implicit.
2021-10-18 19:38:33 -07:00
Marc Mueller 9561c51276 Use assignment expressions 16 (#57962) 2021-10-18 19:36:35 -07:00
Erik Montnemery 2bae113748 Mark Tasmota status sensors as diagnostic sensors (#57958)
* Mark Tasmota status sensors as diagnostic sensors

* Disable IP and firmware version sensors by default
2021-10-18 19:33:26 -07:00
Simone Chemelli 1a978662ec Add configuration_url and entity_category to Fritz (#58004) 2021-10-18 19:30:45 -07:00
Zac West 1904019b5f Include webhook_id in mobile_app's notify registration_info (#58007) 2021-10-18 19:29:13 -07:00
rikroe 58417f509b BMW: Fix check_control_message short description (#57998)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-10-18 19:28:19 -07:00
J. Nick Koston 5138efcd92 Bump flux_led to 0.24.9 (#58006)
- Adds missing description for 0x04 models
2021-10-18 19:27:26 -07:00
GitHub Action 3855bb43ec [ci skip] Translation update 2021-10-19 00:12:08 +00:00
Jesse Hills 334e3062a6 Add configuration url to Juicenet (#57999) 2021-10-19 11:51:29 +13:00
Felipe Martins Diel 6f0a7d2921 Add to the Broadlink integration support for voltage, current, overload and total consumption sensors (#53628) 2021-10-18 11:38:51 -10:00
starkillerOG 9bd2115a20 Motion blinds add interface and wait_for_push options (#50067)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-18 23:34:51 +02:00
Franck Nijhof 174eaefe61 Add vacuum platform to Tuya (#57996) 2021-10-18 23:30:26 +02:00
J. Nick Koston ae660d9366 Pickup codeowner for bond (#57995) 2021-10-18 22:27:33 +02:00
Joakim Plate bc5422d737 Bump fjaraskupan to 1.0.2 (#57992) 2021-10-18 22:23:06 +02:00
Erik Montnemery fe8b9caf99 Bump pychromecast to 9.3.0 (#57991) 2021-10-18 21:48:50 +02:00
René Klomp 8b21a36e37 Bump pysma to 0.6.7 (#57978) 2021-10-18 20:59:37 +02:00
Franck Nijhof be73b21f81 Refactor Tuya light platform (#57980) 2021-10-18 20:35:01 +02:00
ollo69 b01170d917 Add Nut missing tests for config flow (#57964) 2021-10-18 07:17:10 -10:00
epenet 24737d4d1d Use pytest fixtures on Onewire tests (#57973)
* Add pytest fixtures

* Add sysbus fixtures

* Adjust parameter name

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-18 19:16:53 +02:00
Peter Nijssen 3d8e802141 Mark spider YAML configuration as deprecated (#57974) 2021-10-18 18:56:10 +02:00
J. Nick Koston 698f3ca96c Bump flux_led to 0.24.8 (#57934) 2021-10-18 06:52:17 -10:00
David Le Brun 4f25b2ca08 Support device and state classes for WAQI sensor (#57762) 2021-10-18 18:45:26 +02:00
Erik Montnemery 47fdf078e4 Bump hatasmota to 0.2.21 (#57966) 2021-10-18 18:41:18 +02:00
Marc Mueller f149bef9f3 Use assignment expressions 18 (#57967) 2021-10-18 18:36:35 +02:00
Marc Mueller ff853b2d53 Use assignment expressions 19 (#57968) 2021-10-18 15:54:38 +02:00
Erik Montnemery 786e1f9b6a Add configuration url to Tasmota (#57957) 2021-10-18 14:53:47 +02:00
Marc Mueller 1e98761f30 Use assignment expressions 15 (#57961) 2021-10-18 14:01:23 +02:00
epenet a421c524c1 Use pytest fixtures on Renault tests (#57955)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-18 13:27:44 +02:00
starkillerOG 04f51e599a Fix netgear NoneType and discovery (#57904) 2021-10-18 12:01:58 +02:00
Franck Nijhof 55c80b4093 Tuya tweaks to entity category, registry enabled, icons & device classes (#57949) 2021-10-18 09:24:59 +02:00
dependabot[bot] 81efdb2df2 Bump actions/checkout from 2.3.4 to 2.3.5 (#57947)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-10-18 08:50:33 +02:00
Paulus Schoutsen 388339fee2 Merge pull request #57944 from home-assistant/rc 2021-10-17 23:32:02 -07:00
Robert Svensson ed37d2a794 New service reconnect_client for UniFi integration (#57570)
* Initial proposal of a client reconnect service

* Slim setup and teardown of services

* Minor improvements

* Add tests
2021-10-18 08:06:06 +02:00
Paulus Schoutsen c3766a8136 Bumped version to 2021.10.6 2021-10-17 22:31:40 -07:00
Aaron Bach b5f2bffc96 Fix bug that prevents multiple instances of Tile (#57942) 2021-10-17 22:31:36 -07:00
Marc Mueller 589db0615f Revert "Fix bmw_conntected_drive check_control_message short description" (#57928)
This reverts commit acda3afe63.
2021-10-17 22:31:35 -07:00
J. Nick Koston bb6a9a7e2e Bump bond-api to 0.1.14 (#57874) 2021-10-17 22:31:34 -07:00
J. Nick Koston be3f32ef71 Prevent yeelight discovery from overloading the bulb (#57820) 2021-10-17 22:31:33 -07:00
Johannes la Poutre 60eb47e1ae Fix device class for energy plugwise sensors (#57803)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-17 22:31:32 -07:00
J. Nick Koston 010daaf990 Avoid setting up harmony websocket from discovery (#57589) 2021-10-17 22:30:59 -07:00
Aaron Bach 6a8ff9ffe7 Fix bug that prevents multiple instances of Tile (#57942) 2021-10-17 20:32:18 -07:00
J. Nick Koston cac0c04a91 Avoid setting up harmony websocket from discovery (#57589) 2021-10-17 20:32:02 -07:00
J. Nick Koston 147febb18a Prevent yeelight discovery from overloading the bulb (#57820) 2021-10-17 20:30:43 -07:00
Allen Porter dafea00f41 Rename stream_type to frontend_stream_type (#57923)
Camera devices may support multiple stream sources so we want to clarify that
this is meant to decide which stream source is used in the frontend only.

Will set stream_type temporarily to allow rollout without breaking nightly,
and this will be removed after frontend is updated.
2021-10-17 20:16:29 -07:00
GitHub Action a1176cc79a [ci skip] Translation update 2021-10-18 00:11:59 +00:00
Marc Mueller 3c4b715524 Revert "Fix bmw_conntected_drive check_control_message short description" (#57928)
This reverts commit acda3afe63.
2021-10-18 01:21:56 +02:00
Felipe Martins Diel 32d6c27ba0 Bump broadlink to 0.18.0 (#57929) 2021-10-17 12:47:53 -10:00
Allen Porter 4501906da3 Fix additional nest camera_sdm_tests to use STATE_STREAMING (#57920) 2021-10-17 22:04:12 +02:00
Marc Mueller 6ca23c67ff Use EntityDescription - bmw_connected_drive sensor (#57796) 2021-10-17 21:05:06 +02:00
Franck Nijhof 4fd8b27ce6 Add Vibration Sensor (zd) device support to Tuya (#57795) 2021-10-17 20:56:15 +02:00
Daniel Hjelseth Høyer f390812183 Adax attr (#57867) 2021-10-17 20:56:03 +02:00
J. Nick Koston 284861c8bb Add support for push updates to flux_led (#57890) 2021-10-17 08:47:35 -10:00
Marc Mueller 4f8148f9ea Use assignment expressions 07 (#57787) 2021-10-17 20:24:34 +02:00
Marc Mueller 2b72b7b7b9 Use assignment expressions 09 (#57790) 2021-10-17 20:19:56 +02:00
Marc Mueller aa7dc78a1e Use assignment expressions 11 (#57792) 2021-10-17 20:15:48 +02:00
Marc Mueller 238b488642 Use assignment expressions 03 (#57710) 2021-10-17 20:08:11 +02:00
Marc Mueller 2a8eaf0e0f Use assignment expressions 06 (#57786) 2021-10-17 20:05:11 +02:00
Marc Mueller d5116810d4 Use assignment expressions 08 (#57788) 2021-10-17 20:02:42 +02:00
Marc Mueller 5048bad050 Use assignment expressions 05 (#57785) 2021-10-17 19:56:00 +02:00
J. Nick Koston d09ee11c54 Fix bond reloading on zeroconf discovery when host has not changed (#57799) 2021-10-17 19:50:13 +02:00
Daniel Hjelseth Høyer e9d601a688 Opengarage dataupdater (#56931) 2021-10-17 07:48:45 -10:00
Daniel Hjelseth Høyer 8f6ed2d27e Add category diagnostic to Surepetcare binary sensor (#57908) 2021-10-17 19:47:07 +02:00
Allen Porter 3d33cad655 Improve nest error handling for websocket streams (#57885) 2021-10-17 19:46:18 +02:00
Allen Porter 95b07c138c Set nest camera always on STATE_STREAMING (#57882) 2021-10-17 19:45:31 +02:00
ollo69 fe0291012c Use attr_device_info and add init tests for nut (#57725) 2021-10-17 07:43:15 -10:00
Daniel Hjelseth Høyer bcd431e848 Add device info to Adax (#57907) 2021-10-17 19:40:47 +02:00
Daniel Hjelseth Høyer 9b693f7f2b Airthings entity category diagnostic (#57850) 2021-10-17 07:30:13 -10:00
Daniel Hjelseth Høyer 64145d6ccf Add category diagnostic to Switchbot battery and signal sensor (#57854) 2021-10-17 07:27:03 -10:00
Daniel Hjelseth Høyer 9c3aa8156d Add category diagnostic to Surepetcare battery sensor (#57852) 2021-10-17 07:26:29 -10:00
Daniel Hjelseth Høyer dd2d708cb9 Add category diagnostic to Tibber signal sensor (#57840) 2021-10-17 07:25:49 -10:00
Franck Nijhof 4aadb848e1 Add unit/device_class validation and normalization to Tuya (#57913)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-17 19:24:49 +02:00
Johannes la Poutre 0fc2946f88 Fix device class for energy plugwise sensors (#57803)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-17 18:49:18 +02:00
Robert Svensson 93ba966808 Add the correct device class to deCONZ Tamper entity (#57834) 2021-10-17 17:45:32 +02:00
J. Nick Koston 2edad82078 Fix order of arguments in rainmachine sensors (#57895) 2021-10-17 17:44:48 +02:00
starkillerOG 58f13e4e34 push motionblinds to 0.5.7 (#57902) 2021-10-17 16:53:49 +03:00
Robert Hillis f5e2960a92 Fix mode_callerid attributes (#57774)
* Allow mode_callerid to display number only

* alphabetize

* tweak

* only include attr if there is data
2021-10-17 14:53:18 +02:00
Maciej Bieniek 85c6942f55 Bump brother library to version 1.1.0 (#57892) 2021-10-17 00:12:35 -10:00
Maciej Bieniek 0b932b53c9 Do not probe nam device if the host is already configured (#57843) 2021-10-17 00:12:01 -10:00
J. Nick Koston 378c48da15 Improve lutron caseta error reporting when bridge is offline (#57832) 2021-10-16 23:11:35 -10:00
Joakim Sørensen f4918b2d9a Fix Tuya documentation URL (#57889) 2021-10-17 10:50:48 +02:00
Fredrik Erlandsson 4b55893781 Bump pypoint (#57888) 2021-10-17 10:50:23 +02:00
jan iversen c9f55c01af Bump pymodbus to 2.5.3. (#57887) 2021-10-17 10:11:28 +02:00
Joakim Plate a1e9a06675 Add sensor category for rssi and battery (#57848) 2021-10-17 09:45:11 +02:00
Marvin Wichmann 48d4cdf882 Update xknx to 0.18.11 and fix flaky test (#57877)
* Update xknx to 0.18.11

* review: join the queue before actually asserting
2021-10-17 09:43:18 +02:00
Aaron Bach b6ed8ca206 Make sure Notion data storage conforms to standards (#57812) 2021-10-16 23:59:36 -06:00
Aaron Bach fd49da37b8 Make sure OpenUV data storage conforms to standards (#57813) 2021-10-16 23:59:19 -06:00
Aaron Bach 3da3d26573 Make sure AirVisual data storage conforms to standards (#57806) 2021-10-16 23:58:39 -06:00
Maciej Bieniek 6fb0609f0c Add use time sensor for air purifiers (#57775) 2021-10-17 07:39:25 +02:00
J. Nick Koston d46ae04ec7 Add additional models to flux_led DHCP discovery (#57881) 2021-10-16 18:43:41 -10:00
J. Nick Koston 5461fa9a2d Bump bond-api to 0.1.14 (#57874) 2021-10-16 15:57:11 -10:00
Maciej Bieniek 276345e20a Decrease timeout and update_interval in Xiaomi Miio integration (#57339)
* Decrease timeout and update_interval

* Improve UPDATE_INTERVAL const

* Update values after testing
2021-10-17 03:13:12 +02:00
GitHub Action c76e15149c [ci skip] Translation update 2021-10-17 00:12:27 +00:00
avee87 6a80559fa8 Use separate weather condition for clear night in MetOffice forecasts (#55135) 2021-10-17 00:57:47 +02:00
Franck Nijhof d64f210b67 Add camera platform to Tuya (#57865) 2021-10-16 14:57:30 -07:00
Michael 2fa08ae6ab Add hassio discovery to VLC telnet (#57815) 2021-10-16 14:53:57 -07:00
b-pass c09c8f424f Set state class in JuiceNet component (#57870) 2021-10-16 14:52:30 -07:00
J. Nick Koston 0dcb8ca270 Avoid probing brother devices that have an existing config entry (#57829) 2021-10-16 14:52:10 -07:00
J. Nick Koston bdf96943ae Restore dhcp discovery support to tuya (#57826)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-16 14:51:37 -07:00
Daniel Hjelseth Høyer 4300f1de46 Use DeviceInfo class (#57868) 2021-10-16 14:51:10 -07:00
Franck Nijhof 441b0b2fb7 Add tamper device class for binary sensor (#57632) 2021-10-16 14:30:52 -07:00
Robert Hillis aa3e17cae9 Add new mac vendor to sense DHCP (#57858) 2021-10-16 23:17:25 +02:00
Franck Nijhof 74d72957b2 Add support for 'freeze' mode in Tuya thermostats (wk) (#57851) 2021-10-16 22:26:00 +02:00
jan iversen 623d0ae932 Bump pytradfri to v.7.1.0 (#57861) 2021-10-16 22:19:14 +02:00
Maciej Bieniek a9f940d8a2 Add support for device configuration URL to Nettigo Air Monitor integration (#57695) 2021-10-16 21:34:04 +02:00
Robert Hillis 4b474f47f2 Add configuration URL to Efergy (#57839)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-16 20:33:17 +02:00
Aaron Bach 845652da15 Make sure ReCollect Waste data storage conforms to standards (#57817) 2021-10-16 09:37:47 -06:00
Aaron Bach a71c5b760f Make sure Tile data storage conforms to standards (#57818) 2021-10-16 09:37:36 -06:00
Martin Hjelmare 5e2a9aa781 Fix vlc_telnet disconnect on unload (#57836) 2021-10-16 14:39:13 +02:00
Franck Nijhof 71e2fb62af Add myself as codeowner for Tuya (#57837) 2021-10-16 12:20:02 +02:00
J. Nick Koston 76b6fce19c Avoid exposing effects to flux_led lights that do not support them (#57810) 2021-10-15 18:54:00 -10:00
J. Nick Koston 8405331204 Add configuration_url to Sense (#57814) 2021-10-15 18:53:27 -10:00
J. Nick Koston 1cf7634942 Discover plex via zeroconf (#57825) 2021-10-15 18:53:05 -10:00
Aaron Bach f13eeee969 Add configuration URL to RainMachine (#57732) 2021-10-15 17:33:26 -10:00
GitHub Action 34fee4ba60 [ci skip] Translation update 2021-10-16 00:12:06 +00:00
jan iversen 34984d78a1 Add float32 test to modbus (#57805) 2021-10-15 16:06:36 -07:00
Robert Hillis 0ad5ad5ca7 Don't use cast when possible for goalzero (#57742)
* Don't use cast when possible for goalzero

* tweak

* tweak

* tweak

* Call first refresh on coordinator

* don't use dict.get if not needed

* tweak
2021-10-15 23:34:13 +02:00
Franck Nijhof a7c7e58a5b Add Luminance Sensor (ldcg) device support to Tuya (#57797) 2021-10-15 23:08:21 +02:00
Paulus Schoutsen eb30fb1f3b Merge pull request #57793 from home-assistant/rc 2021-10-15 13:57:41 -07:00
Franck Nijhof 6e5d49144a Add siren platform to Tuya (#57780) 2021-10-15 22:28:14 +02:00
Steven Looman 31b1d170a1 Fix broken upnp derived sensors reporting b/s instead of kb/s (#57681) 2021-10-15 13:03:23 -07:00
Steven Looman b75f1b8951 Fix broken upnp derived sensors reporting b/s instead of kb/s (#57681) 2021-10-15 13:03:03 -07:00
Marc Mueller 12d1dfdaf9 Use assignment expressions 10 (#57791) 2021-10-15 21:36:03 +02:00
Franck Nijhof 9be3278ffa Add Emergency Button (sos) device support to Tuya (#57794) 2021-10-15 21:32:12 +02:00
Martin Hjelmare 31ccaac865 Add vlc telnet config flow (#57513) 2021-10-15 11:46:58 -07:00
Paulus Schoutsen 0505891ab1 Bumped version to 2021.10.5 2021-10-15 10:27:39 -07:00
gjong a2bc69003e Fix Youless state class for power total sensor (#57758) 2021-10-15 10:27:19 -07:00
J. Nick Koston aac798660f Always send color/temp when switching from an effect in yeelight (#57745) 2021-10-15 10:27:17 -07:00
J. Nick Koston 1e8030b53e Reconnect and retry yeelight commands after previous wifi drop out (#57741) 2021-10-15 10:27:16 -07:00
Shay Levy a6590549ff Fix Shelly humidity sensor available condition (#57721) 2021-10-15 10:24:47 -07:00
Peter Nijssen 51e204a55b Bump spiderpy to 1.4.3 (#57675) 2021-10-15 10:24:46 -07:00
Aaron Bach 3d1cbe40ac Ensure Notion device name is stored as a string (#57670) 2021-10-15 10:24:46 -07:00
Erik Montnemery 39091b01c6 Correct detection of row_number support for MariaDB (#57663) 2021-10-15 10:24:45 -07:00
Aaron Bach 1235493a0e Bump simplisafe-python to 11.0.7 (#57573) 2021-10-15 10:24:44 -07:00
Mark Mäkinen 599a94fda6 Fix Fast.com autoupdate (#57552) 2021-10-15 10:24:43 -07:00
Daniel Hjelseth Høyer 06844ee2de Bump Mill library to 0.6.2 (#57533) 2021-10-15 10:24:42 -07:00
Michael Chisholm 6193b31072 Log reason for DLNA-DMR device becoming unavailable (#57516) 2021-10-15 10:24:42 -07:00
Michael Chisholm aeb00823aa Log reason for DLNA-DMR device becoming unavailable (#57516) 2021-10-15 19:24:04 +02:00
Paulus Schoutsen fcd0a877d6 Identify onetime listeners (#57751) 2021-10-15 10:23:36 -07:00
Franck Nijhof 892bf62dd5 Add PIR Detector (pir) device support to Tuya (#57784) 2021-10-15 19:11:06 +02:00
Marc Mueller 19443b474c Merge bmw_connected_drive metric and imperial sensor types (#56910) 2021-10-15 10:02:12 -07:00
Chris f8d0f76721 Add device class to temperature sensors for octoprint (#56997) 2021-10-15 09:45:04 -07:00
jan iversen 42803e6ac0 Clean startup of modbus by moving service schemas (#57763) 2021-10-15 09:40:27 -07:00
J. Nick Koston fb5d117df4 Always send color/temp when switching from an effect in yeelight (#57745) 2021-10-15 09:37:23 -07:00
J. Nick Koston 427f2a085b Reconnect and retry yeelight commands after previous wifi drop out (#57741) 2021-10-15 09:37:13 -07:00
Martin Hjelmare 5aba8a7c81 Fix modem_callerid test warning (#57760) 2021-10-15 09:36:26 -07:00
Erik Montnemery 0f2b5ea28e Don't expose config or diagnostic entities to cloud (#57771) 2021-10-15 09:35:32 -07:00
Erik Montnemery 8b33aa3702 Don't expose config or diagnostic entities to Google Assistant (#57669) 2021-10-15 09:12:34 -07:00
Erik Montnemery 7c1ba8be3d Don't expose config or diagnostic entities to Amazon Alexa by default (#57770) 2021-10-15 09:09:24 -07:00
Erik Montnemery 2b37943355 Don't add indirectly referenced config entities to service calls (#57671) 2021-10-15 08:46:43 -07:00
epenet 6881ab58d1 Add renault last activity sensors (#57750)
* Add battery and location last_activity sensors

* Drop state attributes

* Drop ATTR_LAST_UPDATE

* Adjust tests

* Mark new sensors as disabled_default

* Add default_disabled attribute

* Add context managers

* Adjust tests for disabled entities
2021-10-15 16:27:12 +02:00
Erik Montnemery 1eebe45154 Add support for entity categories to MQTT entities (#57656)
* Add support for entity categories to MQTT entities

* Improve test

* Apply suggestions from code review

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Update homeassistant/components/mqtt/mixins.py

Co-authored-by: Paul Monigatti <paulmonigatti@users.noreply.github.com>

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Paul Monigatti <paulmonigatti@users.noreply.github.com>
2021-10-15 14:28:30 +02:00
Petro31 f8dbcb953c Swap order of int template helper kwargs (#57729)
* swap order of int kwargs

* Add binary and kwargless base tests
2021-10-15 13:04:26 +02:00
Joakim Sørensen 0e0430ba36 Remove YAML import from UptimeRobot (#57761) 2021-10-15 12:33:10 +02:00
gjong cb625d1c7a Fix Youless state class for power total sensor (#57758) 2021-10-15 12:24:51 +02:00
Maciej Bieniek f02522783a Add entity category to Nettigo Air Monitor entities (#57698) 2021-10-15 11:42:21 +02:00
Franck Nijhof b97d5a703c Renamed variables in Tuya (#57759) 2021-10-15 11:33:30 +02:00
J. Nick Koston b7c52d0485 Add configuration url to rachio (#57738) 2021-10-14 23:23:32 -10:00
Franck Nijhof 6e6313272d Move Tuya value scaling into IntegerTypeData (#57757) 2021-10-15 10:33:20 +02:00
Robert Hillis 19d812602e Activate strict typing for nfandroidtv (#57743)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-15 10:27:26 +02:00
Erik Montnemery aed6eee1ff Minor tweak of entityfilter typing (#57756) 2021-10-15 10:19:27 +02:00
Maciej Bieniek 38688e5263 Add configuration URL to Brother (#57726) 2021-10-15 10:08:00 +02:00
Franck Nijhof f6c6ec3578 Centralize entity naming for Tuya entities (#57755) 2021-10-15 10:07:25 +02:00
avee87 8b422a7bd5 Add documentation link for Supervisor integration (#57733) 2021-10-15 09:26:54 +02:00
avee87 727d8c7a37 Fix signature for hassio.restore_partial service (#57735) 2021-10-15 09:04:55 +02:00
Paulus Schoutsen 8dbff0b4b3 Fix WLED exception on close (#57752) 2021-10-15 09:04:43 +02:00
Steffen Ronalter 49b07224bf Add onewire support for DS2413 (#55921) 2021-10-15 08:23:26 +02:00
Paulus Schoutsen 12b6922875 Add entity category to cloud (#57747) 2021-10-15 08:17:40 +02:00
jan iversen 4417ffb407 COnvert DATA_TYPE to enum. (#57699) 2021-10-15 07:09:59 +02:00
J. Nick Koston faf5c2eb40 Add discovery support for single channel magichome controllers (#57736) 2021-10-14 20:53:35 -07:00
J. Nick Koston bcff2b7858 Add configuration url to nexia (#57740) 2021-10-14 20:52:26 -07:00
J. Nick Koston e7ac734d01 Add configuration_url to gogogate2 (#57739) 2021-10-14 20:51:12 -07:00
Michael 148d2480ac Add configuration url to Pi hole (#57718) 2021-10-14 19:32:24 -07:00
Shay Levy e232bdc082 Add Shelly "installed version" extra state attribute to Gen2 firmware update sensor (#57722) 2021-10-14 19:02:37 -07:00
Franck Nijhof eed9f67402 Add service configuration URL to MQTT (#57731) 2021-10-14 18:27:40 -07:00
Maciej Bieniek e34fb4cfb9 Add entity category to Brother (#57728) 2021-10-14 18:10:24 -07:00
Shay Levy 9000e5b2d9 Fix Shelly humidity sensor available condition (#57721) 2021-10-14 17:48:28 -07:00
Maciej Bieniek e7e88d6a19 Add entity category to Tractive (#57720) 2021-10-14 17:46:25 -07:00
Maciej Bieniek b0ff28ceb4 Add entity category to Xiaomi Miio (#57719) 2021-10-14 17:31:25 -07:00
starkillerOG e34aed743c Xiaomi Miio appropriatly raise ConfigEntryAuthFailed/ConfigEntryNotReady (#54696)
* Add reties to cloud login

* push to version 0.4 of micloud

* distinguish between authentication error and socket errors

* raise from error

* Update homeassistant/components/xiaomi_miio/gateway.py

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

* move ConfigEntryNotReady to connect function

* remove unused import

* also add ConfigEntryNotReady for device

* catch exceptions in config flow

* fixes

* bring tests back to 100%

* add missing catch exception

* add test

* fix black

* Update homeassistant/components/xiaomi_miio/device.py

Co-authored-by: Teemu R. <tpr@iki.fi>

* Update homeassistant/components/xiaomi_miio/gateway.py

Co-authored-by: Teemu R. <tpr@iki.fi>

* Update tests/components/xiaomi_miio/test_config_flow.py

Co-authored-by: Teemu R. <tpr@iki.fi>

* fix tests

* define specific exceptions

* fix styling

* fix tests

* use proper DeviceException

* Revert "use proper DeviceException"

This reverts commit 0bd16135387cd6d9e563cd62ac147d0a25c577f3.

* use appropriate side-effect

* remove unused returns

* Update homeassistant/components/xiaomi_miio/const.py

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

* remove unused returns

Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Teemu R. <tpr@iki.fi>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-15 01:25:44 +02:00
Joakim Sørensen c243dca58e Change name from Uptime Robot to UptimeRobot (#57714) 2021-10-15 00:50:09 +02:00
Franck Nijhof e077fb13ce Add device configuration URL to WLED (#57692) 2021-10-14 15:46:26 -07:00
Joakim Sørensen a9737865ae Fix platform typo in Tuya const (#57716) 2021-10-14 15:46:06 -07:00
Franck Nijhof 4a20d28ec6 Add service configuration URL to Speedtest.net (#57715) 2021-10-14 15:37:31 -07:00
Franck Nijhof efb6300359 Add service configuration URL to Verisure (#57713) 2021-10-14 15:35:09 -07:00
starkillerOG 9280215d69 push motionblinds to 0.5.6 (#57707) 2021-10-14 15:32:17 -07:00
Joakim Sørensen cc6030cff2 Add configuration_url to Uptime Robot (#57709) 2021-10-14 15:31:46 -07:00
Robert Hillis abf6720cd3 Add strict typing to goalzero (#57680) 2021-10-15 00:20:08 +02:00
Maciej Bieniek 3127074f76 Add entity category to Shelly (#57705) 2021-10-14 15:17:00 -07:00
Aaron Bach 4745e58a92 Remove long-term statistics from IQVIA forecast sensor (#57687) 2021-10-15 00:13:12 +02:00
David Le Brun 2601d71f5d Add state_class to EnOcean sensors (#57666) 2021-10-14 23:15:16 +02:00
Michael 2e5af5d8e2 Add configuration url to Synology DSM (#57704) 2021-10-14 23:13:01 +02:00
Paulus Schoutsen 9c7dc5865c Add url to CO2signal (#57703) 2021-10-14 14:11:57 -07:00
Peter Nijssen f8ea2f9b08 Bump spiderpy to 1.4.3 (#57675) 2021-10-14 23:11:07 +02:00
Michael 445c7301f8 Skip auto-update when fqdn and ssl-verfiy is used for Synology DSM (#57568) 2021-10-14 13:55:31 -07:00
Michael a6aff613d7 Optimize update calls for AVM Fritz!Smarthome devices (#57579) 2021-10-14 13:53:05 -07:00
Michael e395e33663 Add support for entity categories to Synology DSM entities (#57690) 2021-10-14 13:52:17 -07:00
Michael 997d014111 Add support for entity categories to NUT entities (#57689) 2021-10-14 13:51:31 -07:00
Paulus Schoutsen 7104750008 Bump frontend to 20211014.0 (#57706) 2021-10-14 13:44:04 -07:00
Franck Nijhof 93e15ef88c Add service configuration URL to Spotify (#57701) 2021-10-14 22:42:34 +02:00
Franck Nijhof 5382ab8562 Add device configuration URL to Plugwise (#57696) 2021-10-14 22:31:23 +02:00
Franck Nijhof a584d7b5c9 Add service configuration URL to Stookalert (#57697) 2021-10-14 22:31:12 +02:00
Paulus Schoutsen 3c11e2a097 Add entity category to WLED (#57693) 2021-10-14 13:31:01 -07:00
Franck Nijhof 0407a56fdf Add number platform to Tuya (#57672) 2021-10-14 13:15:41 -07:00
Peter A. Bigot d6d6929e2b Port unmerged fixes from tuya_v2 (#57624) 2021-10-14 13:14:48 -07:00
Franck Nijhof cef34356e2 Add sensor platform to Tuya (#57668) 2021-10-14 12:04:02 -07:00
Paulus Schoutsen 7546c766dd Fix lint issue (#57694) 2021-10-14 12:03:39 -07:00
Aaron Bach 681b5c48e2 Ensure Notion device name is stored as a string (#57670) 2021-10-14 11:21:44 -07:00
Erik Montnemery 8ef8838801 Correct detection of row_number support for MariaDB (#57663) 2021-10-14 11:19:39 -07:00
Erik Montnemery e27e4c3561 Add support for device configuration URL (#57539)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-10-14 11:16:56 -07:00
Marvin Wichmann addb91d49e Update xknx to version 0.18.10 (#57635)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-14 10:54:48 -07:00
Robert Hillis 488a636aec Clean up unused loggers (#57662) 2021-10-14 10:03:38 -07:00
Franck Nijhof fdc6d9e004 Add select platform to Tuya (#57674) 2021-10-14 09:50:51 -07:00
uvjustin ce186c5935 Only pass libav logger messages when stream logger is set to debug (#57616) 2021-10-14 23:43:00 +08:00
Franck Nijhof b28062789f Remove deprecated Lyft integration (#57638) 2021-10-14 11:27:09 +02:00
Franck Nijhof 2ec352ce96 Migrate attribution attribute for Aftership (#57649) 2021-10-14 10:25:19 +02:00
Franck Nijhof f43bba8cfd Migrate attribution attribute for bitcoin (#57651) 2021-10-14 10:24:30 +02:00
Franck Nijhof 1dcba44199 Migrate attribution attribute for bbox (#57650) 2021-10-14 10:23:54 +02:00
jan iversen debcdc382f Late review comments. (#57654) 2021-10-14 10:22:21 +02:00
J. Nick Koston d3e24cc1d6 Bump flux_led to 0.24.5 (#57653)
- Fixes fallback to old protocol with asyncio

- Changelog: https://github.com/Danielhiversen/flux_led/compare/0.24.4...0.24.5
2021-10-14 11:15:29 +03:00
Erik Montnemery 4b3d423767 Add config and diagnostic entities (#57528)
* Add config entity concept

* Rename is_config_entity to entity_category

* Add test

* Add 'diagnostic' entity category
2021-10-14 10:04:26 +02:00
Joakim Sørensen 24509503bb Remove snapshot from hassio integration (#57652) 2021-10-14 10:00:44 +02:00
Franck Nijhof 5cd2167924 Upgrade pyyaml to 6.0 (#57648) 2021-10-14 09:29:31 +02:00
Jason Madigan f62cadf32c Use reference strings in soma (#57564) 2021-10-14 08:54:16 +02:00
Ville Skyttä 8e18ca3b6e Use HTTPStatus instead of HTTP_* int constants in mobile_app responses (#56418) 2021-10-14 08:47:13 +02:00
Franck Nijhof 26faac0567 Remove YAML configuration from Rainforest Eagle (#57636) 2021-10-14 08:46:39 +02:00
Michael 0da1f9544e Correct state classes for systemmonitor sensors (#57615) 2021-10-14 08:45:58 +02:00
ollo69 827501659c Nut: Use coordinator data, code cleanup and add test coverage (#57643) 2021-10-13 16:05:06 -10:00
GitHub Action 8c326198cf [ci skip] Translation update 2021-10-14 00:11:41 +00:00
Franck Nijhof 45f3eb6991 Remove deprecated Wink integration (#57634) 2021-10-14 00:20:13 +02:00
ollo69 b54fc0229d Use entity_registry_enabled_default for Nut sensors (#56854) 2021-10-13 11:33:03 -10:00
Franck Nijhof b220ab6e91 Prettify Tuya entity class names (#57629) 2021-10-13 23:30:25 +02:00
Franck Nijhof b854a2537f Use classmethod in Tuya TypeData classes (#57627) 2021-10-13 22:58:10 +02:00
Franck Nijhof 158dd1556c Remove myself as code owner from Toon (#57625) 2021-10-13 22:36:49 +02:00
Erik Montnemery 838f79be3d Update tests searching for areas referenced in automations (#57558) 2021-10-13 13:27:56 -07:00
Franck Nijhof b2cef78d90 Add binary sensor platform to Tuya (#57623) 2021-10-13 22:12:07 +02:00
Paulus Schoutsen 835e07f63e Remove debug log (#57619) 2021-10-13 13:03:52 -07:00
Franck Nijhof 14c380fb57 Use EntityDescription in Tuya Switch platform (#57581) 2021-10-13 21:15:34 +02:00
jan iversen 2734ae17f3 Modbus baseplatform.py and Validators.py 100% coverage (activate coverage) (#57546) 2021-10-13 11:51:51 -07:00
Franck Nijhof 6a72af63c2 Refactor Tuya climate platform (#57609) 2021-10-13 20:29:11 +02:00
Christian Manivong 16b7375e60 Provide device_id in hue_event (#56982)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-13 20:20:38 +02:00
Otto Winter df4e8721e9 ESPHome move ReconnectLogic to aioesphomeapi (#57601) 2021-10-13 10:04:23 -07:00
Jason Nader 628e59ff11 Clarify that only HTTPS can be used in fitbit (#57116) 2021-10-13 08:45:59 -07:00
J. Nick Koston b86e19143d Prevent event loop delay / instability from discovery (#57463) 2021-10-13 08:37:14 -07:00
Paulus Schoutsen ffbe4cffae Guard linking credential that is already linked (#57595)
* Guard linking credential that is already linked

* Update test descriptions
2021-10-13 17:36:31 +02:00
Paulus Schoutsen 0ae1186554 Use gather ipv wait to remove credentials to catch exceptions (#57596) 2021-10-13 17:34:57 +02:00
Maikel Punie e130c8671b Bump version (#57607) 2021-10-13 17:21:32 +02:00
Erik Montnemery a5603c0076 Improve warning prints for sensor statistics (#57605) 2021-10-13 08:15:04 -07:00
Abílio Costa c97acf8713 Add support for multiple Whirlpool airconditioners (#57588) 2021-10-13 15:45:02 +02:00
Lukas Kempf 3b1938d5ec Add unique_id support for eq3btsmart (#57603) 2021-10-13 15:33:37 +02:00
Jan Bouwhuis c470a03a4e Add a use_time sensor for Xiaomi_miio humidifiers (#57560)
Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>
2021-10-13 13:36:02 +02:00
Allen Porter 1fa6329c2e Add Nest WebRTC and support Nest Battery Camera and Nest Battery Doorbell (#57299)
* Add WebSocket API for intiting a WebRTC stream

See https://github.com/home-assistant/architecture/discussions/640

* Add nest support for initiating webrtc streams

Add an implementation of async_handle_web_rtc_offer in nest, with test coverage.
Issue #55302

* Rename offer variable to match overriden variable name

* Remove unnecessary checks covered by websocket function

* Update homeassistant/components/camera/__init__.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-13 03:28:52 -07:00
jan iversen 8d7744a74f Warn user if Gateway is already paired (#57530)
* Warn user if Gateway is already paired.

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-13 07:16:55 +02:00
J. Nick Koston abcacd2a00 Use a human readable model name in flux_led (#57519) 2021-10-12 21:40:49 -07:00
J. Nick Koston f41aedc0f9 Fix single channel controllers with flux_led (#57458) 2021-10-12 21:40:18 -07:00
J. Nick Koston 2adb9a8bec Refresh the bond token if it has changed and available (#57583) 2021-10-12 21:39:46 -07:00
GitHub Action 282300f3e4 [ci skip] Translation update 2021-10-13 00:11:33 +00:00
Aaron Bach deec3dfae4 Bump simplisafe-python to 11.0.7 (#57573) 2021-10-12 12:35:10 -06:00
Erik Montnemery ee98849360 Always include start point for statistics (#57182) 2021-10-12 10:39:36 -07:00
Franck Nijhof a4357fdb95 Replace all Tuya device property constants with an Enum (#57559) 2021-10-12 10:36:14 -07:00
Mark Mäkinen c55e9136ee Fix Fast.com autoupdate (#57552) 2021-10-12 09:35:35 -07:00
Erik Montnemery ffeb73a4f6 Add statistics tests for sensor with changing device class (#57317) 2021-10-12 09:09:32 -07:00
Erik Montnemery 007af4a7aa Search for areas, devices and entities in script choose actions (#57554) 2021-10-12 08:49:07 -07:00
Franck Nijhof 8ec38ef034 Refactor Tuya device handling (#57545)
* Refactor Tuya device handling

* Tweak
2021-10-12 16:49:46 +02:00
shbatm fb18c108d1 Add service to Rainmachine to push weather data from Home Assistant (#57354) 2021-10-12 07:40:46 -06:00
Marc Mueller bf24090463 Update flake8 related packages (#57538) 2021-10-12 15:33:08 +02:00
jan iversen 4afb4d9076 Bump pytradfri to 7.0.7 (#57543) 2021-10-12 15:07:20 +02:00
Franck Nijhof f82af47f6a Use Tuya endpoints values from upstream library (#57537) 2021-10-12 14:33:19 +02:00
Franck Nijhof c943677675 Tweaks to Tuya base entity (#57526) 2021-10-12 12:25:03 +02:00
Daniel Hjelseth Høyer d90d804260 Bump Mill library to 0.6.2 (#57533) 2021-10-12 12:09:12 +02:00
Erik Montnemery bdbedd0f06 Alphabetize parts of device registry code (#57532) 2021-10-12 12:08:59 +02:00
Marc Mueller c4f8c52df9 Use EntityDescription - bmw_connected_drive (#56861) 2021-10-12 11:46:23 +02:00
Franck Nijhof d44e323e95 Move Tuya remap method from base to light entity class (#57527) 2021-10-12 11:34:18 +02:00
Franck Nijhof e23d35c6f0 Move all Tuya device handling into device listener class (#57523) 2021-10-12 11:32:57 +02:00
Jan Bouwhuis 879144b48d MQTT rework constants (#57529)
* reference CONF_TOPIC to .const

* Organize common mqtt constants
2021-10-12 11:26:38 +02:00
Maciej Bieniek 931032667c Bump accuweather library to version 0.3.0 (#57497) 2021-10-12 11:23:49 +02:00
Allen Porter d0cc890d2b Add statistics support to nest sensors (#57393)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-12 10:56:57 +02:00
Franck Nijhof 1b71eafeba Upgrade coverage to 6.0.2 (#57518) 2021-10-12 10:47:34 +02:00
Franck Nijhof 70aa8b6f00 Upgrade flake8-comprehensions to 3.7.0 (#57520) 2021-10-12 10:15:45 +02:00
Franck Nijhof 42ba907dc5 Merge pull request #57517 from home-assistant/rc 2021-10-12 08:46:35 +02:00
Paulus Schoutsen acb6c4ea1d Bumped version to 2021.10.4 2021-10-11 22:37:03 -07:00
J. Nick Koston a07a2a1120 Simplify yeelight setup to improve reliability (#57500) 2021-10-11 22:36:55 -07:00
chpego 989807dc89 Bump youtube-dl to 2021.06.06 (#57490) 2021-10-11 22:36:54 -07:00
Erik Montnemery 6db010f4ab Detect if mysql and sqlite support row_number (#57475) 2021-10-11 22:36:53 -07:00
micha91 60d9bc68d9 Upgrade aiomusiccast to tolererate not decodable characters (#57461) 2021-10-11 22:36:52 -07:00
Robert Hillis fd657e5979 Fix referenced before assignment in modem_callerid (#57460) 2021-10-11 22:36:51 -07:00
Steven Looman 7b8b0d815a Fix upnp creating derived sensors (#57436) 2021-10-11 22:36:50 -07:00
starkillerOG ca21447b13 Fix Netgear orbi port in ssdp discovery (#57432) 2021-10-11 22:36:49 -07:00
gjong cbd6e7aa1d Upgrade youless library to fix missing sensor LS110 (#57366) 2021-10-11 22:36:49 -07:00
Erik Montnemery 0139bfa749 Detect if mysql and sqlite support row_number (#57475) 2021-10-11 21:17:18 -07:00
Franck Nijhof 3ff30f53a7 Migrate attribution attribute for Stookalert (#57503) 2021-10-11 21:08:36 -07:00
Franck Nijhof f561543e92 Migrate attribution attribute for Arlo (#57504) 2021-10-11 20:40:40 -07:00
Franck Nijhof 1a68784852 Migrate attribution attribute for UptimeRobot (#57508) 2021-10-11 20:40:21 -07:00
Franck Nijhof 813e27a46a Migrate attribution attribute for AmberElectric (#57505) 2021-10-11 20:40:08 -07:00
Franck Nijhof e94bebdf7b Migrate attribution attribute for Picnic (#57507) 2021-10-11 20:39:51 -07:00
Franck Nijhof 580b5fb812 Entity attributes cleanup in Tuya base entity (#57510) 2021-10-11 20:37:18 -07:00
Franck Nijhof 71a3daa8ce Pass device manager directly in Tuya registry cleanup (#57511) 2021-10-11 20:36:46 -07:00
Franck Nijhof f0abd5b815 Fix Tuya error when removing device (#57512) 2021-10-11 20:32:15 -07:00
J. Nick Koston 58362404ea Simplify yeelight setup to improve reliability (#57500) 2021-10-11 20:30:23 -07:00
GitHub Action 10b62370ff [ci skip] Translation update 2021-10-12 00:12:28 +00:00
Erik Montnemery 7acb1b6eb9 Override the jinja2 int filter (#57470) 2021-10-12 00:12:42 +02:00
Jan Bouwhuis a36a765352 Allow MQTT discovery availability shortcut (#57479)
* replace base in availability topic

* add tests for availability shortcuts - fix import

* group constants

* simplified loop

* Moving constants to .const

* rename value to topic

* move CONF_TOPIC to .const

* move CONF_AVAILABILITY to .const

* remove check for string

* Silently ignore if no config topic is found.

* CONF_TOPIC should be required
2021-10-11 23:37:31 +02:00
Franck Nijhof 13db867c1d Move attribution attribute to Entity base class (#57492) 2021-10-11 23:15:32 +02:00
Martin Hjelmare d10b1d9fe0 Fix watttime config flow and tests (#57498) 2021-10-11 22:08:57 +02:00
Aaron Bach 0c04ca20c6 Add ability to re-auth WattTime (#56582)
* Tests cleanup

* Still store the abbreviation

* Code review

* Remove unused attribute

* Add ability to re-auth WattTime

* Consolidate logic for entry unique ID

* Fix tests

* Fix docstring
2021-10-11 13:41:39 -05:00
jan iversen 6a39119ccc Streamline modbus before 100% coverage. (#57478) 2021-10-11 13:26:36 -05:00
RenierM26 48c2cfa6f8 Use entity description for Ezviz sensors (#56634) 2021-10-11 20:09:19 +02:00
chpego b155d2bbe5 Bump youtube-dl to 2021.06.06 (#57490) 2021-10-11 20:07:23 +02:00
J. Nick Koston 02c30aed5e Add DHCP discovery for additional Zengge devices, generic magichome strips (#57408) 2021-10-11 07:20:24 -10:00
J. Nick Koston 381301d978 Add the switch platform to flux_led (#57444) 2021-10-11 07:20:11 -10:00
Glenn Waters d0b37229dd Switch to config_flow for Environment Canada (#57127)
* Add config_flow to Environment Canada

* Add unique_id

* Remove erroneous directory.

* Tests working!!

* Add back setup.

* First cut of import.

* Temp

* Tweak names.

* Import config.yaml.

* Clean up imports.

* Import working! Some refactor to clean it up.

* Add import test.

* Small optimization.

* Fix comments from code review.

* Remove CONF_NAME and config_flow for it.

* Fixup strings to match new config_flow.

* Fixes for comments from last review.

* Update tests to match new import code.

* Clean up use of CONF_TITLE; fix lint error on push.

* Phew. More cleanup on import. Really streamlined now!

* Update tests.

* Fix lint error.

* Fix lint error, try 2.

* Revert unique_id to use location as part of ID.

* Fix code review comments.

* Fix review comments.
2021-10-11 17:33:29 +02:00
Maciej Bieniek 8ee6662cff Bump nettigo_air_monitor library to version 1.1.1 (#57483) 2021-10-11 17:27:04 +02:00
Aaron Bach b72f1553ea Use current config entry standards for AirVisual (#57132) 2021-10-11 09:17:43 -06:00
J. Nick Koston 6c470ac28b Add dhcp support for tplink KP401 (#57456) 2021-10-11 17:15:31 +02:00
Marc Mueller 858739949b Use EntityDescription - openweathermap (#56888) 2021-10-11 16:18:18 +02:00
Marc Mueller 748d915909 Don't override methods marked as final (#57477) 2021-10-11 15:24:06 +02:00
Robert Hillis a827521138 Add energy management for efergy (#57472) 2021-10-11 13:16:55 +02:00
Kevin Hellemun 30154763f8 Add xiaomi vacuum -9999 fix back (#57473) 2021-10-11 13:11:45 +02:00
Fredrik Erlandsson cadbf7f6a9 Bump Daikin version, catch new exception during config_flow (#57080) 2021-10-11 13:11:02 +02:00
starkillerOG 1fbc94f56d Add Netgear ssid and conn_ap_mac sensors (#57226)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-11 13:08:56 +02:00
RDFurman 9040b6a59e Update somecomfort library to 0.7.0 (#57214) 2021-10-11 12:49:02 +02:00
jan iversen 199cf649be Add test of lazy_error in modbus (#57170) 2021-10-11 12:43:05 +02:00
Yuval Aboulafia 3a2d6a6343 Use _attr for Suez water (#57278) 2021-10-11 12:20:19 +02:00
Robert Hillis 8275110c44 Fix referenced before assignment in modem_callerid (#57460) 2021-10-11 11:36:53 +02:00
starkillerOG d84722c3c2 Fix Netgear orbi port in ssdp discovery (#57432) 2021-10-11 11:35:29 +02:00
micha91 20d08fa470 Upgrade aiomusiccast to tolererate not decodable characters (#57461) 2021-10-11 11:34:37 +02:00
gjong 3dc1a268ae Upgrade youless library to fix missing sensor LS110 (#57366) 2021-10-11 11:30:23 +02:00
Robert Hillis c4eeebd7a7 Add config flow for efergy (#56890) 2021-10-11 10:07:31 +02:00
Steven Looman 3825f80a2d Fix upnp creating derived sensors (#57436) 2021-10-11 09:35:26 +02:00
Robert Hillis ba0196137e Bump pytautulli to 21.10.0 (#57449) 2021-10-11 08:32:00 +02:00
spahlimi 14050966cc Upgrade rvx to 0.7.0 (#57430) 2021-10-11 06:47:38 +02:00
Paulus Schoutsen a3ae25efdb Merge pull request #57455 from home-assistant/rc 2021-10-10 21:14:45 -07:00
Paulus Schoutsen ce75c11033 Bumped version to 2021.10.3 2021-10-10 20:34:53 -07:00
Shay Levy 862527782e Fix netgear renamed mdi icons (#57431) 2021-10-10 20:34:46 -07:00
Shay Levy 4129119b69 Fix netgear renamed mdi icons (#57431) 2021-10-10 20:30:16 -07:00
J. Nick Koston b102a45bdf Bump zeroconf to 0.36.8 (#57451)
- Changelog: https://github.com/jstasiak/python-zeroconf/releases/tag/0.36.8
2021-10-10 20:22:50 -07:00
Shay Levy fc5a2e3e06 Fix Shelly button type in roller mode (#57429) 2021-10-10 20:22:49 -07:00
Shay Levy c01549999a Fix Shelly button filter empty event (#57427) 2021-10-10 20:22:48 -07:00
J. Nick Koston 7ed50bb9e6 Restore yeelight workaround for failing to update state after on/off (#57400) 2021-10-10 20:22:48 -07:00
mvn23 975b48859e Fix opentherm_gw.set_clock time parameter name (#57398) 2021-10-10 20:22:47 -07:00
mvn23 e92adde417 Fix default parameter values for service opentherm_gw.set_clock (#57397) 2021-10-10 20:22:46 -07:00
J. Nick Koston d929faaeff Remove executor calls in isy994 as its fully async (#57394) 2021-10-10 20:22:46 -07:00
J. Nick Koston 8c44f9b501 Do all of dhcp scapy startup in the executor (#57392) 2021-10-10 20:22:45 -07:00
Bram Kragten 2e9bbe5219 Update frontend to 20211007.1 (#57385) 2021-10-10 20:22:44 -07:00
Joakim Sørensen a4b6b74997 Bump pyhaversion to 21.10.0 (#57377) 2021-10-10 20:22:43 -07:00
RenierM26 307a07611e Bump Switchbot library (#57367)
* Bump dependency to fix SB password problem.

* Bump API version.
2021-10-10 20:22:42 -07:00
MatthewFlamm 0f2b9a6d77 Bump pynws to 1.3.2 (#57361) 2021-10-10 20:22:42 -07:00
Shay Levy 1e48bef74e Fix Shelly RGB/W supported color mode detection (#57359) 2021-10-10 20:22:41 -07:00
J. Nick Koston 438bdcbd8b Use switch format unique ids for tplink dimmers (#57346) 2021-10-10 20:22:40 -07:00
Robert Hillis 67e5f4e823 Catch errors for efergy (#57326)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-10 20:22:39 -07:00
J. Nick Koston 6e95ce70bc Bump aiodiscover to 2.4.5 (#57439)
- Disable scanning if the network size exceeds the maximum number of
  allowed hosts (8192)

- Changelog: https://github.com/bdraco/aiodiscover/compare/v1.4.4...v1.4.5

- Closes #57378
2021-10-11 05:14:42 +02:00
J. Nick Koston 77c7709323 Bump zeroconf to 0.36.8 (#57451)
- Changelog: https://github.com/jstasiak/python-zeroconf/releases/tag/0.36.8
2021-10-11 04:40:17 +02:00
Matthias Alphart c0a3c7a4b7 Update pyfronius to 0.7.0 (#57279)
* update to pyfronius 0.7.0

* exception handling

* exception handling
2021-10-11 04:37:44 +02:00
J. Nick Koston e148939b78 Convert flux_led to use asyncio (#57440) 2021-10-10 15:12:54 -10:00
GitHub Action 5c91d8d379 [ci skip] Translation update 2021-10-11 00:12:43 +00:00
Shay Levy 6820faf5a0 Fix Shelly button type in roller mode (#57429) 2021-10-10 22:39:57 +03:00
Shay Levy ee80ccf7a6 Fix Shelly button filter empty event (#57427) 2021-10-10 22:39:34 +03:00
icemanch 3efbd6a1c9 Flux led color support (#57353)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-10 09:18:15 -10:00
J. Nick Koston 5b3711ed19 Use switch format unique ids for tplink dimmers (#57346) 2021-10-10 00:02:33 -07:00
J. Nick Koston a58085639e Restore yeelight workaround for failing to update state after on/off (#57400) 2021-10-10 00:01:45 -07:00
J. Nick Koston 45b60b8346 Remove executor calls in isy994 as its fully async (#57394) 2021-10-10 00:01:18 -07:00
J. Nick Koston be8724a6f8 Do all of dhcp scapy startup in the executor (#57392) 2021-10-10 00:00:28 -07:00
Abílio Costa 49d97e13de Improve Whirlpool component code quality (#57357)
* Improve Whirlpool component code

This implements a few suggestions given in
https://github.com/home-assistant/core/pull/48346#pullrequestreview-773552670

* Add return typing

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

* Add reason assertion to config_flow test

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-10 08:49:02 +02:00
GitHub Action 80ee583418 [ci skip] Translation update 2021-10-10 00:12:54 +00:00
Aidan Timson 9f34d010e6 Add System Bridge display sensors (#57019)
* System Bridge - Add Display Sensors

* Omit default
2021-10-09 16:57:55 -07:00
mvn23 8b013b823b Fix default parameter values for service opentherm_gw.set_clock (#57397) 2021-10-10 00:15:21 +02:00
mvn23 97187069a7 Fix opentherm_gw.set_clock time parameter name (#57398) 2021-10-10 00:09:01 +02:00
Joakim Sørensen d0101f67da Bump pyhaversion to 21.10.0 (#57377) 2021-10-09 23:46:25 +02:00
Maciej Bieniek 6ef70c85ee Add -9999 error fix back in Xiaomi Miio (#57399) 2021-10-09 23:42:20 +02:00
MatthewFlamm 5829f93b53 Bump pynws to 1.3.2 (#57361) 2021-10-09 23:38:45 +02:00
Bram Kragten b2cfbb7d1e Update frontend to 20211007.1 (#57385) 2021-10-09 22:57:13 +02:00
indykoning 325d5e1c22 Create devices for Growatt (#57068) 2021-10-09 11:36:38 -07:00
Shay Levy 8de7966104 Add Shelly config entry reload on device config change (#57356) 2021-10-09 19:10:43 +03:00
Robert Hillis 6a5895222e Catch errors for efergy (#57326)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-09 11:23:40 +02:00
RenierM26 b27bcf1b00 Bump Switchbot library (#57367)
* Bump dependency to fix SB password problem.

* Bump API version.
2021-10-09 10:02:35 +02:00
Ben fe065b2de8 Add Sure Petcare Felaqua device (#56823)
* add a SurePetcareSensor

* add the felaqua sensor

* add felaqua battery test

* fix felaqua product_id

* actually add a felaqua sensor 😅

* remove superclass
2021-10-09 01:33:41 -05:00
Paulus Schoutsen 6d0da631bf Handle prepare timeout in websocket API (#55989) 2021-10-08 22:12:06 -07:00
GitHub Action d55a7e5cc7 [ci skip] Translation update 2021-10-09 00:11:46 +00:00
Clifford Roche 204b901464 Bump greeclimate to 0.11.9 (#57358) 2021-10-08 18:08:52 -06:00
Shay Levy 722d3862db Fix Shelly RGB/W supported color mode detection (#57359) 2021-10-09 02:22:14 +03:00
Paulus Schoutsen b110a5bbfc Merge pull request #57355 from home-assistant/rc 2021-10-08 15:47:54 -07:00
Paulus Schoutsen 3c2f3f2ade Bumped version to 2021.10.2 2021-10-08 14:58:39 -07:00
Paulus Schoutsen 1ea0891602 Guard for bad last reset (#57344) 2021-10-08 14:58:34 -07:00
Steven Looman 54acc5bade Fix multiple upnp/ssdp issues (#57314) 2021-10-08 14:58:19 -07:00
Erik Montnemery 0c886e2990 Improve state of cover groups (#57313)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-10-08 14:51:11 -07:00
Milan Meulemans f10a469d4f Upgrade aionanoleaf to 0.0.3 to fix deadlock (#57312) 2021-10-08 14:51:10 -07:00
J. Nick Koston 0358a13536 Migrate tplink hosts that were previously imported from yaml (#57308) 2021-10-08 14:51:10 -07:00
Milan Meulemans 1a78c461a0 Fix Nanoleaf light turn_off transition (#57305) 2021-10-08 14:51:09 -07:00
starkillerOG c6d506cb4f Netgear fix port and device model beeing overwritten (#57277)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-08 14:51:08 -07:00
Aaron Bach fe3b5e8804 Use current config entry standards for SimpliSafe (#57141)
* Use current config entry standards for SimpliSafe

* Include tests
2021-10-08 14:22:29 -05:00
Aaron Bach 4104a3dee6 Use built-in logic for options handler in AirVisual (#57131) 2021-10-08 14:20:57 -05:00
MatthewFlamm fb063928ce Add device info to nws (#57153)
* Add base entity

* Use function for device_info

Multiple inheritance makes this tricky with a base class

* Device info in sensor

* Device info weather

* parantheses

* isort
2021-10-08 14:15:45 -05:00
Aaron Bach 0364405595 Reorganize RainMachine services (#57145)
* Reorganize RainMachine services

* Code review

* Ensure integration services aren't tied to a particular config entry

* Cleanup

* linting

* Code review

* Code review

* Code review

* Code review
2021-10-08 20:03:47 +02:00
Paulus Schoutsen eba1d7d16a Guard for bad last reset (#57344) 2021-10-08 10:48:52 -07:00
Erik Montnemery 7e34860615 Improve state of cover groups (#57313)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-10-08 09:52:58 -07:00
David Boslee 7f966613bd Disconnect websockets after token is revoked (#57091)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-08 09:38:22 -07:00
starkillerOG 830e2bc47a Netgear fix port and device model beeing overwritten (#57277)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-08 09:03:21 -07:00
Milan Meulemans 4dafd42154 Fix Nanoleaf light turn_off transition (#57305) 2021-10-08 09:02:01 -07:00
Milan Meulemans c04be4f5d0 Upgrade aionanoleaf to 0.0.3 to fix deadlock (#57312) 2021-10-08 08:59:19 -07:00
J. Nick Koston e77fae56d9 Migrate tplink hosts that were previously imported from yaml (#57308) 2021-10-08 08:58:18 -07:00
Steven Looman ba83433c64 Fix multiple upnp/ssdp issues (#57314) 2021-10-08 08:57:49 -07:00
Paulus Schoutsen b0f24b65d6 Drop more persistent notification patches (#57295) 2021-10-08 16:45:05 +02:00
Franck Nijhof 82160fa350 Add config flow to Stookalert (#57119) 2021-10-08 11:34:22 +02:00
Yuval Aboulafia db7d2de8bc Use _attr in 17track (#57187)
* use _attr

* fix name

* attributes

* set fixed attr before init

* access parameters directly
2021-10-08 10:03:09 +03:00
Allen Porter 7d4dd94da8 Add WebSocket API for intiting a WebRTC stream (#57034)
* Add WebSocket API for intiting a WebRTC stream

See https://github.com/home-assistant/architecture/discussions/640

* Increase test coverage for webrtc camera stream

* Apply suggestions from code review

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

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-07 22:13:14 -07:00
Paulus Schoutsen 5bb4bc3d13 Merge pull request #57294 from home-assistant/rc 2021-10-07 20:57:08 -07:00
Paulus Schoutsen 387249b593 Bumped version to 2021.10.1 2021-10-07 20:19:53 -07:00
J. Nick Koston 1a376b25af Bump yeelight to 0.7.7 (#57290) 2021-10-07 20:19:46 -07:00
Teemu R ed4b44c126 Stopgap fix for inconsistent upstream API of tplink dimmers (#57285) 2021-10-07 20:19:45 -07:00
J. Nick Koston ef7f1ffddc Bump HAP-python to 4.30 (#57284) 2021-10-07 20:19:44 -07:00
Teemu R e3e64130f1 Fix transition handling for tplink lights (#57272)
* Fix transition handling for tplink light

* Apply suggestions from code review

* Test that all transitions are passed correctly

* Fix linting

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-07 20:19:44 -07:00
Bram Kragten 4e49e3a3fb Update frontend to 20211007.0 (#57268) 2021-10-07 20:19:43 -07:00
J. Nick Koston fd371f2887 Fix RGB only (no color temp) devices with tplink (#57267) 2021-10-07 20:19:42 -07:00
Daniel Hjelseth Høyer ec0256e27f Bump Mill library to 0.6.1 (#57261) 2021-10-07 20:19:41 -07:00
Erik Montnemery 425015eb8b Validate initial value for input_datetime (#57256) 2021-10-07 20:19:41 -07:00
Martin Hjelmare 0b26b15749 Fix netgear config flow import (#57253) 2021-10-07 20:19:40 -07:00
Erik Montnemery 06befe906b Correct SQL query generated by get_metadata_with_session (#57225)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-07 20:19:39 -07:00
J. Nick Koston bf4a3d8d35 Discover tplink devices periodically (#57221)
- These devices sometimes do not respond on the first try
  or may be subject to transient broadcast failures, or
  overloads. We now try discovery periodically once the
  integration has been loaded.

- We used to try this 4x at startup, but that solution
  seemed to aggressive as we want to be sure we pickup
  the devices after startup as well since the network
  will likely be more calm after startup.
2021-10-07 20:19:15 -07:00
Raman Gupta 691d8d6b80 Convert val to str when needed while calling zwave_js.set_value (#57216) 2021-10-07 20:16:20 -07:00
Maciej Bieniek 7f49e02a4d Update led brightness select state only if valid data is available, Xiaomi Miio integration (#57197)
* Update state if there is valid data

* Add comment
2021-10-07 20:16:19 -07:00
J. Nick Koston 7544ec2399 Recreate the powerwall session/object when attempting relogin (#56935) 2021-10-07 20:16:19 -07:00
J. Nick Koston 56d6173d70 Recreate the powerwall session/object when attempting relogin (#56935) 2021-10-07 20:15:29 -07:00
Teemu R 8fb0da7720 Stopgap fix for inconsistent upstream API of tplink dimmers (#57285) 2021-10-07 20:15:13 -07:00
J. Nick Koston ddab7f3024 Bump HAP-python to 4.30 (#57284) 2021-10-07 20:06:27 -07:00
J. Nick Koston 49e6f84b1c Bump yeelight to 0.7.7 (#57290) 2021-10-07 14:48:08 -10:00
GitHub Action 01d883d7c9 [ci skip] Translation update 2021-10-08 00:13:12 +00:00
Teemu R 36a22400e5 Fix transition handling for tplink lights (#57272)
* Fix transition handling for tplink light

* Apply suggestions from code review

* Test that all transitions are passed correctly

* Fix linting

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-08 00:20:26 +02:00
starkillerOG cd1a71b070 Motion_blinds fix up button not available for unidirection blinds (#57266) 2021-10-07 13:27:48 -07:00
Erik Montnemery be61009030 Correct SQL query generated by get_metadata_with_session (#57225)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-07 13:23:23 -07:00
Raman Gupta 3476b430db Convert val to str when needed while calling zwave_js.set_value (#57216) 2021-10-07 13:22:33 -07:00
Bram Kragten 33b8130002 Update frontend to 20211007.0 (#57268) 2021-10-07 13:18:12 -07:00
J. Nick Koston ac3741df41 Fix RGB only (no color temp) devices with tplink (#57267) 2021-10-07 10:14:14 -10:00
Michael Chisholm 667e730946 Improve dlna_dmr code quality (#56886)
* Listen for config updates from DlnaDmrEntity.async_added_to_hass

Use `Entity.async_on_remove` for dealing with callback cancellation,
instead of re-inventing the wheel with `_remove_ssdp_callbacks`.

* Use async_write_ha_state within async methods

* Import YAML config from async_setup_platform

* Import flow prompts user when device is uncontactable during migration

When config flow is able to contact a device, or when it has information
from SSDP, it will create config entries without error. If the device is
uncontactable at this point then it will appear as unavailable in HA
until it is turned on again.

When import flow cannot migrate an entry because it needs to contact the
device and can't, it will notify the user with a config flow form.

* Don't del unused parameters, HA pylint doesn't care

* Remove unused imports from tests

* Abort config flow at earliest opportunity

* Return async_abort instead of raising AbortFlow

* Consolidate config entry test cleanup into a single function

* fixup! Consolidate config entry test cleanup into a single function

Revert "Consolidate config entry test cleanup into a single function"

This reverts commit 8220da7263.

* Check resource acquisition/release in specific tests

* fixup! Check resource acquisition/release in specific tests

* Remove unused network dependency from manifest

* _on_event runs in async context

* Call async_write_ha_state directly (not via shedule_update)

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-07 22:14:00 +02:00
Aaron Bach b980dc7e33 Use current config entry standards for Ambient PWS (#57133) 2021-10-07 22:19:03 +03:00
Franck Nijhof f142d0a945 Upgrade ambee to 0.4.0 (#57264) 2021-10-07 21:11:38 +02:00
Kevin Hellemun dc5e4392ae Refactor Xiaomi vacuum to sensors (#54990)
* Refactor Xiaomi vacuum with sensors.

This is the first step into refactoring xiaomi vacuum attributes into sensors.
What is missing are some switches and binary sensors etc.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Use generic sensor for Xiaomi vacuum sensors.

By using HA coordinator, the generic Xiaomi sensor class can be used with these
coordinators to get the status sensors from vacuum. This also means now that
sensors are available as soon as HA starts, which is a nice plus.

Now the only reason to create a subclass of the generic sensors is when custom
value parsing needs to be done.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Working vacuum sensors via 1 coordinator.

Vacuum needs a custom coordinator to ensure that it fetches all the needed data
and puts it in a dict. From this dict the sensors will then get their data
accordingly.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Remove vacuum setup method in sensor

Sensor is generic enough that vacuum does not require its own setup method.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Don't auto register generic sensors.

Let the user decide which sensor is useful for them and enable them.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Remove converted attributes from xiaomi vacuum.

The attributes that have been converted so far should be removed from the vacuum
attributes list.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Fetch data from vacuum sequentially.

It seems some vacuums do not like parallel requests. The requests that came
before are ignored.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Refactor vacuum sensors to its own container.

By moving vacuum sensors to its own container, there is no more key collisions.
This in turns means that there is need for the split hack to ensure key names
are correct.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* fixup! fix bad rebase.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Fix sensor naming and default registration.

Use proper names for sensors, no need to include from which device status it
came.

Registration of the sensor by default has been parameterised. If the param is
not set, the sensor is not registered.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Make vacuum platform also use coordinator for its data.

By using the coordinator for data in vacuum platfrom, removes the cases where
request gets ignored during the case where the requests are done concurrently by
separate platforms.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Add binary sensor for vacuum

Add binary sensor for waterbox, mop, and water shortage.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Added proper icons to sensors.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Refactor sensors to use dataclass.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Make vacuum use coordinator for its data.

This commit also insures that the binary sensors are only registered for devices
that include a mop.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Apply suggestions from code review

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

* Minor refactoring

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Update data from coordinator after running command.

This is is to have a faster status change when executing a command like changing
fan speeds. If a manual refresh is not triggered. Worst case scenario it will
take 10s for the new fan speed to be reported in HA.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Refresh within coroutine is ok.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Move logging to _handle_coordinator_update

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Use internal state attribute.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Fix vacuum typing

* Fix tests constants

* Fix vacuum inconsistent return values

* Fix vacuum state update

* Fix vacuum tests

* Remove impossible cases

* Parametrize custom services test

* Move goto test

* Move clean segment test

* Move clean single segment test

* Test service pause

* Include vacuum in coverage

* Delint

* Fix vacuum sensor dict collision.

This also prevents collision for unique id. As the key is used to construct
unique ids.

* Use f strings as dict keys

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-07 18:30:17 +02:00
Daniel Hjelseth Høyer c651cff6a0 Bump Mill library to 0.6.1 (#57261) 2021-10-07 18:23:03 +02:00
J. Nick Koston a2dcc0308b Discover tplink devices periodically (#57221)
- These devices sometimes do not respond on the first try
  or may be subject to transient broadcast failures, or
  overloads. We now try discovery periodically once the
  integration has been loaded.

- We used to try this 4x at startup, but that solution
  seemed to aggressive as we want to be sure we pickup
  the devices after startup as well since the network
  will likely be more calm after startup.
2021-10-07 17:52:24 +02:00
Maciej Bieniek a238cce37c Update led brightness select state only if valid data is available, Xiaomi Miio integration (#57197)
* Update state if there is valid data

* Add comment
2021-10-07 17:44:25 +02:00
Erik Montnemery 0e48985fc5 Validate initial value for input_datetime (#57256) 2021-10-07 17:13:07 +02:00
Jeff Irion 9dfb684002 Enable template icons for template selects (#57092)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-10-07 15:38:02 +02:00
Martin Hjelmare 82828b5a1b Fix netgear config flow import (#57253) 2021-10-07 15:08:53 +02:00
Marc Mueller e5b93cdcaf Use EntityDescription - darksky (#57083)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-10-07 14:07:17 +02:00
Erik Montnemery 7223c59e79 Allow resetting an MQTT number (#57161)
* Allow resetting an MQTT number

* Add abbreviation
2021-10-07 13:54:34 +02:00
Paulus Schoutsen a4d9019ffc Refactor persistent notification to no longer route all data via a service (#57157)
* Convert persistent notification tests to async

* Create/dismiss persistent notifications in exposed functions, not service calls

* Fix notify persistent_notification

* Remove setting up persistent_notification

* Drop more setups

* Empty methods

* Undeprecate sync methods because too big task

* Fix setup clearing notifications

* Fix a bunch of tests

* Fix more tests

* Uno mas

* Test persistent notification events

* Clean up stale comment

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-07 12:58:00 +02:00
Robert Svensson 750dd9186e Improve deCONZ signal strings (#57140) 2021-10-07 12:48:27 +02:00
Aaron Bach 2ba8e1030c Ensure that WattTime is strictly typed (#57130) 2021-10-07 12:40:10 +02:00
Franck Nijhof 24fa2a714a Toon, support Energy dashboard by default (#57233) 2021-10-07 11:59:04 +02:00
Franck Nijhof 19b0212ff0 Upgrade coverage to 6.0.1 (#57235) 2021-10-07 10:46:43 +02:00
Erik Montnemery 947ae23749 Add home-assistant/core as codeowner for recorder (#57224) 2021-10-07 08:56:43 +02:00
GitHub Action 8fea54fff7 [ci skip] Translation update 2021-10-07 00:10:57 +00:00
Franck Nijhof 32889dbfbe Merge pull request #57179 from home-assistant/rc 2021-10-06 16:36:51 +02:00
Franck Nijhof 46394b50d8 Bumped version to 2021.10.0 2021-10-06 15:53:41 +02:00
Erik Montnemery 25fc479cd4 Correct migration to recorder schema 18 (#57165) 2021-10-06 15:52:20 +02:00
Bram Kragten 9636799dfb Update frontend to 20211006.0 (#57164) 2021-10-06 15:52:14 +02:00
Thomas Schamm e01e575092 Skip link local addresses in bosch_shc discovery step (#57074) 2021-10-06 15:52:11 +02:00
Fredrik Erlandsson 2fc9cdbe68 Update Daikin config_flow with better error handling (#57069) 2021-10-06 15:52:07 +02:00
starkillerOG 72b3bc13e4 Remove Netgear tracker link_rate check on Orbi (#57032)
* Netgear tracker: remove link_rate check on Orbi

* fix debug message

* Add orbi models

* check start of model in V2 check

* fix black
2021-10-06 15:52:04 +02:00
Jean-Yves Avenard 9e755fcc49 Change energy state class to STATE_CLASS_TOTAL (#56974) 2021-10-06 15:52:00 +02:00
starkillerOG 3e89ebb1cb Remove Netgear tracker link_rate check on Orbi (#57032)
* Netgear tracker: remove link_rate check on Orbi

* fix debug message

* Add orbi models

* check start of model in V2 check

* fix black
2021-10-06 13:30:13 +02:00
Erik Montnemery 8337baa354 Correct migration to recorder schema 18 (#57165) 2021-10-06 13:29:42 +02:00
Jean-Yves Avenard 9d84d41f81 Change energy state class to STATE_CLASS_TOTAL (#56974) 2021-10-06 13:24:17 +02:00
Bram Kragten e69a1c3546 Update frontend to 20211006.0 (#57164) 2021-10-06 11:33:55 +02:00
Tomasz e9f6bc7364 Add missing return type to async_unload_entry and async_setup_entry (#57115) 2021-10-06 10:48:11 +02:00
Thomas Schamm aa03b63884 Skip link local addresses in bosch_shc discovery step (#57074) 2021-10-06 10:09:02 +02:00
Fredrik Erlandsson a809f5fcf7 Update Daikin config_flow with better error handling (#57069) 2021-10-06 10:07:30 +02:00
Paulus Schoutsen a692d4de64 Bumped version to 2021.10.0b9 2021-10-05 21:34:22 -07:00
Paulus Schoutsen bb617d7b89 Bump netdisco to 3.0.0 (#56903) 2021-10-05 21:34:18 -07:00
Paulus Schoutsen 790a61cfae Bumped version to 2021.10.0b8 2021-10-05 21:32:11 -07:00
Paulus Schoutsen 8e02ea1936 Guard upnp create device (#57156) 2021-10-05 21:32:06 -07:00
Simone Chemelli 7502956d2b Fix SamsungTV shutdown race condition (#57149) 2021-10-05 21:32:06 -07:00
Simone Chemelli 8394157c0a Fix Fritz shutdown race condition (#57148) 2021-10-05 21:32:05 -07:00
Lawrence 76a6edb4ed Updated amberelectic attributes to reflect unit change to $/kWh (#57109) 2021-10-05 21:32:04 -07:00
Paulus Schoutsen 222a0c26e0 Guard upnp create device (#57156) 2021-10-05 21:31:11 -07:00
Lawrence 205b40cf16 Updated amberelectic attributes to reflect unit change to $/kWh (#57109) 2021-10-05 20:34:23 -07:00
Simone Chemelli d51d70d3be Fix Fritz shutdown race condition (#57148) 2021-10-05 20:26:18 -07:00
Simone Chemelli 9de3bd77d8 Fix SamsungTV shutdown race condition (#57149) 2021-10-05 20:25:57 -07:00
J. Nick Koston 7e5dfadc27 Add sw_version and model to flux_led device info (#56958) 2021-10-05 14:53:39 -10:00
J. Nick Koston 286ffb2d71 Write flux_led state after turning on/off (#57152) 2021-10-05 14:49:42 -10:00
Erik Montnemery f6682ba99d Block tests from opening sockets (#55516) 2021-10-05 14:46:09 -10:00
GitHub Action a8b7c521f6 [ci skip] Translation update 2021-10-06 00:12:58 +00:00
J. Nick Koston d60f6a9943 Add additional devices to flux_led discovery (#57086) 2021-10-05 13:06:17 -10:00
Tom Brien 659229e255 Add support for POLY and RLY in Coinbase (#57144)
* Support POLY currency

* Support RLY currency
2021-10-05 15:18:17 -06:00
Aaron Bach 25253f2b7a Use current config entry standards for OpenUV (#57137) 2021-10-05 15:03:39 -06:00
Paulus Schoutsen 73bf538736 Bumped version to 2021.10.0b7 2021-10-05 13:45:52 -07:00
Raman Gupta dbde2f1b92 Bump zwave-js-server-python to 0.31.3 (#57143) 2021-10-05 13:45:42 -07:00
Paulus Schoutsen 78bb2f5b73 Reinstate asking for country in Tuya flow (#57142) 2021-10-05 13:45:41 -07:00
J. Nick Koston 657037553a Fix yeelight connection when bulb stops responding to SSDP (#57138) 2021-10-05 13:45:40 -07:00
Paulus Schoutsen 0e00075628 Bump aiohue to 2.6.3 (#57125) 2021-10-05 13:45:39 -07:00
jrester ecdbb5ff17 Update tesla_powerwall to 0.3.11 (#57112) 2021-10-05 13:45:38 -07:00
Franck Nijhof a13a6bc9c9 Bump tuya-iot-py-sdk to 0.5.0 (#57110)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-05 13:45:38 -07:00
Paulus Schoutsen 5b550689e0 Update Tuya code owners (#57078) 2021-10-05 13:45:37 -07:00
Otto Winter c5992e2967 Bump aioesphomeapi from 9.1.4 to 9.1.5 (#57106) 2021-10-05 13:43:48 -07:00
Franck Nijhof b76e19c8c2 Remove Python shebang line from Tuya integration files (#57103) 2021-10-05 13:43:47 -07:00
Franck Nijhof d1f790fab0 Small code styling tweaks for Tuya (#57102) 2021-10-05 13:43:47 -07:00
Franck Nijhof 4d44beb938 Prevent Tuya from accidentally logging credentials in debug mode (#57100) 2021-10-05 13:43:46 -07:00
indykoning 70a6930a8a Fix Growatt login invalid auth response (#57071) 2021-10-05 13:43:45 -07:00
J. Nick Koston eba7cad33f Fix yeelight connection when bulb stops responding to SSDP (#57138) 2021-10-05 13:41:56 -07:00
Raman Gupta e22407ba16 Bump zwave-js-server-python to 0.31.3 (#57143) 2021-10-05 22:33:23 +02:00
Paulus Schoutsen 34544da449 Reinstate asking for country in Tuya flow (#57142) 2021-10-05 22:32:48 +02:00
indykoning f76cb12945 Fix Growatt login invalid auth response (#57071) 2021-10-05 12:31:23 -07:00
Paulus Schoutsen 1a7a4c52f1 Bump aiohue to 2.6.3 (#57125) 2021-10-05 19:42:45 +02:00
jrester e66064fb3e Update tesla_powerwall to 0.3.11 (#57112) 2021-10-05 19:40:37 +02:00
Franck Nijhof 86852df2fc Bump tuya-iot-py-sdk to 0.5.0 (#57110)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-05 10:21:55 -07:00
Raman Gupta 3c074ab865 Add additional properties to node_status WS cmd (#56927)
* Add node.zwave_plus_version to node_status WS command

* Add highest security class to node_status
2021-10-05 11:23:44 -04:00
Franck Nijhof 80a04124a2 Small code styling tweaks for Tuya (#57102) 2021-10-05 12:59:51 +02:00
Otto Winter 5b218d7e1c Bump aioesphomeapi from 9.1.4 to 9.1.5 (#57106) 2021-10-05 11:49:39 +02:00
Boris K 8b02703585 Fix color util links to Philips Hue documentation (#57099) 2021-10-05 11:19:09 +02:00
Erik Montnemery f548d1dba7 Prevent opening of sockets in mqtt tests (#57101) 2021-10-05 11:14:53 +02:00
Franck Nijhof 2059cbacbd Remove Python shebang line from Tuya integration files (#57103) 2021-10-05 11:12:55 +02:00
Franck Nijhof 653eb3e29d Upgrade debugpy to 1.5.0 (#57098) 2021-10-05 11:12:35 +02:00
Franck Nijhof b5916c8310 Upgrade sentry-sdk to 1.4.3 (#57096) 2021-10-05 11:11:33 +02:00
Franck Nijhof 3645568dcc Upgrade jinja2 to 3.0.2 (#57095) 2021-10-05 11:03:51 +02:00
Franck Nijhof f364d53c7b Prevent Tuya from accidentally logging credentials in debug mode (#57100) 2021-10-05 10:22:28 +02:00
Robert Svensson 59b1433e5c Additional place to use isinstance rather than do a string compare (#57094) 2021-10-05 09:17:45 +02:00
Paulus Schoutsen b024d88b36 Deprecate Python 3.8 (#57079) 2021-10-05 08:58:20 +02:00
Paulus Schoutsen b289bb2f57 Bumped version to 2021.10.0b6 2021-10-04 21:07:16 -07:00
GitHub Action a457bb7446 [ci skip] Translation update 2021-10-04 21:07:12 -07:00
Paulus Schoutsen f0b22e2f40 Fix energy gas price validation (#57075) 2021-10-04 21:06:47 -07:00
Bram Kragten d42350f986 Update frontend to 20211004.0 (#57073) 2021-10-04 21:06:47 -07:00
Shay Levy 74aa57e764 Fix: Shelly Gen2 - filter unsupported sensors (#57065) 2021-10-04 21:06:46 -07:00
J. Nick Koston fb9a119fc7 Update esphome reconnect logic to use newer RecordUpdateListener logic (#57057) 2021-10-04 21:06:45 -07:00
Erik Montnemery f82fe9d8bb Improve sensor statistics validation (#56892) 2021-10-04 21:06:44 -07:00
Allen Porter 8026a14bc8 Bump nest 0.3.7 to prepare for WebRTC support (#57089) 2021-10-04 20:59:23 -07:00
Paulus Schoutsen 11ed70b774 Fix energy gas price validation (#57075) 2021-10-04 20:52:40 -07:00
Bram Kragten 91d3d39f6c Update frontend to 20211004.0 (#57073) 2021-10-04 20:52:17 -07:00
GitHub Action 1e5d408426 [ci skip] Translation update 2021-10-05 00:12:33 +00:00
Paulus Schoutsen d743891842 Update Tuya code owners (#57078) 2021-10-04 15:44:17 -07:00
Shay Levy c8dc5d15ee Fix: Shelly Gen2 - filter unsupported sensors (#57065) 2021-10-04 13:46:46 -07:00
Tomasz 08cebb247f Activate mypy for rpi_power (#57047) 2021-10-04 22:13:11 +02:00
J. Nick Koston 2f960e558f Prevent dlna_dmr from opening sockets in tests (#57059)
Supports #55516
2021-10-04 20:25:46 +02:00
J. Nick Koston 77af741099 Prevent tplink from opening sockets in tests (#57058)
Supports #55516
2021-10-04 20:25:09 +02:00
J. Nick Koston d08b65db7d Update esphome reconnect logic to use newer RecordUpdateListener logic (#57057) 2021-10-04 19:52:08 +02:00
Alexei Chetroi 723596076d Add ZHA HVAC Action sensor (#57021)
* WIP

* Refactor multi-entity matching

Eliminate the notion on primary channel.

* Cleanup climate tests

* Refactor multi-entity match

Remove the "primary channel" in multiple entity matches

* Cleanup

* Add HVAC Action sensor

* Add a "stop_on_match" option for multi entities matches

Nominally working HVAC state sensors

* Add id_suffix for HVAC action sensor

* Fix Zen HVAC action sensor

* Pylint
2021-10-04 12:57:58 -04:00
Erik Montnemery 69875cbd11 Improve sensor statistics validation (#56892) 2021-10-04 09:47:44 -07:00
Marc Mueller 2f9943fe7a Use NamedTuple for repetier API methods (#56941) 2021-10-04 17:41:51 +02:00
Paulus Schoutsen b086266508 [ci skip] Translation update 2021-10-04 08:38:35 -07:00
Paulus Schoutsen eb9b9c57a4 [ci skip] Translation update 2021-10-04 08:38:24 -07:00
Paulus Schoutsen 491abf0608 Bumped version to 2021.10.0b5 2021-10-04 08:35:42 -07:00
GitHub Action da61696566 [ci skip] Translation update 2021-10-04 08:35:37 -07:00
GitHub Action 688884ccfe [ci skip] Translation update 2021-10-04 08:35:28 -07:00
Joakim Sørensen 62390b9531 Rewrite tuya config flow (#57043)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-04 08:30:00 -07:00
Erik Montnemery 7ddb399178 Prevent opening of sockets in watttime tests (#57040) 2021-10-04 08:30:00 -07:00
Otto Winter 1fe4e08003 Bump aioesphomeapi from 9.1.2 to 9.1.4 (#57036) 2021-10-04 08:29:59 -07:00
Otto Winter b106dab916 ESPHome fix zeroconf add_listener issue (#57031) 2021-10-04 08:29:58 -07:00
Chris Browet 36bac936d1 Universal media player: consider unknown as inactive child state (#57029) 2021-10-04 08:29:57 -07:00
Raman Gupta 4ca0c0d3a9 Bump zwave-js-server-python to 0.31.2 (#57007) 2021-10-04 08:29:56 -07:00
Paulus Schoutsen cdaa7b7db7 Mark auth voluptuous schema fields as required (#57003) 2021-10-04 08:29:56 -07:00
Oliver Ou d1f3602732 Fix Tuya v2 login issue (#56973)
* fix login issue

* fix:login error

* update COUNTRY_CODE_CHINA line location

* added one blank line

* feat:added line #L88 was not covered by tests

* ci build errors

Co-authored-by: erchuan <jie.zheng@tuya.com>
2021-10-04 08:29:55 -07:00
Erik Montnemery 8ee8aade86 Evict purged states from recorder's old_state cache (#56877)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-04 08:29:54 -07:00
Joakim Sørensen 745298408a Rewrite tuya config flow (#57043)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-04 08:27:24 -07:00
Erik Montnemery 8567aa9e13 Evict purged states from recorder's old_state cache (#56877)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-04 08:21:40 -07:00
Chris Browet 12c32ac806 Universal media player: consider unknown as inactive child state (#57029) 2021-10-04 17:10:41 +02:00
Marc Mueller 771740c5f9 Fix multiline lambda formatting - homekit_controller (#57046) 2021-10-04 16:12:22 +02:00
Erik Montnemery 582788026a Mock out network.util.async_get_source_ip in tests (#57039) 2021-10-04 15:33:13 +02:00
Erik Montnemery 70f4bdf63e Prevent opening of sockets in watttime tests (#57040) 2021-10-04 07:09:42 -06:00
Franck Nijhof bdf6c79062 Upgrade coverage to 6.0 (#57041) 2021-10-04 14:17:43 +02:00
Marc Mueller 96681ab3a9 Use NamedTuple for darksky condition picture (#56942) 2021-10-04 13:38:32 +02:00
Erik Montnemery 099428fa73 Use hass_client_no_auth test fixture in additional tests (#57037) 2021-10-04 13:37:05 +02:00
Marc Mueller e0ab4ee842 Use NamedTuple for homekit valve type + service info (#56944) 2021-10-04 13:35:31 +02:00
Erik Montnemery 80a225ca98 Prevent opening of sockets in kira tests (#57038) 2021-10-04 13:33:29 +02:00
Sylvia van Os dc6f6b7f68 Remove Essent integration (#56991) 2021-10-04 13:31:40 +02:00
Otto Winter bf9f55c376 Bump aioesphomeapi from 9.1.2 to 9.1.4 (#57036) 2021-10-04 13:23:11 +02:00
Otto Winter da63a96273 ESPHome fix zeroconf add_listener issue (#57031) 2021-10-04 13:17:42 +02:00
Oliver Ou 7446e388ed Fix Tuya v2 login issue (#56973)
* fix login issue

* fix:login error

* update COUNTRY_CODE_CHINA line location

* added one blank line

* feat:added line #L88 was not covered by tests

* ci build errors

Co-authored-by: erchuan <jie.zheng@tuya.com>
2021-10-04 10:45:37 +02:00
Paulus Schoutsen 2d374d65b6 Mark auth voluptuous schema fields as required (#57003) 2021-10-03 22:02:30 -07:00
Paulus Schoutsen 6aad751056 Bumped version to 2021.10.0b4 2021-10-03 22:01:21 -07:00
jjlawren 2d8684283f Shorten album titles when browsing artist (#57027) 2021-10-03 22:01:13 -07:00
J. Nick Koston 779ae6c801 Add DHCP support for TPLink KP400 (#57023) 2021-10-03 22:01:13 -07:00
Tobias Sauerwein 48fecc916a Fix camera tests (#57020) 2021-10-03 22:01:12 -07:00
Oncleben31 0084db3ad2 Meteofrance fix #56975 (#57016) 2021-10-03 22:01:11 -07:00
Tobias Sauerwein ea2113d5d2 Bump pyatmo to v6.1.0 (#57014) 2021-10-03 22:01:10 -07:00
Diogo Gomes c22ec32726 Ignore utility_meter restore state if state is invalid (#57010)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-10-03 22:01:09 -07:00
J. Nick Koston 645cb53284 Bump yeelight to 0.7.6 (#57009)
- Fixes compat with Lamp15 model

- May improvment Monob model drops seen in #56646

Changes: https://gitlab.com/stavros/python-yeelight/-/commit/0b94e5214e3375f20defa386067ef6cb058c872c
2021-10-03 22:01:09 -07:00
J. Nick Koston 5237817109 Round tplink energy sensors to prevent insignificant updates (#56999)
- These sensors wobble quite a bit and the precision did
  not have sensible limits which generated a massive amount
  of data in the database which was not very useful
2021-10-03 22:01:08 -07:00
Phil Cole 45b7922a6a Use pycarwings2.12 for Nissan Leaf integration (#56996) 2021-10-03 22:01:07 -07:00
Steven Looman 6f39632583 Bump async-upnp-client to 0.22.5 (#56989) 2021-10-03 22:01:06 -07:00
Steven Looman 757c5b9201 Fix upnp invalid key in ssdp discovery_info (#56986) 2021-10-03 22:01:06 -07:00
Shay Levy 7203f58b69 Bump aioshelly to 1.0.2 (#56980) 2021-10-03 22:01:05 -07:00
Aaron Bach a527c451c3 Fix incorrect handling of hass.data in WattTime setup (#56971) 2021-10-03 22:01:04 -07:00
J. Nick Koston 201be1a59d Fix yeelight state when controlled outside of Home Assistant (#56964) 2021-10-03 22:01:03 -07:00
Oliver Ou e454c6628a Fix Tuya v2 fan percentage (#56954)
* fix:Some fans do not have a fan_speed_percent key

* fix comment format issue

Co-authored-by: erchuan <jie.zheng@tuya.com>
2021-10-03 22:01:03 -07:00
Michael Chisholm 2dac92df0c Disable discovery for dlna_dmr until it is more selective (#56950) 2021-10-03 22:01:02 -07:00
Diogo Gomes 79b10c43d8 Ignore utility_meter restore state if state is invalid (#57010)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-10-03 21:59:36 -07:00
Paulus Schoutsen 255ffe801b Fix tractive flaky test (#57026) 2021-10-04 06:46:06 +02:00
Oncleben31 378cfab501 Meteofrance fix #56975 (#57016) 2021-10-03 21:15:41 -07:00
Phil Cole c72a34dbec Use pycarwings2.12 for Nissan Leaf integration (#56996) 2021-10-03 21:14:45 -07:00
jjlawren 33541ab287 Shorten album titles when browsing artist (#57027) 2021-10-03 21:13:08 -07:00
J. Nick Koston 19d54399c2 Add DHCP support for TPLink KP400 (#57023) 2021-10-04 02:40:27 +02:00
GitHub Action a4530d2bfc [ci skip] Translation update 2021-10-04 00:11:57 +00:00
Tobias Sauerwein 1747578be5 Fix camera tests (#57020) 2021-10-03 16:55:07 -07:00
Marc Mueller 3976443292 Use EntityDescription - homekit_controller (#56945) 2021-10-03 13:42:25 -10:00
J. Nick Koston 9d671eff27 Bump yeelight to 0.7.6 (#57009)
- Fixes compat with Lamp15 model

- May improvment Monob model drops seen in #56646

Changes: https://gitlab.com/stavros/python-yeelight/-/commit/0b94e5214e3375f20defa386067ef6cb058c872c
2021-10-04 01:07:25 +02:00
Raman Gupta 2b464b00dd Bump zwave-js-server-python to 0.31.2 (#57007) 2021-10-03 18:24:23 -04:00
Tobias Sauerwein c46e8cfbc1 Bump pyatmo to v6.1.0 (#57014) 2021-10-03 15:09:58 -07:00
Robert Svensson 1d643d6da7 Minor improvements to deCONZ light platform (#56953)
Use library constnats for flash and effect
Use attr_effect_list to specify supported effects
Use isinstance to identify if it is light or group
2021-10-03 22:14:28 +02:00
Maciej Bieniek 946a265c9e Use Final type only when needed in Tractive (#57000) 2021-10-03 22:12:59 +02:00
Maciej Bieniek 1488019cd9 Bump nettigo_air_monitor library to version 1.1.0 (#56952) 2021-10-03 22:56:50 +03:00
J. Nick Koston 4c51d0d2cf Round tplink energy sensors to prevent insignificant updates (#56999)
- These sensors wobble quite a bit and the precision did
  not have sensible limits which generated a massive amount
  of data in the database which was not very useful
2021-10-03 21:28:39 +02:00
Glenn Waters 57851e9623 Support connecting to ElkM1 over TLS 1.2 (#56887) 2021-10-03 08:06:29 -10:00
Daniel Perna 0d91167cdd Update pyhomematic to 0.1.75 (#56995) 2021-10-03 19:37:38 +02:00
Steven Looman 641f0babce Fix upnp invalid key in ssdp discovery_info (#56986) 2021-10-03 07:29:01 -10:00
Steven Looman 41d2f03b2f Bump async-upnp-client to 0.22.5 (#56989) 2021-10-03 07:28:41 -10:00
Michael Chisholm 64d4e8537f Disable discovery for dlna_dmr until it is more selective (#56950) 2021-10-03 09:09:30 -06:00
Daniel Hjelseth Høyer 2fdef0e144 Update surepetcare test (#56871)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-10-03 14:28:52 +03:00
Maciej Bieniek f8b6fba3eb Bump gios library to 2.1.0 (#56984) 2021-10-03 12:41:22 +02:00
Shay Levy ddc99afba9 Bump aioshelly to 1.0.2 (#56980) 2021-10-03 13:07:17 +03:00
Maciej Bieniek f3c76fb859 Add strict typing to Tractive integration (#56948)
* Strict typing

* Add few missing types

* Run hassfest

* Fix mypy errors

* Use List instead of list
2021-10-03 09:13:12 +02:00
J. Nick Koston 1aeab65f56 Fix yeelight state when controlled outside of Home Assistant (#56964) 2021-10-03 00:08:31 -07:00
Alexei Chetroi d0827a9129 ZHA support for additional entities on ElectricalMeasurement ZCL cluster (#56909)
* Add electrical measurement type state attribute.

* Add active_power_max attribute

* Skip unsupported attributes on entity update

* Fix tests

* Create sensor only if the main attribute is supported

* Refactor ElectricalMeasurement sensor to use attr specific divisor and multiplier

* Multiple entities for electrical measurement cluster

* Update discovery tests

* Sensor clean up

* update tests

* Pylint
2021-10-02 21:57:49 -04:00
Eduard van Valkenburg 7e5a991de5 Sia package update to 3.0.2 (#56896)
* update SIA package

* update SIA package to 3.0.2
2021-10-02 19:05:41 -06:00
Marc Mueller 6a1d7c7ad9 Remove icon if device_class is defined - homekit_controller (#56946) 2021-10-02 18:59:38 -06:00
Aaron Bach 0e1630e46d Fix incorrect handling of hass.data in WattTime setup (#56971) 2021-10-02 18:58:10 -06:00
Oliver Ou 6c2a18c3e5 Fix Tuya v2 fan percentage (#56954)
* fix:Some fans do not have a fan_speed_percent key

* fix comment format issue

Co-authored-by: erchuan <jie.zheng@tuya.com>
2021-10-03 02:41:31 +02:00
GitHub Action 06602e6cc5 [ci skip] Translation update 2021-10-03 00:13:50 +00:00
Bram Kragten fc373563bd Update frontend to 20211002.0 (#56963) 2021-10-02 23:17:04 +02:00
Bram Kragten ad6129c505 Update frontend to 20211002.0 (#56963) 2021-10-02 23:16:29 +02:00
Paulus Schoutsen 180316026b Bumped version to 2021.10.0b3 2021-10-02 13:54:13 -07:00
J. Nick Koston e4d295c80a Add dhcp discovery for TPLink EP10 (#56955) 2021-10-02 13:54:07 -07:00
Simone Chemelli 14cddc75c2 Add sleep_period to log for easier debugging (#56949) 2021-10-02 13:54:06 -07:00
J. Nick Koston 427200e258 Bump PyFlume to 0.6.5 to fix compat with new JWT (#56936)
Changelog: https://github.com/ChrisMandich/PyFlume/compare/5476fd67cfc8be768c0ea810d248f39399e038d1...v0.6.5
2021-10-02 13:54:06 -07:00
Fredrik Erlandsson 4438fc55e0 Update pypoint to use v5 of backend API (#56934) 2021-10-02 13:54:05 -07:00
J. Nick Koston 8ecf03569d Add DHCP support for TPLink KL430, KP115 (#56932) 2021-10-02 13:54:04 -07:00
Maciej Bieniek 7a75506b02 Fix Unable to serialize to JSON error in Xiaomi Miio (#56929) 2021-10-02 13:54:04 -07:00
RenierM26 b1b23ef67d Fix Switchbot unsupported SB types (#56928) 2021-10-02 13:54:03 -07:00
MatthewFlamm baae7089ed Bump pynws: fix unit code bug (#56923) 2021-10-02 13:54:02 -07:00
Aaron Bach 5f68192109 Address beta review comments for WattTime (#56919) 2021-10-02 13:54:01 -07:00
Michael 3579d638a8 Set unique id while SSDP discovery of Synology DSM (#56914) 2021-10-02 13:54:01 -07:00
Martin 75b6526cdc Fix vicare binary sensor (#56912) 2021-10-02 13:54:00 -07:00
J. Nick Koston 2f35cadba7 Add dhcp discovery for TPLink EP10 (#56955) 2021-10-02 13:53:37 -07:00
Fredrik Erlandsson b563a41482 Update pypoint to use v5 of backend API (#56934) 2021-10-02 13:53:19 -07:00
Michael 2d174d0cbb Set unique id while SSDP discovery of Synology DSM (#56914) 2021-10-02 13:52:28 -07:00
RenierM26 7d6b4a985d Fix Switchbot unsupported SB types (#56928) 2021-10-02 13:51:53 -07:00
GitHub Action 94b8877e2a [ci skip] Translation update 2021-10-02 13:50:58 -07:00
icemanch a95c6b10f7 Flux led config flow (#56354)
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-02 07:19:36 -10:00
Aaron Bach 80c97a2416 Remove injected logger in Ambient PWS and OpenUV (#56920)
* Remove injected log in OpenUV

* Add Ambient
2021-10-02 10:45:33 -06:00
Milan Meulemans 2874ca2e08 Log when Nanoleaf is unavailable (#56921) 2021-10-02 04:55:16 -10:00
Marc Mueller 1d00bc8a62 Use NamedTuple - iqvia Rating (#56943) 2021-10-02 08:46:57 -06:00
Simone Chemelli 62f1a16918 Add sleep_period to log for easier debugging (#56949) 2021-10-02 16:31:23 +02:00
GitHub Action f42c2f5170 [ci skip] Translation update 2021-10-02 12:59:05 +00:00
Oliver a99d92cdb4 Update denonavr codeowner (#56940) 2021-10-02 13:10:54 +02:00
J. Nick Koston deea9ee22e Bump PyFlume to 0.6.5 to fix compat with new JWT (#56936)
Changelog: https://github.com/ChrisMandich/PyFlume/compare/5476fd67cfc8be768c0ea810d248f39399e038d1...v0.6.5
2021-10-02 12:47:28 +02:00
Aaron Bach 7c805f048c Address beta review comments for WattTime (#56919) 2021-10-02 12:20:17 +02:00
Franck Nijhof 39d73ecc19 Upgrade watchdog to 2.1.6 (#56933) 2021-10-02 10:19:54 +02:00
J. Nick Koston da3cc25234 Add DHCP support for TPLink KL430, KP115 (#56932) 2021-10-02 10:19:11 +02:00
Milan Meulemans d41832de59 Get min and max color temperature for Nanoleaf light from library (#56863) 2021-10-01 21:30:20 -10:00
Milan Meulemans 538773a14a Add SSDP discovery to Nanoleaf (#56907) 2021-10-01 21:29:56 -10:00
Simone Chemelli 73e58c8c62 Bump fritzconnection to 1.7.0 (#56924) 2021-10-02 09:13:40 +02:00
MatthewFlamm 11690bed58 Bump pynws: fix unit code bug (#56923) 2021-10-02 09:11:31 +02:00
Robert Svensson 818f695227 Replace strings with library constants in deCONZ fan platform 2021-10-02 09:09:26 +02:00
Robert Svensson 8258443a9e Replace strings with library constants in deCONZ climate platform 2021-10-02 09:08:01 +02:00
Maciej Bieniek 4cdbd3c576 Fix Unable to serialize to JSON error in Xiaomi Miio (#56929) 2021-10-02 09:05:49 +02:00
Ville Skyttä 2730a27fd0 Use HTTPStatus instead of HTTP_* constants in various test mocks (#56543) 2021-10-01 15:52:45 -07:00
Paulus Schoutsen e5b0bbcca6 Bump netdisco to 3.0.0 (#56903) 2021-10-01 15:38:49 -07:00
Martin 316070f1e9 Fix vicare binary sensor (#56912) 2021-10-01 21:46:44 +02:00
Robert Svensson 8d06527cb1 Improve deCONZ services code quality (#56904)
* setup and unload services does not need to be async

* Only use DECONZ_DOMAIN to decide if service should be setup

* Consolidation of functionality

* Make a service to schema dictionary
2021-10-01 14:31:38 -04:00
Jeff Irion 15a8f6741b Enable template icons for template numbers (#56154) 2021-10-01 09:35:44 -07:00
Paulus Schoutsen d6357bcbbe Bumped version to 2021.10.0b2 2021-10-01 09:31:17 -07:00
Robert Svensson 9a218ff241 CLIPGenericFlag should be deCONZ sensor not binary sensor (#56901) 2021-10-01 09:30:44 -07:00
Robert Svensson f102bf3850 Use native unit of measurement in deCONZ sensors (#56897) 2021-10-01 09:30:43 -07:00
Simone Chemelli c9346e9af1 Revert fritz pref_disable_new_entities handling (#56891) 2021-10-01 09:30:43 -07:00
Marc Mueller 2856355c28 Fix bmw_connected_drive battery icon (#56884) 2021-10-01 09:30:42 -07:00
Otto Winter 91b8d5fcd1 Bump aioesphomeapi from 9.1.0 to 9.1.2 (#56879) 2021-10-01 09:30:41 -07:00
Marc Mueller 666fbc9877 Fix check_control_message short description (#56876) 2021-10-01 09:30:40 -07:00
Daniel Hjelseth Høyer 1f1f2a6811 Opengarage bug fix (#56869)
* Opengarage bug fix

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

* Opengarage bug fix

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

* Deprecated open garage config

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

* Deprecated open garage config

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-10-01 09:30:40 -07:00
Ricardo Steijn 74a1f60441 Handle missing serial extended parameters in crownstone (#56864) 2021-10-01 09:30:39 -07:00
Erik Montnemery d97286bcd6 Adjust state class of solarlog yield and consumption sensors (#56824) 2021-10-01 09:30:39 -07:00
Ville Skyttä cc97502a0c Use HTTPStatus instead of HTTP_* consts in aiohttp web response statuses (#56541) 2021-10-01 09:27:44 -07:00
Marc Mueller 451199338c Fix bmw_connected_drive battery icon (#56884) 2021-10-01 18:27:32 +02:00
Ricardo Steijn c0016415aa Handle missing serial extended parameters in crownstone (#56864) 2021-10-01 08:42:32 -07:00
Robert Svensson 1c1bb057d7 CLIPGenericFlag should be deCONZ sensor not binary sensor (#56901) 2021-10-01 17:10:01 +02:00
Erik Montnemery 061c335673 Remove some redundant code from trace (#56883) 2021-10-01 08:08:43 -07:00
Glenn Waters e4f15c42e0 Add kPa as a pressure unit (#56885) 2021-10-01 08:08:04 -07:00
Robert Svensson 369412547a Use native unit of measurement in deCONZ sensors (#56897) 2021-10-01 16:50:09 +02:00
Erik Montnemery ab037383ed Adjust state class of solarlog yield and consumption sensors (#56824) 2021-10-01 16:42:42 +02:00
Simone Chemelli 735c9f8f0b Revert fritz pref_disable_new_entities handling (#56891) 2021-10-01 16:18:49 +02:00
Robert Svensson 0916322a43 Deduplicate controls of UniFi services (#56834)
* Fix left over comments from #56717 - no need to keep UNIFI_SERVICES if we control it is only called while UNIFI_DOMAIN is empty

* Fix late comments as well

* Improve service tests

* mock.called_with was not reliable
2021-10-01 15:59:29 +02:00
Marc Mueller 954bd49849 Rename state to value_fn - picnic sensor (#56889) 2021-10-01 15:21:43 +02:00
Otto Winter dc40de6b62 Bump aioesphomeapi from 9.1.0 to 9.1.2 (#56879) 2021-10-01 12:11:06 +02:00
Marc Mueller acda3afe63 Fix check_control_message short description (#56876) 2021-10-01 11:50:49 +02:00
Daniel Hjelseth Høyer d4201eaa23 Opengarage bug fix (#56869)
* Opengarage bug fix

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

* Opengarage bug fix

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

* Deprecated open garage config

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

* Deprecated open garage config

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-10-01 09:12:45 +02:00
Ian Foster 3f5725c6ea removing excess variable (#56849) 2021-10-01 07:25:28 +02:00
Tobias Sauerwein 7560c7b3de Add long-term statistics support for rain sensors (#56847) 2021-10-01 07:24:55 +02:00
Milan Meulemans 25b76964a5 Add Device Info to Nanoleaf (#56856) 2021-09-30 18:25:57 -05:00
Milan Meulemans e757cb2ab4 Strictly type Nanoleaf (#56852) 2021-09-30 16:48:28 -05:00
Paulus Schoutsen 21aa635ad8 Bumped version to 2021.10.0b1 2021-09-30 14:11:43 -07:00
Erik Montnemery a70daabcea Correct database migration to schema version 22 (#56848) 2021-09-30 14:11:35 -07:00
Milan Meulemans baad8100f9 Upgrade aionanoleaf to 0.0.2 (#56845) 2021-09-30 14:11:35 -07:00
Raman Gupta 6ed46bf549 Add strings for new zwave_js config flow keys (#56844) 2021-09-30 14:11:34 -07:00
Erik Montnemery dfb3a0c528 Correct database migration to schema version 22 (#56848) 2021-09-30 14:11:00 -07:00
Milan Meulemans efeee27be1 Upgrade aionanoleaf to 0.0.2 (#56845) 2021-09-30 14:04:09 -07:00
Raman Gupta b00822f93a Add strings for new zwave_js config flow keys (#56844) 2021-09-30 22:32:17 +02:00
Franck Nijhof 11f127c1a3 Bump version to 2021.11.0dev0 (#56835) 2021-09-30 19:32:25 +02:00
Franck Nijhof 0c765a40ae Bumped version to 2021.10.0b0 2021-09-30 18:48:14 +02:00
Daniel Hjelseth Høyer 4a2ed97e0d Add locking state to surepetcare locks (#56830) 2021-09-30 08:16:35 -07:00
Erik Montnemery 6af1a835e6 Optimize statistics generation (#56821)
* Optimize statistics generation

* pylint
2021-09-30 17:14:36 +02:00
Daniel Hjelseth Høyer d5bda3ac14 Surepetcare reauthorize (#56402)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-30 10:11:45 -05:00
Daniel Hjelseth Høyer 08719af794 Bump Mill library (#56833) 2021-09-30 16:59:00 +02:00
Erik Montnemery 6954614e62 Warn if total_increasing sensor has negative states (#56564) 2021-09-30 07:49:16 -07:00
Niels Mündler 3a56e3a823 Correctly handle offline and unsupported printers during setup (#55894) 2021-09-30 16:29:51 +02:00
Bram Kragten 8196a84538 Update frontend to 20210930.0 (#56827) 2021-09-30 16:22:36 +02:00
Robert Svensson d61a9e8b72 Service to remove clients from UniFi Controller (#56717) 2021-09-30 14:38:29 +02:00
Daniel Hjelseth Høyer e729339538 Bump surepy to 0.7.2 (#56828) 2021-09-30 14:33:21 +02:00
Daniel Hjelseth Høyer 53e130d9a8 Deprecated open garage yaml config (#56829) 2021-09-30 14:19:46 +02:00
Erik Montnemery 55328d2c6f Adjust state class of growatt_server lifetime energy sensors (#56826) 2021-09-30 13:48:01 +02:00
Erik Montnemery 942db3fcbc Adjust state class of solaredge lifetime energy sensor (#56825) 2021-09-30 13:38:33 +02:00
Sean Vig f18e4bab60 Add resolution to Amcrest camera unique id (#56207)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-09-30 13:38:18 +02:00
Kevin Stillhammer dd52ec78c7 Add Kraken delay after first update to avoid limit (#55736)
* Add delay after first update to avoid limit

* Apply suggestions
2021-09-30 13:23:46 +02:00
Fabrizio Tarizzo ef4b6d7bdf Update viaggiatreno component due to API changes (#56463) 2021-09-30 13:22:43 +02:00
Marko Korhonen c9e1a03fe2 Remove webostv service description github link (#53502)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-09-30 13:03:38 +02:00
deosrc d4ed0f9637 Fix OVO Energy reporting consumption as cost (#55856) 2021-09-30 12:31:06 +02:00
logan893 cf6398a949 Fix hue turning on eWeLink switch (#56318) 2021-09-30 12:22:42 +02:00
Simone Chemelli ee28dd57c1 Rename var to compliant name in August integration (#56812) 2021-09-30 12:15:17 +02:00
Oxan van Leeuwen c6f48056fd Remove dead code from ESPHome light entity (#55519) 2021-09-30 12:12:37 +02:00
Oliver Ou d3b1ccb668 Tuya v2 Integration Release (#56820)
Co-authored-by: 乾启 <18442047+tsutsuku@users.noreply.github.com>
Co-authored-by: dengweijun <dengweijunben@gmail.com>
Co-authored-by: dengweijun <mengzi.deng@tuya.com>
Co-authored-by: erchuan <jie.zheng@tuya.com>
Co-authored-by: erchuan <erchuan365@outlook.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-30 12:02:56 +02:00
Julian Löhr 26042bdad7 Add Fritz!DECT 440 humidity sensor (#54597)
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2021-09-30 11:56:38 +02:00
acshef 4ae887ad34 Correct unit of measurement for qbittorrent data rate sensors (#55758) 2021-09-30 11:52:21 +02:00
Mas2112 1f5720199c Add DC voltage and current to Kostal inverter (#54878) 2021-09-30 11:41:55 +02:00
Tim Niemueller 0c1c1f7845 Fix Onvif PTZ for Imou cameras (#56592) 2021-09-30 11:36:49 +02:00
Greg 6a266ae3c0 Change state_class so older Envoys can use Energy Dashboard (#55383) 2021-09-30 11:34:41 +02:00
Ville Skyttä 4c854a06d9 Add some huawei_lte sensor state classifications (#55601) 2021-09-30 11:27:52 +02:00
Chris Talkington a035615016 Use entity descriptions for sonarr (#55818) 2021-09-30 11:25:42 +02:00
Aaron Bach 4b68700763 Add long-term statistics for Ambient PWS sensors (#55412) 2021-09-30 11:20:14 +02:00
Simone Chemelli 8993ff0377 Fritz new binary sensor for link and firmware status + code cleanup (#55446) 2021-09-30 11:18:04 +02:00
ehendrix23 a6a3745413 Handle UpnpError exceptions when getting WAN status and external IP address (#56744) 2021-09-30 10:41:28 +02:00
Ian Foster 2e02945833 Add keyboard event type to keyboard_remote (#56668)
* added keyboard event type to keyboard_remote

* fix emulated hold event

* Update homeassistant/components/keyboard_remote/__init__.py

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

* removed event value

* set key_hold to use string constant

* don't use dict.get() for keyboard event type

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-09-30 09:17:57 +02:00
Marc Mueller 54abd80462 Use EntityDescription - smappee (#56747) 2021-09-30 09:15:09 +02:00
Rami Mosleh 51addfc164 Add device_info to Speedtestdotnet and some code cleanup (#56612)
* Apply code cleanup suggestions from previous PRs

* Update homeassistant/components/speedtestdotnet/const.py

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

* fix native_value, and ping value in test

* use self._state instead of _attr_native_value

* update identifiers and add more tests

Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-09-30 08:28:04 +02:00
J. Nick Koston 2ed35debdc Fix dhcp discovery matching due to deferred imports (#56814) 2021-09-29 23:50:21 -05:00
David F. Mulcahey a7f554e6da Bump ZHA quirks module to 0.0.62 (#56809) 2021-09-29 22:47:15 -04:00
Raman Gupta e9d25974b8 Switch to using constants wherever possible in zwave_js (#56518) 2021-09-30 02:21:53 +02:00
jjlawren 2ff1fc83bc Add latest added media as Plex library sensor attribute (#56235) 2021-09-29 17:11:53 -07:00
João Pedro Hickmann a967a1d1df Get the currency from the api (#56806) 2021-09-29 16:25:07 -07:00
Martin Hjelmare 12b2076351 Fix zwave_js config flow import step (#56808) 2021-09-30 01:15:05 +02:00
Simone Chemelli b9d81c3a7e Handle Fritz portmapping with same name (#56398) 2021-09-29 15:11:22 -07:00
Martin Hjelmare fa716d92ad Manage s2 keys in zwave_js (#56783) 2021-09-29 15:04:24 -07:00
Erik Montnemery 8c3fc95fb8 Fallback to state machine in statistics (#56785) 2021-09-29 14:57:16 -07:00
Martin Hjelmare 7dfcccd43e Bump holidays to 0.11.3.1 (#56804) 2021-09-29 23:57:07 +02:00
RDFurman f8903e11e0 Fix honeywell connection error (#56757)
* Catch ConnectionError and retry

* Add unload and reload functionality

* Update listener on retry

* Call reload directly and await

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-29 16:10:22 -05:00
Raman Gupta 18340b2fd9 Bump zwave-js-server-python to 0.31.1 (#56517) 2021-09-29 22:33:35 +02:00
Robert Svensson f224ab6d67 Use isinstance to verify class in deCONZ integration (#56794)
* Don't enable any variants of the daylight sensor entities by default

* Use isinstance rather than doing ZHATYPE compare

* Accidentally removed an import
2021-09-29 21:19:21 +02:00
Maciej Bieniek 0463007050 Add switch platform to Tractive integration (#55517) 2021-09-29 21:06:11 +02:00
J. Nick Koston 23cbd9075a Wait for yeelight internal state to change before update after on/off (#56795) 2021-09-29 13:49:33 -05:00
Franck Nijhof 25ce7f951a Merge branch 'master' into dev 2021-09-29 20:47:34 +02:00
Erik Montnemery a966714032 Minor cleanup of recorder statistics code (#55339) 2021-09-29 11:42:39 -07:00
jjlawren 8f4ba564d4 Plex media browser improvements (#56312) 2021-09-29 11:17:55 -07:00
Erik Montnemery ef13e473cf Warn if template functions fail and no default is specified (#56453)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-29 20:16:02 +02:00
Aaron Bach ae00c221e0 Add long-term statistics for Guardian sensors (#55413)
* Add long-term statistics for Guardian sensors

* Code review
2021-09-29 12:06:48 -06:00
J. Nick Koston f7ef973c68 Bump aiodiscover to 1.4.4 to fix mac matching with leading 0s (#56791) 2021-09-29 13:18:13 -04:00
Alexei Chetroi dbba2c4afe Add "Summation Delivered" Sensor for SmartEnergy metering ZHA channel (#56666) 2021-09-29 09:35:20 -07:00
Daniel Hjelseth Høyer 60eb426451 Add Surepetcare locks (#56396)
* Surepetcare, add lock

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

* Fix tests

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

* Surepetcare, lock name

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

* surepetcare_id

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

* typing

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

* Fix review comment

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

* Fix review comment

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

* Fix review comment

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

* add more tests

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

* Fix review comment

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-29 09:17:12 -07:00
Martin Hjelmare 50fffe48f8 Add zwave to zwave_js migration (#56159)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-29 08:55:27 -07:00
Daniel Hjelseth Høyer d5c3d234ec Open garage, add config flow (#55290) 2021-09-29 09:43:51 -06:00
Erik Montnemery 40ecf22bac Remove automatic splitting of net meters from statistics (#56772) 2021-09-29 17:20:17 +02:00
Andre Richter d13c3e3917 Migrate Vallox to new fan entity model (#56663)
* Migrate Vallox to new fan entity model

* Review comments 1

* Minor corrections

* Review comments 2
2021-09-29 17:14:41 +02:00
Erik Montnemery 00651a4055 Optimize _get_states_with_session (#56734)
* Optimize _get_states_with_session

* Move custom filters to derived table

* Remove useless derived table

* Filter old states after grouping

* Split query

* Add comments

* Simplify state update period criteria

* Only apply custom filters if we didn't get an include list of entities

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-29 17:08:27 +02:00
avee87 daebc34f4d Add code_format to template alarm (#56700)
* Added code_format to template alarm

* review comment

* review comment

* use constant

* back to enum

* none -> no_code
2021-09-29 16:59:46 +02:00
Marc Mueller 77ee72cbb9 Import Callable from collections.abc (1) (#56775) 2021-09-29 16:32:11 +02:00
Marc Mueller d51487f82a Import Callable from collections.abc (3) (#56777) 2021-09-29 16:19:06 +02:00
Marc Mueller 364767ff22 Import Callable from collections.abc (4) (#56778) 2021-09-29 16:15:36 +02:00
jan iversen 19685ecff0 Set strict typing for modbus. (#56779) 2021-09-29 16:15:55 +03:00
Marc Mueller 565a9fea6b Import Callable from collections.abc (2) (#56776) 2021-09-29 14:06:51 +02:00
Franck Nijhof 41e5f05d99 Fix energy validation when not tracking costs (#56768) 2021-09-29 13:24:34 +02:00
Maciej Bieniek d3df6f26f9 Add missing voltage sensor in Shelly integration (#56773)
* Disable voltage sensor by default

* Add voltage sensor for Shelly 2/2.5

* Enable emeter voltage by default
2021-09-29 14:22:42 +03:00
Erik Montnemery 52e9f76f94 Tweak DB migration to schema version 21 (#56767) 2021-09-29 11:25:50 +02:00
Fabian Affolter be34a2ddea Upgrade beautifulsoup4 to 4.10.0 (#56764) 2021-09-29 11:25:29 +02:00
Fabian Affolter deb0cc4116 Upgrade holidays to 0.11.3 (#56762) 2021-09-29 11:25:06 +02:00
Joakim Sørensen 6a9b484f2d Remove timeout for backup services (#56763) 2021-09-29 09:46:05 +02:00
Regev Brody 115bb39c10 Fix cover group to handle unknown state properly (#56739)
* fix cover group unknown state

* fix cover grup state

* fix cover group issue
2021-09-29 08:37:16 +02:00
Simone Chemelli 34ef47db55 Fritz honor sys option pref_disable_new_entities (#56740) 2021-09-28 20:59:03 -07:00
João Pedro Hickmann 4513a46248 Add zeroconf support for yeelight (#56758) 2021-09-28 20:53:43 -05:00
Myles Eftos 8e91e6e97e Adding price spike binary sensor to the Amber electric integration (#56736) 2021-09-28 18:01:35 -07:00
J. Nick Koston cf36d0966d Add coverage to verify tplink unique ids (#56746) 2021-09-28 17:57:22 -07:00
Michael Chisholm f7d95588f8 Provide most media metadata in DlnaDmrEntity (#56728)
Co-authored-by: Steven Looman <steven.looman@gmail.com>
2021-09-28 19:37:23 -05:00
Marc Mueller 718f8d8bf7 Use NamedTuple for xbox media type details (#56753) 2021-09-28 17:00:19 -07:00
Marc Mueller 15aafc8db6 Use NamedTuple for discovery service details (#56751) 2021-09-28 16:59:40 -07:00
Marc Mueller a91fbec198 Use NamedTuple for esphome service metadata (#56754) 2021-09-28 16:58:36 -07:00
Marc Mueller 160571888c Use NamedTuple for intesishome swing settings (#56752) 2021-09-28 16:56:58 -07:00
Raman Gupta e76ddb4b27 Add proper S2 support for adding zwave_js nodes (#56516)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-28 15:37:45 -07:00
Milan Meulemans db30c27455 Clean up Nanoleaf (#56732) 2021-09-28 15:39:54 -05:00
J. Nick Koston bc59387437 Explictly close the TPLink SmartDevice protocol on unload (#56743)
* Explictly close the TPLink SmartDevice protocol on unload

- There is a destructor that will eventually do this when
  the object gets gc. Its better to explictly do it at
  unload.

* fix coro mock
2021-09-28 18:36:45 +02:00
J. Nick Koston c95f7a5ba6 Add network support to tplink for discovery across subnets (#56721) 2021-09-28 09:58:25 -05:00
Maciej Bieniek 0044fa9fb9 Add support for pedestal MIOT fans to Xiaomi Miio integration (#56555)
* Add initial support for Xiaomi Fan ZA5

* Add sensor, number and switch platform

* Addionizer switch

* Improve ionizer icon

* Fix parent of XiaomiFanMiot class

* Add another MIOT models

* Fix consts

* Add powersupply attached binary sensor

* Simplify async_create_miio_device_and_coordinator

* Simplify XiaomiGenericFan

* Fix XiaomiFanZA5 parent

* Remove pass

* Remove unused _available variable

* 1C doesn't support direction

* Suggested change

* Use elif

* Clean up oscillation angle

* Fix typo
2021-09-28 10:21:14 +02:00
Joakim Sørensen b179301152 Adjust lock configuration (#56731) 2021-09-28 10:15:45 +02:00
Adrian Huber b64b926e13 Add raid monitoring to glances (#56623) 2021-09-28 10:04:08 +02:00
gjong 495e5cb1c0 Update YouLess library for support for PVOutput firmware (#55784) 2021-09-28 09:59:40 +02:00
Maciej Bieniek 2581a3a735 Add binary sensor platform to Tractive integration (#56635)
* Add binary sensor platform

* Update .coveragerc file

* Create battery charging sensor only if tracker supports it

* Improve async_setup_entry

* Add TRAXL1 model
2021-09-28 09:56:06 +02:00
jjlawren 0d6aa89fd4 Refactor Sonos alarms and favorites updating (#55529) 2021-09-28 09:49:32 +02:00
Diogo Gomes 922d4c42a3 Inherit Filter sensor state_class from source sensor (#56407) 2021-09-28 09:30:21 +02:00
Regev Brody 9d89e1ae00 Bump WazeRouteCalculator to 0.13 (#56718) 2021-09-28 09:25:34 +02:00
dependabot[bot] 8dc4824aac Bump dessant/lock-threads from 2.1.2 to 3 (#56727)
Bumps [dessant/lock-threads](https://github.com/dessant/lock-threads) from 2.1.2 to 3.
- [Release notes](https://github.com/dessant/lock-threads/releases)
- [Changelog](https://github.com/dessant/lock-threads/blob/master/CHANGELOG.md)
- [Commits](https://github.com/dessant/lock-threads/compare/v2.1.2...v3)

---
updated-dependencies:
- dependency-name: dessant/lock-threads
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-28 10:19:57 +03:00
Raman Gupta e690d4b006 Add support for zwave_js device actions (#53038)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-28 09:06:02 +02:00
Erik Montnemery 552485bb05 Tweak list_statistic_ids (#55845)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-28 00:05:26 -07:00
Oscar Calvo c48527858d Activate fault handler (#56550) 2021-09-28 00:05:06 -07:00
Myles Eftos 412ecacca3 Amberelectric (#56448)
* Add Amber Electric integration

* Linting

* Fixing some type hinting

* Adding docstrings

* Removing files that shouldn't have been changed

* Splitting out test helpers

* Testing the price sensor

* Testing Controlled load and feed in channels

* Refactoring mocks

* switching state for native_value and unit_of_measurement for native_unit_of_measurement

* Fixing docstrings

* Fixing requiremennts_all.txt

* isort fixes

* Fixing pylint errors

* Omitting __init__.py from test coverage

* Add missing config_flow tests

* Adding more sensor tests

* Applying suggested changes to __init.py__

* Refactor coordinator to return the data object with all of the relevent data already setup

* Another coordinator refactor - Better use the dictionary for when we build the sensors

* Removing first function

* Refactoring sensor files to use entity descriptions, remove factory

* Rounding renewable percentage, return icons correctly

* Cleaning up translation strings

* Fixing relative path, removing TODO

* Coordintator tests now accept new (more accurate) fixtures

* Using a description placeholder

* Putting missing translations strings back in

* tighten up the no site error logic - self._site_id should never be None at the point of loading async_step_site

* Removing DEVICE_CLASS, replacing the units with AUD/kWh

* Settings _attr_unique_id

* Removing icon function (it's already the default)

* Apply suggestions from code review

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

* Adding strings.json

* Tighter wrapping for try/except

* Generating translations

* Removing update_method - not needed as it's being overriden

* Apply suggestions from code review

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

* Fixing tests

* Add missing description placeholder

* Fix warning

* changing name from update to update_data to match async_update_data

* renaming [async_]update_data => [async_]update_price_data to avoid confusion

* Creating too man renewable sensors

* Override update method

* Coordinator tests use _async_update_data

* Using $/kWh as the units

* Using isinstance instead of __class__ test. Removing a zero len check

* Asserting self._sites in second step

* Linting

* Remove useless tests

Co-authored-by: jan iversen <jancasacondor@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-09-28 00:03:51 -07:00
J. Nick Koston f93539ef4c Add api to the network integration to get ipv4 broadcast addresses (#56722) 2021-09-27 21:43:39 -07:00
J. Nick Koston aea754df5d Add dhcp support for TPLink KL60 and EP40 (#56726) 2021-09-27 22:45:53 -05:00
Erik Montnemery 8ef123259e Add WS API for updating unit_of_measurement in statistics metadata (#56184)
* Add WS API for updating statistics metadata

* Update homeassistant/components/recorder/websocket_api.py

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

* Update homeassistant/components/recorder/websocket_api.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Fix typo

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-28 00:43:29 +02:00
Diogo Gomes ec9fc0052d Define unit_of_measurement of all utility_meter sensors on HA start (#56112)
* define unit_of_measurement on hass start

* delay utility_meter state

* check state

* store siblings

* don't check unit_of_measurement
2021-09-28 00:42:27 +02:00
Erik Montnemery 5976f898da Add WS API for removing statistics for a list of statistic_ids (#55078)
* Add WS API for removing statistics for a list of statistic_ids

* Refactor according to code review, enable foreign keys support for sqlite

* Adjust tests

* Move clear_statistics WS API to recorder

* Adjust tests after rebase

* Update docstring

* Update homeassistant/components/recorder/websocket_api.py

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

* Adjust tests after rebase

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-09-27 23:30:13 +02:00
tube0013 0653693dff Add usb discovery for tubeszb ch340B serial devices (#56719) 2021-09-27 16:19:42 -05:00
Michael Chisholm a28fd7d61b Config-flow for DLNA-DMR integration (#55267)
* Modernize dlna_dmr component: configflow, test, types

* Support config-flow with ssdp discovery
* Add unit tests
* Enforce strict typing
* Gracefully handle network devices (dis)appearing

* Fix Aiohttp mock response headers type to match actual response class

* Fixes from code review

* Fixes from code review

* Import device config in flow if unavailable at hass start

* Support SSDP advertisements

* Ignore bad BOOTID, fix ssdp:byebye handling

* Only listen for events on interface connected to device

* Release all listeners when entities are removed

* Warn about deprecated dlna_dmr configuration

* Use sublogger for dlna_dmr.config_flow for easier filtering

* Tests for dlna_dmr.data module

* Rewrite DMR tests for HA style

* Fix DMR strings: "Digital Media *Renderer*"

* Update DMR entity state and device info when changed

* Replace deprecated async_upnp_client State with TransportState

* supported_features are dynamic, based on current device state

* Cleanup fully when subscription fails

* Log warnings when device connection fails unexpectedly

* Set PARALLEL_UPDATES to unlimited

* Fix spelling

* Fixes from code review

* Simplify has & can checks to just can, which includes has

* Treat transitioning state as playing (not idle) to reduce UI jerking

* Test if device is usable

* Handle ssdp:update messages properly

* Fix _remove_ssdp_callbacks being shared by all DlnaDmrEntity instances

* Fix tests for transitioning state

* Mock DmrDevice.is_profile_device (added to support embedded devices)

* Use ST & NT SSDP headers to find DMR devices, not deviceType

The deviceType is extracted from the device's description XML, and will not
be what we want when dealing with embedded devices.

* Use UDN from SSDP headers, not device description, as unique_id

The SSDP headers have the UDN of the embedded device that we're interested
in, whereas the device description (`ATTR_UPNP_UDN`) field will always be
for the root device.

* Fix DMR string English localization

* Test config flow with UDN from SSDP headers

* Bump async-upnp-client==0.22.1, fix flake8 error

* fix test for remapping

* DMR HA Device connections based on root and embedded UDN

* DmrDevice's UpnpDevice is now named profile_device

* Use device type from SSDP headers, not device description

* Mark dlna_dmr constants as Final

* Use embedded device UDN and type for unique ID when connected via URL

* More informative connection error messages

* Also match SSDP messages on NT headers

The NT header is to ssdp:alive messages what ST is to M-SEARCH responses.

* Bump async-upnp-client==0.22.2

* fix merge

* Bump async-upnp-client==0.22.3

Co-authored-by: Steven Looman <steven.looman@gmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-27 15:47:01 -05:00
RenierM26 b15f11f46a Discover Switchbot MAC in config flow (#56616)
* Update config_flow.py

* Switchbot Config_flow discover mac instead of needing to type it.

* Do not show already configured devices in config flow, abort if no unconfigured devices.

* Apply suggestions from code review

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

* Move MAC to top of config flow form dict.

* Update homeassistant/components/switchbot/config_flow.py

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-27 15:12:40 -05:00
Teemu R b40d229369 Rework TPLink integration to use python-kasa (#56701)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Teemu R. <tpr@iki.fi>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-27 14:11:55 -05:00
Hung Nguyen 7a2bc130b7 Bump elkm1-lib to 1.0.0 (#56703) 2021-09-27 14:10:09 -05:00
Bastien Gautier 806fdc0095 Patch coinbase (#56426)
* Add Clover Finance coin to coinbase

* Add Fetch.ai coin to coinbase

* Fix typo
2021-09-27 20:39:43 +02:00
Marc Mueller 2f4e992662 Use EntityDescription - daikin (#55929) 2021-09-27 20:26:10 +02:00
Raman Gupta f0e0b41f77 Use entity attributes for vizio integration (#56093) 2021-09-27 20:20:15 +02:00
Marc Mueller 0dcd8b32ab Use EntityDescription - meteo_france (#55677) 2021-09-27 19:40:55 +02:00
Marc Mueller 71ce858378 Use EntityDescription - toon (#55035) 2021-09-27 19:37:12 +02:00
Erik Montnemery fe66d6295c Improve migration to recorder schema version 21 (#56204) 2021-09-27 19:31:40 +02:00
Steffen Zimmermann e5642a8648 Add state_class measurements in wiffi integration (#54279)
* add support for state_class measurements in wiffi integration

* use new STATE_CLASS_TOTAL_INCREASING for metered entities

like
- amount of rainfall per hour/day
- rainfall hours per day
- sunshine hours per day

* Update homeassistant/components/wiffi/sensor.py

Co-authored-by: Greg <greg.diehl.gtd@gmail.com>

Co-authored-by: Greg <greg.diehl.gtd@gmail.com>
2021-09-27 18:28:20 +02:00
Erik Montnemery 4d7e3cde5a Minor cleanup and test coverage improvement for MQTT (#55265) 2021-09-27 17:45:52 +02:00
Franck Nijhof eae828a15a Upgrade lupupy to 0.0.21 (#56636) 2021-09-27 17:42:13 +02:00
Michael Chisholm 805e73f78c Add UPNP device connection for Sonos (#56702) 2021-09-27 17:36:47 +02:00
Marc Mueller 70cc6295b5 Use EntityDescription - hydrawise (#55924) 2021-09-27 17:35:09 +02:00
Fredrik Oterholt 4d433e18ac Add more sensor types for airthings devices (#56706)
* add additional sensor types for airthings devices

* remove "out of ten" unit

* change unit on rssi

* remove device class for light

* disable by default
2021-09-27 13:27:02 +02:00
Marius 4ce7166afd Add node sensor status icons (#56137)
Co-authored-by: kpine <keith.pine@gmail.com>
Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>
2021-09-27 12:50:14 +02:00
Marc Mueller 83b1b3e92c Use EntityDescription - tellduslive (#55928) 2021-09-27 12:28:58 +02:00
Michael f2debf5c01 Remove unnecessary extra attribute from Pi-hole sensors (#56076) 2021-09-27 12:27:03 +02:00
jan iversen 6da548b56a Strictly type modbus cover.py (#56381) 2021-09-27 12:26:25 +02:00
jan iversen 50f97b26eb Strictly type modbus climate.py (#56380) 2021-09-27 12:25:05 +02:00
Simone Chemelli b612e16120 Add current and latest firmware info to Synology_dsm (#56460) 2021-09-27 12:23:26 +02:00
Erik Montnemery 58f465f271 Don't reset meter when last_reset is set to None (#56609) 2021-09-27 12:17:09 +02:00
jjlawren 931cf4eaab Improve Sonos handling of TuneIn stations (#56479) 2021-09-27 12:07:14 +02:00
Robert Svensson ca6b53c16d Remove UniFi config entry reference from device when removing last entity of said device (#56501) 2021-09-27 12:04:29 +02:00
Erik Montnemery efe467217a Don't round in energy cost sensor (#56258) 2021-09-27 12:01:17 +02:00
Aaron Bach 56b94d6809 Simplify native value property for WattTime (#56664) 2021-09-27 11:58:51 +02:00
Franck Nijhof 4f5d6b8ba1 Upgrade sentry-sdk to 1.4.1 (#56707) 2021-09-27 11:20:43 +02:00
Erik Montnemery 14a1bb423c Add is_number template filter and function (#56705) 2021-09-27 10:47:57 +02:00
Fabian Affolter e4dc646237 Upgrade praw to 7.4.0 (#56682) 2021-09-27 08:48:21 +02:00
Michael Chisholm 6c2674734a SSDP starts config flow only for alive devices (#56551)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-27 08:39:22 +02:00
dependabot[bot] 0f313ec73c Bump home-assistant/builder from 2021.07.0 to 2021.09.0 (#56704)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-27 08:37:54 +02:00
J. Nick Koston 0fce9f39b3 Avoid checking if a package is installed if it already failed (#56698) 2021-09-26 22:32:25 -07:00
Fabian Affolter 01bd3ff138 Upgrade sendgrid to 6.8.2 (#56688) 2021-09-27 07:03:29 +02:00
Fabian Affolter 8884e9691e Upgrade TwitterAPI to 2.7.5 (#56687) 2021-09-27 07:03:09 +02:00
Fabian Affolter 55c9abc58d Upgrade discord.py to 1.7.3 (#56686) 2021-09-27 07:02:46 +02:00
Fabian Affolter 44a4507b51 Upgrade requests to 2.26.0 (#56683)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-26 21:44:28 -05:00
Fabian Affolter 115d34f55a Set certifi to >=2021.5.30 (#56679)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-26 21:19:30 -05:00
J. Nick Koston 7ab6c82ad2 Drop defusedxml dep from ssdp manifest (#56699) 2021-09-26 19:49:43 -05:00
J. Nick Koston 26e031984b Ensure sonos always gets ssdp callbacks from searches (#56591) 2021-09-26 17:16:03 -05:00
J. Nick Koston 6399730d2f Optimize SSDP matching (#56622)
* Optimize SSDP matching

* tweak

* remove

* remove dupe
2021-09-26 16:30:39 -05:00
J. Nick Koston f268227d64 Implement retry and backoff strategy for requirements install (#56580)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-09-26 14:47:03 -05:00
Raman Gupta 8716aa011a Add support for multilevel switch CC select entities (#56656)
* Add support for multilevel switch CC select entities

* Use state names from docs and include more device identifiers from device DB

* black

* pylint

* type fix

* Add failure scenario test

* Update homeassistant/components/zwave_js/select.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-26 14:22:41 -04:00
Fabian Affolter 2326e3ed94 Upgrade voluptuous to 0.12.2 (#56680) 2021-09-26 18:59:00 +02:00
J. Nick Koston 52410ff0d7 Ensure yeelight can be unloaded when device is offline (#56464) 2021-09-26 09:54:43 -07:00
J. Nick Koston 26f73779cc Avoid enabling ipv6 dual stack for zeroconf on unsupported platforms (#56584) 2021-09-26 09:51:34 -07:00
J. Nick Koston f74291ccb6 Expose the ability to move an entity/device between config entries (#56661) 2021-09-26 09:50:57 -07:00
Marc Mueller e35e584b60 Use EntityDescription - sht31 (#56435)
* Use EntityDescription - sht31

* Add device_class for humidity

* Fix monitored conditions

* Add pylint disable
2021-09-26 18:19:36 +02:00
Fabian Affolter 65bce33a63 Upgrade emoji to 1.5.0 (#56684) 2021-09-26 15:09:13 +02:00
Franck Nijhof bfefe82605 Upgrade pre-commit to 2.15.0 (#56677) 2021-09-26 14:47:47 +02:00
Fabian Affolter a0a359e2ef Upgrade ciso8601 to 2.2.0 (#56678) 2021-09-26 14:47:29 +02:00
Daniel Hjelseth Høyer d8387744ec Correct the device name for Airthings (#56655) 2021-09-26 12:48:27 +02:00
Aaron Bach 01e03a223b Simplify native value and attributes properties for Flu Near You (#56665) 2021-09-26 11:12:54 +02:00
Aaron Bach aeba3a703f Revert "Simplify state update for Flu Near You (#56650)" (#56662)
This reverts commit d4ebcf2ba5.
2021-09-25 17:19:17 -06:00
Robert Svensson 8db0bd3c0e Fix state_class for deCONZ power sensors (#56586)
* Fix state_class for power sensors
Rewrite entity descriptions for binary sensor and sensor platforms

* Remove icon if device_class is specified
2021-09-25 20:54:55 +02:00
Aaron Bach d4ebcf2ba5 Simplify state update for Flu Near You (#56650) 2021-09-25 20:22:51 +02:00
Franck Nijhof fabf5204be Ignore config directory symlink in development (#56639) 2021-09-25 12:53:41 +02:00
Franck Nijhof 83f1116432 Upgrade numpy to 1.21.2 (#56640) 2021-09-25 12:39:21 +02:00
Franck Nijhof 23e1c663d4 Upgrade pytest-xdist to 2.4.0 (#56606) 2021-09-25 12:07:29 +02:00
Matt Zimmerman 754ff7e3cb Update python-smarttub to 0.0.27 (#56626) 2021-09-25 12:06:41 +02:00
MatthewFlamm 8bc8081e81 Add state_class_measurement to nws (#56629) 2021-09-25 11:58:07 +02:00
Franck Nijhof 917254e956 Upgrade pyupgrade to v2.27.0 (#56638) 2021-09-25 11:48:47 +02:00
Franck Nijhof 57aaf55678 Upgrade pipdeptree to 2.1.0 (#56637) 2021-09-25 11:48:31 +02:00
Daniel Hjelseth Høyer f0de6dc21a Use SurePetcareEntity for surepetcare binary sensor (#56601)
* Use SurePetcareEntity for surepetcare binary sensor

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

* tests

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-25 11:17:55 +02:00
Joakim Plate 5c1f55ffa4 Bump fjäråskupan to 1.0.1 (#56628) 2021-09-25 11:17:26 +02:00
Raman Gupta b1f4ccfd6b Reuse zwave_js device when replacing removed node with same node (#56599)
* Reuse zwave_js device when a removed node is replaced with the same node

* Ensure change is backwards compatible with servers that don't include replaced

* Remove lambda

* Add assertions to remove type ignores

* fix tests by always copying state and setting manufacturer/label attributes
2021-09-25 10:43:37 +02:00
Michaël Arnauts 5d3d6fa1cd Add state_class and use SensorEntityDescription for comfoconnect (#54066)
* Add state_class=measurement and use SensorEntityDescriptions

* Use attributes from entity_description

* Improvements

* Adress remarks

* Revert changes to fan

* move method

* Fix tests

* Revert fan/__init__.py

* Revert key change

* Set default percentage in turn_on
2021-09-24 22:26:56 +02:00
Aaron Bach 0ea5f25594 Add ability to re-auth Notion (#55616) 2021-09-24 11:23:19 -07:00
Robert Hillis a7d56d1c3f Bump goalzero to 0.2.0 (#56613)
* Bump goalzero to 0.1.8

* bump

* recheck

* bump
2021-09-24 12:18:14 -06:00
Eduard van Valkenburg ac576a2bc6 update SIA package (#56615) 2021-09-24 12:15:21 -06:00
RenierM26 3c80e05100 Set Switchbot _attr_is_closed on init (#56611)
* self._attr_is_closed needs to be set initially.

* Set _attr_is_closed on init.
2021-09-24 12:13:45 -06:00
Maikel Punie 8aff51042b Bump velbus-aio to 2021.9.4 (#56478)
* Bump version, move the cache-dir to the home-assistant config

* Moved the cahce into the storage dir

* Bump version, 2021.9.3 will use pathlib

* Bump version to 2021.9.4

* Clean config path

* Remove leading slash

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-24 20:09:44 +02:00
Robert Hillis e078f4ce14 Move efergy api to pyefergy (#56594)
* Move efergy api to pyefergy

* fix permissions

* tweak

* tweak
2021-09-24 12:54:15 +02:00
Franck Nijhof d7e121f3e8 Upgrade pytest to 6.2.5 (#56603) 2021-09-24 10:11:36 +02:00
Daniel Hjelseth Høyer aca00667df Add device info to Surepetcare (#56600) 2021-09-24 09:21:47 +02:00
Erik Montnemery 64393b462d Add migration for 5-minute statistics (#56585)
* Add migration for 5-minute statistics

* Tweaks
2021-09-24 09:19:22 +02:00
Erik Montnemery 7452998081 Convert last_reset timestamps to UTC (#56561)
* Convert last_reset timestamps to UTC

* Add test

* Apply suggestion from code review
2021-09-24 09:16:50 +02:00
Maciej Bieniek e62c9d338e Rework Tractive integration init (#55741)
* Rework integration init

* Suggested chancge

* Use Trackables class

* Use try..except for trackable_objects

* Check that the pet has tracker linked
2021-09-24 08:45:03 +02:00
Jan Bouwhuis e73ca9bd18 Alexa fix Fan support and cleanup (#56053)
* del PowerLevelController, ena fan PowerController

* Use AlexaRangeContoller for speed or default

* Update tests

* no-else-return

* Avoid cases with only one preset_mode

* Only report ghost_mode to Alexa - fix bug

* Add some tests for patched code

* pylint

* pylint and tests with one preset_mode

* correct ghost preset mode check in test

* add tests for RangeController

* ghost preset_mode locale agnostic

* isort

* Update homeassistant/components/alexa/capabilities.py

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

* Update homeassistant/components/alexa/entities.py

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

* Update homeassistant/components/alexa/entities.py

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

* Update homeassistant/components/alexa/entities.py

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

* Update homeassistant/components/alexa/entities.py

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

* Update entities.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-09-24 08:14:45 +02:00
J. Nick Koston 0363c22dd8 Fix Sonos going offline with 13.3 firmware (#56590) 2021-09-23 20:39:20 -07:00
RenierM26 915afedcfc Add binary_sensor to switchbot (#56415)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-23 17:10:34 -05:00
Milan Meulemans 0b53f73fe2 Convert Nanoleaf integration to use Async library aionanoleaf (#56548) 2021-09-23 15:37:37 -05:00
Michael 7ece35cd6f Assume Fritz!Smarthome device as unavailable (#56542) 2021-09-23 13:29:12 -07:00
RenierM26 972db29c88 Add sensor to switchbot platform (#56416)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-23 15:27:34 -05:00
Daniel Hjelseth Høyer 6e7bc65e2e Airthings (#56578) 2021-09-23 13:20:30 -07:00
Daniel Hjelseth Høyer a94514b00d Add Surepetcare entity class (#56430) 2021-09-23 13:19:46 -07:00
Rami Mosleh 4c40d1767a Remove config for Speedtest.net (#55642) 2021-09-23 20:44:59 +02:00
Franck Nijhof 7fc0717ab1 Upgrade debugpy to 1.4.3 (#56576) 2021-09-23 11:12:19 -07:00
Franck Nijhof 750a1b84ad Add date device_class to Twente Milieu sensors (#56579) 2021-09-23 11:09:00 -07:00
Marc Mueller fed5f5e3b9 Use EntityDescription - fitbit (#55925) 2021-09-23 20:08:47 +02:00
Franck Nijhof 60bb3121b6 Upgrade apprise to 0.9.5.1 (#56577) 2021-09-23 11:00:45 -07:00
Kevin Worrel b43d377b53 Create but disable-by-default RPM and GPM sensors (#56549) 2021-09-23 11:00:33 -07:00
Andre Richter a5c6a65161 Activate mypy for Vallox (#55874) 2021-09-23 10:59:28 -07:00
Franck Nijhof 2fe8c78811 Fix Toon push updates (#56583) 2021-09-23 19:50:30 +02:00
jan iversen 1cc850877f strictly type: fan.py, light.py, switch.py. (#56379) 2021-09-23 18:35:50 +01:00
Brian O'Connor cce906f968 Fix OpenWeatherMap dewpoint conversion (#56303) 2021-09-23 10:14:15 -07:00
Marc Mueller 70f10338cc Use EntityDescription - solaredge_local (#56434) 2021-09-23 18:29:58 +02:00
Joakim Sørensen 98d0c84468 Enable strict typing for the tautulli integration (#55448) 2021-09-23 16:56:21 +02:00
Aaron Bach 1a47fcc4e3 Add long-term statistics for OpenUV sensors (#55417) 2021-09-23 16:54:06 +02:00
Marc Mueller b634bd26d0 Use EntityDescription - kraken (#56436) 2021-09-23 16:42:55 +02:00
Franck Nijhof c1df49e9fc Upgrade black to 21.9b0 (#56575) 2021-09-23 16:33:24 +02:00
Jc2k 442d850fc9 Bump aiohomekit to 0.6.3 (#56574) 2021-09-23 16:30:15 +02:00
Franck Nijhof 237efcf6b1 Upgrade colorlog to 6.4.1 (#56573) 2021-09-23 16:12:13 +02:00
Franck Nijhof bdef131294 Upgrade watchdog to 2.1.5 (#56572) 2021-09-23 16:11:47 +02:00
Franck Nijhof 71ab24f350 Upgrade pre-commit to 2.14.1 (#56569) 2021-09-23 16:11:29 +02:00
Franck Nijhof 655dc890e4 Upgrade PyTurboJPEG to 1.6.1 (#56571) 2021-09-23 15:34:34 +02:00
J. Nick Koston a6ccb1821e Update zeroconf to 0.36.7 (#56553) 2021-09-23 08:00:17 -05:00
Erik Montnemery f0a4a89d21 Add comments to recorder statistics code (#56545)
* Add comments to recorder statistics code

* Revert accidental change of list_statistic_ids
2021-09-23 13:14:45 +02:00
Ricardo Steijn 63610eadc9 Address Crownstone review comments (#56485) 2021-09-23 09:23:45 +02:00
Oscar Calvo ea8f624f28 Fix an issue where core process crashes when an SMS is received (#56552) 2021-09-22 21:49:08 -07:00
Erik Montnemery 83156fb9ec Energy validation: Require last_reset attribute to be set for state_class measurement energy and cost sensors (#56254)
* Require last_reset attribute to be set for measurement state_class

* Tweak

* Improve tests

* Lint

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-22 21:48:37 -07:00
Paulus Schoutsen 974376a8de Bump frontend to 20210922.0 (#56546) 2021-09-22 16:20:58 -07:00
Paulus Schoutsen 677abcd484 Allow confirming local push notifications (#54947)
* Allow confirming local push notifications

* Fix from Zac

* Add tests
2021-09-22 23:17:04 +02:00
Erik Montnemery f77e93ceeb Fix validation of cost entities for energy dashboard (#56219) 2021-09-22 13:57:58 -07:00
Sian 351ef0ab44 Register Google assistant energy storage trait (#56520) 2021-09-22 13:36:03 -07:00
Erik Montnemery 92253f5192 Minor refactoring of periodic statistics (#56492) 2021-09-22 13:31:33 -07:00
Ville Skyttä d8d34fdd3b Prefer HTTPStatus over int in HA view JSON functions (#56504)
* Prefer HTTPStatus over int in HA view JSON functions

* Update zwave tests to not expect a fixed typo
2021-09-22 21:59:52 +03:00
Paulus Schoutsen 39aaa383b3 Fix flaky srp energy test (#56536) 2021-09-22 17:41:10 +02:00
Alexei Chetroi a5d405700c ZHA channel ZCL attributes initialization (#56476)
* Add dict of attributes to initialize

* Refactor get_attributes() method

Read 5 attributes at the time.

* Add ZCL_INIT_ATTRS attribute to base Zigbee channel

* Update tests and general clusters

* Update channels to use ZCL_INIT_ATTRS

* Update channels to use ZCL_INIT_ATTRS

* Fix tests

* Refactor async_initialize() to be a retryable request

* Maky pylint happy again
2021-09-22 11:34:30 -04:00
Tobias Sauerwein 2478ec887a Allow camera usage with HA cloud (#56533) 2021-09-22 16:54:12 +02:00
Paulus Schoutsen e34c985534 Simplify cloud request connection handling (#56243)
Co-authored-by: Pascal Vizeli <pascal.vizeli@syshack.ch>
2021-09-22 07:51:31 -07:00
Erik Montnemery ac053388b4 Convert image_processing tests to pytest (#56451)
* Convert image_processing tests to pytest

* Use existing fixtures and test helpers

* Remove useless code
2021-09-22 15:00:28 +02:00
Tobias Sauerwein 26d310fc8a Split Netatmo camera persons by home (#55598)
* Split persons by home
* Bump pyatmo to 6.0.0
* Check is person exists
* Extract method for fetching person ids
2021-09-22 14:32:30 +02:00
Roel van der Ark aab4b5ec06 Add extra power meter for YouLess (#56528)
* #55535 added extra power meter

* Update sensor.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-09-22 14:08:23 +02:00
Niklas Åström 783cc1eacd Optimise requests to the tado servers (#56261)
This avoids calling the tado servers unnecessarily many times, especially for bigger homes. This is done by calling aggregating endpoints instead of iterating over the zones and devices and calling endpoints over and over.
2021-09-22 14:01:30 +02:00
Robert Hillis a653da137c Use EntityDescription - efergy (#54210) 2021-09-21 16:53:35 -05:00
Bas Nijholt b7a758bd0c raise PlatformNotReady when speakers unreachable (#56508)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-09-21 14:35:51 -07:00
J. Nick Koston 9831ff0487 Avoid deadlock on shutdown when a task is shielded from cancelation (#56499) 2021-09-21 14:35:14 -07:00
Erik Montnemery d494b3539d Prevent 3rd party lib from opening sockets in google_assistant tests (#56346) 2021-09-21 11:27:10 -07:00
Ville Skyttä 1aa7c87151 Remove redundant aiohttp response status=200 kwargs (#56417)
* Remove redundant aiohttp response status=200 kwargs

* Remove some more in h.c.auth

* Restore explicit status=HTTP_OK for auth and webhook per review request
2021-09-21 10:51:12 -07:00
RenierM26 26e9590927 Add cover platform to switchbot (#56414)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-21 12:35:47 -05:00
jan iversen 34de74d869 Strictly type tradfri config_flow.py (#56391)
* Strictly type config_flow.py.

* Review comments.
2021-09-21 16:23:10 +02:00
Justin Goette 56b66d5124 typo (#56477) 2021-09-21 15:09:21 +01:00
jan iversen c7c789f618 Strictly type modbus __init__.py, validator.py (#56378)
* strictly type: __init__.py, validator.py
2021-09-21 13:43:41 +02:00
jan iversen 518c99c8b7 Strictly type tradfri cover.py (#56390)
* Strictly type cover.py.

* Review comments from other PR.

* Update homeassistant/components/tradfri/cover.py

Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>

* Update homeassistant/components/tradfri/cover.py

Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>

* Update homeassistant/components/tradfri/cover.py

Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>

* Update homeassistant/components/tradfri/cover.py

Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
2021-09-21 12:15:45 +01:00
Pascal Vizeli 7698c179ac Upgrade cryptography to 3.4.8 (#56481)
* Upgrade cryptography to 3.4.8

* Fix file
2021-09-21 11:06:52 +02:00
Oscar Calvo f9fde7f7a1 Support unicode in SMS messages (#56468) 2021-09-21 10:07:14 +02:00
Elliot Morales Solé 097fae0348 Correct Alexa scene activation (#56469)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-20 22:51:17 -07:00
Paulus Schoutsen d4864f5750 Deprecate passing template to notify (#56069) 2021-09-20 21:49:02 -07:00
Aaron Bach aabc8cd2d5 Add WattTime integration (#56149) 2021-09-20 21:10:24 -07:00
Paulus Schoutsen 9059ee6604 Merge pull request #56472 from home-assistant/shelly-gen2 2021-09-20 20:19:19 -07:00
Marcin Ciupak b9ffd74db5 Fix recorder Oracle DB models (#55564)
* Fix recorder models for Oracle DB

* Fix StatisticsRuns

* Update migration for Oracle Identity columns.

* Update migration logic

Migration to schema version 22 done only for engine dialect oracle

* Add missing table check in schema 22 migration
2021-09-21 00:38:42 +02:00
Marc Mueller 20ddd092f6 Remove xiaomi_aqara entity_description property (#56456) 2021-09-21 00:14:33 +02:00
Shay Levy 47340802b3 Add Shelly RPC device trigger and logbook platforms (#56428)
* Add RPC device trigger and logbook platforms

* Single input event for Block and RPC

* Add device generation to shelly.click
2021-09-21 00:09:44 +03:00
jan iversen df56953c98 Strictly type tradfri light.py (#56389)
* Strictly type light.py.
2021-09-20 21:54:50 +02:00
Shay Levy 542f637ac4 Improve Shelly light application/consumption type handling (#56461) 2021-09-20 11:12:18 -07:00
J. Nick Koston 9e2a29dc37 Improve yeelight stability by moving timeout handling to upstream library (#56432) 2021-09-20 12:32:01 -05:00
jan iversen f3ad4ca0cc Strictly type modbus.py. (#56375) 2021-09-20 18:47:05 +02:00
Marc Mueller 4c4bd740f3 Use EntityDescription - flume (#56433) 2021-09-20 11:13:09 -05:00
Erik Montnemery 6f36419c6f Improve statistics validation (#56457) 2021-09-20 17:54:25 +02:00
Erik Montnemery fc4bb40a63 Prevent opening sockets in panasonic_viera tests (#56441) 2021-09-20 15:01:49 +02:00
jan iversen a84e86ff13 Strictly type modbus base_platform.py (#56343) 2021-09-20 14:59:30 +02:00
Maciej Bieniek bb6f97c4d3 Rework Xiaomi Miio fan platform (#55846) 2021-09-20 14:49:39 +02:00
jan iversen 93e9a67d7d Make tradfri base_class.py strictly typed (#56341)
* Make base_class.py strictly typed.
2021-09-20 14:33:50 +02:00
Erik Montnemery 5c717cbb1d Prevent opening of sockets in onboarding tests (#56443) 2021-09-20 13:56:50 +02:00
Otto Winter a54854d129 ESPHome Noise Transport Encryption support (#56216) 2021-09-20 09:02:17 +02:00
mbo18 be19c676fa Add missing generic-x86-64 image (#56424) 2021-09-20 08:55:07 +02:00
jan iversen ddd31951bc Strictly type sensor.py. (#56377) 2021-09-20 07:35:11 +02:00
Diogo Gomes b05c1b516e restore float and not string (#56406) 2021-09-20 07:31:58 +02:00
J. Nick Koston b060c025ce Bump zeroconf to 0.36.6 (#56438)
- Performance improvements (faster HomeKit startup)

Changelog: https://github.com/jstasiak/python-zeroconf/compare/0.36.5...0.36.6
2021-09-20 07:00:46 +02:00
Daniel Hjelseth Høyer 00f7548fa0 Surepetcare, strict typing (#56425)
* Surepetcare, strict typing

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

* Surepetcare, strict typing

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-19 20:57:28 +02:00
Milan Meulemans d76163e5be Add tests for Rituals Perfume Genie number, select and binary_sensor platforms (#55224) 2021-09-19 08:51:57 -10:00
Maciej Bieniek ea189f930a Use attrs in Xiaomi Miio humidifier platform (#56371)
* Use attrs in humidifier platform

* Cleanup min/max humidity attrs
2021-09-19 17:04:33 +02:00
Joakim Sørensen 713d294627 Use _attr_* for the GitHub integration (#56419) 2021-09-19 15:10:51 +02:00
J. Nick Koston 88e42a540e Remove leftover debug prints in tests (#56409) 2021-09-19 12:43:02 +02:00
Erik Montnemery ec52763706 Prevent 3rd party lib from opening sockets in samsungtv tests (#56334) 2021-09-18 22:24:27 -10:00
Erik Montnemery 80a57f5118 Prevent 3rd party lib from opening sockets in smhi tests (#56335) 2021-09-19 10:18:45 +02:00
J. Nick Koston 75c029c56b Bump zeroconf to 0.36.5 (#56413) 2021-09-18 21:52:09 -10:00
Daniel Hjelseth Høyer a57d7717a8 Improve Surepetcare set_pet_location service (#56401)
* Surepetcare, improve set_pet_location

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

* Surepetcare, improve set_pet_location

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

* Surepetcare, improve set_pet_location

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

* Surepetcare, improve set_pet_location

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

* Surepetcare, improve set_pet_location

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-19 08:38:43 +02:00
Aidan Timson 53d4c0ce2d Increase Lyric update interval to 300 seconds (#56393) 2021-09-18 13:34:28 -10:00
Marc Mueller 7af67d34cf Use assignment expressions 01 (#56394) 2021-09-18 13:31:35 -10:00
Marc Mueller a4f6c3336f Use EntityDescription - august (#56395) 2021-09-18 13:10:15 -10:00
jan iversen 9b710cad5d Add strict typing to tradfri __init__ and switch (#56002)
* Add strict typing to __init__ and switch.

* Review comments.

* Review comments.

* Corrected switch.
2021-09-18 23:24:35 +02:00
Erik Montnemery f6526de7b6 Use hass_client_no_auth test fixture in nest tests (#56326) 2021-09-18 23:17:09 +02:00
Daniel Hjelseth Høyer 8b64cd7e7d Bump pyTibber to 0.19.1 (#56405)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-18 23:15:39 +02:00
Erik Montnemery 43b5dcff76 Use hass_client_no_auth test fixture in withings tests (#56337) 2021-09-18 23:12:02 +02:00
Robert Svensson bf7c2753d5 deCONZ use siren platform (#56397)
* Add siren.py

* Working siren platform with 100% test coverage

* Also add test file...

* Add test to verify that switch platform cleans up legacy entities now that sirens are their own platform

* Update homeassistant/components/deconz/siren.py

Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2021-09-18 21:59:04 +02:00
jan iversen 6b6e26c96d Strictly type binary_sensor.py. (#56376) 2021-09-18 20:54:11 +01:00
jan iversen 5c19368ce3 Strictly type sensor.py (#56388) 2021-09-18 20:49:47 +01:00
RenierM26 3ce8109e5e Add config flow to Switchbot (#50653)
Co-authored-by: Daniel Hjelseth Høyer <mail@dahoiv.net>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-18 09:25:05 -10:00
jjlawren f31b9eae61 Fix creating cert_expiry configs during runtime (#56298)
* Fix creating cert_expiry configs during runtime

* Address review feedback on tests

* Improve delayed startup test
2021-09-18 19:54:54 +02:00
Ashley 'DrToxic' Devine 312a9e5df2 Add Shiba Inu coin to coinbase (#56304)
Added SHIB coin
2021-09-18 18:49:29 +02:00
Daniel Hjelseth Høyer f97cce6f57 Surepetcare, service to set pet location (#56198)
* Surepetcare, add handle_set_pet_location

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

* Surepetcare, add handle_set_pet_location

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

* Surepetcare, add handle_set_pet_location

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-18 17:48:58 +02:00
Paulus Schoutsen 9ffdc2594f Merge pull request #56366 from home-assistant/rc 2021-09-18 08:29:25 -07:00
Maciej Bieniek 0a5948dc8b Fetch the data a second time when -9999 error occurs in Xiaomi Miio integration (#56288) 2021-09-18 07:39:28 -07:00
Marc Mueller 811feb69ba Fix dangerous brackets (#56384) 2021-09-18 16:08:22 +02:00
Simone Chemelli 0a5fdb2e68 Address late review of samsungtv (#56382) 2021-09-18 15:42:36 +02:00
Marc Mueller 48bada5a18 Update pylint to 2.11.1 (#56364) 2021-09-18 13:52:59 +02:00
jan iversen 476d04e2fb Activate mypy. (#55965) 2021-09-18 10:02:24 +01:00
Erik Montnemery 39bc127dd6 Prevent 3rd party lib from opening sockets in glances tests (#56345) 2021-09-17 22:22:44 -10:00
Erik Montnemery be0819b456 Mock out network.util.async_get_source_ip in tests (#56339) 2021-09-17 21:40:58 -10:00
J. Nick Koston 0830100df1 Do not reload the isy994 on ip change since there is already a reload listener (#54602) 2021-09-17 21:22:14 -10:00
Robert Svensson 539ef31046 Reflect changes to pydeconz v84 (#56361)
Mostly snake case conversions and typing
But also a change in retry mechanism
Added a more complete set_* call to most types to remove the direct relation to rest API of deCONZ
2021-09-18 09:05:08 +02:00
jan iversen 6947912fa9 Modbus entity update does not occur until after scan_interval (#56221)
* Secure update is called when integration is started.

* Review comments.

* Update homeassistant/components/modbus/base_platform.py

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

* Update homeassistant/components/modbus/base_platform.py

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

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-09-18 08:57:27 +02:00
Sean Vig 02ba3c6089 Update amcrest version to 1.9.3 (#56348)
This version fixes a bug that affects the current non-async Home Assistant integration
2021-09-18 08:34:51 +02:00
Paulus Schoutsen f8d62866e5 Bumped version to 2021.9.7 2021-09-17 22:48:16 -07:00
J. Nick Koston 3046adf3b2 Fix yeelight nightlight mode (#56363) 2021-09-17 22:48:09 -07:00
Shay Levy 22307066bb Bump aioswitcher to 2.0.6 (#56358) 2021-09-17 22:48:08 -07:00
Joakim Plate 8c936b320e Avoid sending Standby when already off (#56306) 2021-09-17 22:48:07 -07:00
Erik Montnemery 9c4d6afb3c Bump pychromecast to 9.2.1 (#56296) 2021-09-17 22:48:06 -07:00
Aaron Bach 0442ed54e8 Bump pyopenuv to 2.2.1 (#56270) 2021-09-17 22:48:06 -07:00
J. Nick Koston 3224fc8710 Fix HomeKit requests with hvac mode and temperature in the same call (#56239) 2021-09-17 22:48:05 -07:00
Joakim Sørensen 6f40759ed0 Update docker base image to 2021.09.0 (#56191) 2021-09-17 22:48:04 -07:00
jjlawren 07ba24ac5a Bump plexapi to 4.7.1 (#56163) 2021-09-17 22:48:03 -07:00
Martin Ilievski c0c85a6641 Bump pykodi to 0.2.6 (#56148) 2021-09-17 22:48:03 -07:00
J. Nick Koston 162fab91b2 Ensure rainmachine device name is a string (#56121) 2021-09-17 22:48:02 -07:00
muppet3000 6e80d27770 Bump growattServer to 1.1.0 (#56084) 2021-09-17 22:48:01 -07:00
Brian Egge 2b58a266cc Fix generic thermostat switch state initialization (#56073) 2021-09-17 22:48:00 -07:00
Oscar Calvo bd17da0524 Support incoming SMS messages via polling (#54237)
* Add support to incomming SMS via polling

* Update dependencies

* Only send notification for unread messages

* Only inform if callback is not getting used

* Update gateway.py

* Apply PR feedback

* Update homeassistant/components/sms/gateway.py

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

* Apply PR comments

* Make black happy

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-17 22:47:59 -07:00
J. Nick Koston 7524daad86 Fix HomeKit requests with hvac mode and temperature in the same call (#56239) 2021-09-17 22:47:06 -07:00
Shay Levy aaadd42539 Bump aioswitcher to 2.0.6 (#56358) 2021-09-17 22:42:58 -07:00
J. Nick Koston b6763c7245 Fix yeelight nightlight mode (#56363) 2021-09-17 22:26:25 -07:00
J. Nick Koston eb98ac9415 Allow IntegrationNotFound when checking config in safe mode (#56283)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-09-17 22:25:50 -07:00
J. Nick Koston bad6b2f7f5 Standardize yeelight exception handling (#56362) 2021-09-17 22:25:19 -07:00
Simone Chemelli 4160a5ee3b Strict typing for SamsungTV (#53585)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-17 18:51:07 -10:00
Alexei Chetroi f5dd71d1e0 Bump up ZHA dependencies (#56359) 2021-09-17 19:52:49 -04:00
jan iversen c4195c547c Update template/test_init.py to use pytest (#56336) 2021-09-17 15:13:17 -07:00
Milan Meulemans f64aa0f8df Fix netgear strings (#56351) 2021-09-17 22:43:23 +02:00
J. Nick Koston e880f1c8f9 Index config entries by domain (#56316) 2021-09-17 10:39:00 -10:00
Alexei Chetroi 5b0e00a74b Refactor ZHA HVAC thermostat channel (#56238)
* Refactor HVAC channel to use zigpy cached attributes

* Allow named attributes in ZHA test attribute reports

* Let attribute write to update cache

* WIP Update tests

* Cleanup
2021-09-17 15:17:34 -04:00
Daniel Hjelseth Høyer 16832bc35b AutomationTriggerInfo as type in rfxtrx (#56353)
* AutomationTriggerInfo as type in rfxtrx

* style

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-17 20:01:00 +02:00
Erik Montnemery 45046941c6 Avoid creating sockets in homekit port available tests (#56342) 2021-09-17 04:16:57 -10:00
Joakim Plate 9b00e0cb7a Rfxtrx device triggers and actions (#47909)
* Add helper

* Add device actions

* Add trigger

* Just make use of standard command

* Generalize code a bit

* Switch tests to currently existing features

* Add tests for capabilities

* Don't check schema asserted value

* Adjust strings somewhat

* Directly expose action subtypes

* Add a status event test

* Switch to modern typing

* Drop chime that is now part of command

* Adjust strings a bit

* Drop ability to set custom value

* Adjust changed base schema

* Validate triggers

* Try fix typing for 3.8
2021-09-17 15:28:43 +02:00
Erik Montnemery ecf4a7813a Prevent 3rd party lib from opening sockets in wilight tests (#56310) 2021-09-17 15:27:26 +02:00
Shay Levy 5249c89c3f Add Shelly RPC sensor and binary sensor platforms (#56253) 2021-09-17 15:53:39 +03:00
Erik Montnemery 797b68b42d Prevent 3rd party lib from opening sockets in rfxtrx tests (#56331) 2021-09-17 12:51:40 +02:00
Erik Montnemery 55a77b2ba2 Prevent 3rd party lib from opening sockets in ps4 tests (#56330) 2021-09-17 12:51:25 +02:00
Erik Montnemery 327bf24940 Prevent 3rd party lib from opening sockets in cloud tests (#56328) 2021-09-17 12:50:59 +02:00
Erik Montnemery e0a232aa36 Prevent 3rd party lib from opening sockets in wallbox tests (#56308) 2021-09-17 12:50:11 +02:00
Erik Montnemery a793fd4134 Prevent 3rd party lib from opening sockets in ping tests (#56329) 2021-09-16 23:41:19 -10:00
Erik Montnemery bce4c5eb11 Prevent 3rd party lib from opening sockets in zeroconf tests (#56324) 2021-09-16 23:19:32 -10:00
Erik Montnemery fce7f0873e Prevent 3rd party lib from opening sockets in sia tests (#56325) 2021-09-16 23:19:19 -10:00
J. Nick Koston 8814c53504 Bump zeroconf to 0.36.4 (#56314) 2021-09-16 21:04:54 -10:00
Sean Vig 6d99a7a730 Add unique id to amcrest sensors (#55243)
* Add unique id to amcrest sensors

* Change 'unique_id' to 'serial_number' on api wrapper

* Update unique id's with channel value that can be used in future changes and remove unrelated camera changes
2021-09-17 07:48:17 +02:00
Joakim Plate 175f207d28 Avoid sending Standby when already off (#56306) 2021-09-17 06:50:46 +02:00
Erik Montnemery 8341ae12d3 Mock out zeroconf in homekit_controller tests (#56307) 2021-09-16 11:29:41 -10:00
jan iversen 70eb519f76 Update template/test_light.py to use pytest (#56300) 2021-09-16 11:05:00 -07:00
jan iversen 94f06f86cf Activate mypy for gpmdp. (#55967) 2021-09-16 20:05:08 +03:00
Erik Montnemery 15a7fe219d Bump pychromecast to 9.2.1 (#56296) 2021-09-16 20:01:02 +03:00
Maciej Bieniek 41bf1eb610 Fetch the data a second time when -9999 error occurs in Xiaomi Miio integration (#56288) 2021-09-16 09:19:41 -07:00
Shay Levy 8418d4ade2 Address Switcher late review comments (#56264)
* Address Switcher late review comments

* Rename wrapper to coordinator
2021-09-16 17:06:58 +02:00
Chris Browet 1609d069bb Fix Meteoalarm expired alerts (#56255) 2021-09-16 16:07:53 +02:00
Paul Owen 28b4b5407b Fix return value of preset_mode in hive climate (#56247) 2021-09-16 13:57:42 +02:00
jjlawren 0438c9308c Delay startup for cert_expiry to allow for self checks (#56266)
* Delay startup of cert_expiry

* Update tests
2021-09-16 13:31:36 +02:00
Erik Montnemery c668dcb1ac Allow smaller step size for input number (#56211)
* Allow smaller step size for input number

* Tweak

* Tweak
2021-09-16 11:07:14 +02:00
Erik Montnemery 8c5efafdd8 Add 5-minute statistics for sensors (#56006)
* Add 5-minute statistics for sensors

* Address pylint issues

* Black

* Apply suggestion from code review

* Apply suggestions from code review

* Improve tests
2021-09-16 10:57:15 +02:00
Malachi Soord 0656407561 Upgrade pylast from 4.2.0 to 4.2.1 (#56015)
* Upgrade pylast from 4.2.0 to 4.2.1

* Fix test

* Use MockNetwork

* Tidy

* Fix lint
2021-09-16 07:00:25 +02:00
Sean Vig 69ff7a968a Bump amcrest version to 1.9.2 (#56281) 2021-09-16 06:53:40 +02:00
Daniel Hjelseth Høyer 4eb656d5d9 Fix Surepetcare string reference (#56262)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-15 22:18:35 +02:00
Aaron Bach ecd827722b Bump pyopenuv to 2.2.1 (#56270) 2021-09-15 21:05:12 +02:00
Daniel Hjelseth Høyer c5544550b4 Deprecate Surepetcare yaml config (#56209) 2021-09-15 10:43:39 +02:00
muppet3000 19054e1ffe Bump growattServer to 1.1.0 (#56084) 2021-09-15 10:08:15 +02:00
jjlawren 0619069ae6 Avoid a zeroconf race condition (#56240) 2021-09-14 22:07:31 -10:00
jan iversen 53d5a59257 Activate mypy for directv (#55963)
* Activate mypy for directv.

* Activate mypy for directv.
2021-09-15 07:58:04 +02:00
Shulyaka ddfe94187e generic_hygrostat: enable tests (#56193) 2021-09-15 07:55:43 +02:00
epenet 0d842a8f01 Adjust charging_power unit (#56167) 2021-09-15 07:54:56 +02:00
Steven Looman 30c25d4448 Clean up upnp YAML config (#56200)
* Put back local_ip option to config schema + deprecate config schema

* More cleanup

* Remove log

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-15 06:57:02 +02:00
Paulus Schoutsen 0a426b5686 Bump aiohue to 2.6.2 (#56234) 2021-09-15 06:23:19 +02:00
J. Nick Koston 98cf34c7c3 Bump zeroconf to 0.36.3 (#56233) 2021-09-14 13:02:37 -10:00
jan iversen 692f611109 Update template/test_fan.py to use pytest (#56215) 2021-09-14 13:51:46 -07:00
Aaron Bach bbc75b5c00 Add long-term statistics for Flu Near You sensors (#55416) 2021-09-14 22:09:45 +02:00
Aaron Bach 441e99b439 Add long-term statistics for AirVisual sensors (#55415) 2021-09-14 22:08:54 +02:00
jan iversen 96a9af8cc4 Update template/test_weather.py to use pytest (#56223) 2021-09-14 13:06:55 -07:00
Aaron Bach 2c348dd2d7 Add long-term statistics for RainMachine sensors (#55418)
* Add long-term statistics for RainMachine sensors

* Code review
2021-09-14 22:06:40 +02:00
jan iversen 4b2ff0a0ba Update template/alarm_control_panel.py to use pytest (#56229) 2021-09-14 13:06:29 -07:00
Marc Mueller 2b51896d7a Use EntityDescription - vicare (#55932)
* Use EntityDescription - vicare binary_sensor

* Use EntityDescription - vicare sensor

* Fix typing

* Remove default values

* Fix pylint
2021-09-14 22:06:06 +02:00
Aaron Bach 0364922d80 Add long-term statistics for AirNow sensors (#56230) 2021-09-14 22:04:55 +02:00
Ricardo Steijn 2a51bb5bba Add Crownstone integration (#50677) 2021-09-14 09:46:52 -10:00
Erik Montnemery bac55b78fe Enforce device class for gas and energy sensors used by energy dashboard (#56218)
* Enforce device class for gas and energy sensors used by energy dashboard

* Adjust tests
2021-09-14 16:56:36 +02:00
jan iversen aaa62dadec Add service to stop/restart modbus (#55599)
* Add service to stop/restart modbus.

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-14 09:42:50 +02:00
dependabot[bot] 31623368c8 Bump codecov/codecov-action from 2.0.3 to 2.1.0 (#56210)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 2.0.3 to 2.1.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v2.0.3...v2.1.0)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  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>
2021-09-14 08:50:29 +02:00
Daniel Hjelseth Høyer dba2998e8c Clean up Surepetcare binary sensor (#56070) 2021-09-14 08:44:20 +02:00
Alexei Chetroi fe1311ba34 Bump up zha dependencies (#56206) 2021-09-13 21:27:29 -04:00
Robert Hillis 14aa9c91eb Add Config Flow to Modem Caller ID integration (#46677)
* Add phone_modem integration

* Use original domain

* Add init tests for Modem Caller ID

* Clean up tests

* Clean up tests

* apply suggestions

* Fix tests

* Make only one instance possible

* Allow more than 1 device and remove hangup service

* simplify already configured

* Update sensor.py

* Update config_flow.py

* Fix manifest

* More cleanup

* Fix tests

* Ue target

* Clean up sensor.py

* Minor tweaks

* Close modem on restart and unload

* Update requirements

* fix tests

* Bump phone_modem

* rework

* add typing

* use async_setup_platform

* typing

* tweak

* cleanup

* fix init

* preserve original name

* remove callback line

* use list of serial devices on host

* tweak

* rework

* Rework for usb dicsovery

* Update requirements_test_all.txt

* Update config_flow.py

* tweaks

* tweak

* move api out of try statement

* suggested tweaks

* clean up

* typing

* tweak

* tweak

* async name the service
2021-09-13 14:22:54 -10:00
tube0013 9bb9f0e070 Add description to match TubesZB Coordinators for USB Discovery (#56201) 2021-09-13 11:22:55 -10:00
Brian Egge 8d87f4148b Fix generic thermostat switch state initialization (#56073) 2021-09-13 22:27:06 +02:00
Abílio Costa c869b78ac1 Add Whirlpool integration (#48346)
* Add Whirlpool integration

* Apply suggestions from code review

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

* Apply suggestions from code review

* Fix lint

* Fix lint and tests

* Apply suggestions from code review

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

* Use dict lookups

* Lint

* Apply code changes from PR review

* Do real integration setup in tests

* Apply suggestions from review & fix test

* Replace get with array operator

* Add suggestions from code review

* Rename test var

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-13 10:02:34 -10:00
Martin Ilievski f023ec24d7 Bump pykodi to 0.2.6 (#56148) 2021-09-13 10:00:10 -10:00
Daniel Hjelseth Høyer f9de8fb49a Surepetcare config flow (#56127)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-13 09:57:06 -10:00
Michael d661a76462 Use entity description and set state class to all System Monitor sensors (#56140) 2021-09-13 09:55:33 -10:00
Joakim Sørensen 20d96ef4ef Update docker base image to 2021.09.0 (#56191) 2021-09-13 21:11:10 +02:00
Erik Montnemery 17efafb2ea Do not set assumed state for binary sensor groups (#56190) 2021-09-13 10:40:24 -07:00
Bram Kragten 86d24bec75 Update icons for MDI 6 (#56170) 2021-09-13 19:29:38 +02:00
starkillerOG 5f86388f1c Netgear config flow (#54479)
* Original work from Quentame

* Small adjustments

* Add properties and method_version

* fix unknown name

* add consider_home functionality

* fix typo

* fix key

* swao setup order

* use formatted mac

* add tracked_list option

* add options flow

* add config flow

* add config flow

* clean up registries

* only remove if no other integration has that device

* tracked_list formatting

* convert tracked list

* add import

* move imports

* use new tracked list on update

* use update_device instead of remove

* add strings

* initialize already known devices

* Update router.py

* Update router.py

* Update router.py

* small fixes

* styling

* fix typing

* fix spelling

* Update router.py

* get model of router

* add router device info

* fix api

* add listeners

* update router device info

* remove method version option

* Update __init__.py

* fix styling

* ignore typing

* remove typing

* fix mypy config

* Update mypy.ini

* add options flow tests

* Update .coveragerc

* fix styling

* Update homeassistant/components/netgear/__init__.py

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

* Update homeassistant/components/netgear/__init__.py

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

* Update homeassistant/components/netgear/__init__.py

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

* Update homeassistant/components/netgear/config_flow.py

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

* Update homeassistant/components/netgear/router.py

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

* add ConfigEntryNotReady

* Update router.py

* use entry.async_on_unload

* Update homeassistant/components/netgear/device_tracker.py

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

* use cv.ensure_list_csv

* add hostname property

* Update device_tracker.py

* fix typo

* fix isort

* add myself to codeowners

* clean config flow

* further clean config flow

* deprecate old netgear discovery

* split out _async_remove_untracked_registries

* Update homeassistant/components/netgear/config_flow.py

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

* Update homeassistant/components/netgear/config_flow.py

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

* cleanup

* fix rename

* fix typo

* remove URL option

* fixes

* add sensor platform

* fixes

* fix removing multiple entities

* remove extra attributes

* initialize sensors correctly

* extra sensors disabled by default

* fix styling and unused imports

* fix tests

* Update .coveragerc

* fix requirements

* remove tracked list

* remove tracked registry editing

* fix styling

* fix discovery test

* simplify unload

* Update homeassistant/components/netgear/router.py

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

* add typing

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

* add typing

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

* add typing

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

* condense NetgearSensorEntities

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

* Update homeassistant/components/netgear/router.py

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

* Update homeassistant/components/netgear/router.py

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

* Update homeassistant/components/netgear/router.py

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

* Update homeassistant/components/netgear/router.py

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

* add typing

* styling

* add typing

* use ForwardRefrence for typing

* Update homeassistant/components/netgear/device_tracker.py

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

* add typing

* Apply suggestions from code review

Thanks!

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

* process review comments

* fix styling

* fix devicename not available on all models

* ensure DeviceName is not needed

* Update homeassistant/components/netgear/config_flow.py

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

* Update homeassistant/components/netgear/config_flow.py

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

* Update __init__.py

* fix styling

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-13 18:18:21 +02:00
jjlawren 37f263e2ac Bump plexapi to 4.7.1 (#56163) 2021-09-13 15:46:54 +02:00
Brian Egge e638e5bb42 Add component for binary sensor groups (#55365)
* Add component for binary sensor groups
https://github.com/home-assistant/home-assistant.io/pull/19239

* Accidental push over prior commit

* Add test for any case

* Add unavailable attribute and tests for unique_id

* Added tests for attributes

link to documentation: https://github.com/home-assistant/home-assistant.io/pull/19297
2021-09-13 15:28:37 +02:00
Vilppu Vuorinen ee616ed992 Support hvac mode in melcloud climate.set_temperature service (#56082)
Setting the HVAC_MODE via the set_temperature service has not been
possible before this change.
2021-09-13 14:14:47 +02:00
epenet 5ccc3c17d9 Use list comprehension in onewire entity descriptions (#56168)
* Use list comprehension in onewire binary sensors

* Use list comprehension in onewire switches
2021-09-13 13:46:21 +02:00
Erik Montnemery d899d15a1e Add statistics validation (#56020)
* Add statistics validation

* Remove redundant None-check

* Move validate_statistics WS API to recorder

* Apply suggestion from code review
2021-09-13 13:44:22 +02:00
Erik Montnemery d2a9f7904a Include end time of statistics data points in API response (#56063)
* Include end time of statistics data points in API response

* Correct typing

* Update tests
2021-09-13 10:02:24 +02:00
Shay Levy e9eb76c7db Add switch support for RPC device (#56153)
* Add switch support for RPC device

* Apply review comments

* Apply review comments
2021-09-13 09:31:35 +03:00
Maikel Punie 7472fb2049 Switch velbus from python-velbus to velbusaio (#54032)
* initial commit

* use new release

* Update for sensors

* big update

* pylint fixes, bump dependancy to 2021.8.2

* New version to try to fix the tests

* Fix a lot of errors, bump version

* more work

* Bump version

* Adde dimmer support

* Make sure the counters are useable in the energy dashboard

* bump version

* Fix testcases

* Update after review

* Bump version to be able to have some decent exception catches, add the temperature device class

* Readd the import of the platform from config file, but add a deprecation warning

* More comments updated

* Fix lefover index

* Fix unique id to be backwards compatible

* Fix small bug in covers

* Fix testcases

* Changes for theenery dashboard

* Fixed services

* Fix memo text

* Make the interface for a service the port string instead of the device selector

* Fix set_memo_text

* added an async scan task, more comments

* Accidently disabled some paltforms

* More comments, bump version

* Bump version, add extra attributes, enable mypy

* Removed new features

* More comments

* Bump version

* Update homeassistant/components/velbus/__init__.py

Co-authored-by: brefra <frank_van_breugel@hotmail.com>

* Readd the import step

Co-authored-by: brefra <frank_van_breugel@hotmail.com>
2021-09-13 08:22:46 +02:00
jan iversen 1f997fcd58 Update pymodbus fixtures to use autospec (#55686) 2021-09-12 21:16:48 -07:00
Sean Vig a180c3f813 Fix polling on online Amcrest binary sensor (#56106) 2021-09-12 20:45:52 -07:00
Paulus Schoutsen 32212651fe Add zeroconf discovery to Hue (#55358)
* Add zeroconf discovery to Hue

* Add coverage for already exists case

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-12 20:00:51 -07:00
joshs85 41b25a765c Changed wording of bond state belief feature from belief to tracked state (#56147)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-12 15:46:43 -10:00
jan iversen 990d474d02 use fixtures. (#56130) 2021-09-12 15:08:46 -07:00
J. Nick Koston 673519f6bf Prefer more targeted matchers in USB discovery (#56142)
- If there is a more targeted match it should win discovery
2021-09-12 15:07:40 -07:00
J. Nick Koston 0fc89780e9 Fix listener leak in HomeKit on reload (#56143)
* Fix listener leak in HomeKit on reload

* Fix mocking
2021-09-12 15:06:03 -07:00
Aaron Bach 4e8db7173a Use EntityDescription - iqvia (#55218) 2021-09-12 09:34:44 -06:00
Greg Thornton f1556ead6d Don't cache HomeKit camera stream source from entity (#56136) 2021-09-12 08:09:09 -07:00
Marc Mueller 2b019b0911 Use EntityDescription - xiaomi_aqara (#55931)
* Use EntityDescription - xiaomi_aqara

* Remove default values

* Add missing SENSOR_TYPES
2021-09-12 12:48:02 +02:00
cdheiser ec28f7eef2 Don't return a unique_id if Lutron doesn't have a UUID for the device. (#56113)
This is a workaround for https://github.com/thecynic/pylutron/issues/70

Co-authored-by: cdheiser <cdheiser@users.noreply.github.com>
2021-09-12 09:24:02 +02:00
Daniel Hjelseth Høyer 4a449902a5 Surepetcare, upgrade library (#56067)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-12 08:12:32 +02:00
J. Nick Koston 2b7cdb70a8 Ensure rainmachine device name is a string (#56121) 2021-09-11 21:38:34 -06:00
Greg Thornton 371aa03bca Add audio support option to HomeKit camera UI config flow (#56107) 2021-09-11 16:41:30 -10:00
J. Nick Koston eff59e8b00 Use the same server name for all HomeKit bridges (#55860) 2021-09-11 19:00:26 -07:00
J. Nick Koston 459bc55e32 Bump HAP-python to 4.2.1 (#55804) 2021-09-11 18:58:19 -07:00
Steven Looman 73260c5b88 Move parts of ssdp to async_upnp_client (#55540)
* Move parts of ssdp to async_upnp_client

* Fix test for environments with multiple sources

* Fix sonos tests

* More fixes/changes

* More fixes

* Use async_upnp_client==0.21.0

* Pylint/test fixes

* More changes after review

* Fix tests

* Improve testing

* Fix mypy

* Fix yamaha_musiccast tests?

* Changes after review

* Pylint

* Reduce calls to combined_headers

* Update to async_upnp_client==0.21.1

* Update to async_upnp_client==0.21.2

* use as_dict

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-11 13:38:16 -10:00
Shay Levy f1a88f0563 Add config flow support for RPC device (#56118) 2021-09-11 23:28:33 +03:00
Paulus Schoutsen ddb0a6092f Merge pull request #56116 from home-assistant/rc 2021-09-11 13:02:14 -07:00
Jaroslav Hanslík a4a6bf8a85 New icon names based on MDI 6.1.95 (#56085) 2021-09-11 12:34:31 -07:00
Joakim Sørensen bcb3c426f4 Blank out discovery info (#56097) 2021-09-11 12:34:19 -07:00
Paulus Schoutsen 64fd496932 Bump frontend to 20210911.0 (#56115) 2021-09-11 12:34:01 -07:00
Paulus Schoutsen 292c05ab9f Bumped version to 2021.9.6 2021-09-11 12:02:44 -07:00
ehendrix23 a900c02c10 Bump pymyq to 3.1.4 (#56089) 2021-09-11 12:02:39 -07:00
Paulus Schoutsen 0cfbff3ff9 Fix singleton not working with falsey values (#56072) 2021-09-11 12:02:38 -07:00
Sean Vig ee892beceb Bump amcrest version to 1.8.1 (#56058)
The current version of the `amcrest` package has a bug in exposing if
the video stream is enabled, which leads to the substream status being
used to set if the camera is on or off.  The updated version of
`amcrest` fixes this bug.

Fixes #55661
2021-09-11 12:02:37 -07:00
micha91 fe713b943f Fix UDP message handling by upgrading aiomusiccast to 0.9.2 (#56041) 2021-09-11 12:02:36 -07:00
Erik Montnemery 2079956350 Suppress last_reset deprecation warning for energy cost sensor (#56037) 2021-09-11 12:02:36 -07:00
Erik Montnemery c424f99aab Correct confusing log message in sensor statistics (#56016) 2021-09-11 12:02:35 -07:00
Paulus Schoutsen 8a611eb640 Fix singleton not working with falsey values (#56072) 2021-09-11 12:02:01 -07:00
Oxan van Leeuwen 6e7ce89c64 Fix attribute access on None on startup in ESPHome (#56105) 2021-09-11 20:53:29 +02:00
jan iversen cb8c0cb123 Update template/test_lock.py to use pytest (#56102) 2021-09-11 11:48:25 -07:00
Ruslan Sayfutdinov a9ed4fa405 Bump awesomeversion to 21.8.1 (#55817) 2021-09-11 11:40:46 -07:00
Aaron Bach ed9b271fd0 Enforce strict typing for IQVIA (#53408)
* Enforce strict typing for IQVIA

* Cleanup

* Code review

* Ignore untyped numpy function
2021-09-11 12:27:13 -06:00
Joakim Sørensen 1b46190a0c Add view to get installation type during onboarding (#56095) 2021-09-11 15:38:38 +02:00
Vilppu Vuorinen ec21c5f4a9 Update pymelcloud to 2.5.4 (#56096) 2021-09-11 12:51:04 +02:00
Brent Petit 97f28878bb Add state_class to Ecobee sensors (#55996) 2021-09-10 22:00:24 -07:00
Michael b11db0b1d7 Remove unnecessary extra attribute from NUT sensors (#56078) 2021-09-10 19:17:46 -07:00
ehendrix23 bd18bc9f3a Bump pymyq to 3.1.4 (#56089) 2021-09-10 19:09:54 -07:00
Raman Gupta c785983cce Handle entity creation on new added zwave_js value (#55987)
* Handle new entity creation when a new value is added

* spacing

* Update homeassistant/components/zwave_js/__init__.py

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

* change variable name and use asyncio.gather

* Centralized where discovered value IDs gets managed

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-10 23:49:31 +02:00
Shay Levy 8c3c2ad8e3 Updated changes for aioshelly 1.0.0 (#56083) 2021-09-11 00:48:55 +03:00
jan iversen ac1251c52b Update template/test_trigger.py to use pytest (#55950) 2021-09-10 09:55:51 -07:00
Paulus Schoutsen dec7877671 Handle logout prefs update for Google/Alexa (#56045) 2021-09-10 09:08:43 -07:00
Erik Montnemery 443147e132 Wait for entities when updating energy preferences (#56057) 2021-09-10 09:07:52 -07:00
Joakim Sørensen c59540cfc7 Revert "Bump pillow to 8.3.2 (#55970)" (#56048)
This reverts commit ee7202d10a.
2021-09-10 17:01:51 +02:00
Daniel Hjelseth Høyer aa39e582c3 Surepetcare, fix late review (#56065)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-10 16:49:42 +02:00
Sean Vig 03df48af9c Bump amcrest version to 1.8.1 (#56058)
The current version of the `amcrest` package has a bug in exposing if
the video stream is enabled, which leads to the substream status being
used to set if the camera is on or off.  The updated version of
`amcrest` fixes this bug.

Fixes #55661
2021-09-10 15:38:01 +02:00
micha91 948a942a0d Fix UDP message handling by upgrading aiomusiccast to 0.9.2 (#56041) 2021-09-10 15:03:34 +02:00
Erik Montnemery d5a8f1af1d Revert "Suppress last_reset deprecation warning for energy cost sensor (#56037)" (#56042)
This reverts commit e990ef249d.
2021-09-10 11:27:47 +02:00
J. Nick Koston ff1b39cda6 Fix circular import of scapy in dhcp (#56040)
* Fix circular import of scapy in dhcp

* Tweak import, add comment

* Tweak import, add comment

* pylint
2021-09-10 10:04:54 +02:00
Oxan van Leeuwen 970a7f9662 Fix compounds in sensor device class comments (#55900) 2021-09-10 09:46:21 +02:00
Erik Montnemery 78909b5227 Add support for state class total to energy cost sensor (#55955)
* Add support for all state classes to energy cost sensor

* Fix bug, adjust tests

* Fix rebase mistake
2021-09-10 09:05:32 +02:00
Erik Montnemery e990ef249d Suppress last_reset deprecation warning for energy cost sensor (#56037) 2021-09-10 08:59:23 +02:00
Daniel Hjelseth Høyer c27ad3078a Surepetcare, use DataUpdateCoordinator (#55982)
* Surepetcare, use dataupdater

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

* Review comment

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

* Apply suggestions from code review

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

* style

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-10 08:37:00 +02:00
Erik Montnemery 89281a273c Correct confusing log message in sensor statistics (#56016) 2021-09-09 23:26:29 -07:00
wranglatang e3a7a253ea Add nut Watts datapoint (#55491)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-10 06:02:06 +02:00
J. Nick Koston 5709640453 Report integrations that block startup wrap up (#56003) 2021-09-09 20:39:22 -07:00
Erik Montnemery 2a8121bdcd Really change character set of statistics_meta table to utf8 (#56029) 2021-09-09 22:55:51 +02:00
Raman Gupta 1fd3faf766 Fix state class for zwave_js energy entities (#56026) 2021-09-09 16:19:28 -04:00
Erik Montnemery 3af4b2639b Exclude @overload from coverage (#56021) 2021-09-09 21:24:23 +02:00
popoviciri f79de2a5bc Bump pysma to 0.6.6 & Fix Unit Checks (#56018) 2021-09-09 20:19:49 +02:00
Raman Gupta 113288cb1f Fix zwave_js/node_state WS API command (#55979)
* Fix zwave_js/node_state WS API command

* Add negative assertion check to avoid regression

* Update tests/components/zwave_js/test_api.py

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

* use constant

Co-authored-by: jan iversen <jancasacondor@gmail.com>
2021-09-09 14:04:27 -04:00
Erik Montnemery 88dbc6373f Make sure character set of events, states tables is utf8 (#56012)
* Make sure character set of events, states tables is utf8

* Pylint

* Apply suggestions from code review
2021-09-09 19:26:28 +02:00
Oscar Calvo 1b0e014783 Support incoming SMS messages via polling (#54237)
* Add support to incomming SMS via polling

* Update dependencies

* Only send notification for unread messages

* Only inform if callback is not getting used

* Update gateway.py

* Apply PR feedback

* Update homeassistant/components/sms/gateway.py

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

* Apply PR comments

* Make black happy

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-09 18:29:11 +02:00
Erik Montnemery a47532c69b Change character set of statistics_meta table to utf8 (#56011) 2021-09-09 17:24:20 +02:00
uvjustin dd9bfe7aa0 Add package constraint anyio>=3.3.1 (#55997) 2021-09-09 15:33:09 +02:00
Jean-Yves Avenard 556dcf6abb Add iotawatt high-accuracy energy readout sensors (#55512) 2021-09-09 15:32:43 +02:00
joshs85 011817b122 Add state belief services to bond integration (#54735)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-09 15:32:32 +02:00
Adam Feldman cbbbc3c4f0 Add state class to Smart Meter Texas sensor (#55665) 2021-09-09 15:32:03 +02:00
jan iversen 9d2861afe3 Add mypy to elkm1. (#55964) 2021-09-09 13:14:28 +02:00
cnico 065e858a03 Address post merge review of flipr binary sensor (#55983) 2021-09-09 09:45:58 +02:00
Erik Montnemery 80fd330479 Add sum_decrease and sum_increase statistics (#55850) 2021-09-08 23:35:53 -07:00
Joakim Plate a8cbb949fa Rfxtrx drop yaml configuration (#54173) 2021-09-08 22:17:02 -07:00
Alan Tse 98ecf2888c Remove tesla integration (#55988)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-08 22:12:03 -07:00
GitHub Action 675426dc25 [ci skip] Translation update 2021-09-09 00:11:32 +00:00
Erik Montnemery a1aca20818 Address review comment from #55833 (#55985) 2021-09-08 13:48:31 -07:00
Paulus Schoutsen 5cc54618c5 Merge pull request #55969 from home-assistant/rc 2021-09-08 13:42:09 -07:00
Philip Allgaier 4d2432cffb Consistent lower-case spelling of "optional" (#55976) 2021-09-08 22:16:12 +02:00
Erik Montnemery 8f344252c4 Add significant change support to AQI type sensors (#55833) 2021-09-08 12:47:59 -07:00
Erik Montnemery 232943c93d Add significant change support to AQI type sensors (#55833) 2021-09-08 12:47:48 -07:00
Erik Montnemery cbe4b2dc1d Add support for state class measurement to energy cost sensor (#55962) 2021-09-08 12:46:43 -07:00
Erik Montnemery bb6c2093a2 Add support for state class measurement to energy cost sensor (#55962) 2021-09-08 12:46:28 -07:00
Paulus Schoutsen a17d2d7c71 Fix gas validation (#55886) 2021-09-08 12:45:41 -07:00
Paulus Schoutsen ee7202d10a Bump pillow to 8.3.2 (#55970) 2021-09-08 12:06:30 -07:00
Ruslan Sayfutdinov e3815c6c2e Pin setuptools<58 2021-09-08 12:04:32 -07:00
Paulus Schoutsen 5cba7932f3 Bumped version to 2021.9.5 2021-09-08 08:22:38 -07:00
Erik Montnemery 413430bdba Fix handling of imperial units in long term statistics (#55959) 2021-09-08 08:22:34 -07:00
Erik Montnemery 81462d8655 Do not allow inf or nan sensor states in statistics (#55943) 2021-09-08 08:22:33 -07:00
Erik Montnemery 8ee4b49aa9 Do not let one bad statistic spoil the bunch (#55942) 2021-09-08 08:22:32 -07:00
Shay Levy 19d7cb4439 Bump aioswitcher to 2.0.5 (#55934) 2021-09-08 08:22:31 -07:00
Raman Gupta 21ebf4f3e6 Allow multiple template.select platform entries (#55908) 2021-09-08 08:22:31 -07:00
Maciej Bieniek 980fcef36f Fix available property for Xiaomi Miio fan platform (#55889)
* Fix available

* Suggested change
2021-09-08 08:22:30 -07:00
Diogo Gomes e7fd24eade Integration Sensor Initial State (#55875)
* initial state is UNAVAILABLE

* update tests
2021-09-08 08:22:08 -07:00
Pascal Winters 9ecb75dc70 Edit unit of measurement for gas/electricity supplier prices (#55771)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-08 08:20:49 -07:00
RDFurman 7f3adce675 Try to avoid rate limiting in honeywell (#55304)
* Limit parallel update and sleep loop

* Use asyncio sleep instead

* Extract sleep to const for testing

* Make loop sleep 0 in test
2021-09-08 08:20:48 -07:00
Erik Montnemery 27764e9985 Fix handling of imperial units in long term statistics (#55959) 2021-09-08 08:08:48 -07:00
Erik Montnemery 9f1e503784 Do not allow inf or nan sensor states in statistics (#55943) 2021-09-08 08:05:16 -07:00
Erik Montnemery 22e6ddf8df Do not let one bad statistic spoil the bunch (#55942) 2021-09-08 07:55:40 -07:00
Shay Levy c514f72c70 Bump aioswitcher to 2.0.5 (#55934) 2021-09-08 07:54:44 -07:00
Diogo Gomes 84140a547b deprecated unit_of_measurement (#55876) 2021-09-08 16:33:53 +02:00
Marc Mueller 0b23ce658e Use EntityDescription - konnected (#55923) 2021-09-08 15:14:03 +02:00
Marc Mueller 32b8be5a6e Use EntityDescription - repetier (#55926) 2021-09-08 14:28:04 +02:00
Marc Mueller 69d6d5ffce Use EntityDescription - incomfort (#55930) 2021-09-08 08:51:17 +02:00
Marc Mueller 5429a67877 Use EntityDescription - zoneminder (#55922) 2021-09-08 08:48:55 +02:00
Ruslan Sayfutdinov 7195b8222b Bump PyJWT to 2.1.0 (#55911) 2021-09-07 20:59:02 -07:00
Pascal Winters a764c79b6f Edit unit of measurement for gas/electricity supplier prices (#55771)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-07 20:54:40 -07:00
Paulus Schoutsen ec337101dd Fix gas validation (#55886) 2021-09-07 20:53:43 -07:00
Fuzzy efafe82799 Remove Trackr integration (API removed) (#55917)
* Delete Trackr component directory

* Update .coverage.rc to remove Trackr

* Update requirements_all.txt
2021-09-08 05:01:58 +02:00
GitHub Action f9e6e616f4 [ci skip] Translation update 2021-09-08 00:10:52 +00:00
Raman Gupta 37d75e8a03 Allow multiple template.select platform entries (#55908) 2021-09-07 14:50:07 -07:00
Marc Mueller 42f586c585 Fix upnp add_entities (#55904)
* Fix upnp add_entities

* Remove nesting level
2021-09-07 22:27:03 +02:00
Diogo Gomes d705b35ea1 Address comment in integration Riemann sum PR #55875 (#55895)
* https://github.com/home-assistant/core/pull/55875\#discussion_r703334504

* missing test update
2021-09-07 19:40:20 +02:00
Ville Skyttä 0684f8bddf Add date device class (#55887)
* Add date device class

https://github.com/home-assistant/architecture/discussions/610

* Add date device class to sensors device classes list
2021-09-07 16:46:12 +02:00
RDFurman 3aed58f825 Try to avoid rate limiting in honeywell (#55304)
* Limit parallel update and sleep loop

* Use asyncio sleep instead

* Extract sleep to const for testing

* Make loop sleep 0 in test
2021-09-07 16:32:26 +02:00
Maciej Bieniek 86247c93fc Fix available property for Xiaomi Miio fan platform (#55889)
* Fix available

* Suggested change
2021-09-07 11:34:41 +02:00
cnico 53ea24ec15 Add Flipr binary sensor (#53525) 2021-09-07 09:52:42 +02:00
Michael 2f3a11f930 Rewrite re-auth mechanism in Synology DSM integration (#54298) 2021-09-07 09:10:50 +02:00
Erik Montnemery 0d1412ea17 Set state class to total for net utility_meter sensors (#55877)
* Set state class to total for net utility_meter sensors

* Update tests
2021-09-07 08:13:14 +02:00
Diogo Gomes 1ca9deb520 Integration Sensor Initial State (#55875)
* initial state is UNAVAILABLE

* update tests
2021-09-07 08:12:54 +02:00
Sean Vig 789f21c427 Fix assignment of amcrest camera model (#55266) 2021-09-07 04:52:45 +02:00
GitHub Action 9da3fa5d75 [ci skip] Translation update 2021-09-07 00:11:29 +00:00
Paulus Schoutsen 93083513b4 Bump hass-nabucasa 49 (#55823) 2021-09-06 16:05:33 -07:00
Paulus Schoutsen f0649855f9 Merge pull request #55870 from home-assistant/rc 2021-09-06 16:05:08 -07:00
Alexei Chetroi c6888e4faf Refactor ZHA tests (#55844)
* Replace ZHA tests FakeDevice

* Refactor ZHA tests to use zigpy devices and endpoints

* Use common consts for zigpy device mocks

Use the same dict key names for device signature mocks as zha quirks.

* Use const for test device list

* Update tests/components/zha/common.py
2021-09-06 19:00:06 -04:00
Erik Montnemery b1dbdec2ea Set state class to total for Integration sensors (#55872) 2021-09-07 00:27:31 +02:00
puddly 6895081595 Use async_update_entry in config unit test instead of modifying data (#55855) 2021-09-06 16:57:59 -04:00
Paulus Schoutsen 823c3735ce Bumped version to 2021.9.4 2021-09-06 13:41:39 -07:00
Diogo Gomes 68131a5c00 Integration Sensor unit of measurement overwrite (#55869) 2021-09-06 13:41:33 -07:00
J. Nick Koston be0f767c34 Fix exception during rediscovery of ignored zha config entries (#55859)
Fixes #55709
2021-09-06 13:41:33 -07:00
Maciej Bieniek 450652a501 Fix target humidity step for Xiaomi MJJSQ humidifiers (#55858) 2021-09-06 13:41:32 -07:00
Daniel Hjelseth Høyer 8523f569c0 Surepetcare, bug fix (#55842) 2021-09-06 13:41:31 -07:00
mrwhite31 5f289434d3 Fix typo in in rfxtrx Barometer sensor (#55839)
Fix typo in sensor.py to fix barometer unavailability
2021-09-06 13:41:31 -07:00
Maciej Bieniek 3df6dfecab Fix a lazy preset mode update for Xiaomi Miio fans (#55837) 2021-09-06 13:41:30 -07:00
Martin Hjelmare d6eda65302 Bump zwave-js-server-python to 0.30.0 (#55831) 2021-09-06 13:41:29 -07:00
Brandon Rothweiler 7a5bc2784a Upgrade pymazda to 0.2.1 (#55820) 2021-09-06 13:41:28 -07:00
David Bonnes 00878467cc Fix incomfort min/max temperatures (#55806) 2021-09-06 13:41:28 -07:00
Maciej Bieniek 899d8164b0 Fix xiaomi miio Air Quality Monitor initialization (#55773) 2021-09-06 13:41:27 -07:00
jan iversen 823fd60991 Allow same address different register types in modbus (#55767) 2021-09-06 13:41:26 -07:00
jan iversen a6bb0eadca Allow same IP if ports are different on modbus (#55766) 2021-09-06 13:41:25 -07:00
Tatham Oddie eb70354ee7 Fix logbook entity_matches_only query mode (#55761)
The string matching template needs to match the same compact JSON format
as the data is now written in.
2021-09-06 13:41:25 -07:00
Joshi bd53185bed Fix switch name attribute for thinkingcleaner (#55730) 2021-09-06 13:41:24 -07:00
Diogo Gomes 34d54511e8 Integration Sensor unit of measurement overwrite (#55869) 2021-09-06 13:41:01 -07:00
jan iversen 8d4aac618d Allow same IP if ports are different on modbus (#55766) 2021-09-06 13:40:15 -07:00
Tatham Oddie 4fa9871080 Fix logbook entity_matches_only query mode (#55761)
The string matching template needs to match the same compact JSON format
as the data is now written in.
2021-09-06 13:39:39 -07:00
Martin Hjelmare b088ce601c Bump zwave-js-server-python to 0.30.0 (#55831) 2021-09-06 13:37:12 -07:00
Daniel Hjelseth Høyer bcfedeb797 Surepetcare, bug fix (#55842) 2021-09-06 13:36:45 -07:00
Maciej Bieniek 9093819671 Fix target humidity step for Xiaomi MJJSQ humidifiers (#55858) 2021-09-06 13:36:18 -07:00
jan iversen cac3e1acfa Allow same address different register types in modbus (#55767) 2021-09-06 13:35:40 -07:00
J. Nick Koston eba9b61011 Fix exception during rediscovery of ignored zha config entries (#55859)
Fixes #55709
2021-09-06 13:35:24 -07:00
Joshi 0533a9c714 Fix switch name attribute for thinkingcleaner (#55730) 2021-09-06 14:03:46 -05:00
Brandon Rothweiler 12b1f87b35 Upgrade pymazda to 0.2.1 (#55820) 2021-09-06 13:53:03 -05:00
Simone Chemelli 8b6d0ca13f Replace util.get_local_ip in favor of components.network.async_get_source_ip() - part 2 (#53368)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-06 08:44:38 -10:00
Erik Montnemery dd7dea9a3f Make scapy imports in DHCP local (#55647) 2021-09-06 10:10:27 -07:00
Erik Montnemery b99a22cd4d Re-add state_class total to sensor (#55103)
* Re-add state_class total to sensor

* Make energy cost sensor enforce state_class total_increasing

* Bump deprecation of last_reset for state_class measurement

* Correct rebase mistakes
2021-09-06 18:28:58 +02:00
starkillerOG 2634949999 Add motion_blinds VerticalBlind and cleanup (#55774) 2021-09-06 16:19:02 +02:00
puddly e671ad41ec Replace zigpy-cc with zigpy-znp (#55828)
* Replace zigpy-cc with zigpy-znp in a ZHA config migration

* Fix failing unit tests
2021-09-06 09:50:54 -04:00
Maciej Bieniek 9ee0d8fefe Fix xiaomi miio Air Quality Monitor initialization (#55773) 2021-09-06 15:30:03 +02:00
mrwhite31 e6a29b6a2a Fix typo in in rfxtrx Barometer sensor (#55839)
Fix typo in sensor.py to fix barometer unavailability
2021-09-06 15:11:12 +02:00
Stefan Agner df928c80b8 Shutdown the container on abnormal signals (#55660)
So far the finish script exits whenever the service terminated by a
signal (indicated by 256 as first argument). This is the intended
behavior when SIGTERM is being sent: SIGTERM is used on regular shutdown
through the supervisor. We don't want the finish script to shutdown
itself while being taken down by the supervisor already.

However, every other signal which lead to a process exit likely means
trouble: SIGSEGV, SIGILL, etc. In those cases we want the container to
exit. The Supervisor (or restart policy of Docker in the container case)
will take care of restarting if appropriate.
2021-09-06 14:37:33 +02:00
Erik Montnemery 05abf1405d Migrate emulated_hue tests from unittest to pytest (#55794)
* Migrate emulated_hue tests from unittest to pytest

* Remove unused variables
2021-09-06 13:24:00 +02:00
Maciej Bieniek 753285eae7 Fix a lazy preset mode update for Xiaomi Miio fans (#55837) 2021-09-06 12:33:34 +02:00
David Bonnes 67b7144703 Fix incomfort min/max temperatures (#55806) 2021-09-06 12:26:20 +02:00
Andre Richter d50b700dc7 Refactor exception handling in Vallox (#55461) 2021-09-06 12:03:45 +02:00
Marc Mueller 4475cf24c8 Use EntityDescription - aqualogic (#55791) 2021-09-06 11:59:03 +02:00
Marc Mueller 3001df99cb Use EntityDescription - poolsense (#55743) 2021-09-06 11:58:47 +02:00
Philip Allgaier 364edbfd8a Add service descriptions for supervisor backup restore services (#52766)
* Add service descriptions for supervisor backup restore

* Add fields to restore services

* Update homeassistant/components/hassio/services.yaml

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-09-06 10:27:11 +02:00
Jan Bouwhuis 755835ee2e Alexa - Remove legacy speed support for fan platform (#55174)
* Remove legacy fan speed support

* remove fan range controller tests

* retrigger tests
2021-09-06 10:19:57 +02:00
Marc Mueller a4e4ffef0a Use EntityDescription - apcupsd (#55790) 2021-09-06 10:19:31 +02:00
Marc Mueller 655399eb7b Use EntityDescription - aemet (#55744) 2021-09-06 10:12:09 +02:00
Marc Mueller 77b60c712e Use EntityDescription - sabnzbd (#55788) 2021-09-06 09:54:07 +02:00
Marc Mueller a4dae0c1e1 Use EntityDescription - meteoclimatic (#55792) 2021-09-06 09:48:12 +02:00
Marc Mueller 96db04213b Use EntityDescription - vultr (#55789) 2021-09-06 09:44:33 +02:00
Marc Mueller cc6a0d2f8d Use EntityDescription - awair (#55747) 2021-09-06 09:40:41 +02:00
Marc Mueller 99ef2ae54d Use EntityDescription - vilfo (#55746) 2021-09-06 09:33:58 +02:00
jan iversen 0dd128af77 Change fix property to _attr for tradfri (#55691) 2021-09-06 08:49:00 +02:00
Greg 1b3530a3f8 Bump envoy_reader API to 0.20.0 (#55822) 2021-09-05 20:32:50 -10:00
Witold Sowa 8565821394 ZHA: Added support for ZigBee Simple Sensor device and Binary Input c… (#55819)
* ZHA: Added support for ZigBee Simple Sensor device and Binary Input cluster

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: Alexei Chetroi <lexoid@gmail.com>
2021-09-06 01:41:57 -04:00
Paulus Schoutsen 523998f8a1 Drop logger service fields because keys are dynamic (#55750) 2021-09-05 20:53:12 -07:00
GitHub Action c2b89725be [ci skip] Translation update 2021-09-06 00:12:56 +00:00
Oliver 22961b30d2 Update to denonavr version 0.10.9 (#55805) 2021-09-05 13:28:48 -10:00
Alexei Chetroi aa6cb84b27 Optimize ZHA ZCL attribute reporting configuration (#55796)
* Refactor ZCL attribute reporting configuration

Configure up to 3 attributes in a single request.

* Use constant for attribute reporting configuration

* Update tests

* Cleanup

* Remove irrelevant for this PR section
2021-09-05 17:45:08 -04:00
Ville Skyttä 4e1e7a4a71 Protect Huawei LTE against None ltedl/ulfreq (#54411)
Refs https://github.com/home-assistant/core/issues/54400
2021-09-05 21:42:22 +03:00
Chris Browet 5a2bcd2763 ADD: generalize regex_findall (#54584) 2021-09-05 12:41:39 +02:00
GitHub Action f8ebc31576 [ci skip] Translation update 2021-09-05 00:11:36 +00:00
Paulus Schoutsen cce0ca5688 Tag Hue errors as format strings (#55751) 2021-09-04 15:38:14 -07:00
Paulus Schoutsen df9a899bbd Merge pull request #55753 from home-assistant/rc 2021-09-04 14:51:15 -07:00
Paulus Schoutsen 37cf295e20 Bumped version to 2021.9.3 2021-09-04 14:13:37 -07:00
Simone Chemelli 04816fe26d Fix SamsungTV sendkey when not connected (#55723) 2021-09-04 14:13:34 -07:00
Anders Melchiorsen eb48e75fc5 Fix LIFX firmware version information (#55713) 2021-09-04 14:13:33 -07:00
Simone Chemelli 9d5431fba1 Handle Fritz InternalError (#55711) 2021-09-04 14:13:32 -07:00
Erik Montnemery a4f2c5583d Handle negative numbers in sensor long term statistics (#55708)
* Handle negative numbers in sensor long term statistics

* Use negative states in tests
2021-09-04 14:13:32 -07:00
Paulus Schoutsen a37c3af2b4 better detect legacy eagly devices (#55706) 2021-09-04 14:13:31 -07:00
Simone Chemelli d39b861110 Fix SamsungTV sendkey when not connected (#55723) 2021-09-04 13:58:34 -07:00
Simone Chemelli 715ce3185b Handle Fritz InternalError (#55711) 2021-09-04 13:56:59 -07:00
Brian Egge c81a319346 Handle unknown preset mode in generic thermostat (#55588)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-09-04 13:17:57 -07:00
Marc Mueller f5a543b220 Remove deprecated device_state_attributes (#55734) 2021-09-04 13:16:01 -07:00
starkillerOG 58da58c008 Bump motion_blinds to 0.5.5 (#55710) 2021-09-04 22:06:50 +02:00
jan iversen 6348bf70ac Add caplog setup fixture. (#55714) 2021-09-04 07:09:55 -07:00
Marc Mueller 0700108278 Use NamedTuple for device_automation details (#55697) 2021-09-04 13:42:36 +02:00
Anders Melchiorsen d8b85b2067 Fix LIFX firmware version information (#55713) 2021-09-04 13:18:23 +02:00
Simone Chemelli b7e8348c30 Add bluez to the devcontainer (#55469)
* Fix fjaraskupan dependency for tests

* update package list

* Typo

* hadolint fixes

* hadolint fixes #2

* Cleanup

* Rewording
2021-09-04 12:16:06 +02:00
Erik Montnemery 38d42de2c0 Handle negative numbers in sensor long term statistics (#55708)
* Handle negative numbers in sensor long term statistics

* Use negative states in tests
2021-09-04 10:47:42 +02:00
Marc Mueller b3181a0ab2 Use NamedTuple for RGBColor (#55698) 2021-09-04 09:25:25 +02:00
Paulus Schoutsen 10317fba17 better detect legacy eagly devices (#55706) 2021-09-04 09:23:35 +02:00
jan iversen 7aa454231f Update template/test_sensor.py to use pytest (#55288) 2021-09-03 22:56:12 -07:00
Paulus Schoutsen 19c54b8cbf Drop unused ruamel (#55672) 2021-09-03 22:17:10 -07:00
J. Nick Koston 195ee2a188 Avoid creating sockets in homekit port available tests (#55668)
* Avoid creating sockets in homekit port available tests

* prevent new bridge from being setup -- its too fast now that the executor job is gone and it revealed an unpatched setup
2021-09-03 17:15:28 -10:00
Michael 0dc8fb497b Delay state update after switch is toggled for TP-Link HS210 device (#55671)
* delay state update for HS210

* Update workaround comment
2021-09-04 03:01:48 +02:00
Ville Skyttä b10fc89a6b Automation trigger info type hint improvements (#55402)
* Make automation trigger info a TypedDict

* zwave_js trigger type hint fixes

* Remove redundant automation trigger info field presence checks

* Use async_initialize_triggers in mqtt and tasmota device_trigger tests
2021-09-04 02:25:51 +02:00
epenet 0749e045bb Add reauth to Renault config flow (#55547)
* Add reauth flow to async_setup_entry

* Add reauth flow to config_flow

* Add reauth tests

* Split reauth/reauth_confirm

* unindent code

* Add entry_id and unique_id to reauth flow testing

* Use description_placeholders for username

* fix typo
2021-09-04 02:17:24 +02:00
GitHub Action 19dcb19d07 [ci skip] Translation update 2021-09-04 00:13:17 +00:00
Tomasz Wieczorek 501e7c84be Type scaffold PLATFORMS (#55699)
* Added template base type

Proposition to add typing, as pre-commit test on newly created integrations fails on it automatically:

```
homeassistant/components/<my_integration>/__init__.py:11: error: Need type annotation for "PLATFORMS" (hint: "PLATFORMS: List[<type>] = ...")  [var-annotated]
Found 1 error in 1 file (checked 4 source files)
```

I believe there shouldn't be other type than text, hence the proposition.

* Apply suggestions from code review

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-09-04 01:21:18 +02:00
Marc Mueller a54b9502ef Use NamedTuple for light color mode mapping (#55696) 2021-09-04 00:48:14 +02:00
Marc Mueller 617e8544c0 Use NamedTuple for touchline preset mode settings (#55695) 2021-09-04 00:44:16 +02:00
Marc Mueller edddeaf5ab Use NamedTuple for api endpoint settings (#55694) 2021-09-04 00:44:01 +02:00
jan iversen a756308e79 Update template/test_binary_sensor.py to use pytest (#55220) 2021-09-03 15:43:07 -07:00
Aidan Timson cd51d994b1 System Bridge - Set device class for binary sensor (#55688) 2021-09-03 23:48:11 +02:00
Marc Mueller 4eba2ccebc Use EntityDescription - synology_dsm (#55407) 2021-09-03 23:35:28 +02:00
Marc Mueller f5cd321185 Use EntityDescription - airnow (#55684) 2021-09-03 22:36:24 +02:00
Marc Mueller bbd9c6eb5b Use EntityDescription - discogs (#55683) 2021-09-03 22:36:17 +02:00
Marc Mueller ce6921d73c Use EntityDescription - picnic (#55682)
* Use EntityDescription - picnic

* Change _attr_extra_state_attributes to be static

* Fix tests
2021-09-03 22:35:59 +02:00
Brian Rogers 9db13a3e74 Fix Rachio service missing with 1st generation controllers (#55679) 2021-09-03 22:35:33 +02:00
Marc Mueller 1e4233fe20 Use EntityDescription - iperf3 (#55681) 2021-09-03 22:35:12 +02:00
Marc Mueller 76ce0f6ea7 Use EntityDescription - econet (#55680)
* Use EntityDescription - econet

* Resolve name constants
2021-09-03 22:34:51 +02:00
Marc Mueller 798f487ea4 Use EntityDescription - faa_delays (#55678)
* Use EntityDescription - faa_delays

* Update binary_sensor.py
2021-09-03 22:34:29 +02:00
Marc Mueller 3c0a34dd01 Use EntityDescription - luftdaten (#55676)
* Use EntityDescription - luftdaten

* Fix name attribute

* Remove default values

* Move SensorTypes back to __init__
2021-09-03 22:34:01 +02:00
Marc Mueller fbf812a845 Use EntityDescription - freebox (#55675)
* Use EntityDescription - freebox

* Remove default values
2021-09-03 22:33:26 +02:00
Paulus Schoutsen 33047d7260 Merge pull request #55673 from home-assistant/rc 2021-09-03 10:53:16 -07:00
Paulus Schoutsen e3405d226a Bumped version to 2021.9.2 2021-09-03 10:16:36 -07:00
Paulus Schoutsen 3008ff03b2 Guard for doRollover failing (#55669) 2021-09-03 10:16:31 -07:00
Joakim Sørensen 8592d94a3c Fix hdmi_cec switches (#55666) 2021-09-03 10:16:30 -07:00
Nikolay Vasilchuk b36e86d95c Fix Starline sensor state AttributeError (#55654)
* Fix starline sensors state

* Black
2021-09-03 10:16:29 -07:00
Paulus Schoutsen f61a1ecae7 Guard for unexpected exceptions in device automation (#55639)
* Guard for unexpected exceptions in device automation

* merge

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-03 10:16:28 -07:00
Paulus Schoutsen 80c074ca82 Better handle invalid trigger config (#55637) 2021-09-03 10:16:28 -07:00
Paulus Schoutsen ff91ff4cd2 Fix template sensor availability (#55635) 2021-09-03 10:16:27 -07:00
J. Nick Koston 93c2a7dd70 Narrow zwave_js USB discovery (#55613)
- Avoid triggering discovery when we can know in advance the
  device is not a Z-Wave stick
2021-09-03 10:16:26 -07:00
Michael da3ee9ed4b Fix CONFIG_SCHEMA validation in Speedtest.net (#55612) 2021-09-03 10:16:25 -07:00
Pascal Vizeli 2ef607651d Disable observer for USB on containers (#55570)
* Disable observer for USB on containers

* remove operating system test

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-03 10:16:24 -07:00
J. Nick Koston 88ca83a30b Ignore missing devices when in ssdp unsee (#55553) 2021-09-03 10:16:24 -07:00
Paulus Schoutsen 7111fc47c4 Better handle invalid trigger config (#55637) 2021-09-03 10:15:57 -07:00
Paulus Schoutsen e0f640c0f8 Guard for doRollover failing (#55669) 2021-09-03 09:53:47 -07:00
Joakim Sørensen 7caa985a59 Fix hdmi_cec switches (#55666) 2021-09-03 09:17:41 -07:00
J. Nick Koston 25b39b36e7 Ignore missing devices when in ssdp unsee (#55553) 2021-09-03 09:06:07 -07:00
Paulus Schoutsen 418d6a6a41 Guard for unexpected exceptions in device automation (#55639)
* Guard for unexpected exceptions in device automation

* merge

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-03 09:04:50 -07:00
Marc Mueller a234f2ab31 Remove dead fritzbox code (#55617)
* EntityInfo has been replaced by EntityDescription (#55104)
* Extra switch attributes have been replaced by dedicated sensors (#52562)
2021-09-03 17:48:48 +02:00
Marc Mueller 7461af68b9 Use NamedTuple for color temperature range (#55626) 2021-09-03 17:41:32 +02:00
Joakim Sørensen 2171922265 Always show state for the updater binary_sensor (#55584) 2021-09-03 17:40:07 +02:00
ehendrix23 4310a7d814 Add upnp sensor for IP, Status, and Uptime (#54780)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-09-03 17:15:28 +02:00
Michael ae9e3c237a Fix CONFIG_SCHEMA validation in Speedtest.net (#55612) 2021-09-03 14:11:19 +02:00
Nikolay Vasilchuk b4d4fe4ef8 Fix Starline sensor state AttributeError (#55654)
* Fix starline sensors state

* Black
2021-09-03 14:04:56 +02:00
Pascal Vizeli 70338da50e Remove wheels for alpine 3.13 (#55650) 2021-09-03 11:22:41 +02:00
Yuval Aboulafia 173b87e675 Clean holiday attributes code in Jewish calendar (#55080)
* Clean repetitive code in jewish calendar

* do not return none

* fix holiday
2021-09-03 12:07:53 +03:00
Yuval Aboulafia 91cd6951f3 Minor cleanup in Waze travel times (#55422)
* reduce imports and clean the attriburts

* add icons

* use entity class attributes

* fix icon

* add misc types

* fix update

* do not change icon yet

* address review
2021-09-03 11:54:32 +03:00
Erik Montnemery 4684ea2d14 Prevent 3rd party lib from opening sockets in broadlink tests (#55636) 2021-09-03 10:13:35 +02:00
Paulus Schoutsen 0c2772e0be Fix template sensor availability (#55635) 2021-09-03 09:02:45 +02:00
Pascal Vizeli 8319f232b8 Disable observer for USB on containers (#55570)
* Disable observer for USB on containers

* remove operating system test

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-03 08:05:37 +02:00
J. Nick Koston d8a81a54d8 Narrow zwave_js USB discovery (#55613)
- Avoid triggering discovery when we can know in advance the
  device is not a Z-Wave stick
2021-09-03 05:11:03 +02:00
GitHub Action 8af0cb9e65 [ci skip] Translation update 2021-09-03 00:16:18 +00:00
Paulus Schoutsen f883fa9eef Merge pull request #55608 from home-assistant/rc 2021-09-02 13:35:47 -07:00
Paulus Schoutsen 5b705dba36 Bumped version to 2021.9.1 2021-09-02 12:50:56 -07:00
Pascal Vizeli 1592408a4b Downgrade sqlite-libs on docker image (#55591) 2021-09-02 12:50:48 -07:00
jan iversen 89b7be52af Correct duplicate address. (#55578) 2021-09-02 12:50:47 -07:00
Alexei Chetroi 8f85472df3 Pick right coordinator (#55555) 2021-09-02 12:50:45 -07:00
Teemu R 6aa771e5e8 xiaomi_miio: bump python-miio dependency (#55549) 2021-09-02 12:50:44 -07:00
Joakim Sørensen 7193e82963 Bump pyuptimerobot to 21.9.0 (#55546) 2021-09-02 12:50:43 -07:00
bsmappee 02db4dbe5e Bump pysmappee to 0.2.27 (#55257)
* bump

* bump
2021-09-02 21:01:16 +02:00
Erik Montnemery 7dbe8070f7 Mock out network.util.async_get_source_ip in tests (#55592) 2021-09-02 20:44:50 +02:00
J. Nick Koston 363320eedb Mock sockets in the network integration tests (#55594) 2021-09-02 20:44:42 +02:00
Erik Montnemery 2e5c1236f9 Prevent 3rd party lib from opening sockets in freedompro tests (#55596) 2021-09-02 19:32:19 +02:00
Erik Montnemery 348bdca647 Prevent 3rd party lib from opening sockets in epson tests (#55595) 2021-09-02 19:30:53 +02:00
Joakim Sørensen 4f33679255 Fix url lookup in telegram_bot webhook (#55587) 2021-09-02 19:17:33 +02:00
Erik Montnemery cabb9c0ea4 Prevent 3rd party lib from opening sockets in broadlink tests (#55593) 2021-09-02 19:03:24 +02:00
Pascal Vizeli d4a2b36638 Downgrade sqlite-libs on docker image (#55591) 2021-09-02 18:09:30 +02:00
Erik Montnemery bfd799dc04 Use hass_client_no_auth test fixture in integrations s-x (#55585) 2021-09-02 14:50:10 +02:00
Erik Montnemery acdddabe1f Use hass_client_no_auth test fixture in integrations h-p (#55583) 2021-09-02 14:49:40 +02:00
Erik Montnemery d5b6dc4f26 Use hass_client_no_auth test fixture in integrations a-g (#55581) 2021-09-02 14:49:20 +02:00
jan iversen 69aba2a6a1 Correct duplicate address. (#55578) 2021-09-02 13:53:38 +02:00
Erik Montnemery cdaba62d2c Add test fixture for unauthenticated HTTP client (#55561)
* Add test fixture for unauthenticated HTTP client

* Remove things from the future
2021-09-02 13:09:16 +02:00
Joakim Sørensen b3b9fb0a7c Bump pyuptimerobot to 21.9.0 (#55546) 2021-09-02 11:40:32 +02:00
Alexei Chetroi cb1e0666c8 Pick right coordinator (#55555) 2021-09-01 22:54:35 -04:00
GitHub Action 6b4f2e6f8f [ci skip] Translation update 2021-09-02 00:20:52 +00:00
Teemu R aef4a69cd0 xiaomi_miio: bump python-miio dependency (#55549) 2021-09-02 00:18:12 +02:00
Raman Gupta 02eba22068 Add additional test coverage for zwave_js meter sensors (#55465) 2021-09-01 17:22:17 -04:00
Erik Montnemery 7dbd0e5274 Fix zeroconf mock and use it in CI group 1's tests (#55526)
* Fix zeroconf mock and use it in CI group 1's tests

* Mock HaAsyncServiceBrowser
2021-09-01 22:38:00 +02:00
Erik Montnemery e631671832 Use respx.mock in generic camera tests (#55521) 2021-09-01 20:45:29 +02:00
Paulus Schoutsen 245eec7041 Merge pull request #55532 from home-assistant/rc 2021-09-01 11:28:21 -07:00
Bram Kragten 493309daa7 Bumped version to 2021.9.0 2021-09-01 19:40:48 +02:00
Paulus Schoutsen af68802c17 Tweaks for the iotawatt integration (#55510) 2021-09-01 19:37:43 +02:00
Brian Egge 576cece7a9 Fix None support_color_modes TypeError (#55497)
* Fix None support_color_modes TypeError 

https://github.com/home-assistant/core/issues/55451

* Update __init__.py
2021-09-01 19:37:43 +02:00
Otto Winter 3b9859940f ESPHome light color mode use capabilities (#55206)
Co-authored-by: Oxan van Leeuwen <oxan@oxanvanleeuwen.nl>
2021-09-01 19:37:41 +02:00
Paulus Schoutsen 27e29b714c Bump cloud to 0.47.1 (#55312)
* Bump cloud to 0.47.0

* Bump reqs

* Bump to 0.47.1

* Do not load hass_nabucasa during http startup

* fix some tests

* Fix test

Co-authored-by: Ludeeus <ludeeus@ludeeus.dev>
2021-09-01 09:54:54 -07:00
Daniel Hjelseth Høyer c68e87c40e OpenGarage, change to attributes (#55528)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-01 18:33:56 +02:00
Daniel Hjelseth Høyer 80af2f4279 Open garage, add closing and opening to state (#55372) 2021-09-01 08:16:10 -05:00
epenet f8ec85686a Add select platform to Renault integration (#55494)
* Add select platform to Renault integration

* Fix pylint
2021-09-01 14:44:10 +02:00
Joakim Sørensen 33fb080c1e Add remote server to cloud system health (#55506)
* Add sintun server to cloud system health

* Update name

* Adjust test
2021-09-01 13:23:50 +02:00
Paulus Schoutsen 9284f7b147 Tweaks for the iotawatt integration (#55510) 2021-09-01 13:18:50 +02:00
epenet bcf97cb308 Add device tracker platform to Renault integration (#54745) 2021-09-01 13:10:48 +02:00
Stefan 04a052a37d Fix moon phases (#55518) 2021-09-01 12:26:56 +02:00
Joakim Sørensen befcafbc49 Mock setup in spotify tests (#55515) 2021-09-01 11:27:21 +02:00
epenet 02b7356596 Add services to Renault integration (#54820)
* Add services

* Add tests

* Cleanup async

* Fix pylint

* Update services.yaml

* Add extra schema validation

* Rename constants

* Simplify code

* Move constants

* Fix pylint

* Cleanup constants

* Drop charge_set_mode as moved to select platform

* Only register the services if no config entry has registered them yet

* Replace VIN with device selector to select vehicle

* Update logging

* Adjust type checking

* Use a shared base SERVICE_VEHICLE_SCHEMA

* Add selectors for ac_start (temperature/when)

* Add object selector for charge_set_schedules service
2021-09-01 11:23:54 +02:00
Otto Winter 46159c3f18 ESPHome light color mode use capabilities (#55206)
Co-authored-by: Oxan van Leeuwen <oxan@oxanvanleeuwen.nl>
2021-09-01 10:03:41 +02:00
mbo18 a28593f133 Add vacation mode to manual alarm_control_panel (#55340)
* Add vacation mode

* Add vacation to demo

* Deduplicate code in tests
2021-09-01 09:34:21 +02:00
Brian Egge 889aced3b6 Fix None support_color_modes TypeError (#55497)
* Fix None support_color_modes TypeError 

https://github.com/home-assistant/core/issues/55451

* Update __init__.py
2021-09-01 08:26:09 +02:00
Paulus Schoutsen a315fd059a Bumped version to 2021.9.0b7 2021-08-31 22:57:33 -07:00
Brett Adams ba9ef004c8 Add missing device class for temperature sensor in Advantage Air (#55508) 2021-08-31 22:57:13 -07:00
Felipe Martins Diel 22f745b17c Fix BroadlinkSwitch._attr_assumed_state (#55505) 2021-08-31 22:57:12 -07:00
muppet3000 05cf223146 Added trailing slash to US growatt URL (#55504) 2021-08-31 22:57:12 -07:00
Erik Montnemery d4aadd8af0 Improve log for sum statistics (#55502) 2021-08-31 22:56:28 -07:00
Erik Montnemery 4045eee2e5 Correct sum statistics when only last_reset has changed (#55498)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-08-31 22:53:58 -07:00
Joakim Sørensen 83a51f7f30 Add cache-control headers to supervisor entrypoint (#55493) 2021-08-31 22:52:05 -07:00
gjong 29110fe157 Remove Youless native unit of measurement (#55492) 2021-08-31 22:52:05 -07:00
gjong e87b7e24b4 Increase YouLess polling interval (#55490) 2021-08-31 22:52:04 -07:00
uvjustin d9056c01a6 Fix ArestSwitchBase missing is on attribute (#55483) 2021-08-31 22:52:03 -07:00
Matthew Garrett a724bc21b6 Assistant sensors (#55480) 2021-08-31 22:52:03 -07:00
Paulus Schoutsen ef00178339 Add Eagle 200 name back (#55477)
* Add Eagle 200 name back

* add comment

* update tests
2021-08-31 22:52:02 -07:00
Erik Montnemery b8770c3958 Make new cycles for sensor sum statistics start with 0 as zero-point (#55473) 2021-08-31 22:52:01 -07:00
Eric Severance f0c0cfcac0 Wemo Insight devices need polling when off (#55348) 2021-08-31 22:52:00 -07:00
Brett Adams 36b37b6db3 Add missing device class for temperature sensor in Advantage Air (#55508) 2021-08-31 22:50:32 -07:00
Felipe Martins Diel 3bc58f9750 Fix BroadlinkSwitch._attr_assumed_state (#55505) 2021-08-31 22:49:56 -07:00
muppet3000 343054494c Added trailing slash to US growatt URL (#55504) 2021-09-01 07:18:20 +02:00
Erik Montnemery 93c086d830 Correct sum statistics when only last_reset has changed (#55498)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-08-31 21:30:52 -07:00
GitHub Action 9e41a37284 [ci skip] Translation update 2021-09-01 00:19:48 +00:00
gjong ff229dd599 Increase YouLess polling interval (#55490) 2021-08-31 12:24:09 -07:00
gjong cc4b2fbcfa Remove Youless native unit of measurement (#55492) 2021-08-31 19:22:00 +02:00
Erik Montnemery 5d1a193eca Improve log for sum statistics (#55502) 2021-08-31 19:15:22 +02:00
uvjustin 71c6f99d31 Fix ArestSwitchBase missing is on attribute (#55483) 2021-08-31 17:30:05 +02:00
Ernst Klamer bd60a58765 Improvements to the solarlog integration (#55405) 2021-08-31 16:46:19 +02:00
Maciej Bieniek 08a0377dcb Add support for Xiaomi Miio Air Purifier 3C (#55484) 2021-08-31 16:44:13 +02:00
Raman Gupta 4d98a7e156 Allow device_id template function to use device name as input (#55474) 2021-08-31 14:56:47 +02:00
Joakim Sørensen 3e38dc0fd9 Add cache-control headers to supervisor entrypoint (#55493) 2021-08-31 14:45:28 +02:00
JasperPlant afc0a1f376 Add TLX daily power meter. for Growatt (#55445) 2021-08-31 11:55:23 +02:00
epenet 1849eae0ff Renault code quality improvements (#55454) 2021-08-31 11:06:54 +02:00
Erik Montnemery f9225bad5f Make new cycles for sensor sum statistics start with 0 as zero-point (#55473) 2021-08-31 10:45:17 +02:00
Eric Severance 88a08fdf57 Wemo Insight devices need polling when off (#55348) 2021-08-31 09:32:26 +02:00
Paulus Schoutsen d277e0fb03 Add Eagle 200 name back (#55477)
* Add Eagle 200 name back

* add comment

* update tests
2021-08-31 08:45:35 +02:00
Feliksas The Lion 13b001cd9b Fix Zone 2 and Zone 3 detection in onkyo (#55471) 2021-08-30 20:33:52 -07:00
Matthew Garrett dd21bf73fc Assistant sensors (#55480) 2021-08-30 20:33:06 -07:00
GitHub Action 368cac7e5d [ci skip] Translation update 2021-08-31 00:17:01 +00:00
Bram Kragten 4c48ad9108 Bumped version to Bumped version to 2021.9.0b6 2021-08-30 23:35:50 +02:00
Bram Kragten 92b0453749 Update frontend to 20210830.0 (#55472) 2021-08-30 23:33:47 +02:00
Raman Gupta 8ab801a7b4 Fix area_id and area_name template functions (#55470) 2021-08-30 23:33:46 +02:00
Aaron Bach f92c7b1aea Bump aioambient to 1.3.0 (#55468) 2021-08-30 23:33:45 +02:00
Aaron Bach 0d9fbf864f Bump pyiqvia to 1.1.0 (#55466) 2021-08-30 23:33:44 +02:00
Aaron Bach 275f9c8a28 Bump pyopenuv to 2.2.0 (#55464) 2021-08-30 23:33:43 +02:00
Erik Montnemery 84f3b1514f Fix race in MQTT sensor when last_reset_topic is configured (#55463) 2021-08-30 23:33:43 +02:00
Greg 802f5613c4 Add IoTaWatt integration (#55364)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-08-30 23:33:42 +02:00
Erik Montnemery 18c03e2f8d Fix race in MQTT sensor when last_reset_topic is configured (#55463) 2021-08-30 23:32:35 +02:00
Bram Kragten 9b3346bc80 Update frontend to 20210830.0 (#55472) 2021-08-30 23:32:19 +02:00
Aaron Bach 76f21452ee Bump aioambient to 1.3.0 (#55468) 2021-08-30 23:05:28 +02:00
ha0y 433775cf4b Add input_select and select domain support for HomeKit (#54760)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-30 15:28:26 -05:00
Aaron Bach 46f05ca279 Bump pyopenuv to 2.2.0 (#55464) 2021-08-30 13:12:27 -07:00
Aaron Bach 3d9d104482 Bump pyiqvia to 1.1.0 (#55466) 2021-08-30 13:12:09 -07:00
Raman Gupta 1d1b5ab345 Fix area_id and area_name template functions (#55470) 2021-08-30 13:09:41 -07:00
Marc Mueller 1c01ff401f Use EntityDescription - qnap (#55410)
* Use EntityDescription - qnap

* Remove default values
2021-08-30 21:59:50 +02:00
Greg 3bd9be2f6d Add IoTaWatt integration (#55364)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-08-30 12:52:29 -07:00
Aaron Bach daa9c8d856 Add -term statistics for Notion sensors (#55414) 2021-08-30 19:07:05 +02:00
Aaron Bach 1aa30ea87b Add long-term statistics for SimpliSafe sensors (#55419) 2021-08-30 19:04:21 +02:00
Paulus Schoutsen 8be40cbb00 Bumped version to 2021.9.0b5 2021-08-30 09:41:51 -07:00
Raman Gupta 46ce4e92f6 Bump zwave-js-server-python to 0.29.1 (#55460) 2021-08-30 09:41:42 -07:00
J. Nick Koston 39f11bb46d Bump zeroconf to 0.36.2 (#55459)
- Now sends NSEC records when requesting non-existent address types
  Implements RFC6762 sec 6.2 (http://datatracker.ietf.org/doc/html/rfc6762#section-6.2)

- This solves a case where a HomeKit bridge can take a while to update
  because it is waiting to see if an AAAA (IPv6) address is available
2021-08-30 09:41:42 -07:00
Erik Montnemery 3b0fe9adde Revert "Deprecate last_reset options in MQTT sensor" (#55457)
This reverts commit f9fa5fa804.
2021-08-30 09:41:41 -07:00
Simone Chemelli 707778229b Fix noise/attenuation units to UI display for Fritz (#55447) 2021-08-30 09:41:40 -07:00
Erik Montnemery a474534c08 Fix exception when shutting down DSMR (#55441)
* Fix exception when shutting down DSMR

* Update homeassistant/components/dsmr/sensor.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-30 09:41:39 -07:00
Erik Montnemery 65ad99d51c Fix crash in buienradar sensor due to self.hass not set (#55438) 2021-08-30 09:41:39 -07:00
Erik Montnemery 4052a0db89 Improve statistics error messages when sensor's unit is changing (#55436)
* Improve error messages when sensor's unit is changing

* Improve test coverage
2021-08-30 09:41:38 -07:00
Raman Gupta b546fc5067 Don't set zwave_js sensor device class to energy when unit is wrong (#55434) 2021-08-30 09:41:37 -07:00
Christopher Kochan 5dcc760755 Add Sense energy sensors (#54833)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-30 09:41:36 -07:00
Raman Gupta 331726ec2f Bump zwave-js-server-python to 0.29.1 (#55460) 2021-08-30 09:40:56 -07:00
J. Nick Koston 27ecd43da3 Bump zeroconf to 0.36.2 (#55459)
- Now sends NSEC records when requesting non-existent address types
  Implements RFC6762 sec 6.2 (http://datatracker.ietf.org/doc/html/rfc6762#section-6.2)

- This solves a case where a HomeKit bridge can take a while to update
  because it is waiting to see if an AAAA (IPv6) address is available
2021-08-30 08:59:41 -07:00
Raman Gupta d62a78ae61 Don't set zwave_js sensor device class to energy when unit is wrong (#55434) 2021-08-30 08:48:36 -07:00
Simone Chemelli fa7873dc6d Fix noise/attenuation units to UI display for Fritz (#55447) 2021-08-30 08:43:11 -07:00
Ian de5a22953d Whole-string match reqs in comment_requirement (#55192)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-30 08:20:02 -07:00
Andre Richter cbc68e45cd Refactor vallox constants (#55456) 2021-08-30 17:01:45 +02:00
Christopher Kochan c4235edc41 Add Sense energy sensors (#54833)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-30 08:01:26 -07:00
Erik Montnemery ed53bb1d91 Revert "Deprecate last_reset options in MQTT sensor" (#55457)
This reverts commit f9fa5fa804.
2021-08-30 16:58:48 +02:00
Joakim Sørensen a668300c2e Use AwesomeVersion for account link service check (#55449) 2021-08-30 14:11:07 +02:00
Erik Montnemery 722aa0895e Improve statistics error messages when sensor's unit is changing (#55436)
* Improve error messages when sensor's unit is changing

* Improve test coverage
2021-08-30 12:51:46 +02:00
Erik Montnemery 7e9f8de7e0 Fix exception when shutting down DSMR (#55441)
* Fix exception when shutting down DSMR

* Update homeassistant/components/dsmr/sensor.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-30 12:08:21 +02:00
Erik Montnemery 8faec3da8d Correct setup of system_bridge sensors (#55442) 2021-08-30 12:06:24 +02:00
Erik Montnemery 1060630bbd Fix crash in buienradar sensor due to self.hass not set (#55438) 2021-08-30 10:29:39 +02:00
Aidan Timson 25273c694a System Bridge 2.5.0 - Additional Sensors (#53892)
* Update package to 2.1.0

* Add version sensor

* Add graphics memory sensors

* Change graphics memory data from MB

* Add GPU usage sensor

* Add gpu clock speed sensors

* GPU sensors

* GPU power usage

* enumerate instead of range len

* Updates from rebase

* Add graphics

* Add Per CPU load sensor

* Cleanup

* Use super class attributes

* Suggested changes and fix

* User, System, Idle sensors

* Average, User, System and idle sensors instead of attrs

* Remove unused attrs

* Remove null/none sensor

* Sensor entity descriptions

* Fix index out of range error

* Set state class

* Use entity_registry_enabled_default

* Use built in entity_registry_enabled_default

* Use built in icon

* Fix

* Use binary sensor entity description

* Fix pylint

* Fix uom

* Add to coveragerc

* is_on

* Move entity descriptions to platforms

* Clearout default values

* Fix docstring

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

* Cleanup and catch

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-30 10:26:48 +02:00
uvjustin 071fcee9a9 Remove byte-range addressed parts in stream (#55396)
Add individually addressed parts
2021-08-30 13:20:19 +08:00
Paulus Schoutsen fb06acf39d Bumped version to 2021.9.0b4 2021-08-29 20:45:45 -07:00
Raman Gupta 948f191f16 Make zwave_js discovery log message more descriptive (#55432) 2021-08-29 20:45:33 -07:00
Klaas Schoute 2c0d9105ac Update entity names for P1 Monitor integration (#55430) 2021-08-29 20:45:32 -07:00
J. Nick Koston 10df9f3542 Bump zeroconf to 0.36.1 (#55425)
- Fixes duplicate records in the cache

- Changelog: https://github.com/jstasiak/python-zeroconf/compare/0.36.0...0.36.1
2021-08-29 20:45:32 -07:00
Aaron Bach 6cf799459b Ensure ReCollect Waste shows pickups for midnight on the actual day (#55424) 2021-08-29 20:44:57 -07:00
Marc Mueller 47e2d1caa5 Fix device_class - qnap drive_temp sensor (#55409) 2021-08-29 20:41:25 -07:00
J. Nick Koston 69d8f94e3b Show device_id in HomeKit when the device registry entry is missing a name (#55391)
- Reported at: https://community.home-assistant.io/t/homekit-unknown-error-occurred/333385
2021-08-29 20:41:24 -07:00
Aaron Bach 4b7803ed03 Bump simplisafe-python to 11.0.6 (#55385) 2021-08-29 20:41:24 -07:00
J. Nick Koston ff6015ff89 Implement import of consider_home in nmap_tracker to avoid breaking change (#55379) 2021-08-29 20:41:23 -07:00
Matt Krasowski fbd144de46 Handle incorrect values reported by some Shelly devices (#55042) 2021-08-29 20:41:22 -07:00
J. Nick Koston 5549a925b8 Implement import of consider_home in nmap_tracker to avoid breaking change (#55379) 2021-08-29 20:38:41 -07:00
Marc Mueller be04d7b92e Fix device_class - qnap drive_temp sensor (#55409) 2021-08-29 20:30:54 -07:00
J. Nick Koston f37c541a50 Bump zeroconf to 0.36.1 (#55425)
- Fixes duplicate records in the cache

- Changelog: https://github.com/jstasiak/python-zeroconf/compare/0.36.0...0.36.1
2021-08-29 20:29:46 -07:00
Klaas Schoute 6823b14d4c Update entity names for P1 Monitor integration (#55430) 2021-08-29 20:29:37 -07:00
Aaron Bach 94e0db8ec4 Ensure ReCollect Waste shows pickups for midnight on the actual day (#55424) 2021-08-29 20:27:34 -07:00
Raman Gupta ebc2a0103e Make zwave_js discovery log message more descriptive (#55432) 2021-08-29 20:25:47 -07:00
GitHub Action ea7f3c8bb3 [ci skip] Translation update 2021-08-30 00:11:40 +00:00
Aaron Bach 32df2f7d8b Deprecate YAML config for ReCollect Waste (#55426) 2021-08-29 14:03:44 -06:00
Aaron Bach b43c80ca21 Give ReCollect Waste sensor a friendlier label (#55427) 2021-08-29 14:03:09 -06:00
Andre Richter fa201b6c2b Add myself to Vallox codeowners (#55428) 2021-08-29 14:02:52 -06:00
Robert Svensson 76ce33dc24 Only return not return None (#55423) 2021-08-29 13:10:18 -06:00
Erik Montnemery 8b436c43f7 Enable basic type checking for cert_expiry (#55335) 2021-08-29 10:57:18 -06:00
Matt Krasowski fd66120d6d Handle incorrect values reported by some Shelly devices (#55042) 2021-08-29 14:52:12 +02:00
J. Nick Koston 43b8353566 Show device_id in HomeKit when the device registry entry is missing a name (#55391)
- Reported at: https://community.home-assistant.io/t/homekit-unknown-error-occurred/333385
2021-08-29 09:01:04 +02:00
Aaron Bach 4aed0b6ccf Use EntityDescription - ambient_station (#55366) 2021-08-28 21:31:18 -06:00
Aidan Timson 3647ada143 OVO Energy - Post #54952 Cleanup (#55393) 2021-08-28 22:31:07 -05:00
Aaron Bach 2dddd31d97 Simplify calcuation of Notion binary sensor state (#55387) 2021-08-28 21:30:44 -06:00
uvjustin 923158cfba Add ll hls to stream (#49608) 2021-08-29 09:53:41 +08:00
GitHub Action 291a2d6258 [ci skip] Translation update 2021-08-29 00:11:57 +00:00
J. Nick Koston 43288d3e1f Prevent storage loads from monopolizing the executor pool (#55389)
* Prevent storage loads from monopolizing the executor pool

- At startup there is an increasing demand to load data
  from storage. Similar to #49451 and #43085, we now prevent
  the thread pool from being monopolized by storage loads and
  allow other consumers that are doing network I/O to proceed
  without having to wait for a free executor thread.

* Only create Semaphore instance when one is not already there
2021-08-28 18:30:20 -05:00
J. Nick Koston d41fa66bca Remove legacy discovery after_dependencies from apple_tv (#55390)
- apple_tv devices are now discovered by zeroconf, and legacy discovery
  is no longer needed
2021-08-28 18:30:07 -05:00
Michael f1ba98927c Address late fritzbox comments (#55388)
* correct imports

* move platform specifics into platforms

* move descriptions into platforms
2021-08-28 23:07:06 +02:00
jan iversen f91cc21bbd Solve modbus shutdown racing condition (#55373) 2021-08-28 23:04:33 +02:00
Michael 13cc671844 Re-configuration possibilities for Synology DSM (#53285)
* add automated host/ip reconfig via SSDP

* add reconfig of existing entry

* adjust tests

* adjust tests again

* use self._async_current_entries()

* _async_get_existing_entry()

* apply suggestions
2021-08-28 14:11:51 -05:00
Matthieu 979797136a Add select entity to Logitech Harmony (#53943)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-28 14:10:19 -05:00
Aaron Bach 778fa2e3fe Bump simplisafe-python to 11.0.6 (#55385) 2021-08-28 12:57:02 -06:00
Paulus Schoutsen adaebdeea8 Bumped version to 2021.9.0b3 2021-08-28 08:59:25 -07:00
Maciej Bieniek 910cb5865a Address late review for Tractive integration (#55371) 2021-08-28 08:58:38 -07:00
Joakim Sørensen baf0d9b2d9 Pin regex to 2021.8.28 (#55368) 2021-08-28 08:58:37 -07:00
Jason Hunter c1bce68549 close connection on connection retry, bump onvif lib (#55363) 2021-08-28 08:58:36 -07:00
Nathan Spencer bde4c0e46f Bump pylitterbot to 2021.8.1 (#55360) 2021-08-28 08:58:35 -07:00
Paulus Schoutsen a275e7aa67 Fix wolflink super call (#55359) 2021-08-28 08:58:35 -07:00
Aaron Bach d96e416d26 Ensure ReCollect Waste starts up even if no future pickup is found (#55349) 2021-08-28 08:58:34 -07:00
Paulus Schoutsen efc3894303 Convert solarlog to coordinator (#55345) 2021-08-28 08:58:33 -07:00
Daniel Hjelseth Høyer 06b47ee2f5 Tractive name (#55342) 2021-08-28 08:58:33 -07:00
Raman Gupta 08ca43221f Listen to node events in the zwave_js node status sensor (#55341) 2021-08-28 08:58:32 -07:00
J. Nick Koston 8641740ed8 Ensure yeelights resync state if they are busy on first connect (#55333) 2021-08-28 08:58:31 -07:00
Daniel Hjelseth Høyer 6a93f5b7ad Tractive name (#55342) 2021-08-28 08:57:57 -07:00
Maciej Bieniek 19873e6547 Address late review for Tractive integration (#55371) 2021-08-28 17:49:34 +02:00
Joakim Sørensen 2fcd77098d Pin regex to 2021.8.28 (#55368) 2021-08-28 15:00:14 +02:00
jan iversen d1965eef8b Activate mypy for sonar (#55327)
* Please mypy.
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-28 12:05:48 +02:00
jan iversen 16351ef3c2 Add shutdown test. (#55357) 2021-08-28 08:11:58 +02:00
Nathan Spencer e2f257cb63 Bump pylitterbot to 2021.8.1 (#55360) 2021-08-27 20:58:21 -07:00
Maciej Bieniek ea8702b0df Address late review for Xiaomi Miio number platform (#55275) 2021-08-27 21:41:15 -05:00
Joakim Sørensen 470aa7e871 Add data update coordinator to the Tautulli integration (#54706)
* Add data update coordinator to the Tautulli integration

* update .coveragerc

* Add guard for UpdateFailed

* Apply suggestions from code review

Co-authored-by: Chris Talkington <chris@talkingtontech.com>

* ignore issues

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2021-08-27 20:39:12 -05:00
Jason Hunter 61a7ce173c close connection on connection retry, bump onvif lib (#55363) 2021-08-27 17:34:32 -07:00
GitHub Action b0c52220bc [ci skip] Translation update 2021-08-28 00:11:00 +00:00
Raman Gupta 714564eaa6 Listen to node events in the zwave_js node status sensor (#55341) 2021-08-27 15:01:20 -07:00
Aaron Bach 1f37c215f6 Ensure ReCollect Waste starts up even if no future pickup is found (#55349) 2021-08-27 15:00:17 -07:00
Paulus Schoutsen 46d0523f98 Convert solarlog to coordinator (#55345) 2021-08-27 14:59:55 -07:00
Paulus Schoutsen eb458fb1d5 Fix wolflink super call (#55359) 2021-08-27 14:59:28 -07:00
J. Nick Koston 10fa63775d Ensure yeelights resync state if they are busy on first connect (#55333) 2021-08-27 12:43:53 -05:00
Paulus Schoutsen d0ada6c6e2 Bumped version to 2021.9.0b2 2021-08-27 10:00:20 -07:00
Anders Melchiorsen 76bb036968 Upgrade aiolifx to 0.6.10 (#55344) 2021-08-27 10:00:00 -07:00
J. Nick Koston d8b64be41c Retrigger config flow when the ssdp location changes for a UDN (#55343)
Fixes #55229
2021-08-27 09:59:59 -07:00
jan iversen b3e0b7b86e Add modbus name to log_error (#55336) 2021-08-27 09:59:59 -07:00
Chris Talkington e097e4c1c2 Fix reauth for sonarr (#55329)
* fix reauth for sonarr

* Update config_flow.py

* Update config_flow.py

* Update config_flow.py

* Update test_config_flow.py

* Update config_flow.py

* Update test_config_flow.py

* Update config_flow.py
2021-08-27 09:59:58 -07:00
Robert Hillis 34f0fecef8 Fix sonos alarm schema (#55318) 2021-08-27 09:59:57 -07:00
Erik Montnemery f53a10d39a Handle statistics for sensor with changing state class (#55316) 2021-08-27 09:59:56 -07:00
J. Nick Koston 5b993129d6 Fix lifx model to be a string (#55309)
Fixes #55307
2021-08-27 09:59:56 -07:00
J. Nick Koston 865656d436 Always send powerview move command in case shade is out of sync (#55308) 2021-08-27 09:59:55 -07:00
Aaron Bach fb25c6c115 Bump simplisafe-python to 11.0.5 (#55306) 2021-08-27 09:59:54 -07:00
Aaron Bach c963cf8743 Bump aiorecollect to 1.0.8 (#55300) 2021-08-27 09:59:54 -07:00
rikroe ddb28db21a Bump bimmer_connected to 0.7.20 (#55299) 2021-08-27 09:59:53 -07:00
J. Nick Koston bfc98b444f Fix creation of new nmap tracker entities (#55297) 2021-08-27 09:59:52 -07:00
realPy f9a0f44137 Correct flash light livarno when use hue (#55294)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-27 09:59:51 -07:00
J. Nick Koston 93750d71ce Gracefully handle pyudev failing to filter on WSL (#55286)
* Gracefully handle pyudev failing to filter on WSL

* add debug message

* add mocks so we reach the new check
2021-08-27 09:59:51 -07:00
Paulus Schoutsen 06e4003640 Bump ring to 0.7.1 (#55282) 2021-08-27 09:59:50 -07:00
J. Nick Koston 97ff5e2085 Set yeelight capabilities from external discovery (#55280) 2021-08-27 09:59:49 -07:00
J. Nick Koston 8a2c07ce19 Ensure yeelight model is set in the config entry (#55281)
* Ensure yeelight model is set in the config entry

- If the model was not set in the config entry the light could
  be sent commands it could not handle

* update tests

* fix test
2021-08-27 09:59:21 -07:00
J. Nick Koston 9f7398e0df Fix yeelight brightness when nightlight switch is disabled (#55278) 2021-08-27 09:57:07 -07:00
J. Nick Koston 7df84dadad Fix some yeelights showing wrong state after on/off (#55279) 2021-08-27 09:56:22 -07:00
Chris 2a1e943b18 Fix unique_id conflict in smarttthings (#55235) 2021-08-27 09:54:26 -07:00
prwood80 e6e72bfa82 Improve performance of ring camera still images (#53803)
Co-authored-by: Pat Wood <prwood80@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-27 09:54:25 -07:00
Anders Melchiorsen ed19fdd462 Upgrade aiolifx to 0.6.10 (#55344) 2021-08-27 09:53:42 -07:00
J. Nick Koston 2cc87cb7ab Retrigger config flow when the ssdp location changes for a UDN (#55343)
Fixes #55229
2021-08-27 09:53:29 -07:00
jan iversen 7ac72ebf38 Add modbus name to log_error (#55336) 2021-08-27 09:26:57 -07:00
Robert Hillis 98c8782c2b Fix sonos alarm schema (#55318) 2021-08-27 09:25:40 -07:00
realPy 7bd7d644a0 Correct flash light livarno when use hue (#55294)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-27 09:25:27 -07:00
prwood80 3f2fad1a27 Improve performance of ring camera still images (#53803)
Co-authored-by: Pat Wood <prwood80@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-27 09:22:49 -07:00
Chris Talkington 819fd811af Fix reauth for sonarr (#55329)
* fix reauth for sonarr

* Update config_flow.py

* Update config_flow.py

* Update config_flow.py

* Update test_config_flow.py

* Update config_flow.py

* Update test_config_flow.py

* Update config_flow.py
2021-08-27 11:04:07 -05:00
Michael e2dac31471 Use EntityDescription - fritzbox (#55104)
* Use sensor entity description

* check if not none instead if callable

* List comprehension in switch and climate

* change state to native_value in description

* merge FritzBoxSensorEntity into FritzBoxEntity

* rename SENSOR_DESCRIPTIONS to SENSOR_TYPES

* use mixins for descriptions

* use comprehension in async_setup_entry()

* improve extra_state_attributes
2021-08-27 17:09:34 +02:00
Erik Montnemery 7e70252de5 Handle statistics for sensor with changing state class (#55316) 2021-08-27 16:18:49 +02:00
J. Nick Koston cc857abfd2 Adjust zha comment to be readable (#55330) 2021-08-27 16:01:26 +02:00
epenet adab367f0e Renault code quality improvements (#55313)
* Use constants

* Drop entity_class for binary_sensor

* Move data property from RenaultDataEntity to RenaultSensor

* Update function description
2021-08-27 12:12:09 +02:00
rikroe 259eeb3169 Bump bimmer_connected to 0.7.20 (#55299) 2021-08-27 12:03:25 +02:00
J. Nick Koston efb1fb9978 Always send powerview move command in case shade is out of sync (#55308) 2021-08-27 08:49:50 +02:00
Aaron Bach 5693f9ff9b Bump simplisafe-python to 11.0.5 (#55306) 2021-08-27 08:48:20 +02:00
epenet 9ba504cd78 Address late review for Renault integration (#55230)
* Add type hints

* Fix isort

* tweaks to state attributes

* Move lambdas to regular functions

* Split CHECK_ATTRIBUTES into DYNAMIC_ATTRIBUTES and FIXED_ATTRIBUTES

* Clarify tests

* Fix typo
2021-08-27 07:22:23 +02:00
J. Nick Koston 176fd39e0b Fix lifx model to be a string (#55309)
Fixes #55307
2021-08-27 06:37:28 +02:00
Matthias Alphart cd0ae66d58 Add CONF_STATE_CLASS to sensor/__init__.py (#54106)
* add CONF_STATE_CLASS to const.py

* move to `sensor/__init__.py`

* move to sensor/const.py

* Revert "move to sensor/const.py"

This reverts commit 604d0d066b.

* move it to `sensor/const.py` but import it from `sensor/__init__.py`

* add Modbus
2021-08-27 05:54:50 +02:00
GitHub Action 65d14909ee [ci skip] Translation update 2021-08-27 00:14:42 +00:00
J. Nick Koston 5393a16c44 Set yeelight capabilities from external discovery (#55280) 2021-08-26 19:04:12 -05:00
Aaron Bach cbd65efe52 Bump aiorecollect to 1.0.8 (#55300) 2021-08-26 16:59:27 -06:00
J. Nick Koston ef10773202 Fix creation of new nmap tracker entities (#55297) 2021-08-26 15:02:49 -07:00
J. Nick Koston dfc2556669 Gracefully handle pyudev failing to filter on WSL (#55286)
* Gracefully handle pyudev failing to filter on WSL

* add debug message

* add mocks so we reach the new check
2021-08-26 15:47:10 -05:00
Chris 14aa19b814 Fix unique_id conflict in smarttthings (#55235) 2021-08-26 13:43:26 -07:00
J. Nick Koston c3972b22fd Fix yeelight brightness when nightlight switch is disabled (#55278) 2021-08-26 15:18:36 -05:00
J. Nick Koston ae1d2926cf Fix some yeelights showing wrong state after on/off (#55279) 2021-08-26 13:25:26 -05:00
J. Nick Koston 089dfad78a Ensure yeelight model is set in the config entry (#55281)
* Ensure yeelight model is set in the config entry

- If the model was not set in the config entry the light could
  be sent commands it could not handle

* update tests

* fix test
2021-08-26 13:02:59 -05:00
Paulus Schoutsen f6bb5c77a0 Bump ring to 0.7.1 (#55282) 2021-08-26 10:37:53 -07:00
Maciej Bieniek eb9d242ade Move AirlySensorEntityDescription to sensor platform (#55277) 2021-08-26 18:40:42 +02:00
Paulus Schoutsen 219868b308 Bumped version to 2021.9.0b1 2021-08-26 09:37:25 -07:00
Maciej Bieniek 67dd861d8c Fix AttributeError for non-MIOT Xiaomi Miio purifiers (#55271) 2021-08-26 09:37:20 -07:00
Florian Gareis f2765ba320 Don't create DSL sensor for devices that don't support DSL (#55269) 2021-08-26 09:37:19 -07:00
Erik Montnemery aefd3df914 Warn if a sensor with state_class_total has a decreasing value twice (#55251) 2021-08-26 09:37:18 -07:00
Franck Nijhof 3658eeb8d1 Fix MQTT add-on discovery to be ignorable (#55250) 2021-08-26 09:37:07 -07:00
Erik Montnemery 080cb6b6e9 Fix double precision float for postgresql (#55249) 2021-08-26 09:37:06 -07:00
Joakim Sørensen 20796303da Only postfix image name for container (#55248) 2021-08-26 09:37:06 -07:00
J. Nick Koston dff6151ff4 Abort zha usb discovery if deconz is setup (#55245)
* Abort zha usb discovery if deconz is setup

* Update tests/components/zha/test_config_flow.py

* add deconz domain const

* Update homeassistant/components/zha/config_flow.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2021-08-26 09:37:05 -07:00
Alexei Chetroi 6f24f4e302 Bump up ZHA dependencies (#55242)
* Bump up ZHA dependencies

* Bump up zha-device-handlers
2021-08-26 09:37:04 -07:00
J. Nick Koston 175febe635 Defer zha auto configure probe until after clicking configure (#55239) 2021-08-26 09:37:03 -07:00
J. Nick Koston aa907f4d10 Only warn once per entity when the async_camera_image signature needs to be updated (#55238) 2021-08-26 09:37:02 -07:00
J. Nick Koston 3d09478aea Limit USB discovery to specific manufacturer/description/serial_number matches (#55236)
* Limit USB discovery to specific manufacturer/description/serial_number matches

* test for None case
2021-08-26 09:37:01 -07:00
Marc Mueller 05df9b4b8b Remove temperature conversion - tado (#55231) 2021-08-26 09:37:01 -07:00
jjlawren 1865a28083 Set up polling task with subscriptions in Sonos (#54355) 2021-08-26 09:37:00 -07:00
J. Nick Koston fbcf21412d Only warn once per entity when the async_camera_image signature needs to be updated (#55238) 2021-08-26 09:36:25 -07:00
jjlawren b3e84c6ee8 Set up polling task with subscriptions in Sonos (#54355) 2021-08-26 09:35:35 -07:00
Florian Gareis c3316df31d Don't create DSL sensor for devices that don't support DSL (#55269) 2021-08-26 09:33:41 -07:00
Maciej Bieniek f942cb03a4 Fix AttributeError for non-MIOT Xiaomi Miio purifiers (#55271) 2021-08-26 09:29:25 -07:00
Alexei Chetroi d3ac72d013 Bump up ZHA dependencies (#55242)
* Bump up ZHA dependencies

* Bump up zha-device-handlers
2021-08-26 11:38:35 -04:00
J. Nick Koston d59ea5329e Abort zha usb discovery if deconz is setup (#55245)
* Abort zha usb discovery if deconz is setup

* Update tests/components/zha/test_config_flow.py

* add deconz domain const

* Update homeassistant/components/zha/config_flow.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2021-08-26 10:00:32 -04:00
J. Nick Koston d4fa625a7f Defer zha auto configure probe until after clicking configure (#55239) 2021-08-26 09:59:41 -04:00
J. Nick Koston a89057ece5 Limit USB discovery to specific manufacturer/description/serial_number matches (#55236)
* Limit USB discovery to specific manufacturer/description/serial_number matches

* test for None case
2021-08-26 09:59:02 -04:00
jan iversen 2d5176eee9 Change entity_timers to be a local variable. (#55258)
Ensure outstanding pymodbus calls are handled before closing.
2021-08-26 15:23:00 +02:00
Erik Montnemery 0a07ff4d23 Warn if a sensor with state_class_total has a decreasing value twice (#55251) 2021-08-26 14:27:14 +02:00
Franck Nijhof 96303a1d80 Fix MQTT add-on discovery to be ignorable (#55250) 2021-08-26 11:14:42 +02:00
Joakim Sørensen 03d3bbfba1 Only postfix image name for container (#55248) 2021-08-26 10:54:42 +02:00
Eric Severance 56246056ce Be tolerant of Wemo insight_param keys that might not exist (#55232) 2021-08-26 10:27:06 +02:00
Erik Montnemery 6d4a47a53d Fix double precision float for postgresql (#55249) 2021-08-26 10:06:53 +02:00
Milan Meulemans e6d710c203 Remove option and range checks in Rituals integration (#55222)
* Fix number

* Fix select
2021-08-26 08:37:27 +02:00
Sean Vig b45c985d58 Remove un-needed asserts on hass in Amecrest (#55244) 2021-08-26 08:34:58 +02:00
GitHub Action 3d7bfa8357 [ci skip] Translation update 2021-08-26 00:13:27 +00:00
Marc Mueller b81c2806bb Remove temperature conversion - tado (#55231) 2021-08-26 00:37:18 +02:00
Franck Nijhof 06a30c882f Bump version to 2021.10.0dev0 (#55227) 2021-08-25 23:19:14 +02:00
epenet 9315f3bdd9 Use EntityDescription - renault (#55061)
* Cleanup sensor.py

* Add EntityDescription

* Add checks for state attributes

* Fix pylint

* Simplify checks

* Add icon checks

* Update data type

* Use mixin for required keys, and review class initialisation

* Add constraint to TypeVar("T")

* Enable lambda for icon handling

* Enable lambda for value handling

* Enable lambda for value handling
2021-08-25 23:15:49 +02:00
Franck Nijhof f78d57515a Bumped version to 2021.9.0b0 2021-08-25 22:11:21 +02:00
J. Nick Koston 35d943ba56 Add services to bond to start and stop increase/decrease brightness (#55006) 2021-08-25 22:07:31 +02:00
J. Nick Koston e6e8d7eded Convert color temperature to visible color in lights (#55219) 2021-08-25 21:56:36 +02:00
Milan Meulemans 59d401e7b7 Add Nanoleaf reauth flow (#55217)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-08-25 21:56:10 +02:00
Diogo Gomes fb28665cfa Add "cron patterns" to define utility_meter cycles (#46795)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-25 14:52:39 -05:00
Raman Gupta 2f7a7b0309 Add template functions to get area_id and area_name (#54248)
* Add template function to get area_id

* fix int bug

* Prefer area name lookup

* remove unnecessary checks

* fix import

* Add area_name function

* change behavior to fail in ambiguous scenarios

* Revert lotto winning exception checking

* review comments

* try except else
2021-08-25 15:16:51 -04:00
jan iversen d60f5e1721 Add missing convert to fan/light/switch modbus platform (#55203) 2021-08-25 21:02:06 +02:00
Paulus Schoutsen 7c5a0174ba Add an energy solar platform for solar forecasts (#54576)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-25 11:37:03 -07:00
Paulus Schoutsen 038121e87b Bump frontend to 20210825.0 (#55221) 2021-08-25 11:36:06 -07:00
Raman Gupta e9625e4b7a Add number platform to template integration (#54789) 2021-08-25 11:34:20 -07:00
Raman Gupta 8407ad01d4 Add select platform to template integration (#54835) 2021-08-25 11:21:24 -07:00
Aidan Timson e062d7aec0 Honeywell Lyric - Entity Descriptions (#54956)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-25 10:29:34 -07:00
Milan Meulemans d4b506e5e4 Add tests for Rituals init, sensor and switch (#52406) 2021-08-25 12:25:39 -05:00
Giuseppe Iannello ec3bfcea46 Support for EnergyStorageTrait for vacuum cleaners (#55134) 2021-08-25 10:12:31 -07:00
Maciej Bieniek b97d131fb3 Add support for Xiaomi Miio pedestal fans (#55114)
Co-authored-by: Teemu R. <tpr@iki.fi>
2021-08-25 12:09:01 -05:00
Ben Edmunds b167e05a56 Sonos add bass & treble EQ option (#53978) 2021-08-25 17:42:40 +02:00
Milan Meulemans 5c6451d11b Address review of Nanoleaf Config Flow (#55215) 2021-08-25 17:41:48 +02:00
Erik Montnemery 80cfd59939 Implement color_mode support for mysensors (#52068) 2021-08-25 17:41:33 +02:00
jan iversen 3a0a8da648 Change logging to do rollover() instead of rotate() (#55177)
* Change to rollover from rotate.

* Remove test log files.
2021-08-25 17:32:48 +02:00
Paulus Schoutsen d984e137b8 Merge remote-tracking branch 'origin/master' into dev 2021-08-25 08:00:17 -07:00
J. Nick Koston bd0af57ef2 Support device triggers in HomeKit (#53869) 2021-08-25 16:47:39 +02:00
Marc Mueller 72410044cd Remove temperature conversion - sht31 (#55213) 2021-08-25 16:44:27 +02:00
Aaron Bach 6bc5c1c9af Finish EntityDescription implementation for RainMachine (#55180) 2021-08-25 08:36:25 -06:00
Marc Mueller 53851cb1b4 Remove temperature conversion - synology_dsm (#55214) 2021-08-25 09:32:35 -05:00
Erik Montnemery 20d8c4da90 Report average of position and tilt_position for cover groups (#52713) 2021-08-25 16:12:29 +02:00
Denis Milanović 35ccad7904 Ignore unsupported MeasureType-s from Withings (#55205) 2021-08-25 15:57:07 +02:00
Erik Montnemery 7f80781f9b Prevent setting _attr_unit_of_measurement in subclasses of SensorEntity (#55211) 2021-08-25 15:44:35 +02:00
Erik Montnemery 856f4ad740 Fix Fjäråskupan RSSI sensor unit (#55210) 2021-08-25 15:39:49 +02:00
Otto Winter e633cc177e ESPHome sensor use total_increasing state class (#55208) 2021-08-25 15:33:26 +02:00
Maciej Bieniek 06604728c5 Remove should poll property from Xiaomi Miio fan platform (#55201) 2021-08-25 15:25:46 +02:00
Erik Montnemery 517fda1383 Fix last_reset in utility_meter (#55209) 2021-08-25 15:24:51 +02:00
Marc Mueller 1224d68d05 Remove redundant str cast - sensor value conversion (#55204) 2021-08-25 15:01:17 +02:00
jan iversen d4064e7044 Cancel entity timers. (#55141) 2021-08-25 14:49:37 +02:00
Aaron Bach 2271f3b5f9 Clean up usage of EntityDescription in OpenUV (#55127)
* Clean up usage of EntityDescription in OpenUV

* Remove redundant typing

* Code review

* Update homeassistant/components/openuv/__init__.py

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

* Black

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-08-25 14:18:53 +02:00
Daniel Hjelseth Høyer 7dd169b48e Utility meter, add STATE_CLASS_TOTAL_INCREASING (#54871)
* Utility meter, STATE_CLASS_TOTAL_INCREASING

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

* update test

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

* update test

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-25 14:03:30 +02:00
Jan Bouwhuis f4fbc083e6 Tasmota - Cleanup tests involving legacy fan speed (#55202) 2021-08-25 13:54:36 +02:00
Marc Mueller 7f203069a4 Use EntityDescription - mhz19 (#55187)
* Use EntityDescription - mhz19

* Fix tests
2021-08-25 13:52:59 +02:00
jan iversen 504d23ac72 Activate mypy for switchbot (#55196)
* Please mypy.

* Update homeassistant/components/switchbot/switch.py

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

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-08-25 13:37:08 +02:00
Sean Vig 6b4e3bca6f Add type annotations to amcrest integration (#54761)
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
2021-08-25 13:24:29 +02:00
Erik Montnemery bb42eb1176 Warn if a sensor with state_class_total has a decreasing value (#55197) 2021-08-25 13:01:55 +02:00
Erik Montnemery ffbd2d79c8 Generate statistics for all sensors with a supported state_class (#54882)
* Generate statistics for all sensors

* Fix bugs, add tests

* Address review comments

* Cleanup warnings

* Simplify tests

* Simplify selection of statistics

* Fix tests
2021-08-25 13:00:35 +02:00
Børge Nordli 0d654fa6b3 Extract attribute names out of vol.Optional when validating entity service schema (#55157) 2021-08-25 13:00:11 +02:00
Marc Mueller bd407f3ff4 Fix name - temper (#55189) 2021-08-25 12:59:31 +02:00
jan iversen 7df8d0c973 Check for duplicate host/port and integration name in modbus (#54664)
* Check for duplicate host/port and integration name.

* Change to use set().

* Please CI.

* Add basic tests.
2021-08-25 12:29:00 +02:00
Meow a23f4dac62 Add service to clear completed shoppinglist items (#55032) 2021-08-25 12:26:37 +02:00
Erik Montnemery 3432efddaa Remember state of MQTT availability topics when reconfiguring (#55199) 2021-08-25 12:23:42 +02:00
Yuval Aboulafia ebe48e78b7 Refactor Jewish Calendar to use EntityDescription (#54852) 2021-08-25 12:05:58 +02:00
Matthias Alphart 51361fbd2b Add configurable state_class to Modbus sensors (#54103)
* add configurable state_class

* Add test of new parameter.

Co-authored-by: jan Iversen <jancasacondor@gmail.com>
2021-08-25 11:50:54 +02:00
Paulus Schoutsen 186b8d4f4b Fix rainforest eagle incorrectly fetch conncted first try (#55193) 2021-08-25 11:43:08 +02:00
Marc Mueller bf1112bc10 Remove temperature conversion - temper (#55188) 2021-08-25 11:19:28 +02:00
Klaas Schoute 49041b1469 Add account type to Forecast.Solar integration (#55175) 2021-08-25 11:16:23 +02:00
András Rutkai db5e159b6d Updating IBM Watson SDK (#54914) 2021-08-25 10:55:46 +02:00
Aaron Bach e99761fd7f Use EntityDescription - flunearyou (#55126) 2021-08-25 10:52:37 +02:00
Aaron Bach c9e8d42405 Use EntityDescription - airvisual (#55125) 2021-08-25 10:51:02 +02:00
Aaron Bach f92ba18a6b Use EntityDescription - notion (#55120) 2021-08-25 10:42:57 +02:00
Marc Mueller 4a03d8dc47 Use EntityDescription - bme280 (#55184) 2021-08-25 10:39:59 +02:00
Marc Mueller 5e44498f1c Use EntityDescription - bme680 (#55185) 2021-08-25 10:36:41 +02:00
Marc Mueller 839b9563ad Use EntityDescription - htu21d (#55186) 2021-08-25 10:35:15 +02:00
Aaron Bach bf6d549910 Use EntityDescription - guardian (#55118) 2021-08-25 10:34:02 +02:00
jan iversen e2b1122eec Activate mypy in gtfs (followup on reverted #54328) (#55195) 2021-08-25 10:30:29 +02:00
Marc Mueller 4036ba82fe Remove temperature conversion - mhz19 (#55164) 2021-08-25 10:29:59 +02:00
Marc Mueller ed95bda781 Use EntityDescription - dht (#55183) 2021-08-25 10:28:43 +02:00
Luke Waite ab6be2890a Add statistics for emoncms power and energy feeds (#55109) 2021-08-25 10:02:53 +02:00
dependabot[bot] 703c8f56f3 Bump codecov/codecov-action from 2.0.2 to 2.0.3 (#55194)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-25 09:46:28 +02:00
Paulus Schoutsen 1e05c81fe6 Fix recorder test (#55169)
Co-authored-by: Erik <erik@montnemery.com>
2021-08-25 08:48:13 +02:00
GitHub Action b4238443c8 [ci skip] Translation update 2021-08-25 00:14:22 +00:00
Aaron Bach b8d4e9806e Remove unreachable code in OpenUV (#55181) 2021-08-24 16:31:38 -05:00
Aaron Bach 24d017f974 Add ability to configure OpenUV "protection window" UV indices (#54562) 2021-08-24 15:37:50 -05:00
Alexei Chetroi 289734c748 Update ZHA config entry radio detection (#55128) 2021-08-24 15:25:31 -05:00
jjlawren 6cf312f3c8 Fix Sonos missing group member race condition on startup (#55158) 2021-08-24 14:13:18 -05:00
Richard Meyer 2932a3d6a7 Update version for smart-meter-texas to 0.4.7 (#54493)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-24 14:10:28 -05:00
Milan Meulemans 8570502681 Convert Nanoleaf yaml and discovery to config flow (#52199)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-24 14:09:36 -05:00
Milan Meulemans 9555a34691 Add missing baseclass for rituals perfume genie entities (#55166) 2021-08-24 14:08:48 -05:00
Marc Mueller 18f80c32d7 Remove temperature conversion - htu21d (#55165) 2021-08-24 20:00:16 +02:00
Marc Mueller f3ab174cd3 Remove temperature conversion - bme680 (#55163) 2021-08-24 19:58:43 +02:00
Marc Mueller cb556fe98e Remove temperature conversion - bme280 (#55162) 2021-08-24 19:57:43 +02:00
Marc Mueller 81a6bec818 Remove temperature conversion - dht (#55161) 2021-08-24 19:56:46 +02:00
Alexei Chetroi 2927dcd809 Use a debouncer when updating ZHA group state (#53263) 2021-08-24 10:09:36 -07:00
Joakim Sørensen 29f1fab7f7 Move to aiogithubapi any async for the GitHub integration (#55143) 2021-08-24 11:46:44 -05:00
Aaron David Schneider 39d5ae77a9 Address late review of Fritz switch (#54842) 2021-08-24 18:10:32 +02:00
Erik Montnemery 38f0020619 Improve Tasmota MQTT discovery flow (#55147) 2021-08-24 18:08:17 +02:00
Erik Montnemery 2c997586eb Deduplicate code in MQTT alarm_control_panel tests (#55149) 2021-08-24 18:06:39 +02:00
Niels Mündler abfba1f455 Handle missing mac address in syncthru (#55154)
* Fix access errors to mac address

printer.raw() is the only attribute accessed and will always be present.
However depending on the printer, the mac address might be missing.

* Update homeassistant/components/syncthru/__init__.py

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

* Update homeassistant/components/syncthru/__init__.py

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

* Update homeassistant/components/syncthru/__init__.py

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-24 10:56:36 -05:00
J. Nick Koston 2e62de5116 Adjust yeelight homekit model match (#55159) 2021-08-24 17:51:25 +02:00
Erik Montnemery fa9f91325c Allow small dip in total_increasing sensor without detecting a reset (#55153) 2021-08-24 17:23:55 +02:00
Erik Montnemery 8877f37da0 Fix statistics for sensors setting last_reset (#55136)
* Re-add state_class total to sensor

* Make energy cost sensor enforce state_class total_increasing

* Drop state_class total

* Only report energy sensor issues once
2021-08-24 17:02:34 +02:00
Maciej Bieniek 8d3ccad38e Convert number value to int in Xiaomi Miio (#55145) 2021-08-24 15:19:01 +02:00
Maciej Bieniek ca245f8e93 Fix min value for Xiaomi Miio volume entity (#55139) 2021-08-24 14:40:14 +02:00
jan iversen 98a3ad6fd4 Revert "Please mypy in gtfs and implement needed changes (#54328)" (#55148) 2021-08-24 14:29:03 +02:00
jan iversen de7352dbde Convert template/vacuum to pytest with fixtures (#54841) 2021-08-24 14:11:40 +02:00
Sean Vig 5cbb217318 Update amcrest to use binary sensor entity description (#55092) 2021-08-24 14:06:19 +02:00
Erik Montnemery 828d862339 Fix Tasmota MQTT discovery flow (#55140) 2021-08-24 13:23:26 +02:00
posixx 547ede1e91 Implementation of new Vacation mode for MQTT-based alarm panels (#53561)
* Impelentation of new Vacation Mode for MQTT-based alarm panels

* Fixed typo

* another typo fix

* Split integrations: remove manual_mqtt

* added newline

* Impelentation of new Vacation Mode for MQTT-based alarm panels

* Fixed typo

* another typo fix

* Split integrations: remove manual_mqtt

* added newline

* missing abbreviation

* Fix tests

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-08-24 13:22:49 +02:00
Aidan Timson a5e498207d OVO Energy - Sensor Entity Descriptions (#54952) 2021-08-24 12:53:32 +02:00
Matthias Alphart 17a7f7adeb Configurable default hvac_mode for KNX climate (#54289) 2021-08-24 12:53:11 +02:00
Andre Richter 0fdea8ec8f SMA: Add statistics support for power sensors (#54422) 2021-08-24 12:16:31 +02:00
jjlawren d5fe7e0e5a Fallback to try all known Plex servers if none marked present (#53643) 2021-08-24 12:05:24 +02:00
Matthias Alphart 19d81af4c1 Test KNX fan (#53621) 2021-08-24 12:00:37 +02:00
cdheiser ede916f42f Provide unique IDs for Lutron Entities (#51395)
Co-authored-by: cdheiser <cdheiser@users.noreply.github.com>
2021-08-24 11:50:32 +02:00
Jasper Smulders 5aa6f9dbb2 Add deCONZ support for Sonoff SNZB-01 switches (#54919) 2021-08-24 11:33:19 +02:00
jan iversen e2ce1d8b24 Please mypy in gtfs and implement needed changes (#54328) 2021-08-24 11:28:45 +02:00
jan iversen 336aa74317 Activate mypy for todoist (#55096) 2021-08-24 11:23:33 +02:00
jan iversen 0ab99fc8bf Activate mypy for surepetcare (#55079) 2021-08-24 11:21:57 +02:00
Jan Bouwhuis 5bb9aa8f3d Remove MQTT Fan legacy speeds (#54768)
* Remove MQTT Fan legacy speeds

* deprecated attibutes are not disruptive
2021-08-24 11:21:35 +02:00
Pascal Vizeli 6cace8d8a1 Update base image for Alpine 3.14 (#55137) 2021-08-24 11:20:45 +02:00
Erik Montnemery 0624859bf4 Set statistics columns to double precision (#55053) 2021-08-24 11:18:59 +02:00
Klaas Schoute 96056f3fce Fix bug removing API key on Forecast Solar (#55119) 2021-08-24 11:08:15 +02:00
Ernst Klamer d3f17de072 Change Solarlog Watt-peak to Watt (#55110) 2021-08-24 10:55:40 +02:00
J. Nick Koston dc851b9dd5 Ensure camera scaling always produces an image of at least the requested width and height (#55033) 2021-08-24 10:44:12 +02:00
epenet ccaf0d5c75 Use EntityDescription - onewire (#55003) 2021-08-24 10:37:59 +02:00
Marc Mueller 2796f65453 Use EntityDescription - broadlink (#55019) 2021-08-24 10:31:40 +02:00
Marc Mueller a527872a10 Use EntityDescription - comed_hourly_pricing (#55066) 2021-08-24 10:27:26 +02:00
Marc Mueller 8f2ea5f3cc Use EntityDescription - rtorrent (#55067) 2021-08-24 10:24:16 +02:00
Marc Mueller 9f4f38dbef Use switch instead of toggle entity (#55111) 2021-08-24 10:22:06 +02:00
Andre Richter a08f42e516 Use EntityDescription - Vallox (#54891)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-08-24 10:14:34 +02:00
Allen Porter 58f170ba45 Pin google-api-core to avoid new version of grpcio (#55115) 2021-08-24 09:43:29 +02:00
Klaas Schoute 5a58aa99b6 Bump Forecast Solar to v2.1.0 (#55121) 2021-08-24 09:15:57 +02:00
Paulus Schoutsen 9fc96818df Guard for unparsable date time (#55108) 2021-08-23 23:56:47 -07:00
Paulus Schoutsen c8f584f4ef Validate requirements format in hassfest (#55094)
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-08-24 08:51:07 +02:00
Paulus Schoutsen cac486440f Mark eagle entities as unavailable if connection with meter losts (#55102) 2021-08-23 22:35:26 -07:00
J. Nick Koston e92e206544 Fix race that allowed multiple config flows with the same unique id (#55131)
- If a config flow set a unique id and then did an await to
  return control to the event loop, another discovery with
  the same unique id could start and it would not see
  the first one because it was still uninitialized. We now
  check uninitialized flows when setting the unique id
2021-08-23 23:01:21 -05:00
Jesse Hills e06f3a5e95 Bump aioesphomeapi to 7.0.0 (#55129) 2021-08-23 22:40:01 -05:00
J. Nick Koston ce0a42a407 Fix updating device path from discovery in zha (#55124) 2021-08-23 22:36:24 -05:00
J. Nick Koston 6f75a853f8 Bump httpx to 0.19.0 (#55106)
* Bump httpx to 0.19.0

* regen constraints
2021-08-23 20:27:53 -07:00
Giuseppe Iannello 4d7de0fd4c Add support for Google Assistant's LocatorTrait for vacuum cleaners (#55015)
* Support for LocatorTrait for vacuum cleaners

* Handle Locator request with `silence: True`

* Update homeassistant/components/google_assistant/trait.py

Co-authored-by: Joakim Plate <elupus@ecce.se>

* Black

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Joakim Plate <elupus@ecce.se>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-08-23 20:16:50 -07:00
GitHub Action ff14a11254 [ci skip] Translation update 2021-08-24 01:55:24 +00:00
RDFurman 2aed7b94c5 Add multi device support back to honeywell (#54003)
* Add multi device support back to honeywell

* Fix device reference in honeywell climate

* Use deviceid for unique_id

* Add test for multiple thermostats

* Reduce recursive jobs

* Remove old filter

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-23 17:54:55 -05:00
Maciej Bieniek 09b872d51f Add sensor platform for Tractive integration (#54143)
* Add sensor platform

* Add extra_state_attributes

* Add more constants

* Add sensor.py to .coveragerc file

* Use native value

* Suggested change

* Move SENSOR_TYPES to sensor platform

* Add domain as prefix to the signal

* Use TractiveEntity class

* Add model.py to .coveragerc file

* Clean up files

* Add entity_class attribute to TractiveSensorEntityDescription class

* TractiveEntity inherits from Entity

* Suggested change

* Define _attr_icon as class attribute

Co-authored-by: Daniel Hjelseth Høyer <mail@dahoiv.net>
2021-08-24 00:20:28 +02:00
jan iversen f91d214ba4 Break out mock of pymodbus return from mock_modbus to new fixture (#55063)
* Remove unused mock_modbus.

* Break out mock pymodbus return values.

* Review comments.
2021-08-23 23:55:57 +02:00
Marc Mueller 7314b1c8e1 Use EntityDescription - thinkingcleaner (#55068) 2021-08-23 23:04:17 +02:00
Marc Mueller 354dbe91b7 Use EntityDescription - ombi (#55086) 2021-08-23 23:00:14 +02:00
jan iversen dae40530bd Activate mypy for synology_srm (#55059) 2021-08-23 22:57:33 +02:00
Marc Mueller c2b2c8604f Use EntityDescription - volkszaehler (#55034) 2021-08-23 22:56:31 +02:00
jan iversen 9b472aee9a Activate mypy for wink (#55077) 2021-08-23 22:55:00 +02:00
jan iversen cada3d1819 Activate mypy for smarttub (#55070) 2021-08-23 22:52:34 +02:00
Maciej Bieniek 0c68a54dea Fix TypeError in Xiaomi Miio fan platform (#55091) 2021-08-23 22:51:29 +02:00
J. Nick Koston 52bbaa8277 Bump pymyq to 3.1.3 (#55099) 2021-08-23 22:50:44 +02:00
Marc Mueller 4d93f23feb Use EntityDescription - enocean (#55087) 2021-08-23 22:47:46 +02:00
Marc Mueller 9fe434ac36 Use EntityDescription - zamg (#54942) 2021-08-23 22:44:03 +02:00
Marc Mueller 1152330865 Use EntityDescription - dovado (#54945) 2021-08-23 22:41:02 +02:00
Marc Mueller a23f27a7a8 Use EntityDescription - magicseaweed (#54943) 2021-08-23 22:38:10 +02:00
Marc Mueller c7926e56b8 Use EntityDescription - sensehat (#54995) 2021-08-23 22:35:59 +02:00
Marc Mueller 4a1906a833 Use EntityDescription - startca (#55036) 2021-08-23 22:33:59 +02:00
Marc Mueller 1f6a70bafd Use EntityDescription - amcrest (#54998) 2021-08-23 22:32:01 +02:00
Marc Mueller e5a350e786 Use EntityDescription - miflora (#55020) 2021-08-23 22:30:01 +02:00
Marc Mueller 4b069b42f0 Use EntityDescription - radarr (#54997) 2021-08-23 22:27:42 +02:00
Marc Mueller a84f1284c0 Use EntityDescription - bbox (#55064) 2021-08-23 22:24:32 +02:00
gjong 90f7131328 Update YouLess integration for long time measurements (#54767) 2021-08-23 22:14:56 +02:00
Ernst Klamer 4a57392881 Add state_class and device_class to Solarlog platform (#53946)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-08-23 22:11:20 +02:00
Marc Mueller 3bd309299e Use EntityDescription - foobot (#54996) 2021-08-23 21:38:40 +02:00
jan iversen d5c26aece1 Activate mypy for tuya (#55057) 2021-08-23 21:30:04 +02:00
Marc Mueller 791ccca042 Use EntityDescription - openevse (#55084) 2021-08-23 21:29:22 +02:00
Marc Mueller 6637ed4868 Use EntityDescription - deluge (#55085) 2021-08-23 21:20:35 +02:00
Marc Mueller 20f94d7ad4 Use EntityDescription - pushbullet (#54999) 2021-08-23 21:05:57 +02:00
J. Nick Koston 99465f53c7 Bump HAP-python to 4.1.0 (#55005) 2021-08-23 21:00:26 +02:00
jan iversen a5c1fbcb1a Activate mypy for velbus (#55055) 2021-08-23 20:57:37 +02:00
Robert Svensson 6ad0e0220a Update alarm control panel and deconz alarm event to reflect the finalized implementation in deCONZ (#54936)
* Update alarm control panel and deconz alarm event to reflect the new implementation in deCONZ

* Bump dependency to v83
2021-08-23 20:56:45 +02:00
Marc Mueller 4d452dbccf Use EntityDescription - fido (#55037) 2021-08-23 20:56:15 +02:00
Marc Mueller 32ac1340d8 Use EntityDescription - travisci (#55038) 2021-08-23 20:52:05 +02:00
Jc2k 0065bbc56d Add volatile organic compounds to homekit_controller (#55093) 2021-08-23 20:47:09 +02:00
jan iversen 4ef376a971 Activate mypy for volumio (#55054)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2021-08-23 20:23:53 +02:00
jan iversen 9078824556 Activate mypy for timer (#55058) 2021-08-23 20:22:55 +02:00
Marc Mueller 45a32362af Use EntityDescription - wirelesstag (#55065) 2021-08-23 20:21:00 +02:00
Marc Mueller ce5c76869d Use EntityDescription - ecobee (#55088) 2021-08-23 20:19:19 +02:00
Franck Nijhof 2cdaf632a4 Restore last_triggered state in scripts (#55071) 2021-08-23 11:05:29 -07:00
Marc Mueller a3ff05f367 Update pylint to 2.10.2 (#55089) 2021-08-23 12:24:19 -05:00
Marc Mueller 8522538d8f Use EntityDescription - rainmachine (#55021) 2021-08-23 12:23:35 -05:00
Erik Montnemery ee3e27c82a Add support for white to light groups (#55082) 2021-08-23 18:29:44 +02:00
Klaas Schoute 21806115ee Pass session to forecast constructor (#55075) 2021-08-23 17:18:56 +02:00
Erik Montnemery 68f1c19049 Enable basic type checking for azure_event_hub (#55047)
* Enable basic type checking for azure_event_hub

* Update homeassistant/components/azure_event_hub/__init__.py

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

* Disable false pylint positive

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-23 17:04:42 +02:00
jan iversen b76e8c5722 Please mypy. (#55069) 2021-08-23 17:02:31 +03:00
Martin Hjelmare 716abaa9b1 Prefer discovered usb device over add-on config in zwave_js (#55056) 2021-08-23 13:50:08 +02:00
Erik Montnemery ee009cc332 Fix DSMR startup logic (#55051) 2021-08-23 12:32:57 +02:00
Jc2k 2dd4de060b Add device class for volatile organic compounds (#55050) 2021-08-23 11:14:43 +02:00
JasperPlant 4a2eeed1e8 Growatt server integration add TLX support (#54844) 2021-08-23 10:55:38 +02:00
Pascal Vizeli 5a7b894ba8 Alpine 3.14 (#55049) 2021-08-23 10:05:10 +02:00
Pawel f72bf2145b Remove deprecated YAML configuration from Epson (#55045) 2021-08-23 09:53:23 +02:00
Erik Montnemery 03bda6ed15 Enable basic type checking for almond (#54927)
* Enable basic type checking for almond

* Tweak

* Address review comments
2021-08-23 09:35:03 +02:00
Robert Hillis e5d6e18e30 Complete config flow tests for sense (#55040) 2021-08-23 07:58:42 +02:00
Robert Hillis 87d52cd2d1 Clean up unused ipp logger (#55039) 2021-08-22 19:44:23 -05:00
Raman Gupta 5f5c8ade41 Fix validation for zwave_js device trigger and condition (#54974) 2021-08-22 20:43:59 -04:00
GitHub Action 305475a635 [ci skip] Translation update 2021-08-23 00:12:20 +00:00
Eric Severance 2113368b85 Add zigbee connection for wemo bridge lights (#53813) 2021-08-22 23:12:02 +02:00
Marc Mueller e5338c3f89 Use EntityDescription - ring (#55023)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-08-22 22:26:24 +02:00
J. Nick Koston 562212bb5e Add support for bridge accessory unavailability (#52207)
Co-authored-by: Jc2k <john.carr@unrouted.co.uk>
2021-08-22 21:20:40 +02:00
Franck Nijhof 0680e9f833 Fix P1 Monitor requirement in manifest (#55027) 2021-08-22 20:33:09 +02:00
Ville Skyttä 0095c6baeb Improve device trigger type hinting (#54907) 2021-08-22 20:32:50 +02:00
Marc Mueller bfb6eaf6f3 Use EntityDescription - openuv (#55022) 2021-08-22 20:30:50 +02:00
Robert Hillis bba6a75934 Add silver quality scale to goalzero (#53299)
* Add platinum quality scale to goalzero

* adjust for quality scale

* Update manifest.json
2021-08-22 20:13:44 +02:00
Eric Severance e6ba3b41cb Add Binary Sensor for WeMo Insight & Maker (#55000)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-22 20:09:22 +02:00
Jonas Pedersen 2d34ebc506 Add state_class to relevant sensors in Danfoss Air (#54847)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-08-22 19:59:59 +02:00
jan iversen da20552cd8 Remove base_test from modbus test harness (#55018)
* Remove base_test.

* Review comments.
2021-08-22 19:59:38 +02:00
Niels Mündler 6d049c724c Add support for logger info in fronius integration (#54795)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-08-22 18:57:18 +02:00
J. Nick Koston b6a1153d42 Skip trying the pyudev observer when using standalone docker for usb (#54987) 2021-08-22 11:30:35 -05:00
Franck Nijhof 0efcd7888d Upgrade watchdog to 2.1.4 (#54993) 2021-08-22 14:23:09 +02:00
Franck Nijhof 9be5793ed7 Upgrade apprise to 0.9.4 (#55002) 2021-08-22 11:00:35 +02:00
Franck Nijhof afc95becd0 Fix incorrect power device class on energy sensors in Smappee (#54994) 2021-08-21 19:17:36 -07:00
Franck Nijhof 243c52e210 Add missing BYN currency (#55001) 2021-08-21 19:14:48 -07:00
Jørgen Rørvik b942454312 Fix manual setup when roomba is on different subnet (#54639)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-08-21 20:01:41 -05:00
GitHub Action 45baf88862 [ci skip] Translation update 2021-08-22 00:11:30 +00:00
J. Nick Koston 06fcf51754 Bump python-yeelight to 0.7.3 (#54982) 2021-08-21 17:55:10 -05:00
Franck Nijhof d8eedaf9fd Upgrade PyTurboJPEG to 1.5.2 (#54992) 2021-08-21 16:58:25 -05:00
J. Nick Koston 42f7f19be5 Switch periodic USB scanning to on-demand websocket when observer is not available (#54953) 2021-08-21 16:06:44 -05:00
Marc Mueller a931e35a14 Use EntityDescription - google_wifi (#54941) 2021-08-21 21:59:06 +02:00
J. Nick Koston 0403ea715e Add known devices to USB Vendor / Product IDs (#54986)
Co-authored-by: kpine <keith.pine@gmail.com>
2021-08-21 21:56:49 +02:00
Chris Talkington 5329dccd8b Remove ctalkington from directv codeowner (#54988) 2021-08-21 21:55:51 +02:00
Michael 9de24300d0 VSCode switch to terminal.integrated.profiles (#54301) 2021-08-21 21:46:24 +02:00
Simone Chemelli a5902fbe29 Synology sensor name clarification (#54262) 2021-08-21 21:40:18 +02:00
J. Nick Koston 8d69475d71 Fix recorder shutdown race and i/o in event loop (#54979) 2021-08-21 21:38:02 +02:00
J. Nick Koston ebb8ad308e Fix nmap_tracker typing (#54858)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-08-21 21:25:28 +02:00
Marc Mueller 4916016648 Use EntityDescription - envirophat (#54944) 2021-08-21 20:53:25 +02:00
Marc Mueller f9ebb29541 Use EntityDescription - starline (#54431) 2021-08-21 20:47:29 +02:00
Marc Mueller 05de7a78d1 Use EntityDescription - trafikverket_weatherstation (#54430) 2021-08-21 20:32:40 +02:00
Marc Mueller dce816ee96 Use EntityDescription - nzbget (#54427) 2021-08-21 20:30:42 +02:00
Marc Mueller 17902c3ffa Use EntityDescription - buienradar (#54317) 2021-08-21 20:28:31 +02:00
jan iversen f872594e26 Activate mypy for homematicip_cloud (#54950)
* Please mypy.

* Review comments.

* Review comments.
2021-08-21 20:19:56 +02:00
Eric Severance 67d04b6082 Use DataUpdateCoordinator for wemo (#54866)
* Use DataUpdateCoordinator for wemo

* Rename DeviceWrapper->DeviceCoordinator and make it a subclass of DataUpdateCoordinator

* Rename async_update_data->_async_update_data to override base class

* Rename: device -> coordinator
2021-08-21 20:14:55 +02:00
Brian Egge 6cefd558d8 Set unique id to amcrest serial number (#54675)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Sean Vig <sean.v.775@gmail.com>
2021-08-21 19:58:37 +02:00
Maciej Bieniek 4a6ca8a04e Add number platform for Xiaomi Miio fan (#54977) 2021-08-21 19:09:42 +02:00
J. Nick Koston aa7c72a8b5 Bump sqlalchemy to 1.4.23 (#54980)
- Changelog: https://docs.sqlalchemy.org/en/14/changelog/changelog_14.html#change-1.4.23
2021-08-21 13:00:39 -04:00
J. Nick Koston a7d8e2b817 Add support for USB discovery to zwave_js (#54938)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-21 09:30:45 -05:00
jan iversen 33f660118f Add lazy_error_count to modbus (#54412)
* Add lazy_error_count.

* Use -=

* Review comments.
2021-08-21 15:49:50 +02:00
J. Nick Koston 51434c5faa Gracefully handle udev not available via OSError when setting up usb (#54967) 2021-08-21 07:24:45 -05:00
J. Nick Koston c609236a63 Move get_serial_by_id and human_readable_device_name to usb (#54968) 2021-08-21 07:24:21 -05:00
carstenschroeder 2cfd78bc49 Minor refactoring of keba integration (#54976)
* minor refactoring

* fix type annotation
2021-08-21 14:17:19 +02:00
Ville Skyttä 59809503d1 Various type hint related improvements (#54971)
* Avoid some implicit generic Anys

* Fix hassio discovery view type hints

* Fix http view result type in assert message
2021-08-21 13:58:49 +02:00
Klaas Schoute de354f96fe Remove unused string in P1 Monitor (#54911) 2021-08-21 13:53:28 +02:00
Erik Montnemery fedd958dc0 Enable basic type checking for atag (#54933) 2021-08-21 13:39:56 +02:00
Erik Montnemery efd15344e9 Enable basic type checking for analytics (#54928) 2021-08-21 11:46:28 +02:00
Erik Montnemery 7e5ff825dd Enable basic type checking for adguard (#54924) 2021-08-21 11:46:00 +02:00
Joakim Plate 4bdeba8631 Add fjäråskupan sensor (#54921)
* Add fjäråskupan sensor

* Update homeassistant/components/fjaraskupan/sensor.py

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

* Type the return value of constructor

* Update __init__.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-21 11:09:23 +02:00
Marc Mueller 69e413ac1e Update pylint to 2.10.1 (#54963)
* Update pylint to 2.10.0

* useless-suppression

* Consider-using-tuple

* Apply suggestions from code review

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

* Use dict.items()

* Add pylint disable

* Use pylint 2.10.1

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-21 10:41:23 +02:00
Joakim Plate 5142ebfcc2 Add fjäråskupan light entity (#54918)
* Add fjäråskupan light

* Update homeassistant/components/fjaraskupan/light.py

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

* Check property

* Switch to default coordinator update

* Type check constructor

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-21 09:34:32 +02:00
Ville Skyttä de6e7ea016 Replace *args and **kwargs type hint collections with value types (#54955) 2021-08-21 10:20:09 +03:00
Raman Gupta 726acc38c6 Improve Command Class choices for zwave_js device triggers and conditions (#54970) 2021-08-21 02:57:20 -04:00
Raman Gupta 2be50eb5b4 Add zwave_js device triggers for any zwave value (#54958)
* Add zwave_js device triggers for any zwave value

* translations

* Validate value
2021-08-21 00:09:52 -04:00
Raman Gupta 1075a65bbd Remove Configuration CC as choice in zwave_js value device condition (#54962) 2021-08-21 00:09:27 -04:00
J. Nick Koston 8796eaec81 Add support for USB discovery to ZHA (#54935)
* Add USB discovery support to ZHA

* dry

* dry

* Update homeassistant/components/zha/config_flow.py

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

* black

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-20 20:42:23 -05:00
J. Nick Koston b71f2689d7 Make yeelight aware of the network integration (#54854) 2021-08-20 19:09:22 -05:00
J. Nick Koston 1325b38256 Handle case where location_name is set to "" for zeroconf (#54880) 2021-08-20 14:33:23 -07:00
J. Nick Koston 3cb7227040 Normalize the display name of yeelight devices (#54883)
Co-authored-by: Teemu R. <tpr@iki.fi>
2021-08-20 14:32:48 -07:00
Samuel Tardieu 71b8409c0d Use a static collection of forwarded attributes (#54870)
Not repeating each attribute name three times lowers the risk of a typo.
Also, only one lookup is done during the kwargs traversal instead of two.
2021-08-20 14:24:16 -07:00
bsmappee 152f799d0e Extract smappee switch energy attributes into sensors (#54329) 2021-08-20 14:20:45 -07:00
Guy Khmelnitsky 8f6281473e Fix Watson TTS to use correct API (#54916) 2021-08-20 22:41:30 +02:00
Raman Gupta 1f2134a31a Use entity descriptions for zwave_js sensors (#53744)
* Use entity descriptions for zwave_js sensors

* reorder

* use new type

* revert typing changes

* switch to using maps

* Get device and state class from discovery instead

* ues constants for keys

* Add meter type attribute and simplify platform data access

* comments

* second refactor

* Add None lookup value

* readability

* Switch base data template to type Any for more flexibility

* Additional changes based on feedback

* rewrite based on new upstream util functions

* Use new combo type

* Handle UnknownValueData in discovery

* bug fixes

* remove redundant comment

* re-add force_update

* fixes and tweaks

* pylint and feedback
2021-08-20 16:25:39 -04:00
Ville Skyttä debc6d632c Improve device condition type hinting (#54906) 2021-08-20 22:21:40 +02:00
Sebastian Lövdahl 9633b9fe6e Fix Google Calendar auth user code expire time comparison (#54893)
Fixes #51490.
2021-08-20 22:12:10 +02:00
Raman Gupta 63f6a3b46b Add zwave_js.value_updated automation trigger (#54897)
* Add zwave_js automation trigger

* Rename to align with zwave-js api

* Improve test coverage

* Add additional template variables

* Support states values in addition to keys when present

* remove entity ID from trigger payload

* comments and order

* Add init and dynamically define platform_type

* reduce mypy ignores

* pylint

* pylint

* review

* use module map
2021-08-20 15:21:55 -04:00
J. Nick Koston dc74a52f58 Add support for USB discovery (#54904)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-20 14:04:18 -05:00
Raman Gupta 11c6a33594 Bump zwave-js-server-python to 0.29.0 (#54931)
* Bump zwave-js-server-python to 0.29.0

* Cover secure flag true paths for add node WS commands
2021-08-20 14:55:58 -04:00
Joakim Plate dd8542e01f Add fjäråskupan binary_sensor (#54920)
* Add fjäråskupan binary_sensor

* Switch to entity description

* Type check constructor
2021-08-20 20:18:30 +02:00
Teemu R 3048923dc2 Remove deprecated async_setup_platforms() for xiaomi_miio (#54930) 2021-08-20 11:13:58 -07:00
Erik Montnemery dbc4470979 Enable basic type checking for aemet (#54925) 2021-08-20 19:10:19 +02:00
Erik Montnemery 09ee7fc021 Enable basic type checking for asuswrt (#54929) 2021-08-20 19:08:22 +02:00
Raman Gupta ef9ad89c23 Add support for area ID in zwave_js service calls (#54940) 2021-08-20 12:55:17 -04:00
jan iversen 1f6d18c517 Set quality level of modbus to gold (#54926)
* Prepare for gold.

* Upgrade to gold.
2021-08-20 17:59:31 +02:00
jan iversen 1e3452496a Make log rollover at startup (#54865)
* Secure log rollover at startup.

* Review comments.

* Please CI.
2021-08-20 17:59:10 +02:00
J. Nick Koston 725b316ec6 Add HomeKit and DHCP to DISCOVERY_SOURCES in config_entries (#54923) 2021-08-20 17:02:03 +02:00
Paulus Schoutsen 2ddeb0c013 Ask for host because EAGLE mdns doesn't work in HA OS (#54905) 2021-08-20 07:52:30 -07:00
Erik Montnemery 2fa07777cd Warn if unit_of_measurement is set on instances of SensorEntityDescription (#54867)
* Add class BaseEntityDescription without unit_of_measurement

* Refactor according to review comments

* Tweak

* Fix offending integrations

* Fix offending integrations
2021-08-20 15:54:57 +02:00
Erik Montnemery e134246cbd Improve DSMR shutdown (#54922) 2021-08-20 15:54:05 +02:00
Maciej Bieniek fe6c896754 Add switch platform for Xiaomi Miio fans (#54834) 2021-08-20 15:12:29 +02:00
Robert Hillis 5e8c873d5f Fix image_processing selectors (#54915) 2021-08-20 14:20:01 +02:00
JasperPlant 12ad6b8a2b Add growatt total state_class for storage (#54913) 2021-08-20 14:08:28 +02:00
Joakim Plate 1f4c12195e Fjäråskupan kitchen fan (#53140)
* Add fjäråskupan fan control

* Update tests/components/fjaraskupan/conftest.py

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

* Update homeassistant/components/fjaraskupan/config_flow.py

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

* Update homeassistant/components/fjaraskupan/config_flow.py

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

* Increase manual update to 2 minutes

* Address review comments

* Switch to discovery flow

* Address more review comments

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-20 13:41:36 +02:00
J. Nick Koston 6218cd648d Update nmap_tracker to use the network integration (#54877)
* Update nmap_tracker to use the network integration

* fix redefine variable inner scope
2021-08-20 13:01:55 +02:00
muchtall 2ac0aea765 Fix Lyric cool mode (#54856)
* fixing Cool mode in lyric

* Use climate integration constants

I believe this fixes this issue: https://github.com/home-assistant/core/pull/51760#discussion_r650372737

* Run through black

* Delint

Co-authored-by: Yadu Raghu <yraghu55@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-20 12:50:28 +02:00
ollo69 e5f914bbdb Clean up AsusWRT if check (#54896) 2021-08-20 12:20:39 +02:00
Raman Gupta 3a2afb8bde Support group entities in zwave_js service calls (#54903) 2021-08-20 11:18:19 +02:00
Geoffrey 017b8d3615 Add energy management support to Growatt server integration (#54174)
Co-authored-by: Chris Straffon <c.m.straffon@gmail.com>
2021-08-20 10:53:48 +02:00
Klaas Schoute 68fbc0792a Add P1 Monitor integration (#54738)
* Init integration P1 Monitor

* Fix build error

* Add quality scale

* Remove last_reset and icon

* Change list to tuple

* Close client on connection exception

* Change min value to 5 (seconds)

* the used python package will close it

* Remove the options flow

* Add session and close client

* Smash to a single DataUpdateCoordinator

* Make a custom update coordinator class

* await the coordinator close

* Add second await the coordinator close

* Close when exit scope

* Removed unused code

* Fix test_sensor on entity_id change

* Fix test on test_sensor

* Transfer SENSOR dict to sensor platform

* device class for cost entity update entity_name

* Revert name in unique id and update sensor test

* Update code based on suggestions

* Fix typing

* Change code to fix mypy errors

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-20 08:45:04 +02:00
Erik Montnemery 32e297f4a0 Compile missing statistics (#54690) 2021-08-19 22:10:45 -07:00
Raman Gupta 036e99e91e Allow integrations to define trigger platforms with a subtype (#54861) 2021-08-19 21:43:04 -07:00
Ville Skyttä 4bb2c6e00f Improve device action type hinting (#54850)
* Improve device action type hinting

* More precise _async_get_automations type hints

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-20 07:13:25 +03:00
GitHub Action fc6d45a63b [ci skip] Translation update 2021-08-20 00:16:03 +00:00
Paulus Schoutsen f1a4ba8bb0 Add Rainforest Eagle tests and price (#54887) 2021-08-19 13:19:31 -07:00
micha91 6eadc0c303 Yamaha Musiccast Media Browser feature (#54864) 2021-08-19 20:42:11 +02:00
Paulus Schoutsen 4ae2a26aa3 Add config flow to Rainforest EAGLE-200 (#54846)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-19 09:22:30 -07:00
J. Nick Koston 8103d9ae3c Add missing id to yeelights that were setup manually (#54855) 2021-08-19 08:46:14 -05:00
Erik Montnemery 4903c1fbfd Minor cleanup of SensorEntity (#54624) 2021-08-19 12:53:47 +02:00
Erik Montnemery 32a2c5d5db Add support for Swedish smart electricity meters to DSMR (#54630)
* Add support for Swedish smart electricity meters to DSMR

* Use Swedish protocol support from dsmr_parser

* Update tests

* Bump dsmr_parser to 0.30

* Remove last_reset attribute from Swedish energy sensors
2021-08-19 10:11:20 +02:00
jan iversen 0688aaa2b6 Check for duplicate entity name/address in modbus entities (#54669)
* Check for duplicate entity name/address.
2021-08-19 09:37:31 +02:00
epenet faec82ae8f Add binary sensor platform to Renault integration (#54750)
* Add binary sensor platform

* Add tests

* Simplify code

* Adjust descriptions

* Adjust tests

* Make "fuel" tests more explicit

* Updates for device registry checks
2021-08-19 09:27:43 +02:00
Eric Severance e7fa3e727b Bump pywemo to 0.6.7 (#54862) 2021-08-19 08:38:52 +02:00
Eric Severance 71b123845c Always mock SubscriptionRegistry & DiscoveryResponder for wemo tests (#53967)
* Always mock SubscriptionRegistry & DiscoveryResponder for wemo tests

* Use autospec=True for patch
2021-08-19 07:17:16 +02:00
Robert Hillis e11ffbcdaf Rework goalzero for EntityDescription (#54786)
* Rework goalzero for EntityDescription

* changes

* fix

* lint
2021-08-19 04:24:44 +02:00
ehendrix23 d3f7312834 Improve MyQ code quality through creation of MyQ entity (#54728) 2021-08-18 20:50:46 -05:00
Robin Wohlers-Reichel 4f9c788216 Update PULL_REQUEST_TEMPLATE.md (#54762)
* Update PULL_REQUEST_TEMPLATE.md

* Update PULL_REQUEST_TEMPLATE.md

Address review comments by moving changes into 'Checklist' section

* Update PULL_REQUEST_TEMPLATE.md

* Update .github/PULL_REQUEST_TEMPLATE.md

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

* Update .github/PULL_REQUEST_TEMPLATE.md

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

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-19 03:50:28 +02:00
GitHub Action 4a9a6cd538 [ci skip] Translation update 2021-08-19 00:13:56 +00:00
J. Nick Koston 799a97789d Drop tado codeowner (#54849)
- I no longer have any tado devices
2021-08-18 14:40:45 -07:00
Paulus Schoutsen 14b74fbf71 Merge pull request #54853 from home-assistant/rc 2021-08-18 14:28:51 -07:00
Paulus Schoutsen c75c4aeea5 Bump frontend to 20210818.0 (#54851) 2021-08-18 13:56:43 -07:00
Paulus Schoutsen a46b39d3c1 Bumped version to 2021.8.8 2021-08-18 13:53:12 -07:00
J. Nick Koston cfc2c40bd8 Fix HomeKit cover creation with tilt position, open/close, no set position (#54727) 2021-08-18 13:53:05 -07:00
rikroe be69191110 Fix BMW remote services in rest_of_world & north_america (#54726)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-08-18 13:53:04 -07:00
Dylan Gore 99a9173d49 Update PyMetEireann to 2021.8.0 (#54693) 2021-08-18 13:53:03 -07:00
Marc Mueller e783b8ce99 Fix 'in' comparisons vesync light (#54614) 2021-08-18 13:53:02 -07:00
Teemu R 01082fb5ab Fix tplink doing I/O in event loop and optimize (#54570)
* Optimize tplink i/o

* Cache has_emeter reduceing the number of i/o requests on hs300 by 5
* Use the state from the sysinfo dict for non-strips reducing required requests by one

* Remove I/O from __init__, read has_emeter from sysinfo

* Cleanup __init__ to avoid I/O
* Re-use the sysinfo response for has_emeter
* Use async_add_executor_job() to execute the synchronous I/O ops.

* use the device alias instead of host for coordinator, use executor for unavailable_devices

* Remove unnecessary self.hass assignment

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-18 13:53:01 -07:00
Tom Brien d0b1caa8b0 Fix TPLink emeter reset not updating (#54848) 2021-08-18 12:51:48 -07:00
Erik Montnemery c74f9a8313 Remove stale references to last_reset (#54838)
* Remove stale references to last_reset

* Update tests
2021-08-18 21:47:57 +02:00
Daniel Hjelseth Høyer 98e8e89364 Mill data coordinator (#53603)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-08-18 12:30:37 -07:00
Erik Montnemery f9fa5fa804 Deprecate last_reset options in MQTT sensor (#54840) 2021-08-18 20:22:01 +02:00
Paulus Schoutsen 2f77b5025c Add energy validation (#54567) 2021-08-18 11:21:51 -07:00
J. Nick Koston 6d0ce814e7 Add new network apis to reduce code duplication (#54832) 2021-08-18 12:33:26 -05:00
J. Nick Koston 30564d59b6 Bump yeelight quality scale to platinum with switch to async local push (#54589) 2021-08-18 12:32:52 -05:00
Raman Gupta 08193169d0 Remove unnecessary signal during zwave_js.reset_meter service call (#54837) 2021-08-18 19:27:41 +02:00
J. Nick Koston e7a0604a40 Make yeelight discovery async (#54711) 2021-08-18 09:36:13 -07:00
Erik Montnemery bca9360d52 Remove last_reset attribute from tasmota energy sensors (#54836) 2021-08-18 09:25:33 -07:00
J. Nick Koston 5d19575a84 Exclude global scope IPv6 when setting up zeroconf interfaces (#54632) 2021-08-18 09:00:09 -07:00
Thomas Lovén 8d37fd08c7 Fix integration sensors sometimes not getting device_class or unit_of_measurement (#54802) 2021-08-18 08:59:31 -07:00
Erik Montnemery bce7c73925 Remove last_reset attribute from and set state class to total_increasing for enphase_envoy energy sensors (#54831) 2021-08-18 08:58:32 -07:00
rikroe 041ba2ec3a Fix BMW remote services in rest_of_world & north_america (#54726)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-08-18 08:58:07 -07:00
Raman Gupta c1595d5ceb Only show zwave_js command classes that are on the node (#54794) 2021-08-18 17:53:00 +02:00
Erik Montnemery a6ac55390a Remove last_reset attribute and set state class to total_increasing for smartthings energy sensors (#54824)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-08-18 17:14:02 +02:00
Erik Montnemery e98d50f6d1 Remove last_reset attribute and set state class to total_increasing for mysensors energy sensors (#54827) 2021-08-18 16:58:13 +02:00
Erik Montnemery 9c7ea786a7 Remove last_reset attribute and set state class to total_increasing for saj energy sensors (#54813)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-08-18 16:57:38 +02:00
Erik Montnemery 6aca3b326f Remove last_reset attribute and set state class to total_increasing for fronius energy sensors (#54830) 2021-08-18 16:57:19 +02:00
Erik Montnemery 09fbc38baa Remove last_reset attribute from keba energy sensors (#54828) 2021-08-18 16:45:30 +02:00
Erik Montnemery 6eba04c454 Remove last_reset attribute from wemo energy sensors (#54821) 2021-08-18 16:45:16 +02:00
Erik Montnemery 4892f6b094 Remove last_reset attribute and set state class to total_increasing for sense energy sensors (#54825) 2021-08-18 16:31:10 +02:00
Ville Skyttä 9947795068 Treat Huawei LTE error code 100006 as unsupported functionality (#54253)
Internet says 100006 could mean "parameter error", B2368-F20 is
reported to respond with that to lan/HostInfo requests.

While at it, handle the special case error codes and the "real" not
supported exception in the same block.

Closes https://github.com/home-assistant/core/issues/53280
2021-08-18 17:26:54 +03:00
Erik Montnemery 28e421dc53 Remove last_reset attribute and set state class to total_increasing for spider energy sensors (#54822) 2021-08-18 15:54:22 +02:00
Daniel Hjelseth Høyer 27849426fe Remove last_reset attribute and set state class to total_increasing for Integration sensors (#54815) 2021-08-18 15:54:11 +02:00
SmaginPV 07c0fc9eba Remove deprecated Xiaomi Miio fan speeds (#54182) 2021-08-18 15:53:17 +02:00
jan iversen 20b7125620 Activate mypy for Panasonic_viera (#54547) 2021-08-18 15:34:50 +02:00
Erik Montnemery 5536e24dec Remove last_reset attribute and set state class to total_increasing for zwave_js energy sensors (#54818) 2021-08-18 15:11:10 +02:00
Erik Montnemery aef8ec968b Remove last_reset attribute from kostal_plenticore energy sensors (#54817) 2021-08-18 14:59:22 +02:00
Erik Montnemery 0329d0f246 Remove last_reset attribute and set state class to total_increasing for tibber energy sensors (#54799)
* Remove last_reset attribute from tibber energy sensors

* Remove reset_type, fix merge

* Update homeassistant/components/tibber/sensor.py

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

Co-authored-by: Daniel Hjelseth Høyer <mail@dahoiv.net>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-08-18 14:18:51 +02:00
Erik Montnemery 60f8e24bde Remove last_reset attribute from sma energy sensors (#54814) 2021-08-18 13:58:08 +02:00
Erik Montnemery 0b7b4152f1 Remove last_reset attribute from devolo energy sensors (#54803) 2021-08-18 13:55:21 +02:00
Erik Montnemery d9bfb8fc58 Remove last_reset attribute and set state class to total_increasing for rainforest energy sensors (#54810) 2021-08-18 13:44:08 +02:00
Erik Montnemery 3c5ba1fcc3 Remove last_reset attribute and set state class to total_increasing for PVOutput energy sensors (#54809) 2021-08-18 13:41:57 +02:00
Erik Montnemery 7812b50572 Remove last_reset attribute and set state class to total_increasing for powerwall energy sensors (#54808) 2021-08-18 13:37:43 +02:00
Erik Montnemery 3e235f6e70 Remove last_reset attribute and set state class to total_increasing for Ovo cost and energy sensors (#54807) 2021-08-18 13:36:35 +02:00
Ville Skyttä 939fde0a50 ConfigType and async_setup/setup type hint improvements (#54739) 2021-08-18 13:22:05 +02:00
Erik Montnemery dcb2a211e5 Remove last_reset attribute and set state class to total_increasing for Shelly energy sensors (#54800) 2021-08-18 13:13:35 +02:00
Erik Montnemery 1280a38e0f Remove last_reset attribute from fritz sensors (#54806) 2021-08-18 13:12:37 +02:00
jan iversen bafbbc6563 Adjust modbus constants names (#54792)
* Follow up.
2021-08-18 12:56:54 +02:00
epenet 16cb50bddf Ensure device entry in Renault integration (#54797)
* Ensure device registry is set even when there are no entities

* Fix isort

* Use async_get for accessing registry
2021-08-18 12:44:35 +02:00
Joakim Sørensen bf494b5697 Remove distro from updater requirements (#54804) 2021-08-18 12:31:43 +02:00
Erik Montnemery d1057a7004 Remove last_reset and update state class for Atome energy (#54801) 2021-08-18 12:17:25 +02:00
Erik Montnemery cbff6a603d Remove unused last_reset from Toon (#54798) 2021-08-18 12:15:01 +02:00
J. Nick Koston 62015f5495 Bump async-upnp-client to 0.20.0, adapt to breaking changes (#54782) 2021-08-18 12:13:59 +02:00
Maciej Bieniek c937a235e1 Add select platform for Xiaomi Miio fans (#54702)
* Add select platform for Xiaomi Miio purifiers

* Add missing condition for AirFresh

* Suggested change

* Remove fan_set_led_brightness from services.yaml

* Remove zhimi.airpurifier.v3
2021-08-18 11:24:15 +02:00
Daniel Hjelseth Høyer 102af02d8a Tibber data coordinator (#53619)
* Tibber data coordinator

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

* Fix comments

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

* Fix comments

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

* Fix comments

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

* Remove whitespace

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-18 11:21:39 +02:00
Franck Nijhof 73d03bdf1d Add Gas device class to DSMR Reader (#54748) 2021-08-18 10:14:03 +02:00
Erik Montnemery e1926caeb9 Remove STATE_CLASS_TOTAL and last_reset from sensor (#54755)
* Remove STATE_CLASS_TOTAL

* Update mill sensor

* Update tests

* Kill last_reset

* Return ATTR_LAST_RESET to utility_meter

* Update energy cost sensor

* Restore last_reset for backwards compatibility

* Re-add and update deprecation warning

* Update tests

* Fix utility_meter

* Update EnergyCostSensor

* Tweak

* Fix rebase mistake

* Fix test
2021-08-18 10:03:27 +02:00
dependabot[bot] 85d9890447 Bump dessant/lock-threads from 2.1.1 to 2.1.2 (#54791)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-18 08:59:13 +02:00
Christopher Kochan c65f769130 Update sense_energy to version 0.9.2 (#54787) 2021-08-18 08:29:02 +02:00
J. Nick Koston 87496ae75c Fix HomeKit cover creation with tilt position, open/close, no set position (#54727) 2021-08-17 22:41:22 -05:00
J. Nick Koston d7c1e7c7dc Adjust yeelight homekit model (#54783) 2021-08-17 22:41:01 -05:00
Maciej Bieniek 10058ea3f0 Use new device classes in GIOS integration (#54743)
* Use new device classes

* Clean up
2021-08-17 22:35:05 -05:00
Maciej Bieniek bd550c4559 Use AQI, PM1, PM25, PM10 device classes in Airly (#54742) 2021-08-18 02:40:06 +02:00
GitHub Action 0100ffcb8c [ci skip] Translation update 2021-08-18 00:13:44 +00:00
Franck Nijhof b981e69f95 Update SolarEdge to use new state classes (#54731) 2021-08-18 02:00:10 +02:00
Teemu R 3bc45eacfc Fix tplink doing I/O in event loop and optimize (#54570)
* Optimize tplink i/o

* Cache has_emeter reduceing the number of i/o requests on hs300 by 5
* Use the state from the sysinfo dict for non-strips reducing required requests by one

* Remove I/O from __init__, read has_emeter from sysinfo

* Cleanup __init__ to avoid I/O
* Re-use the sysinfo response for has_emeter
* Use async_add_executor_job() to execute the synchronous I/O ops.

* use the device alias instead of host for coordinator, use executor for unavailable_devices

* Remove unnecessary self.hass assignment

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-18 01:29:40 +02:00
ehendrix23 67e9035e4e Improve myq error handling for opening/closing cover (#54724) 2021-08-17 17:56:33 -05:00
Daniel Hjelseth Høyer 6da83b90f7 Rfxtrx,STATE_CLASS_TOTAL_INCREASING (#54776)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-18 00:46:48 +02:00
Erik Montnemery 3a78f1fce6 Force STATE_CLASS_TOTAL_INCREASING to reset to 0 (#54751)
* Force STATE_CLASS_TOTAL_INCREASING to reset to 0

* Tweak

* Correct detection of new cycle

* Fix typing
2021-08-17 23:05:31 +02:00
gjong 8eec949835 Fix connectivity issue in the Youless integration (#54764) 2021-08-17 22:45:14 +02:00
Robert Hillis 4ef04898e9 Fix goalzero sensor not using SensorEntity class (#54773) 2021-08-17 22:38:20 +02:00
Daniel Hjelseth Høyer 909af30c7c Tractive, update library (#54775)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-17 22:04:05 +02:00
jan iversen 71b0f6d095 set common test entity name. (#54697) 2021-08-17 20:43:27 +02:00
ehendrix23 8bf79d61ee Add upnp binary sensor for connectivity status (#54489)
* New binary sensor for connectivity

* Add binary_sensor

* New binary sensor for connectivity

* Add binary_sensor

* Handle values returned as None

* Small text update for Uptime

* Update homeassistant/components/upnp/binary_sensor.py

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

* Update homeassistant/components/upnp/binary_sensor.py

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

* Update homeassistant/components/upnp/binary_sensor.py

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

* Update homeassistant/components/upnp/binary_sensor.py

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

* Update homeassistant/components/upnp/binary_sensor.py

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

* Update homeassistant/components/upnp/binary_sensor.py

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

* Update homeassistant/components/upnp/binary_sensor.py

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

* Update homeassistant/components/upnp/binary_sensor.py

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

* Updates based on review

* Update homeassistant/components/upnp/binary_sensor.py

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

* Further updates based on review

* Set device_class as a class atribute

* Create 1 combined data coordinator
and UpnpEntity class

* Updates on coordinator

* Update comment

* Fix in async_step_init for coordinator

* Add async_get_status to mocked device
and set times polled for each call seperately

* Updated to get device through coordinator
Check polling for each status call seperately

* Use collections.abc instead of Typing for Mapping

* Remove adding device to hass.data as coordinator
is now saved

* Removed setting _coordinator

* Added myself as codeowner

* Update type in __init__

* Removed attributes from binary sensor

* Fix async_unload_entry

* Add expected return value to is_on

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-08-17 20:23:41 +02:00
Franck Nijhof 5b75c8254b Use path helper method for principal file in google_pubsub (#54744)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-17 19:49:38 +02:00
Michael 15feb430fc Use DEVICE_CLASS_UPDATE in Synology DSM (#54769) 2021-08-17 19:15:02 +02:00
Raman Gupta cff6883b5c Add zwave_js Protection CC select entities (#54717)
* Add Protection CC select entities

comment

* Disable entity by default

* use class attribute

* Enable protection entity by default

* add guard for none
2021-08-17 12:22:27 -04:00
LonePurpleWolf 35f563e23e Airtouch4 integration (#43513)
* airtouch 4 climate control integration

* enhance tests for airtouch. Fix linting issues

* Fix tests

* rework tests

* fix latest qa issues

* Clean up

* add already_configured message

* Use common string

* further qa fixes

* simplify airtouch4 domain storage

Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-17 17:29:20 +02:00
Jc2k ea8061469c Deprecate homekit_controller's air quality entity in favor of separate sensor entities (#54673) 2021-08-17 09:29:52 -05:00
Franck Nijhof f39dc749bb Toon: Remove icon from sensors with gas device class (#54753) 2021-08-17 16:28:18 +02:00
Robin Wohlers-Reichel 043841e70f Solax 0.2.8 (#54759) 2021-08-17 15:06:22 +02:00
Niels Mündler 346310ccaf Bump pyfronius version to 0.5.5 (#54758)
- allows for trailing slashes in configuration (which would otherwise cause errors in the newest fronius firmware)
- fixes units of energy related sensors
2021-08-17 14:59:56 +02:00
Franck Nijhof 9dab920d01 DSMR: Remove icon from sensors with gas device class (#54752) 2021-08-17 14:26:02 +02:00
Raman Gupta 013b998974 Relax zwave_js lock discovery rules to cover more use cases (#54710) 2021-08-17 13:34:00 +02:00
Joakim Sørensen a2c9cfbf41 Use entity descriptions for hassio entities (#54749) 2021-08-17 12:14:14 +02:00
Maciej Bieniek f1f05cdf1b Use DEVICE_CLASS_UPDATE in Shelly integration (#54746) 2021-08-17 11:57:45 +02:00
Maciej Bieniek 4f3d1c5e12 Use PM1, PM25 and PM10 device classes in Nettigo Air Monitor integration (#54741) 2021-08-17 10:49:22 +02:00
Petru Paler 6d7ad8903f Energy support for Solax inverters (#54654)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-08-17 10:19:44 +02:00
jan iversen 69bc6bbe48 Activate mypy for google_pubsub (#54649) 2021-08-17 10:10:56 +02:00
Andre Richter afade22feb Add state classes to Vallox sensors (#54297) 2021-08-17 10:05:28 +02:00
Franck Nijhof 4c5d5a8f5a Update deCONZ to use new state classes (#54729) 2021-08-17 08:34:41 +02:00
Joakim Sørensen 789e6555cc Add device class update to hassio update entities (#54733) 2021-08-17 08:30:55 +02:00
Joakim Sørensen e0a8ec4f62 Add device class update to the updater binary_sensor (#54732) 2021-08-17 08:30:35 +02:00
Bert Roos 476f3b5cb5 Fix Google Calendar event loading (#54231) 2021-08-16 20:20:16 -07:00
GitHub Action 1661de5c19 [ci skip] Translation update 2021-08-17 00:12:45 +00:00
Michael af32bd956c Add DEVICE_CLASS_UPDATE to Binary Sensor (#53945)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-08-17 01:30:32 +02:00
Marc Mueller a6b1dbefd4 Use EntityDescription - mitemp_bt (#54503) 2021-08-17 00:21:06 +02:00
jan iversen 7524acc38c Activate mypy for sesame (#54546) 2021-08-17 00:19:12 +02:00
Marc Mueller 38a210292f Use EntityDescription - logi_circle (#54429) 2021-08-17 00:14:00 +02:00
Erik Montnemery 0abcfb42b3 Remove last_reset attribute from FritzBoxEnergySensor (#54644) 2021-08-16 23:57:59 +02:00
J. Nick Koston 41c3bd113c Bump zeroconf to 0.36.0 (#54720) 2021-08-16 23:54:45 +02:00
Michael 684d035969 Use state class total increasing for TPLink smart plugs (#54723) 2021-08-16 23:54:11 +02:00
Jc2k de0460de61 Add device classes that were part of deprecated air quality entity (#54075) 2021-08-16 23:33:28 +02:00
jan iversen 85ff5e34cd Active mypy for netio (#54543) 2021-08-16 23:25:41 +02:00
Ville Skyttä 848c0be58a Avoid some implicit generic Anys (#54577) 2021-08-16 23:12:06 +02:00
jan iversen b72ed68d61 Activate mypy in sabnzbd (#54539) 2021-08-16 22:55:52 +02:00
Marc Mueller 236ccb933c Use EntityDescription - point (#54363) 2021-08-16 22:54:56 +02:00
Marc Mueller f9fbcd4aec Use EntityDescription - qbittorrent (#54428) 2021-08-16 22:52:47 +02:00
Ville Skyttä bb4a36c877 Upgrade mypy to 0.910 and types-* (#54574)
Co-authored-by: Daniel Hjelseth Høyer <mail@dahoiv.net>
2021-08-16 22:47:37 +02:00
J. Nick Koston 5e51f57f02 Convert nmap_tracker to be a config flow (#54715) 2021-08-16 15:19:32 -05:00
Franck Nijhof 0b3f322475 Upgrade pre-commit to 2.14.0 (#54719) 2021-08-16 22:02:32 +02:00
ehendrix23 f40c672cd2 Add light platform to MyQ (#54611)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-16 14:52:53 -05:00
ollo69 c68253b580 Fix AsusWRT scanner entity DeviceInfo (#54648) 2021-08-16 19:37:49 +02:00
Raman Gupta a41ee9e870 Create zwave-js select platform and discover additional siren values (#53018)
* Create zwave-js select platform and add siren values to number and select platforms

* use constants while we wait for lib release

* comments

* rename stuff in tests to prepare for protection CC PR

* Switch to 0-1 range for number entity

* Update homeassistant/components/zwave_js/number.py

Co-authored-by: kpine <keith.pine@gmail.com>

* Change step

* Switch to ToneID

* Better error handling

* Add test for coerage

Co-authored-by: kpine <keith.pine@gmail.com>
2021-08-16 13:36:20 -04:00
Brian Egge 441552e04c Fix TypeError when climate component sets fan modes to None (#54709)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-08-16 19:02:01 +02:00
Erik Montnemery 35389a6d28 Remove last_reset attribute from dsmr sensors (#54699) 2021-08-16 18:35:50 +02:00
Raman Gupta 61ab2b0c60 Use zwave_js.number platform for Basic CC values (#54512)
* Use zwave_js.number platform for some Basic CC values

* Remove Basic CC sensor discovery schema

* update comment

* update comment
2021-08-16 12:30:52 -04:00
Franck Nijhof 2b1299b540 Update Toon to use new state classes (#54705) 2021-08-16 18:20:44 +02:00
Aaron Bach 1b256efb23 Bump simplisafe-python to 11.0.4 (#54701) 2021-08-16 09:26:17 -06:00
Martin Hjelmare 494fd21351 Refactor mysensors sensor description (#54522)
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-08-16 16:34:22 +02:00
Paulus Schoutsen 512a474e93 Allow specifying discovery without a config flow (#54677) 2021-08-16 16:28:26 +02:00
Erik Montnemery c5d88d3e2f Remove last_reset attribute from dsmr_reader sensors (#54700) 2021-08-16 16:19:41 +02:00
Oxan van Leeuwen 844000556f Set correct ESPHome color mode when setting color temperature (#54596) 2021-08-16 16:16:36 +02:00
Joakim Sørensen a892605a90 Bump pytautulli (#54594) 2021-08-16 16:15:42 +02:00
Marc Mueller 2eba633382 Fix 'in' comparisons vesync light (#54614) 2021-08-16 16:13:07 +02:00
Daniel Hjelseth Høyer 75a2ac0808 Update melcloud to use state class total increasing (#54607) 2021-08-16 16:10:07 +02:00
Joakim Sørensen 99a62799ae Allow non-admin users to call history/list_statistic_ids (#54698) 2021-08-16 16:07:11 +02:00
Daniel Hjelseth Høyer 979165669c Update mill to use state class total (#54581) 2021-08-16 15:57:23 +02:00
Adam Bogdał 3e93215a1f Fix event type names for non-specified Traccar events (#54561)
* Fix event type name

* Extend list of types only when all_events is specified

* Remove flake8 warnings
2021-08-16 15:49:12 +02:00
serenewaffles 2bcfae6998 Fix typo in Todoist service description (#54662) 2021-08-16 15:23:48 +02:00
Dylan Gore a7918e90ab Update PyMetEireann to 2021.8.0 (#54693) 2021-08-16 13:52:40 +02:00
epenet a204d7f807 Renault code quality improvements (#53680) 2021-08-16 13:49:04 +02:00
Jeff Irion 2e56f66518 Bump adb-shell to 0.4.0 (#54575) 2021-08-16 13:18:19 +02:00
Daniel Hjelseth Høyer d11c58dac8 Improve Tractive (#54532)
* Tractive, code improve

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

* Tractive, code improve

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

* Tractive, code improve

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

* Update homeassistant/components/tractive/config_flow.py

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

* Update homeassistant/components/tractive/const.py

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

* Tractive, comments

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

* Update homeassistant/components/tractive/config_flow.py

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

* Update homeassistant/components/tractive/config_flow.py

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

* Tractive

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

* Reauth

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

* Reauth

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

* add tests

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

* add tests

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-16 12:56:10 +02:00
epenet 75275254f9 Renault test optimisation (#53705)
* Cleanup tests

* Use a MockConfigEntry

* Don't set up the integration for duplicate config entry testing
2021-08-16 12:52:58 +02:00
jan iversen 045b1ca6ae Activate mypy in lifx (#54540) 2021-08-16 12:41:35 +02:00
Aidan Timson f684e4df34 Add code owner to GitHub integration (#54689) 2021-08-16 11:36:31 +02:00
Maciej Bieniek 8c4a2dc6d2 Add water level and water tank detached sensors for Xiaomi Miio humidifiers (#54625)
* Add water level and water tank detached sensors

* Use elif

* Use DEVICE_CLASS_CONNECTIVITY for water tank sensor

* Improve docstring

* Change the water tank sensor icon

* Fix typo
2021-08-16 09:13:45 +02:00
cnico 416668c289 Address late review of Flipr (#54668)
* Code format correction

* Other code review remarks of MartinHjelmare

* Simplification of flipr instantiation

* Formatting correction
2021-08-16 07:12:39 +02:00
Allen Porter 094f7d38ad Use buffer at stream start with unsupported audio (#54672)
Add a test that reproduces the issue where resetting the iterator
drops the already read packets. Fix a bug in replace_underlying_iterator
because checking the self._next function turns out not to work since
it points to a bound method so the "is not" check fails.
2021-08-15 21:02:37 -07:00
Paulus Schoutsen e0873493e2 Merge pull request #54676 from home-assistant/rc 2021-08-15 20:49:10 -07:00
Paulus Schoutsen 700f149ef8 Bumped version to 2021.8.7 2021-08-15 20:06:46 -07:00
Jesse Hills 848885c658 Send color_brightness to ESPHome devices on 1.20 (pre-color_mode) (#54670) 2021-08-15 20:05:59 -07:00
jan iversen 5af94c42db Solve switch/verify register type convert problem in modbus (#54645) 2021-08-15 20:05:59 -07:00
Paulus Schoutsen dd1ef7fa55 Guard partial upgrade (#54617) 2021-08-15 20:05:58 -07:00
Michael 8d1bd55b68 Bump py-synologydsm-api to 1.0.4 (#54610) 2021-08-15 20:05:57 -07:00
J. Nick Koston 3c3a6e6cb4 Bump zeroconf to 0.35.0 (#54604)
Fixes https://github.com/home-assistant/core/issues/54531
Fixes https://github.com/home-assistant/core/issues/54434
Fixes https://github.com/home-assistant/core/issues/54487
2021-08-15 20:05:56 -07:00
Oxan van Leeuwen 2f2038c147 Clamp color temperature to supported range in ESPHome light (#54595)
ESPHome devices initially report a color temperature of 0 or 1 until it
has been changed by the user. This broke the conversion from RGBWW to
an RGB color.

Fixes #54293.
2021-08-15 20:05:56 -07:00
Daniel Hjelseth Høyer 5a5bbef1b8 Adax, update requirements (#54587)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-15 20:05:55 -07:00
Daniel Hjelseth Høyer 0f60a5a8c0 Fix Tibber last reset (#54582)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-15 20:05:54 -07:00
Daniel Hjelseth Høyer f43151081b Fix bug in ambiclimate (#54579)
* Fix ambiclimate

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

* Fix ambiclimate

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-15 20:05:53 -07:00
Colin O'Dell ab82369320 Upgrade qnapstats library to 0.4.0 (#54571) 2021-08-15 20:05:53 -07:00
Gerard 1c503244c6 Fix attributes not showing after using entity class attributes (#54558) 2021-08-15 20:05:52 -07:00
Alan Tse 482e00a071 Treat temporary errors as warnings for Tesla (#54515)
* Treat temporary errors as warnings for Tesla
closes #53391

* Apply suggestions from code review

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

* Black

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-15 20:05:51 -07:00
Daniel Hjelseth Høyer 6f3879fc92 Add missing PRESSURE_BAR conversion (#54497)
* Add missing PRESSURE_BAR

* style

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

* valid units

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-15 20:05:50 -07:00
ehendrix23 6382061b57 Updates to bump MyQ to 3.1.2 (#54488) 2021-08-15 20:05:50 -07:00
Robert Hillis 1d45a80a92 Bump notifications-android-tv to 0.1.3 (#54462)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-15 20:05:49 -07:00
Felix 4d01dd3c0c Strip attributes whitespace in universal media_player (#54451)
When using whitespace in attributes the lookup of the state attribute fails because an entity with whitespace in its name cannot be found.

Works:
entity_id|state_attribute

Does not work:
entity_id | state_attribute

Fixes #53804
2021-08-15 20:05:48 -07:00
Ville Skyttä 72e548de5f Fix Huawei LTE entity state updating (#54447)
Since 91a2b96, we no longer key this by the router URL, but the relevant
config entry unique id.

Closes https://github.com/home-assistant/core/issues/54243
2021-08-15 20:05:47 -07:00
Phil Cole 7d67caba44 Use pycarwings2 2.11 (#54424) 2021-08-15 20:05:47 -07:00
J. Nick Koston 5fc5b53c01 Ensure HomeKit passes min/max mireds as ints - adapted from #54372 2021-08-15 20:05:29 -07:00
jan iversen bec42b74fe Solve switch/verify register type convert problem in modbus (#54645) 2021-08-15 19:57:37 -07:00
Daniel Hjelseth Høyer b2f73b3c69 Fix Tibber last reset (#54582)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-15 19:57:18 -07:00
Paulus Schoutsen bab7d46c9b Guard partial upgrade (#54617) 2021-08-15 19:56:56 -07:00
Jesse Hills 41d932fcf8 Send color_brightness to ESPHome devices on 1.20 (pre-color_mode) (#54670) 2021-08-15 19:56:21 -07:00
GitHub Action d091068092 [ci skip] Translation update 2021-08-16 00:11:52 +00:00
Michael 9e2945680e Address late review of nut integration (#54606)
* remove defaults from SensorEntityDescription

* use _attr_unique_id  instead of unique_id()

* check if unique_id is not None
2021-08-15 18:32:01 -05:00
J. Nick Koston d01addbd24 Bump zeroconf to 0.35.1 (#54666) 2021-08-15 18:27:10 -05:00
Nikolaos Stamatopoulos 61412db119 Fix typo in xiaomi_miio cloud_login_error string (#54661)
* fix(xiaomi_miio): Fix typo in cloud_login_error string

* fixup! fix(xiaomi_miio): Fix typo in cloud_login_error string

Restore translation files
2021-08-15 22:56:30 +02:00
Raman Gupta d0cebe911c Add siren, number, and weather to base platform list (#54665) 2021-08-15 22:06:05 +02:00
Michael aa590415d3 Bump py-synologydsm-api to 1.0.4 (#54610) 2021-08-15 21:33:48 +02:00
Alan Tse ee7116d0e8 Treat temporary errors as warnings for Tesla (#54515)
* Treat temporary errors as warnings for Tesla
closes #53391

* Apply suggestions from code review

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

* Black

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-15 08:09:06 -05:00
J. Nick Koston 54da424507 Add new OUIs to august for yale branded connect bridges (#54637) 2021-08-15 08:04:47 -05:00
Maciej Bieniek ebaae8d2bf Add sensor platform for Xiaomi Miio fans (#54564) 2021-08-15 13:49:29 +02:00
Daniel Hjelseth Høyer 5ed9cd7153 Adax, update requirements (#54587)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-15 13:16:10 +02:00
Daniel Perna 675441142d Update pyhomematic to 0.1.74 (#54613) 2021-08-15 12:50:40 +02:00
Erik Montnemery 87e7a8fb5f Move temperature conversions to sensor base class - new integrations (#54623)
* Move temperature conversions to sensor base class

* Tweaks

* Update pvpc_hourly_pricing

* Fix flipr sensor

* Fix ezviz and youless sensor
2021-08-15 08:51:43 +02:00
GitHub Action a9807e5fa7 [ci skip] Translation update 2021-08-15 00:11:00 +00:00
Jan Jurča 8d7a136fc4 Add MySensors S_MOISTURE type as sensor (#54583) 2021-08-14 11:05:23 +02:00
Colin O'Dell 08d8b026d0 Upgrade qnapstats library to 0.4.0 (#54571) 2021-08-14 08:44:52 +02:00
Teemu R 102789672a Bump python-miio to 0.5.7 (#54601) 2021-08-14 08:38:42 +02:00
Oxan van Leeuwen 2c181181e1 Clamp color temperature to supported range in ESPHome light (#54595)
ESPHome devices initially report a color temperature of 0 or 1 until it
has been changed by the user. This broke the conversion from RGBWW to
an RGB color.

Fixes #54293.
2021-08-13 23:27:47 -07:00
J. Nick Koston c10497d499 Bump zeroconf to 0.35.0 (#54604)
Fixes https://github.com/home-assistant/core/issues/54531
Fixes https://github.com/home-assistant/core/issues/54434
Fixes https://github.com/home-assistant/core/issues/54487
2021-08-13 23:26:57 -07:00
GitHub Action 370b7f387d [ci skip] Translation update 2021-08-14 00:11:27 +00:00
jjlawren f4fb5f2f5a Skip Sonos zeroconf availability check in non-timeout scenarios (#54425) 2021-08-13 15:42:55 -05:00
Bram Kragten 8264fd2eb6 Update frontend to 20210813.0 (#54603) 2021-08-13 11:48:31 -07:00
Bram Kragten eb278834de Add gas support to energy (#54560)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-08-13 10:39:16 -07:00
Steven Looman 2c1728022d Use ssdp callbacks in upnp (#53840) 2021-08-13 11:13:25 -05:00
Duco Sebel 3454102dc8 Fix for 'list index out of range' (#54588) 2021-08-13 17:03:13 +02:00
Erik Montnemery 029873a088 Add support for total and total_increasing sensor state classes (#54523)
* Add support for amount and meter sensor state classes

* Ignore last_reset for STATE_CLASS_METER sensors

* Update tests

* Rename STATE_CLASS_METER to STATE_CLASS_AMOUNT_INCREASING

* Rename STATE_CLASS_AMOUNT to STATE_CLASS_TOTAL

* Fix typo

* Log warning if last_reset set together with state_class measurement

* Fix warning message
2021-08-13 12:35:23 +02:00
Daniel Hjelseth Høyer 821b93b0d0 Fix bug in ambiclimate (#54579)
* Fix ambiclimate

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

* Fix ambiclimate

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-13 11:38:14 +02:00
GitHub Action b71a0c5d4b [ci skip] Translation update 2021-08-13 00:17:12 +00:00
Gerard 50bcb3f821 Fix attributes not showing after using entity class attributes (#54558) 2021-08-12 23:33:02 +02:00
TheJulianJES 84f568abb1 Updated ZHA to also poll Philips Hue lights with new firmware (#54513) 2021-08-12 17:08:51 -04:00
carstenschroeder b1fb8de0f5 Add state_class attribute to keba integration (#54271)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-08-12 22:40:56 +02:00
Ville Skyttä 3f80c31bd5 Remove obsolete upcloud YAML config support (#54516) 2021-08-12 22:40:42 +02:00
jjlawren 084737dd01 Cleanup Sonos grouping event callback method (#54542) 2021-08-12 22:01:34 +02:00
Aaron Bach 81e1c44592 Remove unused import step in OpenUV config flow (#54554) 2021-08-12 13:18:10 -06:00
jjlawren 87e0b14282 Log gathered exceptions during Sonos unsubscriptions (#54190) 2021-08-12 11:46:07 -05:00
Erik Montnemery e558b3463e Move temperature conversions to sensor base class (6/8) (#54476)
* Move temperature conversions to entity base class (6/8)

* Fix tests
2021-08-12 17:40:55 +02:00
Erik Montnemery 6de6a5dc14 Move temperature conversions to sensor base class (3/8) (#54469)
* Move temperature conversions to entity base class (3/8)

* Fix FritzBox sensor

* Fix tests
2021-08-12 14:23:56 +02:00
Erik Montnemery 103e21c278 Move temperature conversions to sensor base class (5/8) (#54475) 2021-08-12 13:26:17 +02:00
Daniel Hjelseth Høyer e55868b17f Use entity class attributes for Adax (#54501)
* Adax attributes

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

* Adax attributes

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

* Update homeassistant/components/adax/climate.py

Co-authored-by: Joakim Sørensen <joasoe@gmail.com>

* style

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

Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-08-12 12:38:33 +02:00
Daniel Hjelseth Høyer 49a69d5ba0 Add missing PRESSURE_BAR conversion (#54497)
* Add missing PRESSURE_BAR

* style

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

* valid units

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-12 07:30:35 +02:00
ehendrix23 c040be423a Updates to bump MyQ to 3.1.2 (#54488) 2021-08-11 22:17:25 -05:00
GitHub Action 0626542a14 [ci skip] Translation update 2021-08-12 00:14:10 +00:00
Franck Nijhof f77187d28a Deprecate Wink integration (#54496) 2021-08-11 18:16:28 -04:00
Marc Mueller b411372872 Use EntityDescription - blink (#54360) 2021-08-11 13:41:51 -07:00
Niels Mündler 539ed56000 Refactor Fronius sensor device class and long term statistics (#54185) 2021-08-11 13:40:04 -07:00
Erik Montnemery 2720ba2753 Move temperature conversions to sensor base class (4/8) (#54472)
* Move temperature conversions to entity base class (4/8)

* Fix litterrobot sensor

* Fix tests
2021-08-11 21:17:47 +02:00
Erik Montnemery ae507aeed1 Move temperature conversions to sensor base class (8/8) (#54483)
* Move temperature conversions to entity base class (8/8)

* Fix wallbox sensor

* Fix tests
2021-08-11 21:17:16 +02:00
Bram Kragten e23750b2a4 Add device class gas and enable statistics for it (#54110)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-08-11 09:58:19 -07:00
Erik Montnemery 94a264afaf Move temperature conversions to entity base class (7/8) (#54482) 2021-08-11 18:57:50 +02:00
Erik Montnemery 41f3c2766c Move temperature conversions to entity base class (2/8) (#54468) 2021-08-11 18:57:12 +02:00
Bram Kragten f020d65416 Add battery support to energy (#54432) 2021-08-11 09:49:56 -07:00
Aaron Bach 98a4e6a7e8 Fix possible unhandled IQVIA exception with allergy outlook data (#54477)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-08-11 09:12:49 -07:00
Franck Nijhof d6483f2f36 Upgrade isort to 5.9.3 (#54481) 2021-08-11 09:01:45 -07:00
Marc Mueller 6f70302901 Fix arlo platform schema (#54470) 2021-08-11 08:57:56 -07:00
Martin Hjelmare 028a3d3e53 Complete mysensors sensor coverage (#54471) 2021-08-11 17:19:02 +02:00
J. Nick Koston 1e14b3a0ac Ensure camera handles non-jpeg image sources correctly (#54474) 2021-08-11 08:12:46 -07:00
Franck Nijhof 13c34d646f Remove empty currency from discovery info (#54478) 2021-08-11 08:09:16 -07:00
Phil Cole cb26f334c3 Use pycarwings2 2.11 (#54424) 2021-08-11 16:34:36 +02:00
Robert Hillis b1fc05413a Bump notifications-android-tv to 0.1.3 (#54462)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-11 16:13:38 +02:00
Michael 6285c7775b Use SensorEntityDescription and set state class measurement for NUT sensors (#54269) 2021-08-11 08:56:41 -05:00
jan iversen 4ef9269790 Replace prepare_service_call with a simpler fixture in modbus (#53975)
* Convert prepare_service_call to a fixture.
2021-08-11 12:42:28 +02:00
Felix 4d93184197 Strip attributes whitespace in universal media_player (#54451)
When using whitespace in attributes the lookup of the state attribute fails because an entity with whitespace in its name cannot be found.

Works:
entity_id|state_attribute

Does not work:
entity_id | state_attribute

Fixes #53804
2021-08-11 12:17:12 +02:00
Ville Skyttä bc417162cf Fix Huawei LTE entity state updating (#54447)
Since 91a2b96, we no longer key this by the router URL, but the relevant
config entry unique id.

Closes https://github.com/home-assistant/core/issues/54243
2021-08-11 11:50:17 +02:00
Joakim Sørensen 2f5c3c08ef Use monitor name for uptimerobot device registry (#54456) 2021-08-11 11:27:41 +02:00
jan iversen 2d669a4613 Remove legacy code. (#54452) 2021-08-11 11:07:04 +02:00
Erik Montnemery 4e07ab1b32 Move temperature conversions to sensor base class (1/8) (#48261)
* Move temperature conversions to entity base class (1/8)

* Update integrations a-c

* Leave old temperature conversion until all integrations are migrated

* tweak

* Use contextlib.suppress

* Remove the MeasurableUnitEntity mixin

* Address comments, add tests

* Fix f-string

* Drop deprecation warning from base entity class

* Update with _attr-shorthand

* Fix rebase mistakes

* Fix additional rebase mistakes

* Only report temperature conversion once

* Fix additional rebase mistakes

* Format homeassistant/components/bbox/sensor.py

* Fix check for overidden _attr_state

* Remove test workarounds from implementation

* Remove useless None-check

* Tweaks

* Migrate new sensors a-c

* Update climacell

* Push deprecation of temperature conversion forward

* Override __repr__ in SensorEntity

* Include native_value in SensorEntity attributes

* Pylint

* Black

* Black

* Fix rebase mistakes

* black

* Fix rebase mistakes

* Revert changes in august/sensor.py

* Revert handling of unit converted restored state

* Apply code review suggestion

* Fix arlo test
2021-08-11 10:45:05 +02:00
Aaron Bach 930c1dbe9b Bump aioambient to 1.2.6 (#54442) 2021-08-11 09:58:53 +02:00
Brett 480fd53b4b Advantage Air code cleanup (#54449) 2021-08-11 09:49:31 +02:00
jan iversen adcbd8b115 Activate mypy for Trådfri (#54416)
* Activate mypy.
2021-08-11 08:31:52 +02:00
Paulus Schoutsen 745afc8fe2 Merge pull request #54443 from home-assistant/rc 2021-08-10 21:05:42 -07:00
Paulus Schoutsen c6fc5e35fe Bumped version to 2021.8.6 2021-08-10 20:29:32 -07:00
Aaron Bach b2b0cc9a22 Bump pyopenuv to 2.1.0 (#54436) 2021-08-10 20:29:22 -07:00
Paulus Schoutsen ebab5c5d92 Bump hass_nabucasa to 0.46.0 (#54421) 2021-08-10 20:29:21 -07:00
Daniel Hjelseth Høyer 56d51404b7 Re-add Tibber notify service name (#54401)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-10 20:29:21 -07:00
Joakim Sørensen bb3769c84f Fix Canary sensor state (#54380) 2021-08-10 20:29:20 -07:00
Paulus Schoutsen 3effe94a27 Handle CO2Signal response value being None (#54377) 2021-08-10 20:29:19 -07:00
Aaron Bach 10551743d6 Bump pyopenuv to 2.1.0 (#54436) 2021-08-10 20:28:03 -07:00
J. Nick Koston 4d40d95848 Add support for width and height to ffmpeg based camera snapshots (#53837) 2021-08-10 20:31:11 -05:00
J. Nick Koston d0b11568cc Ensure HomeKit passes min/max mireds as ints (#54372) 2021-08-10 20:28:01 -05:00
J. Nick Koston e99576c094 Pass width and height when requesting camera snapshot (#53835) 2021-08-10 19:33:06 -05:00
GitHub Action 390023a576 [ci skip] Translation update 2021-08-11 00:18:57 +00:00
J. Nick Koston 4ae6435a64 Avoid increasing yeelight rate limit when the state is already set (#54410) 2021-08-10 15:17:49 -07:00
J. Nick Koston 4da451fcf7 Improve HomeKit Color with Color Temp implementation (#54371) 2021-08-10 15:16:51 -07:00
J. Nick Koston 4bde4504ec Add api to device_automation to return all matching devices (#53361) 2021-08-10 14:21:34 -05:00
Marc Mueller ac29571db3 Refactor pi_hole icon usage (#54420) 2021-08-10 21:14:31 +02:00
jan iversen 08a30ed510 Add myself as codeowner to tradfri (IKEA stuff) (#54415) 2021-08-10 21:14:09 +02:00
Paulus Schoutsen ed0fd00746 Bump hass_nabucasa to 0.46.0 (#54421) 2021-08-10 11:30:02 -07:00
Joakim Sørensen 2265fd1f81 Mark Uptime Robot as a platinum quality integration (#54408) 2021-08-10 20:26:48 +02:00
Daniel Hjelseth Høyer ba6bdff04e Re-add Tibber notify service name (#54401)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-08-10 20:14:10 +02:00
jjlawren 1eeb12ba1c Support unloading/reloading Sonos (#54418) 2021-08-10 10:57:39 -07:00
Marc Mueller c0a7fca628 Fix pi_hole sensor icon (#54403) 2021-08-10 18:57:25 +02:00
Marc Mueller f5901265dc Use EntityDescription - ios (#54359)
* Use EntityDescription - ios

* Make attribute static

* Update homeassistant/components/ios/sensor.py

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

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-08-10 16:47:52 +02:00
Dror Eiger 7e211965e4 Update the Qubino Flush Shutter fixture (#54387) 2021-08-10 10:31:55 -04:00
Joakim Sørensen d1ea38e8f0 Add 100% test coverage for Uptime Robot (#54314)
* Add 100% test coverage for Uptime Robot

* Update tests/components/uptimerobot/test_binary_sensor.py

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

* Add more typehints

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-10 16:29:51 +02:00
Daniel Hjelseth Høyer f03b160c46 Mill cleanup (#54396) 2021-08-10 16:28:39 +02:00
Joakim Sørensen cf8f27bb44 Adjust version tests (#54391)
* Adjust version tests

* patch local import
2021-08-10 15:03:34 +02:00
Joakim Sørensen 8ea5a0dbc1 Remove useless check in launch_library (#54393) 2021-08-10 15:03:12 +02:00
jan iversen 1d40a6e407 Activate mypy from amcrest and make the needed changes (#54392) 2021-08-10 14:57:57 +02:00
Jan Bouwhuis 5de1adacf7 Xiaomi miio add coordinator to fan platform (#54366)
* init coordinator for airpurifiers and airfresh

* Update fan entities with coordinator

* cache mode and fan_level at user update

* pylint define attributes in _init

* Update homeassistant/components/xiaomi_miio/fan.py

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>

* Update homeassistant/components/xiaomi_miio/fan.py

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>

* Update homeassistant/components/xiaomi_miio/fan.py

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>

* cleanup code

* Set hass.data[DATA_KEY] to enable

* rename to filtered_entities in service handler

* Update homeassistant/components/xiaomi_miio/fan.py

Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>

* flake

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-08-10 14:55:11 +02:00
Jesse Hills a7c08fff81 Apply suggested changes to tidy juicenet sensor code (#54390) 2021-08-10 14:06:27 +02:00
Joakim Sørensen 39d7bb4f1a Use _attr_* for Launch Library (#54388) 2021-08-10 13:11:12 +02:00
Milan Meulemans 9c29d9f8eb Activate mypy for Proxmox VE (#53955) 2021-08-10 12:36:20 +02:00
jan iversen e5f884efd1 Activate mypy for google_maps (#53725) 2021-08-10 11:48:16 +02:00
Pascal Vizeli a2a4840455 Using VCN install as action (#54383) 2021-08-10 11:02:31 +02:00
Milan Meulemans 814411dc1d Activate mypy for Solar-Log (#53952) 2021-08-10 10:56:34 +02:00
Milan Meulemans 355a067d84 Activate mypy for Smart Meter Texas (#53954) 2021-08-10 10:55:38 +02:00
Milan Meulemans d8c679809f Activate mypy for SiteSage Emonitor (#54040) 2021-08-10 10:47:57 +02:00
Milan Meulemans 7e2c6ae332 Activate mypy for Pilight (#53956) 2021-08-10 10:47:17 +02:00
Milan Meulemans 020759d01d Activate mypy for Alexa (#54042) 2021-08-10 10:46:33 +02:00
Milan Meulemans fc1babfc92 Activate mypy for Filter (#54044) 2021-08-10 10:45:56 +02:00
jan iversen 54538bb72b Bump pymodbus version to 2.5.3rc1 (#54318) 2021-08-10 10:16:38 +02:00
Joakim Sørensen 8cb3a485e0 Fix Canary sensor state (#54380) 2021-08-10 09:19:28 +02:00
Paulus Schoutsen 934662cd54 Handle CO2Signal response value being None (#54377) 2021-08-10 08:17:47 +02:00
Franck Nijhof 3202d4882a Upgrade debugpy to 1.4.1 (#54369) 2021-08-09 20:56:19 -07:00
Franck Nijhof 3d31bd5c68 Upgrade codecov to 2.1.12 (#54370) 2021-08-09 20:56:04 -07:00
Paulus Schoutsen a21e3aed77 Merge pull request #54368 from home-assistant/rc 2021-08-09 20:50:56 -07:00
Brett 747eb92a4a Fix race condition in Advantage Air (#53439) 2021-08-09 20:21:38 -07:00
Brett b76899f546 Fix race condition in Advantage Air (#53439) 2021-08-09 20:21:24 -07:00
Raman Gupta 5ac5b41a11 Update Climacell rate limit (#54373) 2021-08-09 20:16:36 -07:00
Raman Gupta f60fbf7197 Update Climacell rate limit (#54373) 2021-08-09 20:16:18 -07:00
Marc Mueller f92f0bb87b Use EntityDescription - juicenet (#54362)
* Use EntityDescription - juicenet

* Move part of icon to EntityDescription

* Remove default values

* Remove name override to use the _attr_name

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-08-10 14:25:22 +12:00
Paulus Schoutsen 0b532c139c Bumped version to 2021.8.5 2021-08-09 17:14:06 -07:00
Paulus Schoutsen d4290d1e03 Revert "Use entity class attributes for Bluesound (#53033)" (#54365) 2021-08-09 17:12:52 -07:00
Paulus Schoutsen b4d466f87c Do not process forwarded for headers for cloud requests (#54364) 2021-08-09 17:12:51 -07:00
Aaron Bach 4f3cf5a61c Cast SimpliSafe version number as a string in device info (#54356) 2021-08-09 17:12:51 -07:00
dailow cfa6040d55 Fix aqualogic state attribute update (#54354) 2021-08-09 17:12:50 -07:00
Jan Bouwhuis 3fcbde3b9c Fix Xiaomi-miio turn fan on with speed, percentage or preset (#54353) 2021-08-09 17:12:49 -07:00
Bram Kragten 84f6586058 Update frontend to 20210809.0 (#54350) 2021-08-09 17:12:48 -07:00
Jan Bouwhuis cb14acd606 Fix xiaomi air fresh fan preset modes (#54342) 2021-08-09 17:12:48 -07:00
Diogo Gomes 59c882a0f5 Restores unit_of_measurement (#54335) 2021-08-09 17:12:47 -07:00
Chris b21f319b0a Remove zwave_js transition on individual color channels (#54303) 2021-08-09 17:12:46 -07:00
J. Nick Koston 2a1d2b77a1 Ensure hunterdouglas_powerview model type is a string (#54299) 2021-08-09 17:12:45 -07:00
J. Nick Koston 9caad5b2c7 Bump zeroconf to 0.34.3 (#54294) 2021-08-09 17:12:45 -07:00
Marc Mueller 5402173e98 Fix ondilo_ico name attribute (#54290) 2021-08-09 17:12:44 -07:00
jjlawren 985dab6bdf Bump soco to 0.23.3 (#54288) 2021-08-09 17:12:43 -07:00
Robert Hillis cf92d45f07 Use correct state attribute for alarmdecoder binary sensor (#54286)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-09 17:12:42 -07:00
ZeGuigui 955a72080f Fix atom integration for long term statistics (#54285)
* Fix atom integration for long term statistics

* Remove commented code

* Fix last_reset syntax

* last_reset not an extra attribute

* last_reset as utc

* black formatting

* isort fix
2021-08-09 17:12:42 -07:00
J. Nick Koston 3edd505468 Always set interfaces explicitly when IPv6 is present (#54268) 2021-08-09 17:12:41 -07:00
rikroe 746bb2997e Fix login to BMW services for rest_of_world and north_america (#54261)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-08-09 17:12:40 -07:00
Reuben Gow 1809b7a98b Force an attempted subscribe on speaker reboot (#54100)
* Force an attempted subscribe on speaker reboot

* Recreate subscriptions and timers explicitly on speaker reboot

* only create poll timer if there is not one already

Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>

* Black

Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2021-08-09 17:12:39 -07:00
Robert Hillis 903e2243e7 Fix camera state and attributes for agent_dvr (#54049)
* Fix camera state and attributes for agent_dvr

* tweak

* tweak
2021-08-09 17:12:39 -07:00
ollo69 1948d11d84 AsusWRT remove default EntityDescription property (#54367) 2021-08-10 02:10:53 +02:00
Paulus Schoutsen 38a7bdbcf3 Do not process forwarded for headers for cloud requests (#54364) 2021-08-10 01:45:56 +02:00
Paulus Schoutsen a40deac714 Revert "Use entity class attributes for Bluesound (#53033)" (#54365) 2021-08-10 01:45:39 +02:00
Joakim Sørensen d80da944a3 Version sensor entity cleanup (#53915)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-08-10 01:24:18 +02:00
J. Nick Koston 25f3cdde50 Add powerwall import and export sensors (#54018)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2021-08-09 16:03:22 -07:00
Richard T. Schaefer 3184f0697f Add Save Persistent States service (#53881) 2021-08-10 00:38:56 +02:00
Matthew LeMay 33c33d844e Update pyupgrade to 2.23.3 (#54179) 2021-08-10 00:16:33 +02:00
Dermot Duffy d4a3d0462d Minor motionEye readability improvement (#54251) 2021-08-10 00:11:21 +02:00
Maciej Bieniek 4459d8674a Add binary_sensor platform for Xiaomi Miio integration (#54096) 2021-08-09 23:56:33 +02:00
Marc Mueller aeb7a6c090 Use EntityDescription - bitcoin (#54320)
* Use EntityDescription - bitcoin

* Remove default values
2021-08-09 23:54:07 +02:00
Marc Mueller b42ac8b48f Use EntityDescription - growatt_server (#54316) 2021-08-09 23:53:39 +02:00
Aaron Bach 1cd575df53 Cast SimpliSafe version number as a string in device info (#54356) 2021-08-09 23:50:39 +02:00
dailow f1c244e914 Fix aqualogic state attribute update (#54354) 2021-08-09 23:50:09 +02:00
J. Nick Koston dcf4eb5e0d Remove HomeKit event guards (#54343) 2021-08-09 23:49:51 +02:00
Guido Schmitz c07b1423ee Remove useless attribute in devolo Home Control (#54284) 2021-08-09 23:45:15 +02:00
Jan Bouwhuis d55c764048 Fix Xiaomi-miio turn fan on with speed, percentage or preset (#54353) 2021-08-09 14:43:59 -07:00
Marc Mueller 4133cc05eb Use EntityDescription - abode (#54321) 2021-08-09 23:40:57 +02:00
Marc Mueller d79fc2c506 Use EntityDescription - pi_hole (#54319) 2021-08-09 23:38:58 +02:00
Bram Kragten 38cb0553f3 Update frontend to 20210809.0 (#54350) 2021-08-09 22:27:09 +02:00
J. Nick Koston 74a30af79b Always set interfaces explicitly when IPv6 is present (#54268) 2021-08-09 21:13:55 +02:00
rikroe 7050b53264 Fix login to BMW services for rest_of_world and north_america (#54261)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-08-09 21:11:53 +02:00
J. Nick Koston 8eff0e9312 Ensure hunterdouglas_powerview model type is a string (#54299) 2021-08-09 21:03:55 +02:00
J. Nick Koston f37b164d60 Bump zeroconf to 0.34.3 (#54294) 2021-08-09 20:58:27 +02:00
Jan Bouwhuis 0149095824 Fix xiaomi air fresh fan preset modes (#54342) 2021-08-09 20:57:36 +02:00
Robert Hillis a54ee7b366 Use correct state attribute for alarmdecoder binary sensor (#54286)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-09 20:55:58 +02:00
Marc Mueller 511af66b22 Fix ondilo_ico name attribute (#54290) 2021-08-09 20:53:30 +02:00
Reuben Gow 74d41ac5e5 Force an attempted subscribe on speaker reboot (#54100)
* Force an attempted subscribe on speaker reboot

* Recreate subscriptions and timers explicitly on speaker reboot

* only create poll timer if there is not one already

Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>

* Black

Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2021-08-09 20:47:38 +02:00
starkillerOG a23da30c29 Yeelight local push updates (#51160)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-09 13:33:34 -05:00
Maciej Bieniek acf55f2f3a Add light transition for Shelly integration (#54327)
* Add support for light transition

* Limit transition to 5 seconds

* Update MODELS_SUPPORTING_LIGHT_TRANSITION list
2021-08-09 20:55:14 +03:00
Diogo Gomes b88f0adbe9 Restores unit_of_measurement (#54335) 2021-08-09 19:48:01 +02:00
Chris 188919f079 Clean up zwave_js RGB code (#54336) 2021-08-09 18:45:12 +02:00
Franck Nijhof 1c7891fbee Remove deprecated YAML configuration from Growatt (#54325) 2021-08-09 14:54:42 +02:00
Raman Gupta c79ee53ab1 Use dict for zwave_js siren.available_tones (#54305)
* Use dict for zwave_js siren.available_tones

* update siren.turn_on service description
2021-08-09 13:29:17 +02:00
Chris 3742333a89 Remove zwave_js transition on individual color channels (#54303) 2021-08-09 13:21:41 +02:00
jan iversen 9b7b787fe4 Remove icon where device_class is defined. (#54323) 2021-08-09 13:13:11 +02:00
cpw 608f406a2c Update services.yaml for matrix service to fix Data field being replaced by [object Object] in UI (#54296) 2021-08-09 12:38:05 +02:00
jan iversen 6ea50823c1 Use SensorEntityDescription for arlo (#54223)
* Use SensorEntityDescription.
2021-08-09 12:16:35 +02:00
jan iversen e7f0768ae6 Convert base_config_test in modbus to existing Pytest.fixture (#53836)
* Convert base_config_test to pytest.fixture.
2021-08-09 12:11:54 +02:00
ZeGuigui d97f93933f Fix atom integration for long term statistics (#54285)
* Fix atom integration for long term statistics

* Remove commented code

* Fix last_reset syntax

* last_reset not an extra attribute

* last_reset as utc

* black formatting

* isort fix
2021-08-09 11:38:16 +02:00
Martin Hjelmare a1abd4f0d6 Fix external internal url core check (#54310) 2021-08-09 10:52:14 +02:00
Paulus Schoutsen 952d11cb03 Ensure internal/external URL have no path (#54304)
* Ensure internal/external URL have no path

* Fix comment typo

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-09 09:38:09 +02:00
jjlawren a8354e729b Bump soco to 0.23.3 (#54288) 2021-08-09 09:21:07 +02:00
Maciej Bieniek 0f68ebe92b Add unique_id and device_info for SMS sensor (#54257) 2021-08-09 08:15:39 +02:00
Raman Gupta 2e903c92c4 Add siren support for available tones provided as a dict (#54198)
* Add siren support for available tones provided as a dict

* remove paranthesis

* hopefully make logic even easier to read

* drop last parenthesis
2021-08-09 00:41:51 -04:00
Paulus Schoutsen 557cc792e9 Fix SQLAlchemy test warnings (#54116) 2021-08-08 20:33:47 -07:00
J. Nick Koston 5d56ce67f5 Fix inconsistent supported_features return in demo lock (#54300)
https://github.com/home-assistant/core/pull/51455#discussion_r684806197
2021-08-08 20:33:40 -07:00
Allen Porter 160bd74bae Update DeviceInfo static types (#54276)
* Update nest static types from aditional PR feedback

Update nest and device helper static types based on post-merge discussion in PR #53475

* Remove unused type: ignore in synology

* Remove check for None device type

Remove check for None device type in order to reduce untested code as this is
a case not allowed by the nest python library.
2021-08-08 19:24:36 -07:00
GitHub Action 1373755444 [ci skip] Translation update 2021-08-09 00:11:34 +00:00
Allen Porter 50068d2352 Bump google-nest-sdm to 0.3.6 (#54287)
Add google-nest-sdm to 0.3.6 to include static typing fixes.
2021-08-08 14:47:50 -07:00
jan iversen 02459e6813 Convert last properties in modbus to _attr_variable (#53919) 2021-08-08 23:23:21 +02:00
jan iversen e8aa280d7f Add modbus get_hub (#54277)
* Add dict with hubs.

* Update flexit to use get_hub.

* Remove executor_task for close.
2021-08-08 22:48:33 +02:00
Robert Hillis 7590cb2861 Fix camera state and attributes for agent_dvr (#54049)
* Fix camera state and attributes for agent_dvr

* tweak

* tweak
2021-08-08 15:43:08 +02:00
Joakim Sørensen 89bb95b0be Add re-authentication to Uptime Robot (#54226)
* Add reauthentication to Uptime Robot

* Fix en strings

* format

* Fix docstring

* Remove unused patch

* Handle no existing entry

* Handle account mismatch during reauthentication

* Add test to validate reauth is triggered properly

* Test reauth after setup

* Adjust tests

* Add full context for reauth init
2021-08-08 15:41:05 +02:00
Maciej Bieniek aaddeb0bcd Add missing motor_speed sensor for Xiaomi Miio humidifier CA1 and CB1 (#54264)
* Add motor_speed sensor for CA1 and CB1

* Remove value limits
2021-08-08 15:21:55 +02:00
Simone Chemelli 18a0fcf931 Strict typing for Neato (#53633)
* Strict typing

* Rebase

* Tweak import

* Cleanup

* Rebase + typing hub

* Flake8

* Update homeassistant/components/neato/config_flow.py

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

* Update homeassistant/components/neato/vacuum.py

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

* Update homeassistant/components/neato/camera.py

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

* Address review comments

* Black

* Update homeassistant/components/neato/config_flow.py

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

* Specific dict definition

* Annotations

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-08 15:02:37 +02:00
Joakim Sørensen 3da61b77a9 Remove monitor checks in Uptime Robot entities (#54259) 2021-08-08 12:26:14 +02:00
Joakim Sørensen a4fd718e41 Fix device registry lookup in uptimerobot (#54256) 2021-08-08 11:29:32 +02:00
Schmidsfeld fc40735295 Add more Fritz sensors for DSL connections (#53198)
* Update sensor.py

Added information about the upstream line accorrding to fritzconnection library (available since V1.5.0) .
New information available are line sync speed,, noise margin and power attenuation.

Tested with ADSL and VDSL lines on fritzbox 7590, 7490 and 7390. 
Not tested on cable internet / fiber. According to upstrem library should also work / fail gracefully.

* Update sensor.py

Fixed errors from automated tests
Sorry it took so long

* Update homeassistant/components/fritz/sensor.py

Thank you this sounds even better

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>

* Update homeassistant/components/fritz/sensor.py

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>

* Update homeassistant/components/fritz/sensor.py

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>

* Update homeassistant/components/fritz/sensor.py

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>

* Update homeassistant/components/fritz/sensor.py

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>

* Update homeassistant/components/fritz/sensor.py

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>

* Update homeassistant/components/fritz/sensor.py

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>

* Update homeassistant/components/fritz/sensor.py

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>

* Update homeassistant/components/fritz/sensor.py

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>

* black & mypy fixes

* Rebase, fix multiplier, add conditional create

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>
2021-08-08 11:23:28 +02:00
Paulus Schoutsen f3de8b9f28 Merge pull request #54249 from home-assistant/rc 2021-08-07 23:19:11 -07:00
Paulus Schoutsen fe9808926e Fix formatting (#54247) 2021-08-07 22:04:03 -07:00
rjulius23 7d29eb282b Add enumerate to builtins in python_script component (#54244) 2021-08-07 22:02:20 -07:00
Paulus Schoutsen f458f330a5 Bumped version to 2021.8.4 2021-08-07 21:34:56 -07:00
Allen Porter fb6aca4f8b Pin google-cloud-pubsub to an older version (#54239)
Pin google-cloud-pubsub to an older version, since newer versions have a
pin that is incompatible with the existing grpcio pin already in package_constraints.txt
2021-08-07 21:34:52 -07:00
Dermot Duffy 724f11bb0d Don't block motionEye setup on NoURLAvailableError (#54225)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-07 21:34:52 -07:00
carstenschroeder 13ded1e5b2 Bugfix: Bring back unique IDs for ADS covers after #52488 (#54212) 2021-08-07 21:34:51 -07:00
jan iversen 5dcf5edae0 Add parameter to delay sending of requests in modbus (#54203) 2021-08-07 21:34:50 -07:00
Mk4242 56d0ef34fd Update const.py (#54195)
Remove extra attribute for FlowTemperature sensor, which prevents the ebusd integration from initialising
2021-08-07 21:34:50 -07:00
jan iversen 94e26df6d3 Solve missing automatic update of struct configuration in modbus (#54193) 2021-08-07 21:34:49 -07:00
Robert Hillis 3a17e22982 Fix androidtv media_image_hash (#54188) 2021-08-07 21:34:48 -07:00
Trinnik 1934159fd0 Fix update entity prior to adding (#54015) 2021-08-07 21:34:48 -07:00
Dermot Duffy 75726a2695 Don't block motionEye setup on NoURLAvailableError (#54225)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-07 21:29:52 -07:00
Aidan Timson 11f15f66af OVO Energy Long-term Statistics (#54157)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-07 21:20:55 -07:00
Joakim Sørensen 53c64e5148 Handle added and removed monitors (#54228) 2021-08-07 21:12:55 -07:00
jan iversen 8a4674c086 Solve missing automatic update of struct configuration in modbus (#54193) 2021-08-07 21:11:56 -07:00
Paulus Schoutsen a001fd5000 Fix formatting (#54247) 2021-08-07 21:10:21 -07:00
jan iversen 2232915ea8 Add parameter to delay sending of requests in modbus (#54203) 2021-08-07 21:10:08 -07:00
carstenschroeder d3007c26b3 Bugfix: Bring back unique IDs for ADS covers after #52488 (#54212) 2021-08-07 21:03:20 -07:00
Allen Porter 22acaa8e63 Pin google-cloud-pubsub to an older version (#54239)
Pin google-cloud-pubsub to an older version, since newer versions have a
pin that is incompatible with the existing grpcio pin already in package_constraints.txt
2021-08-07 21:00:37 -07:00
Maciej Bieniek 4fbe713079 Add missing motor_speed sensor for Xiaomi Miio humidifier CA1 and CB1 (#54202) 2021-08-07 20:55:01 -07:00
Trinnik b9e0de2eed Fix update entity prior to adding (#54015) 2021-08-07 20:51:05 -07:00
GitHub Action af565ea6bd [ci skip] Translation update 2021-08-08 00:11:15 +00:00
Joakim Sørensen a485b14293 Set entities as unavailable if last update was not successful (#54229) 2021-08-07 20:22:19 +02:00
Joakim Sørensen 3b1d44478a Change update interval from 60s to 10s for Uptime Robot (#54230) 2021-08-07 20:22:02 +02:00
Simone Chemelli 819131ad21 Raise ConfigEntryNotReady for Neato API error (#54227) 2021-08-07 19:15:25 +02:00
Mk4242 ca2bdfab6b Update const.py (#54195)
Remove extra attribute for FlowTemperature sensor, which prevents the ebusd integration from initialising
2021-08-07 18:24:19 +02:00
Simone Chemelli e0bc911e24 Fix Neato reauth flow when token expired (#52843)
* Fix Neato reauth flow when token expired

* Change and simplify approach

* Missing file

* Cleanup

* Update unique_id

* Added missing lamda

* Unique_id reworked

* Guard for id future ID changes

* Bump pybotvac: provide unique_id

* Address review comment

* Fix update check

* Remove token check

* Trigger reauth only for 401 and 403 code response

* Review comments
2021-08-07 12:22:08 +02:00
Joakim Plate 6dd875bc4a Bump ha-philipsjs to 2.7.5 (#54176) 2021-08-07 12:17:33 +02:00
Joakim Plate 422fe48c3a Correct device class typo in rfxtrx (#54200) 2021-08-07 12:15:31 +02:00
Jørgen Rørvik 6830eec549 Flexit component fix for updated modbus (#53583)
* pyflexit first argument should be a ModbusSerialClient
This component broke with 2021.6
I have tested this patch on my setup and it restores functionality

* Implemented async reading of modbus values
Stopped using pyflexit as this is outdated and not needed
Instead using async_pymodbus_call from ModbusHub class

* Bugfix: Reading fan mode from wrong register

* Implemented async writing
Set target temperature and fan mode using modbus call
Added some error handling

* No longer require pyflexit

* Review comments.

Co-authored-by: jan Iversen <jancasacondor@gmail.com>
2021-08-07 09:45:53 +02:00
Robert Hillis 0b52e13eb8 Fix androidtv media_image_hash (#54188) 2021-08-07 07:18:08 +02:00
Gian Klug 8b8f3b55b6 Add state class and last reset in kostal_plenticore (#54084)
* Add state class and implement in kostal_plenticore

* Add support for more entity variants

* Add the state_class to the total values too

* Reformat kostal const.py

* Add `last_reset` to kostal_plenticore entities when `state_class` is set

Also reformat sensor.py

* Fix import

* Remove the constants from the homeassistant constants file

* Use sensor constants for the state_class

* Reformat

* Reformat

* Move last_reset from sensor.py into const.py

* Remove last_reset on PERCENTAGE entities

* Address lint issues

* Update homeassistant/components/kostal_plenticore/sensor.py

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

* Import datetime

* Apply suggestions from code review

* Fix isort

* Fix more isort

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-07 06:25:35 +02:00
GitHub Action 98bcdc2cf5 [ci skip] Translation update 2021-08-07 00:10:12 +00:00
ollo69 099a1de92b Use SensorEntityDescription for AsusWRT sensors (#54111) 2021-08-06 15:43:39 -07:00
Paulus Schoutsen 9155274c6e Merge pull request #54175 from home-assistant/rc 2021-08-06 13:27:37 -07:00
Paulus Schoutsen cb775029e0 Bumped version to 2021.8.3 2021-08-06 12:55:59 -07:00
J. Nick Koston 011cda5fc4 Bump zeroconf to 0.33.4 to ensure zeroconf can startup when ipv6 is disabled (#54165)
Changelog: https://github.com/jstasiak/python-zeroconf/compare/0.33.3...0.33.4
2021-08-06 12:55:56 -07:00
J. Nick Koston d580036dfb Fetch interface index from network integration instead of socket.if_nametoindex in zeroconf (#54152) 2021-08-06 12:55:55 -07:00
Michael 15e9310a01 Fix sensor PLATFORM_SCHEMA for ebox and enphase_envoy (#54142)
* Fix sensor PLATFORM_SCHEMA

* fix pylint
2021-08-06 12:55:55 -07:00
Niccolo Zapponi 93a2e2849c Handle software version being None when setting up HomeKit accessories (#54130)
* Convert all HomeKit service info to string prior to checking for max length

* Added check for None software version

* Added test case for numeric version number

* Update tests/components/homekit/test_accessories.py

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

* Fix style & none version test

* Fix test

* revert other change since it should be covered by the format_sw_version fix

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-06 12:55:39 -07:00
Oscar Calvo 07f8236e6f Gracefully handle additional GSM errors (#54114) 2021-08-06 12:53:53 -07:00
J. Nick Koston acc0288f4c Bump zeroconf to 0.33.4 to ensure zeroconf can startup when ipv6 is disabled (#54165)
Changelog: https://github.com/jstasiak/python-zeroconf/compare/0.33.3...0.33.4
2021-08-06 12:48:00 -07:00
Joakim Plate 13e7cd237e Convert to using sensor descriptors (#54115) 2021-08-06 09:56:51 -07:00
Zoe ✨ ddbd455827 Add statistics support for the PVOutput sensor (#54149) 2021-08-06 09:56:27 -07:00
Niccolo Zapponi 483a4535c8 Handle software version being None when setting up HomeKit accessories (#54130)
* Convert all HomeKit service info to string prior to checking for max length

* Added check for None software version

* Added test case for numeric version number

* Update tests/components/homekit/test_accessories.py

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

* Fix style & none version test

* Fix test

* revert other change since it should be covered by the format_sw_version fix

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-06 09:34:42 -07:00
Tom Brien d842fc288f Ignore Coinbase vault wallets (#54133)
* Exclude vault balances

* Update option flow validation

* Update test name

* Add missed check

* Fix dangerous default
2021-08-06 09:34:21 -07:00
Raj Laud 2db278a7a7 Fix Squeezebox dhcp discovery (#54137)
* Fix Squeezebox dhcp discovery and allow ignore

* Test ignoring known Squeezebox players

* Fix linter errors
2021-08-06 09:29:52 -07:00
J. Nick Koston 5f790f6bd9 Fetch interface index from network integration instead of socket.if_nametoindex in zeroconf (#54152) 2021-08-06 09:15:35 -07:00
Michael 206073632f Fix sensor PLATFORM_SCHEMA for ebox and enphase_envoy (#54142)
* Fix sensor PLATFORM_SCHEMA

* fix pylint
2021-08-06 14:59:00 +02:00
Oscar Calvo 19adce844c Gracefully handle additional GSM errors (#54114) 2021-08-06 12:18:29 +02:00
Paulus Schoutsen a07048aacf Merge pull request #54117 from home-assistant/rc 2021-08-05 23:18:48 -07:00
Paulus Schoutsen 890d190612 Fix constant 2021-08-05 23:15:20 -07:00
Paulus Schoutsen 1cc3ffe20d Fix jinja warning (#54109) 2021-08-06 06:41:50 +02:00
Matthias Alphart ab34ef475e Test KNX binary sensor (#53820)
* test binary_sensor

* test binary_sensor with reset_after
2021-08-05 23:33:20 -05:00
Matthias Alphart 8ead20a76b Test knx sensor (#54090) 2021-08-05 23:26:02 -05:00
Milan Meulemans 02d6918165 Run coordinator config_entry_first_refresh in rituals_perfume_genie setup (#54080) 2021-08-05 23:13:47 -05:00
Paulus Schoutsen b00173705e Bumped version to 2021.8.2 2021-08-05 20:49:03 -07:00
J. Nick Koston 374ccaae47 Bump zeroconf to 0.33.3 (#54108) 2021-08-05 20:48:58 -07:00
J. Nick Koston fa4ec926ce Increase time before scene and script HomeKit entities are reset (#54105) 2021-08-05 20:48:57 -07:00
Simone Chemelli e37bf733bd Two fixes (#54102) 2021-08-05 20:48:56 -07:00
Shay Levy 52f7f203d2 Fix Shelly last_reset (#54101) 2021-08-05 20:48:55 -07:00
Paulus Schoutsen 557e1862d5 Packages to support config platforms (#54085) 2021-08-05 20:48:54 -07:00
puddly fbfb77b900 Bump up ZHA dependencies (#54079) 2021-08-05 20:48:53 -07:00
J. Nick Koston bc548050f1 Handle empty software version when setting up HomeKit (#54068)
Fixes #54059 Fixes #54024
2021-08-05 20:48:43 -07:00
Franck Nijhof 5c9d7edadd Add missing device class to SAJ energy sensors (#54048) 2021-08-05 20:47:38 -07:00
Nathan Spencer 6544a32319 Bump pylitterbot to 2021.8.0 (#54000) 2021-08-05 20:47:37 -07:00
Simone Chemelli 582f2ae2f6 Two fixes (#54102) 2021-08-05 19:24:41 -07:00
J. Nick Koston adc9f75493 Increase time before scene and script HomeKit entities are reset (#54105) 2021-08-05 19:24:24 -07:00
J. Nick Koston 46ad55455b Bump zeroconf to 0.33.3 (#54108) 2021-08-05 19:24:09 -07:00
Shay Levy 58ccfff067 Fix Shelly last_reset (#54101) 2021-08-05 19:23:05 -07:00
GitHub Action 64c9f9e1cb [ci skip] Translation update 2021-08-06 00:15:04 +00:00
Paulus Schoutsen 8377b557da Packages to support config platforms (#54085) 2021-08-05 13:11:01 -07:00
Paulus Schoutsen fcc3d24904 We shouldn't add measurement without last_reset to metered entities (#54087) 2021-08-05 13:10:42 -07:00
J. Nick Koston 26cb588ee2 Handle empty software version when setting up HomeKit (#54068)
Fixes #54059 Fixes #54024
2021-08-05 10:47:14 -07:00
puddly 5dc87d959c Bump up ZHA dependencies (#54079) 2021-08-05 10:46:58 -07:00
Matthias Alphart 98877924d3 Add state_class for KNX sensors (#53996) 2021-08-05 10:11:01 -07:00
Paulus Schoutsen 3655859be2 Add some metadata to pvoutput energy sensor (#54074) 2021-08-05 10:09:56 -07:00
Ian b930e17d64 Bump py-nextbusnext to 0.1.5 (#53924)
* NextBus: Rebrand and bump new version of py-nextbusnext

* Revert rebrand
2021-08-05 18:47:23 +02:00
Joakim Sørensen 786a83f844 Add unique_id to Uptime Robot config_flow (#54055) 2021-08-05 14:58:29 +02:00
Milan Meulemans debcc6689f Activate mypy for Cloudflare (#54041) 2021-08-05 13:01:12 +02:00
Gleb Sinyavskiy 25eb27cb9f Add tractive integration (#51002)
* Scaffold

* Implement config flow

* Add dymmy device tracker and TractiveClient

* Add simple DeviceTracker

* Add device info

* Listen to tractive event and update tracker entities accordingly

* Refactoring

* Fix logging level

* Handle connection errors

* Remove sleep

* Fix logging

* Remove unused strings

* Replace username config with email

* Update aiotractive

* Use debug instead of info

* Cover config_flow

* Update .coveragerc

* Add quality scale to manifest

* pylint

* Update aiotractive

* Do not emit SERVER_AVAILABLE, properly handle availability

* Use async_get_clientsession

Co-authored-by:  Daniel Hjelseth Høyer <mail@dahoiv.net>

* Add @Danielhiversen as a codeowner

* Remove the title from strings and translations

* Update homeassistant/components/tractive/__init__.py

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

* Force CI

* Use _attr style properties instead of methods

* Remove entry_type

* Remove quality scale

* Make pyupgrade happy

Co-authored-by: Daniel Hjelseth Høyer <mail@dahoiv.net>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-08-05 12:47:42 +02:00
Franck Nijhof 91ab86c17c Add state class support to Netatmo (#54051) 2021-08-05 12:29:00 +02:00
Joakim Sørensen 4a37ff2dda Bump pyuptimerobot to 21.8.1 (#53995)
* Bump pyuptimerobot to 21.08.0

* pylint

* bump to 21.8.1

* Uppdate strings

* Update homeassistant/components/uptimerobot/strings.json

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-05 12:13:47 +02:00
Franck Nijhof 1bc3c743db Add missing device class to SAJ energy sensors (#54048) 2021-08-05 12:12:06 +02:00
Michael 29e604bd22 Add vscode task code coverage (#53783)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-08-05 11:46:21 +02:00
Nathan Spencer dd479d410a Bump pylitterbot to 2021.8.0 (#54000) 2021-08-05 10:29:23 +02:00
Milan Meulemans be880fdaa9 Activate mypy for Updater (#53950) 2021-08-05 09:18:03 +02:00
Milan Meulemans 36c0478c4a Activate mypy for Reddit (#53949) 2021-08-05 09:16:47 +02:00
Dermot Duffy f2f084abe2 Use SwitchEntityDescription instead of EntityDescription in the motionEye integration (#54019) 2021-08-05 08:17:15 +02:00
Matthias Alphart 4d6c95a126 Don't double-validate KNX select options (#54020) 2021-08-05 08:16:33 +02:00
Paulus Schoutsen 5e9081e323 Merge pull request #54012 from home-assistant/rc 2021-08-04 20:22:17 -07:00
Aaron Bach c3a509bdd8 Add support for jammed status to SimpliSafe locks (#54006) 2021-08-04 19:50:09 -05:00
GitHub Action ba93bda3ad [ci skip] Translation update 2021-08-05 00:34:46 +00:00
Paulus Schoutsen 436d0e0fb4 Bumped version to 2021.8.1 2021-08-04 17:05:41 -07:00
Bram Kragten 72032edaec Update frontend to 20210804.0 (#53997) 2021-08-04 17:05:12 -07:00
jjlawren 14621fc445 Fix empty sonos_group entity attribute on startup (#53985) 2021-08-04 17:05:11 -07:00
Simone Chemelli ef55a8d2e2 Fix divider for Fritz sensors (#53980) 2021-08-04 17:05:10 -07:00
G Johansson 82b2ae8e91 Fix coordinator not defined in yale_smart_alarm (#53973)
* Bugfix coordinator not defined

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-04 17:05:09 -07:00
Michael 01299ddd20 Fix attr_unit_of_measurement in update of apcupsd entity (#53947) 2021-08-04 17:05:09 -07:00
jan iversen fcc82d26a4 Add temporary fix to modbus to solve upstream problem (#53857) 2021-08-04 17:05:07 -07:00
Alex Henry 16b5544104 Fix Panasonic Viera TV going unavailable when turned off (#53788) 2021-08-04 17:05:06 -07:00
jan iversen b2fffdd13e Add temporary fix to modbus to solve upstream problem (#53857) 2021-08-04 17:03:31 -07:00
Bram Kragten a8e4482594 Update frontend to 20210804.0 (#53997) 2021-08-04 17:03:04 -07:00
Joakim Sørensen caf0bdd5b9 Add config flow to uptimerobot (#53938) 2021-08-04 22:20:03 +02:00
G Johansson 4ef859a9a9 Fix coordinator not defined in yale_smart_alarm (#53973)
* Bugfix coordinator not defined

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-04 22:16:39 +02:00
jjlawren 6eae5231f1 Fix empty sonos_group entity attribute on startup (#53985) 2021-08-04 21:57:19 +02:00
Simone Chemelli 316c2baa12 Fix divider for Fritz sensors (#53980) 2021-08-04 21:53:07 +02:00
Michael f7fb4ad782 Fix attr_unit_of_measurement in update of apcupsd entity (#53947) 2021-08-04 21:24:19 +02:00
Milan Meulemans 3f6282eb7a Activate mypy for LG webOS Smart TV (#53958) 2021-08-04 19:31:24 +03:00
Jan Bouwhuis 1f9331f9db Remove Xiaomi_miio select option validation (#53936) 2021-08-04 14:00:18 +02:00
Jan Bouwhuis 1054419498 Remove Xiaomi_miio number value validation (#53934) 2021-08-04 12:50:08 +02:00
Alex Henry b77335d6f9 Fix Panasonic Viera TV going unavailable when turned off (#53788) 2021-08-04 12:44:16 +02:00
Alex Henry fe957b74be Upgrade anthemav dependency to 1.2.0 (#53931) 2021-08-04 12:43:30 +02:00
jan iversen 129cdda932 Late review. (#53933) 2021-08-04 12:34:04 +02:00
Maciej Bieniek 3b212b9109 Use NumberEntityDescription for Xiaomi Miio (#53911) 2021-08-04 12:03:18 +02:00
Jan Bouwhuis 8f014361d4 Validate Number value before calling entity method (#52343)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-04 11:57:26 +02:00
starkillerOG af38ff1ec1 Add xiaomi miio lumi.gateway.aqhm01 support (#53929) 2021-08-04 11:23:21 +02:00
Franck Nijhof f0f4c13cbe Merge pull request #53930 from home-assistant/rc 2021-08-04 11:21:42 +02:00
Jan Bouwhuis 8299d0a7c3 Validate Select option before calling entity method (#52352)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-08-04 11:12:42 +02:00
Joakim Sørensen ff307a802e Use the github context when writing metafile (#53928) 2021-08-04 11:03:41 +02:00
Franck Nijhof 4de3f031cc Bumped version to 2021.8.0 2021-08-04 10:46:20 +02:00
Joakim Sørensen 9ec516e1d4 Address review comments for 53918 (#53927) 2021-08-04 10:46:00 +02:00
Joakim Sørensen f9071a40de Address review comments for 53918 (#53927) 2021-08-04 09:29:51 +02:00
jan iversen 083868ac01 Enable mypy for Yamaha (#53920) 2021-08-04 08:47:28 +02:00
Matt Zimmerman 515a47212e Add target high/low temperatures to prometheus integration (#50071)
* add target high/low temperatures to prometheus integration

* use labels

* Revert "use labels"

This reverts commit 09c56d6359.

* fix naming

* tests

* cleanup

* use three separate metrics

* fix descriptions
2021-08-04 07:42:47 +02:00
Paulus Schoutsen 38df475936 Bumped version to 2021.8.0b10 2021-08-03 21:04:22 -07:00
Bram Kragten af81dda1e2 Update frontend to 20210803.2 (#53923) 2021-08-03 21:03:43 -07:00
Martin Hjelmare 4fdd354745 Limit zwave_js meter sensor last reset (#53921) 2021-08-03 21:03:42 -07:00
Joakim Sørensen 0342c0da33 Limit API usage for Uptime Robot (#53918) 2021-08-03 21:03:42 -07:00
Paulus Schoutsen 7a8676dc83 Handle Shelly get name on uninitialized device (#53917) 2021-08-03 21:03:41 -07:00
J. Nick Koston 54ac889362 Enforce maximum length for HomeKit characteristics (#53913) 2021-08-03 21:03:01 -07:00
Aaron Bach 4e2c174741 Handle scenario where SimpliSafe code is falsey (#53912) 2021-08-03 20:59:54 -07:00
Maciej Bieniek e4fd43ed7c Use SelectEntityDescription for Xiaomi Miio integration (#53907)
* Use SelectEntityDescription

* Use SelectEntityDescription

* Remove service field from XiaomiMiioSelectDescription class

* Fix typo

* Use lowercase for options
2021-08-03 20:58:48 -07:00
Greg Dowling 07604e60e5 Bump pyroon to 0.0.38 (#53906) 2021-08-03 20:50:46 -07:00
Jesse Hills 922c0dc8be Bump aioesphomeapi to 6.0.1 (#53905) 2021-08-03 20:50:45 -07:00
Joakim Sørensen 30497eff0e Add user to homeassistant system health (#53902) 2021-08-03 20:50:45 -07:00
Bram Kragten c682d5d5e4 Update frontend to 20210803.2 (#53923) 2021-08-04 02:10:33 +02:00
Adam Ernst 5735669693 Add "stop watering" service to rachio (#53764)
Co-authored-by: Brian Rogers <brg468@hotmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-08-03 16:51:52 -05:00
Martin Hjelmare c959a0a484 Limit zwave_js meter sensor last reset (#53921) 2021-08-03 22:50:14 +02:00
Joakim Sørensen f02259eb2d Limit API usage for Uptime Robot (#53918) 2021-08-03 11:20:12 -07:00
Paulus Schoutsen 71375be54d Handle Shelly get name on uninitialized device (#53917) 2021-08-03 11:16:00 -07:00
J. Nick Koston df03cce471 Enforce maximum length for HomeKit characteristics (#53913) 2021-08-03 10:09:10 -07:00
Jim Shank fa9ac71c3a Check for torrents in queue before calling the api stop_torrent() (#53895)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-08-03 18:26:21 +02:00
Aaron Bach 7518c58806 Handle scenario where SimpliSafe code is falsey (#53912) 2021-08-03 16:56:15 +02:00
Joakim Sørensen 56360feb9a Stream API requests to the supervisor (#53909) 2021-08-03 16:48:22 +02:00
Maciej Bieniek 2105419a4e Use SelectEntityDescription for Xiaomi Miio integration (#53907)
* Use SelectEntityDescription

* Use SelectEntityDescription

* Remove service field from XiaomiMiioSelectDescription class

* Fix typo

* Use lowercase for options
2021-08-03 15:58:30 +02:00
Jesse Hills 672a74fa37 Allow esphome entities to be disabled by default (#53898) 2021-08-03 14:53:48 +02:00
Jc2k 081b2d533b Add support for Eve Degree's air pressure sensor (#53891) 2021-08-03 07:30:50 -05:00
Maciej Bieniek 1286734ce9 Use SensorEntityDescription class for Xiaomi Miio (#53890) 2021-08-03 13:56:56 +02:00
Greg Dowling 7e63e12ece Bump pyroon to 0.0.38 (#53906) 2021-08-03 13:52:59 +02:00
Jesse Hills 15d36734b0 Bump aioesphomeapi to 6.0.1 (#53905) 2021-08-03 13:39:35 +02:00
Pascal Vizeli c287fc180b Add meta container data to rootfs (#53903)
* Add meta container data to rootfs

* Update builder.yml

* Update .github/workflows/builder.yml

Co-authored-by: Joakim Sørensen <joasoe@gmail.com>

* Update .github/workflows/builder.yml

Co-authored-by: Joakim Sørensen <joasoe@gmail.com>

Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-08-03 12:56:31 +02:00
Joakim Sørensen 3f2e18fe17 Add user to homeassistant system health (#53902) 2021-08-03 11:58:27 +02:00
Paulus Schoutsen 27848720a4 Bump frontend to 20210803.0 (#53897) 2021-08-02 21:39:53 -07:00
Aaron Bach b6de8626de Only show a SimpliSafe code entry when one exists (#53894) 2021-08-02 20:52:44 -07:00
Chris cfc5111561 Handle powerConsumption reports with null value (#53888) 2021-08-02 20:50:57 -07:00
GitHub Action d6c3d05517 [ci skip] Translation update 2021-08-03 00:10:03 +00:00
Paulus Schoutsen 91e55bdd14 Bump aiohue to 2.6.1 (#53887) 2021-08-02 14:44:15 -07:00
Aidan Timson 18f4d125c3 System Bridge v2.3.0+ - Data from WebSocket (#53443)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-02 22:11:26 +02:00
Maciej Bieniek 938ec27a86 Add support for MJJSQ humidifiers for Xiaomi MIIO integration (#53807) 2021-08-02 22:08:37 +02:00
Otto Winter d4cb819e1f ESPHome implement light color modes (#53854) 2021-08-02 22:07:37 +02:00
Jc2k d414b58769 Fix watts unit for homekit_controller power sensors (#53877) 2021-08-02 10:47:11 -07:00
Paulus Schoutsen 80a8f35a42 Bump frontend to 20210802.0 (#53876) 2021-08-02 10:42:04 -07:00
Joakim Sørensen c3d623a37e Fix issue when data is None (#53875) 2021-08-02 19:35:11 +02:00
Franck Nijhof 3bf06de363 Fix growat server config entry missing URL key (#53867) 2021-08-02 09:48:17 -07:00
Michael b2725918b1 Fix TP-Link smart strip devices (#53799) 2021-08-02 09:47:54 -07:00
Joakim Sørensen 1c38e9168c Add base energy analytics (#53855) 2021-08-02 09:46:07 -07:00
Michael bffa9f960d Add state class measurement to all suitable sensors on Speedtest.net (#53693)
* Add state class measurement

* use tuple instead of list
2021-08-02 17:00:25 +02:00
pdcemulator 1265aa0f64 Add edl21 OBIS IDs for DZG DWS76 (#53029) 2021-08-02 16:58:45 +02:00
Franck Nijhof d722d13b0e Add measurement state class to ZHA power devices (#53866) 2021-08-02 16:33:27 +02:00
Franck Nijhof f3d4dac11f Fix cloud accountlinking replacing token data (#53865) 2021-08-02 16:33:13 +02:00
Michael 4241c4ca5b Fix crash when AVM FRITZ!SmartHome devices are unreachable (#53809) 2021-08-02 16:13:54 +02:00
jan iversen 3296772bd3 Late review on hdmi_cec (#53763) (#53863) 2021-08-02 16:02:39 +02:00
Milan Meulemans 8ab3d9cc12 Use homeassistant.const instead of integration const for device_info ATTR_ (#53703) 2021-08-02 15:11:41 +02:00
Graham Rogers 4f96f05a75 Improve Universal media player toggle default behavior (#49395)
Before it could not be overridden and the default behavior meant nothing was called when all children were off, so it could not be used to turn on the media player. The new default behavior is to delegate to `turn_on` and `turn_off` instead, which is more likely to be the expected behavior.
2021-08-02 15:10:56 +02:00
J. Nick Koston 65c6943784 Bump HAP-python to 4.0.0 (#53780) 2021-08-02 15:08:32 +02:00
jan iversen 857031df14 Activate mypy for Norway_air (#53787) 2021-08-02 15:07:27 +02:00
Franck Nijhof 4022d539fe Add RPi.GPIO dependency to rpi_rf integration (#53858) 2021-08-02 15:00:43 +02:00
Felipe Martins Diel e8aee5ecf7 Fix entry setup for Broadlink SP4 sensors (#53765) 2021-08-02 14:59:23 +02:00
Vinny Furia 4f8c799610 Fix Radiothermostat hold value updates (#53656) 2021-08-02 14:57:10 +02:00
jan iversen 0f8a286cc7 Allow combinations write_coil/read_coils and write_coils/read_coil for modbus switch (#53856) 2021-08-02 14:55:52 +02:00
Emilv2 1012d823a0 Fix missing default reconnect interval in dsmr (#53760) 2021-08-02 14:54:33 +02:00
jan iversen bb11dc19d3 Convert @property to _attr_variable for hdmi_sec (#53816)
Convert @property to _attr_variable.
Break __init__ with a local function.
Make _attr_should_poll a class variable.
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-08-02 14:30:30 +02:00
Milan Meulemans 8500afa5d9 Activate mypy for Sony Songpal (#53655) 2021-08-02 12:16:41 +02:00
Daniel Hjelseth Høyer e4fe27061a Add STATE_CLASS_MEASUREMENT to Tibber (#53802) 2021-08-02 11:50:52 +02:00
René Klomp 14db83e4c1 Bump pysma to 0.6.5 (#53792) 2021-08-02 11:14:45 +02:00
Joakim Sørensen da3419945c Rename snapshot -> backup (#53851) 2021-08-02 11:07:21 +02:00
jan iversen 38832618bf Please mypy. (#53786) 2021-08-02 09:18:59 +02:00
Jc2k 73bc62949b Fix error in homekit_controller causing some entities to get an incorrect unique id (#53848) 2021-08-01 20:59:32 -07:00
GitHub Action 8c5620e74b [ci skip] Translation update 2021-08-02 03:40:04 +00:00
Chris 8ac1f5d28a Add energy consumption sensors to smartthings devices (#53759) 2021-08-01 20:35:03 -07:00
Bram Kragten 32c2d42863 Update frontend to 20210801.0 (#53841) 2021-08-01 15:06:28 -07:00
B-Hartley 736fb2e90d ForecastSolar - power production now w not k w (#53797) 2021-08-01 15:01:34 -07:00
Michael da1a9bcbf0 Do not block setup of TP-Link when device unreachable (#53770) 2021-08-01 14:58:55 -07:00
Maciej Bieniek 7d1324d66d Remove led from Xiaomi Miio humidifier features (#53796) 2021-08-01 14:58:31 -07:00
Robert Hillis 822e8645eb Fix file path error in nfandroidtv (#53814) 2021-08-01 10:08:39 +02:00
Sean Vig 673be4f7dd Bump Amcrest version to 1.8.0 (#53784)
* Bump Amcrest version to 1.8.0
* Add codeowner to Amcrest.

Co-authored-by: jan Iversen <jancasacondor@gmail.com>
2021-08-01 00:22:19 +02:00
jan iversen e41bc1a0da Activate mypy for hdmi_cec (#53763)
* Please mypy.
* Remove CEC_DEVICES.
2021-07-31 23:18:37 +02:00
jan iversen 3d52bfc8f6 Simplify DATA_TYPE -> struct conversion. (#53805) 2021-07-31 23:17:23 +02:00
Maciej Bieniek f1f293de02 Clean Xiaomi Miio humidifier services (#53806) 2021-07-31 21:19:00 +02:00
Andreas Brett 172769d19c Fix onkyo UnboundLocalError (#53793)
audio_information_raw and video_information_raw were in some cases used before being assigned

error: UnboundLocalError: local variable 'video_information_raw' referenced before assignment
2021-07-31 14:47:51 +02:00
Maciej Bieniek c6a2e247fe Fix name migration of the Xiaomi Miio humidifier (#53790) 2021-07-31 12:32:16 +02:00
Paulus Schoutsen 370799bd22 Revert "Improve light scene support for white mode (#53768)" (#53782)
This reverts commit 6ffe0f6405.
2021-07-30 21:10:32 -07:00
Aidan Timson 82abae1f7d Bump vallox-websocket-api to 2.8.1 (#53463) 2021-07-30 23:45:18 +02:00
Paulus Schoutsen 90cf94bb30 Bump Hue and only fire events for button presses (#53781)
* Bump Hue and only fire events for button presses

* Fix tests
2021-07-30 14:14:58 -07:00
Aaron Bach befe2cbefe Fix parsing of non-string values in Slack data (#53775) 2021-07-30 14:13:53 -07:00
Bram Kragten c72fc0c08c Update frontend to 20210730.0 (#53778) 2021-07-30 14:11:47 -07:00
Jan Bouwhuis a5824c3259 Fix Xiaomi-miio humidifier write the state back when turning on or off (#53771) 2021-07-30 12:47:55 -07:00
Erik Montnemery 6ffe0f6405 Improve light scene support for white mode (#53768) 2021-07-30 12:47:26 -07:00
Maciej Bieniek f2e7543f54 Fix Xiaomi Miio humidifier mode change (#53757) 2021-07-30 12:44:52 -07:00
J. Nick Koston 72bd3f7128 Bump HAP-python to 3.6.0 (#53754) 2021-07-30 12:44:28 -07:00
Joakim Sørensen a9722c90e9 Revert "Rename snapshot -> backup" (#53751)
This reverts commit 9806bda272.
2021-07-30 12:44:10 -07:00
Tobias Sauerwein 8e61ed39fd Fix flaky netatmo tests (#53644) 2021-07-30 20:07:23 +02:00
jan iversen b0c650e088 Update integration Fints with activate mypy, use attr_variables (#53706)
* Please mypy.

* Convert property to _attr_variables.
2021-07-30 19:23:16 +02:00
uvjustin 7a200a5d3b Fix non monotonic dts error in stream (#53712)
* Use defaultdict for TimestampValidator._last_dts

* Combine filters

* Allow PeekIterator to be updated while preserving buffer

* Fix peek edge case

* Readd is_valid filter to video only iterator
2021-07-30 08:02:33 -07:00
Diogo Gomes 028f6c4cac fix flakky test (#53750) 2021-07-30 07:11:58 -07:00
epenet b3f0d6840c Use constants for device_info in Renault integration (#53714)
* Use constants for device_info

* Fix isort
2021-07-30 15:06:55 +03:00
epenet bb7236fd04 Use constants for device_info in Onewire integration (#53724) 2021-07-30 13:35:49 +02:00
Paulus Schoutsen 2cbcd5f2a9 Cost sensor handle consumption sensor in Wh (#53746) 2021-07-30 11:00:52 +02:00
Paulus Schoutsen 05a7853720 Add energy attributes to Fronius (#53741)
* Add energy attributes to Fronius

* Add solar

* Add power

* Only add last reset for total meter entities

* Only add last reset for total solar entities

* Create different entity descriptions per key

* only return the entity description for energy total

* Use correct key

* Meter devices keep it real

* keys start with energy_real

* Also device key starts with

* Lint
2021-07-29 23:34:03 -07:00
epenet 87dab02ce6 Remove YAML configuration from onewire (#53728) 2021-07-29 22:12:00 -07:00
Michael 692665e46c Apply left suggestions #53596 for TP-Link (#53737) 2021-07-29 22:11:15 -07:00
Jan Bouwhuis 4a95ed9b7f Fix Xiaomi-miio switch platform setup (#53739) 2021-07-29 22:10:41 -07:00
Jan Bouwhuis 1e33017db8 Fix Xiaomi humidifier name migration (#53738) 2021-07-29 22:10:16 -07:00
Brandon Rothweiler 96b02153b9 Only allow one Mazda vehicle status request at a time (#53736) 2021-07-29 22:08:52 -07:00
Eric Severance 7ae158f9a1 wemo light brightness fixes (#53740) 2021-07-29 22:08:13 -07:00
Michael 2b2cddb5f0 Extract smartthings switch energy attributes into sensors (#53719) 2021-07-29 21:50:02 -07:00
Ryan Johnson 8972fae0ca Bump pyatv to 0.8.2 (#53659) 2021-07-29 21:19:32 -07:00
Michael 45e4f80cfe Fix exception handling in DataUpdateCoordinator in TP-Link (#53734)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-07-29 21:18:09 -07:00
Marc Mueller 0815eede4b Replace lists with tuples (2) (#53685) 2021-07-30 01:20:03 +02:00
Alexei Chetroi 5eba3e485b Bump up ZHA dependencies (#53732) 2021-07-29 16:16:47 -07:00
Robert Svensson edf0e0bd08 Add energy device class to deCONZ consumption sensors (#53731) 2021-07-29 16:16:08 -07:00
Martin Hjelmare 6d30e596ca Fix zwave_js current and voltage meter sensor device class (#53723) 2021-07-29 14:26:57 -07:00
Franck Nijhof de7a885045 Fix effect selector of light.turn_on service (#53726) 2021-07-29 14:26:39 -07:00
Paulus Schoutsen 6b7a4d2d3c Revert "Allow uploading large snapshots (#53528)" (#53729)
This reverts commit cdce14d63d.
2021-07-29 14:26:05 -07:00
Franck Nijhof 390101720d Fix DSMR reconnecting loop without timeout (#53722) 2021-07-29 22:55:26 +02:00
Paulus Schoutsen 2d83ad3211 Bump frontend to 20210729.0 (#53717) 2021-07-29 12:34:32 -07:00
Franck Nijhof 7c98fc94d4 Fix SolarEdge statistics; missing device_class (#53720) 2021-07-29 12:34:22 -07:00
Martin Hjelmare 3c0e4b1fd9 Fix zwave_js meter sensor state class (#53716) 2021-07-29 12:25:43 -07:00
Franck Nijhof 120a0bead0 Add state class support to DSMR Reader (#53715) 2021-07-29 12:25:18 -07:00
Simone Chemelli e9a00ad4ce Add last reset to Shelly's energy entities (#53710) 2021-07-29 12:10:53 -07:00
Maciej Bieniek fb3b8b6686 Fix last_reset_topic config replaces state_topic for sensor platform (#53677) 2021-07-29 12:09:14 -07:00
Robert Svensson c6213b36ad Only disable a device if all associated config entries are disabled (#53681) 2021-07-29 12:08:53 -07:00
Daniel Hjelseth Høyer 204426009f Clean up Surpetcare (#53699) 2021-07-29 21:03:13 +02:00
Martin Hjelmare 007ecc51e5 Revert "Add Automate Pulse Hub v2 support (#39501)" (#53704) 2021-07-29 11:58:48 -07:00
Gerard 4da9116025 Bump bimmer_connected to 0.7.16 to fix parking light issue (#53687) 2021-07-29 11:57:46 -07:00
Michael 2b0b8736f2 Set state class measurement also for Total Energy for AVM Fritz!Smarthome devices (#53707) 2021-07-29 11:54:51 -07:00
Daniel Hjelseth Høyer 6590e464af Integration. Add device class, last_reset, state_class (#53698)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-07-29 20:05:53 +02:00
Michael bedb9550f5 Move TP-Link power and energy switch attributes to sensors (#53596)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-07-29 11:02:47 -07:00
Daniel Hjelseth Høyer 24a589961a Energy round (#53696)
* Energy. Round cost

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

* Energy. Round cost

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

* Update homeassistant/components/energy/sensor.py

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

Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-07-29 18:44:38 +02:00
Andrew55529 09947d13a8 Fix problem with telegram_bot (#53690) 2021-07-29 18:31:32 +02:00
J. Nick Koston 219348d573 Skip each ssdp listener that fails to bind (#53670) 2021-07-29 18:07:52 +02:00
Daniel Hjelseth Høyer f8750daa09 Surepetcare, bug fix (#53695) 2021-07-29 16:59:02 +02:00
Nicko van Someren 705e2446e5 Fix Lutron button events to have unambiguous names (#53666) 2021-07-29 16:29:52 +02:00
Raman Gupta 30cbf03b48 Add energy support for zwave_js meter CC entities (#53665)
* Add energy support for zwave_js meter CC entities

* shrink

* comments

* comments

* comments

* Move attributes

* Add tests

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-07-29 14:18:38 +02:00
Raman Gupta 1019ee22ff Add enabled attribute to zwave_js discovery model (#53645)
* Add attribute to zwave_js discovery model

* Fix binary sensor entity enabled logic

* Add tests
2021-07-29 09:30:50 +02:00
Eric Severance dc1b2b7687 pyWeMo version bump (0.6.6) (#53671) 2021-07-29 09:13:55 +02:00
Allen Porter 806ab47ca5 Bump nest to version 0.3.5 (#53672)
Fix runtime type assertions, Fixes Issue #53652
2021-07-28 22:49:13 -07:00
Aaron Bach c04671ac64 Fix unhandled exception with Guardian paired sensor coordinators (#53663) 2021-07-28 22:16:14 -07:00
Diogo Gomes a2d66bd1c0 Prosegur code quality improvements (#53647) 2021-07-28 22:15:28 -07:00
Stephen Beechen cdce14d63d Allow uploading large snapshots (#53528)
Co-authored-by: Pascal Vizeli <pascal.vizeli@syshack.ch>
2021-07-28 22:12:59 -07:00
J. Nick Koston e14a04df2e Add device class energy and last reset to sense (#53667) 2021-07-28 21:58:28 -07:00
J. Nick Koston ef2ca1cee9 Bump aiolip to 1.1.6 to fix timeout with ident (#53660) 2021-07-29 02:39:45 +02:00
Paulus Schoutsen 057d979335 Add last reset to enphase sensors (#53653) 2021-07-28 17:31:10 -07:00
J. Nick Koston 6eb3307734 Fix invalid homekit state when arming (#53646)
- Maybe fixes #48538
2021-07-28 16:09:49 -07:00
Paulus Schoutsen bbd1a85b09 Add last reset to Shelly (#53654) 2021-07-28 15:48:27 -07:00
Milan Meulemans d40012f110 Correct typing in Zerproc and activate mypy (#53642) 2021-07-28 16:36:13 -05:00
Raman Gupta e1c6ccb198 Add zwave_js.reset_meter service (#53390)
* Add zwave_js.meter_reset service

* fix log statement

* Add endpoint attribute to service call and rename service

* Make service an entity service

* remove endpoint from service description
2021-07-28 23:15:27 +02:00
Franck Nijhof a8536e3ce5 Bump version to 2021.9.0dev0 (#53638) 2021-07-28 22:56:34 +02:00
epenet 8d84edd3b7 Add renault integration (#39605) 2021-07-28 12:41:11 -07:00
5874 changed files with 192597 additions and 80670 deletions
+97 -49
View File
@@ -29,13 +29,16 @@ omit =
homeassistant/components/ads/*
homeassistant/components/aemet/weather_update_coordinator.py
homeassistant/components/aftership/*
homeassistant/components/agent_dvr/__init__.py
homeassistant/components/agent_dvr/alarm_control_panel.py
homeassistant/components/agent_dvr/camera.py
homeassistant/components/agent_dvr/const.py
homeassistant/components/agent_dvr/helpers.py
homeassistant/components/airnow/__init__.py
homeassistant/components/airnow/sensor.py
homeassistant/components/airthings/__init__.py
homeassistant/components/airthings/sensor.py
homeassistant/components/airtouch4/__init__.py
homeassistant/components/airtouch4/climate.py
homeassistant/components/airtouch4/const.py
homeassistant/components/airvisual/__init__.py
homeassistant/components/airvisual/sensor.py
homeassistant/components/aladdin_connect/*
@@ -46,6 +49,7 @@ omit =
homeassistant/components/alarmdecoder/sensor.py
homeassistant/components/alpha_vantage/sensor.py
homeassistant/components/amazon_polly/*
homeassistant/components/amberelectric/__init__.py
homeassistant/components/ambiclimate/climate.py
homeassistant/components/ambient_station/*
homeassistant/components/amcrest/*
@@ -79,7 +83,6 @@ omit =
homeassistant/components/aurora/binary_sensor.py
homeassistant/components/aurora/const.py
homeassistant/components/aurora/sensor.py
homeassistant/components/aurora_abb_powerone/sensor.py
homeassistant/components/avea/light.py
homeassistant/components/avion/light.py
homeassistant/components/azure_devops/__init__.py
@@ -128,6 +131,7 @@ omit =
homeassistant/components/braviatv/remote.py
homeassistant/components/broadlink/__init__.py
homeassistant/components/broadlink/const.py
homeassistant/components/broadlink/light.py
homeassistant/components/broadlink/remote.py
homeassistant/components/broadlink/switch.py
homeassistant/components/broadlink/updater.py
@@ -168,6 +172,13 @@ omit =
homeassistant/components/coolmaster/const.py
homeassistant/components/cppm_tracker/device_tracker.py
homeassistant/components/cpuspeed/sensor.py
homeassistant/components/crownstone/__init__.py
homeassistant/components/crownstone/const.py
homeassistant/components/crownstone/listeners.py
homeassistant/components/crownstone/helpers.py
homeassistant/components/crownstone/devices.py
homeassistant/components/crownstone/entry_manager.py
homeassistant/components/crownstone/light.py
homeassistant/components/cups/sensor.py
homeassistant/components/currencylayer/sensor.py
homeassistant/components/daikin/*
@@ -200,7 +211,6 @@ omit =
homeassistant/components/dlib_face_detect/image_processing.py
homeassistant/components/dlib_face_identify/image_processing.py
homeassistant/components/dlink/switch.py
homeassistant/components/dlna_dmr/media_player.py
homeassistant/components/dnsip/sensor.py
homeassistant/components/dominos/*
homeassistant/components/doods/*
@@ -257,7 +267,10 @@ omit =
homeassistant/components/enphase_envoy/__init__.py
homeassistant/components/enphase_envoy/sensor.py
homeassistant/components/entur_public_transport/*
homeassistant/components/environment_canada/*
homeassistant/components/environment_canada/__init__.py
homeassistant/components/environment_canada/camera.py
homeassistant/components/environment_canada/sensor.py
homeassistant/components/environment_canada/weather.py
homeassistant/components/envirophat/sensor.py
homeassistant/components/envisalink/*
homeassistant/components/ephember/climate.py
@@ -278,7 +291,6 @@ omit =
homeassistant/components/esphome/select.py
homeassistant/components/esphome/sensor.py
homeassistant/components/esphome/switch.py
homeassistant/components/essent/sensor.py
homeassistant/components/etherscan/sensor.py
homeassistant/components/eufy/*
homeassistant/components/everlights/light.py
@@ -287,6 +299,7 @@ omit =
homeassistant/components/ezviz/camera.py
homeassistant/components/ezviz/coordinator.py
homeassistant/components/ezviz/const.py
homeassistant/components/ezviz/entity.py
homeassistant/components/ezviz/binary_sensor.py
homeassistant/components/ezviz/sensor.py
homeassistant/components/ezviz/switch.py
@@ -314,6 +327,13 @@ omit =
homeassistant/components/firmata/switch.py
homeassistant/components/fitbit/*
homeassistant/components/fixer/sensor.py
homeassistant/components/fjaraskupan/__init__.py
homeassistant/components/fjaraskupan/binary_sensor.py
homeassistant/components/fjaraskupan/const.py
homeassistant/components/fjaraskupan/fan.py
homeassistant/components/fjaraskupan/light.py
homeassistant/components/fjaraskupan/number.py
homeassistant/components/fjaraskupan/sensor.py
homeassistant/components/fleetgo/device_tracker.py
homeassistant/components/flexit/climate.py
homeassistant/components/flic/binary_sensor.py
@@ -325,7 +345,6 @@ omit =
homeassistant/components/flume/sensor.py
homeassistant/components/flunearyou/__init__.py
homeassistant/components/flunearyou/sensor.py
homeassistant/components/flux_led/light.py
homeassistant/components/folder/sensor.py
homeassistant/components/folder_watcher/*
homeassistant/components/foobot/sensor.py
@@ -359,7 +378,6 @@ omit =
homeassistant/components/garages_amsterdam/sensor.py
homeassistant/components/gc100/*
homeassistant/components/geniushub/*
homeassistant/components/generic_hygrostat/*
homeassistant/components/github/sensor.py
homeassistant/components/gitlab_ci/sensor.py
homeassistant/components/gitter/sensor.py
@@ -375,6 +393,7 @@ omit =
homeassistant/components/google/*
homeassistant/components/google_cloud/tts.py
homeassistant/components/google_maps/device_tracker.py
homeassistant/components/google_pubsub/__init__.py
homeassistant/components/google_travel_time/__init__.py
homeassistant/components/google_travel_time/helpers.py
homeassistant/components/google_travel_time/sensor.py
@@ -439,7 +458,6 @@ omit =
homeassistant/components/hp_ilo/sensor.py
homeassistant/components/htu21d/sensor.py
homeassistant/components/huawei_lte/*
homeassistant/components/huawei_router/device_tracker.py
homeassistant/components/hue/light.py
homeassistant/components/hunterdouglas_powerview/__init__.py
homeassistant/components/hunterdouglas_powerview/scene.py
@@ -567,6 +585,11 @@ omit =
homeassistant/components/logi_circle/const.py
homeassistant/components/logi_circle/sensor.py
homeassistant/components/london_underground/sensor.py
homeassistant/components/lookin/__init__.py
homeassistant/components/lookin/entity.py
homeassistant/components/lookin/models.py
homeassistant/components/lookin/sensor.py
homeassistant/components/lookin/climate.py
homeassistant/components/loopenergy/sensor.py
homeassistant/components/luci/device_tracker.py
homeassistant/components/luftdaten/__init__.py
@@ -581,7 +604,6 @@ omit =
homeassistant/components/lutron_caseta/scene.py
homeassistant/components/lutron_caseta/switch.py
homeassistant/components/lw12wifi/light.py
homeassistant/components/lyft/sensor.py
homeassistant/components/lyric/__init__.py
homeassistant/components/lyric/api.py
homeassistant/components/lyric/climate.py
@@ -631,12 +653,7 @@ omit =
homeassistant/components/mitemp_bt/sensor.py
homeassistant/components/mjpeg/camera.py
homeassistant/components/mochad/*
homeassistant/components/modbus/base_platform.py
homeassistant/components/modbus/binary_sensor.py
homeassistant/components/modbus/cover.py
homeassistant/components/modbus/climate.py
homeassistant/components/modbus/modbus.py
homeassistant/components/modbus/validators.py
homeassistant/components/modem_callerid/sensor.py
homeassistant/components/motion_blinds/__init__.py
homeassistant/components/motion_blinds/const.py
@@ -666,25 +683,30 @@ omit =
homeassistant/components/mysensors/helpers.py
homeassistant/components/mysensors/light.py
homeassistant/components/mysensors/notify.py
homeassistant/components/mysensors/sensor.py
homeassistant/components/mysensors/switch.py
homeassistant/components/mystrom/binary_sensor.py
homeassistant/components/mystrom/light.py
homeassistant/components/mystrom/switch.py
homeassistant/components/myq/__init__.py
homeassistant/components/myq/cover.py
homeassistant/components/myq/light.py
homeassistant/components/nad/media_player.py
homeassistant/components/nanoleaf/__init__.py
homeassistant/components/nanoleaf/light.py
homeassistant/components/neato/__init__.py
homeassistant/components/neato/api.py
homeassistant/components/neato/camera.py
homeassistant/components/neato/hub.py
homeassistant/components/neato/sensor.py
homeassistant/components/neato/switch.py
homeassistant/components/neato/vacuum.py
homeassistant/components/nederlandse_spoorwegen/sensor.py
homeassistant/components/nello/lock.py
homeassistant/components/nest/legacy/*
homeassistant/components/netdata/sensor.py
homeassistant/components/netgear/__init__.py
homeassistant/components/netgear/device_tracker.py
homeassistant/components/netgear/router.py
homeassistant/components/netgear/sensor.py
homeassistant/components/netgear_lte/*
homeassistant/components/netio/switch.py
homeassistant/components/neurio_energy/sensor.py
@@ -695,7 +717,8 @@ omit =
homeassistant/components/niko_home_control/light.py
homeassistant/components/nilu/air_quality.py
homeassistant/components/nissan_leaf/*
homeassistant/components/nmap_tracker/*
homeassistant/components/nmap_tracker/__init__.py
homeassistant/components/nmap_tracker/device_tracker.py
homeassistant/components/nmbs/sensor.py
homeassistant/components/notion/__init__.py
homeassistant/components/notion/binary_sensor.py
@@ -708,11 +731,10 @@ omit =
homeassistant/components/nuki/const.py
homeassistant/components/nuki/binary_sensor.py
homeassistant/components/nuki/lock.py
homeassistant/components/nut/sensor.py
homeassistant/components/nx584/alarm_control_panel.py
homeassistant/components/nzbget/coordinator.py
homeassistant/components/obihai/*
homeassistant/components/octoprint/*
homeassistant/components/octoprint/__init__.py
homeassistant/components/oem/climate.py
homeassistant/components/oasa_telematics/sensor.py
homeassistant/components/ohmconnect/sensor.py
@@ -738,7 +760,11 @@ omit =
homeassistant/components/opencv/*
homeassistant/components/openevse/sensor.py
homeassistant/components/openexchangerates/sensor.py
homeassistant/components/opengarage/__init__.py
homeassistant/components/opengarage/binary_sensor.py
homeassistant/components/opengarage/cover.py
homeassistant/components/opengarage/entity.py
homeassistant/components/opengarage/sensor.py
homeassistant/components/openhome/__init__.py
homeassistant/components/openhome/media_player.py
homeassistant/components/openhome/const.py
@@ -754,7 +780,6 @@ omit =
homeassistant/components/openweathermap/sensor.py
homeassistant/components/openweathermap/weather.py
homeassistant/components/openweathermap/weather_update_coordinator.py
homeassistant/components/openweathermap/abstract_owm_sensor.py
homeassistant/components/opnsense/*
homeassistant/components/opple/light.py
homeassistant/components/orangepi_gpio/*
@@ -829,9 +854,9 @@ omit =
homeassistant/components/raincloud/*
homeassistant/components/rainmachine/__init__.py
homeassistant/components/rainmachine/binary_sensor.py
homeassistant/components/rainmachine/model.py
homeassistant/components/rainmachine/sensor.py
homeassistant/components/rainmachine/switch.py
homeassistant/components/rainforest_eagle/sensor.py
homeassistant/components/raspihats/*
homeassistant/components/raspyrfm/*
homeassistant/components/recollect_waste/__init__.py
@@ -848,13 +873,6 @@ omit =
homeassistant/components/rest/switch.py
homeassistant/components/ring/camera.py
homeassistant/components/ripple/sensor.py
homeassistant/components/rituals_perfume_genie/binary_sensor.py
homeassistant/components/rituals_perfume_genie/entity.py
homeassistant/components/rituals_perfume_genie/number.py
homeassistant/components/rituals_perfume_genie/select.py
homeassistant/components/rituals_perfume_genie/sensor.py
homeassistant/components/rituals_perfume_genie/switch.py
homeassistant/components/rituals_perfume_genie/__init__.py
homeassistant/components/rocketchat/notify.py
homeassistant/components/roomba/__init__.py
homeassistant/components/roomba/binary_sensor.py
@@ -887,12 +905,15 @@ omit =
homeassistant/components/screenlogic/__init__.py
homeassistant/components/screenlogic/binary_sensor.py
homeassistant/components/screenlogic/climate.py
homeassistant/components/screenlogic/light.py
homeassistant/components/screenlogic/sensor.py
homeassistant/components/screenlogic/services.py
homeassistant/components/screenlogic/switch.py
homeassistant/components/scsgate/*
homeassistant/components/sendgrid/notify.py
homeassistant/components/sense/*
homeassistant/components/sense/__init__.py
homeassistant/components/sense/binary_sensor.py
homeassistant/components/sense/sensor.py
homeassistant/components/sensehat/light.py
homeassistant/components/sensehat/sensor.py
homeassistant/components/sensibo/climate.py
@@ -976,22 +997,31 @@ omit =
homeassistant/components/squeezebox/__init__.py
homeassistant/components/squeezebox/browse_media.py
homeassistant/components/squeezebox/media_player.py
homeassistant/components/ssdp/util.py
homeassistant/components/starline/*
homeassistant/components/starlingbank/sensor.py
homeassistant/components/steam_online/sensor.py
homeassistant/components/stiebel_eltron/*
homeassistant/components/stookalert/*
homeassistant/components/stookalert/__init__.py
homeassistant/components/stookalert/binary_sensor.py
homeassistant/components/stream/*
homeassistant/components/streamlabswater/*
homeassistant/components/suez_water/*
homeassistant/components/supervisord/sensor.py
homeassistant/components/surepetcare/__init__.py
homeassistant/components/surepetcare/entity.py
homeassistant/components/surepetcare/binary_sensor.py
homeassistant/components/surepetcare/sensor.py
homeassistant/components/swiss_hydrological_data/sensor.py
homeassistant/components/swiss_public_transport/sensor.py
homeassistant/components/swisscom/device_tracker.py
homeassistant/components/switchbot/switch.py
homeassistant/components/switchbot/binary_sensor.py
homeassistant/components/switchbot/__init__.py
homeassistant/components/switchbot/const.py
homeassistant/components/switchbot/entity.py
homeassistant/components/switchbot/cover.py
homeassistant/components/switchbot/sensor.py
homeassistant/components/switchbot/coordinator.py
homeassistant/components/switchmate/switch.py
homeassistant/components/syncthing/__init__.py
homeassistant/components/syncthing/sensor.py
@@ -1007,8 +1037,9 @@ omit =
homeassistant/components/synology_srm/device_tracker.py
homeassistant/components/syslog/notify.py
homeassistant/components/system_bridge/__init__.py
homeassistant/components/system_bridge/const.py
homeassistant/components/system_bridge/binary_sensor.py
homeassistant/components/system_bridge/const.py
homeassistant/components/system_bridge/coordinator.py
homeassistant/components/system_bridge/sensor.py
homeassistant/components/systemmonitor/sensor.py
homeassistant/components/tado/*
@@ -1016,6 +1047,8 @@ omit =
homeassistant/components/tank_utility/sensor.py
homeassistant/components/tankerkoenig/*
homeassistant/components/tapsaff/binary_sensor.py
homeassistant/components/tautulli/const.py
homeassistant/components/tautulli/coordinator.py
homeassistant/components/tautulli/sensor.py
homeassistant/components/ted5000/sensor.py
homeassistant/components/telegram/notify.py
@@ -1031,14 +1064,6 @@ omit =
homeassistant/components/telnet/switch.py
homeassistant/components/temper/sensor.py
homeassistant/components/tensorflow/image_processing.py
homeassistant/components/tesla/__init__.py
homeassistant/components/tesla/binary_sensor.py
homeassistant/components/tesla/climate.py
homeassistant/components/tesla/const.py
homeassistant/components/tesla/device_tracker.py
homeassistant/components/tesla/lock.py
homeassistant/components/tesla/sensor.py
homeassistant/components/tesla/switch.py
homeassistant/components/tfiac/climate.py
homeassistant/components/thermoworks_smoke/sensor.py
homeassistant/components/thethingsnetwork/*
@@ -1072,13 +1097,23 @@ omit =
homeassistant/components/totalconnect/binary_sensor.py
homeassistant/components/totalconnect/const.py
homeassistant/components/touchline/climate.py
homeassistant/components/tplink/common.py
homeassistant/components/tplink/switch.py
homeassistant/components/tplink_lte/*
homeassistant/components/traccar/device_tracker.py
homeassistant/components/traccar/const.py
homeassistant/components/trackr/device_tracker.py
homeassistant/components/tradfri/*
homeassistant/components/tractive/__init__.py
homeassistant/components/tractive/binary_sensor.py
homeassistant/components/tractive/device_tracker.py
homeassistant/components/tractive/entity.py
homeassistant/components/tractive/sensor.py
homeassistant/components/tractive/switch.py
homeassistant/components/tradfri/__init__.py
homeassistant/components/tradfri/base_class.py
homeassistant/components/tradfri/config_flow.py
homeassistant/components/tradfri/cover.py
homeassistant/components/tradfri/fan.py
homeassistant/components/tradfri/light.py
homeassistant/components/tradfri/sensor.py
homeassistant/components/tradfri/switch.py
homeassistant/components/trafikverket_train/sensor.py
homeassistant/components/trafikverket_weatherstation/sensor.py
homeassistant/components/transmission/sensor.py
@@ -1087,13 +1122,23 @@ omit =
homeassistant/components/transmission/errors.py
homeassistant/components/travisci/sensor.py
homeassistant/components/tuya/__init__.py
homeassistant/components/tuya/base.py
homeassistant/components/tuya/binary_sensor.py
homeassistant/components/tuya/camera.py
homeassistant/components/tuya/climate.py
homeassistant/components/tuya/const.py
homeassistant/components/tuya/cover.py
homeassistant/components/tuya/fan.py
homeassistant/components/tuya/humidifier.py
homeassistant/components/tuya/light.py
homeassistant/components/tuya/number.py
homeassistant/components/tuya/scene.py
homeassistant/components/tuya/select.py
homeassistant/components/tuya/sensor.py
homeassistant/components/tuya/siren.py
homeassistant/components/tuya/switch.py
homeassistant/components/tuya/util.py
homeassistant/components/tuya/vacuum.py
homeassistant/components/twentemilieu/const.py
homeassistant/components/twentemilieu/sensor.py
homeassistant/components/twilio_call/notify.py
@@ -1111,7 +1156,6 @@ omit =
homeassistant/components/upcloud/switch.py
homeassistant/components/upnp/*
homeassistant/components/upc_connect/*
homeassistant/components/uptimerobot/binary_sensor.py
homeassistant/components/uscis/sensor.py
homeassistant/components/vallox/*
homeassistant/components/vasttrafik/sensor.py
@@ -1124,6 +1168,7 @@ omit =
homeassistant/components/velbus/sensor.py
homeassistant/components/velbus/switch.py
homeassistant/components/velux/*
homeassistant/components/venstar/__init__.py
homeassistant/components/venstar/climate.py
homeassistant/components/verisure/__init__.py
homeassistant/components/verisure/alarm_control_panel.py
@@ -1147,6 +1192,7 @@ omit =
homeassistant/components/vilfo/const.py
homeassistant/components/vivotek/camera.py
homeassistant/components/vlc/media_player.py
homeassistant/components/vlc_telnet/__init__.py
homeassistant/components/vlc_telnet/media_player.py
homeassistant/components/volkszaehler/sensor.py
homeassistant/components/volumio/__init__.py
@@ -1158,13 +1204,14 @@ omit =
homeassistant/components/waterfurnace/*
homeassistant/components/watson_iot/*
homeassistant/components/watson_tts/tts.py
homeassistant/components/watttime/__init__.py
homeassistant/components/watttime/sensor.py
homeassistant/components/waze_travel_time/__init__.py
homeassistant/components/waze_travel_time/helpers.py
homeassistant/components/waze_travel_time/sensor.py
homeassistant/components/webostv/*
homeassistant/components/whois/sensor.py
homeassistant/components/wiffi/*
homeassistant/components/wink/*
homeassistant/components/wirelesstag/*
homeassistant/components/wolflink/__init__.py
homeassistant/components/wolflink/sensor.py
@@ -1195,6 +1242,7 @@ omit =
homeassistant/components/xiaomi_miio/__init__.py
homeassistant/components/xiaomi_miio/air_quality.py
homeassistant/components/xiaomi_miio/alarm_control_panel.py
homeassistant/components/xiaomi_miio/binary_sensor.py
homeassistant/components/xiaomi_miio/device.py
homeassistant/components/xiaomi_miio/device_tracker.py
homeassistant/components/xiaomi_miio/fan.py
@@ -1206,7 +1254,6 @@ omit =
homeassistant/components/xiaomi_miio/select.py
homeassistant/components/xiaomi_miio/sensor.py
homeassistant/components/xiaomi_miio/switch.py
homeassistant/components/xiaomi_miio/vacuum.py
homeassistant/components/xiaomi_tv/media_player.py
homeassistant/components/xmpp/notify.py
homeassistant/components/xs1/*
@@ -1263,5 +1310,6 @@ exclude_lines =
raise AssertionError
raise NotImplementedError
# TYPE_CHECKING block is never executed during pytest run
# TYPE_CHECKING and @overload blocks are never executed during pytest run
if TYPE_CHECKING:
@overload
+6 -1
View File
@@ -24,7 +24,12 @@
"editor.formatOnSave": true,
"editor.formatOnType": true,
"files.trimTrailingWhitespace": true,
"terminal.integrated.shell.linux": "/usr/bin/zsh",
"terminal.integrated.profiles.linux": {
"zsh": {
"path": "/usr/bin/zsh"
}
},
"terminal.integrated.defaultProfile.linux": "zsh",
"yaml.customTags": [
"!input scalar",
"!secret scalar",
+13 -11
View File
@@ -15,7 +15,7 @@ body:
attributes:
label: The problem
description: >-
Describe the issue you are experiencing here to communicate to the
Describe the issue you are experiencing here, to communicate to the
maintainers. Tell us what you were trying to do and what happened.
Provide a clear and concise description of what the problem is.
@@ -28,10 +28,12 @@ body:
validations:
required: true
attributes:
label: What is version of Home Assistant Core has the issue?
label: What version of Home Assistant Core has the issue?
placeholder: core-
description: >
Can be found in the Configuration panel -> Info.
Can be found in: [Configuration panel -> Info](https://my.home-assistant.io/redirect/info/).
[![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/)
- type: input
attributes:
label: What was the last working version of Home Assistant Core?
@@ -44,7 +46,9 @@ body:
attributes:
label: What type of installation are you running?
description: >
If you don't know, you can find it in: Configuration panel -> Info.
Can be found in: [Configuration panel -> Info](https://my.home-assistant.io/redirect/info/).
[![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/)
options:
- Home Assistant OS
- Home Assistant Container
@@ -55,15 +59,15 @@ body:
attributes:
label: Integration causing the issue
description: >
The name of the integration, for example, Automation or Philips Hue.
The name of the integration. For example: Automation, 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] help us categorizing the
issue, while providing a useful reference at the same time.
Providing a link [to the documentation][docs] helps us categorize the
issue, while also providing a useful reference for others.
[docs]: https://www.home-assistant.io/integrations
@@ -75,8 +79,8 @@ body:
attributes:
label: Example YAML snippet
description: |
If this issue has an example piece of YAML that can help reproducing this problem, please provide.
This can be an piece of YAML from, e.g., an automation, script, scene or configuration.
If applicable, please provide an example piece of YAML that can help reproduce this problem.
This can be from an automation, script, scene or configuration.
render: yaml
- type: textarea
attributes:
@@ -88,5 +92,3 @@ body:
label: Additional information
description: >
If you have any additional information for us, use the field below.
Please note, you can attach screenshots or screen recordings here, by
dragging and dropping files in the field below.
+1
View File
@@ -71,6 +71,7 @@ If the code communicates with devices, web services, or third-party tools:
Updated and included derived files by running: `python3 -m script.hassfest`.
- [ ] New or updated dependencies have been added to `requirements_all.txt`.
Updated by running `python3 -m script.gen_requirements_all`.
- [ ] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.
- [ ] Untested files have been added to `.coveragerc`.
The integration reached or maintains the following [Integration Quality Scale][quality-scale]:
+29 -10
View File
@@ -23,7 +23,7 @@ jobs:
publish: ${{ steps.version.outputs.publish }}
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
with:
fetch-depth: 0
@@ -47,6 +47,19 @@ 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
user: ${{ secrets.VCN_USER }}
password: ${{ secrets.VCN_PASSWORD }}
organisation: home-assistant.io
build_python:
name: Build PyPi package
needs: init
@@ -54,7 +67,7 @@ jobs:
if: needs.init.outputs.publish == 'true'
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
@@ -84,7 +97,7 @@ jobs:
arch: ${{ fromJson(needs.init.outputs.architectures) }}
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
if: needs.init.outputs.channel == 'dev'
@@ -101,6 +114,11 @@ jobs:
python3 script/version_bump.py nightly
version="$(python setup.py -V)"
- name: Write meta info file
shell: bash
run: |
echo "${{ github.sha }};${{ github.ref }};${{ github.event_name }};${{ github.actor }}" > rootfs/OFFICIAL_IMAGE
- name: Login to DockerHub
uses: docker/login-action@v1.10.0
with:
@@ -115,7 +133,7 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build base image
uses: home-assistant/builder@2021.07.0
uses: home-assistant/builder@2021.09.0
with:
args: |
$BUILD_ARGS \
@@ -152,7 +170,7 @@ jobs:
- tinker
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Login to DockerHub
uses: docker/login-action@v1.10.0
@@ -168,7 +186,7 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build base image
uses: home-assistant/builder@2021.07.0
uses: home-assistant/builder@2021.09.0
with:
args: |
$BUILD_ARGS \
@@ -183,7 +201,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Initialize git
uses: home-assistant/actions/helpers/git-init@master
@@ -215,7 +233,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Login to DockerHub
uses: docker/login-action@v1.10.0
@@ -230,11 +248,12 @@ jobs:
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Install VCN tools
uses: home-assistant/actions/helpers/vcn@master
- name: Build Meta Image
shell: bash
run: |
bash <(curl https://getvcn.codenotary.com -L)
export DOCKER_CLI_EXPERIMENTAL=enabled
function create_manifest() {
+23 -23
View File
@@ -10,7 +10,7 @@ on:
pull_request: ~
env:
CACHE_VERSION: 2
CACHE_VERSION: 3
DEFAULT_PYTHON: 3.8
PRE_COMMIT_CACHE: ~/.cache/pre-commit
SQLALCHEMY_WARN_20: 1
@@ -26,7 +26,7 @@ jobs:
pre-commit-key: ${{ steps.generate-pre-commit-key.outputs.key }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v2.2.2
@@ -84,7 +84,7 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
@@ -124,7 +124,7 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
@@ -164,7 +164,7 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
@@ -207,7 +207,7 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Register hadolint problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/hadolint.json"
@@ -226,7 +226,7 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
@@ -269,7 +269,7 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
@@ -312,7 +312,7 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
@@ -352,7 +352,7 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
@@ -395,7 +395,7 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
@@ -436,7 +436,7 @@ jobs:
# needs: prepare-base
# steps:
# - name: Check out code from GitHub
# uses: actions/checkout@v2.3.4
# uses: actions/checkout@v2.3.5
# - name: Run ShellCheck
# uses: ludeeus/action-shellcheck@0.3.0
@@ -446,7 +446,7 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
@@ -493,7 +493,7 @@ jobs:
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
@@ -517,7 +517,7 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
@@ -551,7 +551,7 @@ jobs:
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Generate partial Python venv restore key
id: generate-python-key
run: >-
@@ -595,7 +595,7 @@ jobs:
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
@@ -626,7 +626,7 @@ jobs:
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
@@ -660,7 +660,7 @@ jobs:
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
@@ -682,11 +682,11 @@ jobs:
# Ideally this should be part of our dependencies
# However this plugin is fairly new and doesn't run correctly
# on a non-GitHub environment.
pip install pytest-github-actions-annotate-failures
pip install pytest-github-actions-annotate-failures==0.1.3
- name: Run pytest
run: |
. venv/bin/activate
pytest \
python3 -X dev -bb -m pytest \
-qq \
--timeout=9 \
--durations=10 \
@@ -718,7 +718,7 @@ jobs:
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
@@ -740,4 +740,4 @@ jobs:
coverage report --fail-under=94
coverage xml
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v2.0.2
uses: codecov/codecov-action@v2.1.0
+5 -5
View File
@@ -9,12 +9,12 @@ jobs:
lock:
runs-on: ubuntu-latest
steps:
- uses: dessant/lock-threads@v2.1.1
- uses: dessant/lock-threads@v3
with:
github-token: ${{ github.token }}
issue-lock-inactive-days: "30"
issue-exclude-created-before: "2020-10-01T00:00:00Z"
issue-inactive-days: "30"
exclude-issue-created-before: "2020-10-01T00:00:00Z"
issue-lock-reason: ""
pr-lock-inactive-days: "1"
pr-exclude-created-before: "2020-11-01T00:00:00Z"
pr-inactive-days: "1"
exclude-pr-created-before: "2020-11-01T00:00:00Z"
pr-lock-reason: ""
+2 -2
View File
@@ -20,7 +20,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v2
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
@@ -39,7 +39,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v2
uses: actions/checkout@v2.3.5
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
+7 -7
View File
@@ -21,7 +21,7 @@ jobs:
architectures: ${{ steps.info.outputs.architectures }}
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Get information
id: info
@@ -65,10 +65,10 @@ jobs:
matrix:
arch: ${{ fromJson(needs.init.outputs.architectures) }}
tag:
- "3.9-alpine3.13"
- "3.9-alpine3.14"
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Download env_file
uses: actions/download-artifact@v2
@@ -89,7 +89,7 @@ jobs:
wheels-key: ${{ secrets.WHEELS_KEY }}
wheels-user: wheels
env-file: true
apk: "build-base;cmake;git;linux-headers;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev"
apk: "build-base;cmake;git;linux-headers;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;cargo"
pip: "Cython;numpy"
skip-binary: aiohttp
constraints: "homeassistant/package_constraints.txt"
@@ -105,10 +105,10 @@ jobs:
matrix:
arch: ${{ fromJson(needs.init.outputs.architectures) }}
tag:
- "3.9-alpine3.13"
- "3.9-alpine3.14"
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.3.5
- name: Download env_file
uses: actions/download-artifact@v2
@@ -158,7 +158,7 @@ jobs:
wheels-key: ${{ secrets.WHEELS_KEY }}
wheels-user: wheels
env-file: true
apk: "build-base;cmake;git;linux-headers;libexecinfo-dev;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;autoconf;automake;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev"
apk: "build-base;cmake;git;linux-headers;libexecinfo-dev;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;autoconf;automake;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;cargo"
pip: "Cython;numpy;scikit-build"
skip-binary: aiohttp
constraints: "homeassistant/package_constraints.txt"
+2 -2
View File
@@ -1,8 +1,8 @@
config/*
/config
config2/*
tests/testing_config/deps
tests/testing_config/home-assistant.log
tests/testing_config/home-assistant.log*
# hass-release
data/
+10 -10
View File
@@ -1,11 +1,11 @@
repos:
- repo: https://github.com/asottile/pyupgrade
rev: v2.23.0
rev: v2.27.0
hooks:
- id: pyupgrade
args: [--py38-plus]
- repo: https://github.com/psf/black
rev: 21.7b0
rev: 21.9b0
hooks:
- id: black
args:
@@ -22,17 +22,17 @@ repos:
- --quiet-level=2
exclude_types: [csv, json]
exclude: ^tests/fixtures/
- repo: https://gitlab.com/pycqa/flake8
rev: 3.9.2
- repo: https://github.com/PyCQA/flake8
rev: 4.0.1
hooks:
- id: flake8
additional_dependencies:
- pycodestyle==2.7.0
- pyflakes==2.3.1
- pycodestyle==2.8.0
- pyflakes==2.4.0
- flake8-docstrings==1.6.0
- pydocstyle==6.0.0
- flake8-comprehensions==3.5.0
- flake8-noqa==1.1.0
- pydocstyle==6.1.1
- flake8-comprehensions==3.7.0
- flake8-noqa==1.2.0
- mccabe==0.6.1
files: ^(homeassistant|script|tests)/.+\.py$
- repo: https://github.com/PyCQA/bandit
@@ -45,7 +45,7 @@ repos:
- --configfile=tests/bandit.yaml
files: ^(homeassistant|script|tests)/.+\.py$
- repo: https://github.com/PyCQA/isort
rev: 5.8.0
rev: 5.9.3
hooks:
- id: isort
- repo: https://github.com/pre-commit/pre-commit-hooks
+28
View File
@@ -15,10 +15,12 @@ homeassistant.components.alarm_control_panel.*
homeassistant.components.amazon_polly.*
homeassistant.components.ambee.*
homeassistant.components.ambient_station.*
homeassistant.components.amcrest.*
homeassistant.components.ampio.*
homeassistant.components.automation.*
homeassistant.components.binary_sensor.*
homeassistant.components.bluetooth_tracker.*
homeassistant.components.bmw_connected_drive.*
homeassistant.components.bond.*
homeassistant.components.braviatv.*
homeassistant.components.brother.*
@@ -26,24 +28,29 @@ homeassistant.components.calendar.*
homeassistant.components.camera.*
homeassistant.components.canary.*
homeassistant.components.cover.*
homeassistant.components.crownstone.*
homeassistant.components.device_automation.*
homeassistant.components.device_tracker.*
homeassistant.components.devolo_home_control.*
homeassistant.components.dlna_dmr.*
homeassistant.components.dnsip.*
homeassistant.components.dsmr.*
homeassistant.components.dunehd.*
homeassistant.components.efergy.*
homeassistant.components.elgato.*
homeassistant.components.esphome.*
homeassistant.components.energy.*
homeassistant.components.fastdotcom.*
homeassistant.components.fitbit.*
homeassistant.components.flunearyou.*
homeassistant.components.flux_led.*
homeassistant.components.forecast_solar.*
homeassistant.components.fritzbox.*
homeassistant.components.frontend.*
homeassistant.components.fritz.*
homeassistant.components.geo_location.*
homeassistant.components.gios.*
homeassistant.components.goalzero.*
homeassistant.components.group.*
homeassistant.components.guardian.*
homeassistant.components.history.*
@@ -52,20 +59,30 @@ homeassistant.components.http.*
homeassistant.components.huawei_lte.*
homeassistant.components.hyperion.*
homeassistant.components.image_processing.*
homeassistant.components.input_select.*
homeassistant.components.integration.*
homeassistant.components.iqvia.*
homeassistant.components.jewish_calendar.*
homeassistant.components.knx.*
homeassistant.components.kraken.*
homeassistant.components.lcn.*
homeassistant.components.light.*
homeassistant.components.local_ip.*
homeassistant.components.lock.*
homeassistant.components.lookin.*
homeassistant.components.mailbox.*
homeassistant.components.media_player.*
homeassistant.components.modbus.*
homeassistant.components.modem_callerid.*
homeassistant.components.media_source.*
homeassistant.components.mysensors.*
homeassistant.components.nam.*
homeassistant.components.nanoleaf.*
homeassistant.components.neato.*
homeassistant.components.nest.*
homeassistant.components.netatmo.*
homeassistant.components.network.*
homeassistant.components.nfandroidtv.*
homeassistant.components.no_ip.*
homeassistant.components.notify.*
homeassistant.components.notion.*
@@ -83,6 +100,8 @@ homeassistant.components.recorder.statistics
homeassistant.components.remote.*
homeassistant.components.renault.*
homeassistant.components.rituals_perfume_genie.*
homeassistant.components.rpi_power.*
homeassistant.components.samsungtv.*
homeassistant.components.scene.*
homeassistant.components.select.*
homeassistant.components.sensor.*
@@ -91,20 +110,29 @@ homeassistant.components.simplisafe.*
homeassistant.components.slack.*
homeassistant.components.sonos.media_player
homeassistant.components.ssdp.*
homeassistant.components.stookalert.*
homeassistant.components.stream.*
homeassistant.components.sun.*
homeassistant.components.surepetcare.*
homeassistant.components.switch.*
homeassistant.components.switcher_kis.*
homeassistant.components.synology_dsm.*
homeassistant.components.systemmonitor.*
homeassistant.components.tag.*
homeassistant.components.tautulli.*
homeassistant.components.tcp.*
homeassistant.components.tile.*
homeassistant.components.tplink.*
homeassistant.components.tractive.*
homeassistant.components.tradfri.*
homeassistant.components.tts.*
homeassistant.components.upcloud.*
homeassistant.components.uptime.*
homeassistant.components.uptimerobot.*
homeassistant.components.vacuum.*
homeassistant.components.vallox.*
homeassistant.components.water_heater.*
homeassistant.components.watttime.*
homeassistant.components.weather.*
homeassistant.components.websocket_api.*
homeassistant.components.zodiac.*
+22
View File
@@ -60,6 +60,21 @@
},
"problemMatcher": []
},
{
"label": "Code Coverage",
"detail": "Generate code coverage report for a given integration.",
"type": "shell",
"command": "pytest ./tests/components/${input:integrationName}/ --cov=homeassistant.components.${input:integrationName} --cov-report term-missing",
"group": {
"kind": "test",
"isDefault": true
},
"presentation": {
"reveal": "always",
"panel": "new"
},
"problemMatcher": []
},
{
"label": "Generate Requirements",
"type": "shell",
@@ -102,5 +117,12 @@
},
"problemMatcher": []
}
],
"inputs": [
{
"id": "integrationName",
"type": "promptString",
"description": "For which integration should the task run?"
}
]
}
+46 -26
View File
@@ -29,14 +29,18 @@ homeassistant/components/aemet/* @noltari
homeassistant/components/agent_dvr/* @ispysoftware
homeassistant/components/airly/* @bieniu
homeassistant/components/airnow/* @asymworks
homeassistant/components/airthings/* @danielhiversen
homeassistant/components/airtouch4/* @LonePurpleWolf
homeassistant/components/airvisual/* @bachya
homeassistant/components/alarmdecoder/* @ajschmidt8
homeassistant/components/alexa/* @home-assistant/cloud @ochlocracy
homeassistant/components/almond/* @gcampax @balloob
homeassistant/components/alpha_vantage/* @fabaff
homeassistant/components/ambee/* @frenck
homeassistant/components/amberelectric/* @madpilot
homeassistant/components/ambiclimate/* @danielhiversen
homeassistant/components/ambient_station/* @bachya
homeassistant/components/amcrest/* @flacjacket
homeassistant/components/analytics/* @home-assistant/core @ludeeus
homeassistant/components/androidtv/* @JeffLIrion
homeassistant/components/apache_kafka/* @bachya
@@ -71,10 +75,10 @@ homeassistant/components/blink/* @fronzbot
homeassistant/components/blueprint/* @home-assistant/core
homeassistant/components/bmp280/* @belidzs
homeassistant/components/bmw_connected_drive/* @gerard33 @rikroe
homeassistant/components/bond/* @prystupa
homeassistant/components/bond/* @bdraco @prystupa @joshs85
homeassistant/components/bosch_shc/* @tschamm
homeassistant/components/braviatv/* @bieniu @Drafteed
homeassistant/components/broadlink/* @danielhiversen @felipediel
homeassistant/components/broadlink/* @danielhiversen @felipediel @L-I-Am
homeassistant/components/brother/* @bieniu
homeassistant/components/brunt/* @eavanvalkenburg
homeassistant/components/bsblan/* @liudger
@@ -102,6 +106,7 @@ homeassistant/components/coronavirus/* @home-assistant/core
homeassistant/components/counter/* @fabaff
homeassistant/components/cover/* @home-assistant/core
homeassistant/components/cpuspeed/* @fabaff
homeassistant/components/crownstone/* @Crownstone @RicArch97
homeassistant/components/cups/* @fabaff
homeassistant/components/daikin/* @fredrike
homeassistant/components/darksky/* @fabaff
@@ -109,7 +114,7 @@ homeassistant/components/debugpy/* @frenck
homeassistant/components/deconz/* @Kane610
homeassistant/components/delijn/* @bollewolle @Emilv2
homeassistant/components/demo/* @home-assistant/core
homeassistant/components/denonavr/* @scarface-4711 @starkillerOG
homeassistant/components/denonavr/* @ol-iver @starkillerOG
homeassistant/components/derivative/* @afaucogney
homeassistant/components/device_automation/* @home-assistant/core
homeassistant/components/devolo_home_control/* @2Fake @Shutgun
@@ -117,8 +122,8 @@ homeassistant/components/dexcom/* @gagebenne
homeassistant/components/dhcp/* @bdraco
homeassistant/components/dht/* @thegardenmonkey
homeassistant/components/digital_ocean/* @fabaff
homeassistant/components/directv/* @ctalkington
homeassistant/components/discogs/* @thibmaek
homeassistant/components/dlna_dmr/* @StevenLooman @chishm
homeassistant/components/doorbird/* @oblogic7 @bdraco
homeassistant/components/dsmr/* @Robbie1221 @frenck
homeassistant/components/dsmr_reader/* @depl0y
@@ -131,8 +136,9 @@ homeassistant/components/ecobee/* @marthoc
homeassistant/components/econet/* @vangorra @w1ll1am23
homeassistant/components/ecovacs/* @OverloadUT
homeassistant/components/edl21/* @mtdcr
homeassistant/components/efergy/* @tkdrob
homeassistant/components/egardia/* @jeroenterheerdt
homeassistant/components/eight_sleep/* @mezz64
homeassistant/components/eight_sleep/* @mezz64 @raman325
homeassistant/components/elgato/* @frenck
homeassistant/components/elkm1/* @gwww @bdraco
homeassistant/components/elv/* @majuss
@@ -145,13 +151,12 @@ homeassistant/components/enigma2/* @fbradyirl
homeassistant/components/enocean/* @bdurrer
homeassistant/components/enphase_envoy/* @gtdiehl
homeassistant/components/entur_public_transport/* @hfurubotten
homeassistant/components/environment_canada/* @michaeldavie
homeassistant/components/environment_canada/* @gwww @michaeldavie
homeassistant/components/ephember/* @ttroy50
homeassistant/components/epson/* @pszafer
homeassistant/components/epsonworkforce/* @ThaStealth
homeassistant/components/eq3btsmart/* @rytilahti
homeassistant/components/esphome/* @OttoWinter @jesserockz
homeassistant/components/essent/* @TheLastProject
homeassistant/components/evohome/* @zxdavb
homeassistant/components/ezviz/* @RenierM26 @baqs
homeassistant/components/faa_delays/* @ntilley905
@@ -161,12 +166,14 @@ homeassistant/components/filter/* @dgomes
homeassistant/components/fireservicerota/* @cyberjunky
homeassistant/components/firmata/* @DaAwesomeP
homeassistant/components/fixer/* @fabaff
homeassistant/components/fjaraskupan/* @elupus
homeassistant/components/flick_electric/* @ZephireNZ
homeassistant/components/flipr/* @cnico
homeassistant/components/flo/* @dmulcahey
homeassistant/components/flock/* @fabaff
homeassistant/components/flume/* @ChrisMandich @bdraco
homeassistant/components/flunearyou/* @bachya
homeassistant/components/flux_led/* @icemanch
homeassistant/components/forecast_solar/* @klaasnicolaas @frenck
homeassistant/components/forked_daapd/* @uvjustin
homeassistant/components/fortios/* @kimfrellsen
@@ -174,7 +181,7 @@ homeassistant/components/foscam/* @skgsergio
homeassistant/components/freebox/* @hacf-fr @Quentame
homeassistant/components/freedompro/* @stefano055415
homeassistant/components/fritz/* @mammuth @AaronDavidSchneider @chemelli74
homeassistant/components/fritzbox/* @mib1185
homeassistant/components/fritzbox/* @mib1185 @flabbamann
homeassistant/components/fronius/* @nielstron
homeassistant/components/frontend/* @home-assistant/frontend
homeassistant/components/garages_amsterdam/* @klaasnicolaas
@@ -186,6 +193,7 @@ homeassistant/components/geo_rss_events/* @exxamalte
homeassistant/components/geonetnz_quakes/* @exxamalte
homeassistant/components/geonetnz_volcano/* @exxamalte
homeassistant/components/gios/* @bieniu
homeassistant/components/github/* @timmo001 @ludeeus
homeassistant/components/gitter/* @fabaff
homeassistant/components/glances/* @fabaff @engrbm87
homeassistant/components/goalzero/* @tkdrob
@@ -196,10 +204,10 @@ homeassistant/components/gpsd/* @fabaff
homeassistant/components/gree/* @cmroche
homeassistant/components/greeneye_monitor/* @jkeljo
homeassistant/components/group/* @home-assistant/core
homeassistant/components/growatt_server/* @indykoning @muppet3000
homeassistant/components/growatt_server/* @indykoning @muppet3000 @JasperPlant
homeassistant/components/guardian/* @bachya
homeassistant/components/habitica/* @ASMfreaK @leikoilja
homeassistant/components/harmony/* @ehendrix23 @bramkragten @bdraco @mkeesey
homeassistant/components/harmony/* @ehendrix23 @bramkragten @bdraco @mkeesey @Aohzan
homeassistant/components/hassio/* @home-assistant/supervisor
homeassistant/components/heatmiser/* @andylockran
homeassistant/components/heos/* @andrewsayre
@@ -219,9 +227,8 @@ homeassistant/components/homematic/* @pvizeli @danielperna84
homeassistant/components/honeywell/* @rdfurman
homeassistant/components/http/* @home-assistant/core
homeassistant/components/huawei_lte/* @scop @fphammerle
homeassistant/components/huawei_router/* @abmantis
homeassistant/components/hue/* @balloob @frenck
homeassistant/components/huisbaasje/* @denniss17
homeassistant/components/huisbaasje/* @dennisschroer
homeassistant/components/humidifier/* @home-assistant/core @Shulyaka
homeassistant/components/hunterdouglas_powerview/* @bdraco
homeassistant/components/hvv_departures/* @vigonotion
@@ -245,6 +252,7 @@ homeassistant/components/integration/* @dgomes
homeassistant/components/intent/* @home-assistant/core
homeassistant/components/intesishome/* @jnimmo
homeassistant/components/ios/* @robbiet480
homeassistant/components/iotawatt/* @gtdiehl @jyavenard
homeassistant/components/iperf3/* @rohankapoorcom
homeassistant/components/ipma/* @dgomes @abmantis
homeassistant/components/ipp/* @ctalkington
@@ -259,7 +267,7 @@ homeassistant/components/kaiterra/* @Michsior14
homeassistant/components/keba/* @dannerph
homeassistant/components/keenetic_ndms2/* @foxel
homeassistant/components/kef/* @basnijholt
homeassistant/components/keyboard_remote/* @bendavid
homeassistant/components/keyboard_remote/* @bendavid @lanrat
homeassistant/components/kmtronic/* @dgomes
homeassistant/components/knx/* @Julius2342 @farmio @marvin-w
homeassistant/components/kodi/* @OnFreund @cgtobi
@@ -278,6 +286,7 @@ homeassistant/components/litterrobot/* @natekspencer
homeassistant/components/local_ip/* @issacg
homeassistant/components/logger/* @home-assistant/core
homeassistant/components/logi_circle/* @evanjd
homeassistant/components/lookin/* @ANMalko
homeassistant/components/loopenergy/* @pavoni
homeassistant/components/lovelace/* @home-assistant/frontend
homeassistant/components/luci/* @mzdrale
@@ -308,6 +317,7 @@ homeassistant/components/minecraft_server/* @elmurato
homeassistant/components/minio/* @tkislan
homeassistant/components/mobile_app/* @robbiet480
homeassistant/components/modbus/* @adamchengtkc @janiversen @vzahradnik
homeassistant/components/modem_callerid/* @tkdrob
homeassistant/components/modern_forms/* @wonderslug
homeassistant/components/monoprice/* @etsinko @OnFreund
homeassistant/components/moon/* @fabaff
@@ -319,17 +329,18 @@ homeassistant/components/msteams/* @peroyvind
homeassistant/components/mullvad/* @meichthys
homeassistant/components/mutesync/* @currentoor
homeassistant/components/my/* @home-assistant/core
homeassistant/components/myq/* @bdraco
homeassistant/components/myq/* @bdraco @ehendrix23
homeassistant/components/mysensors/* @MartinHjelmare @functionpointer
homeassistant/components/mystrom/* @fabaff
homeassistant/components/nam/* @bieniu
homeassistant/components/nanoleaf/* @milanmeu
homeassistant/components/neato/* @dshokouhi @Santobert
homeassistant/components/nederlandse_spoorwegen/* @YarmoM
homeassistant/components/nello/* @pschmitt
homeassistant/components/ness_alarm/* @nickw444
homeassistant/components/nest/* @allenporter
homeassistant/components/netatmo/* @cgtobi
homeassistant/components/netdata/* @fabaff
homeassistant/components/netgear/* @hacf-fr @Quentame @starkillerOG
homeassistant/components/nexia/* @bdraco
homeassistant/components/nextbus/* @vividboarder
homeassistant/components/nextcloud/* @meichthys
@@ -337,6 +348,7 @@ homeassistant/components/nfandroidtv/* @tkdrob
homeassistant/components/nightscout/* @marciogranzotto
homeassistant/components/nilu/* @hfurubotten
homeassistant/components/nissan_leaf/* @filcole
homeassistant/components/nmap_tracker/* @bdraco
homeassistant/components/nmbs/* @thibmaek
homeassistant/components/no_ip/* @fabaff
homeassistant/components/noaa_tides/* @jdelaney72
@@ -348,10 +360,11 @@ homeassistant/components/nsw_rural_fire_service_feed/* @exxamalte
homeassistant/components/nuki/* @pschmitt @pvizeli @pree
homeassistant/components/numato/* @clssn
homeassistant/components/number/* @home-assistant/core @Shulyaka
homeassistant/components/nut/* @bdraco
homeassistant/components/nut/* @bdraco @ollo69
homeassistant/components/nws/* @MatthewFlamm
homeassistant/components/nzbget/* @chriscla
homeassistant/components/obihai/* @dshokouhi
homeassistant/components/octoprint/* @rfleming71
homeassistant/components/ohmconnect/* @robbiet480
homeassistant/components/ombi/* @larssont
homeassistant/components/omnilogic/* @oliver84 @djtimca @gentoosu
@@ -370,6 +383,7 @@ homeassistant/components/orangepi_gpio/* @pascallj
homeassistant/components/oru/* @bvlaicu
homeassistant/components/ovo_energy/* @timmo001
homeassistant/components/ozw/* @cgarwood @marcelveldt @MartinHjelmare
homeassistant/components/p1_monitor/* @klaasnicolaas
homeassistant/components/panel_custom/* @home-assistant/frontend
homeassistant/components/panel_iframe/* @home-assistant/frontend
homeassistant/components/pcal9535a/* @Shulyaka
@@ -409,6 +423,7 @@ homeassistant/components/rainforest_eagle/* @gtdiehl @jcalbert
homeassistant/components/rainmachine/* @bachya
homeassistant/components/random/* @fabaff
homeassistant/components/recollect_waste/* @bachya
homeassistant/components/recorder/* @home-assistant/core
homeassistant/components/rejseplanen/* @DarkFox
homeassistant/components/renault/* @epenet
homeassistant/components/repetier/* @MTrab
@@ -483,7 +498,7 @@ homeassistant/components/srp_energy/* @briglx
homeassistant/components/starline/* @anonym-tsk
homeassistant/components/statistics/* @fabaff
homeassistant/components/stiebel_eltron/* @fucm
homeassistant/components/stookalert/* @fwestenberg
homeassistant/components/stookalert/* @fwestenberg @frenck
homeassistant/components/stream/* @hunterjm @uvjustin @allenporter
homeassistant/components/stt/* @pvizeli
homeassistant/components/subaru/* @G-Two
@@ -493,7 +508,7 @@ homeassistant/components/supla/* @mwegrzynek
homeassistant/components/surepetcare/* @benleb @danielhiversen
homeassistant/components/swiss_hydrological_data/* @fabaff
homeassistant/components/swiss_public_transport/* @fabaff
homeassistant/components/switchbot/* @danielhiversen
homeassistant/components/switchbot/* @danielhiversen @RenierM26
homeassistant/components/switcher_kis/* @tomerfi @thecode
homeassistant/components/switchmate/* @danielhiversen
homeassistant/components/syncthing/* @zhulik
@@ -502,7 +517,7 @@ homeassistant/components/synology_dsm/* @hacf-fr @Quentame @mib1185
homeassistant/components/synology_srm/* @aerialls
homeassistant/components/syslog/* @fabaff
homeassistant/components/system_bridge/* @timmo001
homeassistant/components/tado/* @michaelarnauts @bdraco @noltari
homeassistant/components/tado/* @michaelarnauts @noltari
homeassistant/components/tag/* @balloob @dmulcahey
homeassistant/components/tahoma/* @philklei
homeassistant/components/tankerkoenig/* @guillempages
@@ -511,7 +526,6 @@ homeassistant/components/tasmota/* @emontnemery
homeassistant/components/tautulli/* @ludeeus
homeassistant/components/tellduslive/* @fredrike
homeassistant/components/template/* @PhracturedBlue @tetienne @home-assistant/core
homeassistant/components/tesla/* @zabuldon @alandtse
homeassistant/components/tfiac/* @fredrike @mellado
homeassistant/components/thethingsnetwork/* @fabaff
homeassistant/components/threshold/* @fabaff
@@ -520,16 +534,17 @@ homeassistant/components/tile/* @bachya
homeassistant/components/time_date/* @fabaff
homeassistant/components/tmb/* @alemuro
homeassistant/components/todoist/* @boralyl
homeassistant/components/toon/* @frenck
homeassistant/components/totalconnect/* @austinmroczek
homeassistant/components/tplink/* @rytilahti @thegardenmonkey
homeassistant/components/traccar/* @ludeeus
homeassistant/components/trace/* @home-assistant/core
homeassistant/components/tractive/* @Danielhiversen @zhulik @bieniu
homeassistant/components/tradfri/* @janiversen
homeassistant/components/trafikverket_train/* @endor-force
homeassistant/components/trafikverket_weatherstation/* @endor-force
homeassistant/components/transmission/* @engrbm87 @JPHutchins
homeassistant/components/tts/* @pvizeli
homeassistant/components/tuya/* @ollo69
homeassistant/components/tuya/* @Tuya @zlinoliver @METISU @frenck
homeassistant/components/twentemilieu/* @frenck
homeassistant/components/twinkly/* @dr1rrb
homeassistant/components/ubus/* @noltari
@@ -539,12 +554,15 @@ homeassistant/components/upb/* @gwww
homeassistant/components/upc_connect/* @pvizeli @fabaff
homeassistant/components/upcloud/* @scop
homeassistant/components/updater/* @home-assistant/core
homeassistant/components/upnp/* @StevenLooman
homeassistant/components/upnp/* @StevenLooman @ehendrix23
homeassistant/components/uptimerobot/* @ludeeus
homeassistant/components/usb/* @bdraco
homeassistant/components/usgs_earthquakes_feed/* @exxamalte
homeassistant/components/utility_meter/* @dgomes
homeassistant/components/vallox/* @andre-richter
homeassistant/components/velbus/* @Cereal2nd @brefra
homeassistant/components/velux/* @Julius2342
homeassistant/components/venstar/* @garbled1
homeassistant/components/vera/* @pavoni
homeassistant/components/verisure/* @frenck
homeassistant/components/versasense/* @flamm3blemuff1n
@@ -554,17 +572,19 @@ homeassistant/components/vicare/* @oischinger
homeassistant/components/vilfo/* @ManneW
homeassistant/components/vivotek/* @HarlemSquirrel
homeassistant/components/vizio/* @raman325
homeassistant/components/vlc_telnet/* @rodripf @dmcc
homeassistant/components/vlc_telnet/* @rodripf @dmcc @MartinHjelmare
homeassistant/components/volkszaehler/* @fabaff
homeassistant/components/volumio/* @OnFreund
homeassistant/components/wake_on_lan/* @ntilley905
homeassistant/components/wallbox/* @hesselonline
homeassistant/components/waqi/* @andrey-git
homeassistant/components/watson_tts/* @rutkai
homeassistant/components/watttime/* @bachya
homeassistant/components/weather/* @fabaff
homeassistant/components/webostv/* @bendavid @thecode
homeassistant/components/websocket_api/* @home-assistant/core
homeassistant/components/wemo/* @esev
homeassistant/components/whirlpool/* @abmantis
homeassistant/components/wiffi/* @mampfes
homeassistant/components/wilight/* @leofig-rj
homeassistant/components/wirelesstag/* @sergeymaysak
@@ -576,13 +596,13 @@ homeassistant/components/worldclock/* @fabaff
homeassistant/components/xbox/* @hunterjm
homeassistant/components/xbox_live/* @MartinHjelmare
homeassistant/components/xiaomi_aqara/* @danielhiversen @syssi
homeassistant/components/xiaomi_miio/* @rytilahti @syssi @starkillerOG
homeassistant/components/xiaomi_miio/* @rytilahti @syssi @starkillerOG @bieniu
homeassistant/components/xiaomi_tv/* @simse
homeassistant/components/xmpp/* @fabaff @flowolf
homeassistant/components/yale_smart_alarm/* @gjohansson-ST
homeassistant/components/yamaha_musiccast/* @vigonotion @micha91
homeassistant/components/yandex_transport/* @rishatik92 @devbis
homeassistant/components/yeelight/* @rytilahti @zewelor @shenxn
homeassistant/components/yeelight/* @rytilahti @zewelor @shenxn @starkillerOG
homeassistant/components/yeelightsunflower/* @lindsaymarkward
homeassistant/components/yi/* @bachya
homeassistant/components/youless/* @gjong
+15
View File
@@ -16,6 +16,21 @@ RUN \
-e ./homeassistant \
&& python3 -m compileall homeassistant/homeassistant
# Fix Bug with Alpine 3.14 and sqlite 3.35
# https://gitlab.alpinelinux.org/alpine/aports/-/issues/12524
ARG BUILD_ARCH
RUN \
if [ "${BUILD_ARCH}" = "amd64" ]; then \
export APK_ARCH=x86_64; \
elif [ "${BUILD_ARCH}" = "i386" ]; then \
export APK_ARCH=x86; \
else \
export APK_ARCH=${BUILD_ARCH}; \
fi \
&& curl -O http://dl-cdn.alpinelinux.org/alpine/v3.13/main/${APK_ARCH}/sqlite-libs-3.34.1-r0.apk \
&& apk add --no-cache sqlite-libs-3.34.1-r0.apk \
&& rm -f sqlite-libs-3.34.1-r0.apk
# Home Assistant S6-Overlay
COPY rootfs /
+2
View File
@@ -6,6 +6,8 @@ RUN \
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - \
&& apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
# Additional library needed by some tests and accordingly by VScode Tests Discovery
bluez \
libudev-dev \
libavformat-dev \
libavcodec-dev \
+6 -6
View File
@@ -2,11 +2,11 @@
"image": "homeassistant/{arch}-homeassistant",
"shadow_repository": "ghcr.io/home-assistant",
"build_from": {
"aarch64": "ghcr.io/home-assistant/aarch64-homeassistant-base:2021.07.0",
"armhf": "ghcr.io/home-assistant/armhf-homeassistant-base:2021.07.0",
"armv7": "ghcr.io/home-assistant/armv7-homeassistant-base:2021.07.0",
"amd64": "ghcr.io/home-assistant/amd64-homeassistant-base:2021.07.0",
"i386": "ghcr.io/home-assistant/i386-homeassistant-base:2021.07.0"
"aarch64": "ghcr.io/home-assistant/aarch64-homeassistant-base:2021.09.0",
"armhf": "ghcr.io/home-assistant/armhf-homeassistant-base:2021.09.0",
"armv7": "ghcr.io/home-assistant/armv7-homeassistant-base:2021.09.0",
"amd64": "ghcr.io/home-assistant/amd64-homeassistant-base:2021.09.0",
"i386": "ghcr.io/home-assistant/i386-homeassistant-base:2021.09.0"
},
"labels": {
"io.hass.type": "core",
@@ -19,4 +19,4 @@
"org.opencontainers.image.licenses": "Apache License 2.0"
},
"version_tag": true
}
}
-8
View File
@@ -118,14 +118,6 @@ homeassistant.util.pressure
:undoc-members:
:show-inheritance:
homeassistant.util.ruamel\_yaml
-------------------------------
.. automodule:: homeassistant.util.ruamel_yaml
:members:
:undoc-members:
:show-inheritance:
homeassistant.util.ssl
----------------------
+14 -5
View File
@@ -2,6 +2,7 @@
from __future__ import annotations
import argparse
import faulthandler
import os
import platform
import subprocess
@@ -10,6 +11,8 @@ import threading
from homeassistant.const import REQUIRED_PYTHON_VER, RESTART_EXIT_CODE, __version__
FAULT_LOG_FILENAME = "home-assistant.log.fault"
def validate_python() -> None:
"""Validate that the right Python version is running."""
@@ -132,16 +135,14 @@ def get_arguments() -> argparse.Namespace:
def daemonize() -> None:
"""Move current process to daemon process."""
# Create first fork
pid = os.fork()
if pid > 0:
if os.fork() > 0:
sys.exit(0)
# Decouple fork
os.setsid()
# Create second fork
pid = os.fork()
if pid > 0:
if os.fork() > 0:
sys.exit(0)
# redirect standard file descriptors to devnull
@@ -311,7 +312,15 @@ def main() -> int:
open_ui=args.open_ui,
)
exit_code = runner.run(runtime_conf)
fault_file_name = os.path.join(config_dir, FAULT_LOG_FILENAME)
with open(fault_file_name, mode="a", encoding="utf8") as fault_file:
faulthandler.enable(fault_file)
exit_code = runner.run(runtime_conf)
faulthandler.disable()
if os.path.getsize(fault_file_name) == 0:
os.remove(fault_file_name)
if exit_code == RESTART_EXIT_CODE and not args.runner:
try_to_restart()
+38 -10
View File
@@ -9,7 +9,7 @@ from typing import Any, Dict, Mapping, Optional, Tuple, cast
import jwt
from homeassistant import data_entry_flow
from homeassistant.core import HomeAssistant, callback
from homeassistant.core import CALLBACK_TYPE, HomeAssistant, callback
from homeassistant.data_entry_flow import FlowResult
from homeassistant.util import dt as dt_util
@@ -155,6 +155,7 @@ class AuthManager:
self._providers = providers
self._mfa_modules = mfa_modules
self.login_flow = AuthManagerFlowManager(hass, self)
self._revoke_callbacks: dict[str, list[CALLBACK_TYPE]] = {}
@property
def auth_providers(self) -> list[AuthProvider]:
@@ -275,6 +276,12 @@ class AuthManager:
self, user: models.User, credentials: models.Credentials
) -> None:
"""Link credentials to an existing user."""
linked_user = await self.async_get_user_by_credentials(credentials)
if linked_user == user:
return
if linked_user is not None:
raise ValueError("Credential is already linked to a user")
await self._store.async_link_user(user, credentials)
async def async_remove_user(self, user: models.User) -> None:
@@ -285,7 +292,7 @@ class AuthManager:
]
if tasks:
await asyncio.wait(tasks)
await asyncio.gather(*tasks)
await self._store.async_remove_user(user)
@@ -341,8 +348,7 @@ class AuthManager:
"System generated users cannot enable multi-factor auth module."
)
module = self.get_auth_mfa_module(mfa_module_id)
if module is None:
if (module := self.get_auth_mfa_module(mfa_module_id)) is None:
raise ValueError(f"Unable find multi-factor auth module: {mfa_module_id}")
await module.async_setup_user(user.id, data)
@@ -356,8 +362,7 @@ class AuthManager:
"System generated users cannot disable multi-factor auth module."
)
module = self.get_auth_mfa_module(mfa_module_id)
if module is None:
if (module := self.get_auth_mfa_module(mfa_module_id)) is None:
raise ValueError(f"Unable find multi-factor auth module: {mfa_module_id}")
await module.async_depose_user(user.id)
@@ -448,6 +453,28 @@ class AuthManager:
"""Delete a refresh token."""
await self._store.async_remove_refresh_token(refresh_token)
callbacks = self._revoke_callbacks.pop(refresh_token.id, [])
for revoke_callback in callbacks:
revoke_callback()
@callback
def async_register_revoke_token_callback(
self, refresh_token_id: str, revoke_callback: CALLBACK_TYPE
) -> CALLBACK_TYPE:
"""Register a callback to be called when the refresh token id is revoked."""
if refresh_token_id not in self._revoke_callbacks:
self._revoke_callbacks[refresh_token_id] = []
callbacks = self._revoke_callbacks[refresh_token_id]
callbacks.append(revoke_callback)
@callback
def unregister() -> None:
if revoke_callback in callbacks:
callbacks.remove(revoke_callback)
return unregister
@callback
def async_create_access_token(
self, refresh_token: models.RefreshToken, remote_ip: str | None = None
@@ -466,7 +493,7 @@ class AuthManager:
},
refresh_token.jwt_key,
algorithm="HS256",
).decode()
)
@callback
def _async_resolve_provider(
@@ -498,8 +525,7 @@ class AuthManager:
Will raise InvalidAuthError on errors.
"""
provider = self._async_resolve_provider(refresh_token)
if provider:
if provider := self._async_resolve_provider(refresh_token):
provider.async_validate_refresh_token(refresh_token, remote_ip)
async def async_validate_access_token(
@@ -507,7 +533,9 @@ class AuthManager:
) -> models.RefreshToken | None:
"""Return refresh token if an access token is valid."""
try:
unverif_claims = jwt.decode(token, verify=False)
unverif_claims = jwt.decode(
token, algorithms=["HS256"], options={"verify_signature": False}
)
except jwt.InvalidTokenError:
return None
+7 -9
View File
@@ -17,6 +17,8 @@ from .const import GROUP_ID_ADMIN, GROUP_ID_READ_ONLY, GROUP_ID_USER
from .permissions import PermissionLookup, system_policies
from .permissions.types import PolicyType
# mypy: disallow-any-generics
STORAGE_VERSION = 1
STORAGE_KEY = "auth"
GROUP_NAME_ADMIN = "Administrators"
@@ -94,8 +96,7 @@ class AuthStore:
groups = []
for group_id in group_ids or []:
group = self._groups.get(group_id)
if group is None:
if (group := self._groups.get(group_id)) is None:
raise ValueError(f"Invalid group specified {group_id}")
groups.append(group)
@@ -158,8 +159,7 @@ class AuthStore:
if group_ids is not None:
groups = []
for grid in group_ids:
group = self._groups.get(grid)
if group is None:
if (group := self._groups.get(grid)) is None:
raise ValueError("Invalid group specified.")
groups.append(group)
@@ -444,16 +444,14 @@ class AuthStore:
)
continue
token_type = rt_dict.get("token_type")
if token_type is None:
if (token_type := rt_dict.get("token_type")) is None:
if rt_dict["client_id"] is None:
token_type = models.TOKEN_TYPE_SYSTEM
else:
token_type = models.TOKEN_TYPE_NORMAL
# old refresh_token don't have last_used_at (pre-0.78)
last_used_at_str = rt_dict.get("last_used_at")
if last_used_at_str:
if last_used_at_str := rt_dict.get("last_used_at"):
last_used_at = dt_util.parse_datetime(last_used_at_str)
else:
last_used_at = None
@@ -491,7 +489,7 @@ class AuthStore:
self._store.async_delay_save(self._data_to_save, 1)
@callback
def _data_to_save(self) -> dict:
def _data_to_save(self) -> dict[str, list[dict[str, Any]]]:
"""Return the data to store."""
assert self._users is not None
assert self._groups is not None
@@ -38,12 +38,12 @@ class InsecureExampleModule(MultiFactorAuthModule):
@property
def input_schema(self) -> vol.Schema:
"""Validate login flow input data."""
return vol.Schema({"pin": str})
return vol.Schema({vol.Required("pin"): str})
@property
def setup_schema(self) -> vol.Schema:
"""Validate async_setup_user input data."""
return vol.Schema({"pin": str})
return vol.Schema({vol.Required("pin"): str})
async def async_setup_flow(self, user_id: str) -> SetupFlow:
"""Return a data entry flow handler for setup module.
+8 -13
View File
@@ -25,7 +25,7 @@ from . import (
SetupFlow,
)
REQUIREMENTS = ["pyotp==2.3.0"]
REQUIREMENTS = ["pyotp==2.6.0"]
CONF_MESSAGE = "message"
@@ -56,10 +56,10 @@ def _generate_secret() -> str:
def _generate_random() -> int:
"""Generate a 8 digit number."""
"""Generate a 32 digit number."""
import pyotp # pylint: disable=import-outside-toplevel
return int(pyotp.random_base32(length=8, chars=list("1234567890")))
return int(pyotp.random_base32(length=32, chars=list("1234567890")))
def _generate_otp(secret: str, count: int) -> str:
@@ -110,7 +110,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
@property
def input_schema(self) -> vol.Schema:
"""Validate login flow input data."""
return vol.Schema({INPUT_FIELD_CODE: str})
return vol.Schema({vol.Required(INPUT_FIELD_CODE): str})
async def _async_load(self) -> None:
"""Load stored data."""
@@ -118,9 +118,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
if self._user_settings is not None:
return
data = await self._user_store.async_load()
if data is None:
if (data := await self._user_store.async_load()) is None:
data = {STORAGE_USERS: {}}
self._user_settings = {
@@ -207,8 +205,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
await self._async_load()
assert self._user_settings is not None
notify_setting = self._user_settings.get(user_id)
if notify_setting is None:
if (notify_setting := self._user_settings.get(user_id)) is None:
return False
# user_input has been validate in caller
@@ -225,8 +222,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
await self._async_load()
assert self._user_settings is not None
notify_setting = self._user_settings.get(user_id)
if notify_setting is None:
if (notify_setting := self._user_settings.get(user_id)) is None:
raise ValueError("Cannot find user_id")
def generate_secret_and_one_time_password() -> str:
@@ -249,8 +245,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
await self._async_load()
assert self._user_settings is not None
notify_setting = self._user_settings.get(user_id)
if notify_setting is None:
if (notify_setting := self._user_settings.get(user_id)) is None:
_LOGGER.error("Cannot find user %s", user_id)
return
+5 -8
View File
@@ -18,7 +18,7 @@ from . import (
SetupFlow,
)
REQUIREMENTS = ["pyotp==2.3.0", "PyQRCode==1.2.1"]
REQUIREMENTS = ["pyotp==2.6.0", "PyQRCode==1.2.1"]
CONFIG_SCHEMA = MULTI_FACTOR_AUTH_MODULE_SCHEMA.extend({}, extra=vol.PREVENT_EXTRA)
@@ -84,7 +84,7 @@ class TotpAuthModule(MultiFactorAuthModule):
@property
def input_schema(self) -> vol.Schema:
"""Validate login flow input data."""
return vol.Schema({INPUT_FIELD_CODE: str})
return vol.Schema({vol.Required(INPUT_FIELD_CODE): str})
async def _async_load(self) -> None:
"""Load stored data."""
@@ -92,9 +92,7 @@ class TotpAuthModule(MultiFactorAuthModule):
if self._users is not None:
return
data = await self._user_store.async_load()
if data is None:
if (data := await self._user_store.async_load()) is None:
data = {STORAGE_USERS: {}}
self._users = data.get(STORAGE_USERS, {})
@@ -163,8 +161,7 @@ class TotpAuthModule(MultiFactorAuthModule):
"""Validate two factor authentication code."""
import pyotp # pylint: disable=import-outside-toplevel
ota_secret = self._users.get(user_id) # type: ignore
if ota_secret is None:
if (ota_secret := self._users.get(user_id)) is None: # type: ignore
# even we cannot find user, we still do verify
# to make timing the same as if user was found.
pyotp.TOTP(DUMMY_SECRET).verify(code, valid_window=1)
@@ -184,7 +181,7 @@ class TotpSetupFlow(SetupFlow):
# to fix typing complaint
self._auth_module: TotpAuthModule = auth_module
self._user = user
self._ota_secret: str | None = None
self._ota_secret: str = ""
self._url = None # type Optional[str]
self._image = None # type Optional[str]
+3 -7
View File
@@ -1,8 +1,8 @@
"""Permissions for Home Assistant."""
from __future__ import annotations
import logging
from typing import Any, Callable
from collections.abc import Callable
from typing import Any
import voluptuous as vol
@@ -15,8 +15,6 @@ from .util import test_all
POLICY_SCHEMA = vol.Schema({vol.Optional(CAT_ENTITIES): ENTITY_POLICY_SCHEMA})
_LOGGER = logging.getLogger(__name__)
class AbstractPermissions:
"""Default permissions class."""
@@ -33,9 +31,7 @@ class AbstractPermissions:
def check_entity(self, entity_id: str, key: str) -> bool:
"""Check if we can access entity."""
entity_func = self._cached_entity_func
if entity_func is None:
if (entity_func := self._cached_entity_func) is None:
entity_func = self._cached_entity_func = self._entity_func()
return entity_func(entity_id, key)
+1 -1
View File
@@ -2,7 +2,7 @@
from __future__ import annotations
from collections import OrderedDict
from typing import Callable
from collections.abc import Callable
import voluptuous as vol
+1 -2
View File
@@ -72,8 +72,7 @@ def compile_policy(
def apply_policy_funcs(object_id: str, key: str) -> bool:
"""Apply several policy functions."""
for func in funcs:
result = func(object_id, key)
if result is not None:
if (result := func(object_id, key)) is not None:
return result
return False
+4 -4
View File
@@ -22,6 +22,8 @@ from ..auth_store import AuthStore
from ..const import MFA_SESSION_EXPIRATION
from ..models import Credentials, RefreshToken, User, UserMeta
# mypy: disallow-any-generics
_LOGGER = logging.getLogger(__name__)
DATA_REQS = "auth_prov_reqs_processed"
@@ -96,7 +98,7 @@ class AuthProvider:
# Implement by extending class
async def async_login_flow(self, context: dict | None) -> LoginFlow:
async def async_login_flow(self, context: dict[str, Any] | None) -> LoginFlow:
"""Return the data flow for logging in with auth provider.
Auth provider should extend LoginFlow and return an instance.
@@ -167,9 +169,7 @@ async def load_auth_provider_module(
if hass.config.skip_pip or not hasattr(module, "REQUIREMENTS"):
return module
processed = hass.data.get(DATA_REQS)
if processed is None:
if (processed := hass.data.get(DATA_REQS)) is None:
processed = hass.data[DATA_REQS] = set()
elif provider in processed:
return module
+11 -7
View File
@@ -2,7 +2,6 @@
from __future__ import annotations
import asyncio
import collections
from collections.abc import Mapping
import logging
import os
@@ -17,6 +16,8 @@ from homeassistant.exceptions import HomeAssistantError
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
# mypy: disallow-any-generics
CONF_ARGS = "args"
CONF_META = "meta"
@@ -56,7 +57,7 @@ class CommandLineAuthProvider(AuthProvider):
super().__init__(*args, **kwargs)
self._user_meta: dict[str, dict[str, Any]] = {}
async def async_login_flow(self, context: dict | None) -> LoginFlow:
async def async_login_flow(self, context: dict[str, Any] | None) -> LoginFlow:
"""Return a flow to login."""
return CommandLineLoginFlow(self)
@@ -146,10 +147,13 @@ class CommandLineLoginFlow(LoginFlow):
user_input.pop("password")
return await self.async_finish(user_input)
schema: dict[str, type] = collections.OrderedDict()
schema["username"] = str
schema["password"] = str
return self.async_show_form(
step_id="init", data_schema=vol.Schema(schema), errors=errors
step_id="init",
data_schema=vol.Schema(
{
vol.Required("username"): str,
vol.Required("password"): str,
}
),
errors=errors,
)
+13 -13
View File
@@ -3,7 +3,6 @@ from __future__ import annotations
import asyncio
import base64
from collections import OrderedDict
from collections.abc import Mapping
import logging
from typing import Any, cast
@@ -19,6 +18,8 @@ from homeassistant.exceptions import HomeAssistantError
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
# mypy: disallow-any-generics
STORAGE_VERSION = 1
STORAGE_KEY = "auth_provider.homeassistant"
@@ -80,9 +81,7 @@ class Data:
async def async_load(self) -> None:
"""Load stored data."""
data = await self._store.async_load()
if data is None:
if (data := await self._store.async_load()) is None:
data = {"users": []}
seen: set[str] = set()
@@ -91,9 +90,7 @@ class Data:
username = user["username"]
# check if we have duplicates
folded = username.casefold()
if folded in seen:
if (folded := username.casefold()) in seen:
self.is_legacy = True
logging.getLogger(__name__).warning(
@@ -235,7 +232,7 @@ class HassAuthProvider(AuthProvider):
await data.async_load()
self.data = data
async def async_login_flow(self, context: dict | None) -> LoginFlow:
async def async_login_flow(self, context: dict[str, Any] | None) -> LoginFlow:
"""Return a flow to login."""
return HassLoginFlow(self)
@@ -337,10 +334,13 @@ class HassLoginFlow(LoginFlow):
user_input.pop("password")
return await self.async_finish(user_input)
schema: dict[str, type] = OrderedDict()
schema["username"] = str
schema["password"] = str
return self.async_show_form(
step_id="init", data_schema=vol.Schema(schema), errors=errors
step_id="init",
data_schema=vol.Schema(
{
vol.Required("username"): str,
vol.Required("password"): str,
}
),
errors=errors,
)
@@ -1,10 +1,9 @@
"""Example auth provider."""
from __future__ import annotations
from collections import OrderedDict
from collections.abc import Mapping
import hmac
from typing import cast
from typing import Any, cast
import voluptuous as vol
@@ -15,6 +14,8 @@ from homeassistant.exceptions import HomeAssistantError
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
# mypy: disallow-any-generics
USER_SCHEMA = vol.Schema(
{
vol.Required("username"): str,
@@ -37,7 +38,7 @@ class InvalidAuthError(HomeAssistantError):
class ExampleAuthProvider(AuthProvider):
"""Example auth provider based on hardcoded usernames and passwords."""
async def async_login_flow(self, context: dict | None) -> LoginFlow:
async def async_login_flow(self, context: dict[str, Any] | None) -> LoginFlow:
"""Return a flow to login."""
return ExampleLoginFlow(self)
@@ -115,10 +116,13 @@ class ExampleLoginFlow(LoginFlow):
user_input.pop("password")
return await self.async_finish(user_input)
schema: dict[str, type] = OrderedDict()
schema["username"] = str
schema["password"] = str
return self.async_show_form(
step_id="init", data_schema=vol.Schema(schema), errors=errors
step_id="init",
data_schema=vol.Schema(
{
vol.Required("username"): str,
vol.Required("password"): str,
}
),
errors=errors,
)
@@ -7,7 +7,7 @@ from __future__ import annotations
from collections.abc import Mapping
import hmac
from typing import cast
from typing import Any, cast
import voluptuous as vol
@@ -19,6 +19,8 @@ import homeassistant.helpers.config_validation as cv
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
# mypy: disallow-any-generics
AUTH_PROVIDER_TYPE = "legacy_api_password"
CONF_API_PASSWORD = "api_password"
@@ -44,7 +46,7 @@ class LegacyApiPasswordAuthProvider(AuthProvider):
"""Return api_password."""
return str(self.config[CONF_API_PASSWORD])
async def async_login_flow(self, context: dict | None) -> LoginFlow:
async def async_login_flow(self, context: dict[str, Any] | None) -> LoginFlow:
"""Return a flow to login."""
return LegacyLoginFlow(self)
@@ -100,5 +102,7 @@ class LegacyLoginFlow(LoginFlow):
return await self.async_finish({})
return self.async_show_form(
step_id="init", data_schema=vol.Schema({"password": str}), errors=errors
step_id="init",
data_schema=vol.Schema({vol.Required("password"): str}),
errors=errors,
)
@@ -27,6 +27,8 @@ from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from .. import InvalidAuthError
from ..models import Credentials, RefreshToken, UserMeta
# mypy: disallow-any-generics
IPAddress = Union[IPv4Address, IPv6Address]
IPNetwork = Union[IPv4Network, IPv6Network]
@@ -97,7 +99,7 @@ class TrustedNetworksAuthProvider(AuthProvider):
"""Trusted Networks auth provider does not support MFA."""
return False
async def async_login_flow(self, context: dict | None) -> LoginFlow:
async def async_login_flow(self, context: dict[str, Any] | None) -> LoginFlow:
"""Return a flow to login."""
assert context is not None
ip_addr = cast(IPAddress, context.get("ip_address"))
@@ -242,5 +244,7 @@ class TrustedNetworksLoginFlow(LoginFlow):
return self.async_show_form(
step_id="init",
data_schema=vol.Schema({"user": vol.In(self._available_users)}),
data_schema=vol.Schema(
{vol.Required("user"): vol.In(self._available_users)}
),
)
+33 -29
View File
@@ -17,7 +17,10 @@ import yarl
from homeassistant import config as conf_util, config_entries, core, loader
from homeassistant.components import http
from homeassistant.const import REQUIRED_NEXT_PYTHON_DATE, REQUIRED_NEXT_PYTHON_VER
from homeassistant.const import (
REQUIRED_NEXT_PYTHON_HA_RELEASE,
REQUIRED_NEXT_PYTHON_VER,
)
from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers import area_registry, device_registry, entity_registry
from homeassistant.helpers.dispatcher import async_dispatcher_send
@@ -109,9 +112,8 @@ async def async_setup_hass(
config_dict = None
basic_setup_success = False
safe_mode = runtime_config.safe_mode
if not safe_mode:
if not (safe_mode := runtime_config.safe_mode):
await hass.async_add_executor_job(conf_util.process_ha_config_upgrade, hass)
try:
@@ -241,11 +243,14 @@ async def async_from_config_dict(
stop = monotonic()
_LOGGER.info("Home Assistant initialized in %.2fs", stop - start)
if REQUIRED_NEXT_PYTHON_DATE and sys.version_info[:3] < REQUIRED_NEXT_PYTHON_VER:
if (
REQUIRED_NEXT_PYTHON_HA_RELEASE
and sys.version_info[:3] < REQUIRED_NEXT_PYTHON_VER
):
msg = (
"Support for the running Python version "
f"{'.'.join(str(x) for x in sys.version_info[:3])} is deprecated and will "
f"be removed in the first release after {REQUIRED_NEXT_PYTHON_DATE}. "
f"be removed in Home Assistant {REQUIRED_NEXT_PYTHON_HA_RELEASE}. "
"Please upgrade Python to "
f"{'.'.join(str(x) for x in REQUIRED_NEXT_PYTHON_VER)} or "
"higher."
@@ -332,14 +337,20 @@ def async_enable_logging(
not err_path_exists and os.access(err_dir, os.W_OK)
):
err_handler: logging.handlers.RotatingFileHandler | logging.handlers.TimedRotatingFileHandler
if log_rotate_days:
err_handler: logging.FileHandler = (
logging.handlers.TimedRotatingFileHandler(
err_log_path, when="midnight", backupCount=log_rotate_days
)
err_handler = logging.handlers.TimedRotatingFileHandler(
err_log_path, when="midnight", backupCount=log_rotate_days
)
else:
err_handler = logging.FileHandler(err_log_path, mode="w", delay=True)
err_handler = logging.handlers.RotatingFileHandler(
err_log_path, backupCount=1
)
try:
err_handler.doRollover()
except OSError as err:
_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))
@@ -362,8 +373,7 @@ async def async_mount_local_lib_path(config_dir: str) -> str:
This function is a coroutine.
"""
deps_dir = os.path.join(config_dir, "deps")
lib_dir = await async_get_user_site(deps_dir)
if lib_dir not in sys.path:
if (lib_dir := await async_get_user_site(deps_dir)) not in sys.path:
sys.path.insert(0, lib_dir)
return deps_dir
@@ -488,17 +498,13 @@ async def _async_set_up_integrations(
_LOGGER.info("Domains to be set up: %s", domains_to_setup)
logging_domains = domains_to_setup & LOGGING_INTEGRATIONS
# Load logging as soon as possible
if logging_domains:
if logging_domains := domains_to_setup & LOGGING_INTEGRATIONS:
_LOGGER.info("Setting up logging: %s", logging_domains)
await async_setup_multi_components(hass, logging_domains, config)
# Start up debuggers. Start these first in case they want to wait.
debuggers = domains_to_setup & DEBUGGER_INTEGRATIONS
if debuggers:
if debuggers := domains_to_setup & DEBUGGER_INTEGRATIONS:
_LOGGER.debug("Setting up debuggers: %s", debuggers)
await async_setup_multi_components(hass, debuggers, config)
@@ -518,9 +524,7 @@ async def _async_set_up_integrations(
stage_1_domains.add(domain)
dep_itg = integration_cache.get(domain)
if dep_itg is None:
if (dep_itg := integration_cache.get(domain)) is None:
continue
deps_promotion.update(dep_itg.all_dependencies)
@@ -558,6 +562,14 @@ async def _async_set_up_integrations(
except asyncio.TimeoutError:
_LOGGER.warning("Setup timed out for stage 2 - moving forward")
# Wrap up startup
_LOGGER.debug("Waiting for startup to wrap up")
try:
async with hass.timeout.async_timeout(WRAP_UP_TIMEOUT, cool_down=COOLDOWN_TIME):
await hass.async_block_till_done()
except asyncio.TimeoutError:
_LOGGER.warning("Setup timed out for bootstrap - moving forward")
watch_task.cancel()
async_dispatcher_send(hass, SIGNAL_BOOTSTRAP_INTEGRATONS, {})
@@ -570,11 +582,3 @@ async def _async_set_up_integrations(
)
},
)
# Wrap up startup
_LOGGER.debug("Waiting for startup to wrap up")
try:
async with hass.timeout.async_timeout(WRAP_UP_TIMEOUT, cool_down=COOLDOWN_TIME):
await hass.async_block_till_done()
except asyncio.TimeoutError:
_LOGGER.warning("Setup timed out for bootstrap - moving forward")
+8 -8
View File
@@ -20,7 +20,7 @@ from homeassistant.const import (
from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady
from homeassistant.helpers import config_validation as cv
from homeassistant.helpers.dispatcher import dispatcher_send
from homeassistant.helpers.entity import Entity
from homeassistant.helpers.entity import DeviceInfo, Entity
from .const import ATTRIBUTION, DEFAULT_CACHEDB, DOMAIN, LOGGER
@@ -322,14 +322,14 @@ class AbodeDevice(AbodeEntity):
}
@property
def device_info(self):
def device_info(self) -> DeviceInfo:
"""Return device registry information for this entity."""
return {
"identifiers": {(DOMAIN, self._device.device_id)},
"manufacturer": "Abode",
"name": self._device.name,
"device_type": self._device.type,
}
return DeviceInfo(
identifiers={(DOMAIN, self._device.device_id)},
manufacturer="Abode",
model=self._device.type,
name=self._device.name,
)
def _update_callback(self, device):
"""Update the device state."""
+5 -1
View File
@@ -1,4 +1,6 @@
"""Support for Abode Security System cameras."""
from __future__ import annotations
from datetime import timedelta
import abodepy.helpers.constants as CONST
@@ -73,7 +75,9 @@ class AbodeCamera(AbodeDevice, Camera):
else:
self._response = None
def camera_image(self):
def camera_image(
self, width: int | None = None, height: int | None = None
) -> bytes | None:
"""Get a camera image."""
self.refresh_image()
@@ -1,4 +1,6 @@
"""Config flow for the Abode Security System component."""
from http import HTTPStatus
from abodepy import Abode
from abodepy.exceptions import AbodeAuthenticationException, AbodeException
from abodepy.helpers.errors import MFA_CODE_REQUIRED
@@ -6,7 +8,7 @@ from requests.exceptions import ConnectTimeout, HTTPError
import voluptuous as vol
from homeassistant import config_entries
from homeassistant.const import CONF_PASSWORD, CONF_USERNAME, HTTP_BAD_REQUEST
from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
from .const import DEFAULT_CACHEDB, DOMAIN, LOGGER
@@ -51,7 +53,7 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
LOGGER.error("Unable to connect to Abode: %s", ex)
if ex.errcode == HTTP_BAD_REQUEST:
if ex.errcode == HTTPStatus.BAD_REQUEST:
errors = {"base": "invalid_auth"}
else:
+42 -26
View File
@@ -1,7 +1,9 @@
"""Support for Abode Security System sensors."""
from __future__ import annotations
import abodepy.helpers.constants as CONST
from homeassistant.components.sensor import SensorEntity
from homeassistant.components.sensor import SensorEntity, SensorEntityDescription
from homeassistant.const import (
DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_ILLUMINANCE,
@@ -11,12 +13,23 @@ from homeassistant.const import (
from . import AbodeDevice
from .const import DOMAIN
# Sensor types: Name, icon
SENSOR_TYPES = {
CONST.TEMP_STATUS_KEY: ["Temperature", DEVICE_CLASS_TEMPERATURE],
CONST.HUMI_STATUS_KEY: ["Humidity", DEVICE_CLASS_HUMIDITY],
CONST.LUX_STATUS_KEY: ["Lux", DEVICE_CLASS_ILLUMINANCE],
}
SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
SensorEntityDescription(
key=CONST.TEMP_STATUS_KEY,
name="Temperature",
device_class=DEVICE_CLASS_TEMPERATURE,
),
SensorEntityDescription(
key=CONST.HUMI_STATUS_KEY,
name="Humidity",
device_class=DEVICE_CLASS_HUMIDITY,
),
SensorEntityDescription(
key=CONST.LUX_STATUS_KEY,
name="Lux",
device_class=DEVICE_CLASS_ILLUMINANCE,
),
)
async def async_setup_entry(hass, config_entry, async_add_entities):
@@ -26,10 +39,14 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
entities = []
for device in data.abode.get_devices(generic_type=CONST.TYPE_SENSOR):
for sensor_type in SENSOR_TYPES:
if sensor_type not in device.get_value(CONST.STATUSES_KEY):
continue
entities.append(AbodeSensor(data, device, sensor_type))
conditions = device.get_value(CONST.STATUSES_KEY)
entities.extend(
[
AbodeSensor(data, device, description)
for description in SENSOR_TYPES
if description.key in conditions
]
)
async_add_entities(entities)
@@ -37,26 +54,25 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
class AbodeSensor(AbodeDevice, SensorEntity):
"""A sensor implementation for Abode devices."""
def __init__(self, data, device, sensor_type):
def __init__(self, data, device, description: SensorEntityDescription):
"""Initialize a sensor for an Abode device."""
super().__init__(data, device)
self._sensor_type = sensor_type
self._attr_name = f"{device.name} {SENSOR_TYPES[sensor_type][0]}"
self._attr_device_class = SENSOR_TYPES[self._sensor_type][1]
self._attr_unique_id = f"{device.device_uuid}-{sensor_type}"
if self._sensor_type == CONST.TEMP_STATUS_KEY:
self._attr_unit_of_measurement = device.temp_unit
elif self._sensor_type == CONST.HUMI_STATUS_KEY:
self._attr_unit_of_measurement = device.humidity_unit
elif self._sensor_type == CONST.LUX_STATUS_KEY:
self._attr_unit_of_measurement = device.lux_unit
self.entity_description = description
self._attr_name = f"{device.name} {description.name}"
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
@property
def state(self):
def native_value(self):
"""Return the state of the sensor."""
if self._sensor_type == CONST.TEMP_STATUS_KEY:
if self.entity_description.key == CONST.TEMP_STATUS_KEY:
return self._device.temp
if self._sensor_type == CONST.HUMI_STATUS_KEY:
if self.entity_description.key == CONST.HUMI_STATUS_KEY:
return self._device.humidity
if self._sensor_type == CONST.LUX_STATUS_KEY:
if self.entity_description.key == CONST.LUX_STATUS_KEY:
return self._device.lux
@@ -1,9 +1,19 @@
{
"config": {
"abort": {
"reauth_successful": "\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0442\u043e \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u0432\u0430\u043d\u0435 \u0431\u0435\u0448\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e",
"single_instance_allowed": "\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0430 \u0435 \u0441\u0430\u043c\u043e \u0435\u0434\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043d\u0430 Abode."
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"
},
"step": {
"reauth_confirm": {
"data": {
"password": "\u041f\u0430\u0440\u043e\u043b\u0430",
"username": "Email"
}
},
"user": {
"data": {
"password": "\u041f\u0430\u0440\u043e\u043b\u0430",
@@ -2,7 +2,7 @@
"config": {
"abort": {
"reauth_successful": "La r\u00e9-authentification a r\u00e9ussi",
"single_instance_allowed": "D\u00e9ja configur\u00e9. Une seule configuration possible."
"single_instance_allowed": "D\u00e9j\u00e0 configur\u00e9. Une seule configuration possible."
},
"error": {
"cannot_connect": "\u00c9chec de connexion",
@@ -1,7 +1,7 @@
{
"config": {
"abort": {
"reauth_successful": "Az \u00fajrahiteles\u00edt\u00e9s sikeres volt",
"reauth_successful": "Az \u00fajrahiteles\u00edt\u00e9s sikeres volt.",
"single_instance_allowed": "M\u00e1r konfigur\u00e1lva van. Csak egy konfigur\u00e1ci\u00f3 lehets\u00e9ges."
},
"error": {
@@ -2,7 +2,7 @@
"domain": "accuweather",
"name": "AccuWeather",
"documentation": "https://www.home-assistant.io/integrations/accuweather/",
"requirements": ["accuweather==0.2.0"],
"requirements": ["accuweather==0.3.0"],
"codeowners": ["@bieniu"],
"config_flow": true,
"quality_scale": "platinum",
+13 -11
View File
@@ -5,8 +5,9 @@ from typing import Any, cast
from homeassistant.components.sensor import SensorEntity
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import ATTR_ATTRIBUTION, CONF_NAME, DEVICE_CLASS_TEMPERATURE
from homeassistant.const import CONF_NAME, DEVICE_CLASS_TEMPERATURE
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import StateType
from homeassistant.helpers.update_coordinator import CoordinatorEntity
@@ -59,6 +60,7 @@ async def async_setup_entry(
class AccuWeatherSensor(CoordinatorEntity, SensorEntity):
"""Define an AccuWeather entity."""
_attr_attribution = ATTRIBUTION
coordinator: AccuWeatherDataUpdateCoordinator
entity_description: AccuWeatherSensorDescription
@@ -75,7 +77,7 @@ class AccuWeatherSensor(CoordinatorEntity, SensorEntity):
self._sensor_data = _get_sensor_data(
coordinator.data, forecast_day, description.key
)
self._attrs = {ATTR_ATTRIBUTION: ATTRIBUTION}
self._attrs: dict[str, Any] = {}
if forecast_day is not None:
self._attr_name = f"{name} {description.name} {forecast_day}d"
self._attr_unique_id = (
@@ -88,20 +90,20 @@ class AccuWeatherSensor(CoordinatorEntity, SensorEntity):
)
if coordinator.is_metric:
self._unit_system = API_METRIC
self._attr_unit_of_measurement = description.unit_metric
self._attr_native_unit_of_measurement = description.unit_metric
else:
self._unit_system = API_IMPERIAL
self._attr_unit_of_measurement = description.unit_imperial
self._attr_device_info = {
"identifiers": {(DOMAIN, coordinator.location_key)},
"name": NAME,
"manufacturer": MANUFACTURER,
"entry_type": "service",
}
self._attr_native_unit_of_measurement = description.unit_imperial
self._attr_device_info = DeviceInfo(
entry_type="service",
identifiers={(DOMAIN, coordinator.location_key)},
manufacturer=MANUFACTURER,
name=NAME,
)
self.forecast_day = forecast_day
@property
def state(self) -> StateType:
def native_value(self) -> StateType:
"""Return the state."""
if self.forecast_day is not None:
if self.entity_description.device_class == DEVICE_CLASS_TEMPERATURE:
@@ -0,0 +1,7 @@
{
"config": {
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"
}
}
}
@@ -14,7 +14,7 @@
"api_key": "Cl\u00e9 d'API",
"latitude": "Latitude",
"longitude": "Longitude",
"name": "Nom de l'int\u00e9gration"
"name": "Nom"
},
"description": "Si vous avez besoin d'aide pour la configuration, consultez le site suivant : https://www.home-assistant.io/integrations/accuweather/\n\nCertains capteurs ne sont pas activ\u00e9s par d\u00e9faut. Vous pouvez les activer dans le registre des entit\u00e9s apr\u00e8s la configuration de l'int\u00e9gration.\nLes pr\u00e9visions m\u00e9t\u00e9orologiques ne sont pas activ\u00e9es par d\u00e9faut. Vous pouvez l'activer dans les options d'int\u00e9gration.",
"title": "AccuWeather"
@@ -5,7 +5,8 @@
},
"error": {
"cannot_connect": "\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05db\u05e9\u05dc\u05d4",
"invalid_api_key": "\u05de\u05e4\u05ea\u05d7 API \u05dc\u05d0 \u05d7\u05d5\u05e7\u05d9"
"invalid_api_key": "\u05de\u05e4\u05ea\u05d7 API \u05dc\u05d0 \u05d7\u05d5\u05e7\u05d9",
"requests_exceeded": "\u05d0\u05d9\u05e8\u05e2\u05d4 \u05d7\u05e8\u05d9\u05d2\u05d4 \u05de\u05de\u05e1\u05e4\u05e8 \u05d4\u05d1\u05e7\u05e9\u05d5\u05ea \u05d4\u05de\u05d5\u05ea\u05e8 \u05dc-API \u05e9\u05dc Accuweather. \u05e2\u05dc\u05d9\u05da \u05dc\u05d4\u05de\u05ea\u05d9\u05df \u05d0\u05d5 \u05dc\u05e9\u05e0\u05d5\u05ea \u05d0\u05ea \u05de\u05e4\u05ea\u05d7 \u05d4-API."
},
"step": {
"user": {
@@ -15,6 +16,7 @@
"longitude": "\u05e7\u05d5 \u05d0\u05d5\u05e8\u05da",
"name": "\u05e9\u05dd"
},
"description": "\u05d0\u05dd \u05d4\u05d9\u05e0\u05da \u05d6\u05e7\u05d5\u05e7 \u05dc\u05e2\u05d6\u05e8\u05d4 \u05e2\u05dd \u05d4\u05ea\u05e6\u05d5\u05e8\u05d4, \u05d9\u05e9 \u05dc\u05e2\u05d9\u05d9\u05df \u05db\u05d0\u05df: https://www.home-assistant.io/integrations/accuweather/\n\n\u05d7\u05d9\u05d9\u05e9\u05e0\u05d9\u05dd \u05de\u05e1\u05d5\u05d9\u05de\u05d9\u05dd \u05d0\u05d9\u05e0\u05dd \u05d6\u05de\u05d9\u05e0\u05d9\u05dd \u05db\u05d1\u05e8\u05d9\u05e8\u05ea \u05de\u05d7\u05d3\u05dc. \u05d1\u05d0\u05e4\u05e9\u05e8\u05d5\u05ea\u05da \u05dc\u05d4\u05e4\u05d5\u05da \u05d0\u05d5\u05ea\u05dd \u05dc\u05d6\u05de\u05d9\u05e0\u05d9\u05dd \u05d1\u05e8\u05d9\u05e9\u05d5\u05dd \u05d4\u05d9\u05e9\u05d5\u05d9\u05d5\u05ea \u05dc\u05d0\u05d7\u05e8 \u05e7\u05d1\u05d9\u05e2\u05ea \u05d4\u05ea\u05e6\u05d5\u05e8\u05d4 \u05e9\u05dc \u05d4\u05e9\u05d9\u05dc\u05d5\u05d1.\n\u05ea\u05d7\u05d6\u05d9\u05ea \u05de\u05d6\u05d2 \u05d4\u05d0\u05d5\u05d5\u05d9\u05e8 \u05d0\u05d9\u05e0\u05d4 \u05d6\u05de\u05d9\u05e0\u05d4 \u05db\u05d1\u05e8\u05d9\u05e8\u05ea \u05de\u05d7\u05d3\u05dc. \u05d1\u05d0\u05e4\u05e9\u05e8\u05d5\u05ea\u05da \u05dc\u05d4\u05e4\u05d5\u05da \u05d0\u05d5\u05ea\u05d5 \u05dc\u05d6\u05de\u05d9\u05df \u05d1\u05d0\u05e4\u05e9\u05e8\u05d5\u05d9\u05d5\u05ea \u05d4\u05e9\u05d9\u05dc\u05d5\u05d1.",
"title": "AccuWeather"
}
}
@@ -22,6 +24,9 @@
"options": {
"step": {
"user": {
"data": {
"forecast": "\u05ea\u05d7\u05d6\u05d9\u05ea \u05de\u05d6\u05d2 \u05d4\u05d0\u05d5\u05d5\u05d9\u05e8"
},
"description": "\u05d1\u05e9\u05dc \u05de\u05d2\u05d1\u05dc\u05d5\u05ea \u05d4\u05d2\u05d9\u05e8\u05e1\u05d4 \u05d4\u05d7\u05d9\u05e0\u05de\u05d9\u05ea \u05e9\u05dc \u05de\u05e4\u05ea\u05d7 \u05d4-API \u05e9\u05dc AccuWeather, \u05db\u05d0\u05e9\u05e8 \u05ea\u05e4\u05e2\u05d9\u05dc \u05ea\u05d7\u05d6\u05d9\u05ea \u05de\u05d6\u05d2 \u05d0\u05d5\u05d5\u05d9\u05e8, \u05e2\u05d3\u05db\u05d5\u05e0\u05d9 \u05e0\u05ea\u05d5\u05e0\u05d9\u05dd \u05d9\u05d1\u05d5\u05e6\u05e2\u05d5 \u05db\u05dc 80 \u05d3\u05e7\u05d5\u05ea \u05d1\u05de\u05e7\u05d5\u05dd \u05db\u05dc 40 \u05d3\u05e7\u05d5\u05ea.",
"title": "\u05d0\u05e4\u05e9\u05e8\u05d5\u05d9\u05d5\u05ea AccuWeather"
}
@@ -29,7 +34,8 @@
},
"system_health": {
"info": {
"can_reach_server": "\u05d4\u05e9\u05d2\u05ea \u05e9\u05e8\u05ea AccuWeather"
"can_reach_server": "\u05d4\u05e9\u05d2\u05ea \u05e9\u05e8\u05ea AccuWeather",
"remaining_requests": "\u05d4\u05d1\u05e7\u05e9\u05d5\u05ea \u05d4\u05e0\u05d5\u05ea\u05e8\u05d5\u05ea \u05de\u05d5\u05ea\u05e8\u05d5\u05ea"
}
}
}
@@ -5,7 +5,8 @@
},
"error": {
"cannot_connect": "Sikertelen csatlakoz\u00e1s",
"invalid_api_key": "\u00c9rv\u00e9nytelen API kulcs"
"invalid_api_key": "\u00c9rv\u00e9nytelen API kulcs",
"requests_exceeded": "Accuweather API-hoz enged\u00e9lyezett lek\u00e9r\u00e9sek sz\u00e1ma t\u00fal lett l\u00e9pve. Meg kell v\u00e1rnia m\u00edg a tilt\u00e1s lej\u00e1r vagy m\u00f3dos\u00edtania kell az API-kulcsot."
},
"step": {
"user": {
@@ -15,6 +16,7 @@
"longitude": "Hossz\u00fas\u00e1g",
"name": "N\u00e9v"
},
"description": "Ha seg\u00edts\u00e9gre van sz\u00fcks\u00e9ge a konfigur\u00e1l\u00e1shoz, n\u00e9zze meg itt: https://www.home-assistant.io/integrations/accuweather/ \n\nEgyes \u00e9rz\u00e9kel\u0151k alap\u00e9rtelmez\u00e9s szerint nincsenek enged\u00e9lyezve. Az integr\u00e1ci\u00f3s konfigur\u00e1ci\u00f3 ut\u00e1n enged\u00e9lyezheti \u0151ket az entit\u00e1s-nyilv\u00e1ntart\u00e1sban.\nAz id\u0151j\u00e1r\u00e1s-el\u0151rejelz\u00e9s alap\u00e9rtelmez\u00e9s szerint nincs enged\u00e9lyezve. Ezt az integr\u00e1ci\u00f3s be\u00e1ll\u00edt\u00e1sokban enged\u00e9lyezheti.",
"title": "AccuWeather"
}
}
@@ -22,6 +24,10 @@
"options": {
"step": {
"user": {
"data": {
"forecast": "Id\u0151j\u00e1r\u00e1s el\u0151rejelz\u00e9s"
},
"description": "Az AccuWeather API kulcs ingyenes verzi\u00f3j\u00e1nak korl\u00e1tai miatt, amikor enged\u00e9lyezi az id\u0151j\u00e1r\u00e1s -el\u0151rejelz\u00e9st, az adatfriss\u00edt\u00e9seket 40 percenk\u00e9nt 80 percenk\u00e9nt hajtj\u00e1k v\u00e9gre.",
"title": "AccuWeather be\u00e1ll\u00edt\u00e1sok"
}
}
@@ -0,0 +1,9 @@
{
"state": {
"accuweather__pressure_tendency": {
"falling": "\u05d9\u05d5\u05e8\u05d3",
"rising": "\u05e2\u05d5\u05dc\u05d4",
"steady": "\u05d9\u05e6\u05d9\u05d1"
}
}
}
@@ -16,7 +16,7 @@
"longitude": "\u7d93\u5ea6",
"name": "\u540d\u7a31"
},
"description": "\u5047\u5982\u4f60\u9700\u8981\u5354\u52a9\u9032\u884c\u8a2d\u5b9a\uff0c\u8acb\u53c3\u95b1\uff1ahttps://www.home-assistant.io/integrations/accuweather/\n\n\u67d0\u4e9b\u50b3\u611f\u5668\u9810\u8a2d\u70ba\u672a\u555f\u7528\uff0c\u53ef\u4ee5\u65bc\u6574\u5408\u8a2d\u5b9a\u4e2d\u555f\u7528\u9019\u4e9b\u5be6\u9ad4\u3002\u5929\u6c23\u9810\u5831\u9810\u8a2d\u672a\u958b\u555f\u3002\u53ef\u4ee5\u65bc\u6574\u5408\u9078\u9805\u4e2d\u958b\u555f\u3002",
"description": "\u5047\u5982\u4f60\u9700\u8981\u5354\u52a9\u9032\u884c\u8a2d\u5b9a\uff0c\u8acb\u53c3\u95b1\uff1ahttps://www.home-assistant.io/integrations/accuweather/\n\n\u67d0\u4e9b\u611f\u6e2c\u5668\u9810\u8a2d\u70ba\u672a\u555f\u7528\uff0c\u53ef\u4ee5\u65bc\u6574\u5408\u8a2d\u5b9a\u4e2d\u555f\u7528\u9019\u4e9b\u5be6\u9ad4\u3002\u5929\u6c23\u9810\u5831\u9810\u8a2d\u672a\u958b\u555f\u3002\u53ef\u4ee5\u65bc\u6574\u5408\u9078\u9805\u4e2d\u958b\u555f\u3002",
"title": "AccuWeather"
}
}
@@ -19,6 +19,7 @@ from homeassistant.components.weather import (
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_NAME, TEMP_CELSIUS, TEMP_FAHRENHEIT
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from homeassistant.util.dt import utc_from_timestamp
@@ -66,12 +67,12 @@ class AccuWeatherEntity(CoordinatorEntity, WeatherEntity):
TEMP_CELSIUS if coordinator.is_metric else TEMP_FAHRENHEIT
)
self._attr_attribution = ATTRIBUTION
self._attr_device_info = {
"identifiers": {(DOMAIN, coordinator.location_key)},
"name": NAME,
"manufacturer": MANUFACTURER,
"entry_type": "service",
}
self._attr_device_info = DeviceInfo(
entry_type="service",
identifiers={(DOMAIN, coordinator.location_key)},
manufacturer=MANUFACTURER,
name=NAME,
)
@property
def condition(self) -> str | None:
@@ -129,8 +129,7 @@ class AcerSwitch(SwitchEntity):
self._attr_available = False
for key in self._attributes:
msg = CMD_DICT.get(key)
if msg:
if msg := CMD_DICT.get(key):
awns = self._write_read_format(msg)
self._attributes[key] = awns
self._attr_extra_state_attributes = self._attributes
+7 -7
View File
@@ -77,11 +77,11 @@ class AcmedaBase(entity.Entity):
return self.roller.name
@property
def device_info(self):
def device_info(self) -> entity.DeviceInfo:
"""Return the device info."""
return {
"identifiers": {(DOMAIN, self.unique_id)},
"name": self.roller.name,
"manufacturer": "Rollease Acmeda",
"via_device": (DOMAIN, self.roller.hub.id),
}
return entity.DeviceInfo(
identifiers={(DOMAIN, self.unique_id)},
manufacturer="Rollease Acmeda",
name=self.roller.name,
via_device=(DOMAIN, self.roller.hub.id),
)
+1 -1
View File
@@ -61,7 +61,7 @@ class AcmedaCover(AcmedaBase, CoverEntity):
None is unknown, 0 is closed, 100 is fully open.
"""
position = None
if self.roller.type in [7, 10]:
if self.roller.type in (7, 10):
position = 100 - self.roller.closed_percent
return position
+2 -2
View File
@@ -34,7 +34,7 @@ class AcmedaBattery(AcmedaBase, SensorEntity):
"""Representation of a Acmeda cover device."""
device_class = DEVICE_CLASS_BATTERY
unit_of_measurement = PERCENTAGE
_attr_native_unit_of_measurement = PERCENTAGE
@property
def name(self):
@@ -42,6 +42,6 @@ class AcmedaBattery(AcmedaBase, SensorEntity):
return f"{super().name} Battery"
@property
def state(self):
def native_value(self):
"""Return the state of the device."""
return self.roller.battery
@@ -2,6 +2,14 @@
"config": {
"abort": {
"no_devices_found": "Nem tal\u00e1lhat\u00f3 eszk\u00f6z a h\u00e1l\u00f3zaton"
},
"step": {
"user": {
"data": {
"id": "Gazdag\u00e9p azonos\u00edt\u00f3"
},
"title": "V\u00e1lassza ki a hozz\u00e1adni k\u00edv\u00e1nt hubot"
}
}
}
}
+3 -1
View File
@@ -4,7 +4,9 @@ from __future__ import annotations
import re
from typing import Final
LEASES_REGEX: Final[re.Pattern] = re.compile(
# mypy: disallow-any-generics
LEASES_REGEX: Final[re.Pattern[str]] = re.compile(
r"(?P<ip>([0-9]{1,3}[\.]){3}[0-9]{1,3})"
+ r"\smac:\s(?P<mac>([0-9a-f]{2}[:-]){5}([0-9a-f]{2}))"
+ r"\svalid\sfor:\s(?P<timevalid>(-?\d+))"
+38 -81
View File
@@ -1,7 +1,6 @@
"""Support for Adax wifi-enabled home heaters."""
from __future__ import annotations
import logging
from typing import Any
from adax import Adax
@@ -21,11 +20,10 @@ 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.entity_platform import AddEntitiesCallback
from .const import ACCOUNT_ID
_LOGGER = logging.getLogger(__name__)
from .const import ACCOUNT_ID, DOMAIN
async def async_setup_entry(
@@ -41,112 +39,71 @@ async def async_setup_entry(
)
async_add_entities(
AdaxDevice(room, adax_data_handler)
for room in await adax_data_handler.get_rooms()
(
AdaxDevice(room, adax_data_handler)
for room in await adax_data_handler.get_rooms()
),
True,
)
class AdaxDevice(ClimateEntity):
"""Representation of a heater."""
_attr_hvac_modes = [HVAC_MODE_HEAT, HVAC_MODE_OFF]
_attr_max_temp = 35
_attr_min_temp = 5
_attr_supported_features = SUPPORT_TARGET_TEMPERATURE
_attr_target_temperature_step = PRECISION_WHOLE
_attr_temperature_unit = TEMP_CELSIUS
def __init__(self, heater_data: dict[str, Any], adax_data_handler: Adax) -> None:
"""Initialize the heater."""
self._heater_data = heater_data
self._device_id = heater_data["id"]
self._adax_data_handler = adax_data_handler
@property
def supported_features(self) -> int:
"""Return the list of supported features."""
return SUPPORT_TARGET_TEMPERATURE
@property
def unique_id(self) -> str:
"""Return a unique ID."""
return f"{self._heater_data['homeId']}_{self._heater_data['id']}"
@property
def name(self) -> str:
"""Return the name of the device, if any."""
return self._heater_data["name"]
@property
def hvac_mode(self) -> str:
"""Return hvac operation ie. heat, cool mode."""
if self._heater_data["heatingEnabled"]:
return HVAC_MODE_HEAT
return HVAC_MODE_OFF
@property
def icon(self) -> str:
"""Return nice icon for heater."""
if self.hvac_mode == HVAC_MODE_HEAT:
return "mdi:radiator"
return "mdi:radiator-off"
@property
def hvac_modes(self) -> list[str]:
"""Return the list of available hvac operation modes."""
return [HVAC_MODE_HEAT, HVAC_MODE_OFF]
self._attr_unique_id = f"{heater_data['homeId']}_{heater_data['id']}"
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, heater_data["id"])},
name=self.name,
manufacturer="Adax",
)
async def async_set_hvac_mode(self, hvac_mode: str) -> None:
"""Set hvac mode."""
if hvac_mode == HVAC_MODE_HEAT:
temperature = max(
self.min_temp, self._heater_data.get("targetTemperature", self.min_temp)
)
temperature = max(self.min_temp, self.target_temperature or self.min_temp)
await self._adax_data_handler.set_room_target_temperature(
self._heater_data["id"], temperature, True
self._device_id, temperature, True
)
elif hvac_mode == HVAC_MODE_OFF:
await self._adax_data_handler.set_room_target_temperature(
self._heater_data["id"], self.min_temp, False
self._device_id, self.min_temp, False
)
else:
return
await self._adax_data_handler.update()
@property
def temperature_unit(self) -> str:
"""Return the unit of measurement which this device uses."""
return TEMP_CELSIUS
@property
def min_temp(self) -> int:
"""Return the minimum temperature."""
return 5
@property
def max_temp(self) -> int:
"""Return the maximum temperature."""
return 35
@property
def current_temperature(self) -> float | None:
"""Return the current temperature."""
return self._heater_data.get("temperature")
@property
def target_temperature(self) -> int | None:
"""Return the temperature we try to reach."""
return self._heater_data.get("targetTemperature")
@property
def target_temperature_step(self) -> int:
"""Return the supported step of target temperature."""
return PRECISION_WHOLE
async def async_set_temperature(self, **kwargs: Any) -> None:
"""Set new target temperature."""
temperature = kwargs.get(ATTR_TEMPERATURE)
if temperature is None:
if (temperature := kwargs.get(ATTR_TEMPERATURE)) is None:
return
await self._adax_data_handler.set_room_target_temperature(
self._heater_data["id"], temperature, True
self._device_id, temperature, True
)
async def async_update(self) -> None:
"""Get the latest data."""
for room in await self._adax_data_handler.get_rooms():
if room["id"] == self._heater_data["id"]:
self._heater_data = room
return
if room["id"] != self._device_id:
continue
self._attr_name = room["name"]
self._attr_current_temperature = room.get("temperature")
self._attr_target_temperature = room.get("targetTemperature")
if room["heatingEnabled"]:
self._attr_hvac_mode = HVAC_MODE_HEAT
self._attr_icon = "mdi:radiator"
else:
self._attr_hvac_mode = HVAC_MODE_OFF
self._attr_icon = "mdi:radiator-off"
return
+1 -1
View File
@@ -4,7 +4,7 @@
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/adax",
"requirements": [
"adax==0.0.1"
"adax==0.1.1"
],
"codeowners": [
"@danielhiversen"
@@ -0,0 +1,19 @@
{
"config": {
"abort": {
"already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e"
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435",
"invalid_auth": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u0432\u0430\u043d\u0435"
},
"step": {
"user": {
"data": {
"host": "\u0425\u043e\u0441\u0442",
"password": "\u041f\u0430\u0440\u043e\u043b\u0430"
}
}
}
}
}
@@ -10,6 +10,7 @@
"step": {
"user": {
"data": {
"account_id": "ID \u00fa\u010dtu",
"host": "Hostitel",
"password": "Heslo"
}
@@ -0,0 +1,20 @@
{
"config": {
"abort": {
"already_configured": "El dispositivo ya est\u00e1 configurado"
},
"error": {
"cannot_connect": "No se pudo conectar",
"invalid_auth": "Autenticaci\u00f3n no v\u00e1lida"
},
"step": {
"user": {
"data": {
"account_id": "ID de la cuenta",
"host": "Host",
"password": "Contrase\u00f1a"
}
}
}
}
}
@@ -0,0 +1,20 @@
{
"config": {
"abort": {
"already_configured": "Az eszk\u00f6z m\u00e1r konfigur\u00e1lva van"
},
"error": {
"cannot_connect": "Nem siker\u00fclt csatlakozni",
"invalid_auth": "\u00c9rv\u00e9nytelen hiteles\u00edt\u00e9s"
},
"step": {
"user": {
"data": {
"account_id": "Fi\u00f3k ID",
"host": "C\u00edm",
"password": "Jelsz\u00f3"
}
}
}
}
}
@@ -0,0 +1,20 @@
{
"config": {
"abort": {
"already_configured": "Perangkat sudah dikonfigurasi"
},
"error": {
"cannot_connect": "Gagal terhubung",
"invalid_auth": "Autentikasi tidak valid"
},
"step": {
"user": {
"data": {
"account_id": "ID Akun",
"host": "Host",
"password": "Kata Sandi"
}
}
}
}
}
@@ -0,0 +1,20 @@
{
"config": {
"abort": {
"already_configured": "Enheten er allerede konfigurert"
},
"error": {
"cannot_connect": "Tilkobling mislyktes",
"invalid_auth": "Ugyldig godkjenning"
},
"step": {
"user": {
"data": {
"account_id": "Konto-ID",
"host": "Vert",
"password": "Passord"
}
}
}
}
}
@@ -0,0 +1,14 @@
{
"config": {
"error": {
"cannot_connect": "\u8fde\u63a5\u5931\u8d25"
},
"step": {
"user": {
"data": {
"password": "\u5bc6\u7801"
}
}
}
}
}
+8 -8
View File
@@ -196,14 +196,14 @@ class AdGuardHomeDeviceEntity(AdGuardHomeEntity):
@property
def device_info(self) -> DeviceInfo:
"""Return device information about this AdGuard Home instance."""
return {
"identifiers": {
(DOMAIN, self.adguard.host, self.adguard.port, self.adguard.base_path)
return DeviceInfo(
entry_type="service",
identifiers={
(DOMAIN, self.adguard.host, self.adguard.port, self.adguard.base_path) # type: ignore
},
"name": "AdGuard Home",
"manufacturer": "AdGuard Team",
"sw_version": self.hass.data[DOMAIN][self._entry.entry_id].get(
manufacturer="AdGuard Team",
name="AdGuard Home",
sw_version=self.hass.data[DOMAIN][self._entry.entry_id].get(
DATA_ADGUARD_VERSION
),
"entry_type": "service",
}
)
@@ -51,6 +51,7 @@ class AdGuardHomeFlowHandler(ConfigFlow, domain=DOMAIN):
self, errors: dict[str, str] | None = None
) -> FlowResult:
"""Show the Hass.io confirmation form to the user."""
assert self._hassio_discovery
return self.async_show_form(
step_id="hassio_confirm",
description_placeholders={"addon": self._hassio_discovery["addon"]},
@@ -73,11 +74,13 @@ class AdGuardHomeFlowHandler(ConfigFlow, domain=DOMAIN):
session = async_get_clientsession(self.hass, user_input[CONF_VERIFY_SSL])
username: str | None = user_input.get(CONF_USERNAME)
password: str | None = user_input.get(CONF_PASSWORD)
adguard = AdGuardHome(
user_input[CONF_HOST],
port=user_input[CONF_PORT],
username=user_input.get(CONF_USERNAME),
password=user_input.get(CONF_PASSWORD),
username=username, # type:ignore[arg-type]
password=password, # type:ignore[arg-type]
tls=user_input[CONF_SSL],
verify_ssl=user_input[CONF_VERIFY_SSL],
session=session,
@@ -122,6 +125,7 @@ class AdGuardHomeFlowHandler(ConfigFlow, domain=DOMAIN):
session = async_get_clientsession(self.hass, False)
assert self._hassio_discovery
adguard = AdGuardHome(
self._hassio_discovery[CONF_HOST],
port=self._hassio_discovery[CONF_PORT],
+3 -3
View File
@@ -62,7 +62,7 @@ class AdGuardHomeSensor(AdGuardHomeDeviceEntity, SensorEntity):
enabled_default: bool = True,
) -> None:
"""Initialize AdGuard Home sensor."""
self._state = None
self._state: int | str | None = None
self._unit_of_measurement = unit_of_measurement
self.measurement = measurement
@@ -82,12 +82,12 @@ class AdGuardHomeSensor(AdGuardHomeDeviceEntity, SensorEntity):
)
@property
def state(self) -> str | None:
def native_value(self) -> int | str | None:
"""Return the state of the sensor."""
return self._state
@property
def unit_of_measurement(self) -> str | None:
def native_unit_of_measurement(self) -> str | None:
"""Return the unit this state is expressed in."""
return self._unit_of_measurement
@@ -3,6 +3,9 @@
"abort": {
"existing_instance_updated": "\u0410\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0430\u0442\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f."
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"
},
"step": {
"hassio_confirm": {
"description": "\u0418\u0441\u043a\u0430\u0442\u0435 \u043b\u0438 \u0434\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u0442\u0435 Home Assistant \u0434\u0430 \u0441\u0435 \u0441\u0432\u044a\u0440\u0437\u0432\u0430 \u0441 AdGuard Home, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0435\u043d \u043e\u0442 Supervisor \u0434\u043e\u0431\u0430\u0432\u043a\u0430\u0442\u0430: {addon} ?",
@@ -10,7 +13,9 @@
},
"user": {
"data": {
"host": "\u0425\u043e\u0441\u0442",
"password": "\u041f\u0430\u0440\u043e\u043b\u0430",
"port": "\u041f\u043e\u0440\u0442",
"ssl": "AdGuard Home \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 SSL \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442",
"username": "\u041f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0441\u043a\u043e \u0438\u043c\u0435",
"verify_ssl": "AdGuard Home \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043d\u0430\u0434\u0435\u0436\u0434\u0435\u043d \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442"
@@ -17,9 +17,9 @@
"host": "H\u00f4te",
"password": "Mot de passe",
"port": "Port",
"ssl": "AdGuard Home utilise un certificat SSL",
"ssl": "Utilise un certificat SSL",
"username": "Nom d'utilisateur",
"verify_ssl": "AdGuard Home utilise un certificat appropri\u00e9"
"verify_ssl": "V\u00e9rifier le certificat SSL"
},
"description": "Configurez votre instance AdGuard Home pour permettre la surveillance et le contr\u00f4le."
}
@@ -7,6 +7,9 @@
"cannot_connect": "\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05db\u05e9\u05dc\u05d4"
},
"step": {
"hassio_confirm": {
"title": "AdGuard Home \u05d1\u05d0\u05de\u05e6\u05e2\u05d5\u05ea \u05d4\u05e8\u05d7\u05d1\u05ea Assistant Assistant"
},
"user": {
"data": {
"host": "\u05de\u05d0\u05e8\u05d7",
@@ -1,25 +1,27 @@
{
"config": {
"abort": {
"already_configured": "A szolg\u00e1ltat\u00e1s m\u00e1r konfigur\u00e1lva van"
"already_configured": "A szolg\u00e1ltat\u00e1s m\u00e1r konfigur\u00e1lva van",
"existing_instance_updated": "Friss\u00edtette a megl\u00e9v\u0151 konfigur\u00e1ci\u00f3t."
},
"error": {
"cannot_connect": "Sikertelen csatlakoz\u00e1s"
},
"step": {
"hassio_confirm": {
"description": "Be szeretn\u00e9 \u00e1ll\u00edtani a Home Assistant-ot, hogy csatlakozzon az AdGuard Home-hoz, amelyet a kieg\u00e9sz\u00edt\u0151 biztos\u00edt: {addon} ?",
"description": "Szeretn\u00e9 be\u00e1ll\u00edtani Home Assistantot AdGuard Home-hoz val\u00f3 csatlakoz\u00e1shoz, {addon} kieg\u00e9sz\u00edt\u0151 \u00e1ltal?",
"title": "Az AdGuard Home a Home Assistant kieg\u00e9sz\u00edt\u0151 seg\u00edts\u00e9g\u00e9vel"
},
"user": {
"data": {
"host": "Hoszt",
"host": "C\u00edm",
"password": "Jelsz\u00f3",
"port": "Port",
"ssl": "SSL tan\u00fas\u00edtv\u00e1ny haszn\u00e1lata",
"username": "Felhaszn\u00e1l\u00f3n\u00e9v",
"verify_ssl": "SSL-tan\u00fas\u00edtv\u00e1ny ellen\u0151rz\u00e9se"
}
},
"description": "\u00c1ll\u00edtsa be az AdGuard Home p\u00e9ld\u00e1nyt, hogy lehet\u0151v\u00e9 tegye a fel\u00fcgyeletet \u00e9s az ir\u00e1ny\u00edt\u00e1st."
}
}
}
@@ -9,7 +9,7 @@
},
"step": {
"hassio_confirm": {
"description": "Ingin mengonfigurasi Home Assistant untuk terhubung ke AdGuard Home yang disediakan oleh add-on Supervisor {addon}?",
"description": "Ingin mengonfigurasi Home Assistant untuk terhubung ke AdGuard Home yang disediakan oleh add-on: {addon}?",
"title": "AdGuard Home melalui add-on Home Assistant"
},
"user": {
@@ -1,14 +1,23 @@
{
"config": {
"abort": {
"already_configured": "\u670d\u52a1\u5df2\u88ab\u914d\u7f6e",
"existing_instance_updated": "\u66f4\u65b0\u4e86\u73b0\u6709\u914d\u7f6e\u3002"
},
"error": {
"cannot_connect": "\u8fde\u63a5\u5931\u8d25"
},
"step": {
"user": {
"data": {
"host": "\u4e3b\u673a\u5730\u5740",
"password": "\u5bc6\u7801",
"username": "\u7528\u6237\u540d"
}
"port": "\u7aef\u53e3",
"ssl": "\u4f7f\u7528 SSL \u8bc1\u4e66\u51ed\u8bc1",
"username": "\u7528\u6237\u540d",
"verify_ssl": "\u9a8c\u8bc1 SSL \u8bc1\u4e66\u51ed\u8bc1"
},
"description": "\u8bbe\u7f6e\u60a8\u7684 AdGuard Home \u5b9e\u4f8b\u4ee5\u5141\u8bb8\u76d1\u89c6\u548c\u63a7\u5236"
}
}
}
+4 -4
View File
@@ -91,13 +91,13 @@ class AdsCover(AdsEntity, CoverEntity):
):
"""Initialize AdsCover entity."""
super().__init__(ads_hub, name, ads_var_is_closed)
if self._ads_var is None:
if self._attr_unique_id is None:
if ads_var_position is not None:
self._unique_id = ads_var_position
self._attr_unique_id = ads_var_position
elif ads_var_pos_set is not None:
self._unique_id = ads_var_pos_set
self._attr_unique_id = ads_var_pos_set
elif ads_var_open is not None:
self._unique_id = ads_var_open
self._attr_unique_id = ads_var_open
self._state_dict[STATE_KEY_POSITION] = None
self._ads_var_position = ads_var_position
+2 -2
View File
@@ -50,7 +50,7 @@ class AdsSensor(AdsEntity, SensorEntity):
def __init__(self, ads_hub, ads_var, ads_type, name, unit_of_measurement, factor):
"""Initialize AdsSensor entity."""
super().__init__(ads_hub, name, ads_var)
self._attr_unit_of_measurement = unit_of_measurement
self._attr_native_unit_of_measurement = unit_of_measurement
self._ads_type = ads_type
self._factor = factor
@@ -64,6 +64,6 @@ class AdsSensor(AdsEntity, SensorEntity):
)
@property
def state(self) -> StateType:
def native_value(self) -> StateType:
"""Return the state of the device."""
return self._state_dict[STATE_KEY_STATE]
@@ -12,7 +12,7 @@ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, Upda
from .const import ADVANTAGE_AIR_RETRY, DOMAIN
ADVANTAGE_AIR_SYNC_INTERVAL = 15
PLATFORMS = ["climate", "cover", "binary_sensor", "sensor", "switch"]
PLATFORMS = ["binary_sensor", "climate", "cover", "select", "sensor", "switch"]
_LOGGER = logging.getLogger(__name__)
@@ -5,6 +5,7 @@ from homeassistant.components.binary_sensor import (
DEVICE_CLASS_PROBLEM,
BinarySensorEntity,
)
from homeassistant.const import ENTITY_CATEGORY_DIAGNOSTIC
from .const import DOMAIN as ADVANTAGE_AIR_DOMAIN
from .entity import AdvantageAirEntity
@@ -34,6 +35,7 @@ class AdvantageAirZoneFilter(AdvantageAirEntity, BinarySensorEntity):
"""Advantage Air Filter."""
_attr_device_class = DEVICE_CLASS_PROBLEM
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key):
"""Initialize an Advantage Air Filter."""
@@ -65,13 +67,14 @@ class AdvantageAirZoneMotion(AdvantageAirEntity, BinarySensorEntity):
@property
def is_on(self):
"""Return if motion is detect."""
return self._zone["motion"]
return self._zone["motion"] == 20
class AdvantageAirZoneMyZone(AdvantageAirEntity, BinarySensorEntity):
"""Advantage Air Zone MyZone."""
_attr_entity_registry_enabled_default = False
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key, zone_key):
"""Initialize an Advantage Air Zone MyZone."""
@@ -15,7 +15,6 @@ from homeassistant.components.climate.const import (
SUPPORT_TARGET_TEMPERATURE,
)
from homeassistant.const import ATTR_TEMPERATURE, PRECISION_WHOLE, TEMP_CELSIUS
from homeassistant.core import callback
from homeassistant.helpers import entity_platform
from .const import (
@@ -166,19 +165,22 @@ class AdvantageAirZone(AdvantageAirClimateEntity):
f'{self.coordinator.data["system"]["rid"]}-{ac_key}-{zone_key}'
)
async def async_added_to_hass(self):
"""When entity is added to hass."""
self.async_on_remove(self.coordinator.async_add_listener(self._update_callback))
@callback
def _update_callback(self) -> None:
"""Load data from integration."""
self._attr_current_temperature = self._zone["measuredTemp"]
self._attr_target_temperature = self._zone["setTemp"]
self._attr_hvac_mode = HVAC_MODE_OFF
@property
def hvac_mode(self):
"""Return the current state as HVAC mode."""
if self._zone["state"] == ADVANTAGE_AIR_STATE_OPEN:
self._attr_hvac_mode = HVAC_MODE_FAN_ONLY
self.async_write_ha_state()
return HVAC_MODE_FAN_ONLY
return HVAC_MODE_OFF
@property
def current_temperature(self):
"""Return the current temperature."""
return self._zone["measuredTemp"]
@property
def target_temperature(self):
"""Return the target temperature."""
return self._zone["setTemp"]
async def async_set_hvac_mode(self, hvac_mode):
"""Set the HVAC Mode and State."""
@@ -1,5 +1,6 @@
"""Advantage Air parent entity class."""
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from .const import DOMAIN
@@ -14,13 +15,13 @@ class AdvantageAirEntity(CoordinatorEntity):
self.async_change = instance["async_change"]
self.ac_key = ac_key
self.zone_key = zone_key
self._attr_device_info = {
"identifiers": {(DOMAIN, self.coordinator.data["system"]["rid"])},
"name": self.coordinator.data["system"]["name"],
"manufacturer": "Advantage Air",
"model": self.coordinator.data["system"]["sysType"],
"sw_version": self.coordinator.data["system"]["myAppRev"],
}
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, self.coordinator.data["system"]["rid"])},
manufacturer="Advantage Air",
model=self.coordinator.data["system"]["sysType"],
name=self.coordinator.data["system"]["name"],
sw_version=self.coordinator.data["system"]["myAppRev"],
)
@property
def _ac(self):
@@ -0,0 +1,53 @@
"""Select platform for Advantage Air integration."""
from homeassistant.components.select import SelectEntity
from .const import DOMAIN as ADVANTAGE_AIR_DOMAIN
from .entity import AdvantageAirEntity
ADVANTAGE_AIR_INACTIVE = "Inactive"
async def async_setup_entry(hass, config_entry, async_add_entities):
"""Set up AdvantageAir toggle platform."""
instance = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
entities = []
for ac_key in instance["coordinator"].data["aircons"]:
entities.append(AdvantageAirMyZone(instance, ac_key))
async_add_entities(entities)
class AdvantageAirMyZone(AdvantageAirEntity, SelectEntity):
"""Representation of Advantage Air MyZone control."""
_attr_icon = "mdi:home-thermometer"
_attr_options = [ADVANTAGE_AIR_INACTIVE]
_number_to_name = {0: ADVANTAGE_AIR_INACTIVE}
_name_to_number = {ADVANTAGE_AIR_INACTIVE: 0}
def __init__(self, instance, ac_key):
"""Initialize an Advantage Air MyZone control."""
super().__init__(instance, ac_key)
self._attr_name = f'{self._ac["name"]} MyZone'
self._attr_unique_id = (
f'{self.coordinator.data["system"]["rid"]}-{ac_key}-myzone'
)
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):
"""Return the fresh air status."""
return self._number_to_name[self._ac["myZone"]]
async def async_select_option(self, option):
"""Set the MyZone."""
await self.async_change(
{self.ac_key: {"info": {"myZone": self._name_to_number[option]}}}
)
@@ -1,8 +1,12 @@
"""Sensor platform for Advantage Air integration."""
import voluptuous as vol
from homeassistant.components.sensor import STATE_CLASS_MEASUREMENT, SensorEntity
from homeassistant.const import PERCENTAGE, TEMP_CELSIUS
from homeassistant.components.sensor import (
DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT,
SensorEntity,
)
from homeassistant.const import ENTITY_CATEGORY_DIAGNOSTIC, PERCENTAGE, TEMP_CELSIUS
from homeassistant.helpers import config_validation as cv, entity_platform
from .const import ADVANTAGE_AIR_STATE_OPEN, DOMAIN as ADVANTAGE_AIR_DOMAIN
@@ -45,7 +49,8 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
class AdvantageAirTimeTo(AdvantageAirEntity, SensorEntity):
"""Representation of Advantage Air timer control."""
_attr_unit_of_measurement = ADVANTAGE_AIR_SET_COUNTDOWN_UNIT
_attr_native_unit_of_measurement = ADVANTAGE_AIR_SET_COUNTDOWN_UNIT
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key, action):
"""Initialize the Advantage Air timer control."""
@@ -58,7 +63,7 @@ class AdvantageAirTimeTo(AdvantageAirEntity, SensorEntity):
)
@property
def state(self):
def native_value(self):
"""Return the current value."""
return self._ac[self._time_key]
@@ -78,8 +83,9 @@ class AdvantageAirTimeTo(AdvantageAirEntity, SensorEntity):
class AdvantageAirZoneVent(AdvantageAirEntity, SensorEntity):
"""Representation of Advantage Air Zone Vent Sensor."""
_attr_unit_of_measurement = PERCENTAGE
_attr_native_unit_of_measurement = PERCENTAGE
_attr_state_class = STATE_CLASS_MEASUREMENT
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key, zone_key):
"""Initialize an Advantage Air Zone Vent Sensor."""
@@ -90,7 +96,7 @@ class AdvantageAirZoneVent(AdvantageAirEntity, SensorEntity):
)
@property
def state(self):
def native_value(self):
"""Return the current value of the air vent."""
if self._zone["state"] == ADVANTAGE_AIR_STATE_OPEN:
return self._zone["value"]
@@ -107,19 +113,20 @@ class AdvantageAirZoneVent(AdvantageAirEntity, SensorEntity):
class AdvantageAirZoneSignal(AdvantageAirEntity, SensorEntity):
"""Representation of Advantage Air Zone wireless signal sensor."""
_attr_unit_of_measurement = PERCENTAGE
_attr_native_unit_of_measurement = PERCENTAGE
_attr_state_class = STATE_CLASS_MEASUREMENT
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key, zone_key):
"""Initialize an Advantage Air Zone wireless signal sensor."""
super().__init__(instance, ac_key, zone_key=zone_key)
super().__init__(instance, ac_key, zone_key)
self._attr_name = f'{self._zone["name"]} Signal'
self._attr_unique_id = (
f'{self.coordinator.data["system"]["rid"]}-{ac_key}-{zone_key}-signal'
)
@property
def state(self):
def native_value(self):
"""Return the current value of the wireless signal."""
return self._zone["rssi"]
@@ -138,20 +145,23 @@ class AdvantageAirZoneSignal(AdvantageAirEntity, SensorEntity):
class AdvantageAirZoneTemp(AdvantageAirEntity, SensorEntity):
"""Representation of Advantage Air Zone wireless signal sensor."""
"""Representation of Advantage Air Zone temperature sensor."""
_attr_unit_of_measurement = TEMP_CELSIUS
_attr_native_unit_of_measurement = TEMP_CELSIUS
_attr_device_class = DEVICE_CLASS_TEMPERATURE
_attr_state_class = STATE_CLASS_MEASUREMENT
_attr_icon = "mdi:thermometer"
_attr_entity_registry_enabled_default = False
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key, zone_key):
"""Initialize an Advantage Air Zone Temp Sensor."""
super().__init__(instance, ac_key, zone_key)
self._attr_name = f'{self._zone["name"]} Temperature'
self._attr_unique_id = f'{self.coordinator.data["system"]["rid"]}-{self.ac_key}-{self.zone_key}-temp'
self._attr_unique_id = (
f'{self.coordinator.data["system"]["rid"]}-{ac_key}-{zone_key}-temp'
)
@property
def state(self):
def native_value(self):
"""Return the current value of the measured temperature."""
return self._zone["measuredTemp"]
@@ -0,0 +1,18 @@
{
"config": {
"abort": {
"already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e"
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"
},
"step": {
"user": {
"data": {
"ip_address": "IP \u0430\u0434\u0440\u0435\u0441",
"port": "\u041f\u043e\u0440\u0442"
}
}
}
}
}
@@ -2,6 +2,7 @@
"config": {
"step": {
"user": {
"description": "Con\u00e9ctese a la API de su tableta de pared Advantage Air.",
"title": "Conectar"
}
}
+1 -1
View File
@@ -52,7 +52,7 @@ async def async_update_options(hass: HomeAssistant, entry: ConfigEntry) -> None:
await hass.config_entries.async_reload(entry.entry_id)
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry):
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Unload a config entry."""
unload_ok = await hass.config_entries.async_unload_platforms(entry, PLATFORMS)
+153 -115
View File
@@ -1,5 +1,10 @@
"""Constant values for the AEMET OpenData component."""
from __future__ import annotations
from homeassistant.components.sensor import (
STATE_CLASS_MEASUREMENT,
SensorEntityDescription,
)
from homeassistant.components.weather import (
ATTR_CONDITION_CLEAR_NIGHT,
ATTR_CONDITION_CLOUDY,
@@ -40,9 +45,6 @@ DEFAULT_NAME = "AEMET"
DOMAIN = "aemet"
ENTRY_NAME = "name"
ENTRY_WEATHER_COORDINATOR = "weather_coordinator"
SENSOR_NAME = "sensor_name"
SENSOR_UNIT = "sensor_unit"
SENSOR_DEVICE_CLASS = "sensor_device_class"
ATTR_API_CONDITION = "condition"
ATTR_API_FORECAST_DAILY = "forecast-daily"
@@ -200,118 +202,154 @@ FORECAST_MODE_ATTR_API = {
FORECAST_MODE_HOURLY: ATTR_API_FORECAST_HOURLY,
}
FORECAST_SENSOR_TYPES = {
ATTR_FORECAST_CONDITION: {
SENSOR_NAME: "Condition",
},
ATTR_FORECAST_PRECIPITATION: {
SENSOR_NAME: "Precipitation",
SENSOR_UNIT: PRECIPITATION_MILLIMETERS_PER_HOUR,
},
ATTR_FORECAST_PRECIPITATION_PROBABILITY: {
SENSOR_NAME: "Precipitation probability",
SENSOR_UNIT: PERCENTAGE,
},
ATTR_FORECAST_TEMP: {
SENSOR_NAME: "Temperature",
SENSOR_UNIT: TEMP_CELSIUS,
SENSOR_DEVICE_CLASS: DEVICE_CLASS_TEMPERATURE,
},
ATTR_FORECAST_TEMP_LOW: {
SENSOR_NAME: "Temperature Low",
SENSOR_UNIT: TEMP_CELSIUS,
SENSOR_DEVICE_CLASS: DEVICE_CLASS_TEMPERATURE,
},
ATTR_FORECAST_TIME: {
SENSOR_NAME: "Time",
SENSOR_DEVICE_CLASS: DEVICE_CLASS_TIMESTAMP,
},
ATTR_FORECAST_WIND_BEARING: {
SENSOR_NAME: "Wind bearing",
SENSOR_UNIT: DEGREE,
},
ATTR_FORECAST_WIND_SPEED: {
SENSOR_NAME: "Wind speed",
SENSOR_UNIT: SPEED_KILOMETERS_PER_HOUR,
},
}
WEATHER_SENSOR_TYPES = {
ATTR_API_CONDITION: {
SENSOR_NAME: "Condition",
},
ATTR_API_HUMIDITY: {
SENSOR_NAME: "Humidity",
SENSOR_UNIT: PERCENTAGE,
SENSOR_DEVICE_CLASS: DEVICE_CLASS_HUMIDITY,
},
ATTR_API_PRESSURE: {
SENSOR_NAME: "Pressure",
SENSOR_UNIT: PRESSURE_HPA,
SENSOR_DEVICE_CLASS: DEVICE_CLASS_PRESSURE,
},
ATTR_API_RAIN: {
SENSOR_NAME: "Rain",
SENSOR_UNIT: PRECIPITATION_MILLIMETERS_PER_HOUR,
},
ATTR_API_RAIN_PROB: {
SENSOR_NAME: "Rain probability",
SENSOR_UNIT: PERCENTAGE,
},
ATTR_API_SNOW: {
SENSOR_NAME: "Snow",
SENSOR_UNIT: PRECIPITATION_MILLIMETERS_PER_HOUR,
},
ATTR_API_SNOW_PROB: {
SENSOR_NAME: "Snow probability",
SENSOR_UNIT: PERCENTAGE,
},
ATTR_API_STATION_ID: {
SENSOR_NAME: "Station ID",
},
ATTR_API_STATION_NAME: {
SENSOR_NAME: "Station name",
},
ATTR_API_STATION_TIMESTAMP: {
SENSOR_NAME: "Station timestamp",
SENSOR_DEVICE_CLASS: DEVICE_CLASS_TIMESTAMP,
},
ATTR_API_STORM_PROB: {
SENSOR_NAME: "Storm probability",
SENSOR_UNIT: PERCENTAGE,
},
ATTR_API_TEMPERATURE: {
SENSOR_NAME: "Temperature",
SENSOR_UNIT: TEMP_CELSIUS,
SENSOR_DEVICE_CLASS: DEVICE_CLASS_TEMPERATURE,
},
ATTR_API_TEMPERATURE_FEELING: {
SENSOR_NAME: "Temperature feeling",
SENSOR_UNIT: TEMP_CELSIUS,
SENSOR_DEVICE_CLASS: DEVICE_CLASS_TEMPERATURE,
},
ATTR_API_TOWN_ID: {
SENSOR_NAME: "Town ID",
},
ATTR_API_TOWN_NAME: {
SENSOR_NAME: "Town name",
},
ATTR_API_TOWN_TIMESTAMP: {
SENSOR_NAME: "Town timestamp",
SENSOR_DEVICE_CLASS: DEVICE_CLASS_TIMESTAMP,
},
ATTR_API_WIND_BEARING: {
SENSOR_NAME: "Wind bearing",
SENSOR_UNIT: DEGREE,
},
ATTR_API_WIND_MAX_SPEED: {
SENSOR_NAME: "Wind max speed",
SENSOR_UNIT: SPEED_KILOMETERS_PER_HOUR,
},
ATTR_API_WIND_SPEED: {
SENSOR_NAME: "Wind speed",
SENSOR_UNIT: SPEED_KILOMETERS_PER_HOUR,
},
}
FORECAST_SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
SensorEntityDescription(
key=ATTR_FORECAST_CONDITION,
name="Condition",
),
SensorEntityDescription(
key=ATTR_FORECAST_PRECIPITATION,
name="Precipitation",
native_unit_of_measurement=PRECIPITATION_MILLIMETERS_PER_HOUR,
),
SensorEntityDescription(
key=ATTR_FORECAST_PRECIPITATION_PROBABILITY,
name="Precipitation probability",
native_unit_of_measurement=PERCENTAGE,
),
SensorEntityDescription(
key=ATTR_FORECAST_TEMP,
name="Temperature",
native_unit_of_measurement=TEMP_CELSIUS,
device_class=DEVICE_CLASS_TEMPERATURE,
),
SensorEntityDescription(
key=ATTR_FORECAST_TEMP_LOW,
name="Temperature Low",
native_unit_of_measurement=TEMP_CELSIUS,
device_class=DEVICE_CLASS_TEMPERATURE,
),
SensorEntityDescription(
key=ATTR_FORECAST_TIME,
name="Time",
device_class=DEVICE_CLASS_TIMESTAMP,
),
SensorEntityDescription(
key=ATTR_FORECAST_WIND_BEARING,
name="Wind bearing",
native_unit_of_measurement=DEGREE,
),
SensorEntityDescription(
key=ATTR_FORECAST_WIND_SPEED,
name="Wind speed",
native_unit_of_measurement=SPEED_KILOMETERS_PER_HOUR,
),
)
WEATHER_SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
SensorEntityDescription(
key=ATTR_API_CONDITION,
name="Condition",
),
SensorEntityDescription(
key=ATTR_API_HUMIDITY,
name="Humidity",
native_unit_of_measurement=PERCENTAGE,
device_class=DEVICE_CLASS_HUMIDITY,
state_class=STATE_CLASS_MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_PRESSURE,
name="Pressure",
native_unit_of_measurement=PRESSURE_HPA,
device_class=DEVICE_CLASS_PRESSURE,
state_class=STATE_CLASS_MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_RAIN,
name="Rain",
native_unit_of_measurement=PRECIPITATION_MILLIMETERS_PER_HOUR,
),
SensorEntityDescription(
key=ATTR_API_RAIN_PROB,
name="Rain probability",
native_unit_of_measurement=PERCENTAGE,
state_class=STATE_CLASS_MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_SNOW,
name="Snow",
native_unit_of_measurement=PRECIPITATION_MILLIMETERS_PER_HOUR,
),
SensorEntityDescription(
key=ATTR_API_SNOW_PROB,
name="Snow probability",
native_unit_of_measurement=PERCENTAGE,
state_class=STATE_CLASS_MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_STATION_ID,
name="Station ID",
),
SensorEntityDescription(
key=ATTR_API_STATION_NAME,
name="Station name",
),
SensorEntityDescription(
key=ATTR_API_STATION_TIMESTAMP,
name="Station timestamp",
device_class=DEVICE_CLASS_TIMESTAMP,
),
SensorEntityDescription(
key=ATTR_API_STORM_PROB,
name="Storm probability",
native_unit_of_measurement=PERCENTAGE,
state_class=STATE_CLASS_MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_TEMPERATURE,
name="Temperature",
native_unit_of_measurement=TEMP_CELSIUS,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_TEMPERATURE_FEELING,
name="Temperature feeling",
native_unit_of_measurement=TEMP_CELSIUS,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=STATE_CLASS_MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_TOWN_ID,
name="Town ID",
),
SensorEntityDescription(
key=ATTR_API_TOWN_NAME,
name="Town name",
),
SensorEntityDescription(
key=ATTR_API_TOWN_TIMESTAMP,
name="Town timestamp",
device_class=DEVICE_CLASS_TIMESTAMP,
),
SensorEntityDescription(
key=ATTR_API_WIND_BEARING,
name="Wind bearing",
native_unit_of_measurement=DEGREE,
state_class=STATE_CLASS_MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_WIND_MAX_SPEED,
name="Wind max speed",
native_unit_of_measurement=SPEED_KILOMETERS_PER_HOUR,
),
SensorEntityDescription(
key=ATTR_API_WIND_SPEED,
name="Wind speed",
native_unit_of_measurement=SPEED_KILOMETERS_PER_HOUR,
state_class=STATE_CLASS_MEASUREMENT,
),
)
WIND_BEARING_MAP = {
"C": None,
+43 -55
View File
@@ -1,5 +1,7 @@
"""Support for the AEMET OpenData service."""
from homeassistant.components.sensor import SensorEntity
from __future__ import annotations
from homeassistant.components.sensor import SensorEntity, SensorEntityDescription
from homeassistant.const import ATTR_ATTRIBUTION
from homeassistant.helpers.update_coordinator import CoordinatorEntity
@@ -14,9 +16,6 @@ from .const import (
FORECAST_MONITORED_CONDITIONS,
FORECAST_SENSOR_TYPES,
MONITORED_CONDITIONS,
SENSOR_DEVICE_CLASS,
SENSOR_NAME,
SENSOR_UNIT,
WEATHER_SENSOR_TYPES,
)
from .weather_update_coordinator import WeatherUpdateCoordinator
@@ -28,37 +27,30 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
name = domain_data[ENTRY_NAME]
weather_coordinator = domain_data[ENTRY_WEATHER_COORDINATOR]
weather_sensor_types = WEATHER_SENSOR_TYPES
forecast_sensor_types = FORECAST_SENSOR_TYPES
entities = []
for sensor_type in MONITORED_CONDITIONS:
unique_id = f"{config_entry.unique_id}-{sensor_type}"
entities.append(
AemetSensor(
name,
unique_id,
sensor_type,
weather_sensor_types[sensor_type],
unique_id = config_entry.unique_id
entities: list[AbstractAemetSensor] = [
AemetSensor(name, unique_id, weather_coordinator, description)
for description in WEATHER_SENSOR_TYPES
if description.key in MONITORED_CONDITIONS
]
entities.extend(
[
AemetForecastSensor(
name_prefix,
unique_id_prefix,
weather_coordinator,
mode,
description,
)
)
for mode in FORECAST_MODES:
name = f"{domain_data[ENTRY_NAME]} {mode}"
for sensor_type in FORECAST_MONITORED_CONDITIONS:
unique_id = f"{config_entry.unique_id}-forecast-{mode}-{sensor_type}"
entities.append(
AemetForecastSensor(
f"{name} Forecast",
unique_id,
sensor_type,
forecast_sensor_types[sensor_type],
weather_coordinator,
mode,
)
for mode in FORECAST_MODES
if (
(name_prefix := f"{domain_data[ENTRY_NAME]} {mode} Forecast")
and (unique_id_prefix := f"{unique_id}-forecast-{mode}")
)
for description in FORECAST_SENSOR_TYPES
if description.key in FORECAST_MONITORED_CONDITIONS
]
)
async_add_entities(entities)
@@ -72,20 +64,14 @@ class AbstractAemetSensor(CoordinatorEntity, SensorEntity):
self,
name,
unique_id,
sensor_type,
sensor_configuration,
coordinator: WeatherUpdateCoordinator,
description: SensorEntityDescription,
):
"""Initialize the sensor."""
super().__init__(coordinator)
self._name = name
self._unique_id = unique_id
self._sensor_type = sensor_type
self._sensor_name = sensor_configuration[SENSOR_NAME]
self._attr_name = f"{self._name} {self._sensor_name}"
self._attr_unique_id = self._unique_id
self._attr_device_class = sensor_configuration.get(SENSOR_DEVICE_CLASS)
self._attr_unit_of_measurement = sensor_configuration.get(SENSOR_UNIT)
self.entity_description = description
self._attr_name = f"{name} {description.name}"
self._attr_unique_id = unique_id
class AemetSensor(AbstractAemetSensor):
@@ -95,20 +81,21 @@ class AemetSensor(AbstractAemetSensor):
self,
name,
unique_id,
sensor_type,
sensor_configuration,
weather_coordinator: WeatherUpdateCoordinator,
description: SensorEntityDescription,
):
"""Initialize the sensor."""
super().__init__(
name, unique_id, sensor_type, sensor_configuration, weather_coordinator
name=name,
unique_id=f"{unique_id}-{description.key}",
coordinator=weather_coordinator,
description=description,
)
self._weather_coordinator = weather_coordinator
@property
def state(self):
def native_value(self):
"""Return the state of the device."""
return self._weather_coordinator.data.get(self._sensor_type)
return self.coordinator.data.get(self.entity_description.key)
class AemetForecastSensor(AbstractAemetSensor):
@@ -118,28 +105,29 @@ class AemetForecastSensor(AbstractAemetSensor):
self,
name,
unique_id,
sensor_type,
sensor_configuration,
weather_coordinator: WeatherUpdateCoordinator,
forecast_mode,
description: SensorEntityDescription,
):
"""Initialize the sensor."""
super().__init__(
name, unique_id, sensor_type, sensor_configuration, weather_coordinator
name=name,
unique_id=f"{unique_id}-{description.key}",
coordinator=weather_coordinator,
description=description,
)
self._weather_coordinator = weather_coordinator
self._forecast_mode = forecast_mode
self._attr_entity_registry_enabled_default = (
self._forecast_mode == FORECAST_MODE_DAILY
)
@property
def state(self):
def native_value(self):
"""Return the state of the device."""
forecast = None
forecasts = self._weather_coordinator.data.get(
forecasts = self.coordinator.data.get(
FORECAST_MODE_ATTR_API[self._forecast_mode]
)
if forecasts:
forecast = forecasts[0].get(self._sensor_type)
forecast = forecasts[0].get(self.entity_description.key)
return forecast
@@ -5,8 +5,18 @@
"data": {
"name": "Nombre de la integraci\u00f3n"
},
"description": "Configure la integraci\u00f3n de AEMET OpenData. Para generar la clave API vaya a https://opendata.aemet.es/centrodedescargas/altaUsuario",
"title": "AEMET OpenData"
}
}
},
"options": {
"step": {
"init": {
"data": {
"station_updates": "Recopile datos de las estaciones meteorol\u00f3gicas de AEMET"
}
}
}
}
}
@@ -1,4 +1,6 @@
"""Weather data coordinator for the AEMET OpenData service."""
from __future__ import annotations
from dataclasses import dataclass, field
from datetime import timedelta
import logging
@@ -95,7 +97,7 @@ def format_condition(condition: str) -> str:
return condition
def format_float(value) -> float:
def format_float(value) -> float | None:
"""Try converting string to float."""
try:
return float(value)
@@ -103,7 +105,7 @@ def format_float(value) -> float:
return None
def format_int(value) -> int:
def format_int(value) -> int | None:
"""Try converting string to int."""
try:
return int(value)
+7 -6
View File
@@ -1,6 +1,7 @@
"""Support for non-delivered packages recorded in AfterShip."""
from __future__ import annotations
from http import HTTPStatus
import logging
from typing import Any, Final
@@ -11,7 +12,7 @@ from homeassistant.components.sensor import (
PLATFORM_SCHEMA as BASE_PLATFORM_SCHEMA,
SensorEntity,
)
from homeassistant.const import ATTR_ATTRIBUTION, CONF_API_KEY, CONF_NAME, HTTP_OK
from homeassistant.const import CONF_API_KEY, CONF_NAME
from homeassistant.core import HomeAssistant
from homeassistant.helpers.aiohttp_client import async_get_clientsession
import homeassistant.helpers.config_validation as cv
@@ -64,7 +65,7 @@ async def async_setup_platform(
await aftership.get_trackings()
if not aftership.meta or aftership.meta["code"] != HTTP_OK:
if not aftership.meta or aftership.meta["code"] != HTTPStatus.OK:
_LOGGER.error(
"No tracking data found. Check API key is correct: %s", aftership.meta
)
@@ -109,7 +110,8 @@ async def async_setup_platform(
class AfterShipSensor(SensorEntity):
"""Representation of a AfterShip sensor."""
_attr_unit_of_measurement: str = "packages"
_attr_attribution = ATTRIBUTION
_attr_native_unit_of_measurement: str = "packages"
_attr_icon: str = ICON
def __init__(self, aftership: Tracking, name: str) -> None:
@@ -120,7 +122,7 @@ class AfterShipSensor(SensorEntity):
self._attr_name = name
@property
def state(self) -> int | None:
def native_value(self) -> int | None:
"""Return the state of the sensor."""
return self._state
@@ -150,7 +152,7 @@ class AfterShipSensor(SensorEntity):
if not self.aftership.meta:
_LOGGER.error("Unknown errors when querying")
return
if self.aftership.meta["code"] != HTTP_OK:
if self.aftership.meta["code"] != HTTPStatus.OK:
_LOGGER.error(
"Errors when querying AfterShip. %s", str(self.aftership.meta)
)
@@ -191,7 +193,6 @@ class AfterShipSensor(SensorEntity):
_LOGGER.debug("Ignoring %s as it has status: %s", name, status)
self._attributes = {
ATTR_ATTRIBUTION: ATTRIBUTION,
**status_counts,
ATTR_TRACKINGS: trackings,
}
@@ -11,6 +11,7 @@ from homeassistant.const import (
STATE_ALARM_ARMED_NIGHT,
STATE_ALARM_DISARMED,
)
from homeassistant.helpers.entity import DeviceInfo
from .const import CONNECTION, DOMAIN as AGENT_DOMAIN
@@ -45,12 +46,12 @@ class AgentBaseStation(AlarmControlPanelEntity):
self._client = client
self._attr_name = f"{client.name} {CONST_ALARM_CONTROL_PANEL_NAME}"
self._attr_unique_id = f"{client.unique}_CP"
self._attr_device_info = {
"identifiers": {(AGENT_DOMAIN, client.unique)},
"manufacturer": "Agent",
"model": CONST_ALARM_CONTROL_PANEL_NAME,
"sw_version": client.version,
}
self._attr_device_info = DeviceInfo(
identifiers={(AGENT_DOMAIN, client.unique)},
manufacturer="Agent",
model=CONST_ALARM_CONTROL_PANEL_NAME,
sw_version=client.version,
)
async def async_update(self):
"""Update the state of the device."""
+19 -11
View File
@@ -13,6 +13,7 @@ from homeassistant.components.mjpeg.camera import (
)
from homeassistant.const import ATTR_ATTRIBUTION, CONF_NAME
from homeassistant.helpers import entity_platform
from homeassistant.helpers.entity import DeviceInfo
from .const import (
ATTRIBUTION,
@@ -67,8 +68,6 @@ async def async_setup_entry(
class AgentCamera(MjpegCamera):
"""Representation of an Agent Device Stream."""
_attr_supported_features = SUPPORT_ON_OFF
def __init__(self, device):
"""Initialize as a subclass of MjpegCamera."""
device_info = {
@@ -80,15 +79,14 @@ class AgentCamera(MjpegCamera):
self._removed = False
self._attr_name = f"{device.client.name} {device.name}"
self._attr_unique_id = f"{device._client.unique}_{device.typeID}_{device.id}"
self._attr_should_poll = True
super().__init__(device_info)
self._attr_device_info = {
"identifiers": {(AGENT_DOMAIN, self.unique_id)},
"name": self.name,
"manufacturer": "Agent",
"model": "Camera",
"sw_version": device.client.version,
}
self._attr_device_info = DeviceInfo(
identifiers={(AGENT_DOMAIN, self.unique_id)},
manufacturer="Agent",
model="Camera",
name=self.name,
sw_version=device.client.version,
)
async def async_update(self):
"""Update our state from the Agent API."""
@@ -102,10 +100,10 @@ class AgentCamera(MjpegCamera):
if self.device.client.is_available and not self._removed:
_LOGGER.error("%s lost", self.name)
self._removed = True
self._attr_available = self.device.client.is_available
self._attr_icon = "mdi:camcorder-off"
if self.is_on:
self._attr_icon = "mdi:camcorder"
self._attr_available = self.device.client.is_available
self._attr_extra_state_attributes = {
ATTR_ATTRIBUTION: ATTRIBUTION,
"editable": False,
@@ -117,6 +115,11 @@ class AgentCamera(MjpegCamera):
"alerts_enabled": self.device.alerts_active,
}
@property
def should_poll(self) -> bool:
"""Update the state periodically."""
return True
@property
def is_recording(self) -> bool:
"""Return whether the monitor is recording."""
@@ -137,6 +140,11 @@ class AgentCamera(MjpegCamera):
"""Return True if entity is connected."""
return self.device.connected
@property
def supported_features(self) -> int:
"""Return supported features."""
return SUPPORT_ON_OFF
@property
def is_on(self) -> bool:
"""Return true if on."""
@@ -33,9 +33,7 @@ class AgentFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
try:
await agent_client.update()
except AgentConnectionError:
pass
except AgentError:
except (AgentConnectionError, AgentError):
pass
await agent_client.close()
@@ -0,0 +1,15 @@
{
"config": {
"abort": {
"already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e"
},
"step": {
"user": {
"data": {
"host": "\u0425\u043e\u0441\u0442",
"port": "\u041f\u043e\u0440\u0442"
}
}
}
}
}
@@ -4,13 +4,13 @@
"already_configured": "L'appareil est d\u00e9j\u00e0 configur\u00e9"
},
"error": {
"already_in_progress": "La configuration de l'appareil est d\u00e9j\u00e0 en cours.",
"already_in_progress": "La configuration est d\u00e9j\u00e0 en cours",
"cannot_connect": "\u00c9chec de connexion"
},
"step": {
"user": {
"data": {
"host": "Nom d'h\u00f4te ou adresse IP",
"host": "H\u00f4te",
"port": "Port"
},
"title": "Configurer l'agent DVR"
@@ -4,15 +4,16 @@
"already_configured": "Az eszk\u00f6z m\u00e1r konfigur\u00e1lva van"
},
"error": {
"already_in_progress": "A konfigur\u00e1ci\u00f3 m\u00e1r folyamatban van.",
"already_in_progress": "A konfigur\u00e1l\u00e1s m\u00e1r folyamatban van",
"cannot_connect": "Sikertelen csatlakoz\u00e1s"
},
"step": {
"user": {
"data": {
"host": "Hoszt",
"host": "C\u00edm",
"port": "Port"
}
},
"title": "\u00c1ll\u00edtsa be az Agent DVR-t"
}
}
}
@@ -1,7 +1,20 @@
{
"config": {
"abort": {
"already_configured": "\u8bbe\u5907\u5df2\u88ab\u914d\u7f6e"
},
"error": {
"already_in_progress": "\u914d\u7f6e\u6d41\u5df2\u8fdb\u884c\u4e2d",
"cannot_connect": "\u8fde\u63a5\u5931\u8d25"
},
"step": {
"user": {
"data": {
"host": "\u4e3b\u673a\u5730\u5740",
"port": "\u7aef\u53e3"
},
"title": "\u914d\u7f6e Agent DVR"
}
}
}
}
@@ -6,10 +6,7 @@ import logging
from typing import Final, final
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
ATTR_ATTRIBUTION,
CONCENTRATION_MICROGRAMS_PER_CUBIC_METER,
)
from homeassistant.const import CONCENTRATION_MICROGRAMS_PER_CUBIC_METER
from homeassistant.core import HomeAssistant
from homeassistant.helpers.config_validation import ( # noqa: F401
PLATFORM_SCHEMA,
@@ -41,7 +38,6 @@ SCAN_INTERVAL: Final = timedelta(seconds=30)
PROP_TO_ATTR: Final[dict[str, str]] = {
"air_quality_index": ATTR_AQI,
"attribution": ATTR_ATTRIBUTION,
"carbon_dioxide": ATTR_CO2,
"carbon_monoxide": ATTR_CO,
"nitrogen_oxide": ATTR_N2O,
@@ -114,11 +110,6 @@ class AirQualityEntity(Entity):
"""Return the CO2 (carbon dioxide) level."""
return None
@property
def attribution(self) -> StateType:
"""Return the attribution."""
return None
@property
def sulphur_dioxide(self) -> StateType:
"""Return the SO2 (sulphur dioxide) level."""
+4 -10
View File
@@ -1,6 +1,7 @@
"""Adds config flow for Airly."""
from __future__ import annotations
from http import HTTPStatus
from typing import Any
from aiohttp import ClientSession
@@ -10,14 +11,7 @@ import async_timeout
import voluptuous as vol
from homeassistant import config_entries
from homeassistant.const import (
CONF_API_KEY,
CONF_LATITUDE,
CONF_LONGITUDE,
CONF_NAME,
HTTP_NOT_FOUND,
HTTP_UNAUTHORIZED,
)
from homeassistant.const import CONF_API_KEY, CONF_LATITUDE, CONF_LONGITUDE, CONF_NAME
from homeassistant.data_entry_flow import FlowResult
from homeassistant.helpers.aiohttp_client import async_get_clientsession
import homeassistant.helpers.config_validation as cv
@@ -60,9 +54,9 @@ class AirlyFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
use_nearest=True,
)
except AirlyError as err:
if err.status_code == HTTP_UNAUTHORIZED:
if err.status_code == HTTPStatus.UNAUTHORIZED:
errors["base"] = "invalid_api_key"
if err.status_code == HTTP_NOT_FOUND:
if err.status_code == HTTPStatus.NOT_FOUND:
errors["base"] = "wrong_location"
else:
if not location_point_valid:
+1 -65
View File
@@ -3,19 +3,6 @@ from __future__ import annotations
from typing import Final
from homeassistant.components.sensor import STATE_CLASS_MEASUREMENT
from homeassistant.const import (
CONCENTRATION_MICROGRAMS_PER_CUBIC_METER,
DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_PRESSURE,
DEVICE_CLASS_TEMPERATURE,
PERCENTAGE,
PRESSURE_HPA,
TEMP_CELSIUS,
)
from .model import AirlySensorEntityDescription
ATTR_API_ADVICE: Final = "ADVICE"
ATTR_API_CAQI: Final = "CAQI"
ATTR_API_CAQI_DESCRIPTION: Final = "DESCRIPTION"
@@ -45,55 +32,4 @@ MANUFACTURER: Final = "Airly sp. z o.o."
MAX_UPDATE_INTERVAL: Final = 90
MIN_UPDATE_INTERVAL: Final = 5
NO_AIRLY_SENSORS: Final = "There are no Airly sensors in this area yet."
SENSOR_TYPES: tuple[AirlySensorEntityDescription, ...] = (
AirlySensorEntityDescription(
key=ATTR_API_CAQI,
name=ATTR_API_CAQI,
unit_of_measurement="CAQI",
),
AirlySensorEntityDescription(
key=ATTR_API_PM1,
icon="mdi:blur",
name=ATTR_API_PM1,
unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER,
state_class=STATE_CLASS_MEASUREMENT,
),
AirlySensorEntityDescription(
key=ATTR_API_PM25,
icon="mdi:blur",
name="PM2.5",
unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER,
state_class=STATE_CLASS_MEASUREMENT,
),
AirlySensorEntityDescription(
key=ATTR_API_PM10,
icon="mdi:blur",
name=ATTR_API_PM10,
unit_of_measurement=CONCENTRATION_MICROGRAMS_PER_CUBIC_METER,
state_class=STATE_CLASS_MEASUREMENT,
),
AirlySensorEntityDescription(
key=ATTR_API_HUMIDITY,
device_class=DEVICE_CLASS_HUMIDITY,
name=ATTR_API_HUMIDITY.capitalize(),
unit_of_measurement=PERCENTAGE,
state_class=STATE_CLASS_MEASUREMENT,
value=lambda value: round(value, 1),
),
AirlySensorEntityDescription(
key=ATTR_API_PRESSURE,
device_class=DEVICE_CLASS_PRESSURE,
name=ATTR_API_PRESSURE.capitalize(),
unit_of_measurement=PRESSURE_HPA,
state_class=STATE_CLASS_MEASUREMENT,
),
AirlySensorEntityDescription(
key=ATTR_API_TEMPERATURE,
device_class=DEVICE_CLASS_TEMPERATURE,
name=ATTR_API_TEMPERATURE.capitalize(),
unit_of_measurement=TEMP_CELSIUS,
state_class=STATE_CLASS_MEASUREMENT,
value=lambda value: round(value, 1),
),
)
URL = "https://airly.org/map/#{latitude},{longitude}"

Some files were not shown because too many files have changed in this diff Show More