Compare commits

..

4589 Commits

Author SHA1 Message Date
Paulus Schoutsen
b5548c57fb Merge pull request #49139 from home-assistant/rc 2021-04-12 17:45:38 -07:00
Paulus Schoutsen
e5281051a3 Bumped version to 2021.4.4 2021-04-13 00:10:42 +00:00
jjlawren
346ae78a8e Check all endpoints for zwave_js.climate hvac_action (#49115) 2021-04-13 00:09:51 +00:00
Unai
b5650bdd52 Upgrade maxcube-api to 0.4.2 (#49106)
Upgrade to maxcube-api 0.4.2 to fix pending issues in HA 2021.4.x:
 - Interpret correctly S command error responses (https://github.com/home-assistant/core/issues/49075)
 - Support application timezone configuration (https://github.com/home-assistant/core/issues/49076)
2021-04-13 00:09:50 +00:00
J. Nick Koston
bf28268732 Downgrade logger message about homekit id missing (#49079)
This can happen if the TXT record is received after the PTR record and
should not generate a warning since it will get processed later
2021-04-13 00:09:49 +00:00
Kevin Worrel
4eb794ae84 Catch unknown equipment values (#49073)
* Catch unknown equipment values

* Catch unknown equipment values

* Remove warning spam.
2021-04-13 00:09:48 +00:00
Jan Bouwhuis
21b5551506 mqtt fan percentage to speed_range and received speed_state fix (#49060)
* percentage to speed_range and get speed state fix

* Update homeassistant/components/mqtt/fan.py

* Update homeassistant/components/mqtt/fan.py

* Update homeassistant/components/mqtt/fan.py

* Update homeassistant/components/mqtt/fan.py

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-04-13 00:07:27 +00:00
Erik Montnemery
e0131f726f Quote media_source paths (#49054)
* Quote path in async_sign_path

* Address review comments, add tests

* Update tests/testing_config/media/Epic Sax Guy 10 Hours.mp4

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-04-13 00:07:27 +00:00
Erik Montnemery
e685b1a1e3 Fix cast options flow overwriting data (#49051) 2021-04-13 00:07:26 +00:00
J. Nick Koston
0d00e49dfc Bump aiohomekit to 0.2.61 (#49044) 2021-04-13 00:07:25 +00:00
Chris Talkington
36e08e770b Resolve potential roku setup memory leaks (#49025)
* resolve potential roku setup memory leaks

* Update __init__.py
2021-04-13 00:07:24 +00:00
Franck Nijhof
e3b3d136d8 Fix use search instead of match to filter logs (#49017) 2021-04-13 00:07:23 +00:00
Joakim Plate
0a5a5ff053 Bump ha-philipsjs to 2.7.0 (#49008)
This has some improvements to not consider the TV
off due to some exceptions that is related to API
being buggy rather than off.
2021-04-13 00:07:22 +00:00
Shay Levy
0bb7592fab Fix Shelly brightness offset (#49007) 2021-04-13 00:07:21 +00:00
Aidan Timson
d081ac8d4a Set Lyric hold time to use local time instead of utc (#48994) 2021-04-13 00:07:20 +00:00
J. Nick Koston
b96e0e69f2 Bump nexia to 0.9.6 (#48982)
- Now returns None when a humidity sensor cannot be read instead of throwing an exception
2021-04-13 00:07:20 +00:00
Erik Montnemery
82cca8fb1c Move cast config flow tests to test_config_flow (#48362) 2021-04-13 00:07:19 +00:00
Matt Zimmerman
a9602e7a08 Update python-smarttub to 0.0.23 (#48978) 2021-04-10 03:38:13 +00:00
Matt Zimmerman
c08ae64085 Update python-smarttub to 0.0.23 (#48978) 2021-04-10 03:37:10 +00:00
Paulus Schoutsen
01e558430a Merge pull request #48977 from home-assistant/rc 2021-04-09 20:35:34 -07:00
Paulus Schoutsen
31b061e8f1 Bumped version to 2021.4.3 2021-04-10 00:30:34 +00:00
Shay Levy
4ca40367d1 Fix Shelly button device triggers (#48974) 2021-04-10 00:30:24 +00:00
J. Nick Koston
12da88cae9 Prevent ping id allocation conflict with device_tracker (#48969)
* Prevent ping id allocation conflict with device_tracker

- Solves id conflict resulting unexpected home state

* Update homeassistant/components/ping/device_tracker.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-04-10 00:30:23 +00:00
Paulus Schoutsen
0520ce5ed3 Fix config forwarding (#48967) 2021-04-10 00:30:22 +00:00
Guido Schmitz
995e22d3bb Bump devolo Home Control to support old websocket-client versions again (#48960) 2021-04-10 00:30:21 +00:00
Jan Bouwhuis
6296d78e58 Implement percentage_step and preset_mode is not not speed fix for MQTT fan (#48951) 2021-04-10 00:30:20 +00:00
Joakim Sørensen
2c7fd30029 Add TTS engines in config.components (#48939)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-04-10 00:30:20 +00:00
Paulus Schoutsen
7b7cfd71de Merge pull request #48954 from home-assistant/rc 2021-04-09 12:03:40 -07:00
Bram Kragten
d5d9a5ff11 Update frontend to 20210407.3 (#48957) 2021-04-09 18:53:45 +00:00
Paulus Schoutsen
3f744bcbef Bumped version to 2021.4.2 2021-04-09 17:39:03 +00:00
jjlawren
92746aa60c Fix Plex live TV handling (#48953) 2021-04-09 17:38:54 +00:00
Ph-Wagner
4da77b9768 Extend Google Cast media source URL expiry to 24h (#48937)
* Extend media source URL expiry to 12h

closes #46280
After checking out https://github.com/home-assistant/core/pull/48912 I just think why not.

* Update homeassistant/components/cast/media_player.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-04-09 17:38:53 +00:00
David F. Mulcahey
b800bb0202 Bump ZHA quirks library (#48931) 2021-04-09 17:38:52 +00:00
Tobias Sauerwein
b41e611cb5 Bump pykodi to 0.2.5 (#48930) 2021-04-09 17:38:52 +00:00
Philip Allgaier
ee78c9b08a Fix "notify.events" trim() issue + add initial tests (#48928)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-04-09 17:38:51 +00:00
Joakim Sørensen
29bb6d76f1 Change discovery timeout from 10 to 60 (#48924) 2021-04-09 17:38:50 +00:00
Joakim Sørensen
38a1c65ab7 Handle exceptions when looking for new version (#48922) 2021-04-09 17:38:49 +00:00
Tobias Sauerwein
1ca087b4d0 Bump pykodi to 0.2.4 (#48913) 2021-04-09 17:38:48 +00:00
Erik Montnemery
1f21b19eae Extend media source URL expiry to 24h (#48912) 2021-04-09 17:38:47 +00:00
Milan Meulemans
6746fbadef Catch expected errors and log them in rituals perfume genie (#48870)
* Add update error logging

* Move try available to else

* Remove TimeoutError
2021-04-09 17:38:46 +00:00
Hans Kröner
41fe8b9494 Account for openweathermap 'dew_point' not always being present (#48826) 2021-04-09 17:38:45 +00:00
Paulus Schoutsen
f4c3bdad7d Merge pull request #48896 from home-assistant/rc 2021-04-08 15:35:17 -07:00
Paulus Schoutsen
3bf693e352 Bumped version to 2021.4.1 2021-04-08 21:35:53 +00:00
Bram Kragten
7051cc04bd Update frontend to 20210407.2 (#48888) 2021-04-08 21:35:37 +00:00
Franck Nijhof
d9c1c391bc Fix optional data payload in Prowl messaging service (#48868) 2021-04-08 21:35:35 +00:00
Franck Nijhof
02cd2619bb Fix possibly missing changed_by in Verisure Alarm (#48867) 2021-04-08 21:35:35 +00:00
starkillerOG
f791142c75 Fix motion_blinds gateway signal strength sensor (#48866)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-08 21:35:34 +00:00
Bram Kragten
1c939fc9be Correct wrong x in frontend manifest (#48865) 2021-04-08 21:35:33 +00:00
Philip Allgaier
0ad4736349 Bump speedtest-cli to 2.1.3 (#48861) 2021-04-08 21:35:32 +00:00
Erik Montnemery
3f0d63c1ab Validate supported_color_modes for MQTT JSON light (#48836) 2021-04-08 21:35:32 +00:00
Martin Hjelmare
f39afa60ae Fix mysensor cover closed state (#48833) 2021-04-08 21:35:31 +00:00
Erik Montnemery
cf11d9a2df Replace redacted stream recorder credentials with '****' (#48832) 2021-04-08 21:35:30 +00:00
Niccolo Zapponi
dd2a73b363 Fix iCloud extra attributes (#48815) 2021-04-08 21:35:29 +00:00
Johan Nenzén
99ef870908 Add missing super call in Verisure Camera entity (#48812) 2021-04-08 21:35:29 +00:00
Raman Gupta
8d738cff41 Check all endpoints for zwave_js.climate fan mode and operating state (#48800)
* Check all endpoints for zwave_js.climate fan mode and operating state

* fix test
2021-04-08 21:35:28 +00:00
Franck Nijhof
8bdcdfb8e6 Merge pull request #48782 from home-assistant/rc 2021-04-07 19:07:10 +02:00
Franck Nijhof
341531146d Bumped version to 2021.4.0 2021-04-07 18:31:01 +02:00
Bram Kragten
49178d6865 Update frontend to 20210407.1 (#48778) 2021-04-07 18:17:15 +02:00
Erik Montnemery
b4636f17fb Reject nan, inf from generic_thermostat sensor (#48771) 2021-04-07 18:17:11 +02:00
Franck Nijhof
0fb4f31bde Bumped version to 2021.4.0b6 2021-04-07 12:43:04 +02:00
Bram Kragten
b382de96c6 Update frontend to 20210407.0 (#48765) 2021-04-07 12:40:14 +02:00
Erik Montnemery
c9f8861303 Fix whitespace error in cast (#48763) 2021-04-07 12:40:08 +02:00
Erik Montnemery
32511409a9 Remove login details before logging SQL errors (#48758) 2021-04-07 12:40:04 +02:00
Daniel Hjelseth Høyer
e366961ddb Met.no - only update data if coordinates changed (#48756) 2021-04-07 12:40:00 +02:00
J. Nick Koston
bfb8141f55 Solve cast delaying startup when discovered devices are slow to setup (#48755)
* Solve cast delaying startup when devices are slow to setup

* Update homeassistant/components/cast/media_player.py

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

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-04-07 12:39:57 +02:00
Joakim Sørensen
537d6412dd Add custom integrations to analytics (#48753) 2021-04-07 12:39:54 +02:00
Stefan Agner
a093cd8ac2 Use microsecond precision for datetime values on MariaDB/MySQL (#48749)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-04-07 12:39:51 +02:00
Franck Nijhof
322458ee49 Rename hassio config entry title to Supervisor (#48748) 2021-04-07 12:39:48 +02:00
Joakim Sørensen
b573fb49b7 Generate a seperate UUID for the analytics integration (#48742) 2021-04-07 12:39:45 +02:00
Franck Nijhof
15e00b8d18 Do not activate Met.no without setting a Home coordinates (#48741) 2021-04-07 12:39:41 +02:00
Paulus Schoutsen
2db60a3c56 Bumped version to 2021.4.0b5 2021-04-06 19:12:33 +00:00
Paulus Schoutsen
ed90e22421 Updated frontend to 20210406.0 (#48734) 2021-04-06 19:12:28 +00:00
Paulus Schoutsen
d61780dbac Allow reloading top-level template entities (#48733) 2021-04-06 19:12:27 +00:00
Justin Paupore
315e910bfe Fix infinite recursion in LazyState (#48719)
If LazyState cannot parse the attributes of its row as JSON, it prints
a message to the logger. Unfortunately, it passes `self` as a format
argument to that message, which causes its `__repr__` method to be
called, which then tries to retrieve `self.attributes` in order to
display them. This leads to an infinite recursion and a crash of the
entire core.

To fix, send the database row to be printed in the log message, rather
than the LazyState object that wraps around it.
2021-04-06 19:12:26 +00:00
Erik Montnemery
a7523777ba Flag brightness support for MQTT RGB lights (#48718) 2021-04-06 19:12:25 +00:00
Erik Montnemery
7ae65832eb Bump pychromecast to 9.1.2 (#48714) 2021-04-06 19:12:24 +00:00
Erik Montnemery
0df9a8ec38 Improve warnings on undefined template errors (#48713) 2021-04-06 19:12:23 +00:00
J. Nick Koston
5f2a666e76 Abort discovery for unsupported doorbird accessories (#48710) 2021-04-06 19:12:23 +00:00
Paulus Schoutsen
26b9017905 Fix verisure deadlock (#48691) 2021-04-06 19:12:22 +00:00
Raman Gupta
bdd68cd413 Bump zwave_js dependency to 0.23.1 (#48682) 2021-04-06 19:12:21 +00:00
Alexei Chetroi
c512ab7ec9 Implement Ignore list for poll control configuration on Ikea devices (#48667)
Co-authored-by: Hmmbob <33529490+hmmbob@users.noreply.github.com>
2021-04-06 19:12:21 +00:00
mburget
edf41e8425 Fix Raspi GPIO binary_sensor produces unreliable responses (#48170)
* Fix for issue #10498 Raspi GPIO binary_sensor produces unreliable responses ("Doorbell Scenario")

Changes overtaken from PR#31788 which was somehow never finished

* Fix for issue #10498 Raspi GPIO binary_sensor produces unreliable response. Changes taken over from PR31788 which was somehow never finished

* Remove unused code (pylint warning)
2021-04-06 19:12:20 +00:00
Paulus Schoutsen
1850b92b36 Bumped version to 2021.4.0b4 2021-04-04 00:36:15 +00:00
J. Nick Koston
7b1ea46653 Prevent config entry retry from blocking startup (#48660)
- If there are two integrations doing long retries async_block_till_done() will never be done
2021-04-04 00:36:07 +00:00
Álvaro Fernández Rojas
a8cd6228cf Fix AEMET town timestamp format (#48647)
Datetime should be converted to ISO format.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-04-04 00:36:07 +00:00
J. Nick Koston
9eb4397837 Only listen for zeroconf when the esphome device cannot connect (#48645) 2021-04-04 00:36:06 +00:00
J. Nick Koston
311f624adc Bump aiodiscover to 1.3.3 for dhcp (#48644)
fixes #48615
2021-04-04 00:36:05 +00:00
Paulus Schoutsen
dcb43b474f Bumped version to 2021.4.0b3 2021-04-03 00:05:20 +00:00
Bram Kragten
396a8a3a10 Updated frontend to 20210402.1 (#48639) 2021-04-02 23:57:55 +00:00
Paulus Schoutsen
2a1f6d7e8f Support modern config for the trigger based template entity (#48635) 2021-04-02 23:57:55 +00:00
Paulus Schoutsen
da31328150 Fix trigger template entities without a unique ID (#48631) 2021-04-02 23:57:54 +00:00
Shay Levy
cec80210a3 Bump aioshelly to 0.6.2 (#48620) 2021-04-02 23:57:53 +00:00
Paulus Schoutsen
74357d9760 Bumped version to 2021.4.0b2 2021-04-01 23:33:37 +00:00
Erik Montnemery
231a55d416 Include blueprint input in automation trace (#48575) 2021-04-01 23:33:04 +00:00
Erik Montnemery
e760c23f37 Include script script_execution in script and automation traces (#48576) 2021-04-01 23:32:47 +00:00
Paulus Schoutsen
39f68de5fa Bumped version to 2021.4.0b1 2021-04-01 23:23:47 +00:00
Robert Svensson
68b189cf9f Increase time out for http requests done in Axis integration (#48610) 2021-04-01 23:23:31 +00:00
Bram Kragten
8d0941ba65 Update frontend to 20210402.0 (#48609) 2021-04-01 23:23:29 +00:00
Paulus Schoutsen
d1a48c7c5c Clean up mobile app (#48607)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-01 23:23:28 +00:00
Franck Nijhof
f0f8b79be0 Fix websocket search for related (#48603)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-04-01 23:23:26 +00:00
Franck Nijhof
c2d17a72b7 Allow templatable service target to support scripts (#48600) 2021-04-01 23:23:25 +00:00
Franck Nijhof
f0bd3c577f Upgrade numpy to 1.20.2 (#48597) 2021-04-01 23:23:24 +00:00
Erik Montnemery
947ac514b9 Return config entry details for 1-step config flows (#48585) 2021-04-01 23:23:22 +00:00
epenet
5df90b32fc Cleanup orphan devices in onewire integration (#48581)
* Cleanup orphan devices (https://github.com/home-assistant/core/issues/47438)

* Refactor unit testing

* Filter device entries for this config entry

* Update logging

* Cleanup check
2021-04-01 23:23:20 +00:00
Robert Svensson
f08e7dccdf Don't care about DPI entries when looking for clients to be restored from UniFi (#48579)
* DPI switches shouldnt be restored, they're not part of clients to be restored

* Only care about Block and POE switch entries
2021-04-01 23:23:20 +00:00
Aaron Bach
3982849275 Fix incorrect constant import in Ambient PWS (#48574) 2021-04-01 23:23:17 +00:00
Joakim Sørensen
07827ca55d Remove analytics from default_config (#48566) 2021-04-01 23:23:16 +00:00
youknowjack0
16da181692 Fix timer.finish to cancel callback (#48549)
Timer.finish doesn't cancel the callback, which can lead to incorrect early cancellation of the timer if it is subsequently restarted. 

Bug reported here: https://community.home-assistant.io/t/timer-component-timer-stops-before-time-is-up/96038
2021-04-01 23:23:15 +00:00
Franck Nijhof
75908f38f3 Bumped version to 2021.4.0b0 2021-03-31 21:32:05 +02:00
Robert Svensson
bc5d828554 Provide the improved service UX with deCONZ services (#48382)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-03-31 20:14:26 +02:00
Erik Montnemery
c06ac9e12b Improve automation trace tests (#48542) 2021-03-31 10:51:29 -07:00
J. Nick Koston
6cf57da89f Use SOURCE_REAUTH constant for starting reauth flows (#48553) 2021-03-31 19:48:32 +02:00
arturdobo
68801ae5f7 Add Qingping Air Monitor Lite support support (#48181)
* Add cgllc.airm.cgdn1 support

* review remarks

* removed unnecessary lambdas
2021-03-31 19:47:42 +02:00
Ruslan Sayfutdinov
a6759d731d Use Mapping[str, Any] instead of dict in Entity (#48421) 2021-03-31 19:34:00 +02:00
Simone Chemelli
bb7f64596c Add operation sensor to Shelly Gas (#48462) 2021-03-31 09:46:39 -07:00
jjlawren
be71d626c8 Improve Plex device handling (#48369) 2021-03-31 09:37:16 -07:00
Bram Kragten
2f37a5727c Update frontend to 20210331.0 (#48552) 2021-03-31 09:23:12 -07:00
J. Nick Koston
9790f3f609 Create homekit locks according to spec (#48453)
Any accessories, regardless of transport, that enable physical access to the home, such as door locks, must not be bridged.
2021-03-31 09:22:30 -07:00
Franck Nijhof
3acacf435a Merge branch 'master' into dev 2021-03-31 17:54:27 +02:00
LJU
93920704d0 Remove Hass.io terms in strings.json (#48541)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-03-31 17:19:18 +02:00
Michael
949cd4714a Fix update of surveillance_station data in Synology DSM (#47966) 2021-03-31 17:18:58 +02:00
Mario Limonciello
9fd6980144 Avoid divide by zero errors in tplink light integration (#48235) 2021-03-31 17:16:24 +02:00
Marvin Wichmann
9e1a17c62e Update xknx to version 0.17.5 (#48522)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-03-31 17:04:22 +02:00
jjlawren
7dfe63e06f Set Plex sensor availability properly (#48546) 2021-03-31 17:02:23 +02:00
Erik Montnemery
e2f8bce0a0 Improve error handling for WS API trace/get (#48502) 2021-03-31 15:58:36 +02:00
Philip Allgaier
6fe04f40a2 Ensure HA script and Python script services have a name (#47204)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-03-31 15:09:45 +02:00
J. Nick Koston
bee55a0494 Prevent ping integration from delaying startup (#43869) 2021-03-31 15:06:49 +02:00
Erik Montnemery
b26779a27a Add id to automation triggers (#48464) 2021-03-31 14:56:04 +02:00
Philip Allgaier
450f3740cd Use consolidated constant for "description" (#48490) 2021-03-31 14:12:15 +02:00
jjlawren
d62297a28b Add Plex library count sensors (#48339) 2021-03-31 13:57:16 +02:00
Vincent Le Bourlot
93498ec831 Add missing neato error status (#48508) 2021-03-31 13:48:04 +02:00
Joakim Sørensen
4d8ef115a3 Bump pyhaversion from 3.4.2 to 21.3.0 (#48537) 2021-03-31 12:46:14 +02:00
Nicolas Braem
96857b7466 Add vicare fuelcell (#47167) 2021-03-31 11:29:24 +02:00
Erik Montnemery
c7584a1f92 Add color_mode support to MQTT JSON light (#47993) 2021-03-31 11:28:45 +02:00
jan iversen
64d5dd1f6b Remove if/else from modbus test cases (#48514) 2021-03-31 11:20:14 +02:00
Franck Nijhof
d4d8f74858 Deprecate SolarEdge YAML configuration (#48533) 2021-03-31 10:31:12 +02:00
Robert Svensson
c80f34a754 Add support for ZHADoorLock locks to deCONZ integration(#48516) 2021-03-31 09:36:06 +02:00
Anders Melchiorsen
96c391af09 Fix Sonos Line-in favorites (#48524) 2021-03-31 07:22:54 +02:00
uvjustin
379843eb54 Shield async httpx call in generic (#47852)
* Shield async httpx call

* Don't set last_url/last_image on cancellation

* Add test
2021-03-31 12:46:10 +08:00
Steven Looman
7a6c88feeb Bump async_upnp_client to 0.16.0 (#48521) 2021-03-30 15:36:18 -10:00
Quentame
c1ff4197d1 Bump Freebox to 0.0.10 (#48526) 2021-03-30 15:21:11 -10:00
Quentame
7f9c5d7a13 Bump Météo-France to 1.0.2 (#48527) 2021-03-30 15:20:46 -10:00
Quentame
bae337554f Bump Synology DSM to 1.0.2 (#48528) 2021-03-31 02:13:56 +02:00
HomeAssistant Azure
919247f256 [ci skip] Translation update 2021-03-31 00:04:33 +00:00
Joakim Sørensen
52974e1f64 Add target version to log about missing version (#48520)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-03-31 01:08:59 +02:00
Bram Kragten
d1a1e70726 Search for areas used in automations and scripts (#48499)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-03-30 15:01:56 -07:00
Michael
309c3a8d82 Fix init for first added shelly device (#48411) 2021-03-30 23:52:02 +02:00
David F. Mulcahey
aa0292974a support feedback for ZHA device reconfiguration (#48447) 2021-03-30 16:35:51 -04:00
Joakim Sørensen
78cff36f96 Remove analytics from updater (#48518) 2021-03-30 22:22:03 +02:00
jugla
76d9c62900 Evaluate AirVisual interval on reboot (#48392)
* Reevaluate interval on reboot (and periodically)

* AirVisual update interval periodically

* AirVisual : update periodically interval request

* AirVisual : update sever request interval periodically

* AirVisual : periodically update interval for server requests

* AirVisual : periodic update for server interval

* Airvisual : periodic update of server interval

* AirVisual : periodic update of server interval

* AirVisual : periodic update of interval request

* Periodic interval update of server request

* AirVisual : periodic update of interval request

* Reassess interval request on periodic event

* ReAssess interval between 2 requests during update

* ReAssess interval between 2 requests periodically

* Reassess interval of server requests periodically

* Reassess the interval between 2 server requests

* Reassess interval between 2 server requests

* Reassess server requests interval periodically

* Assess interval request after inserting instance
2021-03-30 11:03:35 -06:00
Jacob Shufro
f5d9713bd5 Add regex-based filters to logger component (#48439)
* Add regex-based filters to logger component

* Switch logger filter tests to use caplog for more coverage, add a scoping test
2021-03-30 06:53:02 -10:00
Ruslan Sayfutdinov
82c94826fb Enable strict typing for zeroconf (#48450)
* Enable strict typing for zeroconf

* Fix lutron_caseta

* Fix pylint warning

* Fix tests

* Fix xiaomi_aqara test

* Add __init__.py in homeassistant.generated module

* Restore add_job with type: ignore
2021-03-30 06:48:04 -10:00
Matthias Alphart
338be8c70b KNX passive group addresses (#48009) 2021-03-30 18:14:38 +02:00
J. Nick Koston
e9f2062f1b Fix duplicates and unexpected failures during roomba discovery (#48492) 2021-03-30 17:54:36 +02:00
Franck Nijhof
cdd0624629 Correct FAA Delays integration domain in manifest (#48512) 2021-03-30 17:52:29 +02:00
Ruslan Sayfutdinov
575a460c65 Fix local mypy workflow (#48433)
* Fix local mypy workflow

* Run mypy directly
2021-03-30 17:18:29 +02:00
David F. Mulcahey
4dc885dcc3 Add discovery for Tube's Zigbee coordinators to ZHA (#48420)
* add discovery for tube zigbee gateways

* update discovery

* add test

* another test

* develop translations

* review comments
2021-03-30 11:13:26 -04:00
Philip Allgaier
9043a1f5aa Raise Spotify exception if no active device found (#48486) 2021-03-30 16:54:33 +02:00
Erik Montnemery
9d8521169b Add 'for' to lock device triggers (#48504)
* Add 'for' to lock device triggers

* Update tests/components/lock/test_device_trigger.py

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

* Update test_device_trigger.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-30 16:40:57 +02:00
Erik Montnemery
04a09d9215 Add 'for' to media_player device triggers (#48505)
* Add 'for' to media_player device triggers

* Update tests/components/media_player/test_device_trigger.py

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

* Update test_device_trigger.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-30 16:40:26 +02:00
Erik Montnemery
225d79c216 Add 'for' to vacuum device triggers (#48506)
* Add 'for' to vacuum device triggers

* Apply suggestions from code review

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

* Update test_device_trigger.py

* Update test_device_trigger.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-30 16:40:08 +02:00
J. Nick Koston
f91de1c8b9 Add support for capturing renewals to dhcp discovery (#48242) 2021-03-30 15:41:12 +02:00
Erik Montnemery
b3b0904b94 Simplify device trigger code (#48507) 2021-03-30 13:54:27 +02:00
Erik Montnemery
9526701e57 Add 'for' to alarm device triggers (#48503) 2021-03-30 13:49:23 +02:00
Marc Mueller
ee55657ae9 Update pylint to 2.7.4 (#48500) 2021-03-30 12:23:59 +02:00
Joakim Sørensen
f98ce2dd71 Add myself as codeowner to analytics (#48498) 2021-03-30 11:40:11 +02:00
Raman Gupta
bc3881db29 Add zwave_js.set_value service (#48487)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-30 11:13:48 +02:00
J. Nick Koston
f8265f44be Include platform only integrations in analytics (#48493) 2021-03-30 10:46:02 +02:00
David McClosky
e47d576ee7 Use MAX_VOLUME constant in vlc_telnet (#48491)
We also don't need to call `int()` anymore due to underlying fixes in
the python-vlc-telnet library.

I believe this is the last item extracted from PR #44776.
2021-03-30 09:57:53 +02:00
J. Nick Koston
0082eca932 Bump yalexs to 1.1.10 for august (#48494)
- Remove workaround for broken reconnect logic in pubnub
2021-03-30 09:37:19 +02:00
Martidjen
99ab084cdd Add opentherm_gw option for setpoint override mode (#48465)
* Adding option for setpoint override mode

Temporary setpoint override mode can now be set on or off. 'Constant' setpoint override mode will be used when Temporary is set to off

* Changes after review comment

Added default value for the setpoint override mode
2021-03-30 09:35:29 +02:00
Niccolo Zapponi
fc8dc038e2 Fixed auth issue for non-2FA iCloud accounts (#48455) 2021-03-29 19:09:27 -10:00
Guido Schmitz
2fbe352ad5 Make devolo home control more robust against connection losts (#48328) 2021-03-29 19:08:08 -10:00
Alan Tse
984fb12fa4 Create new websession if more than one entry in Tesla (#47886)
* Create new websession if more than one entry
closes #47506

* Remove extraneous count

* Always create new session

* Update docs
2021-03-30 06:50:41 +02:00
Marc Mueller
2956eb0902 Update pylint to 2.7.3 (#48488)
* Update pylint to 2.7.3

* Add class-const-naming-style

* Remove unused-import message

* Additional cleanup
2021-03-29 18:02:56 -10:00
Raman Gupta
9a75019a65 Add zwave_js.bulk_set_partial_config_parameters service (#48306)
* Add zwave_js.bulk_set_partial_config_parameters service

* update to handle command status

* add test for awake node

* test using a device in service call
2021-03-29 23:07:55 -04:00
Paulus Schoutsen
114a97bf52 Bump frontend to 20210329.0 2021-03-30 00:33:17 +00:00
Tobias Sauerwein
467bd91c80 Add image proxy to Kodi media browser (#47315) 2021-03-29 17:30:51 -07:00
Joakim Sørensen
09c51da3a2 Add analytics integration (#48256)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-29 17:20:11 -07:00
J. Nick Koston
6b7bcbbc96 Bump aiodiscoer to 1.3.2 for dhcp (#48489)
- Removes unused code in the library
- Cleanup a small slow memory leak
2021-03-29 17:18:54 -07:00
HomeAssistant Azure
a1472b174c [ci skip] Translation update 2021-03-30 00:03:46 +00:00
Kevin Worrel
42a060ad33 Add asyncio locks to screenlogic api access points (#48457) 2021-03-29 13:27:17 -10:00
Franck Nijhof
c1d5638739 Remove HomeAssistantType alias from entity components - Part 2 (#48468) 2021-03-29 13:24:56 -10:00
Franck Nijhof
855b68faa1 Remove HomeAssistantType alias from entity components - Part 1 (#48467) 2021-03-29 13:24:36 -10:00
Franck Nijhof
bb9da22a84 Clean up superfluous integration setup - part 3 (#48484) 2021-03-29 13:23:44 -10:00
Franck Nijhof
6ec3234ccc Clean up superfluous integration setup - part 2 (#48478) 2021-03-29 13:23:07 -10:00
Franck Nijhof
8393a215e9 Clean up superfluous integration setup - part 1 (#48476) 2021-03-29 13:22:33 -10:00
J. Nick Koston
a851bff95a Create async_config_entry_first_refresh to reduce coordinator boilerplate (#48451) 2021-03-29 12:51:39 -10:00
J. Nick Koston
569c536a8e Bump aiodiscover to 1.3.0 to improve performance (#48482) 2021-03-30 00:37:38 +02:00
Erik Montnemery
fe4ca18881 Refactor fan device triggers to use ToggleEntity triggers (#48321) 2021-03-30 00:09:41 +02:00
Erik Montnemery
8ad3c65645 Allow MQTT entities to be disabled by default (#48284)
* Allow MQTT entities to be disabled by default

* Tweak
2021-03-30 00:09:14 +02:00
Franck Nijhof
0805467c47 Clean up icons & device classes for Toon (#48471) 2021-03-29 14:17:25 -07:00
Erik Montnemery
7534b54e4e Merge condition and action traces (#48461) 2021-03-29 14:06:49 -07:00
Erik Montnemery
c459789c09 Add 'for' to cover device triggers (#48324) 2021-03-29 13:57:30 -07:00
Franck Nijhof
52475c108f Make integration setup optional (#48381) 2021-03-29 13:53:47 -07:00
Raman Gupta
dda9f957b6 Bump zwave-js-server-python to 0.23.0 to support zwave-js 7 (#48094)
* Bump zwave-js-server-python to 0.23.0 and update integration to support schema changes

* refactor notification evenets a bit

* fix tests and bug fixes

* additional changes due to new PR

* add command class and command name

* use new event names so we can retain event property names

* handle command status being returned from async_set_config_parameter

* bump dependency version

* adjust log message to be consistent

* disable pylint warning

* Update homeassistant/components/zwave_js/services.py

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

* add test for awake node

* switch async_get_registry to async_get

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-29 16:28:55 -04:00
Bram Kragten
cf6352e93c Add screenshot to manifest (#48475) 2021-03-29 13:13:42 -07:00
Jan Bouwhuis
d8a4cf63f4 Command template support for MQTT fan (#48413)
* Command template support

* Fix typo in abbreviations

* Update homeassistant/components/mqtt/fan.py

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

* Fix initialize templates

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-03-29 20:41:51 +02:00
Bram Kragten
03b7b1305c Cloud: Expose if google is registered in status + check on login (#48260)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-03-29 19:26:51 +02:00
Paulus Schoutsen
022f56f54d Allow specifying template entities based on triggers (#48169)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-29 09:57:51 -07:00
David McClosky
f815ebe9cd Fix unmute bug in vlc_telnet (#48441)
If volume was muted and media_player.volume_up is fired, VLC would still
show up as muted.

PR extracted from #44776.
2021-03-29 18:23:26 +02:00
Franck Nijhof
81ae0ee451 Add support for Selectors in Script service fields (#48469) 2021-03-29 18:05:45 +02:00
J. Nick Koston
6023105c6a Do not load ignored or disabled integrations at startup (#48355)
config_entries.async_setup will skip ignored and disabled integrations
but bootstrap would still load them in memory even though they would
never be setup.
2021-03-29 13:06:44 +02:00
J. Nick Koston
1fb9008488 Include platform only integrations in the manifest list api (#48269) 2021-03-29 12:51:48 +02:00
Pim
e2d3c0ea8f Don't write 0 to next modbus register (#48378) 2021-03-29 12:45:44 +02:00
J. Nick Koston
cb1b45d31a Log the reason a config entry failed to setup (#48449)
If we pass a string to ConfigEntryNotReady or raise it from
another exception we now log the string passed or the
string generated by the original exception.

With #47201 this makes it easy for developers to still show
the reason why setup failed without having to worry about log
spam from additional attempts by rasing ConfigEntryNotReady
from the original exception.
2021-03-29 12:25:40 +02:00
mptei
dd538bd291 Fix knx tests (#48407) 2021-03-29 12:17:54 +02:00
Erik Montnemery
0c6a1c29ec Fix broken trace tests (#48458) 2021-03-29 10:06:22 +02:00
J. Nick Koston
564688af25 Fix template fan default speed count (#48389)
* Fix template fan default speed count

The default speed count was defaulting to 3 when percentage
was implemented instead of the documented value of 100

* Increase coverage

* remove unreachable code
2021-03-29 09:33:56 +02:00
J. Nick Koston
7063306cd8 Bump aiodiscover to 1.2.0 in for dhcp (#48456)
- Additional optimizations
2021-03-29 09:17:30 +02:00
J. Nick Koston
2796a58ead Speed up bond setup with gather (#48454) 2021-03-29 08:58:48 +02:00
Erik Montnemery
14ef0531f0 Address review comments from trace refactoring PRs (#48288) 2021-03-29 08:09:14 +02:00
Paulus Schoutsen
ee81869c05 Bump frontend to 20210328.0 2021-03-29 03:14:29 +00:00
HomeAssistant Azure
357dedf5ef [ci skip] Translation update 2021-03-29 00:04:31 +00:00
SukramJ
cc38db6a89 Remove myself as codeowner of HomematicIP Cloud (#48437) 2021-03-28 19:18:59 -04:00
J. Nick Koston
47156151ab Bump aiodiscover to 1.1.2 for dhcp (#48445) 2021-03-28 13:12:31 -10:00
J. Nick Koston
a7d0fc2f86 Bump HAP-python to 3.4.1 for homekit (#48444) 2021-03-28 11:57:39 -10:00
Raman Gupta
08db248983 Fallback to current temperature unit for zwave_js climate (#48347)
* Fallback to current temperature unit for zwave_js climate

* don't use unit for N/A setpoint

* update comment

* add tests
2021-03-28 22:18:17 +02:00
J. Nick Koston
2ff94c8ed9 Add additional data source to dhcp (#48430) 2021-03-28 09:47:28 -10:00
David McClosky
23c7c4c977 Fallback to filename for title in vlc_telnet (#48438)
PR extracted from #44776.
2021-03-28 19:39:36 +02:00
David McClosky
48c0cfb25c Detect when media position is stale in vlc_telnet (#48434)
PR extracted from #44776.
2021-03-28 18:19:05 +02:00
Robert Delpeut
4487565232 Add dsmr monthly and yearly totals (#48253)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-28 16:37:27 +02:00
David McClosky
70e3fc430c Fix bug in vlc_telnet seeking (#48425)
Seems the code assumed a different `vlc_telnet` API.

Note that this doesn't address issues in `update()`, which will be
handled in a different PR.

PR extracted from #44776.
2021-03-28 11:58:11 +02:00
J. Nick Koston
958c4764f7 Handle routers that convert hostnames to lowercase in dhcp (#48429)
Some routers will lowercase all the hostnames. Since we
already lowercase hostnames for matching purposes, we now
pass the lowercased hostname to the integration.

Currently only roomba cared about this, and has been adjusted.
2021-03-28 11:23:06 +02:00
HomeAssistant Azure
ce3e00d018 [ci skip] Translation update 2021-03-28 00:05:04 +00:00
Unai
0706ae70dc Simplify maxcube integration (#48403)
* Simplify maxcube integration

Device objects returned by maxcube-api dependency are stable, so
we do not need to resolve from the device address every time.

Also, refactor and unify how maxcube integration sets temperature & mode.

* Raise ValueError if missing parameters for set_temperature method

Raise a ValueError exception If set_temperature does not receive
a temperature parameter.

Also, document properly _set_target method.

* Use Type | None instead of Optional[Type] annotation

* Protect set_hvac_mode and set_preset_mode from unsupported parameters
2021-03-28 00:21:20 +01:00
jan iversen
ffdfc521b9 Allow discovery configuration of modbus platforms (#46591)
* Change modbus configuration to new style.

The old (frozen) configuration is still supported, but when detected a big
warning is issued that it will soon be removed. This allows users to change
their configuration at their pace.

Clean configuration SCHEMAs and move common modbus parts
to MODBUS_SCHEMA (renamed from BASE_SCHEMA).

Add BASE_COMPONENT_SCHEMA to ensure common configuration of components.
All component define e.g. NAME, move these to a common schema.
change components (binary_sensor, sensor, switch) to new config

Add test set for modbus itself (old config and discovery_info).
Add test of devices discovery_info configuration

* Update discovery_info configuration for binary_sensor.

* Update discovery_info configuration for sensor.

* Update discovery_info configuration for switch.

* Review comments.

* update due to change in core

* flake8 problem.

* Correct log message.

* add should_poll property.

* Fix polling for Modbus binary sensor

* Fix polling for Modbus sensor

* Fix polling for Modbus switch

* Fix switch.

* Fix pytest errors.

* Update homeassistant/components/modbus/binary_sensor.py

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

* Update homeassistant/components/modbus/binary_sensor.py

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

* Update homeassistant/components/modbus/modbus.py

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

* Update homeassistant/components/modbus/sensor.py

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

* Update homeassistant/components/modbus/sensor.py

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

* Update homeassistant/components/modbus/sensor.py

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

* Update homeassistant/components/modbus/switch.py

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

* Update homeassistant/components/modbus/switch.py

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

* Update homeassistant/components/modbus/switch.py

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

* ToogleEntity -> SwitchEntity and add abastract

* Update homeassistant/components/modbus/switch.py

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

* Update tests/components/modbus/test_init.py

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

* removed if/else in test.

* Remove other if.

Co-authored-by: Vladimir Zahradnik <vladimir@zahradnik.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-27 22:48:06 +01:00
Álvaro Fernández Rojas
23d7330a2f Discard outdated data reported by AEMET stations (#48417)
* aemet: achieve 100% test coverage

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

* aemet: discard outdated station data

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

* aemet: fix AemetSensor/AemetForecastSensor inheritance

AbstractAemetSensor already inherits SensorEntity.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-27 22:33:24 +01:00
Matthias Alphart
051f29f9b6 Remove KNX type alias for homeassistant.core types (#48422) 2021-03-27 22:20:11 +01:00
David F. Mulcahey
3aa2591b0a Bump ZHA quirks to 0.0.55 (#48418)
* bump quirks version

* call new setup method in quirks
2021-03-27 15:59:31 -04:00
J. Nick Koston
35a5f110bd Update mac address in broadlink test to match mocked device (#48415)
* Update mac address in broadlink test to match mocked device

* Update tests/components/broadlink/test_config_flow.py
2021-03-27 20:47:47 +01:00
Jesse Campbell
67791fa4df ZHA lock code services and events (#47208)
* ZHA lock code services and events

* ZHA Locks: A few more services, use the library functions

* Catch exception when command id is not in command list

* Add tests for lock code services

* Add tests for enable/disable

* Better document code slot ID shifting

* Simplify cluster commands
2021-03-27 15:23:40 -04:00
Christian Soltenborn
955804bf58 Add template support for remaining attributes of weather entity (#47736)
* added template support for remaining attributes of weather entity

* wind bearing is now angle (number)
2021-03-27 18:53:35 +00:00
J. Nick Koston
388815b81a Add broadlink dhcp discovery (#48408) 2021-03-27 08:40:19 -10:00
Raman Gupta
fbc3f97097 Add support for selective config parameter entity discovery (#48336)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-27 18:14:06 +01:00
conflipper
56abe25c1f Add Ambient Station PM25 indoor sensor (#47970) 2021-03-27 18:01:33 +01:00
Jonathan Keslin
11596afdfc Address late review of vesync light (#48130) 2021-03-27 17:50:35 +01:00
J. Nick Koston
938a4cc1b6 Bump yalexs to 1.1.9 (#48383)
* Bump yalexs to workaround pubnub reconnect bug

* bump to 1.1.9 to loosen version requirement for pubnub
2021-03-27 15:55:18 +01:00
Franck Nijhof
cebcd7a202 Fix entity service calls on WLED master light (#48402) 2021-03-27 13:04:30 +01:00
Franck Nijhof
02182bfa86 Fix ability to ignore AdGuard hassio discovery (#48401) 2021-03-27 12:59:22 +01:00
Franck Nijhof
38d14702fa Remove HomeAssistantType alias from helpers (#48400) 2021-03-27 12:55:24 +01:00
Unai
4a353efdfb Add Maxcube unit tests (#47872)
* Simplify maxcube integration

Device objects returned by maxcube-api dependency are stable, so
we do not need to resolve from the device address every time.

Also, refactor and unify how maxcube integration sets temperature & mode.

* Add tests for maxcube component

* Use homeassistant.util.utcnow to retrieve current time

* Revert "Simplify maxcube integration"

This reverts commit 84d231d5bd.

* Make test pass again after rolling back integration changes
2021-03-27 12:42:23 +01:00
Franck Nijhof
0d595a2845 Merge of nested IF-IF cases - E-G (#48367) 2021-03-27 12:39:37 +01:00
Franck Nijhof
786023fce4 Merge of nested IF-IF cases - H-J (#48368) 2021-03-27 11:30:29 +01:00
Franck Nijhof
db355f9b23 Merge of nested IF-IF cases - A-C (#48365) 2021-03-27 10:58:38 +01:00
Franck Nijhof
8d5ce53098 Merge of nested IF-IF cases - S-W (#48372) 2021-03-27 10:54:59 +01:00
Franck Nijhof
3aed84560f Merge of nested IF-IF cases - O-R (#48371) 2021-03-27 10:38:57 +01:00
Ville Skyttä
3cd52b695d Upgrade flake8 and dependencies, enable flake8-noqa (#48393)
* Upgrade flake8 to 3.9.0

https://flake8.pycqa.org/en/latest/release-notes/3.9.0.html

* Upgrade pydocstyle to 6.0.0

https://www.pydocstyle.org/en/latest/release_notes.html#september-13th-2020
https://www.pydocstyle.org/en/latest/release_notes.html#march-18th-2021

* Upgrade flake8-docstrings to 1.6.0, enable flake8-noqa

https://gitlab.com/pycqa/flake8-docstrings/-/blob/1.6.0/HISTORY.rst
https://github.com/plinss/flake8-noqa/issues/1

* Upgrade/pin pyflakes to 2.3.1

https://github.com/PyCQA/pyflakes/blob/2.3.1/NEWS.rst

* Pin pycodestyle to 2.7.0
2021-03-27 10:22:11 +01:00
Franck Nijhof
86212db71d Merge of nested IF-IF cases - K-N (#48370) 2021-03-27 10:03:15 +01:00
J. Nick Koston
9737480742 Lazy load broadlink storage (#48391)
With many broadlink devices, the storage load overwhelmed the
executor at startup. Delay loading storage until it is needed.
2021-03-27 09:32:30 +01:00
Franck Nijhof
45f77ccccf Merge of nested IF-IF cases - Core (#48364) 2021-03-27 09:23:32 +01:00
Franck Nijhof
ad13a9295e Merge multiple context managers in tests (#48146) 2021-03-27 09:17:15 +01:00
J. Nick Koston
79af18a8ab Bump httpx to 0.17.1 (#48388)
* Bump httpx to 0.17.1

* git add

* typing

* add test

* tweak
2021-03-27 09:02:01 +01:00
J. Nick Koston
b50dcef94f Block detectable I/O in the event loop (#48387)
We added a warning when this happens last April and gave developers
a year to fix the instability. We now prevent the instability by
raising RuntimeError when code attempts to do known I/O in the
event loop instead of the executor.

We now provide a suggestion on how to fix the code that is causing
the issue.
2021-03-27 08:54:49 +01:00
Paulus Schoutsen
63e3012380 Fix script default trace (#48390) 2021-03-26 23:56:40 -07:00
Franck Nijhof
387e166447 Remove HomeAssistantType alias from AdGuard integration (#48377) 2021-03-26 18:52:01 -10:00
HomeAssistant Azure
99874cd993 [ci skip] Translation update 2021-03-27 00:03:21 +00:00
Erik Montnemery
374dcde487 Return config entry details after creation (#48316) 2021-03-26 18:31:29 +01:00
Erik Montnemery
c6a20d0fc1 Improve traces for nested script runs (#48366) 2021-03-26 10:14:01 -07:00
Franck Nijhof
bbbc3a5f50 Merge of nested IF-IF case in elkm1 test (#48374) 2021-03-26 06:54:16 -10:00
Paulus Schoutsen
00683d3caa Create FUNDING.yml (#48375) 2021-03-26 09:48:02 -07:00
Franck Nijhof
f4cc4a0896 Merge of nested IF-IF cases - X-Z (#48373) 2021-03-26 17:08:05 +01:00
Matthias Alphart
8fa935234a Type check KNX integration __init__ and knx_entity (#48044) 2021-03-26 16:10:55 +01:00
Franck Nijhof
d2d78d6205 Extend typing on scaffold templates (#48232) 2021-03-26 15:19:44 +01:00
Tobias Sauerwein
3bc6497cbd Add Netatmo schedule event handling (#46573)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-03-26 15:08:41 +01:00
mptei
02b0a4ca1f Xknx unneeded expose (#48311) 2021-03-26 14:51:36 +01:00
J. Nick Koston
ae8afb69e7 Improve august reconnect logic when service become unreachable (#48349)
This is a different error than internet down.
2021-03-26 13:47:32 +01:00
J. Nick Koston
c4f98a3084 Small speed up to adding entities (#48353) 2021-03-26 12:05:19 +01:00
D3v01dZA
8f40c87069 Bump snapcast to 2.1.2 (#48343) 2021-03-26 12:03:38 +01:00
Tobias Sauerwein
1ba54ac2bb Refactor Netatmo tests (#48277) 2021-03-26 11:13:27 +01:00
Erik Montnemery
4fbc3da196 Validate device action schemas once (#48351) 2021-03-26 08:46:26 +01:00
Jan Bouwhuis
5b17aaf9d5 Percentage and preset mode support for MQTT fan (#47944)
* git push --all origin

* Fix percentage to ordered list conversion

* Tests for mqtt fan and fixes

* Improve tests and error handling base config

* Additional tests

* Tests completed, small fixes

* Allow preset mode and percentages combined

* Remove raise in setup and update tests

* Alignment with fan entity mode

* Fix pylint for len-as-condition

* Remove python binary cache file from PR

* Additional tests on async_turn_on and fix

* Added comments for deprecation of speeds

* Schema checks before init

* Optimize pre schema checks

* Correct schema checks

* Update homeassistant/components/mqtt/abbreviations.py

Comment speeds for mqtt fan are deprecated not needed here

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

* Update homeassistant/components/mqtt/fan.py

Comment speeds for mqtt fan are deprecated not needed here

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

* Update homeassistant/components/mqtt/fan.py

Comment speeds for mqtt fan are deprecated not needed here

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

* Update homeassistant/components/mqtt/fan.py

Comment speeds for mqtt fan are deprecated not needed here

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

* Update homeassistant/components/mqtt/fan.py

Comment speeds for mqtt fan are deprecated not needed here

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

* Warnings for exceptions - testing speed_range

* Update homeassistant/components/mqtt/abbreviations.py

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

* Update homeassistant/components/mqtt/fan.py

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

* Update homeassistant/components/mqtt/fan.py

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

* Update homeassistant/components/mqtt/fan.py

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

* Update homeassistant/components/mqtt/fan.py

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

* Update homeassistant/components/mqtt/fan.py

* Save with black

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-03-26 08:37:47 +01:00
Franck Nijhof
da2fecb312 Pre-calculate Verisure alarm states (#48340)
* Pre-calculate Verisure alarm states

* Correct super call
2021-03-26 08:21:11 +01:00
Erik Montnemery
72281f4718 Validate device trigger schemas once (#48319) 2021-03-26 08:09:21 +01:00
Matthias Alphart
de1fa706a0 xknx 0.17.4 (#48350) 2021-03-26 08:07:57 +01:00
Simone Chemelli
2b24f8b735 Remove timedate manipulation from Neato attributes (#48150)
* Remove timedate manipulation to get timezone back

* Updated camera to new format
2021-03-26 05:11:08 +01:00
Garrett
a019f076c0 Subaru integration code quality changes (#48193)
* Apply changes from code review

* Update sensor tests

* Fix pylint error

* Apply suggestions from code review

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

Co-authored-by: Brandon Rothweiler <brandonrothweiler@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-26 04:24:37 +01:00
Franck Nijhof
24dee01599 Use async with in Acmeda config flow (#48291) 2021-03-26 04:21:27 +01:00
Franck Nijhof
b90c620c5e Address huisbaasje review comments (#48313)
* Address huisbaasje review comments

* Update homeassistant/components/huisbaasje/config_flow.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-26 04:18:46 +01:00
starkillerOG
b4d39d517f Update in 1 minute on unavailable Motion blinds (#47800)
* if unavailable request update in 1 minute

* fix styling

* improve changing update interval

* remove unused import

* try to fix

* remove unused pass

* add const

* fix missing timedelta

* update to motionblinds 0.4.10

* improve update coordinator

* fix linting errors

* remove unused import

* move update functions within the DataUpdateCoordinator

* fix white space
2021-03-25 20:06:40 -07:00
HomeAssistant Azure
d5afd0afb3 [ci skip] Translation update 2021-03-26 00:04:15 +00:00
Marc Mueller
1dc25a5864 Bump python-typing-update to 0.3.2 (#48303)
* Bump python-version-update to 0.3.2
* Changes after update
* Fix pylint issues
2021-03-25 21:09:06 +01:00
Robert Svensson
88b5eff726 Fix late comment to PR adding percentage support to deCONZ fan platform (#48333) 2021-03-25 20:02:17 +01:00
Alexey Kustov
056f7d493c Support overriding token in notifify.event service (#47133)
* Add opportunity to define token for each message

* Update homeassistant/components/notify_events/notify.py

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

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-03-25 19:15:24 +01:00
jjlawren
e42ca35c94 Bump plexwebsocket to 0.0.13 (#48330) 2021-03-25 19:12:12 +01:00
Tobias Sauerwein
ec1334099e Add tests for Netatmo data handler (#46373)
* Add tests for Netatmo data handler

* Clean up coveragerc

* Move block to fixture

* Minor update

* Remove tests of implementation details for data handler

* Update homeassistant/components/netatmo/data_handler.py

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

* Update homeassistant/components/netatmo/data_handler.py

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

* Import callback

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-25 19:07:45 +01:00
Franck Nijhof
f0e5e616a7 Fix device discovery of OAuth2 config flows (#48326) 2021-03-25 10:35:01 -07:00
William Scanlon
4f4a6fd6a5 Add econet thermostat support and use getattr for sensors (#45564)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-25 17:06:51 +01:00
Martin Hjelmare
9f07ca069d Fix zha manual flow test (#48317) 2021-03-25 09:19:32 -04:00
chemaaa
1b60c8efb8 Add Homepluscontrol integration (#46783)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-25 14:12:31 +01:00
Erik Montnemery
3188f796f9 Add allowed UUIDs and ignore CEC to Google Cast options flow (#47269) 2021-03-25 14:06:01 +01:00
Matthias Alphart
6b2a2740f1 Type check KNX integration climate (#48054) 2021-03-25 09:47:49 +01:00
Zixuan Wang
21c72fa559 Fix missing glances temperature sensors (#46086)
* Fix missing glances temperature sensors (#44899)

* Revert matching rules for Glances

* Shorter if statement

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

* Revert long-line if statement

* Update if statement

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-03-25 09:19:11 +01:00
Boris Gulay
642bb91a9a Add metrics upload by UDP to graphite (#43751) 2021-03-25 09:18:10 +01:00
jjlawren
20485eb132 Bump plexapi to 4.5.1 (#48307) 2021-03-25 08:41:21 +01:00
J. Nick Koston
da7fd8a294 Listen on the default interface by default for zeroconf (#48302) 2021-03-24 15:04:55 -10:00
Raman Gupta
058d232c57 Determine zwave_js sensor device class during initialization (#48304) 2021-03-24 20:08:16 -04:00
HomeAssistant Azure
6660fb7478 [ci skip] Translation update 2021-03-25 00:03:36 +00:00
J. Nick Koston
c340a39275 Handle range conversions that do not start at 1 (#48298) 2021-03-24 12:33:44 -10:00
djtimca
cc12d29f6d Bump omnilogic to 0.4.3 to fix API certificate issue (#48296)
* Bump omnilogic to 0.4.3 to fix API certificate issue.

* Updated requirements files.
2021-03-24 22:58:03 +01:00
Marc Mueller
6fc3406c93 Ignore python-typing-update for pre-commit requirements (#48292) 2021-03-24 20:05:53 +01:00
scyto
a9ccba44ed Add support for Roomba 980 discovery (#47696)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-03-24 08:46:11 -10:00
Erik Montnemery
8896ae0d56 Add support for tracing script execution (#48276)
* Add support for tracing script execution

* Tweak
2021-03-24 17:56:22 +01:00
Franck Nijhof
0be6a868e0 Fix Core bug report issue form (#48279) 2021-03-24 10:20:49 +01:00
Matt Zimmerman
5265aabf92 Clean up SmartTub reminders (#48033)
* remove "date" state attribute

* remove unused constant
2021-03-24 08:39:23 +01:00
jjlawren
879c82ebf8 Improve Plex GDM client connections (#48272) 2021-03-24 07:57:45 +01:00
Tobias Sauerwein
0d699bb768 Add tests for Netatmo sensor (#46393)
* Add tests for Netatmo sensor

* Fix coveragerc

* Remove freezegun dependency

* Use f-strings instead of string concatenation

* Update tests/components/netatmo/test_sensor.py

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

* Address comment on config options test

* Replace deprecated call to async_get_registry()

* Fix public weather sensor update test

* Clean up

* Prevent division by zero

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-24 07:17:51 +01:00
Paulus Schoutsen
3dec394cad Migrate template to register reload service on async_setup (#48273) 2021-03-23 20:35:15 -07:00
Paulus Schoutsen
b58dd7d047 Bump frontend to 20210324.0 2021-03-24 00:23:29 +00:00
HomeAssistant Azure
c4e5af8081 [ci skip] Translation update 2021-03-24 00:03:09 +00:00
Bram Kragten
b1d0b37d2c Google assistant: disconnect user agent when not found in google (#48233) 2021-03-23 15:04:32 -07:00
Erik Montnemery
9f8b697e64 Refactor tracing: Prepare for tracing of scripts (#48231) 2021-03-23 14:53:38 -07:00
jjlawren
195d4de6cd Bump plexapi to 4.5.0 (#48264) 2021-03-23 22:47:00 +01:00
Robert Svensson
70d9e8a582 Add proper percentage support to deCONZ fan integration (#48187)
* Add proper percentage support to deCONZ fan integration

* Properly convert speed to percentage

* Remove disabled method

* Replace convert_speed with a dict
2021-03-23 22:29:55 +01:00
Joakim Sørensen
49b47fe648 Install requirements.txt while building dev Dockerfile (#48268) 2021-03-23 14:04:15 -07:00
Diogo Gomes
fd5916e067 datetime must be a string (#47809) 2021-03-23 20:19:47 +01:00
Fredrik Erlandsson
d129b8e1e1 Update pypoint to 2.1.0 (#48223)
* update pypoint to 2.1.0

* Add properties and device_classes to constant

* Fix unique_ids for binary_sensors

* Update device icon

* Fallback to device_class icon.

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

* Just use known events

* Use DEVICE_CLASS_SOUND

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-03-23 20:03:54 +01:00
Franck Nijhof
cc73cbcace Update issue form to use latest changes (#48250) 2021-03-23 18:45:40 +01:00
Alexei Chetroi
269608d1af Bump up ZHA dependencies (#48257) 2021-03-23 11:03:16 -04:00
Erik Montnemery
a09c8eecb7 Fix some sensor classes (#48254)
* Fix some sensor classes

* Tweak

* Tweak
2021-03-23 15:56:33 +01:00
Franck Nijhof
6932cf9534 Use contextlib.suppress where possible (#48189) 2021-03-23 14:36:43 +01:00
Tobias Sauerwein
9656f260a4 Add tests for Netatmo (#46372)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-23 14:28:35 +01:00
Robert Svensson
1095d93892 Increase test coverage of deCONZ device triggers (#48126)
* Increase test coverage of deCONZ device triggers

* Revert removed new line

* Found a way to explicitly assert that exceptions are raised

* Remove unnecessary block till done

* Fix unnecessary elif

* Fix review comments

* Remove helper tests
2021-03-23 13:49:44 +01:00
Fabian Affolter
e0e3495849 Upgrade pylast to 4.2.0 (#48245) 2021-03-23 12:18:03 +01:00
J. Nick Koston
7bd876beaf Add dhcp discovery support to blink (#48243) 2021-03-23 12:00:06 +01:00
J. Nick Koston
6e07279257 Add august doorbells to dhcp discovery (#48244) 2021-03-23 11:59:04 +01:00
David Keijser
95370ac84b Change nanoleaf name to configured name instead of hostname (#46407)
* nanoleaf: Key config by device id

Rather than host which is not stable

* nanoleaf: Use pretty name instead of hostname
2021-03-23 10:28:19 +01:00
Kevin Fronczak
8900b38c7f Add Blink config migration (#46671) 2021-03-23 09:24:42 +01:00
Dewet Diener
fb03d79daf Bump nanoleaf to 0.1.0, add unique IDs (#48135)
* bump pynanoleaf and expose model/serial as unique_id

* addressed PR feedback
2021-03-23 09:18:48 +01:00
uvjustin
cd455e296e Remove login details before logging stream source (#45398)
* Remove login details before logging stream source

* Convert to str before re

* Use compiled RE

* Add tests and filter log message in worker

* Update import

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

* isort

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-03-23 07:30:45 +01:00
HomeAssistant Azure
55b689b464 [ci skip] Translation update 2021-03-23 00:03:29 +00:00
Paulus Schoutsen
19ab7306ec Clean up AsusWRT (#48012) 2021-03-22 23:21:33 +01:00
Erik Montnemery
9e9ba53f0e Move SensorEntity last in the inheritance tree (#48230) 2021-03-22 20:05:13 +01:00
plomosits
18e6816373 Improve Docker and Kubernetes support for KNX (#48065)
Co-authored-by: Matthias Alphart <farmio@alphart.net>
2021-03-22 20:03:57 +01:00
Erik Montnemery
fdf97eaca3 Migrate integrations i-m to extend SensorEntity (#48213) 2021-03-22 19:59:03 +01:00
Erik Montnemery
64bc9a8196 Migrate integrations r-s to extend SensorEntity (#48215) 2021-03-22 19:54:14 +01:00
Erik Montnemery
0c086b5067 Migrate integrations w-z to extend SensorEntity (#48217) 2021-03-22 19:50:29 +01:00
Erik Montnemery
783b453bbe Migrate integrations t-v to extend SensorEntity (#48216) 2021-03-22 19:47:44 +01:00
Erik Montnemery
c900e3030b Migrate integrations n-q to extend SensorEntity (#48214) 2021-03-22 19:46:46 +01:00
Erik Montnemery
339a56e434 Migrate integrations f-h to extend SensorEntity (#48212) 2021-03-22 19:45:17 +01:00
Erik Montnemery
a49989241a Refactor tracing: Move trace support to its own integration (#48224) 2021-03-22 19:19:38 +01:00
Dermot Duffy
781084880b Add an option to hide selected Hyperion effects (#45689) 2021-03-22 15:59:12 +01:00
Philip Allgaier
286217f771 Fix condition extra fields for climate and humidifier (#48184) 2021-03-22 14:59:40 +01:00
MatsNl
53a9c117ee Add jobstate parser to Onvif integration (#46589) 2021-03-22 14:43:46 +01:00
starkillerOG
a583f56bd8 Add identification for YAML imports (#48162) 2021-03-22 14:35:24 +01:00
Franck Nijhof
dc15f243e6 Upgrade pyupgrade to v2.11.0 (#48220) 2021-03-22 13:29:39 +01:00
Erik Montnemery
272dffc384 Improve script tracing (#48100)
* Improve script tracing

* Fix test
2021-03-22 13:15:45 +01:00
unaiur
3fb323b745 Fix maxcube temperature for thermostat auto mode (#48047)
maxcube-api dependency now supports using None as the
target temperature: in that case, it uses the scheduled
temperature in auto mode and current temperature in all
other modes.

We will use that feature when changing hvac_mode to auto and
selecting PRESET_NONE.
2021-03-22 13:13:06 +01:00
Franck Nijhof
b7ad5ff032 Upgrade pre-commit to 2.11.1 (#48219) 2021-03-22 13:11:06 +01:00
Franck Nijhof
6cead320de Bump colorlog to 4.8.0 (#48218) 2021-03-22 13:10:01 +01:00
Erik Montnemery
23b562386f Migrate integrations d-e to extend SensorEntity (#48211) 2021-03-22 12:52:29 +01:00
Erik Montnemery
e0cd7072d6 Migrate integrations a-c to extend SensorEntity (#48210) 2021-03-22 12:37:16 +01:00
Sean Wilson
1bb29bffbb Update aqualogic library to v2.6 (#48119) 2021-03-22 12:12:14 +01:00
Greg Dowling
834fc1ae14 Remove vera should_poll (#48209) 2021-03-22 12:01:17 +01:00
J. Nick Koston
136ac88bed Bump yalexs to 1.1.5 for august (#48205)
Turns on auto-reconnect support
2021-03-22 11:19:05 +01:00
Paulus Schoutsen
f67e8b4369 Populate trigger variable when manually triggering automation (#48202)
* Populate trigger variable when manually triggering automation

* Update tests/components/automation/test_init.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-03-22 08:22:32 +01:00
J. Nick Koston
6b93c4073d Ensure homekit yaml config works when there is an ignored config entry (#48175) 2021-03-21 21:17:04 -10:00
J. Nick Koston
a2c4b438ea Convert august to be push instead of poll (#47544) 2021-03-21 22:35:12 -07:00
J. Nick Koston
8e4c0e3ff7 Increase config entries test coverage (#48203) 2021-03-21 19:29:48 -10:00
J. Nick Koston
7a447c4209 Exclude homekit accessories created by the homekit integration from homekit_controller (#48201) 2021-03-21 22:18:24 -07:00
jjlawren
e5893ca42c Trigger Plex GDM scans regularly (#48041) 2021-03-21 22:14:09 -07:00
Erik Montnemery
40ce25800c Test that homeassistant stop and restart do not block WS (#48081) 2021-03-21 22:12:56 -07:00
Erik Montnemery
73e546e2b8 Improve condition trace tests (#48152) 2021-03-21 22:09:59 -07:00
Emily Mills
8557b856a4 Fix Kulersky and Zerproc config unloading (#47572) 2021-03-21 22:08:09 -07:00
J. Nick Koston
f35641ae8e Make sure include_ignore=False always works with _async_current_entries (#48196)
If the step was anything other than SOURCE_USER,
include_ignore=False would not be honored
2021-03-21 21:57:49 -07:00
J. Nick Koston
fd310e1f41 Update homekit to improve representation of activity based remotes (#47261) 2021-03-21 21:55:20 -07:00
J. Nick Koston
3f2ca16ad7 Index config entries by id (#48199) 2021-03-21 21:44:29 -07:00
HomeAssistant Azure
6fab4a2c82 [ci skip] Translation update 2021-03-22 00:08:34 +00:00
Nate Clark
2912db84d7 Handle switch state updates from Konnected device (#48167)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-22 00:16:34 +01:00
xonestonex
9739707f62 Preset support for MOES thermostat valves (#48178) 2021-03-21 18:03:23 -04:00
Ikko Ashimine
7473f25afd Fix typo in homekit strings.json (#48176)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-03-21 12:39:33 +01:00
Kevin Worrel
fb48fd7d10 ScreenLogic cleanups (#48136)
* ScreenLogic cleanup.
Bump screenlogicpy to 0.2.0.
Move heating functions from water_heater to climate platform.
Address notes from original PR.

* Fix temperature attribute

* Addressing notes.
Bump screenlogicpy to 0.2.1.
Made device_types constants.
Made (known) equipment flags constants.
Used dict.get() in places where None is the default.
Return fast with good _last_preset.

* Update homeassistant/components/screenlogic/climate.py

Let base entity handle state property.

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

* Patch integration setup functions.

* Exception, ATTR_TEMPERATURE notes

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-03-21 11:56:46 +01:00
Erik Montnemery
346a724ac3 Mark base components' state_attribute @final, rename others to extra_state_attributes (#48161)
* Mark base state_attributes @final, rename others to extra_state_attributes

* Fix calendar, update tests
2021-03-21 10:38:24 +01:00
javicalle
668d018e9c Make Rflink handle set_level command for dimmable devices (#46499)
* Added handle_event for set_level command in dimmable devices

* refactor common code for dimmable devices

* Force tests

Silly change to force tests execution

* fix super()

* add rflink dim utils
2021-03-21 08:43:38 +01:00
Franck Nijhof
87499989a0 Small code styling tweaks for HomeKit (#48163) 2021-03-20 17:08:49 -10:00
javicalle
99d2d72d13 Update RFLink tests (#48149) 2021-03-21 03:27:24 +01:00
Otto Winter
0193f16ae9 ESPHome trigger reconnect immediately when mDNS record received (#48129) 2021-03-20 14:49:03 -10:00
HomeAssistant Azure
46a3b80a2d [ci skip] Translation update 2021-03-21 00:05:03 +00:00
Philip Allgaier
3ae9460131 Use domain const in config_flow (#48168) 2021-03-21 00:34:46 +01:00
David F. Mulcahey
01fcc41aa0 only block coord removal if it is active (#48147) 2021-03-20 17:26:23 -04:00
Franck Nijhof
08870690a6 Fix a collection of tests with missing asserts (#48127)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-20 17:23:55 +01:00
Erik Montnemery
f8755a52c2 Warn on undefined variables in templates (#48140)
* Warn on undefined variables in templates

* Add test

* fix tests

* fix tests
2021-03-20 15:16:04 +01:00
Robert Svensson
863f75e65e Improve test coverage of deconz_device (#48141) 2021-03-20 14:22:01 +01:00
Franck Nijhof
5a2b5fe7c5 Yoda assertion style removed is (#48142) 2021-03-20 13:55:10 +01:00
Tobias Sauerwein
365e8a74ee Add tests for Netatmo webhook handler (#46396)
* Add tests for Netatmo webhook handler

* Add async prefix

* Remove freezegun dependency

* Clean up
2021-03-20 08:26:11 +01:00
Jonathan Keslin
0f16d4f1e7 Update pyvesync to 1.3.1 (#48128) 2021-03-19 19:50:52 -05:00
Franck Nijhof
fb849b81b5 Rewrite of not a == b occurances (#48132) 2021-03-20 01:27:04 +01:00
Thiago Oliveira
26bceae99d Set zwave_js climate precision to tenths for F (#48133) 2021-03-20 01:20:09 +01:00
HomeAssistant Azure
098c53e8b5 [ci skip] Translation update 2021-03-20 00:04:10 +00:00
Franck Nijhof
e47d8da3b4 Remove defunct test from percentage util (#48125) 2021-03-19 17:16:45 -05:00
Matthias Alphart
70bebc51f2 Type check KNX integration cover (#48046) 2021-03-19 22:25:20 +01:00
Matthias Alphart
16a4f05e27 Type check KNX integration fan (#48056) 2021-03-19 20:55:08 +01:00
Greg Dowling
b03c97cdd0 Make Vera should_poll static rather than dynamic (#47854)
* Make should_poll static.

* Address review comments.

* Fix black error.
2021-03-19 20:27:56 +01:00
Robert Svensson
24e067782a Improve sensor coverage by verifying daylight sensor attributes (#48090) 2021-03-19 16:51:44 +01:00
sycx2
bc0eb9bf32 Improve uvc test camera (#41438)
* Improve uvc test camera

* Clean setup full config

* Clean setup partial config

* Set more camera defaults

* Clean setup partial config v31x

* Clean setup incomplete config

* Clean setup nvr errors during indexing

* Clean setup nvr errors during initialization

* Clean properties

* Fix motion recording mode properties

* Clean stream

* Clean login

* Clean login v31x

* Clean login tries both addres and caches

* Clean login fails both properly

* Remove not needed test

* Clean camera image error

* Test snapshot login retry

* Clean up

* Test enable and disable motion detection

* Times must be UTC

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-19 15:54:07 +01:00
javicalle
e798f415a4 Wait for switch startup in generic_thermostat (#45253)
* Better status control on restore

* Better status control on restore

* fix code coverage

* Rollback hvac_mode initialization

I think I have better understood the handling of the `hvac_mode`.
I change the approach. Now the thermostat doesn't initialize until the switch is available.

* fix pyupgrade

* fix black

* Delete test_turn_on_while_restarting

HVAC mode should not be modified by the switch.
IMHO, this test does not make sense because if the switch is turned on the thermostat is not turning on (and not changing HVAC_MODE)

* Re add turn off if HVAC is off

If HVAC_MODE is off thermostat will not control heater switch. This can be because `initial_hvac_mode`, because state defaults to or because old_state.
IMHO it is preferable to be excessively cautious.

* Update climate.py

* Change warning message

* Fix black

* Fix black
2021-03-19 15:42:45 +01:00
J. Nick Koston
c820dd4cb5 Have pylint warn when user visible log messages do not start with capital letter or end with a period (#48064)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-19 09:26:36 -05:00
Martin Hjelmare
3742f175ad Add missing oauth2 error abort reason (#48112) 2021-03-19 14:27:26 +01:00
Franck Nijhof
8a56dbf587 Add flake8 comprehensions checks to pre-commit & CI (#48111) 2021-03-19 13:41:09 +01:00
Robert Svensson
fa5ce70af1 Improve test coverage of deCONZ config flow (#48091) 2021-03-19 13:37:22 +01:00
Franck Nijhof
6e0c0afde2 Upgrade RPi.GPIO to 0.7.1a4 (#48106) 2021-03-19 13:36:44 +01:00
Erik Montnemery
703c073e53 Improve websocket debug log 2021-03-19 13:30:16 +01:00
Michael Cicogna
b1626f0091 Fix Homematic transition function on light devices with multiple channels (#45725)
* Update light.py

Fix Transition function on devices with multiple channels

* Update light.py

fix Flake8 Warning W293 blank line contains whitespace
2021-03-19 12:36:03 +01:00
Andreas Brett
993261e7f5 Add "timestamp" attribute to seventeentrack (#47960)
* bump py17track to 3.0.1

* Make aiohttp ClientSession optional

as introduced in py17track v3.0.0 (https://github.com/bachya/py17track/releases/tag/3.0.0)

* Update manifest.json

* add new attribute timestamp

introduced in 3.1.0

* Update requirements.txt

* Update requirements_all.txt

* Update requirements.txt

* Update requirements_test_all.txt

* Update sensor.py

* Update sensor.py

* Update manifest.json

* provide timezone configuration

user config to pre-define timezone of package status timestamps

* Update requirements_all.txt

* Update requirements_test_all.txt

* linting

* use hass.config.time_zone

* Update sensor.py

* Update test_sensor.py

* Update test_sensor.py

* black

* Update manifest.json

* adjust changes to session param

* added test against latest dev branch

* make isort happy

* make black happy

* make flake8 happy

* make black happy

* bump to 3.2.1

* 3.2.1

* Update typing 15
2021-03-19 12:34:06 +01:00
Tobias Sauerwein
4ee4d674d8 Add tests for Netatmo camera (#46380)
* Add test for Netatmo camera

* Improve docstrings

* Remove light tests

* Remove freezegun from tests

* Update camera tests

* Remove freezegun dependency

* Update tests/components/netatmo/test_camera.py

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

* Update tests/components/netatmo/test_camera.py

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

* Deduplication of the fake webhook payload

* Mock pyatmo instead of checking the logs

* Clean up

* Further deduplication

* Assert function arguments

* Rename mocked functions

* Update .coveragerc

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-03-19 12:19:57 +01:00
Tobias Sauerwein
aaafe399a1 Add tests for Netatmo light (#46381)
* Add tests for Netatmo light

* Improve docstring

* Register the camera data class for the light platform

* Remove freezegun dependency

* Update tests

* Update tests/components/netatmo/test_light.py

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

* Deduplicate webhook test data

* Mock pytest to verify it is called

* Don't test internals

* Rename

* Assert light still on with erroneous event data

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-03-19 12:19:27 +01:00
Maciej Bieniek
7858b59944 Use device class voltage in NUT integration (#48096) 2021-03-19 10:25:17 +01:00
Matthias Alphart
66b537c0e3 Type check KNX integration factory and schema (#48045)
these are used non-optional anyway
get them per config[] notation
2021-03-19 10:23:50 +01:00
Matthias Alphart
e522b311ce Type check KNX integration binary_sensor, sensor and switch (#48050) 2021-03-19 10:22:18 +01:00
Matthias Alphart
fb1e76db8c Type check KNX integration light (#48053)
* type check light

* review changes
2021-03-19 10:21:06 +01:00
Matthias Alphart
943ce8afaf Type check KNX integration weather, notify and scene (#48051) 2021-03-19 10:16:27 +01:00
Matthias Alphart
987c2d1612 Type check KNX integration expose (#48055) 2021-03-19 10:12:55 +01:00
Tobias Sauerwein
2f15957707 Refactor Netatmo test (#48097)
* Refactor webhook simulate

* Update test_climate.py
2021-03-19 09:57:11 +01:00
HomeAssistant Azure
d77a28b8a1 [ci skip] Translation update 2021-03-19 00:03:03 +00:00
Martidjen
8a37b616bf Add Opentherm Gateway current and setpoint precision (#47484)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-19 00:47:59 +01:00
Marc Mueller
7def367467 Update pyupgrade to v2.10.1 (#48089) 2021-03-19 00:03:27 +01:00
Marc Mueller
314a5518f1 Add python-typing-update to pre-commit-config (#48088) 2021-03-18 23:20:25 +01:00
Marc Mueller
4cb7718192 Update typing 16 (#48087) 2021-03-18 22:58:19 +01:00
Maciej Bieniek
0f5efca76b Fix Shelly sleeping device initialization after reconfiguration (#48076) 2021-03-18 13:26:20 -07:00
Erik Montnemery
7b717bc437 Correct trace for repeat script actions (#48031) 2021-03-18 13:14:06 -07:00
bestlibre
98d7e6b898 Add images support to matrix notify (#37625)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-03-18 11:30:38 -07:00
Dan Klaffenbach
5174f63fd8 Add definitions for grouping media players (#41193)
* Add definitions for grouping media players

See https://github.com/home-assistant/architecture/issues/364

* Fix Google Assistant tests

* Define sync versions of async_join_players/async_unjoin

* Don't use async API in synchronous test methods

* Fix tests and make pylint happy

The method name `unjoin` is used by another component, so let's use
`unjoin_player` instead.

* Fix emulated_hue tests

The new media player entity in the `demo` component requires a tiny
adjustment in the emulated_hue tests.

* Use "target:" in service description

* Also use "name:" in service descriptions

Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-03-18 18:19:28 +01:00
Raman Gupta
9fca001eed Bump zwave-js-server-python to 0.22.0 (#48085) 2021-03-18 18:12:33 +01:00
elyobelyob
53687c766d Add URL input for Prowl (#46427)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-03-18 17:02:38 +01:00
Marc Mueller
54d1e9985f Update typing 15 (#48079) 2021-03-18 15:13:22 +01:00
Marc Mueller
dcca29ef68 Update typing 14 (#48078) 2021-03-18 15:08:35 +01:00
Tobias Sauerwein
7d196abc4a Add tests for Netatmo oauth2 api (#46375)
* Add Netatmo tests for api

* Update tests/components/netatmo/test_api.py

* Update .coveragerc

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-03-18 14:55:39 +01:00
Marc Mueller
b67b9b94f9 Update typing 13 (#48077) 2021-03-18 14:43:52 +01:00
Marc Mueller
a3cd1854f6 Update typing 12 (#48073) 2021-03-18 14:31:38 +01:00
Berni Moses
6cd6ad6904 Ignore not implemented lg_soundbar source/equaliser. (#45868) 2021-03-18 14:06:17 +01:00
Marc Mueller
3d2b81a401 Update typing 11 (#48072) 2021-03-18 13:21:46 +01:00
Raj Laud
99f9f8dec0 Allow hdmi_cec to recover from lost connection to adapter without restart (#40714)
* Only update CecDevice state when there is new data

* Replace CecDevice with CecEntity

* Support for losing and reconnecting to pycec TcpAdapter

* Register listener in async_added_to_hass

* Rename hdmi_cec watchdog

* Only update CecDevice state when there is new data

* Fix flake8 docstring error

* Fix linter error

* Bump pycec version to 0.5.0

* Bump pycec version to 0.5.1

* Fixe merge mistake

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-03-18 13:07:35 +01:00
Marc Mueller
25a13d1554 Update typing 10 (#48071) 2021-03-18 13:07:04 +01:00
Andreas
00dca88024 Amcrest add support for CrossLineDetection (#44582)
Co-authored-by: andreas-amlabs <andreas-amlabs@users.noreply.github.com>
2021-03-18 12:32:08 +01:00
javicalle
c8950870a2 Propagate RFLink 'send_command' event (#43588)
* propagate send_command event

* propagate send_command event
2021-03-18 12:25:00 +01:00
Robert Svensson
8b8a54b367 Improve deCONZ services and scenes tests (#47829)
Use patch.dict rather than deep copy to change DECONZ_WEB_REQUEST
2021-03-18 11:57:56 +01:00
Robert Svensson
ad5dbebc03 Use websocket fixture in deCONZ switch tests (#47831)
Localize test data
Improve asserts
2021-03-18 11:44:52 +01:00
Robert Svensson
a4b2dff58d Use websocket fixture in deCONZ sensor tests (#47830)
Localize test data
Improve asserts
2021-03-18 11:41:27 +01:00
Robert Svensson
a21d0cadf8 Use websocket fixture in deCONZ lock tests (#47827)
Localize test data
Improve asserts
2021-03-18 11:06:44 +01:00
Robert Svensson
3f2d3bd1b2 Use websocket fixture in deCONZ light tests (#47826)
Localize test data
Improve asserts#
2021-03-18 11:01:32 +01:00
Robert Svensson
7350215b4e Use websocket fixture in deCONZ fan tests (#47824)
Localize test data
Improve asserts
2021-03-18 10:49:48 +01:00
Robert Svensson
7ff9610e67 Use websocket fixture in deCONZ event related tests (#47823)
Localize test data
Improve asserts
2021-03-18 10:44:31 +01:00
Robert Svensson
a57d340037 Use websocket fixture in deCONZ cover tests (#47822)
Localize test data
Improve asserts
2021-03-18 10:07:11 +01:00
Marc Mueller
283b4abe67 Update typing 09 (#48059) 2021-03-18 10:02:00 +01:00
Robert Svensson
2ab640aaef Use websocket fixture in deCONZ climate tests (#47821)
Localize test data
Improve asserts
2021-03-18 09:57:27 +01:00
J. Nick Koston
fea0e39fa0 Reduce rest setup code (#48062)
- Switch to storing each platform config/rest data in a list
2021-03-18 09:55:38 +01:00
Robert Svensson
333f5da036 Use websocket fixture in deCONZ binary sensor tests (#47820)
Localize test data
Improve asserts
2021-03-18 09:51:42 +01:00
Marc Mueller
5cdd945f44 Update typing 08 (#48058) 2021-03-18 09:25:40 +01:00
Marc Mueller
9e1a6610dc Update typing 07 (#48057) 2021-03-18 08:02:55 +01:00
J. Nick Koston
08db262972 Add a service to reload config entries that can easily be called though automations (#46762) 2021-03-17 21:27:21 -07:00
corneyl
6fb0e49335 Upgraded aiopylgtv to v0.4.0 (#47014)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-03-17 20:59:48 -07:00
Tobias Haber
f785cc7d9a Google has deprecated a comma separated list for modes changed it to array (#48029) 2021-03-17 20:59:06 -07:00
HomeAssistant Azure
f625e324dd [ci skip] Translation update 2021-03-18 00:07:07 +00:00
Marc Mueller
91df3fa904 Update typing 06 (#48039) 2021-03-17 23:49:01 +01:00
Marc Mueller
7c0734bdd5 Update typing 05 (#48038) 2021-03-17 23:43:55 +01:00
Marc Mueller
76199c0eb2 Update typing 04 (#48037) 2021-03-17 23:34:25 +01:00
Guillermo Ruffino
02619ca2cd Add service schema for ESPHome api services (#47426) 2021-03-17 22:50:21 +01:00
J. Nick Koston
dd56cc8010 Fix rest sensor data misalignment with multiple sensors (#48043)
If there were multiple rest data sources, the index needed
to be incremented by type instead of by data source/type
2021-03-17 22:47:42 +01:00
Marc Mueller
fabd73f08b Update typing 03 (#48015) 2021-03-17 21:46:07 +01:00
Marc Mueller
6fb2e63e49 Update typing 02 (#48014) 2021-03-17 18:34:19 +01:00
Hans Kröner
86d3baa34e Improve OWM Precipitation sensors (#47945) 2021-03-17 17:39:47 +01:00
Marc Mueller
e55702d635 Update typing 01 (#48013) 2021-03-17 17:34:55 +01:00
Matthew Donoughe
9011a54e7f Switch history tests to pytest (#42318)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-17 15:32:44 +01:00
schiermi
6a24ec7a30 Fix workday sensor to honor timezone (#47927) 2021-03-17 15:32:18 +01:00
Marc Mueller
a1ff45cbf2 Update metadata license string (#46899) 2021-03-17 14:32:13 +01:00
sycx2
009e44ed9b Rewrite tests for Template Light (#41163) 2021-03-17 11:30:44 +01:00
Nathan Tilley
6f7f4955a3 Add Logger Check Before Adding Another (#47954) 2021-03-17 11:11:39 +01:00
dependabot[bot]
4f3b7f917f Bump codecov/codecov-action from v1.2.2 to v1.3.1 (#48020)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from v1.2.2 to v1.3.1.
- [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/v1.2.2...fcebab03f26c7530a22baa63f06b3e0515f0c7cd)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-17 09:52:17 +01:00
Jim Ekman
ecf93e09e8 Add support for percentage based fan model in esphome (#46712) 2021-03-17 08:50:34 +01:00
Nathan Spencer
bdc8a2878f Fix issue with setting sleep mode during DST (#48001) 2021-03-17 08:23:54 +01:00
Philip Allgaier
470b0b8b87 Fix historic attributes for input_datetime (#45208) 2021-03-16 22:40:20 -07:00
HomeAssistant Azure
4306c8fbb4 [ci skip] Translation update 2021-03-17 00:03:55 +00:00
Paulus Schoutsen
529b23d8af Bump frontend to 20210316.0 2021-03-16 23:43:16 +00:00
Kevin Worrel
d21d9951ba Add Pentair ScreenLogic integration (#47933)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-03-16 13:32:02 -10:00
J. Nick Koston
f605a3c149 Remove YAML support from August (#47615) 2021-03-16 13:22:07 -10:00
Abílio Costa
d49a436573 Delay ZHA group updates to ensure all members are updated first (#46861)
* Delay ZHA group updates to ensure all members are updated first

After turning off a group, when the first device reports "off", the
other devices may still be "on". If HA processes the group state update
quickly enough, the group will see that some devices are on, so the
state of the group will revert back to "on", and then "off" when the
remaining devices all report "off". That would cause the UI toggle to go
back and forward quickly, and automations that trigger with "state: on"
to fire when the user turns the group off.

This PR fixes that by delaying the group state update, giving time for
all the devices to report their states first.

* Fix zha group tests

* Reorder sleeping.

* Update tests/components/zha/common.py

Co-authored-by: Alexei Chetroi <lexoid@gmail.com>
2021-03-16 17:38:16 -04:00
Paulus Schoutsen
f1c274b3dd Add run_id to automation logbook event (#47980) 2021-03-16 14:37:26 -07:00
Matthias Alphart
a4075d9e11 KNX sensor: float no longer valid for type (#48005) 2021-03-16 21:33:56 +01:00
Joakim Plate
d39aa9f80b Bump philips_js with backported fixes (#47959) 2021-03-16 21:24:01 +01:00
Alan Tse
f86e7535e0 Add location details to deprecation warning (#47155) 2021-03-16 21:16:07 +01:00
chpego
f3c74948c3 Upgrade youtube_dl to version 2021.03.14 (#48000) 2021-03-16 21:02:05 +01:00
Kevin Eifinger
14d3e29e64 Add missing "pin" field in step "pair" for philips_js (#47802) 2021-03-16 20:56:49 +01:00
billsq
55db855f91 Add support for Xiaomi Air Purifier Pro H (#47601) 2021-03-16 20:54:13 +01:00
Matt Zimmerman
73c6728e98 Add binary_sensor entities for SmartTub reminders (#47583) 2021-03-16 17:38:09 +01:00
Alexei Chetroi
6a66ccef1b Bump up ZHA dependencies (#47997) 2021-03-16 12:21:08 -04:00
Ron Heft
bbd98e196b Fix withings InvalidParamsException (#47975)
* Bump withings_api to 2.3.1 (fixes #47329)

* Fix NotifyAppli calls to be compatible with withings_api 2.3.1

* Fix errors with withings_api 2.2+ using pydantic

* Bump withings_api to 2.3.2
2021-03-16 17:15:22 +01:00
Klaas Schoute
0097169dd3 Add aliases to actions in automation blueprints (#47940) 2021-03-16 17:14:07 +01:00
Erik Montnemery
389891d13d Improve JSONEncoder test coverage (#47935) 2021-03-16 17:12:51 +01:00
Matthias Alphart
7ed9e5b2c2 Update xknx to 0.17.3 (#47996) 2021-03-16 16:43:11 +01:00
Franck Nijhof
f695155af5 Add device classes to Verisure sensors (#47990) 2021-03-16 16:30:04 +01:00
Antoine Meillet
4dc0cdbb5f Ignore STATE_UNKNOWN in prometheus (#47840)
Giving a value of 0 by default can lead to erroneous
data being exported. For example, if a MQTT temperature
sensor is in `STATE_UNKNOWN` (which can happen after a
HASS restart), a temperature of 0°C will be exported.
Some user might prefer no value rather than a wrong one.
2021-03-16 16:11:51 +01:00
David F. Mulcahey
673ebe2911 Guard extra call in ZHA lights (#47832)
* add flag to prevent sending an on command

* fix condition

* add constant for default transition

* make groups work with new force on flag

* reorder light entity creation

* rearrange logic

* update test

* remove failed attempt at group light flag

* fix flag
2021-03-16 10:02:26 -04:00
Erik Montnemery
9647eeb2e0 Add custom JSONEncoder for automation traces (#47942)
* Add custom JSONEncoder for automation traces

* Add tests

* Update default case to include type

* Tweak

* Refactor

* Tweak

* Lint

* Update websocket_api.py
2021-03-16 14:21:05 +01:00
Erik Montnemery
5f2326fb57 Add support for light color modes (#47720)
* Add support for light color modes

* Update tests

* Update comments

* Fix bugs, add tests

* Suppress lint errors

* Don't suppress brightness when state is ambiguous

* Improve reproduce_state + add tests

* Add comment

* Change COLOR_MODE_* constants, rename COLOR_MODE_DIMMER to COLOR_MODE_BRIGHTNESS

* Fix tests

* Tweaks
2021-03-16 12:51:39 +01:00
Erik Montnemery
333e6a215a Add execute_script WS API (#47964)
* Add execute_script WS API

* Improve tests
2021-03-16 08:51:00 +01:00
Erik Montnemery
1cde1074c9 Correct trace for choose and repeat script actions (#47973)
* Correct trace for choose and repeat script actions

* only choose-wrap the choices

* Update tests

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-03-16 08:49:16 +01:00
Franck Nijhof
354c0a7fd1 Add reauthentication to Verisure (#47972)
* Add reauthentication to Verisure

* Update translations

* Correct translation step key

* Address pylint warning

* = is not :
2021-03-16 08:41:41 +01:00
Guido Schmitz
2230b03888 Add voltage device class to devolo Home Control (#47967) 2021-03-16 08:13:03 +01:00
SoCalix
0e368df023 Fix xmpp notify for muc rooms (#46715) 2021-03-16 02:07:54 +01:00
HomeAssistant Azure
c11b85af2f [ci skip] Translation update 2021-03-16 00:04:36 +00:00
Erik Montnemery
f82e59c32a Make it possible to list debug traces for a specific automation (#47744) 2021-03-15 16:51:04 -07:00
Franck Nijhof
5f627df6f8 Add devices to Verisure integration (#47913)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-03-15 23:59:41 +01:00
Franck Nijhof
9fd973d8e8 Move Verisure services to entity services (#47905) 2021-03-15 22:50:28 +01:00
Martin Hjelmare
40c12997ed Add zwave_js sensor humidity device class (#47953) 2021-03-15 20:51:24 +01:00
Franck Nijhof
059e9e8307 Add config flow to Verisure (#47880)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-03-15 12:30:44 -07:00
RadekHvizdos
9f4c2f6260 Add suggested_area to MQTT discovery (#47903)
* Add suggested_area to MQTT Discovery

This adds suggested_area to MQTT discovery, so that the discovered devices could be automatically added to the proper area.

* Add abbreviation for MQTT suggested_area

* Remove extra whitespace

* Remove extra whitespace #2

* Added tests for MQTT Dicovery of suggested_area

* Fix test for MQTT suggested_area

* Better tests of MQTT suggested_area

Changes made as per feedback from @emontnemery
2021-03-15 20:02:02 +01:00
Michael
07c197687f improve debug logging (#47858) 2021-03-15 19:42:13 +01:00
Joakim Sørensen
8b3dccb1b4 Use ClientTimeout for hassio send_command (#47957) 2021-03-15 11:31:34 -07:00
J. Nick Koston
28c80c1133 Ensure recorder purge tests can handle multiple purge cycle (#47956)
Since a purge can generate another purge task, we now wait for
three recorder queue completions by default.
2021-03-15 11:19:19 -07:00
Mick Vleeshouwer
9e05aa2d1f Update state translation strings for water_heater (#46588) 2021-03-15 18:20:10 +01:00
Nathan Tilley
93c38551d3 Implement Wake On Lan Dummy State (#47719)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-15 17:20:47 +01:00
Maciej Bieniek
8239fb76d1 Bump brother library (#47949) 2021-03-15 16:42:28 +01:00
Franck Nijhof
5d5a110a20 None optional hass typing in base entity and notify (#47528) 2021-03-15 15:11:41 +01:00
Martin Hjelmare
b9a26cf539 Add zwave_js dev docs readme (#47621) 2021-03-15 15:08:45 +01:00
David McClosky
37c53e0a04 Sort supported features in vlc_telnet (#46800) 2021-03-15 15:07:36 +01:00
Franck Nijhof
48808dc2ad Upgrade vsure to 1.7.3 (#47946) 2021-03-15 14:43:32 +01:00
Andre Lengwenus
50b7b1cc7a Migrate LCN configuration to ConfigEntry (Part 1) (#44090) 2021-03-15 13:45:13 +01:00
Aidan Timson
fb34d1a56e Clean up Lyric (#47899) 2021-03-15 13:06:57 +01:00
Colin O'Dell
b645dabd66 Upgrade qnapstats library to 0.3.1 (#47907)
Fixes #47674
2021-03-15 12:53:45 +01:00
Bram Kragten
87d62cbbb8 Fix target of WLED services (#47938) 2021-03-15 12:50:19 +01:00
Tobias Sauerwein
6b98583bc1 Add tests for Netatmo climate (#46392)
* Add tests for Netatmo climate

* Add comments and fake webhook events

* Split tests

* Split tests

* Clean up

* Fix coveragerc

* Fix requirements

* Remove freezegun dependency

* Move async_block_till_done to

* Call async_handle_webhook directly

* Use async_handle_webhook directly p2

* Exclude helper.py from

* Remove assertion of implementation details

* Use the webhook integration handler

* Extract function
2021-03-15 12:45:36 +01:00
Khole
cfeb8eb06a Add Hive config flow (#47300)
* Add Hive UI

* Fix tests and review updates

* Slimmed down config_flow

* Fix tests

* Updated Services.yaml with extra ui attributes

* cleanup config flow

* Update config entry

* Remove ATTR_AVAILABLE

* Fix Re-Auth  Test

* Added more tests.

* Update tests
2021-03-15 12:27:10 +01:00
starkillerOG
1aa4fd4cc9 Make Xiaomi Miio unavailable device independent (#47795)
* make unavailable independent

* fix data is None

* process review comments
2021-03-15 12:25:11 +01:00
starkillerOG
b2efcb3c22 Support all Xiaomi Miio gateway switches (#46657)
* Support all gateway switches

* fix checks

* process revieuw

* Update homeassistant/components/xiaomi_miio/switch.py

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

* generilize variable matching

* fix styling

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-15 12:15:34 +01:00
Drzony
99d1e3e71d MQTT Light: Use flash attribute in async_turn_off (#47919) 2021-03-15 11:24:07 +01:00
Paulus Schoutsen
7fe3c472e9 Improve bad JSON data reporting (#47932)
* Improve bad data reporting

* Fix tests

Co-authored-by: Erik <erik@montnemery.com>
2021-03-15 10:41:25 +01:00
Patrick Decat
9ec4c07753 Update openwrt-luci-rpc from 1.1.6 to 1.1.8 (#47848) 2021-03-14 22:57:56 -07:00
Brandon Rothweiler
fbf3225234 Address review comments and minor fix for Mazda integration (#47702)
* Address comments from code review

* Fix handling of missing sensor values

* Use default timeout for get_vehicles

* Fix test_update_auth_failure
2021-03-15 06:57:39 +01:00
Allen Porter
bcadccf7aa Invalidate HLS Stream on nest url refresh failure (#47869)
This will ensure that the HLS stream is re-created and fetches a new url.
2021-03-14 22:49:21 -07:00
unaiur
e91be3f9f5 Upgrade to maxcube-api-0.4.1 (#47910)
This new version implements a workaround for a hardware bug
that causes a factory reset of the full MAX! service.

See https://github.com/hackercowboy/python-maxcube-api/issues/12
for more details.
2021-03-14 22:45:14 -07:00
Maciej Bieniek
be2be4e867 Bump gios library (#47917) 2021-03-14 22:44:13 -07:00
Maciej Bieniek
0be1389cf4 Bump accuweather library (#47915) 2021-03-14 22:44:04 -07:00
J. Nick Koston
8795608ae3 Add suggested area support to august (#47930) 2021-03-14 22:42:49 -07:00
J. Nick Koston
15aa00d6cc Fix homekit checking for port cleanup too many times (#47836)
* Fix homekit checking for port cleanup too many times

The loop should have terminated as soon as the port was available

* coverage

* tweak homekit shutdown wait
2021-03-15 05:14:46 +01:00
J. Nick Koston
61a2460c87 Improve error reporting in recorder purge test (#47929) 2021-03-14 19:46:21 -07:00
Paulus Schoutsen
9dabc988fb Bump frontend to 20210314.0 2021-03-14 23:48:47 +00:00
Daniel Perna
d32c364d7f Update pyhomematic to 0.1.72 (#47906) 2021-03-14 18:52:47 +01:00
jugla
4d61f6f8c2 Reduce number of iqair request (#47890) 2021-03-14 09:04:08 -06:00
Daniel Hjelseth Høyer
fea944bcea Upgrade Tibber library to 0.16.2 (#47892) 2021-03-14 13:44:07 +01:00
starkillerOG
50b5fc4860 Add Xiaomi Miio subdevice lightbulb support (#46660)
* Xiaomi Miio: add subdevice lightbulb support

* fix tests

* process revieuw comments

* bump python-miio to 0.5.5

* bump python-miio to 0.5.5

* fix imports
2021-03-14 12:32:19 +01:00
Franck Nijhof
60838cf7ed Verisure: Remove JSONPath, unique IDs, small cleanups (#47870)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-14 10:38:09 +01:00
Aidan Timson
984f02882b Add HVAC action to Lyric climate platform (#47876) 2021-03-13 22:05:47 -10:00
Aidan Timson
47114c5f4f Update service config for lyric (#47857) 2021-03-13 22:04:49 -10:00
Martin Hjelmare
c53a462b3d Fix zwave_js preset mode lookup (#47851) 2021-03-13 22:27:05 +01:00
Alexei Chetroi
7d8eb49d88 Bump up ZHA dependency (#47873) 2021-03-13 16:06:07 -05:00
Pierre Ståhl
518c86a0ab Add device_info to Apple TV entities (#47837) 2021-03-13 10:39:04 -10:00
Aidan Timson
263023a152 Update aiolyric to v1.0.6 (#47871) 2021-03-13 10:32:38 -10:00
tdorsey
eddb97b6fd Fix spelling of automatically in roomba/lutron_caseta components (#47856) 2021-03-13 10:26:48 -10:00
Raman Gupta
c7b9a0715d Fix zwave_js preset supported feature (#47819) 2021-03-13 12:43:03 +01:00
Allen Porter
02a82d3f00 Add timeouts in stream tests to prevent possible hangs (#47545)
* Add timeouts on recving packets

Add a timeout when recving packets from the worker thread in case it hangs.
Add an exit condition just in case the while loop goes on forever.

* Add a timeout to recorder thread join.

* Wait for recorder thread to be invoked in tests

Remove the while loop and instead wait for segments to be produced by the background worker thread.

* Allow worker to resume before stopping to fix timeouts

* Lower test timeout further

* Remove test_stream_ended since it is flaky

This test doesn't really add additional value on top of other tests.
2021-03-13 01:53:26 -08:00
Raj Laud
30f99177c7 Fix missing integer cast in squeezebox config flow (#47846) 2021-03-13 08:34:20 +01:00
Paulus Schoutsen
eccdf85b29 Bump frontend to 20210313.0 (#47844) 2021-03-12 21:21:24 -08:00
David F. Mulcahey
547fd7d352 fix exception on device removal (#47803) 2021-03-12 21:06:37 -05:00
Erik Montnemery
2178e27fb4 Fix unclean shutdown of recorder test (#47791) 2021-03-12 14:17:27 -08:00
Paulus Schoutsen
6ed01463c3 Merge pull request #47835 from home-assistant/rc 2021-03-12 14:00:52 -08:00
Paulus Schoutsen
a024343a15 Bumped version to 2021.3.4 2021-03-12 21:01:15 +00:00
Tobias Sauerwein
926b0d8491 Fix Netatmo event handling (#47792) 2021-03-12 21:01:06 +00:00
J. Nick Koston
108d9eab1a Ensure homekit reset accessory service can target any entity (#47787) 2021-03-12 21:01:02 +00:00
jjlawren
72ef88693a Bump plexapi to 4.4.1 (#47766) 2021-03-12 21:00:59 +00:00
J. Nick Koston
81336809e8 Adjust insteon fan speed range to valid upper bound (#47765) 2021-03-12 21:00:55 +00:00
Chris
726eb69b40 Fix zwave_js target_temp_low (#47762) 2021-03-12 21:00:53 +00:00
mtl010957
544844d865 Cover Tilt Position Bugfix (#47682)
* Report tilt position properly when inverting using tilt_max < tilt_min

* Add warning per review comment

* Add test for inverted tilt position configuration

* Separate non-numeric and out of range warnings per review comment

* Fix out of range message and add tests for not numeric and out of range messages
2021-03-12 21:00:50 +00:00
Aaron Bach
ed37c31630 Write SimpliSafe alarm control panel state after arming/disarming (#47649)
* Write SimpliSafe alarm control panel state after arming/disarming

* Include locks
2021-03-12 21:00:49 +00:00
Tobias Sauerwein
07aeb8d160 Fix Netatmo event handling (#47792) 2021-03-12 12:57:02 -08:00
Hans Kröner
362e7226e9 Additional sensors for OpenWeatherMap (#47806) 2021-03-12 12:55:13 -08:00
Klaas Schoute
7826f6e3f8 Update cloud integration to 0.42.0 (#47818) 2021-03-12 12:52:43 -08:00
Robert Svensson
786cbcc1d6 Introduction of deCONZ websocket fixture (#47812) 2021-03-12 12:03:29 -08:00
Robert Svensson
6b03c8d126 Improve deCONZ init tests (#47825)
Use patch.dict rather than deep copy to change DECONZ_WEB_REQUEST
2021-03-12 12:02:15 -08:00
Robert Svensson
597bf67f5a UniFi has changed to not report uptime in epoch form (#47492) 2021-03-12 11:55:11 -08:00
Mick Vleeshouwer
9a98dcf432 Add HomeKit support for new CO / CO2 device class (#47737) 2021-03-12 09:03:47 -10:00
Charles Garwood
13cd2f52d8 Return property_key in zwave_js get_config_parameters websocket (#47808) 2021-03-12 13:49:59 -05:00
Erik Montnemery
3115bf9aab Add temperature sensor for gogogate2 wireless door sensor (#47754)
* Add temperature sensor for gogogate2 wireless door sensor

* Chain sensor generators
2021-03-12 19:04:56 +01:00
Michael
72cb1f5480 Add ambient sensors to nut integration (#47411) 2021-03-12 07:19:55 -10:00
Paulus Schoutsen
04b335afe9 Allow filtering the logbook by context_id (#47783) 2021-03-12 09:04:02 -08:00
Pierre Ståhl
bf5028df2b Bump pyatv to 0.7.7 (#47798)
* Bump pyatv to 0.7.7

* Change to assume name always exist in config entry
2021-03-12 16:19:14 +01:00
Erik Montnemery
514516bacc Remove unused COVER_SCHEMA from gogogate2 cover (#47170) 2021-03-12 13:52:46 +01:00
J. Nick Koston
40c28aa38a Ensure homekit reset accessory service can target any entity (#47787) 2021-03-12 11:41:01 +01:00
Guido Schmitz
6610e821bc Bump devolo_home_control_api to 0.17.0 (#47790) 2021-03-12 11:37:39 +01:00
Paulus Schoutsen
ff94e920e4 Do not use AsyncTrackStates (#47255) 2021-03-11 23:18:09 -08:00
Paulus Schoutsen
2a22c54fcb Store the correct context in the trace (#47785) 2021-03-12 08:12:26 +01:00
MatsNl
fa0c544bf5 Improve Atag integration and bump version to 0.3.5.3 (#47778)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-03-11 22:15:45 -08:00
J. Nick Koston
f4b775b125 Cleanup homekit and remove aid storage from hass.data (#47488) 2021-03-11 22:05:03 -08:00
J. Nick Koston
33c4eb3434 Log the full exception when the recorder fails to setup (#47770) 2021-03-11 21:52:04 -08:00
James Nimmo
7f60edd7e7 Bump pyIntesisHome to v1.7.6 (#47500) 2021-03-11 21:39:44 -08:00
J. Nick Koston
e2f0b18427 Adjust insteon fan speed range to valid upper bound (#47765) 2021-03-11 21:35:24 -08:00
Felipe Martins Diel
9ca0cd5464 Bump broadlink from 0.16.0 to 0.17.0 (#47779) 2021-03-11 21:34:56 -08:00
Marc Mueller
92852b9c10 Add apply_filter attribute to recorder.purge service (#45826) 2021-03-11 17:03:30 -10:00
Franck Nijhof
66605b5994 Upgrade adguardhome to v0.5.0 (#47774) 2021-03-12 00:37:34 +01:00
jjlawren
daab9f9810 Bump plexapi to 4.4.1 (#47766) 2021-03-12 00:35:11 +01:00
Chris
7ca5e969cc Fix zwave_js target_temp_low (#47762) 2021-03-12 00:28:38 +01:00
Henning Claßen
3ebc262b7f Upgrade numato-gpio to 0.10.0 (#47539)
This adds support for devices sending '\n\r' end-of-line sequences.
2021-03-11 22:54:27 +01:00
Philip Allgaier
4bafd03dff Consistent spelling of "PIN" (#47771) 2021-03-11 16:18:16 -05:00
Erik Montnemery
14ff6d4d1f Update integrations p-s to override extra_state_attributes() (#47759) 2021-03-11 21:23:20 +01:00
Erik Montnemery
1fc8e32d86 Update integrations t-z to override extra_state_attributes() (#47760) 2021-03-11 20:16:26 +01:00
Erik Montnemery
14a59d290a Update integrations j-o to override extra_state_attributes() (#47758) 2021-03-11 20:11:25 +01:00
Franck Nijhof
1095905f8c Add DataUpdateCoordinator to Verisure (#47574) 2021-03-11 19:41:01 +01:00
Marc Mueller
10848b9bdf Recorder improvements (#47739) 2021-03-11 07:52:07 -10:00
Erik Montnemery
af4d06b12e Update integrations f-i to override extra_state_attributes() (#47757) 2021-03-11 16:57:47 +01:00
Erik Montnemery
6c084ae6ce Update integrations a-e to override extra_state_attributes() (#47756) 2021-03-11 16:51:03 +01:00
Aaron Bach
f92b75cbb2 Write SimpliSafe alarm control panel state after arming/disarming (#47649)
* Write SimpliSafe alarm control panel state after arming/disarming

* Include locks
2021-03-11 15:22:35 +01:00
starkillerOG
cf4954fead Add Xiaomi Miio light config flow (#47161)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-11 14:09:21 +01:00
mtl010957
b162c45e0a Cover Tilt Position Bugfix (#47682)
* Report tilt position properly when inverting using tilt_max < tilt_min

* Add warning per review comment

* Add test for inverted tilt position configuration

* Separate non-numeric and out of range warnings per review comment

* Fix out of range message and add tests for not numeric and out of range messages
2021-03-11 13:49:10 +01:00
Kristian Heljas
9e487eb260 Hoist mqtt name property and add icon support to MqttEntity (#47165)
* hoist common MqttEntity properties

* remove default name for MqttEntity

Default naming is sensible enough

* disable overriding common MqttEntity schema

* merge common MqttEntity schemas into MQTT_ENTITY_COMMON_SCHEMA
2021-03-11 13:42:13 +01:00
starkillerOG
724574d336 Add Xiaomi Miio sensor config flow (#46964)
* add config flow

* fix styling

* Add air_quality platform

* fix imports

* fix black

* Update homeassistant/components/xiaomi_miio/sensor.py

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

* Update homeassistant/components/xiaomi_miio/air_quality.py

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

* process revieuw feedback

* remove unused import

* fix formatting

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-11 11:48:48 +01:00
Erik Montnemery
b9c2f80cab Fix light brightness_step on multiple entities (#47746)
* Fix light brightness_step on multiple entities

* Fix comment

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-11 11:46:32 +01:00
Philip Allgaier
7e615cb7fd Fixed string typos in Lutron and Roomba (#47745) 2021-03-11 10:16:52 +01:00
J. Nick Koston
9a686d148e Ensure startup can proceed when there is package metadata cruft (#47706)
If a package fails to install or partially installed importlib
version can return None. We now try pkg_resources first, then
try importlib, and handle the case where version unexpectedly
returns None
2021-03-10 21:12:02 -10:00
Paulus Schoutsen
00bd591238 Verify get_zones webhook works (#47741) 2021-03-11 01:08:12 +01:00
Erik Montnemery
a9a9e1f199 Tweak automation tracing (#47721) 2021-03-10 14:42:13 -08:00
hung2kgithub
15da1c4785 Add missing clear-night weather condition (#47666) 2021-03-10 10:48:06 -10:00
Matthias Alphart
54a9b69ecb Update xknx to 0.17.2 (#47732) 2021-03-10 10:32:22 -10:00
Álvaro Fernández Rojas
ff09643b33 Add Tado weather support (#44807) 2021-03-10 10:31:37 -10:00
Franck Nijhof
10535018cc Improve HomeKit discovered Hue config flow (#47729) 2021-03-10 11:20:51 -08:00
Paulus Schoutsen
3ad4c26f98 Allow SSDP discovery modern Hue hubs (#47725) 2021-03-10 19:21:51 +01:00
Mike Keesey
78c974d527 Refactor Harmony tests to better follow Home Assistant conventions (#47141) 2021-03-10 08:19:04 -10:00
CurrentThread
7c8851264f Use LONGTEXT column instead of TEXT for MySQL/MariaDB and migrate existing databases (#47026) 2021-03-10 08:12:58 -10:00
David Bonnes
2103335323 Bump incomfort client to 0.4.4 (#47718)
* bump incomfort client

* bump client to 0.4.4

* restore launch.json
2021-03-10 18:58:37 +01:00
David Bonnes
d53f1e98ac bump client library (#47722) 2021-03-10 18:58:04 +01:00
Mick Vleeshouwer
461e766a93 Add device class CO2 to various integrations (#47676)
* Add device class CO2 to Fibaro

* Add device class CO2 to Awair

* Add device class CO2 to Tasmota

* Add device class CO2 to Netatmo

* Add device class CO2 to Ambient Station

* Update Tasmota tests

* Remove icon
2021-03-10 12:52:55 +01:00
Álvaro Fernández Rojas
5bc0e9a50f Fix aemet temperatures with a value of 0 (#47680)
* aemet: catch TypeError exceptions

format_float() and format_int() should also catch possible TypeError
exceptions.

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

* aemet: correctly parse temperatures with a value of 0

Right now, when a temperature with a value of 0 is provided by the API, the if
condition isn't satisfied, return None instead of 0.

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

* aemet: group format int/float exceptions

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-03-10 10:25:04 +01:00
dependabot[bot]
5c70dd8ab4 Bump codecov/codecov-action from v1.2.1 to v1.2.2 (#47707)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from v1.2.1 to v1.2.2.
- [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/v1.2.1...1f8f3abcccf7960749744fd13547965f0e7d1bdd)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-10 09:40:03 +01:00
Paulus Schoutsen
a50e9812cb Fix automations with traces. (#47705) 2021-03-09 22:40:17 -08:00
Erik Montnemery
704000c049 Add support for breakpoints in scripts (#47632) 2021-03-09 21:23:11 -08:00
Sam Steele
bf64421be9 Use the local timezone when parsing Todoist due dates (#45994) 2021-03-09 20:52:32 -08:00
Franck Nijhof
62e49e545b Add confirm only for Elgato (#47684) 2021-03-10 01:53:00 +01:00
Matt Zimmerman
7840db0598 Restore switch.turn_on and switch.turn_off functionality for SmartTub pumps (#47586)
Revert "Remove turn_on and turn_off from SmartTub pump switches (#47184)"

This reverts commit bab66a5cb9.
2021-03-10 01:26:54 +01:00
J. Nick Koston
a060acc2b1 Fix recorder with MSSQL (#46678)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2021-03-09 11:16:19 -10:00
Paulus Schoutsen
46e593485e Handle zeroconf updated events (#47683) 2021-03-09 10:14:00 -10:00
Paulus Schoutsen
ed679b263b Improve logging elgato (#47681) 2021-03-09 19:52:53 +01:00
Erik Montnemery
fd1add8f15 Rename AutomationTrace.runid to AutomationTrace.run_id (#47669) 2021-03-09 15:49:41 +01:00
Marc Mueller
0c61cb555c Add TYPE_CHECKING to coverage excludes (#47668) 2021-03-09 14:57:44 +01:00
Erik Montnemery
84226da404 Update tests i-o to use async_get() instead of async_get_registry() (#47653) 2021-03-09 14:32:08 +01:00
Erik Montnemery
87e7cebd36 Update tests c-h to use registry async_get (#47652) 2021-03-09 14:31:17 +01:00
Erik Montnemery
ba2978c693 Update tests p-s to use async_get() instead of async_get_registry() (#47654) 2021-03-09 14:28:32 +01:00
Erik Montnemery
b3fecb1c95 Update tests t-z to use async_get() instead of async_get_registry() (#47655) 2021-03-09 14:25:03 +01:00
Erik Montnemery
78b21b1ad1 Update tests a-b to use async_get() instead of async_get_registry() (#47651) 2021-03-09 14:24:34 +01:00
Erik Montnemery
3a054c3be7 Replace Entity.device_state_attributes with Entity.extra_state_attributes (#47304) 2021-03-09 13:58:43 +01:00
Shay Levy
19f67335ec Revert Shelly temperature sensor name change (#47664) 2021-03-09 13:45:58 +01:00
Paulus Schoutsen
34b9e6f6fc Shelly: set confirm only (#47608) 2021-03-09 13:13:43 +01:00
Paulus Schoutsen
a8844ff24a Merge pull request #47645 from home-assistant/rc 2021-03-08 17:40:16 -08:00
Michael
8e58c3aa7b Add error message to options flow if connection fails for nut integration (#46972) 2021-03-08 14:12:52 -10:00
J. Nick Koston
5d7b53603f Harmony: set confirm only (#47617) 2021-03-08 15:44:55 -08:00
Paulus Schoutsen
b80c2d426c Bumped version to 2021.3.3 2021-03-08 23:23:04 +00:00
Raman Gupta
b352c5840f Update zwave_js supported features list to be static (#47623) 2021-03-08 23:22:47 +00:00
Shay Levy
9f6007b4e2 Fix Shelly logbook exception when missing COAP (#47620) 2021-03-08 23:22:47 +00:00
J. Nick Koston
58573dc74d Fix turning off scene in homekit (#47604) 2021-03-08 23:22:46 +00:00
J. Nick Koston
a51ad137a1 Fix insteon fan speeds (#47603) 2021-03-08 23:22:45 +00:00
J. Nick Koston
9601cb7445 Ensure template fan value_template always determines on state (#47598) 2021-03-08 23:22:44 +00:00
J. Nick Koston
96b266b2e8 Fix turn on without speed in homekit controller (#47597) 2021-03-08 23:22:44 +00:00
Bram Kragten
3c1aac1034 Update frontend to 20210302.6 (#47592) 2021-03-08 23:22:43 +00:00
J. Nick Koston
0f115f6937 Ensure bond devices recover when wifi disconnects and reconnects (#47591) 2021-03-08 23:22:42 +00:00
Raman Gupta
f1fc6c4b25 Add fallback zwave_js entity name using node ID (#47582)
* add fallback zwave_js entity name using node ID

* add new fixture and test for name that was failing
2021-03-08 23:22:12 +00:00
Tony Roman
37f486941a Allow running and restarting with both ozw and zwave active (#47566)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-08 23:21:14 +00:00
Diogo Gomes
69f63129aa Correct weather entities forecast time (#47565) 2021-03-08 23:21:14 +00:00
Martin Hjelmare
56efae3cb5 Fix mysensors unload clean up (#47541) 2021-03-08 23:21:13 +00:00
Martin Hjelmare
a2e00324a8 Fix mysensors device tracker (#47536) 2021-03-08 23:21:12 +00:00
Martin Hjelmare
e63f766c20 Bump pymysensors to 0.21.0 (#47530) 2021-03-08 23:21:11 +00:00
ollo69
e7717694a3 Fix AsusWRT wrong api call (#47522) 2021-03-08 23:21:11 +00:00
Martin Hjelmare
ba2b62305b Fix mysensors notify platform (#47517) 2021-03-08 23:21:10 +00:00
Anders Melchiorsen
b25f846136 Fix Sonos polling mode (#47498) 2021-03-08 23:21:09 +00:00
J. Nick Koston
c1a5a18b53 Bump HAP-python to 3.4.0 (#47476)
* Bump HAP-python to 3.3.3

* bump

* fix mocking
2021-03-08 23:21:09 +00:00
Nathan Spencer
3b05a12e62 Adjust litterrobot tests and code to match guidelines (#47060)
* Use SwitchEntity instead of ToggleEntity and adjust test patches as recommended

* Move async_create_entry out of try block in config_flow

* Patch pypi package instead of HA code

* Bump pylitterbot to 2021.2.6, fix tests, and implement other code review suggestions

* Bump pylitterbot to 2021.2.8, remove sleep mode start/end time from vacuum, adjust and add sensors for sleep mode start/end time

* Move icon helper back to Litter-Robot component and isoformat times on time sensors
2021-03-08 23:21:08 +00:00
J. Nick Koston
1dd35ff059 Catch dhcp setup permission errors sooner (#47639)
This solves an unexpected thread exception on macs when running as
a user intead of root
2021-03-08 15:15:22 -08:00
unaiur
10eca5b986 Fix maxcube thermostat transition from off to heat mode (#47643)
Transition from HVAC_MODE_OFF to HVAC_MODE_HEAT are not executed because
target temperature is kept at OFF_TEMPERATURE, turning it into a no-op.

This change ensures that we increase the target temperature to at least
the minimum temperature when transitioning to HVAC_MODE_HEAT mode.
2021-03-08 15:14:24 -08:00
Raman Gupta
797ee81fc9 Update zwave_js supported features list to be static (#47623) 2021-03-08 15:11:54 -08:00
J. Nick Koston
d9ffb65898 Fix insteon fan speeds (#47603) 2021-03-08 14:20:21 -08:00
J. Nick Koston
6af754a7d3 Fix turning off scene in homekit (#47604) 2021-03-08 14:19:05 -08:00
Franck Nijhof
efe415f225 Upgrade aiohttp to 3.7.4.post0 (#47627) 2021-03-08 23:18:55 +01:00
Franck Nijhof
fbf8b68488 Upgrade sentry-sdk to 1.0.0 (#47626) 2021-03-08 23:13:18 +01:00
Diogo Gomes
ee25723468 Add option to reverse switch behaviour in KMTronic (#47532) 2021-03-08 22:56:24 +01:00
Oliver
520c4a8ee3 Update attrs to 20.3.0 (#47642) 2021-03-08 11:49:54 -10:00
Erik Montnemery
ea4f3e31d5 Include changed variables in automation trace (#47549)
* Include changed variables in automation trace

* Deduplicate some code

* Tweak

* Apply suggestions from code review

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

* Fix format

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-03-08 22:48:36 +01:00
Philip Allgaier
665e2c3473 Ensure bond light follows proper typing (#47641) 2021-03-08 21:53:44 +01:00
Shay Levy
215ab5fd40 Add type hints to LightEntity (#47024) 2021-03-08 21:21:45 +01:00
Erik Montnemery
a243adc551 Add WS command to get a summary of automation traces (#47557)
* Add WS command to get a summary of automation traces

* Update tests

* Correct rebase mistake, update tests
2021-03-08 20:30:52 +01:00
uvjustin
d9bf63103f Fix I-frame interval in stream test video (#47638) 2021-03-08 11:23:57 -08:00
Paulus Schoutsen
67effbc8c4 Config flow to allow marking itself as confirm only (#47607) 2021-03-08 10:54:51 -08:00
J. Nick Koston
573c40cb11 Ensure bond devices recover when wifi disconnects and reconnects (#47591) 2021-03-08 10:44:28 -08:00
J. Nick Koston
b315fcab11 Fix turn on without speed in homekit controller (#47597) 2021-03-08 10:43:22 -08:00
ollo69
32476a3fed Fix AsusWRT wrong api call (#47522) 2021-03-08 10:34:12 -08:00
Tony Roman
f9e33a4a0d Allow running and restarting with both ozw and zwave active (#47566)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-08 10:26:08 -08:00
J. Nick Koston
65776ef980 Remove self as code owner for mylink (#46242)
Sadly these devices turn out to be so unreliable that I
gave up on them and replaced them with bond (bondhome.io)
devices which have been rock solid
2021-03-08 07:40:39 -10:00
J. Nick Koston
9d14ff8105 Add suggested_area support to Apple TV (#47015) 2021-03-08 07:39:57 -10:00
Czapla
8018097c54 Add title key to allow mobile app title translation to other languages (#46593) 2021-03-08 18:37:37 +01:00
J. Nick Koston
53952b9662 Ensure template fan value_template always determines on state (#47598) 2021-03-08 18:34:34 +01:00
Erik Montnemery
8fe51b8ea7 Store automation traces indexed by run_id (#47509)
* Store traces indexed by run_id

* Format

* Add test

* Add test

* Clarify comment
2021-03-08 18:04:41 +01:00
B-Hartley
ee2658f9e6 Add (some) of ZCL concentration clusters to ZHA component (#47590)
* Update registries.py

Add concentration clusters recently added to zigpy

* Update measurement.py

Add concentration clusters recently added to ZigPy

* Update sensor.py

Add concentration clusters recently added to ZigPy

* Update sensor.py

remove unnecessary tabs

* Update measurement.py

remove unnecessary tabs

* Update sensor.py

Just adding CO and CO2 for now.

* Update registries.py

Just adding CO2 and CO for now.

* Update measurement.py

Just adding CO2 and CO for now

* Update sensor.py

import const CONCENTRATION_PARTS_PER_MILLION

* Update registries.py

removed trailing whitespace

* Update sensor.py

added extra blank lines and removed trailing whitespace

* Update measurement.py

added extra blank lines and removed trailing whitespace

* Update sensor.py

add device classes for CO and CO2
2021-03-08 11:22:13 -05:00
Shay Levy
24db0ff956 Fix Shelly logbook exception when missing COAP (#47620) 2021-03-08 15:59:54 +01:00
Franck Nijhof
197687399d Upgrade pillow to 8.1.2 (#47619) 2021-03-08 14:26:52 +01:00
Matt Zimmerman
9774ada4aa Code cleanup for SmartTub integration (#47584) 2021-03-08 14:05:39 +01:00
Evgeny
cf507b51cb Add feels like temperature sensor to OpenWeatherMap (#47559) 2021-03-08 13:51:26 +01:00
Alexei Chetroi
f3c71a69f0 Allow 10mV precision for ZHA battery sensor entities (#47520) 2021-03-08 07:37:33 -05:00
Adam Ernst
ad86eb4be3 Add support for Flo "pucks" (#47074)
So far the Flo integration only supports shutoff valves. Add support for Flo leak detector pucks, which measure temperature and humidity in addition to providing leak alerts.
2021-03-08 07:36:03 -05:00
Franck Nijhof
d37fb7d88d Upgrade pre-commit to 2.11.0 (#47618) 2021-03-08 13:03:39 +01:00
Franck Nijhof
457db1d0c3 Upgrade elgato to 2.0.1 (#47616) 2021-03-08 12:57:27 +01:00
Chris Talkington
597d8eaa4c Update rokuecp to 0.8.1 (#47589) 2021-03-08 12:15:08 +01:00
dependabot[bot]
629700c97c Bump actions/stale from v3.0.17 to v3.0.18 (#47612)
Bumps [actions/stale](https://github.com/actions/stale) from v3.0.17 to v3.0.18.
- [Release notes](https://github.com/actions/stale/releases)
- [Commits](https://github.com/actions/stale/compare/v3.0.17...3b3c3f03cd4d8e2b61e179ef744a0d20efbe90b4)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-08 10:37:42 +01:00
Raman Gupta
1d387e12cc Add fallback zwave_js entity name using node ID (#47582)
* add fallback zwave_js entity name using node ID

* add new fixture and test for name that was failing
2021-03-08 09:08:17 +01:00
Bram Kragten
683425876f Update frontend to 20210302.6 (#47592) 2021-03-07 21:45:15 -08:00
Alex
a066f84828 Remove @newAM from hdmi_cec codeowners (#47542) 2021-03-07 12:49:13 -05:00
Austin Mroczek
7050c71524 Round miles in myChevy sensors (#46879) 2021-03-07 07:46:14 -10:00
Diogo Gomes
d3bd2378ba Correct weather entities forecast time (#47565) 2021-03-07 16:07:02 +01:00
Martin Hjelmare
d85d1a65a7 Fix mysensors unload clean up (#47541) 2021-03-07 14:20:21 +01:00
tkdrob
13d4d7039e Clean up kmtronic (#47537) 2021-03-07 14:15:43 +01:00
tkdrob
07fd1b3b43 Clean up Lutron Caseta (#47534) 2021-03-07 14:14:15 +01:00
Jan-Philipp Litza
4018d0a152 Correctly close lacrosse on homeassistant stop (#47555)
Since lacrosse.close() takes no arguments, but was directly added as a
listener to EVENT_HOMEASSISTANT_STOP, the following occured on shutdown:

Traceback (most recent call last):
  File "/usr/lib/python/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
TypeError: close() takes 1 positional argument but 2 were given
2021-03-07 13:53:48 +01:00
Robert Svensson
48f1a55a28 Improve common structure in UniFi device tracker tests (#47526) 2021-03-07 13:20:04 +01:00
Anders Melchiorsen
c8c394ef91 Increase ESPHome log level on first connection failure (#47547) 2021-03-07 11:36:28 +01:00
J. Nick Koston
0d07dae3bc Change default homekit ports to 21063 and 21064 (#47491)
We previously used a value in the linux default ephemerial port range
which meant that if something else happened to use that port HomeKit
would not start up.  We now use a value below 32768 to ensure that
the port is not randomly unavailable
2021-03-06 21:41:56 -10:00
J. Nick Koston
2e89f152ba Bump HAP-python to 3.4.0 (#47476)
* Bump HAP-python to 3.3.3

* bump

* fix mocking
2021-03-07 01:30:57 +01:00
Alexei Chetroi
79b5ca9415 Add device classes for CO and CO2 measurements (#47487) 2021-03-07 00:52:43 +01:00
N1c093
9101ed2732 Add precipitation probability forecast to owm (#47284)
* Add precipitation probability forecast to owm

* Update weather_update_coordinator.py

Reformat the code based on black
2021-03-07 00:48:22 +01:00
Martin Hjelmare
f542b360d5 Fix mysensors device tracker (#47536) 2021-03-06 23:41:43 +01:00
Franck Nijhof
b01a6367cc Complete typing on AdGuard Home integration (#47477) 2021-03-06 23:19:03 +01:00
Martin Hjelmare
d944bbbc52 Bump pymysensors to 0.21.0 (#47530) 2021-03-06 23:06:50 +01:00
Martin Hjelmare
1600207f5c Fix mysensors notify platform (#47517) 2021-03-06 18:33:55 +01:00
Nathan Spencer
e9052233a6 Adjust litterrobot tests and code to match guidelines (#47060)
* Use SwitchEntity instead of ToggleEntity and adjust test patches as recommended

* Move async_create_entry out of try block in config_flow

* Patch pypi package instead of HA code

* Bump pylitterbot to 2021.2.6, fix tests, and implement other code review suggestions

* Bump pylitterbot to 2021.2.8, remove sleep mode start/end time from vacuum, adjust and add sensors for sleep mode start/end time

* Move icon helper back to Litter-Robot component and isoformat times on time sensors
2021-03-06 17:28:33 +01:00
uvjustin
14f85d8731 Disable audio stream when ADTS AAC detected (#47441)
* Disable audio stream when ADTS AAC detected

* Use context manager for memoryview

* Fix tests

* Add test

* Fix tests

* Change FakePacket bytearray size to 3
2021-03-06 16:40:49 +01:00
Erik Montnemery
2f9d03d115 Merge action and condition traces (#47373)
* Merge action and condition traces

* Update __init__.py

* Add typing to AutomationTrace

* Make trace_get prepare a new trace by default

* Correct typing of trace_cv

* Fix tests
2021-03-06 12:57:21 +01:00
Ville Skyttä
022184176a Upgrade upcloud-api to 1.0.1 (#47501)
https://github.com/UpCloudLtd/upcloud-python-api/releases/tag/0.4.6
https://github.com/UpCloudLtd/upcloud-python-api/releases/tag/v1.0.0
https://github.com/UpCloudLtd/upcloud-python-api/releases/tag/v1.0.1
2021-03-06 12:36:20 +01:00
FidgetyRat
4cade4b736 Add OPENING & CLOSING state to MySensors cover (#47285)
* Added OPENING & CLOSING State Support

Added support for OPENING and CLOSING states using a combination of
the required V_ variables. Simplified the determination of the
cover's state by use of a new enumeration and single method allowing
the state to be used by all three HomeAssistant query methods.

* Fixes for HomeAssistant Style

Corrections to style to allow flake8, isort, and black to pass.

* Peer Review Changes

Added @unique to the main enumeration. Removed unnecessary parens from
door state logic. Reordered CLOSING and CLOSED in the enumeration.
2021-03-06 10:26:04 +01:00
Anders Melchiorsen
c7718f2b3b Fix Sonos polling mode (#47498) 2021-03-06 10:21:00 +01:00
Paulus Schoutsen
1145c30c4b Merge pull request #47490 from home-assistant/rc 2021-03-05 16:22:59 -08:00
Paulus Schoutsen
939da2403f Bumped version to 2021.3.2 2021-03-05 23:38:27 +00:00
Franck Nijhof
10dae253e5 Complete typing on Verisure integration (#47482) 2021-03-05 15:37:56 -08:00
Phil Bruckner
ef79d24a8c Bump amcrest package version to 1.7.1 (#47483) 2021-03-05 23:37:55 +00:00
Raman Gupta
55c1b67de4 Update zwave_js.refresh_value service description (#47469) 2021-03-05 23:37:54 +00:00
Paulus Schoutsen
90e0801c1b Raise error instead of crashing when template passed to call service target (#47467) 2021-03-05 23:37:54 +00:00
Raman Gupta
65859b4107 Bump zwave-js-server-python to 0.21.1 (#47464) 2021-03-05 23:37:52 +00:00
functionpointer
6c45a7d533 Use conn_made callback in MySensors (#47463) 2021-03-05 23:37:52 +00:00
Bram Kragten
ddc6cd6da1 Update frontend to 20210302.5 (#47462) 2021-03-05 23:37:51 +00:00
Joakim Plate
a4369fc352 Bump version with fix for v1 (#47458) 2021-03-05 23:37:50 +00:00
Franck Nijhof
d11da43551 Fix Hue scene overriding Hue default transition times (#47454) 2021-03-05 23:37:49 +00:00
Tobias Sauerwein
f99ef25f88 Fix issue at Netatmo startup (#47452) 2021-03-05 23:37:49 +00:00
mvn23
9fa0de8600 Update pyotgw to 1.1b1 (#47446) 2021-03-05 23:37:48 +00:00
Paulus Schoutsen
4c181bbfe5 Raise error instead of crashing when template passed to call service target (#47467) 2021-03-05 15:34:18 -08:00
Franck Nijhof
8f31b09b55 Complete typing on TwenteMilieu integration (#47480) 2021-03-05 15:33:26 -08:00
Phil Bruckner
2472dad1fa Bump amcrest package version to 1.7.1 (#47483) 2021-03-05 15:05:36 -08:00
ollo69
292f4262aa Move AsusWrt sensors update logic in router module (#46606) 2021-03-05 23:40:04 +01:00
Alexei Chetroi
a12b98e30e Update ZHA dependencies (#47479) 2021-03-05 17:01:54 -05:00
Robert Svensson
50d3aae418 Improve restoring UniFi POE entity state (#47148)
* Improve restoring data and better handling when the restore data is empty
Improve readability of some logic related to POE clients

* There is no need to check clients_all in Switch platform

* Add better tests when restoring state

* Port except handling shouldn't be needed anymore

* Walrusify get_last_state
2021-03-05 22:09:05 +01:00
Franck Nijhof
02e723f206 Typing tweak to the Elgato integration (#47471) 2021-03-05 21:48:02 +01:00
Tobias Sauerwein
b3c33fc1be Fix issue at Netatmo startup (#47452) 2021-03-05 21:41:55 +01:00
Robert Svensson
793929f2ea Increase test coverage of UniFi integration (#46347)
* Increase coverage of init

* Increase coverage of config_flow

* Improve coverage of controller

* Minor improvement to switch test

* Fix review comment

* Mock websocket class

* Replace the rest of the old websocket event tests

* Improve websocket fixture for cleaner tests

* Fix typing

* Improve connection state signalling based on Martins feedback

* Improve tests of reconnection_mechanisms based on Martins review comments

* Fix unload entry

* Fix isort issue after rebase

* Fix martins comment on not using caplog

* Fix wireless clients test

* Fix martins comments on wireless clients test
2021-03-05 21:28:41 +01:00
Emily Mills
7c08592b5a Convert kulersky to use new async backend (#47403) 2021-03-05 14:24:55 -06:00
Raman Gupta
6debf52e9b Update zwave_js.refresh_value service description (#47469) 2021-03-05 20:57:06 +01:00
Franck Nijhof
61be29117d Deprecate HomeKit auto start (#47470) 2021-03-05 11:51:49 -08:00
mvn23
ab0a5bccab Update pyotgw to 1.1b1 (#47446) 2021-03-05 20:22:40 +01:00
functionpointer
a2ee7d598b Use conn_made callback in MySensors (#47463) 2021-03-05 20:21:24 +01:00
Emily Mills
a547d0fea2 Prevent Zerproc leaving open unnecessary connections (#47401)
* Zerproc: Prevent leaving open unnecessary connections

* Fix config entry unloading
2021-03-05 13:14:03 -06:00
tkdrob
3baeed3684 Clean up constants (#47323) 2021-03-05 19:08:04 +01:00
Franck Nijhof
cc99fd5e32 Fix Hue scene overriding Hue default transition times (#47454) 2021-03-05 09:43:26 -08:00
Joakim Plate
f2a2dbb561 Bump version with fix for v1 (#47458) 2021-03-05 09:42:20 -08:00
Bram Kragten
a6c5e79de2 Update frontend to 20210302.5 (#47462) 2021-03-05 09:42:08 -08:00
Raman Gupta
cad5e67588 Bump zwave-js-server-python to 0.21.1 (#47464) 2021-03-05 09:41:36 -08:00
Anders Melchiorsen
79ebe930e3 Limit log spam by ESPHome (#47456) 2021-03-05 16:16:07 +01:00
uvjustin
864380e77c Add allenporter to stream codeowners (#47431) 2021-03-05 15:51:07 +01:00
Paul Dee
6a4b755faf Spellcheck on Synology component (#47451) 2021-03-05 15:36:07 +01:00
Paulus Schoutsen
91ac4554a2 Merge pull request #47422 from home-assistant/rc 2021-03-04 17:17:29 -08:00
Martin Hjelmare
d9542c2efe Only create snapshot if add-on update will be done (#47424) 2021-03-05 00:38:53 +00:00
Martin Hjelmare
0350a6ed21 Only create snapshot if add-on update will be done (#47424) 2021-03-04 16:38:33 -08:00
Paulus Schoutsen
915ee2f4ee Bumped version to 2021.3.1 2021-03-05 00:22:31 +00:00
Franck Nijhof
ff86f64806 Fix older Roborock models (#47412) 2021-03-05 00:21:55 +00:00
Raman Gupta
25ff2e745d Bump zwave-js-server-python to 0.21.0 (#47408)
Co-authored-by: Tobias Sauerwein <cgtobi@users.noreply.github.com>
2021-03-05 00:18:18 +00:00
Raman Gupta
f53cff49d5 Don't convert Climacell forecast temperatures to celsius because platform does it automatically (#47406) 2021-03-05 00:18:17 +00:00
Aaron Bach
36a2521799 Fix AirVisual exception when config entry contains old integration type (#47405) 2021-03-05 00:18:16 +00:00
Raman Gupta
ee55a04b4b Fix Climacell timezone issue with daily forecasts (#47402) 2021-03-05 00:18:15 +00:00
Sebastian Muszynski
6724d86565 Fix measurement unit (Closes: #47390) (#47398) 2021-03-05 00:18:14 +00:00
J. Nick Koston
14dca8e783 Map silent as a preset mode for fan backcompat (#47396)
The original change did not map silent as a preset mode
because it was not clear if it was a speed or a preset.
2021-03-05 00:18:14 +00:00
Christophe Painchaud
1817147995 Fix RFLink TCP KeepAlive error log (#47395) 2021-03-05 00:18:13 +00:00
Eric Severance
0bf3dea40c Revert "Speed-up wemo discovery (#46821)" (#47392)
This reverts commit 6e52b26c06.
2021-03-05 00:18:12 +00:00
Bram Kragten
5685b4aa33 Update frontend to 20210302.4 (#47383) 2021-03-05 00:18:11 +00:00
Martin Hjelmare
ef9b9663c5 Fix access of missing zwave_js climate unit value (#47380) 2021-03-05 00:18:11 +00:00
Franck Nijhof
d83ccdc97a Don't raise on known non-matching states in numeric state condition (#47378) 2021-03-05 00:18:10 +00:00
Martin Hjelmare
c0840e22dc Fix zwave_js manual reconfiguration of add-on managed entry (#47364) 2021-03-05 00:18:09 +00:00
Anders Melchiorsen
33c3566106 Catch ConditionError in generic_thermostat climate (#47359) 2021-03-05 00:18:09 +00:00
Martin Hjelmare
d175ac8e0d Make zwave_js add-on manager more flexible (#47356) 2021-03-05 00:18:08 +00:00
starkillerOG
c2f7a38d09 Fix Xiaomi Miio setup of switch entity for lumi.acpartner.v3 (#47345) 2021-03-05 00:18:07 +00:00
Raman Gupta
ee69e93b46 Bump zwave-js-server-python to 0.21.0 (#47408)
Co-authored-by: Tobias Sauerwein <cgtobi@users.noreply.github.com>
2021-03-04 16:15:50 -08:00
Christophe Painchaud
a1faba29f0 Fix RFLink TCP KeepAlive error log (#47395) 2021-03-05 01:09:54 +01:00
Cooper Dale
35d5522e79 Fix typo in docs link for forked_daapd (#47413)
corrected link to existing site
2021-03-05 00:58:42 +01:00
Tobias Sauerwein
c3bddc0fa6 Update browse_media.py (#47414) 2021-03-04 23:35:39 +01:00
Martin Hjelmare
682943511a Make zwave_js add-on manager more flexible (#47356) 2021-03-04 14:14:24 -08:00
Petru Paler
7ed80d6c39 Update Solax library to 0.2.6 (#47384) 2021-03-04 22:29:19 +01:00
Franck Nijhof
6f7179dce9 Fix older Roborock models (#47412) 2021-03-04 13:27:59 -08:00
Raman Gupta
74746125ce Fix Climacell timezone issue with daily forecasts (#47402) 2021-03-04 13:21:56 -08:00
Aaron Bach
fa8ded5ad8 Fix AirVisual exception when config entry contains old integration type (#47405) 2021-03-04 13:20:08 -08:00
Raman Gupta
972baa2ce4 Don't convert Climacell forecast temperatures to celsius because platform does it automatically (#47406) 2021-03-04 13:15:27 -08:00
Sebastian Muszynski
541e166317 Fix measurement unit (Closes: #47390) (#47398) 2021-03-04 13:12:04 -08:00
Martin Hjelmare
5ced7395f3 Fix access of missing zwave_js climate unit value (#47380) 2021-03-04 13:11:38 -08:00
Martin Hjelmare
d64fe6ea32 Fix zwave_js manual reconfiguration of add-on managed entry (#47364) 2021-03-04 13:11:07 -08:00
Bram Kragten
cea4808db8 Update frontend to 20210302.4 (#47383) 2021-03-04 13:09:51 -08:00
Franck Nijhof
7a8b7224c8 Don't raise on known non-matching states in numeric state condition (#47378) 2021-03-04 13:09:08 -08:00
Eric Severance
f05f60c4c4 Revert "Speed-up wemo discovery (#46821)" (#47392)
This reverts commit 6e52b26c06.
2021-03-04 13:07:42 -08:00
J. Nick Koston
62d8e47c51 Map silent as a preset mode for fan backcompat (#47396)
The original change did not map silent as a preset mode
because it was not clear if it was a speed or a preset.
2021-03-04 13:02:50 -08:00
starkillerOG
b58f9ce33a Fix Xiaomi Miio setup of switch entity for lumi.acpartner.v3 (#47345) 2021-03-04 21:53:09 +01:00
Anders Melchiorsen
b49a672fd5 Catch ConditionError in generic_thermostat climate (#47359) 2021-03-04 21:47:24 +01:00
Franck Nijhof
208a104e96 Fix secrets in files included via include_dir_list (#47350) 2021-03-04 09:33:35 -08:00
Erik Montnemery
17401cbc29 Initial automation tracing (#46755)
* Initial prototype of automation tracing

* Small fixes

* Lint

* Move trace helpers to its own file

* Improve trace for state and numeric_state conditions

* Tweaks + apply suggestions from code review

* Index traces by automation_id, trace while script is running

* Refactor condition tracing

* Improve WS API to get traces for single automation

* Add tests

* Fix imports

* Fix imports

* Address review comments

* Cap logging of loops

* Remove unused ContextVar action_config
2021-03-04 14:16:24 +01:00
Chris
6d478804e7 Add LZW36 device schema to zwave_js discovery (#47314)
* Add LZW26 device schema to discovery

Co-authored-by: @kpine

* Update homeassistant/components/zwave_js/discovery.py

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

* Add tests

* Fix test

Co-authored-by: kpine <keith.pine@gmail.com>
2021-03-04 00:32:37 +01:00
tkdrob
53e62a897b Fix grammar in pi_hole logs (#47324) 2021-03-04 00:20:35 +01:00
Franck Nijhof
e9785fcd3d Merge pull request #47319 from home-assistant/rc 2021-03-03 20:05:36 +01:00
Franck Nijhof
b711686e10 Bumped version to 2021.3.0 2021-03-03 19:17:17 +01:00
Paulus Schoutsen
584ad07567 Simplify switch light (#47317) 2021-03-03 19:16:25 +01:00
Erik Montnemery
a89ba0ed8e Improve behaviour when disabling or enabling config entries (#47301) 2021-03-03 19:16:21 +01:00
Paulus Schoutsen
e6a6b2a680 Simplify switch light (#47317) 2021-03-03 10:13:04 -08:00
Erik Montnemery
504e5b77ca Improve behaviour when disabling or enabling config entries (#47301) 2021-03-03 10:12:37 -08:00
Joakim Plate
7626aa5c94 Philips JS correct post review comments (#47247) 2021-03-03 18:51:58 +01:00
Bram Kragten
15c89ebada Update frontend to 20210302.3 (#47310) 2021-03-03 16:01:30 +01:00
Raman Gupta
24919e99b8 Correct climacell device info (#47292) 2021-03-03 16:01:26 +01:00
Martin Hjelmare
099c9c59cb Fix Supervisor platform coordinator data lookup (#47308) 2021-03-03 14:37:36 +01:00
Bram Kragten
c192a44e87 Update frontend to 20210302.3 (#47310) 2021-03-03 14:35:58 +01:00
Nick Adams
cc72cf0c0d Update izone services.yaml and remove entity_id from schema. (#47305)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-03-03 11:51:40 +01:00
Erik Montnemery
b147ba1377 Correct gogogate2 battery sensor attributes (#47302) 2021-03-03 10:20:48 +01:00
Milan Meulemans
8f3c2573e2 Remove name from keenetic-ndms2 strings (#47113) 2021-03-03 10:12:26 +01:00
Matt Zimmerman
9022b90945 bump python-smarttub to 0.0.19 (#47294) 2021-03-03 07:04:17 +01:00
J. Nick Koston
32fe4fa378 Add activity properties to remote entity model (#47237) 2021-03-02 17:57:36 -10:00
Raman Gupta
6019bcf9d1 Correct climacell device info (#47292) 2021-03-03 01:55:10 +01:00
Matthias Alphart
ce8871ef59 KNX remove custom deprecation warnings (#47238) 2021-03-03 00:50:40 +01:00
Paulus Schoutsen
da2c7dc743 Bumped version to 2021.3.0b7 2021-03-02 22:37:27 +00:00
Raman Gupta
f74b88a29c Bump zwave-js-server-python to 0.20.1 (#47289) 2021-03-02 22:36:52 +00:00
Raman Gupta
eb981fb007 Convert climacell forecast timestamp to isoformat so that UI shows the right times (#47286) 2021-03-02 22:36:51 +00:00
Alexei Chetroi
39b9ad0ca0 Update ZHA dependencies (#47282) 2021-03-02 22:36:50 +00:00
Bram Kragten
ebb9008c27 Update frontend to 20210302.0 (#47278) 2021-03-02 22:36:49 +00:00
Tobias Sauerwein
4b9c148989 Fix issue when setting boost preset for a turned off Netatmo thermostat (#47275) 2021-03-02 22:36:49 +00:00
Aaron Bach
b8bc0a7fe9 Bump simplisafe-python to 9.6.9 (#47273) 2021-03-02 22:36:48 +00:00
Erik Montnemery
7a6edf9725 Make MQTT number respect retain setting (#47270) 2021-03-02 22:36:47 +00:00
Raman Gupta
6c5c3233f1 Add raw values to zwave_js value notification event (#47258)
* add value_raw to value notification event that always shows the untranslated state value

* add property key and property to event params
2021-03-02 22:36:46 +00:00
Paulus Schoutsen
d7f4416421 Fix Alexa doorbells (#47257) 2021-03-02 22:36:45 +00:00
Martin Hjelmare
23049955f8 Add zwave_js add-on manager (#47251)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-03-02 22:36:45 +00:00
Franck Nijhof
d88ee3bf4a Upgrade pillow to 8.1.1 (#47223) 2021-03-02 22:36:44 +00:00
Simone Chemelli
dddf28b138 Limit log spam by ConfigEntryNotReady (#47201) 2021-03-02 22:36:42 +00:00
HomeAssistant Azure
13516aa90c [ci skip] Translation update 2021-03-02 22:35:04 +00:00
HomeAssistant Azure
d81155327a [ci skip] Translation update 2021-03-02 22:35:04 +00:00
HomeAssistant Azure
3b459cd59a [ci skip] Translation update 2021-03-02 22:35:03 +00:00
HomeAssistant Azure
be4de15a10 [ci skip] Translation update 2021-03-02 22:35:03 +00:00
HomeAssistant Azure
ab5173c4cf [ci skip] Translation update 2021-03-02 22:35:03 +00:00
Martin Hjelmare
d3721bcf26 Add zwave_js add-on manager (#47251)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-03-02 14:22:42 -08:00
Raman Gupta
e443597b46 Bump zwave-js-server-python to 0.20.1 (#47289) 2021-03-02 23:09:50 +01:00
Raman Gupta
c327f3fc42 Convert climacell forecast timestamp to isoformat so that UI shows the right times (#47286) 2021-03-02 13:25:09 -08:00
Raman Gupta
42af775f53 Add raw values to zwave_js value notification event (#47258)
* add value_raw to value notification event that always shows the untranslated state value

* add property key and property to event params
2021-03-02 16:10:30 -05:00
Tobias Sauerwein
d20659d2ee Fix issue when setting boost preset for a turned off Netatmo thermostat (#47275) 2021-03-02 13:02:59 -08:00
Franck Nijhof
1926941d8e Upgrade pillow to 8.1.1 (#47223) 2021-03-02 13:02:41 -08:00
Paulus Schoutsen
2df644c6cc Clean up secret loading (#47034) 2021-03-02 12:58:53 -08:00
Simone Chemelli
17444e2f2f Limit log spam by ConfigEntryNotReady (#47201) 2021-03-02 12:50:28 -08:00
Quentame
198ecb0945 Uniformize platform setup (#47101)
* A platform is not a component

* Fix dynalite

* SUPPORTED_PLATFORMS --> PLATFORMS

* In tests

* In tests 2

* Fix SmartThings

* Fix ZHA test

* Fix Z-Wave

* Revert Z-Wave

* Use PLATFORMS const in ambient_station

* Fix ihc comment
2021-03-02 21:43:59 +01:00
Quentame
ca54de095d Add disk sensor to Freebox (#46689)
* Add disk sensor to Freebox

* Add debug logging into sensors

* Remove useless sensor[X] assignement in disk sensor
2021-03-02 21:23:02 +01:00
Ville Skyttä
b0c873dd34 Upgrade isort to 5.7.0 (#47279)
https://pycqa.github.io/isort/CHANGELOG/#570-december-30th-2020
2021-03-02 21:16:11 +01:00
Alexei Chetroi
7ef174fb5e Update ZHA dependencies (#47282) 2021-03-02 21:12:30 +01:00
Aaron Bach
112b039107 Bump simplisafe-python to 9.6.9 (#47273) 2021-03-02 12:19:04 -07:00
Bram Kragten
8e80e428d0 Update frontend to 20210302.0 (#47278) 2021-03-02 20:15:09 +01:00
Rene Lehfeld
2272925699 Add force_update to tasmota sensors (#47052)
* Add force update also to non-binary sensors as e.g. POWER Measurement agerage cannot be calculated otherwise. This is the same behavior as set with the obsolete tasmota detection

* add tests in binary_sensor and test_sensor for force_update flag

* satisfy flake8

* next try for force_update test but this time on the entity object which is the correct level

* once again satisfy flake8

* one more try for a test

* fix typo

* satisfy black
2021-03-02 18:57:14 +01:00
Franck Nijhof
4904207f77 Fix izone flake8 error (#47276) 2021-03-02 16:58:02 +01:00
Paulus Schoutsen
2ebca88950 Fix Alexa doorbells (#47257) 2021-03-02 15:13:45 +01:00
Erik Montnemery
959181a2e9 Make MQTT number respect retain setting (#47270) 2021-03-02 14:28:31 +01:00
Nick Adams
027d125617 Add services for izone airflow min/max (#45727)
* Create airflow_min and airflow_max services for the izone component
* Bump pizone library requirement
2021-03-02 20:58:41 +08:00
Quentame
6b9abfc2c6 Add init test to Freebox (#46998)
* Add init test to Freebox

* Review : more readable conftest

* Expect 2 blank lines between defs

* Review : Not I/O in the event loop

* Fix test_setup test

* remove useless const

* Review : mock setup methods

* Add service test

* Add import test
2021-03-02 13:37:33 +01:00
tkdrob
ab53b49d3f Clean up constants (#46948)
* Clean up constants

* clean up humidifier constants

* fix tests

* fix prometheus tests

Co-authored-by: Tobias Sauerwein <cgtobi@users.noreply.github.com>
2021-03-02 12:52:00 +01:00
Ville Skyttä
dc880118a4 Lint suppression cleanups (#47248)
* Unused pylint suppression cleanups

* Remove outdated pylint bug references

* Add flake8-noqa config and note to run it every now and then

* Add codes to noqa's

* Unused noqa cleanups
2021-03-02 09:02:04 +01:00
J. Nick Koston
38a2f196b8 Fix typing on fan percentage (#47259) 2021-03-02 08:32:24 +01:00
Erik Montnemery
7e71050669 Add battery sensor for gogogate2 wireless door sensor (#47145)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-03-01 17:34:37 -10:00
Paulus Schoutsen
ec95474604 Bumped version to 2021.3.0b6 2021-03-02 01:17:40 +00:00
Paulus Schoutsen
3117e47e1b Revert "Fix the updater schema (#47128)" (#47254)
This reverts commit 98be703d90.
2021-03-02 01:17:26 +00:00
Bram Kragten
bd29d82728 Update frontend to 20210301.0 (#47252) 2021-03-02 01:17:26 +00:00
Raman Gupta
88d29bcf20 Add suggested area for zwave_js devices (#47250) 2021-03-02 01:17:25 +00:00
J. Nick Koston
3ebe31e172 Fix lutron caseta fan handling of speed off (#47244) 2021-03-02 01:17:24 +00:00
Aaron Bach
8cf0fcc7f3 Bump simplisafe-python to 9.6.8 (#47241) 2021-03-02 01:17:24 +00:00
Erik Montnemery
118c996a9f Pass variables to initial evaluation of template trigger (#47236)
* Pass variables to initial evaluation of template trigger

* Add test

* Clarify test
2021-03-02 01:17:23 +00:00
Shay Levy
c411f0dcdc Fix Shelly Polling (#47224) 2021-03-02 01:17:22 +00:00
starkillerOG
30ccd33e7f Fix Xiaomi Miio flow unique_id for non discovery flows (#47222) 2021-03-02 01:17:22 +00:00
Franck Nijhof
acdad8a28c Fix duplicate template handling in Persistent Notifications (#47217) 2021-03-02 01:17:21 +00:00
J. Nick Koston
c28903103d Fix harmony failing to switch activities when a switch is in progress (#47212)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-03-02 01:17:20 +00:00
Erik Montnemery
b2a3c35e3a Fix race when disabling config entries (#47210)
* Fix race when disabling config entries

* Remove unused constant
2021-03-02 01:17:19 +00:00
Max Chodorowski
ea65f612cc Fix number of reported issues by github integration (#47203) 2021-03-02 01:17:19 +00:00
Marcel van der Veldt
819738a15c Update color logic for zwave_js light platform (#47110)
Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>
2021-03-02 01:17:18 +00:00
Marcel van der Veldt
853d9ac4a9 Update color logic for zwave_js light platform (#47110)
Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>
2021-03-01 17:12:49 -08:00
stephan192
7bc2328802 Remove rounding from The Things Network (#47157) 2021-03-01 17:00:42 -08:00
J. Nick Koston
d02218ff30 Fix harmony failing to switch activities when a switch is in progress (#47212)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-03-01 16:56:42 -08:00
Milan Meulemans
cb99969845 Fix typo in plaato strings (#47245) 2021-03-01 16:34:39 -08:00
Franck Nijhof
d1afef843b Deprecate LIFX Legacy integration (#47235) 2021-03-01 16:34:14 -08:00
Franck Nijhof
4f9f870e7d Fix duplicate template handling in Persistent Notifications (#47217) 2021-03-01 16:27:26 -08:00
Paulus Schoutsen
cc6293623f Revert "Fix the updater schema (#47128)" (#47254)
This reverts commit 98be703d90.
2021-03-01 16:12:48 -08:00
Aaron Bach
3ee589d973 Bump simplisafe-python to 9.6.8 (#47241) 2021-03-01 17:08:36 -07:00
Bram Kragten
036ce55bea Update frontend to 20210301.0 (#47252) 2021-03-01 15:32:39 -08:00
Raman Gupta
3e34bb3e89 Add suggested area for zwave_js devices (#47250) 2021-03-01 15:24:55 -08:00
Joakim Plate
c6cfcc2abb Add remote control support to philips_js (#47249) 2021-03-01 15:21:10 -08:00
J. Nick Koston
2e65a60624 Fix lutron caseta fan handling of speed off (#47244) 2021-03-01 15:18:47 -08:00
Erik Montnemery
96cc17b462 Add support for a list of known hosts to Google Cast (#47232) 2021-03-01 15:18:18 -08:00
Erik Montnemery
dd9e926689 Pass variables to initial evaluation of template trigger (#47236)
* Pass variables to initial evaluation of template trigger

* Add test

* Clarify test
2021-03-01 23:34:26 +01:00
Matthias Alphart
3fda9fd0c6 KNX address constant (#47196) 2021-03-01 21:59:36 +01:00
Raman Gupta
3c290c9a44 Address late hassio review (#47229)
* hassio code cleanup to address comments in #46342

* fix code
2021-03-01 12:10:51 -05:00
Dermot Duffy
61f509bdd8 Minor Hyperion mypy cleanups (#45765) 2021-03-01 18:10:28 +01:00
Shay Levy
adad4a7785 Fix Shelly Polling (#47224) 2021-03-01 17:27:43 +01:00
Dermot Duffy
be8584c0bc Overhaul command_line tests (#46682) 2021-03-01 17:27:04 +01:00
jdeath
3ebd5aff98 Bump mcstatus to 5.1.1 (#47169) 2021-03-01 16:35:47 +01:00
Franck Nijhof
5cb2fdb6f7 Upgrade spotipy to 2.17.1 (#47228) 2021-03-01 16:02:55 +01:00
Franck Nijhof
93d4e46bb6 Upgrade coverage to 5.5 (#47227) 2021-03-01 15:37:03 +01:00
Matt Zimmerman
947f6ea51e Parameterize SmartTub tests (#47189)
* Parameterize SmartTub tests

* parameterize light service calls

* remove stray print()

* add comment
2021-03-01 13:53:57 +01:00
Franck Nijhof
a2b13785c2 Restore pylint concurrency (#47221) 2021-03-01 13:40:46 +01:00
starkillerOG
084cfa4a1d Fix Xiaomi Miio flow unique_id for non discovery flows (#47222) 2021-03-01 12:46:02 +01:00
Erik Montnemery
003fee2a35 Fix race when disabling config entries (#47210)
* Fix race when disabling config entries

* Remove unused constant
2021-03-01 12:38:49 +01:00
Matthias Alphart
dadc99dbd3 Deprecate knx config_file (#46874)
* deprecate config_file

* removed cv.deprecated for now, added persistent notification

* Update homeassistant/components/knx/__init__.py

Co-authored-by: Philip Allgaier <philip.allgaier@gmx.de>

* remove notification, add cv.deprecated again

* Update homeassistant/components/knx/__init__.py

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

* remove cv.deprecated again

Co-authored-by: Philip Allgaier <philip.allgaier@gmx.de>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-03-01 11:55:55 +01:00
Matthias Alphart
92afcb6b4b KNX services send and event_register accept multiple group addresses (#46908)
* send and event_register service accept lists of group addresses

* remove lambda

* object selector for lists

* knx.read takes lists too
2021-03-01 11:51:59 +01:00
Max Chodorowski
4c42e469b3 Fix number of reported issues by github integration (#47203) 2021-03-01 10:38:07 +01:00
J. Nick Koston
2de01ddaeb Remove griddy integration (#47218) 2021-03-01 10:35:23 +01:00
Tobias Sauerwein
732db3b67c Revert const replacement in fritzbox_callmonitor (#47211) 2021-03-01 10:31:13 +01:00
Marc Mueller
e1d24c69b8 Improve CI workflow (#46696) 2021-03-01 10:28:41 +01:00
Raman Gupta
0592309b65 Add hassio addon_update service and hassio config entry with addon and OS devices and entities (#46342)
* add addon_update service, use config flow to set up config entry, create disabled sensors

* move most of entity logic to common entity class, improve device info, get rid of config_flow user step

* fix setup logic

* additional refactor

* fix refactored logic

* fix config flow tests

* add test for addon_update service and get_addons_info

* add entry setup and unload test and fix update coordinator

* handle if entry setup calls unload

* return nothing for coordinator if entry is being reloaded because coordinator will get recreated anyway

* remove entry when HA instance is no longer hassio and add corresponding test

* handle adding and removing device registry entries

* better config entry reload logic

* fix comment

* bugfix

* fix flake error

* switch pass to return

* use repository attribute for model and fallback to url

* use custom 'system' source since hassio source is misleading

* Update homeassistant/components/hassio/entity.py

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

* update remove addons function name

* Update homeassistant/components/hassio/__init__.py

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

* fix import

* pop coordinator after unload

* additional fixes

* always pass in sensor name when creating entity

* prefix one more function with async and fix tests

* use supervisor info for addons since list is already filtered on what's installed

* remove unused service

* update sensor names

* remove added handler function

* use walrus

* add OS device and sensors

* fix

* re-add addon_update service schema

* add more test coverage and exclude entities from tests

* check if instance is using hass OS in order to create OS entities

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-03-01 09:41:04 +01:00
Pascal Vizeli
f192b3c1e5 Bumped version to 2021.3.0b5 2021-03-01 08:32:13 +00:00
Stefan Agner
b9edd0d7ad Fix generic-x86-64 build (#47214)
Replace the wrong Docker Hub repository slipped in during testing.
2021-03-01 08:30:22 +00:00
J. Nick Koston
4907c12964 Bump HAP-python to 3.3.2 to fix unavailable condition on restart (#47213)
Fixes

https://github.com/ikalchev/HAP-python/compare/v3.3.1...v3.3.2
2021-03-01 08:30:21 +00:00
J. Nick Koston
62e224ecb0 Increment the homekit config version when restarting (#47209)
If an entity changes between restart the iOS/controller
device may have cached the old chars for the accessory.
To force the iOS/controller to reload the chars, we
increment the config version when Home Assistant restarts
2021-03-01 08:30:21 +00:00
Aaron Bach
0e951f288b Bump simplisafe-python to 9.6.7 (#47206) 2021-03-01 08:30:20 +00:00
starkillerOG
aa9b445856 Fix Xiaomi Miio discovery (#47134) 2021-03-01 08:30:20 +00:00
AJ Schmidt
8513250628 Update AlarmDecoder dependency (#46841) 2021-03-01 08:30:19 +00:00
Stefan Agner
d2db58d138 Fix generic-x86-64 build (#47214)
Replace the wrong Docker Hub repository slipped in during testing.
2021-03-01 09:17:41 +01:00
Marc Mueller
16dcbf1467 Update pylint (#47205) 2021-02-28 22:09:01 -10:00
J. Nick Koston
cb94e7949b Bump HAP-python to 3.3.2 to fix unavailable condition on restart (#47213)
Fixes

https://github.com/ikalchev/HAP-python/compare/v3.3.1...v3.3.2
2021-02-28 22:00:31 -10:00
J. Nick Koston
853da40e70 Increment the homekit config version when restarting (#47209)
If an entity changes between restart the iOS/controller
device may have cached the old chars for the accessory.
To force the iOS/controller to reload the chars, we
increment the config version when Home Assistant restarts
2021-02-28 20:42:09 -08:00
Aaron Bach
0e9f2dc272 Bump simplisafe-python to 9.6.7 (#47206) 2021-02-28 20:41:09 -08:00
J. Nick Koston
5784e14d0c Enforce typing in bond (#47187)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-01 03:16:30 +01:00
Allen Porter
715a254913 Handle stream failures in recorder (#47151)
* Handle stream failures in recorder

Fail gracefully with an error message when the recorder is invoked with no segments due to a stream failure.

* Update homeassistant/components/stream/recorder.py

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>
2021-02-28 18:01:28 -08:00
HomeAssistant Azure
44ed6cda40 [ci skip] Translation update 2021-03-01 00:09:01 +00:00
Matt Zimmerman
277c3cb661 Cleanup SmartTub filtration cycles (#47192) 2021-02-28 13:53:57 -10:00
Eric Severance
1d7660f071 Explain why should_pool is True initially for wemo (#47191) 2021-02-28 13:51:43 -10:00
Matt Zimmerman
c6223873f4 Move SmartTub climate constants to module level (#47190) 2021-02-28 13:49:25 -10:00
Matt Zimmerman
bab66a5cb9 Remove turn_on and turn_off from SmartTub pump switches (#47184) 2021-02-28 13:48:30 -10:00
AJ Schmidt
b8c8fe0820 Update AlarmDecoder dependency (#46841) 2021-02-28 13:21:04 -10:00
starkillerOG
1c9a9be197 Fix Xiaomi Miio discovery (#47134) 2021-02-28 12:25:40 -08:00
Paulus Schoutsen
6887474ddc Bumped version to 2021.3.0b4 2021-02-28 20:22:46 +00:00
J. Nick Koston
e93868f85b Update HAP-python to 3.3.1 (#47180)
Fixes disconnect when setting a single char fails
https://github.com/ikalchev/HAP-python/compare/v3.3.0...v3.3.1
2021-02-28 20:22:29 +00:00
David F. Mulcahey
db098d90dd Bump ZHA quirks to 0.0.54 (#47172) 2021-02-28 20:22:29 +00:00
Stefan Agner
552da0327e Bump builder to get generic-x86-64 nightly builds (#47164) 2021-02-28 20:22:28 +00:00
Erik Montnemery
104d5c510f Fix MQTT trigger where wanted payload may be parsed as an integer (#47162) 2021-02-28 20:22:27 +00:00
Paulus Schoutsen
d9d979d50e Fix the updater schema (#47128) 2021-02-28 20:21:41 +00:00
Bram Kragten
e65b2231ba Update frontend to 20210226.0 (#47123) 2021-02-28 20:21:41 +00:00
J. Nick Koston
2b0f6716b3 Provide a human readable exception for the percentage util (#47121) 2021-02-28 20:21:40 +00:00
J. Nick Koston
dd4f8bf4b4 Handle lutron_caseta fan speed being none (#47120) 2021-02-28 20:21:39 +00:00
Shay Levy
505ca07c4e Fix Shelly RGBW (#47116) 2021-02-28 20:21:39 +00:00
Paulus Schoutsen
807bf15ff3 Use async_capture_events to avoid running in executor (#47111) 2021-02-28 20:21:38 +00:00
Erik Montnemery
72b82449d8 Update MQTT device triggers with support for templates (#47142) 2021-02-28 12:20:09 -08:00
Erik Montnemery
19cd29affa Fix MQTT trigger where wanted payload may be parsed as an integer (#47162) 2021-02-28 12:19:27 -08:00
J. Nick Koston
6ff3eb0569 Update HAP-python to 3.3.1 (#47180)
Fixes disconnect when setting a single char fails
https://github.com/ikalchev/HAP-python/compare/v3.3.0...v3.3.1
2021-02-28 19:27:36 +01:00
Allen Porter
5cc8302e6a Fix flaky hls keepalive test (#47186)
Remove a call to stream.start() which is issued before the test is fully
setup (e.g. keepalive is not set to True, and mock calls are not registered)
2021-02-28 10:25:07 -08:00
Michael
261d86f06b Apply recommendations to synology_dsm (#47178) 2021-02-28 19:19:50 +01:00
Erik Montnemery
da5902e4f8 Tweak Tasmota fan typing (#47175) 2021-02-28 17:48:23 +01:00
David F. Mulcahey
4853a81366 Bump ZHA quirks to 0.0.54 (#47172) 2021-02-28 10:55:14 -05:00
Paulus Schoutsen
98be703d90 Fix the updater schema (#47128) 2021-02-28 14:41:06 +01:00
Stefan Agner
f4189510e9 Bump builder to get generic-x86-64 nightly builds (#47164) 2021-02-28 14:33:48 +01:00
tkdrob
fa1d91d1fe Clean up mqtt_room (#46882) 2021-02-28 14:16:37 +01:00
Maciej Bieniek
66027bcef5 Bump airly library to version 1.1.0 (#47163) 2021-02-28 12:53:13 +01:00
HomeAssistant Azure
eb7220ff26 [ci skip] Translation update 2021-02-28 00:07:08 +00:00
Robert Svensson
da309ce342 Change device class of window covers to shade (#47129) 2021-02-27 14:09:25 -06:00
Allen Porter
97b59023d1 Improve handling for recording start of nest cam stream (#47144)
* Improve handling for start of nest cam stream

Add negative_cts_offsets to segment container options in order to better handle recording at the start of a stream. Nest streams start off with a negative offset, and if the segment container does not support it, then it adjusts the timestamps making it out of order with the next segment as described in issue #46968

* Update homeassistant/components/stream/__init__.py

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>
2021-02-27 11:20:58 -08:00
J. Nick Koston
49315a90d9 Handle lutron_caseta fan speed being none (#47120) 2021-02-26 16:33:31 -08:00
J. Nick Koston
86f8cd8037 Provide a human readable exception for the percentage util (#47121) 2021-02-26 16:33:13 -08:00
Bram Kragten
84e01baa5a Update frontend to 20210226.0 (#47123) 2021-02-26 16:32:51 -08:00
HomeAssistant Azure
43621091b7 [ci skip] Translation update 2021-02-27 00:05:45 +00:00
Shay Levy
e9b8e035b4 Fix Shelly RGBW (#47116) 2021-02-26 14:28:16 -08:00
Paulus Schoutsen
7c2545af6e Use async_capture_events to avoid running in executor (#47111) 2021-02-26 13:28:52 -08:00
Paulus Schoutsen
cdf7372fd8 Bumped version to 2021.3.0b3 2021-02-26 19:21:15 +00:00
Allen Porter
0969cc985b Bump google-nest-sdm to v0.2.12 to improve API call error messages (#47108) 2021-02-26 19:21:08 +00:00
Stefan Agner
5e2bafca56 Add new machine generic-x86-64 to build matrix (#47095)
The Intel NUC machine runs on most UEFI capable x86-64 machines today.
Lets start a new machine generic-x86-64 which will replace intel-nuc
over time.
2021-02-26 19:21:07 +00:00
Simone Chemelli
1d1be8ad1a Bump aioshelly to 0.6.1 (#47088) 2021-02-26 19:21:06 +00:00
Marcel van der Veldt
d55f0df09a Fix Z-Wave JS discovery schema for thermostat devices (#47087)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-26 19:21:06 +00:00
Erik Montnemery
96e118ccfe Bump pychromecast to 8.1.2 (#47085) 2021-02-26 19:21:05 +00:00
Paulus Schoutsen
255b6faa7f Upgrade aiohttp to 3.7.4 (#47077) 2021-02-26 19:21:04 +00:00
rikroe
4cd40d0f9f Bump bimmer_connected to 0.7.15 and fix bugs (#47066)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-02-26 19:21:03 +00:00
J. Nick Koston
c12769213d Add suggested area to hue (#47056) 2021-02-26 19:21:02 +00:00
CurrentThread
6a850a1481 Add support for Shelly SHBTN-2 device triggers (#46644) 2021-02-26 19:21:02 +00:00
Joakim Plate
101897c260 Add support for v6 features to philips js integration (#46422) 2021-02-26 19:21:01 +00:00
Allen Porter
b1898cc176 Bump google-nest-sdm to v0.2.12 to improve API call error messages (#47108) 2021-02-26 11:20:32 -08:00
Marcel van der Veldt
7ca148f65d Fix Z-Wave JS discovery schema for thermostat devices (#47087)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-26 11:19:23 -08:00
Simone Chemelli
8971ab2edc Bump aioshelly to 0.6.1 (#47088) 2021-02-26 11:07:53 -08:00
Joakim Plate
e12eba1989 Add support for v6 features to philips js integration (#46422) 2021-02-26 09:34:40 -08:00
J. Nick Koston
7ab2d91bf0 Add suggested area to hue (#47056) 2021-02-26 10:35:09 -06:00
Charles Garwood
d8633f94f6 Guard zwave_js missing nodes in websocket api (#47096) 2021-02-26 16:07:50 +01:00
Stefan Agner
6e77ca70fc Add new machine generic-x86-64 to build matrix (#47095)
The Intel NUC machine runs on most UEFI capable x86-64 machines today.
Lets start a new machine generic-x86-64 which will replace intel-nuc
over time.
2021-02-26 15:49:33 +01:00
Guido Schmitz
71cf982a28 Add suggested_area support to devolo Home Control (#47063) 2021-02-26 08:48:36 -06:00
rikroe
9c67f83f4e Bump bimmer_connected to 0.7.15 and fix bugs (#47066)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-02-26 13:57:47 +01:00
Raman Gupta
56673f7edf Remove flaky climacell test (#47080) 2021-02-26 13:45:21 +01:00
Erik Montnemery
dfbb653107 Bump pychromecast to 9.0.0 (#47086)
* Adapt to Pychromecast 9.0.0

* Bump pychromecast to 9.0.0

* Fix lint issues
2021-02-26 13:43:53 +01:00
CurrentThread
d5ee49cd4e Add support for Shelly SHBTN-2 device triggers (#46644) 2021-02-26 11:52:47 +01:00
Erik Montnemery
5780615251 Bump pychromecast to 8.1.2 (#47085) 2021-02-26 10:47:22 +01:00
chpego
afb6e31393 Upgrade youtube_dl to version 2021.02.22 (#47078)
* Upgrade youtube_dl to version 2021.02.22

* Update requirements_all.txt
2021-02-26 10:39:31 +01:00
Paulus Schoutsen
3a3c12bb17 Upgrade aiohttp to 3.7.4 (#47077) 2021-02-26 09:16:11 +01:00
Paulus Schoutsen
6cdd6c3f44 Bumped version to 2021.3.0b2 2021-02-26 06:01:42 +00:00
Paulus Schoutsen
2c30579a11 Bump Z-Wave JS Server Python to 0.20.0 (#47076) 2021-02-26 06:01:35 +00:00
Raman Gupta
ae0d301fd9 catch ValueError when unique ID update fails because its taken and remove the duplicate entity (#47072) 2021-02-26 06:01:34 +00:00
J. Nick Koston
a7a66e8ddb Ensure hue options show the defaults when the config options have not yet been saved (#47067) 2021-02-26 06:01:33 +00:00
Bram Kragten
5228bbd43c Revert CORS changes for my home assistant (#47064)
* Revert CORS changes for my home assistant

* Update test_init.py

* Update test_init.py
2021-02-26 06:01:33 +00:00
Bram Kragten
35bce434cc Updated frontend to 20210225.0 (#47059) 2021-02-26 06:01:32 +00:00
Paulus Schoutsen
6bd253094f Bump Z-Wave JS Server Python to 0.20.0 (#47076) 2021-02-25 22:01:08 -08:00
J. Nick Koston
6af67c9558 Ensure hue options show the defaults when the config options have not yet been saved (#47067) 2021-02-25 21:58:35 -08:00
Charles Garwood
8ab163eda8 Fix Z-Wave JS API docstrings (#47061) 2021-02-25 21:11:06 -08:00
Raman Gupta
7118b7169c catch ValueError when unique ID update fails because its taken and remove the duplicate entity (#47072) 2021-02-25 20:41:54 -05:00
HomeAssistant Azure
989d3e5c87 [ci skip] Translation update 2021-02-26 00:06:13 +00:00
Bram Kragten
e3105c7eb1 Revert CORS changes for my home assistant (#47064)
* Revert CORS changes for my home assistant

* Update test_init.py

* Update test_init.py
2021-02-25 15:28:22 -08:00
Bram Kragten
d084291055 Updated frontend to 20210225.0 (#47059) 2021-02-25 21:34:04 +01:00
Paulus Schoutsen
33a6fb1baf Bumped version to 2021.3.0b1 2021-02-25 19:42:48 +00:00
Paulus Schoutsen
399c299cf2 Remove deprecated credstash + keyring (#47033) 2021-02-25 19:42:43 +00:00
Raman Gupta
c797e0c8de Fix zwave_js unique ID migration logic (#47031) 2021-02-25 19:42:42 +00:00
Simone Chemelli
cb2dd6d908 Fix missing Shelly external input (#47028)
* Add support for external input (Shelly 1/1pm add-on)

* Make external sensor naming consistent

* Fix case consistency
2021-02-25 19:42:41 +00:00
Ron Klinkien
a3cde9b19e Bump python-garminconnect to 0.1.19 to fix broken api (#47020) 2021-02-25 19:42:40 +00:00
Joakim Sørensen
a58931280a Use dispatch instead of eventbus for supervisor events (#46986)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-02-25 19:42:40 +00:00
J. Nick Koston
2fef4c4eef Ensure doorbird events are re-registered when changing options (#46860)
- Fixed the update listener not being unsubscribed

- DRY up some of the code

- Fix sync code being called in async

- Reduce executor jumps
2021-02-25 19:42:39 +00:00
Joakim Sørensen
7d90cdea1e Use dispatch instead of eventbus for supervisor events (#46986)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-02-25 19:52:11 +01:00
J. Nick Koston
f4db74fe73 Fix bond typing in config flow (#47055) 2021-02-25 18:08:04 +01:00
Ron Klinkien
3a82917400 Bump python-garminconnect to 0.1.19 to fix broken api (#47020) 2021-02-25 17:39:57 +01:00
Tobias Sauerwein
4e09d7ee0f Clean up Netatmo webhook handler (#47037) 2021-02-25 16:53:59 +01:00
Quentame
125206adbf Add zeroconf discovery to Freebox (#47045)
* Add zeroconf discovery to Freebox

- remove deprecated discovery
- tried with SSDP too but the presentation URL is not the same (*.fbxos.fr for zeroconf, http://mafreebox.freebox.fr/ for SSDP)
- so config entry unique_id should be the MAC (included into SSDP, but not zeroconf, can be retrieve from `fbx.system.get_config()`)
- DHCP discovery might be added in the future too

* host and port are required on zeroconf

* cleanup in other PR
2021-02-25 16:50:58 +01:00
Johan Josua Storm
5bba532dd4 Replace wrong domain returned from xbox api 2.0 (#47021)
* Change solution to use yarl lib

* Add check if base url needs changing

* Actively remove padding query instead of omitting

* Fixed popping the wrong query

* Change explaination about removing mode query
2021-02-25 09:38:45 -05:00
Maciej Bieniek
09bafafee2 Bump gios library to version 0.2.0 (#47050) 2021-02-25 15:26:00 +01:00
João Gabriel
372ed2db91 Add remote control platform to Panasonic Viera (#42450)
* Adding remote platform

* Update homeassistant/components/panasonic_viera/remote.py

Simplify entity creation

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

* Use Pytest fixture

* Use Pytest fixtures and assert service calls

* Adding conftest.py and organizing tests

* Reorganizing tests

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-25 13:40:01 +01:00
Fabian Affolter
c9d7a2be88 Upgrade sendgrid to 6.6.0 (#47041) 2021-02-25 13:09:52 +01:00
Fabian Affolter
5ec4360ac1 Upgrade pyowm to 3.2.0 (#47042) 2021-02-25 13:08:44 +01:00
Paulus Schoutsen
1989b8c07d Clean up discovery integration (#47022)
* Clean up discovery integration

* Fix tests

* Remove discovery step from freebox
2021-02-25 12:19:21 +01:00
Fabian Affolter
7a691f9d26 Upgrade icmplib to 2.0.2 (#47039) 2021-02-25 11:11:40 +01:00
Robert Svensson
6b0c569a70 Normally there should only be one battery sensor per device from deCONZ. (#46761)
With these Danfoss devices each endpoint can report its own battery state.
2021-02-25 09:54:46 +01:00
Simone Chemelli
65a2f07a01 Fix missing Shelly external input (#47028)
* Add support for external input (Shelly 1/1pm add-on)

* Make external sensor naming consistent

* Fix case consistency
2021-02-25 09:51:18 +01:00
Florian Heilmann
47938a1355 hm climate: Return PRESET_NONE instead of None (#47003)
Signed-off-by: Florian Heilmann <Florian.Heilmann@gmx.net>
2021-02-25 09:49:52 +01:00
Paulus Schoutsen
633a7aeb22 Remove deprecated credstash + keyring (#47033) 2021-02-25 09:48:19 +01:00
J. Nick Koston
72263abfa9 Ensure doorbird events are re-registered when changing options (#46860)
- Fixed the update listener not being unsubscribed

- DRY up some of the code

- Fix sync code being called in async

- Reduce executor jumps
2021-02-24 23:16:20 -08:00
Raman Gupta
a43f3c1a0c Fix zwave_js unique ID migration logic (#47031) 2021-02-24 23:14:32 -08:00
starkillerOG
7dc9071776 Add Xiaomi Miio fan config flow (#46866)
* Miio fan config flow

* fix styling and imports

* Update homeassistant/components/xiaomi_miio/fan.py

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

* Update homeassistant/components/xiaomi_miio/fan.py

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

* Update homeassistant/components/xiaomi_miio/fan.py

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

* Update homeassistant/components/xiaomi_miio/fan.py

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

* Update homeassistant/components/xiaomi_miio/fan.py

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

* rename device -> entity

* fix indent

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-25 04:25:06 +01:00
Fabian Affolter
7e35af5d4e Upgrade TwitterAPI to 2.6.8 (#47019) 2021-02-24 19:09:33 -05:00
HomeAssistant Azure
bb7f1b748f [ci skip] Translation update 2021-02-25 00:05:20 +00:00
Paulus Schoutsen
557ec374f1 Convert discovery helper to use dispatcher (#47008) 2021-02-24 13:37:31 -08:00
Franck Nijhof
5ab11df551 Bump version to 2021.4.0dev0 (#47017) 2021-02-24 22:28:02 +01:00
Franck Nijhof
567ec26c48 Bumped version to 2021.3.0b0 2021-02-24 22:01:28 +01:00
Marcel van der Veldt
23cbd2dda3 Change Z-Wave JS discovery logic to adopt changes to DeviceClass (#46983)
Co-authored-by: raman325 <7243222+raman325@users.noreply.github.com>
2021-02-24 12:59:06 -08:00
Bram Kragten
afae253432 Update frontend to 20210224.0 (#47013) 2021-02-24 21:18:24 +01:00
Simone Chemelli
4c294adfe8 Add missing tilt icon to Shelly tilt sensor (#46993) 2021-02-24 21:18:14 +01:00
Nathan Tilley
8d2606134d Add FAA Delays Integration (#41347)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-24 14:11:20 -06:00
jjlawren
ba51ada494 Bump plexapi to 4.4.0 (#47007) 2021-02-24 21:00:58 +01:00
jjlawren
2f1dba74d1 Use Plex server URL as config entry title (#47010) 2021-02-24 20:57:02 +01:00
Tobias Sauerwein
39baeb62f2 Add Sonos media browser image proxy (#46902) 2021-02-24 20:51:12 +01:00
Erik Montnemery
daf7595ca6 Support value_template in MQTT triggers (#46891)
* Support value_template in MQTT triggers

* Rename value_template to payload_template

* Revert "Rename value_template to payload_template"

This reverts commit 902094eefc.
2021-02-24 20:16:36 +01:00
Raman Gupta
783e0f9a14 Setup config entry even if vizio device is unreachable (#46864) 2021-02-24 20:15:47 +01:00
Marcel van der Veldt
868a536d81 Add number platform to Z-Wave JS (#46956)
* add number platform to zwave_js integration
* add discovery scheme for thermostat valve control, using number platform

Co-authored-by: kpine <keith.pine@gmail.com>
2021-02-24 19:39:35 +01:00
Milan Meulemans
0eb8951aed Remove recursive key reference (#46999) 2021-02-24 13:29:53 -05:00
Tobias Sauerwein
722b1e8746 Add Netatmo device trigger (#45387)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-24 19:20:40 +01:00
Milan Meulemans
db0d815f9d Use location common key reference in totalconnect (#46995) 2021-02-24 12:44:12 -05:00
Raman Gupta
106ae18432 Climacell fixes: Use common keys for strings, fix temp_low measurement, add windy condition (#46991)
* use common keys for lat and long

* additional fixes

* Update homeassistant/components/climacell/strings.json

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
2021-02-24 11:15:01 -05:00
Joakim Sørensen
11a89bc3ac Add addon selector (#46789) 2021-02-24 17:02:48 +01:00
Fabian Affolter
0ef16dd563 Set awesomeversion to 21.2.3 (#46989) 2021-02-24 16:43:09 +01:00
Martin Hjelmare
db8f597f10 Fix zwave_js config flow server version timeout (#46990) 2021-02-24 16:22:58 +01:00
Raman Gupta
424526db7e Migrate zwave_js entities to use new unique ID format (#46979)
* migrate zwave_js entities to use new unique ID format

* remove extra param from helper

* add comment to remove migration logic in the future

* update comment

* use instance attribute instead of calling functino on every state update
2021-02-24 09:41:10 -05:00
adrian-vlad
44293a3738 Add enable and disable services for recorder (#45778) 2021-02-24 07:26:05 -06:00
Álvaro Fernández Rojas
470121e5b0 Restore Tado binary sensor attributes (#46069) 2021-02-24 07:17:01 -06:00
Maciej Bieniek
b645b151f9 Catch AuthRequired exception in confirm discovery step for Shelly config flow (#46135) 2021-02-24 07:13:32 -06:00
Franck Nijhof
8f19d041e4 Merge branch 'master' into dev 2021-02-24 13:52:44 +01:00
Franck Nijhof
45b50c53ad Mullvad integration improvements (#46987) 2021-02-24 13:43:44 +01:00
Bram Kragten
b0d56970a5 Fix TTS services name (#46988) 2021-02-24 13:43:24 +01:00
Martin Hjelmare
17f4c9dd06 Improve mysensors config flow (#46984) 2021-02-24 12:52:04 +01:00
MeIchthys
1a73cb4791 Mullvad VPN (#44189)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-02-24 12:04:38 +01:00
Martin Hjelmare
1c7c6163dd Save mysensors gateway type in config entry (#46981) 2021-02-24 11:31:31 +01:00
Raman Gupta
eccdae60bf Add ClimaCell weather integration (#36547)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-24 09:34:27 +01:00
Matthias Alphart
a632215541 Validate KNX addresses (#46933) 2021-02-24 08:37:41 +01:00
Franck Nijhof
42fd3be0e8 Add template support to service targets (#46977)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-02-23 22:46:00 -08:00
Steven Looman
3e26e2adad Handle device IP change in upnp (#46859) 2021-02-23 21:00:47 -06:00
Allen Porter
19f5b467b7 Make FAN_ON use the max duration rather than 15 min default (#46489) 2021-02-23 20:38:52 -06:00
Nathan Spencer
b8f7bc12ee Add switches and sensors to Litter-Robot (#46942) 2021-02-23 20:34:25 -06:00
Marcel van der Veldt
d4d68ebc64 Extend zwave_js discovery scheme for lights (#46907) 2021-02-23 16:31:24 -08:00
Matthias Alphart
d02b27a5d0 Update xknx to 0.17.1 (#46974) 2021-02-23 16:26:17 -08:00
J. Nick Koston
87cbbcb014 Automatically create HomeKit accessory mode entries (#46473)
When we set up HomeKit, we asked users if they wanted
to create an entry in bridge or accessory mode.

This approach required the user to understand how HomeKit works and
choose which type to create.

When the user includes the media player or camera domains,
we exclude them from the bridge and create the additional entries
for each entity in accessory mode.
2021-02-23 16:22:23 -08:00
HomeAssistant Azure
9159f54900 [ci skip] Translation update 2021-02-24 00:04:14 +00:00
Raman Gupta
b657fd02cd deep copy zwave_js state in test fixtures so tests are more isolated (#46976) 2021-02-23 18:58:25 -05:00
Raman Gupta
1a99562e91 Add zwave_js.refresh_value service (#46944)
* add poll_value service

* switch vol.All to vol.Schema

* more relevant log message

* switch service name to refresh_value, add parameter to refresh all watched values, fix tests

* rename parameter and create task for polling command so we don't wait for a response

* raise ValueError for unknown entity

* better error message

* fix test
2021-02-23 18:58:04 -05:00
Milan Meulemans
228096847b Fix typo in fireservicerota strings (#46973) 2021-02-23 23:42:24 +01:00
jjlawren
425d56d024 Fix Plex showing removed shared users (#46971) 2021-02-23 23:36:46 +01:00
tkdrob
c9847920af Use core constants for dht (#46029) 2021-02-23 23:32:39 +01:00
MHV33
23b2953773 Add more shopping list services (#45591)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-02-23 23:25:50 +01:00
Michael
d96249e39c Implement additional DataUpdateCoordinator to harmonize the data update handling of Synology DSM (#46113) 2021-02-23 16:23:50 -06:00
Matthias Alphart
b583ded8b5 Fix KNX services.yaml (#46897) 2021-02-23 22:59:16 +01:00
J. Nick Koston
d68a51ddce Avoid having to ask for the bond token when possible during config (#46845) 2021-02-23 13:42:56 -08:00
Simone Chemelli
00dd557cce Fix Shelly mireds and color_temp return type (#46112) 2021-02-23 22:42:33 +01:00
Martin Hjelmare
089effbe3f Improve zwave_js config flow (#46906) 2021-02-23 13:41:19 -08:00
jjlawren
272e975a52 Fix Plex handling of clips (#46667) 2021-02-23 22:38:24 +01:00
J. Nick Koston
eb8d723689 Bump pymyq to fix myq in core (#46962) 2021-02-23 21:50:06 +01:00
Jon Caruana
6a8b5ee51b LiteJet is now configured using config_flow (#44409)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-23 14:20:58 -06:00
J. Nick Koston
ffe42e150a Add missing target to increase_speed/decrease_speed service (#46939) 2021-02-23 12:03:30 -06:00
Raman Gupta
5a3bd30e01 Add zwave_js.set_config_parameter service (#46673)
* create zwave_js.set_config_value service

* update docstring

* PR comments

* make proposed changes

* handle providing a label for the new value

* fix docstring

* use new library function

* config param endpoint is always 0

* corresponding changes from upstream PR

* bug fixes and add tests

* create zwave_js.set_config_value service

* update docstring

* PR comments

* make proposed changes

* handle providing a label for the new value

* fix docstring

* use new library function

* config param endpoint is always 0

* corresponding changes from upstream PR

* bug fixes and add tests

* use lambda to avoid extra function

* add services description file

* bring back the missing selector

* move helper functions to helper file for reuse

* allow target selector for automation editor

* formatting

* fix service schema

* update docstrings

* raise error in service if call to set value is unsuccessful

* Update homeassistant/components/zwave_js/services.yaml

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

* Update homeassistant/components/zwave_js/services.yaml

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

* Update homeassistant/components/zwave_js/services.yaml

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

* Update homeassistant/components/zwave_js/services.yaml

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

* Update homeassistant/components/zwave_js/services.yaml

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

* Update homeassistant/components/zwave_js/services.yaml

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

* remove extra param to vol.Optional

* switch to set over list for nodes

* switch to set over list for nodes

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-02-23 11:35:11 -05:00
Martin Hjelmare
c94968d811 Catch more zwave_js errors (#46957) 2021-02-23 16:36:53 +01:00
Philip Allgaier
7a7147edcf Add stop tilt support to KNX (#46947) 2021-02-23 16:34:02 +01:00
Charles Garwood
3c35b6558b Return states list from zwave_js get_config_parameters websocket if available (#46954) 2021-02-23 09:31:47 -05:00
Bram Kragten
f0f752936b Update homeassistant services.yaml (#46952)
Add names and missing target to turn off service
2021-02-23 14:49:04 +01:00
Bram Kragten
afa91e886b Add description to tts and notify services (#46764)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-02-23 14:29:57 +01:00
Franck Nijhof
ea4bbd771f Add service names to previously enriched services (#46929)
Co-authored-by: Tobias Sauerwein <cgtobi@users.noreply.github.com>
2021-02-23 14:10:13 +01:00
Maciej Bieniek
593e7aea5a Bump accuweather to 0.1.0 (#46951) 2021-02-23 14:00:21 +01:00
Martin Hjelmare
6fe72b04eb Add zwave_js constant for add-on slug (#46950) 2021-02-23 13:24:07 +01:00
tkdrob
4fdb617e22 Clean up constants (#46924)
* Clean up constants

* fix imports
2021-02-23 09:56:44 +01:00
J. Nick Koston
08889a9819 Fix smaty fan typing (#46941) 2021-02-23 07:14:39 +01:00
J. Nick Koston
f33618d33d Add suggested area support to isy994 (#46927) 2021-02-22 21:27:33 -06:00
J. Nick Koston
bd87047ff2 Update tasmota to use new fan entity model (#45877) 2021-02-22 21:27:21 -06:00
J. Nick Koston
fb2a100f5e Add suggested area to tado (#46932)
I realized tado shows what we internally call `zone_name` as
the room name in the app.
2021-02-22 21:27:09 -06:00
uvjustin
f005c68630 Restore stream recorder functionality and add discontinuity support (#46772)
* Add discontinuity support to stream recorder

* Use same container options for both StreamOutputs

* Fix pts adjuster

* Remove redundant/incorrect duplicate hls segment check

* Use same StreamBuffer across outputs

* Remove keepalive check for recorder

* Set output video timescale explicitly

* Disable avoid_negative_ts
2021-02-23 10:37:19 +08:00
Raman Gupta
1cecf229b9 Add zwave_js set_config_parameter WS API command (#46910)
* add WS API command

* handle error scenario better

* fixes and remove duplicate catch

* make elif statement more compact

* fix conflict

* switch to str(err)
2021-02-22 20:34:47 -05:00
HomeAssistant Azure
580d25c622 [ci skip] Translation update 2021-02-23 00:05:06 +00:00
Raman Gupta
20ccec9aab Add zwave_js/get_log_config and zwave_js/update_log_config WS API commands (#46601)
* Add zwave_js.update_log_config service

* fix comment

* reduce lines

* move update_log_config from service to ws API call

* fix docstring

* Add zwave_js/get_log_config WS API command

* resolve stale comments

* remove transports since it will be removed from upstream PR

* add support to update all log config parameters since they could be useful outside of the UI for advanced users

* fix comment

* switch to lambda instead of single line validator

* fix rebase

* re-add ATTR_DOMAIN
2021-02-22 18:35:19 -05:00
Raman Gupta
9d7c64ec1a Add missing required=true to code slot field in zwave_js.set_lock_usercode service (#46931) 2021-02-22 23:42:12 +01:00
Charles Garwood
04e07d8b2c Add get_config_parameters websocket command to zwave_js (#46463)
* Add get_configuration_values websocket command to zwave_js

* Tweak return value

* Review comments and cleanup returned values

* Update test

* Rename to get_config_parameters

* Add get_configuration_values websocket command to zwave_js

* Rename to get_config_parameters

* fix test

* fix tests #2

* Add readable to metadata

Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>
2021-02-22 17:03:38 -05:00
Bram Kragten
be33336d96 Update frontend to 20210222.0 (#46928) 2021-02-22 22:48:47 +01:00
Philip Allgaier
8ac9faef3b Description tweaks for automation services (#46926) 2021-02-22 21:36:38 +01:00
tkdrob
f0c7aff248 Clean up Mitemp_bt constants (#46881)
* Use core constants for acer_projector

* Use core constants for mitemp_bt

* remove acer changes
2021-02-22 21:12:00 +01:00
kpine
fb32c2e3a8 Test zwave_js GE 12730 fan controller device-specific discovery (#46840)
* Add test for GE 12730 fan controller device-specific discovery

* Adjust

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-22 10:56:23 -08:00
Nathan Spencer
e70d896e1b Add litterrobot integration (#45886) 2021-02-22 08:53:57 -10:00
Raman Gupta
668574c48f Add name and target filter to vizio entity service (#46916)
* Add name and target filter to vizio entity service

* Update homeassistant/components/vizio/services.yaml

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

* add selectors

* Update homeassistant/components/vizio/services.yaml

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

* Update homeassistant/components/vizio/services.yaml

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

* Update homeassistant/components/vizio/services.yaml

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

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-02-22 13:31:18 -05:00
Michal Knizek
5907129b25 Increase tado API polling interval to 5 minutes (#46915)
Polling interval of 15 seconds causes high load on tado servers and does
not provide enough value to warrant it. tado plans to introduce a rate
limit to prevent such misuse of the API, therefore the polling interval
needs to be increased to make sure the integration works well in the
future.
2021-02-22 19:30:23 +01:00
Raman Gupta
6e10b39d67 add name and target filter to zwave_js lock services.yaml (#46914) 2021-02-22 12:54:06 -05:00
Tobias Sauerwein
692942b399 Add service names to Netatmo services (#46909) 2021-02-22 18:50:01 +01:00
Franck Nijhof
c8ffac20b9 Add name to services (#46905) 2021-02-22 16:26:46 +01:00
tkdrob
75e04f3a71 Clean up constants (#46885) 2021-02-22 15:28:08 +01:00
Matt Zimmerman
81d011efc5 Add binary sensor to SmartTub for online status (#46889) 2021-02-22 04:10:00 -10:00
Franck Nijhof
603191702f Cleanup of possibily confusing comment in esphome (#46903) 2021-02-22 14:43:29 +01:00
Simone Chemelli
82a9dc620c Add device_class to Shelly cover domain (#46894)
Fix author
2021-02-22 14:31:22 +01:00
Jaroslav Hanslík
36b56586de Bump samsungtvws from 1.4.0 to 1.6.0 (#46878) 2021-02-22 13:58:32 +01:00
starkillerOG
338c07a56b Add Xiaomi Miio vacuum config flow (#46669) 2021-02-22 13:01:02 +01:00
Franck Nijhof
23c2bd4e69 Upgrade mypy to 0.812 (#46898) 2021-02-22 12:44:40 +01:00
Austin Mroczek
e5aef45bd7 Add usercode support to totalconnect (#39199)
* Add test for invalid usercode

* Add usercodes to totalconnect.

* Update existing tests for usercodes

* Fix tests

* Add test for invalid usercode

* Add usercodes to totalconnect.

* Update existing tests for usercodes

* Fix tests

* Remove YAML support

* Fix conflict

* Bump to total_connect_client 0.56

* Change Exception to HomeAssistantError

* Fix config_flow.py

* Simplify async_setup since no yaml

* Remove import from config flow and tests

* Add reauth and test for it.  Various other fixes.

* Fix pylint in __init__

* Show config yaml as deprecated

* separate config_flow and init tests

* Assert ENTRY_STATE_SETUP_ERROR in init test

* Add test for reauth flow

* Fix reauth and tests

* Fix strings

* Restore username and usercode with new passord

* Correct the integration name

* Update tests/components/totalconnect/test_config_flow.py

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

* Update tests/components/totalconnect/test_init.py

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

* Update .coveragerc

* Add test for invalid auth during reauth

* Bump total-connect-client to 0.57

* Fix .coveragerc

* More tests for usercodes

* Fix usercode test

* Reload config entry on reauth

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-22 10:39:10 +01:00
Anders Melchiorsen
d61d39de08 Handle ConditionError with multiple entity_id for state/numeric_state (#46855) 2021-02-22 08:11:59 +01:00
Jan-Willem Mulder
75b37b4c2a Expose locked attribute in deCONZ climate platform (#46814) 2021-02-22 07:53:58 +01:00
Matt Zimmerman
b2b476596b Add UV sensor to SmartTub (#46888) 2021-02-21 20:25:01 -10:00
Diogo Gomes
5c29adea3d Add KMTronic Integration (#41682)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-21 20:12:50 -10:00
Matt Zimmerman
5cd022a683 Add light platform to SmartTub (#46886)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-21 20:09:21 -10:00
Matthias Alphart
1a27af43cc Add KNX service exposure_register (#45257) 2021-02-21 19:38:17 -10:00
Matt Zimmerman
5d8390fd9b Add support for SmartTub filtration cycles (#46868) 2021-02-21 19:36:50 -10:00
Anders Melchiorsen
b1a24c8bbb Log the name of automations with condition errors (#46854) 2021-02-21 19:34:45 -10:00
Jonathan Keslin
b6b1e725c7 Add support for VeSync dimmer switches (#44713)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-21 19:16:13 -10:00
Matt Zimmerman
a8be5be376 Add switch platform and pump entity to SmartTub (#46842) 2021-02-21 18:48:27 -10:00
Matt Zimmerman
d32dbc4cdd Add support for SmartTub heat modes (#46876) 2021-02-21 18:46:54 -10:00
Diogo Gomes
0e44d61225 Add weather platform to template domain (#45031)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-21 18:08:00 -10:00
Matt Zimmerman
12c4db076c Add more sensors to SmartTub integration (#46839) 2021-02-21 17:40:23 -10:00
tkdrob
8330940996 Clean up acer_projector constants (#46880) 2021-02-21 20:31:09 -05:00
tkdrob
29c0696537 Clean up denonavr constants (#46883) 2021-02-21 20:30:23 -05:00
HomeAssistant Azure
871427f5f1 [ci skip] Translation update 2021-02-22 00:06:36 +00:00
Charles Garwood
50a07f6d25 Log zwave_js connection errors (#46867) 2021-02-21 22:42:06 +01:00
J. Nick Koston
c1ee9f7e4a Fix unmocked I/O in rituals_perfume_genie config flow test (#46862) 2021-02-21 20:47:38 +01:00
Anders Melchiorsen
d33a1a5ff8 Refine printing of ConditionError (#46838)
* Refine printing of ConditionError

* Improve coverage

* name -> type
2021-02-21 14:54:36 +01:00
J. Nick Koston
e2fd255a96 Cleanup recorder tests (#46836) 2021-02-21 09:52:41 +01:00
J. Nick Koston
d9ab1482bc Add support for preset modes in homekit fans (#45962) 2021-02-20 19:24:14 -08:00
Erik Montnemery
5e26bda52d Add support for disabling config entries (#46779) 2021-02-20 19:21:39 -08:00
Erik Montnemery
2d70806035 Add support for "alias" in script steps device, device_condition, and conditions (#46647)
Co-authored-by: Donnie <donniekarnsinsb@hotmail.com>
2021-02-20 19:21:09 -08:00
Garrett
3ad207a499 Add new Subaru integration (#35760)
Co-authored-by: On Freund <onfreund@gmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-20 16:52:44 -10:00
Steven Looman
efa339ca54 Allow upnp ignore SSDP-discoveries (#46592) 2021-02-20 16:26:17 -10:00
HomeAssistant Azure
0cb1f61deb [ci skip] Translation update 2021-02-21 00:07:04 +00:00
Tom Harris
f045c0512b Fix Insteon config flow with add X10 and device override (#45854) 2021-02-20 13:00:18 -10:00
Matt Zimmerman
115fe26642 Add smarttub sensor platform and state sensor (#46775) 2021-02-20 12:25:02 -10:00
puddly
2b6619f815 Bump zigpy-znp from 0.3.0 to 0.4.0 (#46828) 2021-02-20 16:57:16 -05:00
Milan Meulemans
4af619d383 Add Rituals Perfume Genie integration (#46218)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-20 11:55:23 -10:00
Eric Severance
6e52b26c06 Speed-up wemo discovery (#46821)
* Speed-up wemo discovery

* Use gather_with_concurrency to limit concurrent executor usage

* Comment fixup: asyncio executors -> executor threads
2021-02-20 11:16:50 -10:00
Martin Hjelmare
43a5852561 Fix habitica entry unload clean up (#46798)
* Fix habitica entry unload clean up

* Fix service remove

* Add entry setup and unload test

* Fix config flow tests

* Assert service
2021-02-20 20:59:59 +01:00
Eric Severance
fe4cf611f7 Disable update polling for Wemo when devices can push updates (#46806) 2021-02-20 09:37:48 -10:00
Eric Severance
806369ddc1 Bump pywemo to 0.6.3 (#46825) 2021-02-20 20:21:01 +01:00
Martin
6bb848455f Add open/close tilt support to KNX cover (#46583) 2021-02-20 09:09:43 -10:00
Matthias Alphart
194c0d2b08 knx-read-service (#46670) 2021-02-20 09:09:23 -10:00
Matthias Alphart
2cf46330b1 Enable KNX routing optional local_ip (#46133) 2021-02-20 09:08:59 -10:00
marecabo
c6c0e2416c Validate icon and device_class of ESPHome sensor entities (#46709) 2021-02-20 13:05:35 -06:00
Anders Melchiorsen
9f4874bb81 Explicitly create_task for asyncio.wait (#46325) 2021-02-20 19:57:46 +01:00
Chris Talkington
cf69415272 Implement suggested area in roku (#46819)
* implement suggested area in roku

* Update const.py

* Update test_media_player.py

* Update test_media_player.py

* Update test_media_player.py

* Update test_media_player.py
2021-02-20 12:57:24 -06:00
kpine
2ae790283c Detect iBlinds v2.0 switch value as a cover not light (#46807)
* Remove unused "fibaro_fgs222" discovery hint

* Simplify multilevel switch current value discovery schema

* Force iBlinds v2.0 devices to be discovered as cover entities

* Rename discovery test file
2021-02-20 19:52:23 +01:00
Matthias Alphart
2940df09e9 Update xknx to 0.17.0 (#46809) 2021-02-20 08:45:04 -10:00
Michael
da1808226e change log level to info (#46823) 2021-02-20 08:42:37 -10:00
uvjustin
39da0dc409 Add rtsp transport options to generic camera (#46623)
* Add rtsp transport options to generic camera
2021-02-21 02:11:50 +08:00
J. Nick Koston
adf480025d Add support for bond up and down lights (#46233) 2021-02-20 08:03:40 -10:00
Chris Talkington
65e8835f28 Update rokuecp to 0.8.0 (#46799)
* update rokuecp to 0.8.0

* Update requirements_test_all.txt

* Update requirements_all.txt
2021-02-20 10:59:22 -06:00
Fabian Affolter
b5c7493b60 Upgrade TwitterAPI to 2.6.6 (#46812) 2021-02-20 17:26:21 +01:00
Allen Porter
4aa4f7e285 Rollback stream StreamOutput refactoring in PR#46610 (#46684)
* Rollback PR#46610

* Update stream tests post-merge
2021-02-20 06:49:39 -08:00
Raman Gupta
788134cbc4 Bump zwave-js-server-python to 0.18.0 (#46787)
* updates to support changes in zwave-js-server-python

* bump lib version

* use named arguments for optional args

* re-add lost commits
2021-02-20 09:50:00 +01:00
Anders Melchiorsen
26ce316c18 Do not trigger when numeric_state is true at startup (#46424) 2021-02-20 09:11:36 +01:00
J. Nick Koston
b775a0d796 Run homekit service calls in async since the server is now async (#45859)
* Simplify homekit runs and service calls

Now that the homekit server is async, call_service
and run are running in the Home Assistant event loop

* remove comment

* remove another comment
2021-02-19 21:34:52 -10:00
J. Nick Koston
41332493b5 Add suggested area support to Sonos (#46794) 2021-02-19 21:28:52 -10:00
J. Nick Koston
9b69549f73 Recover and restart the recorder if the sqlite database encounters corruption while running (#46612) 2021-02-19 21:26:24 -10:00
J. Nick Koston
5b0b01d727 Implement suggested areas in bond (#45942)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-19 21:06:43 -10:00
J. Nick Koston
6707496c5d Update alexa for new fan model (#45836) 2021-02-19 22:45:14 -08:00
J. Nick Koston
5b95f61fd3 Update smarty to use new fan entity model (#45879) 2021-02-19 22:38:45 -08:00
J. Nick Koston
773a202777 Implement percentage step sizes in HomeKit (#46722) 2021-02-19 22:37:12 -08:00
J. Nick Koston
749883dc62 Implement suggested area in lutron_caseta (#45941) 2021-02-19 20:24:49 -10:00
J. Nick Koston
500cb17298 Ensure HomeAssistant can still restart when a library file is missing (#46664) 2021-02-19 22:22:48 -08:00
J. Nick Koston
22dbac259b Ensure recorder shuts down cleanly on restart before startup is finished (#46604) 2021-02-19 22:18:21 -08:00
J. Nick Koston
4078a8782e Add suggested area to hunterdouglas_powerview (#46774) 2021-02-19 22:17:00 -08:00
J. Nick Koston
11277faa93 Add suggested area to nexia (#46776) 2021-02-19 20:01:22 -10:00
J. Nick Koston
2807cb1de7 Implement suggested area for netatmo (#46802) 2021-02-19 21:57:37 -08:00
J. Nick Koston
3e334a4950 Fix typing of fan speed count and steps (#46790) 2021-02-19 19:57:21 -10:00
J. Nick Koston
0e9148e239 Add suggested area support to nuheat (#46801) 2021-02-19 21:57:02 -08:00
Erik Montnemery
54cf954353 Add device_entities template function/filter (#46406) 2021-02-19 21:50:59 -08:00
J. Nick Koston
2f3c2f5f4d Add support for using a single endpoint for rest data (#46711) 2021-02-19 21:44:15 -08:00
J. Nick Koston
71586b7661 Cleanup inconsistencies in zha fan and make it a bit more dry (#46714)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-19 19:42:14 -10:00
J. Nick Koston
bb7e4d7daa Implement suggested_area in the device registry (#45940)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-19 19:34:33 -10:00
Eric Severance
e6125a1e4e Bump pywemo to 0.6.2 (#46797) 2021-02-20 03:49:39 +01:00
HomeAssistant Azure
fd60d4273b [ci skip] Translation update 2021-02-20 00:08:25 +00:00
Raman Gupta
47dcd2bf32 Format zwave_js dump as json (#46792) 2021-02-19 18:44:15 -05:00
Raman Gupta
4d23ffacd1 Add zwave_js thermostat fan mode and fan state support (#46793)
* add thermostat fan mode and fan state support

* return when fan mode is not supported

* use get just in case

* validate state key is in states so we dont have to use get

* pylint
2021-02-20 00:20:10 +01:00
Denise Yu
32bec5ea63 Update GitHub Issue Form template (#46791)
This PR fixes the bug report template!

Details: https://gh-community.github.io/issue-template-feedback/changes/#what-do-i-need-to-do
2021-02-19 21:23:34 +01:00
Andreas Oetken
250327fac4 Allow multiple recipients for XMPP (#45328)
* recipient is a string list instead of a single string now
* this does NOT break existing automations/etc using this component
2021-02-19 15:56:20 +01:00
Joakim Sørensen
3e82509263 Use string instead of slug for add-on slug validation (#46784) 2021-02-19 15:23:59 +01:00
Franck Nijhof
6ad7020f99 Add Home Assistant color (#46751) 2021-02-19 13:30:27 +01:00
Tobias Sauerwein
d2a187a57b Bump RMVtransport to 0.3.1 (#46780) 2021-02-19 13:28:00 +01:00
Anders Melchiorsen
bfea7d0baa Raise ConditionError for and/or/not errors (#46767) 2021-02-19 13:15:30 +01:00
Anders Melchiorsen
e7e3e09063 Raise ConditionError for zone errors (#46253)
* Raise ConditionError for zone errors

* Do not test missing state

* Handle multiple entities/zones
2021-02-19 13:14:47 +01:00
dependabot[bot]
40068c2f1b Bump actions/stale from v3.0.16 to v3.0.17 (#46777) 2021-02-19 08:57:28 +01:00
J. Nick Koston
0ed0c7c026 Fix backwards compatibility with vesync fans (#45950) 2021-02-19 08:54:40 +01:00
J. Nick Koston
f2b303d509 Implement percentage step sizes for fans (#46512)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-18 21:05:09 -10:00
shbatm
5df46b60e8 Fix flip-flopped substitutions in Custom Version Type Warning message. (#46768) 2021-02-19 03:00:14 +01:00
Matt Zimmerman
da51e23514 Address late smarttub review (#46703)
* _config -> config

* remove unused string

* remove entity tests

* replace unit tests with integration tests using the core

* refactor polling to use asyncio.gather

* remove redundant component init

* remove gather in favor of simple loop

* use async_fire_time_changed instead of async_update_entity

* use hass.config_entries.async_setup instead of calling smarttub.async_setup_entry directly

* replace stray smarttub.async_setup_entry call

* async_unload_entry -> hass.config_entries.async_unload

* remove broken test
2021-02-19 01:18:02 +01:00
HomeAssistant Azure
d9ce7db554 [ci skip] Translation update 2021-02-19 00:03:06 +00:00
Franck Nijhof
52a9a66d0f Upgrade cryptography to 3.3.2 (#46759) 2021-02-18 10:30:54 -10:00
Eric Severance
76e5f86b76 Add @esev as codeowner for wemo (#46756) 2021-02-18 19:08:48 +01:00
Ellis Michael
8b97f62a8e Allow LIFX bulbs to fade color even when off (#46596)
LIFX bulbs have the capability to fade their color attributes even while the bulb is off. When the bulb is later turned on, the fade will continue as if the bulb was on all along.
2021-02-18 18:40:16 +01:00
Franck Nijhof
3353c63f8f Upgrade sentry-sdk to 0.20.3 (#46754) 2021-02-18 18:25:15 +01:00
Franck Nijhof
01ebb156a0 Add selectors to Home Assistant service definitions (#46733)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2021-02-18 18:19:49 +01:00
Franck Nijhof
782863ca87 Ensure pre-commit's hassfest triggers on service file changes (#46753) 2021-02-18 18:17:09 +01:00
Franck Nijhof
b6f374b507 Add selectors to Twente Milieu service definitions (#46748) 2021-02-18 18:05:03 +01:00
Franck Nijhof
113059c1c7 Add selectors to HomeKit service definitions (#46745) 2021-02-18 17:32:48 +01:00
AdmiralStipe
e000b9c813 Added Slovenian language (sl-si) to Microsoft TTS (#46720) 2021-02-18 17:16:45 +01:00
Franck Nijhof
a80921ab65 Minor service definition tweaks (#46741) 2021-02-18 17:14:36 +01:00
Franck Nijhof
b9d5b3c34e Add selectors to Conversation, Image Processing and Number service definitions (#46746) 2021-02-18 17:13:59 +01:00
Franck Nijhof
8b69608242 Add selectors to Browser, Recorder, Shopping List service definitions (#46749) 2021-02-18 17:06:25 +01:00
Franck Nijhof
208af0367a Add selectors to Toon service definitions (#46750) 2021-02-18 17:02:45 +01:00
Franck Nijhof
81c7b3b9c9 Add selectors to Media Player service definitions (#46739) 2021-02-18 17:02:18 +01:00
Franck Nijhof
a164a6cf80 Add selectors to Hue service definitions (#46747) 2021-02-18 17:01:29 +01:00
Philip Allgaier
cdc4f634d1 Fix typo in Tesla Powerwall strings (#46752) 2021-02-18 17:01:22 +01:00
uvjustin
3c7db7bd5b Skip repeated segment in stream recorder (#46701)
* Skip repeated segment in stream recorder

* Allow for multiple overlap
2021-02-18 17:00:26 +01:00
Franck Nijhof
a5ac338c74 Add selectors to Timer service definitions (#46744) 2021-02-18 16:54:20 +01:00
Franck Nijhof
4b6b03e33e Add selectors to Lock service definitions (#46743) 2021-02-18 16:51:13 +01:00
Franck Nijhof
e57bfe05d5 Add selectors to Color Extractor service definitions (#46742) 2021-02-18 16:43:34 +01:00
Franck Nijhof
cd6a83f009 Add selectors to MQTT service definitions (#46738) 2021-02-18 16:37:15 +01:00
Franck Nijhof
3f96ebeae5 Add selectors to Logger, System Log & Logbook service definitions (#46740) 2021-02-18 16:33:29 +01:00
Franck Nijhof
62e0949ea9 Add selectors to Z-Wave JS service definitions (#46737) 2021-02-18 16:24:04 +01:00
Franck Nijhof
0f4433ce14 Add advanced selectors to Climate service definitions (#46736) 2021-02-18 16:23:10 +01:00
Franck Nijhof
b4136c3585 Add selectors to WLED service definitions (#46731) 2021-02-18 16:16:13 +01:00
Franck Nijhof
c0cdc0fe79 Add advanced selectors to Light service definitions (#46732) 2021-02-18 16:15:16 +01:00
Franck Nijhof
1d62bf8875 Add selectors to Script service definitions (#46730) 2021-02-18 16:14:16 +01:00
Franck Nijhof
74720d4afd Add selectors to Vacuum service definitions (#46728) 2021-02-18 16:13:52 +01:00
Tobias Sauerwein
bfa171f802 Add selectors to Netatmo services (#46574)
* Add selectors

* Fix schedul selector

* Update homeassistant/components/netatmo/services.yaml

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

* Update homeassistant/components/netatmo/services.yaml

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

* Update services.yaml

* Added required field

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2021-02-18 15:01:54 +01:00
Jesse Campbell
12477c5e46 Fix missing color switch specific device class for Z-Wave JS driver >6.3 (#46718) 2021-02-18 07:58:43 -05:00
Franck Nijhof
616e8f6a65 Add selectors to Scene service definitions (#46729) 2021-02-18 13:56:15 +01:00
Allen Porter
88d143a644 Add discontinuity support to HLS streams and fix nest expiring stream urls (#46683)
* Support HLS stream discontinuity.

* Clarify discontinuity comments

* Signal a stream discontinuity on restart due to stream error

* Apply suggestions from code review

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>

* Simplify stream discontinuity logic
2021-02-18 20:26:02 +08:00
Franck Nijhof
62cfe24ed4 Add advanced service parameter flag (#46727) 2021-02-18 12:59:46 +01:00
Franck Nijhof
82934b31f8 Add selectors to Counter service definitions (#46633) 2021-02-18 12:59:29 +01:00
Álvaro Fernández Rojas
4083b90138 ubus: switch to pypi library (#46690)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-02-18 12:33:21 +01:00
Franck Nijhof
0181cbb312 Upgrade and constrain httplib2>=0.19.0 (#46725) 2021-02-18 12:31:07 +01:00
Franck Nijhof
399777cfa8 Add selectors to Alarm Control Panel service definitions (#46626) 2021-02-18 12:26:05 +01:00
Franck Nijhof
ae643bfaf3 Add selectors to Climate service definitions (#46632) 2021-02-18 12:25:55 +01:00
Franck Nijhof
bc1cb8f0a0 Add selectors to Automation service definitions (#46629) 2021-02-18 12:25:25 +01:00
Franck Nijhof
e45fc4562b Add selectors to Cover service definitions (#46634)
Co-authored-by: Tobias Sauerwein <cgtobi@users.noreply.github.com>
2021-02-18 12:25:16 +01:00
Franck Nijhof
2dfbd4fbcf Add selectors to Fan service definitions (#46639) 2021-02-18 12:24:58 +01:00
Franck Nijhof
4e93a0c774 Add selectors to Downloader service definitions (#46638) 2021-02-18 12:24:50 +01:00
Franck Nijhof
c8c3ce4172 Add selectors to Switch service definitions (#46635) 2021-02-18 12:24:42 +01:00
Franck Nijhof
dec2eb36fd Add selectors to Camera service definitions (#46630) 2021-02-18 12:24:04 +01:00
Franck Nijhof
9f3fdb1b68 Add selectors to Alert service definitions (#46627) 2021-02-18 12:23:50 +01:00
Franck Nijhof
da662c4890 Add selectors to Input * service definitions (#46652) 2021-02-18 12:23:30 +01:00
J. Nick Koston
39785c5cef Switch ssdp to be async by using async_upnp_client for scanning (#46554)
SSDP scans no longer runs in the executor

This is an interim step that converts the async_upnp_client
response to netdisco's object to ensure fully backwards
compatibility
2021-02-18 11:00:11 +01:00
uvjustin
e9334347eb Bump pylutron 0.2.7 (#46717) 2021-02-18 07:54:10 +01:00
HomeAssistant Azure
28ffa97635 [ci skip] Translation update 2021-02-18 00:07:45 +00:00
Eric Severance
2ac075bb37 Perform wemo state update quickly after a timeout (#46702)
* Perform state update quickly after a timeout

* with async_timeout.timeout(...) -> async with async_timeout.timeout(...)
2021-02-18 00:38:08 +01:00
Eric Severance
8bee3cda37 Centralize wemo exception handling (#46705) 2021-02-17 23:36:39 +01:00
J. Nick Koston
b2df9aaaf1 Update zha to use new fan entity model (#45758)
* Update zha to use new fan entity model

* fixes

* tweaks for zha

* pylint

* augment test cover
2021-02-17 13:03:11 -05:00
Gaetan Semet
4ab0151fb1 Discover HRT4-ZW / SRT321 SetPoint in zwave_js (#46625)
Missing a specific class to allow discovery of the setpoint command.

Fix #46570

Signed-off-by: Gaetan Semet <gaetan@xeberon.net>
2021-02-17 15:06:16 +01:00
Tobias Sauerwein
1e9483a0e9 Bump RMVtransport to v0.3.0 (#46691) 2021-02-17 13:23:15 +01:00
Eric Severance
eb3e5cb67f Remove calls to wemo.reconnect_with_device (#46646) 2021-02-17 13:17:31 +01:00
Eric Severance
f7c0fc5553 Increase async_timeout for wemo update polling (#46649) 2021-02-17 13:17:16 +01:00
tkdrob
facbd73130 Clean up xbee (#46549) 2021-02-17 13:15:13 +01:00
ollo69
fb73768164 Fix Tuya Option Flow tests (#46651) 2021-02-17 10:43:12 +01:00
Allen Porter
efb172cedd Fix flaky stream tests due to race in idle timeout callback (#46687) 2021-02-17 01:05:50 -08:00
badguy99
971e27dd80 Home connect use consts (#46659)
* Use more consts

* black

* re-black with black, version 20.8b1
2021-02-17 09:44:37 +01:00
starkillerOG
ddf1f88b65 Fix multiple motion blinds gateways (#46622)
local variable multicast was undefined for a second or more gateway that was setup.
2021-02-17 00:25:00 -08:00
Eric Severance
94131df5e0 Remove exception handling for AttributeError in wemo (#46674) 2021-02-17 00:07:22 -08:00
Ilja Leiko
8c72cb6163 Add sensors to fetch Habitica tasks (#38910)
* Adding sensors to fetch habitica tasks

* PR changes and rebase

* Fixing pylint

* Fixing failed test dependancy

* Generating requirements

* Apply suggestions from code review

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

* PR changes

* Update homeassistant/components/habitica/config_flow.py

Thank you, @MartinHjelmare

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

* PR Changes

* Fix failing test

* Update tests/components/habitica/test_config_flow.py

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

* Fixing linting and imports

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-17 09:04:11 +01:00
Allen Porter
56f32196bd Add back block_until_done calls removed in PR 46610 (#46680) 2021-02-16 22:05:20 -08:00
Paulus Schoutsen
b956a571f4 Fix Cloud Google/Alexa check (#46681) 2021-02-17 06:49:53 +01:00
David McClosky
58f6db0127 Fix media_pause in vlc_telnet (#46675)
The underlying python-telnet-vlc pause() function toggles play/pause, so
we need to check our state before calling it.
2021-02-17 06:39:46 +01:00
Matt Zimmerman
58499946ed Add SmartTub integration (#37775)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-16 19:37:56 -10:00
Allen Porter
4236f6e5d4 Fix stream keepalive on startup (#46640)
This was accidentally dropped in a previous PR that refactored the interaction
between stream and camera. This is difficult to test from the existing
preload stream tests, so leaving untested for now.
2021-02-16 20:46:44 -08:00
HomeAssistant Azure
318cbf2913 [ci skip] Translation update 2021-02-17 00:08:46 +00:00
Ville Skyttä
b38af0821b Fix version of pip in tox (#46656) 2021-02-16 12:26:41 -10:00
Eric Severance
e4496ed1e3 Fix KeyError in comfoconnect percentage (#46654) 2021-02-16 11:07:18 -10:00
Allen Porter
aaecd91407 Fix exception in stream idle callback (#46642)
* Fix exception in stream idle callback

Fix bug where idle timeout callback fails if the stream previously exited.

* Add a test for stream idle timeout after stream is stopped.

* Add clarifying comment to idle timer clear method

* Clear hls timer only on stop
2021-02-16 12:10:26 -08:00
marecabo
c45ce86e53 Do not provide icon if device class is set in ESPHome config (#46650) 2021-02-16 20:36:32 +01:00
Mark Coombes
960b5b7d86 Fix climate hold bug in ecobee (#46613) 2021-02-16 07:06:20 -10:00
Allen Porter
08201d146b Separate HLS logic out of core StreamOutput to prepare for discontinuity (#46610)
Separate the HLS stream view logic out of StreamOutput since the hls
stream view is about to get more complex to track discontinuities. This
makes the idle timeout, shutdown, and coupling between hls and record
more explicit.
2021-02-16 06:59:43 -08:00
tkdrob
68e78a2ddc Remove unnecessary constants from universal (#46537) 2021-02-16 09:49:31 -05:00
Martin Hjelmare
f0e9ef421c Fix vlc_telnet state update (#46628)
* Clean up

* Add debug logs

* Fix info lookup

* Handle more errors

* Guard get length and time
2021-02-16 15:48:06 +01:00
starkillerOG
9d8ba6af96 Use update coordinator for Xioami Miio subdevices (#46251)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-16 15:28:25 +01:00
tkdrob
add0d9d3eb Use core constants for yeelight (#46552) 2021-02-16 09:00:09 -05:00
David McClosky
713544e5eb Bump python-vlc-telnet to 2.0.1 (#46608)
Includes corresponding Home Assistant changes to avoid introducing
regressions.
2021-02-16 12:32:53 +01:00
Franck Nijhof
a6912277eb Remove defunct CoinMarketCap integration (#46615) 2021-02-16 11:00:08 +01:00
Joakim Plate
0bfcd5e1ee Use explicit open/close for covers (#46602) 2021-02-16 10:26:38 +01:00
Bram Kragten
6986fa4eb6 Add target to services.yaml (#46410)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-02-16 09:35:27 +01:00
J. Nick Koston
20d93b4b29 Remove support for migrating pre-config entry homekit (#46616)
HomeKit pairings and accessory ids from versions 0.109 and earlier are no longer
migrated on upgrade. Users upgrading directly to 2021.3 from 0.109
and older should upgrade to 2021.2 first if they wish to preserve
HomeKit configuration and avoid re-pairing the bridge.

This change does not affect upgrades from 0.110 and later.
2021-02-16 08:37:43 +01:00
marecabo
1e172dedf6 Add device_class attribute to ESPHome sensor entities (#46595) 2021-02-15 20:19:31 -10:00
ollo69
3c26235e78 Bump tuyaha to 0.0.10 and fix set temperature issues (#45732) 2021-02-15 16:20:45 -10:00
HomeAssistant Azure
1bb535aa67 [ci skip] Translation update 2021-02-16 00:03:57 +00:00
tkdrob
2a7d2868be Use core constants for xiaomi_aqara (#46551) 2021-02-16 00:14:27 +01:00
Franck Nijhof
ea47e5d8af Upgrade sentry-sdk to 0.20.2 (#46590) 2021-02-15 22:02:58 +01:00
J. Nick Koston
6f4df7e52e Use shared clientsession for sense (#46419) 2021-02-15 10:35:58 -10:00
Kevin Fronczak
e3ae3cfb83 Upgrade blinkpy to 0.17.0 (#46581) 2021-02-15 20:24:42 +01:00
starkillerOG
2f9fda73f4 Add config flow to Xiaomi Miio switch (#46179) 2021-02-15 20:11:27 +01:00
Joakim Sørensen
68809e9f43 Fix issue with timeout and error response (#46584) 2021-02-15 20:08:08 +01:00
Allen Porter
89aaeb3c35 Refactor stream worker responsibilities for segmenting into a separate class (#46563)
* Remove stream_worker dependencies on Stream

Removee stream_worker dependencies on Stream and split out the logic
for writing segments to a stream buffer.

* Stop calling internal stream methods

* Update homeassistant/components/stream/worker.py

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>

* Reuse self._outputs when creating new streams

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>
2021-02-15 09:52:37 -08:00
Niels Mündler
f2ca4acff0 Limit fronius error messages on failed connection (#45824)
* Do not print several error messages on failed connection

* Change wrapping of exception, implement available

* Simplify exception flow

* Remove unnecessary init

* Add available property to actual entities

* Rebase and formatting
2021-02-15 18:28:28 +01:00
Joakim Sørensen
886067a327 Add websocket handlers to hassio (#46571) 2021-02-15 18:18:45 +01:00
Shay Levy
a5d943b5f1 MQTT cover Bugfixes (#46479)
* MQTT cover Bugfixes

* Remove period
2021-02-15 17:33:42 +01:00
uvjustin
9917bb76fb Use httpx in generic camera (#46576)
* Use httpx in generic camera

* Remove commented out code
2021-02-15 16:37:53 +01:00
J. Nick Koston
c5b9ad83c2 Log ffmpeg errors for homekit cameras (#46545) 2021-02-15 12:39:51 +01:00
Lukáš Polívka
bed29fd4b1 Convert better from byte value to percentage in futurenow (#45042)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-02-15 12:33:13 +01:00
Erik Montnemery
c8e04ee960 Bump hatasmota to 0.2.9 (#46561) 2021-02-15 12:16:28 +01:00
Erik Montnemery
5a907ebafc Remove @home-assistant/core from MQTT codeowners (#46562) 2021-02-15 11:51:56 +01:00
Allen Porter
3f4828f5e1 Add additional stream HLS payload tests (#46517)
* Add tests for HLS playlist view details

* Add tests for hls playlist payloads

* Update tests/components/stream/test_hls.py

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>

* Update tests/components/stream/test_hls.py

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>

* Update tests/components/stream/test_hls.py

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>

* Update tests/components/stream/test_hls.py

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>

* Update tests/components/stream/test_hls.py

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>

* Update tests/components/stream/test_hls.py

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>

* Update tests/components/stream/test_hls.py

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>

Co-authored-by: uvjustin <46082645+uvjustin@users.noreply.github.com>
2021-02-14 20:32:37 -08:00
Raman Gupta
cfdaadf5d9 Allow users to set device class for universal media player (#46550) 2021-02-14 17:05:23 -10:00
tkdrob
06c8fc6ef1 Use core constants for wemo and whois (#46548) 2021-02-14 20:14:48 -05:00
Raman Gupta
a3b733f1ec Add additional supported feature support to universal media player (#44711)
* add additional supported feature support to universal media player

* add missing services
2021-02-14 19:35:14 -05:00
HomeAssistant Azure
0af634a9f8 [ci skip] Translation update 2021-02-15 00:14:36 +00:00
J. Nick Koston
12abe5707d Fix typing on tuya fan percentage (#46541) 2021-02-14 17:05:31 -05:00
tkdrob
7e88487800 Use core constants for wemo (#46544) 2021-02-14 17:01:53 -05:00
tkdrob
a5f372018c Use core constants for volvooncall (#46543) 2021-02-14 17:01:18 -05:00
tkdrob
f1c792b4c8 Use core constants for uvc (#46538) 2021-02-14 22:21:55 +01:00
J. Nick Koston
aa061e5818 Fix variable name from script refactoring (#46503) 2021-02-14 10:52:18 -10:00
tkdrob
1444afbe5a Use core constants for vasttrafik (#46539) 2021-02-14 21:47:08 +01:00
J. Nick Koston
c9df42b69a Add support for pre-filtering events to the event bus (#46371) 2021-02-14 09:42:55 -10:00
Anders Melchiorsen
f8f86fbe48 Do not trigger when template is true at startup (#46423) 2021-02-14 19:54:11 +01:00
jan iversen
855bd653b4 Update modbus test harness (#44892)
* Update test harness to allow discovery_info testing.

This is a needed update, before the whole config is converted
to the new structure, because it allows test of both the old
and new configuration style.

The following changes have been made:
- Combine test functions into a single base_test.
- Prepare for new mock by combining the 2 common test functions into one.
- Change mock to be only modbusHub
- Do not replace whole modbus class, but only the class that
  connects to pymodbus (modbusHub). This allows test of modbus
  configurations and not only component configurations, and is needed
  when testing discovery activated platform.
- Add test of climate.
  Warning this is merely test of discovery,
  the real cover tests still needs to be added.
- Add test of cover.
  Warning this is merely test of discovery,
  the real cover tests still needs to be added.

* Update comment for old config

* Do not use hass.data, but instead patch pymodbus library.

* Add test of configuration (old/new way as available).

* Move assert to test function.

Make assert more understandable by removing it from the helper.

add base_config_test (check just calls base_test) to make it clear if
test is wanted or just controlling the config.

* use setup_component to load Modbus since it is an integration.

* Optimized flow in test helper.
2021-02-14 17:40:30 +01:00
javicalle
9777608861 Add myself to RFLink codeowners (#46511) 2021-02-14 16:24:00 +01:00
Tom Parker-Shemilt
27d16af36b Don't allow recursive secrets loading (#41812)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-14 14:23:31 +01:00
tkdrob
a5a45f29e2 Cleanup unused loggers (#46510) 2021-02-14 13:46:58 +01:00
Allen Porter
10e88cd23d Improve nest defense against broken event loop on shutdown (#46494) 2021-02-14 13:36:05 +01:00
kpine
dfa973f9ef Add barrier covers to zwave_js integration (#46379) 2021-02-14 13:24:29 +01:00
Andrey Kupreychik
accba85e35 Add keenetic_ndms2 config flow (#38353) 2021-02-14 13:09:19 +01:00
tkdrob
2c3a2bd35e Clean up template (#46509) 2021-02-14 12:16:30 +01:00
Khole
811e1cc3e6 Add hive hub 360 sensors (#46320) 2021-02-14 11:39:31 +01:00
tkdrob
3ea02e646d Use core constants for trend (#46521) 2021-02-14 11:30:40 +01:00
tkdrob
294d3c6529 Use core constants for thethingsnetwork (#46520) 2021-02-14 11:28:55 +01:00
tkdrob
854504cccc Use core constants for switcher_kis (#46507) 2021-02-14 10:21:53 +01:00
tkdrob
c76758f775 Use core constants for temper (#46508) 2021-02-14 10:21:02 +01:00
MatthewFlamm
7a401d3d5d Fix missing condition in nws (#46513) 2021-02-13 17:35:57 -10:00
J. Nick Koston
1845f69729 Update tuya for new fan entity model (#45870) 2021-02-13 16:23:19 -10:00
HomeAssistant Azure
17a4678906 [ci skip] Translation update 2021-02-14 00:06:28 +00:00
tkdrob
dfe173d619 Use core constants for rmvtransport (#46502) 2021-02-13 18:22:28 -05:00
tkdrob
5db4d78dc7 Use core constants for rpi_rf (#46500) 2021-02-13 18:21:42 -05:00
tkdrob
84488b9c28 Use core constants for sma (#46501) 2021-02-13 18:21:15 -05:00
Franck Nijhof
7148071be8 Improve Elgato code quality (#46505) 2021-02-13 23:50:25 +01:00
Álvaro Fernández Rojas
eecf07d7df Add AEMET OpenData integration (#45074)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-13 21:53:28 +01:00
J. Nick Koston
2f40f44670 Update HAP-python to 3.3.0 for homekit (#46497)
Changes: https://github.com/ikalchev/HAP-python/compare/v3.2.0...v3.3.0
2021-02-13 20:30:55 +01:00
ollo69
f38b06ed6d Add Asuswrt Config Flow and Scanner Entities (#46468)
* Add Asuswrt config flow (#43948)

* Add AsusWrt Scanner Entity (#44759)

* Add Scanner Entity

- device tracker entity changed from "DeviceScanner" to "ScannerEntity"
- sensors recoded to use "router" class
- config entry review to allow multiple entity (for future use)

* Force checks

* Removed new option and change sensors

* Update test_sensor.py

* Requested changes

* Removed router unique-id

* Update last_activity attr only when available

* Add Options for AsusWRT Scanner Entity (#44808)

* Add Asuswrt config flow (#43948)

* Add AsusWrt Scanner Entity (#44759)

* Add Scanner Entity

- device tracker entity changed from "DeviceScanner" to "ScannerEntity"
- sensors recoded to use "router" class
- config entry review to allow multiple entity (for future use)

* Force checks

* Removed new option and change sensors

* Update test_sensor.py

* Requested changes

* Removed router unique-id

* Update last_activity attr only when available

* Add Options for Scanner Entity

* Fix isort

* Removed "Track New" option

* Add Options for Scanner Entity

* Fix isort

* Removed "Track New" option

* Add test for all the options in the config flow
2021-02-13 19:17:06 +01:00
Shay Levy
6f261a09b0 Remove deprecated xfinity integration (#46484) 2021-02-13 14:07:55 +01:00
Shay Levy
52c5bc0a99 Remove deprecated Synology integration (#46482) 2021-02-13 13:23:40 +01:00
Franck Nijhof
bc1daf1802 None optional hass typing in FlowHandler (#46462)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-13 13:21:37 +01:00
Rob Bierbooms
1244fb4152 Bump dsmr_parser to 0.28, configure keep_alive_interval (#46464) 2021-02-13 13:19:38 +01:00
tkdrob
13b881acfc Use core constants for simplepush (#46465) 2021-02-13 13:07:11 +01:00
tkdrob
621c8e700b Use core constants for starline (#46471) 2021-02-13 12:33:13 +01:00
Maciej Bieniek
b8584cab5d Remove unnecessary gethostbyname() from Shelly integration (#46483) 2021-02-13 12:27:54 +01:00
tkdrob
820a260252 Use core constants for homeassistant triggers (#46472) 2021-02-13 12:07:42 +01:00
tkdrob
2ecac6550f Use core constants for dynalite (#46044) 2021-02-13 12:06:20 +01:00
On Freund
1a8cdba9af Gracefully handle missing A/V info in Onkyo integration (#46228)
* Gracefully handle missing A/V info

* Do not attempt to query A/V info if unsupported

* Rename _parse_onkyo_tuple
2021-02-13 12:03:49 +01:00
HomeAssistant Azure
8bacfcec50 [ci skip] Translation update 2021-02-13 00:03:13 +00:00
tkdrob
ae45d7dade Use core constants for rflink (#46440) 2021-02-12 23:32:56 +01:00
tkdrob
da4cb6d294 Use core constants for somfy (#46466) 2021-02-12 23:25:15 +01:00
J. Nick Koston
bc8a52038b Fix homekit migration not being awaited (#46460) 2021-02-12 08:45:19 -10:00
Franck Nijhof
dd8d4471ec Postponed evaluation of annotations for integrations (#46455) 2021-02-12 18:54:00 +01:00
Maciej Bieniek
061d9c5293 Bump brother library to version 0.2.1 (#46421) 2021-02-12 18:11:35 +01:00
Franck Nijhof
362a1cd9bd Upgrade sentry-sdk to 0.20.1 (#46456) 2021-02-12 17:59:08 +01:00
Erik Montnemery
f1714dd541 Make some Area and EntityRegistry member functions callbacks (#46433) 2021-02-12 17:00:35 +01:00
jan iversen
8418489345 Allow Modbus "old" config or discovery_info as configuration (#46445) 2021-02-12 16:33:18 +01:00
tkdrob
f929aa222f Use core constants for roomba (#46441) 2021-02-12 16:09:36 +01:00
Christophe Painchaud
c3b460920e Enable TCP KEEPALIVE to RFLink for dead connection detection (#46438)
RFLink compoment when used over TCP protocol suffers a major issue : it doesn't
know when connection is timeout or lost because there is no keepalive mechanism
so it can stay disconnected forever.
I wrote a small patch for the underlying 'python-rflink' library which will enable
TCP KEEPPAlive. On HASSIO side it will just add an optional argument in yml file
which will propagate to python-rflink caller.
2021-02-12 15:58:59 +01:00
David Dix
a8beae3c51 Add apple tv remote delay command (#46301)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-12 14:58:01 +01:00
Robert Kingston
479ff92acb Fix cmus remote disconnections (#40284)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-12 13:31:36 +01:00
Marcel van der Veldt
b7dd9bf58f Enhance platform discovery for zwave_js (#46355) 2021-02-12 13:29:11 +01:00
tkdrob
74f5f8976f Use core constants for rpi_gpio (#46442) 2021-02-12 12:15:30 +01:00
Erik Montnemery
190a9f66cb Improve MQTT timeout print (#46398) 2021-02-12 11:43:44 +01:00
tkdrob
0d2f5cf7ed Use core constants for plugwise (#46414) 2021-02-12 11:42:34 +01:00
Franck Nijhof
9b7c39d20b Postponed evaluation of annotations in core (#46434)
* Postponed evaluation of annotations in core

* Remove unneeded future
2021-02-12 10:58:20 +01:00
tkdrob
910c034613 Use core constants for recollect_waste (#46416) 2021-02-12 09:28:11 +01:00
Joakim Plate
a67b598971 Correct errors found on post merge review in philips_js (#46428)
* Correct missed review changes

* Adjust return value for device trigger

* Drop cannot connect

* Always assume there is a unique id

* No need to yield

* Update homeassistant/components/philips_js/media_player.py

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

* Move typing to init

* Adjust typing instead of returning lambda

* Explicity return None

* Coerce into int

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-12 02:35:29 +01:00
HomeAssistant Azure
ee04473e85 [ci skip] Translation update 2021-02-12 00:02:46 +00:00
chriss158
34a491f826 Install libpcap-dev for devcontainer (#46106) 2021-02-11 13:17:49 -10:00
Joakim Plate
8dc06e612f Add config flow to philips_js (#45784)
* Add config flow to philips_js

* Adjust name of entry to contain serial

* Use device id in event rather than entity id

* Adjust turn on text

* Deprecate all fields

* Be somewhat more explicit in typing

* Switch to direct coordinator access

* Refactor the pluggable action

* Adjust tests a bit

* Minor adjustment

* More adjustments

* Add missing await in update coordinator

* Be more lenient to lack of system info

* Use constant for trigger type and simplify

* Apply suggestions from code review

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-11 21:37:53 +01:00
Czapla
14a64ea970 Add generic_thermostat unique ID parameter (#46399)
* Add generic_thermostat unique ID parameter

* Add tests for unique id

* Fix flake8
2021-02-11 19:46:58 +00:00
Erik Montnemery
26e7916367 Migrate mobile_app to RestoreEntity (#46391) 2021-02-11 20:18:03 +01:00
tkdrob
70e23402a9 Use core constants for ohmconnect (#46413) 2021-02-11 13:56:50 -05:00
Martin
eb0d1bb673 Improve knx fan implementation (#46404) 2021-02-11 07:55:17 -10:00
tkdrob
fd177441b3 Use core constants for nmap_tracker (#46402) 2021-02-11 17:45:26 +01:00
tkdrob
c95f401e2e Use core constants for nissan_leaf (#46401) 2021-02-11 17:44:39 +01:00
Erik Montnemery
ed31cc363b Wait for registries to load at startup (#46265)
* Wait for registries to load at startup

* Don't decorate new functions with @bind_hass

* Fix typing errors in zwave_js

* Load registries in async_test_home_assistant

* Tweak

* Typo

* Tweak

* Explicitly silence mypy errors

* Fix tests

* Fix more tests

* Fix test

* Improve docstring

* Wait for registries to load
2021-02-11 17:36:19 +01:00
Anders Melchiorsen
888c9e120d Raise ConditionError for time errors (#46250) 2021-02-11 17:29:17 +01:00
Steve Dwyer
5ce49c62b1 Allow MQTT template light floating point transition (#46385)
Allow to use floating point values for the transition time of the MQTT
template light.
2021-02-11 14:57:27 +01:00
tkdrob
b1a7bfee14 Clean up kira integration constants (#46390) 2021-02-11 07:59:09 -05:00
tkdrob
c75e63dc95 Use core constants for modbus (#46388) 2021-02-11 07:58:16 -05:00
tkdrob
b85ecc0bd2 Use core constants for mqtt (#46389) 2021-02-11 13:38:33 +01:00
Franck Nijhof
c10bf079f7 Merge pull request #46383 from home-assistant/rc 2021-02-11 12:52:44 +01:00
tkdrob
1b61b5c10b Clean up kira integration (#46292) 2021-02-11 11:04:11 +01:00
Shay Levy
4034a274f7 Fix Shelly relay device set to light appliance type (#46181) 2021-02-11 10:40:54 +01:00
Shay Levy
6015161dab Fix Shelly relay device set to light appliance type (#46181) 2021-02-11 10:40:03 +01:00
Franck Nijhof
953491d509 Bumped version to 2021.2.3 2021-02-11 10:38:21 +01:00
Paulus Schoutsen
b5061d0232 Restore Google/Alexa extra significant change checks (#46335) 2021-02-11 10:37:50 +01:00
Bram Kragten
291746334a Add already_in_progress string to roku config flow (#46333) 2021-02-11 10:37:47 +01:00
J. Nick Koston
9f839b8c61 Add reauth support for tesla (#46307) 2021-02-11 10:37:43 +01:00
Marcel van der Veldt
70af3e4776 Add guards for missing value in binary_sensor platform of zwave_js integration (#46293) 2021-02-11 10:37:40 +01:00
Greg Dowling
1c2f72a453 Bump roonapi to 0.0.32 (#46286) 2021-02-11 10:37:36 +01:00
J. Nick Koston
bf2a34600a Fix Lutron Integration Protocol reconnect logic (#46264) 2021-02-11 10:37:33 +01:00
J. Nick Koston
b5bdd7f2cf Update powerwall for new authentication requirements (#46254)
Co-authored-by: badguy99 <61918526+badguy99@users.noreply.github.com>
2021-02-11 10:37:29 +01:00
J.P. Hutchins
30ddfd837a Revert transmission to check torrent lists by name rather than object (#46190) 2021-02-11 10:37:26 +01:00
ehendrix23
d2d2bed16b Bump pymyq to 3.0.1 (#46079)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-11 10:37:22 +01:00
Alan Tse
db557a094c Use oauthv3 for Tesla (#45766) 2021-02-11 10:37:18 +01:00
Anders Melchiorsen
1f5fb8f28a Raise ConditionError for template errors (#46245) 2021-02-11 10:30:09 +01:00
tkdrob
e013ad2413 Use core constants for microsoft (#46369) 2021-02-11 10:25:43 +01:00
J. Nick Koston
f9f4c0aeed Fix explict return in tesla config flow (#46377) 2021-02-11 10:24:31 +01:00
tkdrob
29d8b8a22f Some code cleanups for ESPHome (#46367) 2021-02-11 10:19:39 +01:00
tkdrob
379f5455e5 Use core constants for lovelace (#46368) 2021-02-11 10:13:18 +01:00
Mike Keesey
f549ec5ec9 Use activity ids for unique_id for Harmony switches (#46139) 2021-02-10 21:50:27 -10:00
Leonardo Figueiro
3ffa42e56a Update WiLight Cover Fan Light (#46366) 2021-02-10 21:25:42 -10:00
tkdrob
56adc9dadb Use core constants for lcn (#46348) 2021-02-10 21:22:32 -05:00
tkdrob
af2fa17e8e Use core constants for local_file (#46349) 2021-02-10 21:21:35 -05:00
tkdrob
7f8fa7feaf Use core constants for logi_circle (#46359) 2021-02-10 21:20:40 -05:00
HomeAssistant Azure
8007391244 [ci skip] Translation update 2021-02-11 00:02:56 +00:00
Leonardo Figueiro
6182fedf3f Update wilight tests for new fan entity model (#46358) 2021-02-10 13:09:03 -10:00
J. Nick Koston
281fbe1dfa Update wilight for new fan entity model (#45869) 2021-02-10 12:49:52 -10:00
tkdrob
d8a2e0e051 Remove unnecessary variables from logbook (#46350) 2021-02-10 12:17:37 -10:00
Maciej Bieniek
fdd8159955 Fix SNMP engine memory leak in Brother integration (#46272)
* Fix SNMP engine memory leak

* Fix pylint error
2021-02-10 22:32:48 +01:00
uvjustin
acde33dbbc Keep 1 extra segment around after playlist removal (#46310)
* Keep 1 extra segment around after playlist removal

* Remove segments length check
2021-02-10 15:51:16 -05:00
ehendrix23
9bc3c6c130 Bump pymyq to 3.0.1 (#46079)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-10 10:30:52 -10:00
J. Nick Koston
c59b1c72c5 Add reauth support for tesla (#46307) 2021-02-10 20:55:06 +01:00
J.P. Hutchins
67ab86443e Revert transmission to check torrent lists by name rather than object (#46190) 2021-02-10 20:53:31 +01:00
J. Nick Koston
884df40951 Update powerwall for new authentication requirements (#46254)
Co-authored-by: badguy99 <61918526+badguy99@users.noreply.github.com>
2021-02-10 20:50:38 +01:00
J. Nick Koston
2e2eab662b Fix Lutron Integration Protocol reconnect logic (#46264) 2021-02-10 20:48:15 +01:00
Erik Montnemery
fc4fc48763 Bump hatasmota to 0.2.8 (#46340) 2021-02-10 20:42:34 +01:00
Leonardo Figueiro
2db102e023 Add WiLight Cover (#46065)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-10 09:08:39 -10:00
Alan Tse
cdd78316c4 Use oauthv3 for Tesla (#45766) 2021-02-10 08:01:24 -10:00
Paulus Schoutsen
538df17a28 Restore Google/Alexa extra significant change checks (#46335) 2021-02-10 16:30:29 +01:00
Marcel van der Veldt
74647e1fa8 Add guards for missing value in binary_sensor platform of zwave_js integration (#46293) 2021-02-10 10:30:16 -05:00
Joakim Sørensen
917a616ce1 Replace parse_version with AwesomeVersion (#46329) 2021-02-10 15:58:26 +01:00
Joakim Sørensen
dbb98e6cac Replace LooseVersion with AwesomeVersion (#46330) 2021-02-10 15:26:38 +01:00
Joakim Sørensen
ea4ad85488 Replace StrictVersion with AwesomeVersion (#46331) 2021-02-10 15:25:44 +01:00
Bram Kragten
7928cda080 Add already_in_progress string to roku config flow (#46333) 2021-02-10 15:25:24 +01:00
tkdrob
ad72715212 Use core constants for konnected (#46322) 2021-02-10 08:57:53 -05:00
Franck Nijhof
b7e11347d5 Remove defunct Crime Reports integration (#46312) 2021-02-10 14:56:54 +01:00
Erik Montnemery
c66d9ea25c Hide volume control for cast devices with fixed volume (#46328) 2021-02-10 08:39:10 -05:00
tkdrob
ad400d91bc Use core constants for sensor integration (#46290) 2021-02-10 08:36:05 -05:00
tkdrob
6e1f3b7861 Use core constants for joaoapps_join (#46291) 2021-02-10 08:35:11 -05:00
Franck Nijhof
22389043eb Remove base_url fallback (#46316) 2021-02-10 14:31:11 +01:00
Ville Skyttä
a6358430b4 Fix deprecated asyncio.wait use with coroutines (#44981)
https://docs.python.org/3/library/asyncio-task.html#asyncio-example-wait-coroutine
2021-02-10 14:16:58 +01:00
Bram Kragten
4b493c5ab9 Add target to service call API (#45898)
* Add target to service call API

* Fix _async_call_service_step

* CONF_SERVICE_ENTITY_ID overrules target

* Move merging up before processing schema

* Restore services.yaml

* Add test
2021-02-10 12:42:28 +01:00
Shay Levy
7d2d98fc3c Revert multiple interfaces (#46300) 2021-02-10 12:38:16 +01:00
Erik Montnemery
bfd5a62bad Fix typo (#46321) 2021-02-10 11:31:51 +01:00
uvjustin
1fea24502c Bump pyav version to 8.03 (#46315) 2021-02-10 18:14:03 +08:00
Erik Montnemery
78b7fbf7b1 Fix race in EntityRegistry.async_device_modified (#46319) 2021-02-10 10:50:44 +01:00
Greg Dowling
b0b81246f0 Bump roonapi to 0.0.32 (#46286) 2021-02-10 10:27:25 +01:00
Martin
175f2f0275 Add fan platform to knx (#46161) 2021-02-09 22:09:34 -10:00
Allen Porter
26f455223b Update nest stream URLs expiration (#46311) 2021-02-09 23:53:34 -08:00
Allen Porter
00aebec90d Fix bug in test found by manual log inspection (#46309) 2021-02-09 21:59:49 -08:00
HomeAssistant Azure
5fcb948e28 [ci skip] Translation update 2021-02-10 00:05:10 +00:00
Khole
3381e2f65a Convert Hive to Async (#46117)
* Convert Hive to Async

* Update Refresh System

* Update load platform to Async

* Changes from review feedback

* Review Round 2

* Updated service

* Updated dict keys

* Convert Hive to Async

* Update Refresh System

* Update load platform to Async

* Changes from review feedback

* Review Round 2

* Updated service

* Updated dict keys

* Convert Hive to Async

* Update Refresh System

* Update load platform to Async

* Changes from review feedback

* Review Round 2

* Updated service

* Updated dict keys

* Updated Refresh System
2021-02-09 22:03:49 +01:00
tkdrob
6f4cb18fa8 Use core constants for here_travel_time (#46246) 2021-02-09 20:23:46 +01:00
tkdrob
a26cf7aeec Remove unnecessary variable definition in firmata (#46172) 2021-02-09 20:23:02 +01:00
bsmappee
1c1b2f497a bump pysmappee (#46270) 2021-02-09 20:21:51 +01:00
tkdrob
57ce182959 Remove unnecessary constant from ihc (#46268) 2021-02-09 20:21:04 +01:00
tkdrob
f46dc3c48e Use core constants for elkm1 (#46091) 2021-02-09 20:20:20 +01:00
tkdrob
c69c493cf9 Use core constants for image_processing (#46269) 2021-02-09 08:03:14 -05:00
tkdrob
da67cde369 Use core constants for homematic (#46248) 2021-02-09 12:02:53 +01:00
Anders Melchiorsen
f27066e773 Raise ConditionError for state errors (#46244) 2021-02-09 09:46:36 +01:00
J. Nick Koston
6a62ebb6a4 Add BPUP (push updates) support to bond (#45550) 2021-02-09 09:43:38 +01:00
Maciej Bieniek
2fc1c19a45 Allow to setup of a previously discovered sleeping Shelly device (#46124)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-02-09 09:28:40 +01:00
Robert Svensson
20f45f8ab9 Improve deCONZ tests by using aioclient_mock rather than patching web requests (#45927)
* Don't patch web requests, use aioclient_mock instead

* Remove stale prints

* Remove tests for old way of loading platforms

* Remove unused imports
2021-02-09 08:31:29 +01:00
Allen Porter
b33753f334 Move camera timeouts to constants (#46262)
Addresses feedback from pr #45431.  Also removes an redundant `create_stream` timeout.
2021-02-08 21:21:14 -08:00
Allen Porter
2bcf87b980 Change the API boundary between camera and stream with initial improvement for nest expiring stream urls (#45431)
* Change the API boundary between stream and camera

Shift more of the stream lifecycle management to the camera.  The motivation is to support stream urls that expire
giving the camera the ability to change the stream once it is created.

* Document stream lifecycle and simplify stream/camera interaction

* Reorder create_stream function to reduce diffs

* Increase test coverage for camera_sdm.py

* Fix ffmpeg typo.

* Add a stream identifier for each stream, managed by camera

* Remove stream record service

* Update homeassistant/components/stream/__init__.py

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

* Unroll changes to Stream interface back into camera component

* Fix preload stream to actually start the background worker

* Reduce unncessary diffs for readability

* Remove redundant camera stream start code

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-08 19:53:28 -08:00
Pascal Reeb
889baef456 Add DHCP discovery support to Nuki integration (#46032) 2021-02-08 17:11:27 -10:00
HomeAssistant Azure
936ee7d733 [ci skip] Translation update 2021-02-09 00:07:22 +00:00
J. Nick Koston
6563c37ab1 Add support for generic lights to bond (#46193) 2021-02-09 00:39:21 +01:00
J. Nick Koston
93fafedf72 Cleanup bond identifiers and device info (#46192) 2021-02-09 00:37:32 +01:00
Erik Montnemery
58b4a91a5b Test that variables are passed to wait_for_trigger script action (#46221) 2021-02-09 00:34:18 +01:00
Paulus Schoutsen
0ddc7d90a4 Merge pull request #46249 from home-assistant/rc 2021-02-09 00:28:15 +01:00
tkdrob
c602c619a2 Use core constants for hikvision (#46247) 2021-02-09 00:13:58 +01:00
Paulus Schoutsen
6ec49c696c Bumped version to 2021.2.2 2021-02-08 22:37:01 +00:00
J. Nick Koston
c02870686a Handle empty mylink response at startup (#46241) 2021-02-08 22:36:54 +00:00
Álvaro Fernández Rojas
387301f024 Fix Tado Power and Link binary sensors (#46235)
Power and Link aren't converted from strings to booleans by python-tado, so we
need to properly parse before assigning the string value to binary sensors.

Fixes: 067f2d0098 ("Add tado zone binary sensors (#44576)")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-02-08 22:36:53 +00:00
J. Nick Koston
384a5ae053 Ensure creating an index that already exists is forgiving for postgresql (#46185)
Unlikely sqlite and mysql, postgresql throws ProgrammingError instead
of InternalError or OperationalError when trying to create an index
that already exists.
2021-02-08 22:36:43 +00:00
Matthias Alphart
47464b89af Enable KNX auto_reconnect for auto-discovered connections (#46178) 2021-02-08 22:36:39 +00:00
Daniel Shokouhi
983e980554 Revert "Convert ozw climate values to correct units (#45369)" (#46163)
This reverts commit 1b6ee8301a.
2021-02-08 22:36:38 +00:00
Hmmbob
39a7d975f6 Fix Google translate TTS by bumping gTTS from 2.2.1 to 2.2.2 (#46110) 2021-02-08 22:36:37 +00:00
Marcel van der Veldt
fd19f3ebdb Update zwave_js discovery scheme for boolean sensors in the Alarm CC (#46085) 2021-02-08 22:36:36 +00:00
Marcel van der Veldt
f9f681ac36 update discovery scheme for zwave_js light platform (#46082) 2021-02-08 22:36:35 +00:00
Marcel van der Veldt
d16d6f3f3f Handle missing value in all platforms of zwave_js (#46081) 2021-02-08 22:36:05 +00:00
Robert Svensson
483b1dfa61 Use async_update_entry rather than updating config_entry.data directly in Axis (#46078)
Don't step version in migrate_entry to support rollbacking
2021-02-08 22:33:48 +00:00
J. Nick Koston
c57fa16a1f Fix incorrect current temperature for homekit water heaters (#46076) 2021-02-08 22:33:47 +00:00
Raman Gupta
a9eb9d6136 Fix zwave_js Notification CC sensors and binary sensors (#46072)
* only include property key name in sensor name if it exists

* add endpoint to binary_sensor and sensor notification CC entities if > 0

* refactor to have helper method generate name

* change default behavior of generate_name

* return value for notification sensor when we can't find the state

* store generated name
2021-02-08 22:33:46 +00:00
Robert Svensson
96d8d432d7 Improve deCONZ logbook to be more robust in different situations (#46063) 2021-02-08 22:33:46 +00:00
Marc Mueller
1e59fa2cb2 Fix deprecated method isAlive() (#46062) 2021-02-08 22:33:45 +00:00
Steven Rollason
285fd3d43c Fix downloader path validation on subdir (#46061) 2021-02-08 22:33:44 +00:00
Sergio Conde Gómez
88485d384c Fix foscam to work again with non-admin accounts and make RTSP port configurable again (#45975)
* Do not require admin account for foscam cameras.

Foscam cameras require admin account for getting the MAC address,
requiring an admin account in the integration is not desirable as
an operator one is good enough (and a good practice).

Old entries using the MAC address as unique_id are migrated to the
new unique_id format so everything is consistent.

Also fixed unhandled invalid responses from the camera in the
config flow process.

* Make RTSP port configurable again as some cameras reports wrong port

* Remove periods from new log lines

* Set new Config Flow version to 2 and adjust the entity migration

* Create a proper error message for the InvalidResponse exception

* Change crafted unique_id to use entry_id in the entity

* Abort if same host and port is already configured

* Fix entry tracking to use entry_id instead of unique_id

* Remove unique_id from mocked config entry in tests
2021-02-08 22:33:40 +00:00
Nathan Spencer
58b9394a5f Fix zwave_js cover control for Up/Down and Open/Close (#45965)
* Fix issue with control of cover when the target value is Up/Down instead of Open/Close

* Adjust open/close/stop cover control to account for no Open/Up or Close/Down targets

* Revert back to using values of 0/99 to close/open a cover since it is supported by all covers

* Replace RELEASE_BUTTON with False and remove unused PRESS_BUTTON in zwave_js cover
2021-02-08 22:33:37 +00:00
J. Nick Koston
6467eff09c Fix incorrect current temperature for homekit water heaters (#46076) 2021-02-08 23:23:02 +01:00
J. Nick Koston
dc26fd5149 Ensure creating an index that already exists is forgiving for postgresql (#46185)
Unlikely sqlite and mysql, postgresql throws ProgrammingError instead
of InternalError or OperationalError when trying to create an index
that already exists.
2021-02-08 23:22:38 +01:00
tkdrob
6b340415b2 Use core constants for greeneye_monitor (#46238) 2021-02-08 22:53:46 +01:00
tkdrob
c2302784c2 Use core constants for helpers (#46240) 2021-02-08 22:53:17 +01:00
tkdrob
00bbf8c3a2 Use core constants for group component (#46239) 2021-02-08 22:52:28 +01:00
J. Nick Koston
c0a1fc2916 Handle empty mylink response at startup (#46241) 2021-02-08 22:51:46 +01:00
Álvaro Fernández Rojas
fcae840641 Fix Tado Power and Link binary sensors (#46235)
Power and Link aren't converted from strings to booleans by python-tado, so we
need to properly parse before assigning the string value to binary sensors.

Fixes: 067f2d0098 ("Add tado zone binary sensors (#44576)")
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-02-08 22:49:46 +01:00
J. Nick Koston
71d7ae5992 Downgrade and improve lutron caseta LIP error message (#46236) 2021-02-08 22:48:02 +01:00
Marcel van der Veldt
829131fe51 Update zwave_js discovery scheme for boolean sensors in the Alarm CC (#46085) 2021-02-08 11:57:22 -05:00
Marcel van der Veldt
be779d8712 update discovery scheme for zwave_js light platform (#46082) 2021-02-08 11:56:19 -05:00
Paulus Schoutsen
e27619fe50 Allow discovery info accessible from CORS enabled domains (#46226) 2021-02-08 17:19:55 +01:00
Álvaro Fernández Rojas
1b194e3b2f Add noltari to Tado code owners (#46216) 2021-02-08 11:08:13 -05:00
Bram Kragten
86fe5d0561 Update frontend to 20210208.0 (#46225) 2021-02-08 16:42:33 +01:00
Allen Porter
dca6a93898 Centralize keepalive logic in Stream class (#45850)
* Remove dependencies on keepalive from StremaOutput and stream_worker

Pull logic from StreamOutput and stream_worker into the Stream
class, unifying keepalive and idle timeout logic. This prepares
for future changes to preserve hls state across stream url changes.
2021-02-08 07:19:41 -08:00
Paulus Schoutsen
e20a814926 Call setup during devcontainer create (#46224) 2021-02-08 16:16:40 +01:00
Shay Levy
81c88cd639 Enhance MQTT cover platform (#46059)
* Enhance MQTT cover platform

Allow combining of position and state of MQTT cover
Add template and fix optimistic in set tilt position
Add tests

* Add abbreviations

* Add tests and stopped state

* Cleanup & fix range for templates

* Apply suggestions from code review

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-02-08 16:02:12 +01:00
Greg Dowling
8f4ea3818d Add unavailable to Vera (#46064) 2021-02-08 15:25:54 +01:00
Henco Appel
b1ffe429cd Fix BT Smarthub device tracker (#44813) 2021-02-08 15:24:18 +01:00
Joeri
2811e39c5c Add entity specific force_update for DSMR (#46111) 2021-02-08 15:18:36 +01:00
Franck Nijhof
48808978c4 Upgrade pre-commit to 2.10.1 (#46211) 2021-02-08 15:05:11 +01:00
Martin Hjelmare
568180632e Fix sync oath2 scaffold template (#46219) 2021-02-08 15:00:17 +01:00
Bram Kragten
6f446cf627 Add my component (#46058)
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-08 14:44:46 +01:00
Anders Melchiorsen
48002f47f4 Use caplog fixture for log capturing (#46214) 2021-02-08 14:33:57 +01:00
Erik Montnemery
0780e52ca4 Support templates in event triggers (#46207)
* Support templates in event triggers

* Don't validate trigger schemas twice
2021-02-08 14:06:27 +01:00
Matteo Agnoletto
eaa2d371a7 Add select selector for blueprints (#45803)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-02-08 14:03:26 +01:00
Erik Montnemery
2744d64a3e Pass variables to state trigger templates (#46208)
* Pass variables to state trigger templates

* Remove non working test
2021-02-08 13:22:01 +01:00
Erik Montnemery
9d9c4b47ee Pass variables to numeric state trigger templates (#46209) 2021-02-08 13:21:31 +01:00
tkdrob
92e5bf9786 Use core constants for google (#46210) 2021-02-08 12:24:48 +01:00
Ville Skyttä
82607977ef Various type hint improvements (#46144) 2021-02-08 11:59:46 +01:00
tkdrob
54dce1c505 Use core constants for fleetgo (#46200) 2021-02-08 11:47:30 +01:00
Fabian Affolter
5a4e1eeb0e Upgrade praw to 7.1.4 (#46202) 2021-02-08 11:46:58 +01:00
Hmmbob
a23e05d1f6 Fix Google translate TTS by bumping gTTS from 2.2.1 to 2.2.2 (#46110) 2021-02-08 11:43:30 +01:00
tkdrob
87c36d6b6b Use core constants for google_assistant (#46204) 2021-02-08 11:36:59 +01:00
tkdrob
5faf463205 Use core constants for frontend component (#46203) 2021-02-08 11:36:45 +01:00
tkdrob
9b0955b67e Use core constants for flux (#46201) 2021-02-08 11:26:57 +01:00
Matthias Alphart
e7ca0ff71a Enable KNX auto_reconnect for auto-discovered connections (#46178) 2021-02-08 11:23:50 +01:00
Erik Montnemery
f99c27c6d4 Remove unneeded from_state from device triggers (#45152) 2021-02-08 11:09:45 +01:00
Per Sandström
8efb5eea4d Bump python-verisure to version 1.7.2 (#46177) 2021-02-08 11:00:23 +01:00
Erik Montnemery
047f16772f Support templating MQTT triggers (#45614)
* Add support for limited templates (no HASS access)

* Pass variables to automation triggers

* Support templates in MQTT triggers

* Spelling

* Handle trigger referenced by variables

* Raise on unsupported function in limited templates

* Validate MQTT trigger schema in MQTT device trigger

* Add trigger_variables to automation config schema

* Don't print stacktrace when setting up trigger throws

* Make pylint happy

* Add trigger_variables to variables

* Add debug prints, document limited template

* Add tests

* Validate MQTT trigger topic early when possible

* Improve valid_subscribe_topic_template
2021-02-08 10:50:38 +01:00
Anders Melchiorsen
b9b1caf4d7 Raise ConditionError for numeric_state errors (#45923) 2021-02-08 10:47:57 +01:00
Paulus Schoutsen
9e07910ab0 Mark entities as unavailable when they are removed but are still registered (#45528)
* Mark entities as unavailable when they are removed but are still registered

* Add sync_entity_lifecycle to collection helper

* Remove debug print

* Lint

* Fix tests

* Fix tests

* Update zha

* Update zone

* Fix tests

* Update hyperion

* Update rfxtrx

* Fix tests

* Pass force_remove=True from integrations

Co-authored-by: Erik <erik@montnemery.com>
2021-02-08 10:45:46 +01:00
Aaron Godfrey
aa005af266 Fix dyson service name in services.yaml (#46176) 2021-02-08 10:39:33 +01:00
dependabot[bot]
c7a9571920 Bump actions/stale from v3.0.15 to v3.0.16 (#46196) 2021-02-08 10:06:38 +01:00
dependabot[bot]
75519d2d6c Bump actions/cache from v2 to v2.1.4 (#46197)
Bumps [actions/cache](https://github.com/actions/cache) from v2 to v2.1.4.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2...26968a09c0ea4f3e233fdddbafd1166051a095f6)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-02-08 09:59:07 +01:00
tkdrob
352bba1f15 Use core constants for efergy (#46090) 2021-02-08 09:45:05 +01:00
Adam Outler
840891e4f4 Increase skybell scan time to reduce timeouts (#46169) 2021-02-08 09:37:23 +01:00
Erik Montnemery
28ef3f68f3 Add media_player device triggers (#45430)
* Add media player device triggers

* Update tests
2021-02-08 09:36:14 +01:00
Fabian Affolter
ca87bf49b6 Upgrade praw to 7.1.3 (#46073) 2021-02-08 09:34:12 +01:00
tkdrob
04c1578f15 Use core constants for file integration (#46171) 2021-02-08 09:32:01 +01:00
tkdrob
5755598c95 Use core constants for fixer (#46173) 2021-02-08 09:31:02 +01:00
tkdrob
66ecd2e0f2 Remove unused config_flows (#46188) 2021-02-08 08:32:24 +01:00
Daniel Shokouhi
d02b78c634 Revert "Convert ozw climate values to correct units (#45369)" (#46163)
This reverts commit 1b6ee8301a.
2021-02-08 07:05:10 +01:00
HomeAssistant Azure
aa00c62302 [ci skip] Translation update 2021-02-08 00:07:01 +00:00
tkdrob
8e06fa017d Use core constants for emulated_hue (#46092) 2021-02-07 13:52:48 -05:00
tkdrob
19e9515bec Use core constants for ffmpeg_motion (#46137) 2021-02-07 13:47:16 -05:00
tkdrob
74053b5f2d Use core constants for envisalink (#46136) 2021-02-07 13:28:40 -05:00
Matthias Alphart
94eb31025c xknx 0.16.3 (#46128) 2021-02-07 01:27:58 +01:00
HomeAssistant Azure
818501216e [ci skip] Translation update 2021-02-07 00:06:57 +00:00
Robert Svensson
618fcda821 Simplify UniFi entry configuration data (#45759)
* Simplify configuration structure by removing the controller key

* Fix flake8

* Fix review comments

* Don't use migrate_entry mechanism to flatten configuration
Keep legacy configuration when creating new entries as well
2021-02-06 21:32:18 +01:00
Pierre Ståhl
cefde8721d Add new features to Apple TV media player (#45828) 2021-02-06 10:29:48 -10:00
Robert Svensson
60e3fce7dc Convert old deCONZ groups unique ids (#46093)
* Convert old groups unique ids
Work around for walrus operator not working properly :/

* Remove CONF_GROUP_ID_BASE once entities unique id are updated

* Don't use migrate_entry mechanism to update unique_ids of groups

* Remove walrus operator :(

* Fix review comments

* Walrusify assignment to old_unique_id
2021-02-06 14:32:17 +01:00
Steven Rollason
08163a848c Fix downloader path validation on subdir (#46061) 2021-02-06 14:05:50 +01:00
Marcel van der Veldt
242ff045b9 Handle missing value in all platforms of zwave_js (#46081) 2021-02-06 14:02:03 +01:00
Erik Montnemery
fb68bf85ae Don't defer formatting of log messages (#44873)
* Make fast logging optional

* Remove fast logging support
2021-02-06 13:40:15 +01:00
Robert Svensson
94ecb792ec Use async_update_entry rather than updating config_entry.data directly in Axis (#46078)
Don't step version in migrate_entry to support rollbacking
2021-02-06 13:17:52 +01:00
J. Nick Koston
a74ae3585a Fix backwards compatiblity with fan update to new model (#45951)
* Fix backwards compatiblity with fans update to new model

There were some non-speeds and devices that report a none
speed. These problems were discovered when updating zha
tasmota and vesync to the new model in #45407

* Update coverage

* fix check
2021-02-06 12:48:18 +01:00
Erik Montnemery
369616a6c3 Exclude disabled rfxtrx entities from async_entries_for_device (#46102) 2021-02-06 12:19:41 +01:00
Raman Gupta
af4e6f856f Use better names for zwave_js platforms that are self describing (#46083)
* use better names for platforms that are self describing

* add missing light change

* fix tests

* only use value_name in sensors and binary_sensors
2021-02-06 12:08:25 +01:00
ehendrix23
ee98ea89dd Bump aioharmony from 0.2.6 to 0.2.7 (#46075) 2021-02-05 23:55:21 -10:00
Erik Montnemery
8a7e0241ab Fix race in script wait for trigger step (#46055)
* Fix race in script wait for trigger step

* Update script.py

* Update script.py
2021-02-06 10:01:30 +01:00
djtimca
f2d9e6f70c Add sensor platform for Aurora integration (#43148)
* Removed pylint disable on unused after updating CI files that were out of date.
* Pylint still fails due to bug on DOMAIN import. Added disable check.
* Addressed PR comments
* Added import for ClientError to test_config_flow.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-02-05 23:05:39 -08:00
HomeAssistant Azure
ce159d7db3 [ci skip] Translation update 2021-02-06 00:07:22 +00:00
Raman Gupta
33169cf8cd Fix zwave_js Notification CC sensors and binary sensors (#46072)
* only include property key name in sensor name if it exists

* add endpoint to binary_sensor and sensor notification CC entities if > 0

* refactor to have helper method generate name

* change default behavior of generate_name

* return value for notification sensor when we can't find the state

* store generated name
2021-02-05 23:36:42 +01:00
Franck Nijhof
67392338da Activate manual ZHA config flow when no comports detected (#46077) 2021-02-05 17:23:47 -05:00
Robert Svensson
434b4dfa58 Improve deCONZ logbook to be more robust in different situations (#46063) 2021-02-05 23:07:12 +01:00
Sergio Conde Gómez
2c74befd4f Fix foscam to work again with non-admin accounts and make RTSP port configurable again (#45975)
* Do not require admin account for foscam cameras.

Foscam cameras require admin account for getting the MAC address,
requiring an admin account in the integration is not desirable as
an operator one is good enough (and a good practice).

Old entries using the MAC address as unique_id are migrated to the
new unique_id format so everything is consistent.

Also fixed unhandled invalid responses from the camera in the
config flow process.

* Make RTSP port configurable again as some cameras reports wrong port

* Remove periods from new log lines

* Set new Config Flow version to 2 and adjust the entity migration

* Create a proper error message for the InvalidResponse exception

* Change crafted unique_id to use entry_id in the entity

* Abort if same host and port is already configured

* Fix entry tracking to use entry_id instead of unique_id

* Remove unique_id from mocked config entry in tests
2021-02-05 22:39:31 +01:00
functionpointer
c01e01f797 MySensors config flow (#45421)
* MySensors: Add type annotations

Adds a bunch of type annotations that were created
while understanding the code.

* MySensors: Change GatewayId to string

In preparation for config flow.
The GatewayId used to be id(gateway).

With config flows, every gateway will have its own
ConfigEntry. Every ConfigEntry has a unique id.
Thus we would have two separate but one-to-one related ID systems.

This commit removes this unneeded duplication by using the id of the ConfigEntry
as GatewayId.

* MySensors: Add unique_id to all entities

This allows entities to work well with the frontend.

* MySensors: Add device_info to all entities

Entities belonging to the same node_id will now by grouped as a device.

* MySensors: clean up device.py a bit

* MySensors: Add config flow support

With this change the MySensors can be fully configured from the GUI.

Legacy configuration.yaml configs will be migrated by reading them once.
Note that custom node names are not migrated. Users will have to re-enter
the names in the front-end.
Since there is no straight-forward way to configure global settings,
all previously global settings are now per-gateway. These settings include:
- MQTT retain
- optimistic
- persistence enable
- MySensors version

When a MySensors integration is loaded, it works as follows:
1. __init__.async_setup_entry is called
2. for every platform, async_forward_entry_setup is called
3. the platform's async_setup_entry is called
4. __init__.setup_mysensors_platform is called
5. the entity's constructor (e.g. MySensorsCover) is called
6. the created entity is stored in a dict in the hass object

* MySensors: Fix linter errors

* MySensors: Remove unused import

* MySensors: Feedback from @MartinHjelmare

* MySensors: Multi-step config flow

* MySensors: More feedback

* MySensors: Move all storage in hass object under DOMAIN

The integration now stores everything under hass.data["mysensors"]
instead of using several top level keys.

* MySensors: await shutdown of gateway instead of creating a task

* MySensors: Rename Ethernet to TCP

* MySensors: Absolute imports and cosmetic changes

* MySensors: fix gw_stop

* MySensors: Allow user to specify persistence file

* MySensors: Nicer log message

* MySensors: Add lots of unit tests

* MySensors: Fix legacy import of persistence file name

Turns out tests help to find bugs :D

* MySensors: Improve test coverage

* MySensors: Use json persistence files by default

* MySensors: Code style improvements

* MySensors: Stop adding attributes to existing objects

This commit removes the extra attributes that were being
added to the gateway objects from pymysensors.

Most attributes were easy to remove, except for the gateway id.
The MySensorsDevice class needs the gateway id as it is part of its DevId
as well as the unique_id and device_info.
Most MySensorsDevices actually end up being Entities.
Entities have access to their ConfigEntry via self.platform.config_entry.

However, the device_tracker platform does not become an Entity.
For this reason, the gateway id is not fetched from self.plaform but
given as an argument.

Additionally, MySensorsDevices expose the address of the gateway
(CONF_DEVICE). Entities can easily fetch this information via self.platform,
but the device_tracker cannot. This commit chooses to remove the gateway
address from device_tracker. While this could in theory break some automations,
the simplicity of this solution was deemed worth it.
The alternative of adding the entire ConfigEntry as an argument to MySensorsDevices
is not viable, because device_tracker is initialized by the async_setup_scanner function
that isn't supplied a ConfigEntry. It only gets discovery_info.
Adding the entire ConfigEntry doesn't seem appropriate for this edge case.

* MySensors: Fix gw_stop and the translations

* MySensors: Fix incorrect function calls

* MySensors: Fewer comments in const.py

* MySensors: Remove union from _get_gateway and remove id from try_connect

* MySensors: Deprecate nodes option in configuration.yaml

* MySensors: Use version parser from packaging

* MySensors: Remove prefix from unique_id and change some private property names

* MySensors: Change _get_gateway function signature

* MySensors: add packaging==20.8 for the version parser

* MySensors: Rename some stuff

* MySensors: use pytest.mark.parametrize

* MySensors: Clean up test cases

* MySensors: Remove unneeded parameter from devices

* Revert "MySensors: add packaging==20.8 for the version parser"

This reverts commit 6b200ee01a.

* MySensors: Use core interface for testing configuration.yaml import

* MySensors: Fix test_init

* MySensors: Rename a few variables

* MySensors: cosmetic changes

* MySensors: Update strings.json

* MySensors: Still more feedback from @MartinHjelmare

* MySensors: Remove unused strings

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

* MySensors: Fix typo and remove another unused string

* MySensors: More strings.json

* MySensors: Fix gateway ready handler

* MySensors: Add duplicate detection to config flows

* MySensors: Deal with non-existing topics and ports.

Includes unit tests for these cases.

* MySensors: Use awesomeversion instead of packaging

* Add string already_configured

* MySensors: Abort config flow when config is found to be invalid while importing

* MySensors: Copy all error messages to also be abort messages

All error strings may now also be used as an abort reason,
so the strings should be defined

* Use string references

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-05 22:13:57 +01:00
Robert Svensson
0d620eb7c3 Add unique id to UniFi config entries using the unique id of the site it is controlling (#45737)
* Add unique id to UniFi config entries using the unique id of the site it is controlling

* Fix failing test
2021-02-05 19:38:08 +01:00
Marc Mueller
55f9d98523 Fix deprecated method isAlive() (#46062) 2021-02-05 19:12:23 +01:00
Johan Nenzén
55f81a8a04 Address Plaato post merge review (#46024) 2021-02-05 18:28:06 +01:00
Robert Svensson
ae2c7e4c74 Improve UniFi tests (#45871) 2021-02-05 16:31:47 +01:00
Jaroslav Hanslík
7144c5f316 Fix demo number entity (#45991) 2021-02-05 15:08:28 +01:00
tkdrob
6fdb12c09d Use core constants for bluetooth_tracker (#46041) 2021-02-05 15:07:17 +01:00
tkdrob
9a570d7c32 Use core constants for bmw_connected_drive (#46042) 2021-02-05 08:02:28 -05:00
Greg Dowling
e01ca40d56 Force Vera refresh after starting subscription (#46001)
* Force vera refresh after starting subscription.

* Request refresh on device load.

* Update init test.
2021-02-05 13:20:15 +01:00
Yuval Aboulafia
2a0c36589f Centralize some Airly constants (#45985) 2021-02-05 12:41:36 +01:00
tkdrob
725dcb5cac Use core constants for doods (#46043) 2021-02-05 12:17:46 +01:00
Paulus Schoutsen
e4b987a642 Merge pull request #46023 from home-assistant/rc 2021-02-05 10:54:07 +01:00
Aaron Bach
6404f91d00 Standardize AirVisual helper method in config flow (#45999)
* Standardize AirVisual helper method in config flow

* Code review
2021-02-05 10:51:55 +01:00
Nathan Spencer
92886cafe9 Fix zwave_js cover control for Up/Down and Open/Close (#45965)
* Fix issue with control of cover when the target value is Up/Down instead of Open/Close

* Adjust open/close/stop cover control to account for no Open/Up or Close/Down targets

* Revert back to using values of 0/99 to close/open a cover since it is supported by all covers

* Replace RELEASE_BUTTON with False and remove unused PRESS_BUTTON in zwave_js cover
2021-02-05 10:48:47 +01:00
tkdrob
2b17ba1dc4 User core constants for deutsche_bahn (#46028) 2021-02-05 10:29:59 +01:00
Fabian Affolter
8e8646b93a Upgrade holidays to 0.10.5.2 (#46013) 2021-02-05 09:11:22 +00:00
obelix05
7c5af4e7e6 Prevent fritzbox callmonitor phonebook_id 0 from being ignored (#45990) 2021-02-05 09:11:21 +00:00
Paulus Schoutsen
64ab495318 Revert aioshelly (#46038) 2021-02-05 10:05:04 +01:00
tkdrob
6e9aa254d5 Use core constants for delijn (#46027) 2021-02-04 21:43:04 -05:00
tkdrob
bcefbe2dca Use core constants for automation (#46016) 2021-02-04 21:41:43 -05:00
J. Nick Koston
374aa3aee1 Fix homekit options not being prefilled (#45926)
* Fix homekit options not being prefilled

When changing homekit options, the existing ones
were not being prefilled on the form.

* hide camera screen if no cameras
2021-02-05 02:39:07 +01:00
obelix05
d1b7d25a5d Prevent fritzbox callmonitor phonebook_id 0 from being ignored (#45990) 2021-02-05 02:31:47 +01:00
HomeAssistant Azure
c6bd5b1b71 [ci skip] Translation update 2021-02-05 00:03:54 +00:00
Paulus Schoutsen
ac0f856378 Bumped version to 2021.2.1 2021-02-04 23:41:52 +00:00
J. Nick Koston
77887f123e dhcp does not need promisc mode. Disable it in scapy (#46018) 2021-02-04 23:41:44 +00:00
Martin Hjelmare
8cce60b1ac Bump zwave-js-server-python to 0.17.2 (#46010) 2021-02-04 23:41:43 +00:00
J. Nick Koston
e312ed98c8 Do not listen for dhcp packets if the filter cannot be setup (#46006) 2021-02-04 23:41:43 +00:00
Joakim Sørensen
2b10933325 Bump awesomeversion from 21.2.0 to 21.2.2 (#45993) 2021-02-04 23:40:54 +00:00
Martin Hjelmare
c68847def7 Bump zwave-js-server-python to 0.17.1 (#45988) 2021-02-04 23:38:12 +00:00
DeadEnd
8e531a301f Fix Local Media in Media Browser (#45987)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-02-04 23:38:11 +00:00
Maciej Bieniek
39dd590576 Fix entities device_info property in Harmony integration (#45964) 2021-02-04 23:38:11 +00:00
Martin Weinelt
b98d55f1c7 Don't log missing mpd artwork inappropriately (#45908)
This can get unnecessarily spammy and doesn't represent an actual
actionable issue.

Fixes: #45235
2021-02-04 23:38:10 +00:00
Niccolo Zapponi
42606cedef Add support for iCloud 2FA (#45818)
* Add support for iCloud 2FA

* Updated dependency for iCloud

* Updated dependency and logic fix

* Added logic for handling incorrect 2FA code

* Bug fix on failing test

* Added myself to codeowners

* Added check for 2FA on setup

* Updated error message
2021-02-04 23:38:09 +00:00
Christopher Gozdziewski
5b5755f5e2 Convert ozw climate values to correct units (#45369)
* Convert ozw climate values to correct units

* Remove debugger logging

* Fix black code formatting

* Remove extra spaces

* Add method descriptions and change to use setpoint

* Fix build and respond to comments

* Remove self from convert_units call

* Move method to top

* Move method outside class

* Add blank lines

* Fix test to use farenheit

* Update another value to farenheit

* Change to celsius

* Another test fix

* test fix

* Fix a value

* missed one

* Add unit test for convert_units

* fix unit test import

* Add new line to end of test file

* fix convert units import

* Reorder imports

* Grab const from different import

Co-authored-by: Trevor <tboyce021@gmail.com>
2021-02-04 23:38:08 +00:00
J. Nick Koston
01e73911d6 Do not listen for dhcp packets if the filter cannot be setup (#46006) 2021-02-05 00:36:55 +01:00
Fabian Affolter
097a4e6b59 Upgrade praw to 7.1.2 (#46012) 2021-02-04 23:42:10 +01:00
Fabian Affolter
62de921422 Upgrade slixmpp to 1.7.0 (#46019) 2021-02-04 23:41:24 +01:00
J. Nick Koston
b9f9de0c1d dhcp does not need promisc mode. Disable it in scapy (#46018) 2021-02-04 23:39:44 +01:00
tkdrob
60268e63d9 Use core constants for aws (#46017) 2021-02-04 23:36:35 +01:00
tkdrob
5d3dcff7c9 Use core constants for asuswrt (#46015) 2021-02-04 23:34:39 +01:00
Fabian Affolter
c7febacd9f Upgrade holidays to 0.10.5.2 (#46013) 2021-02-04 23:32:56 +01:00
Martin Hjelmare
912b816117 Bump zwave-js-server-python to 0.17.2 (#46010) 2021-02-04 20:44:40 +01:00
DeadEnd
7b280bdbe7 Fix Local Media in Media Browser (#45987)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-02-04 17:02:56 +01:00
Joakim Sørensen
56b8e82a69 Bump awesomeversion from 21.2.0 to 21.2.2 (#45993) 2021-02-04 16:45:59 +01:00
Martin Hjelmare
b80c1688ad Bump zwave-js-server-python to 0.17.1 (#45988) 2021-02-04 16:29:41 +01:00
Martin Weinelt
61a987061e Don't log missing mpd artwork inappropriately (#45908)
This can get unnecessarily spammy and doesn't represent an actual
actionable issue.

Fixes: #45235
2021-02-04 08:18:51 -05:00
Maciej Bieniek
134b1d3f63 Fix entities device_info property in Harmony integration (#45964) 2021-02-04 08:16:09 -05:00
Joakim Sørensen
1a74709757 Throw error in hassfest when integration is missing version (#45976) 2021-02-04 13:31:17 +01:00
tkdrob
9c6c2a77ab Use core constants for amazon polly (#45938) 2021-02-04 07:06:09 -05:00
tkdrob
d44c941efe Use core constants for alexa (#45937) 2021-02-04 07:05:56 -05:00
tkdrob
8625b772e3 Use core constants for alert (#45935) 2021-02-04 07:05:46 -05:00
Joakim Sørensen
afa7fd923a Update yarnpkg GPG key (#45973) 2021-02-04 12:51:38 +01:00
Erik Montnemery
dd150bb797 Allow manual configuration of ignored singleton config entries (#45161)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-04 11:08:10 +01:00
Shay Levy
fefe4a2021 Fix exception in Shelly sleeping device that switches to polling (#45930) 2021-02-04 11:07:30 +01:00
Joakim Sørensen
7e9500e465 Use bootstrap in devcontainer (#45968) 2021-02-04 10:41:28 +01:00
Joakim Sørensen
06e6005fbb Add warning to custom integrations without version (#45919)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-02-04 09:59:41 +01:00
olijouve
8256acb8ef Fix onvif ConnectionResetError (#45899)
Fix "ConnectionResetError: Cannot write to closing transport" error we can have on lots of chinese cams(like Goke GK7102 based IP cameras)
Those non full onvif compliant cams can "crash" when calling non implemented functions like events or ptz and they are likely react by closing transport, leaving the request in a uncatched error state.

My camera used to fail on setup, and now it run nicely with that simple fix.
2021-02-04 09:25:35 +01:00
Christopher Gozdziewski
1b6ee8301a Convert ozw climate values to correct units (#45369)
* Convert ozw climate values to correct units

* Remove debugger logging

* Fix black code formatting

* Remove extra spaces

* Add method descriptions and change to use setpoint

* Fix build and respond to comments

* Remove self from convert_units call

* Move method to top

* Move method outside class

* Add blank lines

* Fix test to use farenheit

* Update another value to farenheit

* Change to celsius

* Another test fix

* test fix

* Fix a value

* missed one

* Add unit test for convert_units

* fix unit test import

* Add new line to end of test file

* fix convert units import

* Reorder imports

* Grab const from different import

Co-authored-by: Trevor <tboyce021@gmail.com>
2021-02-04 08:32:43 +01:00
denes44
14d914e300 Enable emulated_hue setting XY color and transition time by client (#45844)
* Enable setting XY color and transition time by client

* New test for setting XY color value

* Correct block outdent

* New test for setting transition time value

* Fixed commented out code
2021-02-03 15:35:27 -10:00
Philip Allgaier
5a0715d388 Consistent spelling of IT abbreviations / protocol / format names (#45913) 2021-02-04 01:43:07 +01:00
Philip Allgaier
44914c01ac Fix typo in Roomba strings (#45928) 2021-02-03 14:26:32 -10:00
tkdrob
04f39d7dd4 Use core constants for command_line auth provider (#45907) 2021-02-03 19:19:22 -05:00
HomeAssistant Azure
adf38f7074 [ci skip] Translation update 2021-02-04 00:06:54 +00:00
David F. Mulcahey
51e695fd45 add api to refresh topology (#44840) 2021-02-03 15:35:05 -05:00
Niccolo Zapponi
a775b79d4b Add support for iCloud 2FA (#45818)
* Add support for iCloud 2FA

* Updated dependency for iCloud

* Updated dependency and logic fix

* Added logic for handling incorrect 2FA code

* Bug fix on failing test

* Added myself to codeowners

* Added check for 2FA on setup

* Updated error message
2021-02-03 19:18:31 +01:00
Franck Nijhof
de59d8777b Merge pull request #45912 from home-assistant/rc
2021.2.0 (tag)
2021-02-03 18:19:17 +01:00
Franck Nijhof
39ef1131e1 Bumped version to 2021.2.0 2021-02-03 17:57:14 +01:00
Franck Nijhof
1eff2ab22b Merge pull request #45911 from home-assistant/rc 2021-02-03 17:51:34 +01:00
Brandon Rothweiler
4b208746e5 Add Mazda Connected Services integration (#45768) 2021-02-03 17:38:12 +01:00
Berni Moses
a584ad5ac3 Fix duplicate lg_soundbar entities and disable polling (#42044)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-03 17:06:02 +01:00
badguy99
6458ff774f Homeconnect remote states (#45610)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-03 17:05:20 +01:00
Shay Levy
0875f654c8 Add support for Shelly battery operated devices (#45406)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-03 17:03:22 +01:00
Keith Lamprecht
fcc14933d0 Add transitiontime to hue scene service (#45785) 2021-02-03 15:42:52 +01:00
Paulus Schoutsen
f8426f62a9 Bumped version to 2021.2.0b5 2021-02-03 15:27:56 +01:00
Joakim Sørensen
92365b65e9 Add integration name to the deprecation warnings (#45901) 2021-02-03 15:27:50 +01:00
Marcel van der Veldt
878740d53f Update discovery scheme for Meter CC in zwave_js integration (#45897) 2021-02-03 15:27:48 +01:00
Tobias Sauerwein
557e13e010 Add support for climate setpoint thermostats to zwave_js (#45890) 2021-02-03 15:27:46 +01:00
Jesse Campbell
f2c2a97228 Remove v4 multilevel transitional currentValue workaround in zwave_js (#45884)
* Remove v4 multilevel transitional currentValue workaround

This was only needed because the get-after-set was reporting a
transitional currentValue instead of the final one.
zwave-js v6.1.1 removes the get-after-set functionality completely, so
this is no longer required (and breaks status reporting entirely)

* Fix tests to check currentValue instead of targetValue as well
2021-02-03 15:27:44 +01:00
Joakim Sørensen
90973f471f Add integration name to the deprecation warnings (#45901) 2021-02-03 14:40:11 +01:00
Tobias Sauerwein
5615ab4c25 Add support for climate setpoint thermostats to zwave_js (#45890) 2021-02-03 13:59:19 +01:00
Marcel van der Veldt
9998fe3684 Update discovery scheme for Meter CC in zwave_js integration (#45897) 2021-02-03 13:08:00 +01:00
Jesse Campbell
eaa9fff3ba Remove v4 multilevel transitional currentValue workaround in zwave_js (#45884)
* Remove v4 multilevel transitional currentValue workaround

This was only needed because the get-after-set was reporting a
transitional currentValue instead of the final one.
zwave-js v6.1.1 removes the get-after-set functionality completely, so
this is no longer required (and breaks status reporting entirely)

* Fix tests to check currentValue instead of targetValue as well
2021-02-03 12:02:49 +01:00
Paulus Schoutsen
9070ee0851 Bumped version to 2021.2.0b4 2021-02-03 11:59:33 +01:00
Paulus Schoutsen
c3786ee186 Mark Z-Wave as deprecated (#45896) 2021-02-03 11:59:22 +01:00
Paulus Schoutsen
2369fda0d0 Upgrade Z-Wave JS Python to 0.17.0 (#45895) 2021-02-03 11:59:22 +01:00
Pascal Vizeli
8d0d4d3133 Update docker base image 2021.02.0 (#45889) 2021-02-03 11:59:21 +01:00
jjlawren
53f1dba784 Bump plexapi to 3.4.1 (#45878) 2021-02-03 11:59:20 +01:00
Paulus Schoutsen
40ba182144 Upgrade Z-Wave JS Python to 0.17.0 (#45895) 2021-02-03 11:58:46 +01:00
Paulus Schoutsen
a2ec1a47d5 Mark Z-Wave as deprecated (#45896) 2021-02-03 11:54:00 +01:00
Paulus Schoutsen
889cb254b2 Update translations 2021-02-03 11:51:54 +01:00
Paulus Schoutsen
959ed6d077 Update translations 2021-02-03 11:46:49 +01:00
Pascal Vizeli
45ac6df76f Update docker base image 2021.02.0 (#45889) 2021-02-03 10:41:02 +01:00
jjlawren
048f36c77e Bump plexapi to 3.4.1 (#45878) 2021-02-03 08:44:34 +01:00
Bram Kragten
66e045f570 Bumped version to 2021.2.0b3 2021-02-02 22:57:18 +01:00
Quentame
d9dba1b7ab Bump Freebox to 0.0.9 (#45837)
* Bump Freebox to 0.0.9

* Remove @SNoof85 from code owners

* Module is now freebox_api
2021-02-02 22:57:06 +01:00
Bram Kragten
0435586bb1 Update frontend to 20210127.7 (#45874) 2021-02-02 22:54:12 +01:00
Martin Hjelmare
76c27a7d5a Use new zwave_js client (#45872)
* Use new zwave_js client

* Remove client callbacks

* Clean up on connect and on disconnect

* Clean log

* Add stop listen to unsubscribe callbacks

* Fix most tests

* Adapt to new listen interface

* Fix most tests

* Remove stale connection state feature

* Bump zwave-js-server-python to 0.16.0

* Clean up disconnect
2021-02-02 22:54:11 +01:00
Marcel van der Veldt
d759fa3407 Guard for missing value (#45867)
* guard for missing value

* update comment
2021-02-02 22:54:10 +01:00
Martin Hjelmare
34bc5ef0cd Fix zwave_js device remove test (#45864) 2021-02-02 22:54:10 +01:00
Martin Hjelmare
f4ff2708e0 Fix zwave_js sensor device class attribute error (#45863) 2021-02-02 22:54:09 +01:00
Marcel van der Veldt
d3a92dcac6 Update zwave_js discovery schema for light platform (#45861) 2021-02-02 22:54:09 +01:00
Raman Gupta
b575b0a700 Add current humidity to zwave_js climate platform (#45857) 2021-02-02 22:54:08 +01:00
Raman Gupta
7ff60601c9 Remove zwave_js devices that the controller is no longer connected to on initialization (#45853)
* Remove zwave_js devices that the controller is no longer connected to on initialization

* remove extra line break

* fix test

* Clean up

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

* Lint

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-02 22:54:07 +01:00
Thomas Friedel
bba7c0454c Enable Osramlightify again (#45849) 2021-02-02 22:54:07 +01:00
Franck Nijhof
277aa01088 Disable Osramlightify, upstream package is missing (#45775) 2021-02-02 22:54:06 +01:00
Marcel van der Veldt
67ee2fb822 Fix sensor discovery for zwave_js integration (#45834)
Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>
2021-02-02 22:47:29 +01:00
Raman Gupta
a56b250e31 Add notification events to zwave_js integration (#45827)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-02 22:47:28 +01:00
Marcel van der Veldt
e169ad93c2 Add value notification events to zwave_js integration (#45814) 2021-02-02 22:47:27 +01:00
Erik Montnemery
fba781a535 Improve MQTT JSON light to allow non-ambiguous states (#45522) 2021-02-02 22:47:27 +01:00
Bram Kragten
bf9b3bf9db Update frontend to 20210127.7 (#45874) 2021-02-02 22:45:51 +01:00
Martin Hjelmare
524b9e7b1f Use new zwave_js client (#45872)
* Use new zwave_js client

* Remove client callbacks

* Clean up on connect and on disconnect

* Clean log

* Add stop listen to unsubscribe callbacks

* Fix most tests

* Adapt to new listen interface

* Fix most tests

* Remove stale connection state feature

* Bump zwave-js-server-python to 0.16.0

* Clean up disconnect
2021-02-02 20:59:56 +01:00
Marcel van der Veldt
2e98cfb9ab Guard for missing value (#45867)
* guard for missing value

* update comment
2021-02-02 19:57:08 +01:00
Martin Hjelmare
c93fec34b3 Fix zwave_js sensor device class attribute error (#45863) 2021-02-02 16:25:43 +01:00
Fabian Affolter
811bbb7acb Upgrade emoji to 1.2.0 (#45847) 2021-02-02 15:56:56 +01:00
Fabian Affolter
63cc2517dd Upgrade watchdog to 1.0.2 (#45848) 2021-02-02 15:53:03 +01:00
Martin Hjelmare
6e205965ee Fix zwave_js device remove test (#45864) 2021-02-02 15:28:21 +01:00
Fabian Affolter
e9b2d33ad8 Upgrade pytz to >=2021.1 (#45839) 2021-02-02 15:18:58 +01:00
Fabian Affolter
7ff4281b6d Upgrade jinja2 to >=2.11.3 (#45843) 2021-02-02 15:10:54 +01:00
Thomas Friedel
0382c93283 Enable Osramlightify again (#45849) 2021-02-02 14:45:02 +01:00
J. Nick Koston
d417ee2732 Add fan speed percentage support to google assistant (#45835) 2021-02-02 14:39:07 +01:00
Daniel Pereira
a96a80e78d Update alexa/const.py to reflect docs (#45806)
The current docs say the Alexa integration is compatible with languages not currently present in the conf validator.

See: https://www.home-assistant.io/integrations/alexa.smart_home/#alexa-locale
2021-02-02 14:38:13 +01:00
J. Nick Koston
463a32819c Ensure homekit never picks a port that another config entry uses (#45433) 2021-02-02 14:30:38 +01:00
Raman Gupta
a64ad50b27 Remove zwave_js devices that the controller is no longer connected to on initialization (#45853)
* Remove zwave_js devices that the controller is no longer connected to on initialization

* remove extra line break

* fix test

* Clean up

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

* Lint

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-02 10:30:12 +01:00
Marcel van der Veldt
0e3ba532c7 Update zwave_js discovery schema for light platform (#45861) 2021-02-02 10:18:44 +01:00
Tom Harris
b3e2f8f904 Add Insteon entities in event loop (#45829) 2021-02-01 23:17:17 -10:00
Marcel van der Veldt
0feda9ce63 Fix sensor discovery for zwave_js integration (#45834)
Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>
2021-02-02 10:06:09 +01:00
Raman Gupta
8d9b66e23d Add current humidity to zwave_js climate platform (#45857) 2021-02-02 09:41:00 +01:00
Raman Gupta
3ef7bd6b73 Add notification events to zwave_js integration (#45827)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-02 09:37:42 +01:00
Erik Montnemery
411c0a9685 Improve MQTT JSON light to allow non-ambiguous states (#45522) 2021-02-02 09:36:00 +01:00
michaeldavie
aea8636c7e Fix environment_canada high/low temperature display in evenings. (#45855) 2021-02-02 08:23:26 +01:00
Fabian Affolter
60d4dadcb6 Upgrade sqlalchemy to 1.3.23 (#45845) 2021-02-01 16:03:51 -10:00
Aidan Timson
3a77ef02e4 Add sensors to Lyric integration (#45791)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-01 15:51:20 -10:00
Aidan Timson
253ae3f423 Lyric Code Improvements (#45819)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-01 14:09:25 -10:00
Fabian Affolter
f2286d4811 Upgrade TwitterAPI to 2.6.5 (#45842) 2021-02-01 19:01:39 -05:00
Fabian Affolter
d38d8a542d Upgrade colorlog to 4.7.2 (#45840) 2021-02-01 19:01:19 -05:00
Marcel van der Veldt
b4559a172c Add value notification events to zwave_js integration (#45814) 2021-02-01 23:47:58 +01:00
Paulus Schoutsen
88a5ff4a51 Bumped version to 2021.2.0b2 2021-02-01 22:32:23 +00:00
Joakim Sørensen
cd1c8b78a1 Bump awesomeversion from 21.1.6 to 21.2.0 (#45821) 2021-02-01 22:31:07 +00:00
Martin Hjelmare
b705468b57 Bump zwave-js-server-python to 0.15.0 (#45813) 2021-02-01 22:31:06 +00:00
J. Nick Koston
938e5ff435 Fix missing async for lutron_caseta timeout (#45812) 2021-02-01 22:31:05 +00:00
Raman Gupta
000def5ded Add zwave_js binary sensors property name for Notification CC (#45810) 2021-02-01 22:31:04 +00:00
Raman Gupta
760b75a5c1 Search all endpoints for value in zwave_js (#45809)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-01 22:31:04 +00:00
J. Nick Koston
bf819df388 Fix shutdown deadlock with run_callback_threadsafe (#45807) 2021-02-01 22:31:03 +00:00
Chris
493f3bc1ce Add stop_cover service for zwave_js (#45805) 2021-02-01 22:31:02 +00:00
Marcel van der Veldt
18df06d6a6 Bump zwave-js-server-python to 0.14.2 (#45800) 2021-02-01 22:31:01 +00:00
Pierre Ståhl
0df1f8bfbd Bump pyatv to 0.7.6 (#45799) 2021-02-01 22:31:00 +00:00
Matthias Alphart
4f73105896 Prevent AttributError for uninitilized KNX ClimateMode (#45793) 2021-02-01 22:31:00 +00:00
J. Nick Koston
53db89e13d Ensure lutron_caseta is only discovered once (#45792) 2021-02-01 22:30:59 +00:00
Erik Montnemery
078579de69 Bump pychromecast to 8.0.0 (#45776) 2021-02-01 22:30:58 +00:00
J. Nick Koston
bbb18ffec4 Add timeout to lutron_caseta to prevent it blocking startup (#45769) 2021-02-01 22:30:57 +00:00
Bram Kragten
a8ad51ceb2 Update frontend to 20210127.6 (#45760) 2021-02-01 22:30:57 +00:00
Joakim Sørensen
68ea62f5ef Bump awesomeversion from 21.1.3 to 21.1.6 (#45738) 2021-02-01 22:30:56 +00:00
J. Nick Koston
a81a4ad44b Fix exception when a unifi config entry is ignored (#45735)
* Fix exception when a unifi config entry is ignored

* Fix existing test
2021-02-01 22:30:55 +00:00
Aaron Bach
4a2ad442c7 Bump simplisafe-python to 9.6.4 (#45716)
* Bump simplisafe-python to 9.6.4

* Fix imports
2021-02-01 22:30:55 +00:00
Bram Kragten
498f8db0d8 Updated frontend to 20210127.5 (#45714) 2021-02-01 22:30:54 +00:00
Martin Hjelmare
71b67ba572 Fix mqtt check in ozw (#45709) 2021-02-01 22:30:53 +00:00
bsmappee
7a746adb04 Bump pysmappee to 0.2.16 (#45699) 2021-02-01 22:30:53 +00:00
Pascal Vizeli
869bc2c4ce Update docker base image 2021.01.1 (#45697) 2021-02-01 22:30:52 +00:00
Vladimír Záhradník
b072a6c91a SSDP response decode: replace invalid utf-8 characters (#42681)
* SSDP response decode: replace invalid utf-8 characters

* Add test to validate replaced data

Co-authored-by: Joakim Plate <elupus@ecce.se>
2021-02-01 22:30:51 +00:00
Alessandro Pilotti
8222eb5e3e Allow Influxdb CA path in verify_ssl (#45270) 2021-02-01 23:29:31 +01:00
Aaron Bach
3bdf962838 Add ability to configure AirVisual with city/state/country in UI (#44116) 2021-02-01 11:38:03 -10:00
Raman Gupta
197c857e1f Search all endpoints for value in zwave_js (#45809)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-02-01 14:46:06 -05:00
Maciej Bieniek
776b1395de Bump brother library to version 0.2.0 (#45832) 2021-02-01 20:43:43 +01:00
Michael
c90588d35d Correct synology_dsm CPU sensor's naming and measurement unit (#45500) 2021-02-01 07:15:34 -10:00
Johan Nenzén
285bd3aa91 Add support for Keg and Airlock to Plaato using polling API (#34760)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-02-01 07:12:56 -10:00
Robert Svensson
83a75b02ea Code quality improvements to UniFi integration (#45794)
* Do less inside try statements

* Replace controller id with config entry id since it doesn't serve a purpose anymore

* Improve how controller connection state is communicated in the client and device tracker
Remove the need to disable arguments-differ lint

* Remove broad exception handling from config flow
I'm not sure there ever was a reason for this more than to catch all exceptions

* Replace site string with constant for SSDP title_placeholders

* Unload platforms in the defacto way

* Noone reads the method descriptions

* Improve file descriptions
2021-02-01 17:55:16 +01:00
Allen Porter
2136b3013f Increase test coverage for stream worker (#44161)
Co-authored-by: Justin Wong <46082645+uvjustin@users.noreply.github.com>
2021-02-01 17:48:49 +01:00
Tobias Bielohlawek
6e67b943da Remove Nuimo integration (#45600) 2021-02-01 16:58:00 +01:00
Joakim Sørensen
374817fbaa Bump awesomeversion from 21.1.6 to 21.2.0 (#45821) 2021-02-01 16:54:25 +01:00
Chris
a8cf377ed7 Add stop_cover service for zwave_js (#45805) 2021-02-01 16:46:36 +01:00
J. Nick Koston
9f59515bb8 Fix shutdown deadlock with run_callback_threadsafe (#45807) 2021-02-01 10:54:39 +01:00
Martin Hjelmare
31a84555b9 Bump zwave-js-server-python to 0.15.0 (#45813) 2021-02-01 10:54:07 +01:00
J. Nick Koston
e0bf18986b Fix missing async for lutron_caseta timeout (#45812) 2021-02-01 10:15:20 +01:00
Sly Gryphon
91a54eecb3 Add izone control zone (#43984) 2021-02-01 09:48:50 +01:00
Raman Gupta
0b63510cab Add zwave_js binary sensors property name for Notification CC (#45810) 2021-02-01 09:45:24 +01:00
Ville Skyttä
2ffdc4694a Remove misleading "for" from custom integration warning message (#45811) 2021-02-01 08:36:06 +01:00
Pierre Ståhl
03928dbe55 Bump pyatv to 0.7.6 (#45799) 2021-02-01 08:34:55 +01:00
Mick Vleeshouwer
1d94c10bb5 Change via_hub to via_device (#45804) 2021-01-31 20:55:18 -10:00
Marcel van der Veldt
3e080f88c6 Bump zwave-js-server-python to 0.14.2 (#45800) 2021-01-31 17:14:20 -05:00
J. Nick Koston
385b7e17ef Move homekit accessory creation to async (#45788) 2021-01-31 11:36:19 -10:00
J. Nick Koston
73d7d80731 Add timeout to lutron_caseta to prevent it blocking startup (#45769) 2021-01-31 21:43:00 +01:00
J. Nick Koston
852af7e372 Update homekit for new async library changes (#45731) 2021-01-31 21:40:24 +01:00
J. Nick Koston
dac9626112 Resolve homekit cover adjustment slowness (#45730) 2021-01-31 21:39:35 +01:00
J. Nick Koston
8be357ff4f Ensure lutron_caseta is only discovered once (#45792) 2021-01-31 21:38:08 +01:00
Matthias Alphart
868e530cbb Prevent AttributError for uninitilized KNX ClimateMode (#45793) 2021-01-31 20:56:42 +01:00
Michael
e506d8616f Fix polling and update of camera state for synology_dsm (#43683)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-01-31 09:22:46 -10:00
Franck Nijhof
c74ddf4720 Upgrade pre-commit to 2.10.0 (#45777) 2021-01-31 08:00:49 -10:00
Franck Nijhof
f1d3af1a13 Add WLED unload entry result correctly (#45783) 2021-01-31 07:59:39 -10:00
Aidan Timson
2d10c83150 Honeywell Lyric Integration (#39695)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-01-31 07:51:31 -10:00
Vladimír Záhradník
ee55223065 SSDP response decode: replace invalid utf-8 characters (#42681)
* SSDP response decode: replace invalid utf-8 characters

* Add test to validate replaced data

Co-authored-by: Joakim Plate <elupus@ecce.se>
2021-01-31 17:59:14 +01:00
Erik Montnemery
ca43b3a8bb Bump pychromecast to 8.0.0 (#45776) 2021-01-31 16:35:29 +01:00
Franck Nijhof
78934af6e6 Disable Osramlightify, upstream package is missing (#45775) 2021-01-31 13:50:48 +01:00
J. Nick Koston
f372bcf306 Update insteon to use new fan entity model (#45767) 2021-01-31 12:13:55 +01:00
MtK
275946b96d Bump ROVA package requirement (#45755) 2021-01-31 11:30:26 +01:00
J. Nick Koston
ea7aa6af59 Update dyson for the new fan entity model (#45762)
* Update dyson for the new fan entity model

* Fix test

* tweak

* fix

* adj

* Update homeassistant/components/dyson/fan.py

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

* move percentage is None block

* move percentage is None block

* no need to list comp

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-31 10:26:02 +01:00
Bram Kragten
6b44636344 Update frontend to 20210127.6 (#45760) 2021-01-31 00:51:33 +01:00
Ville Skyttä
d13b58a4e6 Upgrade mypy to 0.800 (#45485)
* Upgrade mypy to 0.800

https://mypy-lang.blogspot.com/2021/01/mypy-0800-released.html

* Fix issues flagged by mypy 0.800

* Add overloads + small changes

* Apply grammar

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-30 22:33:53 +01:00
Franck Nijhof
e43cee163f Fix typo in issue form 2021-01-30 21:36:13 +01:00
Franck Nijhof
da29855967 Enable issue form as default 2021-01-30 21:32:46 +01:00
Franck Nijhof
27407c1160 Tiny tweaks to issue form 2021-01-30 21:24:56 +01:00
Franck Nijhof
726bc6210b Tiny tweaks to issue form 2021-01-30 21:21:57 +01:00
Paulus Schoutsen
8a6469cfce newline 2021-01-30 21:17:36 +01:00
Franck Nijhof
63fb8307fb Add initial GitHub Issue Form (#45752) 2021-01-30 21:10:42 +01:00
Guliver
b00086ca1f Use fixed due date only for comparison in todoist (#43300) 2021-01-30 17:21:04 +01:00
J. Nick Koston
88c4031e57 Fix exception when a unifi config entry is ignored (#45735)
* Fix exception when a unifi config entry is ignored

* Fix existing test
2021-01-30 16:45:46 +01:00
Anders Melchiorsen
1fd3a86239 Upgrade pysonos to 0.0.40 (#45743) 2021-01-30 15:38:43 +01:00
Joakim Sørensen
0964393002 Bump awesomeversion from 21.1.3 to 21.1.6 (#45738) 2021-01-30 14:09:16 +01:00
Jens Østergaard Nielsen
b80571519b IHC service functions support for multiple IHC controllers (#44626)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-30 12:46:50 +01:00
J. Nick Koston
d81017f62e Use DataUpdateCoordinator for solaredge (#45734)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-30 09:56:51 +01:00
Aaron Bach
6bf59dbeab Add significant change support to binary_sensor (#45677)
* Add significant change support to binary_sensor
2021-01-30 09:04:35 +01:00
Aaron Bach
85e6bc581f Add significant change support to lock (#45726) 2021-01-30 09:03:54 +01:00
Nathan Tilley
07a4422a70 Implement person significant change (#45713) 2021-01-30 08:05:58 +01:00
Ryan Fleming
8a112721fa Fix feedback from UVC (#45630)
* Fixing feedback from UVC

* Couple of fixes
2021-01-30 08:00:27 +01:00
Paulus Schoutsen
87d40ff815 Do not cache frontend files during dev (#45698) 2021-01-30 00:05:06 +01:00
chpego
41e2e5043b Upgrade youtube_dl to version 2021.01.24.1 (#45724)
* Upgrade youtube_dl to version 2021.01.24.1

* Update requirements_all.txt
2021-01-29 23:14:17 +01:00
Pascal Reeb
f07ffee535 Advanced testing for Nuki config flow (#45721) 2021-01-29 17:01:25 -05:00
Patrik
adf8873e56 Remove ggravlingen from codeowners (#45723) 2021-01-29 17:00:27 -05:00
Aaron Bach
14c2053841 Bump simplisafe-python to 9.6.4 (#45716)
* Bump simplisafe-python to 9.6.4

* Fix imports
2021-01-29 13:30:21 -07:00
Philip Allgaier
84f506efb7 Set default position value for cover action (#45670)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-01-29 21:11:12 +01:00
Martin Hjelmare
ace5b58337 Fix ozw init tests (#45718) 2021-01-29 20:58:57 +01:00
Bram Kragten
df00f32dfc Updated frontend to 20210127.5 (#45714) 2021-01-29 20:12:03 +01:00
Paul Daumlechner
48e899ca3a Add reboot_gateway service to Velux (#43198) 2021-01-29 20:07:58 +01:00
cristian-vescan
0fe3d6ea81 Added Romanian voice to Google Cloud TTS (#45704)
See https://cloud.google.com/text-to-speech/docs/voices
2021-01-29 20:02:04 +01:00
Joakim Plate
d4f186078c During tests we can run with lowest rounds (#45710) 2021-01-29 19:57:14 +01:00
Kendell R
fbffea6b61 Add unit of measurement and icon for sleep score (#45705) 2021-01-29 19:22:44 +01:00
Robert Svensson
97fd05eb9f Allow new UniFi flows to update existing entries if host and site match (#45668) 2021-01-29 18:14:39 +01:00
Joakim Plate
af68d5fb41 Use a fully mocked credential (#45707) 2021-01-29 17:58:25 +01:00
Martin Hjelmare
bcc9add0b4 Fix mqtt check in ozw (#45709) 2021-01-29 17:57:39 +01:00
Paulus Schoutsen
b2789621bd Updates to dev container (#45706) 2021-01-29 17:47:54 +01:00
J. Nick Koston
5f9a1d105c Improve HomeKit Accessory Mode UX (#45402) 2021-01-29 09:57:13 -06:00
Aleksander Żarczyński
bc3610c8e1 Add patch method to rest switch component (#45663) 2021-01-29 16:03:00 +01:00
Pieter Mulder
c1586f97db Only show matching caldav events in calendar (#45701) 2021-01-29 15:25:01 +01:00
bsmappee
3f67f9e09c Bump pysmappee to 0.2.16 (#45699) 2021-01-29 15:01:55 +01:00
Pascal Vizeli
b8ff112920 Update docker base image 2021.01.1 (#45697) 2021-01-29 12:53:35 +01:00
GeoffAtHome
da713e206d Add override duration for genius hub switches (#45558) 2021-01-29 12:44:56 +01:00
Steven Looman
71c169c84f Address late review comments for upnp (#45696) 2021-01-29 12:27:57 +01:00
Pascal Reeb
ba55f1ff4b Add config flow for nuki (#45664)
* implemented config_flow for nuki component

* warn -> warning

* exception handling & config_flow tests

* gen_requirements_all

* Update config_flow.py

Co-authored-by: Pascal Vizeli <pascal.vizeli@syshack.ch>
2021-01-29 11:05:13 +01:00
Paulus Schoutsen
b74cbb2a59 Bump crpytography to 3.3.1 (#45691) 2021-01-29 10:33:44 +01:00
Steven Looman
25c5c6aec9 Refactoring upnp component (#43646) 2021-01-29 10:23:34 +01:00
aizerin
f080af698d Use pure rgb and allow to set only brightness for fibaro (#45673)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-29 09:36:52 +01:00
Paulus Schoutsen
fb884e3afd Update bootstrap script (#45692) 2021-01-29 09:19:32 +01:00
Paulus Schoutsen
6070c7c83a Bumped version to 2021.2.0b1 2021-01-29 09:13:06 +01:00
Bram Kragten
af0ca31d77 Update frontend to 20210127.3 (#45679) 2021-01-29 09:12:41 +01:00
Marcel van der Veldt
80e176aab3 Fix removing nodes in zwave_js integration (#45676) 2021-01-29 09:12:40 +01:00
J. Nick Koston
d1b677d0f9 Update httpcore to prevent unhandled exception on dropped connection (#45667)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-01-29 09:12:39 +01:00
J. Nick Koston
9e5bf6b9f6 Ensure history LazyState state value is always a string (#45644)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-29 09:12:39 +01:00
Erik Montnemery
385bdc4058 Bump hatasmota to 0.2.7 (#45625) 2021-01-29 09:12:38 +01:00
Fabian Affolter
4dbd2f2a6b Upgrade pyyaml to 5.4.1 (CVE-2020-14343) (#45624) 2021-01-29 09:12:37 +01:00
Paulus Schoutsen
800c7f84ff Include relative path in tts get url (#45623)
* Include relative path in tts get url

* Always cal get_url when requested
2021-01-29 09:12:36 +01:00
Marc Mueller
40b3ed1419 Add additional error handling for automation script run (#45613) 2021-01-29 09:12:35 +01:00
jjlawren
a05f839d3d Allow Plex playback using provided playqueue ID (#45580) 2021-01-29 09:12:34 +01:00
J. Nick Koston
c6105900f6 Update httpcore to prevent unhandled exception on dropped connection (#45667)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-01-29 09:11:24 +01:00
Tom Harris
aacf6bd100 Fix formatting IntEnum as hex in 3.8.x (#45686) 2021-01-29 09:07:18 +01:00
Dermot Duffy
c66a892233 Remove YAML support from Hyperion integration (#45690) 2021-01-29 09:05:00 +01:00
Aaron Bach
4f3b10d661 Stop Tile setup on invalid auth (#45683) 2021-01-29 08:57:36 +01:00
Martin
c7db2c35b7 Add vicare heat pump sensors (#41413) 2021-01-29 08:55:51 +01:00
Guido Schmitz
8b3156ea82 Use new fixtures in devolo Home Control tests (#45669) 2021-01-29 03:14:39 +01:00
Bram Kragten
eb370e9494 Update frontend to 20210127.3 (#45679) 2021-01-29 00:46:28 +01:00
Aaron Bach
1edae8cd48 Add last_lost_timestamp attribute to Tile (#45681) 2021-01-28 16:39:06 -07:00
Aaron Bach
73cce8e8e2 Replace strange "dict logic" in AirVisual pollutant level sensors (2 of 2) (#44903)
* Replace strange "dict logic" in AirVisual main pollutant sensor

* Move methods outside of class

* Cleanup
2021-01-28 16:32:21 -07:00
Julian Löhr
7bc8060122 Add reauthentication flow to fritzbox integration (#45587) 2021-01-29 00:08:59 +01:00
Marcel van der Veldt
8bcb4092df Fix removing nodes in zwave_js integration (#45676) 2021-01-28 23:45:36 +01:00
J. Nick Koston
e7ddaec468 Update esphome to use new fan entity model (#45590) 2021-01-28 17:25:08 +01:00
J. Nick Koston
d148f9aa85 Update comfoconnect to use new fan entity model (#45593) 2021-01-28 17:23:10 +01:00
jjlawren
d7e0391e03 Allow Plex playback using provided playqueue ID (#45580) 2021-01-28 17:21:31 +01:00
Guido Schmitz
8065ece0bd Add first set of tests to devolo Home Control integration (#42527)
* Add first two testcases

* Remove repetition

* Add first two testcases

* Remove repetition

* Add connection error test case

* add test_setup_entry_credentials_valid

* First attempt to use fixtures

* Use markers

* Optimize patch

* Optimize marker use

* Always patch mydevolo

* Add first two testcases

* Remove repetition

* Add first two testcases

* Remove repetition

* Add connection error test case

* add test_setup_entry_credentials_valid

* First attempt to use fixtures

* Use markers

* Optimize patch

* Optimize marker use

* Always patch mydevolo

* Add unload entry test case

* Catch up with reality

* Use unittest patch

* Use core interface to start tests

* Use entry state

* Consistently assert entry state

* Patch class instead of init

Co-authored-by: Markus Bong <2Fake1987@gmail.com>
2021-01-28 17:14:33 +01:00
J. Nick Koston
0da4034179 Ensure history LazyState state value is always a string (#45644)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-28 16:05:02 +01:00
J. Nick Koston
fdcf1fccf8 Update vesync to use new fan entity model (#45585) 2021-01-28 16:02:38 +01:00
Tobias Sauerwein
a4c8cb6f84 Unregister webhook if it can't be established successfully (#42791) 2021-01-28 15:30:10 +01:00
J. Nick Koston
f0e4510213 Update lutron_caseta to use new fan entity model (#45540) 2021-01-28 08:17:16 -06:00
Maciej Bieniek
92efe4f491 Bump gios library (#45639) 2021-01-28 13:28:39 +01:00
J. Nick Koston
3ff75eee53 Update homekit to use new fan entity model (#45549) 2021-01-28 12:38:18 +01:00
Fabian Affolter
f1c24939f3 Upgrade beautifulsoup4 to 4.9.3 (#45619) 2021-01-28 12:06:36 +01:00
Joakim Plate
38d2cacf7a Support blocking trusted network from new ip (#44630)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-28 12:06:20 +01:00
Fabian Affolter
e4a7692610 Upgrade pyyaml to 5.4.1 (CVE-2020-14343) (#45624) 2021-01-28 12:05:09 +01:00
J. Nick Koston
ab1d42950a Update homekit_controller to use new fan entity model (#45547) 2021-01-28 11:43:43 +01:00
J. Nick Koston
babfef829d Add support for percentage speeds and preset modes to template fan (#45478) 2021-01-28 10:44:36 +01:00
J. Nick Koston
22e44e4ba4 Update zwave to use new fan entity model (#45541)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-28 10:35:01 +01:00
J. Nick Koston
ee592350b3 Update isy994 to use new fan entity model (#45536) 2021-01-28 10:23:55 +01:00
J. Nick Koston
85e463d507 Update bond to use new fan entity model (#45534) 2021-01-28 10:23:12 +01:00
J. Nick Koston
0693d8a064 Update zwave_js to use new fan entity model (#45543) 2021-01-28 10:15:24 +01:00
J. Nick Koston
3896e81db7 Update smartthings to use new fan entity model (#45592) 2021-01-28 10:09:16 +01:00
J. Nick Koston
0441960ffd Update wemo to use new fan entity model (#45582) 2021-01-28 10:06:18 +01:00
J. Nick Koston
0ec068667f Update lutron_caseta manufacturer string (#45637)
Use the string that Lutron uses so it can be automatched
to the Lutron app via homekit
2021-01-28 09:40:48 +01:00
J. Nick Koston
e43d865112 Update ozw to use new fan entity model (#45577) 2021-01-28 09:40:10 +01:00
Paulus Schoutsen
92e084cee1 Include relative path in tts get url (#45623)
* Include relative path in tts get url

* Always cal get_url when requested
2021-01-28 09:33:18 +01:00
Marc Mueller
7673f57248 Add additional error handling for automation script run (#45613) 2021-01-28 09:26:41 +01:00
Erik Montnemery
5711d61b38 Bump hatasmota to 0.2.7 (#45625) 2021-01-28 08:55:22 +01:00
J. Nick Koston
068d1b5eb8 Separate fan speeds into percentages and presets modes (#45407)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: John Carr <john.carr@unrouted.co.uk>
2021-01-27 17:44:36 -06:00
Julian Engelhardt
3f948e027a Clean tcp tests (#41673)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-27 22:37:59 +01:00
Franck Nijhof
0338f5bccf Bump version to 2021.3.0dev0 (#45617) 2021-01-27 21:12:38 +01:00
Franck Nijhof
d3daf02ef3 Bumped version to 2021.2.0b0 2021-01-27 20:45:52 +01:00
Aaron Bach
b420c1ceb7 Fix Notion binary sensor bug due to API changes (#45616) 2021-01-27 20:41:03 +01:00
Marc Mueller
6aadf14bdd Add mobile_app notify ClientError handling (#45480) 2021-01-27 20:39:43 +01:00
Bram Kragten
73a04e653f Update frontend to 20210127.1 (#45612) 2021-01-27 19:32:44 +01:00
starkillerOG
ef3bdd1afc Bump motionblinds to 0.4.8 (#45609) 2021-01-27 18:01:00 +01:00
J. Nick Koston
a1662b3bb9 Restore the device id after deleting and re-adding an integration (#45348) 2021-01-27 17:10:57 +01:00
springstan
566058f701 Add config flow to fritzbox_callmonitor (#40736) 2021-01-27 16:53:45 +01:00
Tobias Sauerwein
f14c4412b7 Migrate RMV to use httpx (#42560) 2021-01-27 15:57:58 +01:00
Dennis Schroer
8d572af77a Add Huisbaasje integration (#42716)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-01-27 15:53:25 +01:00
joe248
b4af17e02d Add service to move camera to PTZ preset (#43083) 2021-01-27 15:43:36 +01:00
Marc Mueller
fb39185420 Add schema error handling to websocket_api (#45602)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-27 15:20:22 +01:00
linebp
211ef60d96 Convert media_player unittest tests to pytest style (#41950)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-27 14:50:01 +01:00
Shay Levy
5bc4db5ef9 Fix exception when last Shelly device is removed (#45476) 2021-01-27 08:15:56 -05:00
Robert Chmielowiec
80c2efa9f2 Add total energy, preheater and RMOT sensors to comfoconnect (#45373) 2021-01-27 08:10:58 -05:00
Shulyaka
eea50c8ccc Add device actions for Number (#44240) 2021-01-27 13:40:13 +01:00
Maciej Bieniek
5d955eb039 Change update interval tests in AccuWeather integration (#45562) 2021-01-27 13:28:29 +01:00
Marcel van der Veldt
32c6509d55 Remove unwanted brightness check in zwave_js light (#45597) 2021-01-27 13:07:02 +01:00
Thomas Hollstegge
78b057ce02 Make sure generated slugs are not empty (#43153) 2021-01-27 12:25:49 +01:00
CtrlZvi
1433cdaa12 Prefer shorter keys for intent matching (#43672)
When using fuzzy matching to match entity names for intents, whichever
entity is first is preferred in the case of equal matches. This leads
to situations where entities with similar names (such as entities named
for their area and then specific area location) may be used when the
whole area is wanted.

I ran into this with the my Phillips Hue lights. I have each individual
light named such that its room is the first part of the name, and its
location within the room after. So my living room has:
Living Room West
Living Room Northwest
Living Room North
Living Room Northeast

I then have a group for the whole room:
Living Room

Because the group is the last of the entities, trying to adjust the
whole room only activates one light, because all of the lights match
equally well.

By preferring the shortest of equal matches, we prefer keys that have
the least amount of extra information, causing "Living Room" to match
the group instead of an individual light.
2021-01-27 12:16:19 +01:00
Aaron Bach
3841f0e42d Re-architect Tile integration with new pytile (#43071) 2021-01-27 12:06:09 +01:00
Franck Nijhof
c8ad06e58a Merge branch 'master' into dev 2021-01-27 12:00:43 +01:00
Lars Marowsky-Brée
34194da1b6 New methods for input_select component (#42968)
This adds a `cycle` attribute to select_previous/next, and
select_first and select_last services.

This is quite useful for streamlining using input_select via
automations, such as when they represent a list of states to step
through; if the first option is the dimmest and the last the brightest,
one may not want to accidentally cycle from the first to the last, for
example.

Similarly, being able to directly select the first or last removes
adjustment in related automations.
2021-01-27 11:17:59 +01:00
Martin Hjelmare
122a4e03f8 Bump zwave-js-server-python to 0.14.1 (#45598) 2021-01-27 11:17:47 +01:00
Josias Montag
fb2db34334 Fix home connect lights setting color (#45470) 2021-01-27 11:02:32 +01:00
Ryan Fleming
459236fcdd Camera Status and Motion record status (#44936) 2021-01-27 10:50:44 +01:00
Jim Ekman
67b309394f Esphome fan direction (#44495) 2021-01-27 10:40:33 +01:00
Adrian Suwała
e12e2377af Rewrite hddtemp unittest tests to pytest (#42513) 2021-01-27 10:24:04 +01:00
Franck Nijhof
26e266181d Explicitly return None in Velux covers (#45596) 2021-01-27 10:17:26 +01:00
Berni Moses
491e66793e Add check and remove temporary fix for lg soundbar eq and source list (#38798) 2021-01-27 10:17:04 +01:00
Felipe Martins Diel
c225f4b4ea Implement remote.delete_command in the Broadlink integration (#44041) 2021-01-27 10:14:11 +01:00
Yannik Ache Eicher
d99118f6ba Optimized state handling of Panasonic Viera TVs (#42913) 2021-01-27 10:07:33 +01:00
Dermot Duffy
890eaf840c Add advanced Hyperion entities (#45410)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-27 09:35:13 +01:00
Thomas Lovén
06ade6129c Add selectors for text and arbitrary objects (#45112)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-01-27 09:20:19 +01:00
Philip Allgaier
6800f4b6fd Add temperature step size for generic_thermostat (#41972) 2021-01-27 09:12:24 +01:00
Martin Hjelmare
f387e833c3 Add zwave_js add-on config flow support (#45552) 2021-01-27 08:56:16 +01:00
Marc Mueller
c805baf88c Refactor slack tests (#45561)
* Refactor slack tests

* Changes

* Let service register for tests
2021-01-27 04:32:14 +01:00
J. Nick Koston
25f411ef6e Add support for Pico and Shade remotes to Lutron Caseta (#45315) 2021-01-26 16:32:08 -06:00
Matej Drobnič
b533b91b10 Add reminder support to todoist.new_task service (#44142)
* add reminder support to todoist.new_task service

* fix time support on reminder_date

* fix time support on todoist due_date
2021-01-26 23:26:29 +01:00
Chris Talkington
14785660b0 Avoid proxied Roku images during internal requests (#43547) 2021-01-26 23:21:25 +01:00
Paul Daumlechner
fb527814f9 Add tilt functionality to Velux covers (#43669) 2021-01-26 23:19:08 +01:00
Yuval Aboulafia
73d2ae76a9 Round Mold Indicator attributes (#43622) 2021-01-26 23:14:53 +01:00
Sami Heino
ee8d88e85c Add support for EDS0068 onewire sensor (#44029)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2021-01-26 23:07:04 +01:00
ollo69
08e7247201 Remove tuya/climate precision property override (#44148) 2021-01-26 22:49:42 +01:00
jpcornil-git
74a44e03fa Extend add_update_listener support to bound methods (#44238) 2021-01-26 22:19:10 +01:00
guillempages
67fcdc5a9c Do not reset ble tracker adapter to read battery (#44229)
Do not reset the adapter to read the battery status, to avoid issues
in devices installations without sudo
2021-01-26 15:17:46 -06:00
Paulus Schoutsen
352d0870e3 Light significant changes + sensor tweaks (#45583) 2021-01-26 22:11:06 +01:00
Dror Eiger
74efe78d0a Add device metadata for Google Assistant (#45507)
* Add device metadata for Google Assistant

* Increase test coverage

* Refactor fetching the device and entity entries.
2021-01-26 21:59:43 +01:00
Paulus Schoutsen
712a5a098d Add significant change filtering to Google (#45566) 2021-01-26 21:45:09 +01:00
Dermot Duffy
568962552b Remove hyperion entry from registry only when instances are fully removed (#44488) 2021-01-26 21:39:02 +01:00
Robert Svensson
7a39a86eb9 Add gen3 Hue remote to deCONZ device trigger (#45581) 2021-01-26 21:36:12 +01:00
Jc2k
3b0a440770 Add support for homekit_controller secondary entities like power usage (#44013) 2021-01-26 13:45:01 -06:00
Franck Nijhof
f53a83e084 Tweak stale policies (#45568)
* Tweak stale policies

* Remove stale comments
2021-01-26 19:35:53 +01:00
Franck Nijhof
7816eccee7 Upgrade coverage to 5.4 (#45570) 2021-01-26 19:20:42 +01:00
Franck Nijhof
21d23a6f94 Upgrade pytest to 6.2.2 (#45572) 2021-01-26 19:20:28 +01:00
J. Nick Koston
56253a6245 Bump httplib2 in google and remember_the_milk (#45578)
Fixes CVE-2020-11078
2021-01-26 18:51:20 +01:00
kpine
daddb76e1d Fix zwave_js Color Switch Device Type discovery for RGB dimmers (#45571) 2021-01-26 18:39:56 +01:00
Franck Nijhof
52c56fdac7 Upgrade pillow to 8.1.0 (#45574) 2021-01-26 18:12:02 +01:00
Alexei Chetroi
9ae4818a23 Update ZHA dependencies (#45569) 2021-01-26 11:54:05 -05:00
jjlawren
76be67fa64 Bump plexapi to 4.3.0 (#45567) 2021-01-26 17:25:45 +01:00
Robert Svensson
26764a805b Don't parse previous messages when UniFi connection state change to available (#45544)
* Don't parse previous messages when connection state change to available

* Disable pylint for arguments-differ W0221 message
2021-01-26 16:41:28 +01:00
radovanbauer
baab9b9a81 Added command templates for the mqtt climate component. (#44976)
This allows integrating with devices which require more complex payloads to be posted when updating their values.

Old feature request: https://github.com/home-assistant/core/issues/11496
There are numerous posts requesting this feature, example: https://community.home-assistant.io/t/need-help-with-value-template-for-mqtt-hvac/73395/68https://community.home-assistant.io/t/need-help-with-value-template-for-mqtt-hvac/73395/68

Command templates have been added for the following:
- fan_mode
- hold
- mode
- swing_mode
- temperature
- temperature high/low

This doesn't add templates for aux, away mode, power since these already accept custom payload_on/off (although they all share the same payload). It should be straightforward to add templates for them as well if needed.
2021-01-26 16:12:33 +01:00
Joakim Sørensen
b1c2cde40b Changes to filename and path validation (#45529)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-01-26 15:53:21 +01:00
Paulus Schoutsen
4739e8a207 Limit data sending to Alexa to significant changes (#45563) 2021-01-26 15:48:35 +01:00
Fabian Affolter
893406c834 Upgrade shodan to 1.25.0 (#45560) 2021-01-26 15:44:51 +01:00
Paulus Schoutsen
d082be787f Add "significant change" base (#45555) 2021-01-26 14:13:27 +01:00
Maikel Punie
38361b134a Bump python-velbus version to 2.1.2 (#45553) 2021-01-26 12:20:03 +01:00
popboxgun
ab710f2154 Add support for Discord embed in messages (#44986)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2021-01-26 11:39:48 +01:00
starkillerOG
c16fd0a1ac Set hyperion icon to lightbulb when off (#45351)
Co-authored-by: Dermot Duffy <dermot.duffy@gmail.com>
2021-01-26 10:46:54 +01:00
starkillerOG
3647d549b0 Fix Hyperion brightness setting (#45335) 2021-01-26 10:45:41 +01:00
Paulus Schoutsen
b9a525a9a7 Add an HTTP view to dump the Z-Wave JS state (#45452)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2021-01-26 10:27:20 +01:00
William Scanlon
260d9f8e16 Upgrade econet to use new API (#44427)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-26 09:18:20 +01:00
north3221
f2a8ccdbae Add tado service set temperature offset (#45014) 2021-01-26 09:11:29 +01:00
Robert Svensson
622906965d Add better message to deCONZ event logbook when information is available (#45545)
* Add better message when information is available

* Fix pylint
2021-01-26 08:15:39 +01:00
Greg Dowling
d110d42913 Fix Vera race condition on start (#45535) 2021-01-26 08:15:07 +01:00
Marc Mueller
ad677b9d41 Improve Slack notify component (#45479)
* Add typing information

* Small improvments

* Use %r for exceptions
* Added exception handlers for aiohttp.ClientError
* Added testcase

* Changes after review

* Bugfixes
2021-01-25 17:03:12 -07:00
Tobias Sauerwein
ec47df4880 Clean up unnecessary method from Netatmo code (#45546) 2021-01-26 01:02:48 +01:00
Franck Nijhof
25469f1a07 Increase stalebot operations per run (#45548) 2021-01-26 00:29:32 +01:00
Marcel van der Veldt
11009b99bd Improve zwave_js light targetvalue vs currentValue selection (#45477) 2021-01-25 22:09:12 +01:00
Daniel Hjelseth Høyer
094844f834 Tibber, fix spreading requests (#45533)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-01-25 17:48:42 +01:00
Greg Dowling
3de2c900f3 Fix Roon play_media (#45532) 2021-01-25 17:44:18 +01:00
Ian Tewksbury
666a94a8e1 Add zwave_js ZWavePropertyBinarySensory (#45504) 2021-01-25 15:50:21 +01:00
Leonardo Figueiro
d174c8265e Add WiLight Fan (#39541)
* Add WiLight Fan

Add fan to WiLigt integration

* Updated fan.py and test_fan.py

* Creating new fan test

* Update homeassistant/components/wilight/__init__.py

OK!
Done!

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

* Update homeassistant/components/wilight/fan.py

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

* Update homeassistant/components/wilight/fan.py

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

* Update homeassistant/components/wilight/fan.py

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

* As MartinHjelmare requested

* Update fan.py

* Update tests/components/wilight/test_fan.py

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

* Update tests/components/wilight/test_fan.py

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

* Update test_fan.py

As Martin Hjelmare suggested

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-25 14:03:11 +01:00
Joakim Sørensen
edfb8c3423 Add version to hassfest for custom integrations (#45523)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-01-25 13:31:14 +01:00
Xavier Decuyper
1c0a74f18a Fix Tado fallback modes (overlay) (#44665) 2021-01-25 13:23:01 +01:00
SukramJ
104107dd95 Bump dependency for HomematicIP Cloud to 0.13.1 (#45475) 2021-01-25 13:19:11 +01:00
Paulus Schoutsen
bf8d17f1b5 Better wait for Z-Wave to be initialized (#45520) 2021-01-25 13:12:58 +01:00
Paulus Schoutsen
a7e8c62204 Bump Z-Wave JS Server Python to 0.13 (#45524) 2021-01-25 12:31:14 +01:00
dependabot[bot]
c61331e8c5 Bump actions/stale from v3.0.14 to v3.0.15 (#45516)
Bumps [actions/stale](https://github.com/actions/stale) from v3.0.14 to v3.0.15.
- [Release notes](https://github.com/actions/stale/releases)
- [Commits](https://github.com/actions/stale/compare/v3.0.14...86561461b92875de77a8b2d2e75f004c826e8f45)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-01-25 09:39:06 +01:00
On Freund
47e34bb129 Use image proxy in volumio media browser (#43819)
* Use image proxy in volumio media browser

* Add thumbnail cache

* Clear thumbnail cache on browse

* Use built-in hash instead of hashlib
2021-01-24 18:16:10 -06:00
Matthias Alphart
616328c7c4 Update xknx to 0.16.2 (#45511) 2021-01-25 00:51:38 +01:00
Vinny Furia
34f701a69b Fix for radiotherm component stall (#45482) 2021-01-24 17:01:41 -06:00
Eric Severance
12e31b9571 Bump pyWeMo to 0.6.1 (#45501) 2021-01-24 19:16:12 +01:00
Xiaonan Shen
dbaca51bb3 Rewrite dyson climate tests (#45493)
* Rewrite dyson climate tests

* Cleanup
2021-01-24 17:37:48 +01:00
Robert Svensson
b69d9860b6 Improve Axis tests following late review in SSDP PR (#45489) 2021-01-24 14:14:49 +01:00
Josef Schlehofer
4bb6911b76 Upgrade youtube_dl to version 2021.01.16 (#45484) 2021-01-24 10:16:46 +01:00
J. Nick Koston
47c0adb312 Remove YAML support from tado (#45384) 2021-01-24 01:33:30 +01:00
Raman Gupta
c2900ff888 Add support for zwave_js lock services (#45451) 2021-01-23 18:21:31 -05:00
Robert Svensson
1e7e5220a3 Add SSDP discovery support to Axis integration (#45474)
* Add SSDP discovery support to Axis integration

* Remove unnecessary f-string

* Remove the last of the f-string...
2021-01-23 23:51:49 +01:00
Xiaonan Shen
59b0a4d060 Rewrite dyson air quality tests (#45466) 2021-01-23 14:54:58 -05:00
Erik Montnemery
0e068a5f39 Truncate MQTT payload in debug messages to 8kB (#45465) 2021-01-23 14:52:43 -05:00
Paulus Schoutsen
eb339b9793 Fix flaky SRP_Energy test (#45471) 2021-01-23 19:53:45 +01:00
Paulus Schoutsen
6715eae3d7 Merge pull request #45472 from home-assistant/rc 2021-01-23 19:08:21 +01:00
Paulus Schoutsen
db7c260ffb Bumped version to 2021.1.5 2021-01-23 18:37:07 +01:00
Paulus Schoutsen
7abdad4a99 Avoid misuse sanitize_path, clarify docs (#45469) 2021-01-23 18:37:01 +01:00
Tobias Sauerwein
f7df00bbbd Bump pyatmo to v4.2.2 (#45386) 2021-01-23 18:37:00 +01:00
Santobert
09f5c7f4c5 Bump pybotvac to 0.0.20 (#45367) 2021-01-23 18:36:59 +01:00
Martin Weinelt
3b71ac2ec9 Update python-mpd2 to 3.0.3 (#45141)
Fixes: #44931
2021-01-23 18:36:58 +01:00
Paulus Schoutsen
0930aae208 Avoid misuse sanitize_path, clarify docs (#45469) 2021-01-23 18:28:57 +01:00
Erik Montnemery
f86beed7b0 Subscribe only to valid MQTT discovery topics (#45456) 2021-01-23 08:51:25 -05:00
J. Nick Koston
a0b906005d Remove YAML support from nuheat (#45380) 2021-01-23 06:27:32 +01:00
Robert Svensson
e92c4c99d5 Step Axis integration to platinum score on Integration Quality Scale (#45442) 2021-01-23 06:25:01 +01:00
J. Nick Koston
954ad854fb Remove the ability for mqtt to set speeds that are not in the speed_list (#45445) 2021-01-23 06:24:06 +01:00
Anders Melchiorsen
011d5208fd Upgrade aiolifx to 0.6.9 (#45448) 2021-01-23 06:21:57 +01:00
Dermot Duffy
e40f0bf429 Disconnect Hyperion client in error conditions (#45411) 2021-01-23 06:21:38 +01:00
Alexei Chetroi
daf24dc508 Always apply default light profiles, unless a profile is given (#45450) 2021-01-23 06:20:53 +01:00
J. Nick Koston
431b143eec Add a one touch pairing config flow for lutron caseta (#45136)
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2021-01-22 17:48:06 -06:00
Robert Svensson
03fb73c0ae Option to select what video source Axis camera should use (#45268)
* Fully working proposal of config option to select what video source camera entity should use

* Bump dependency to v43
Reflect dependency changes in how image sources is now a dict

* Fix bdracos comment
2021-01-23 00:15:58 +01:00
Chris
68e7ecb74b Add zwave-js fan platform (#45439)
* Add zwave-js fan platform

* Update remaining tests

* Missing awaits, tests fixed

* Fix typing

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-23 00:11:32 +01:00
Robert Svensson
22a6e55e70 Base deCONZ group supported features on the sum of all its lights (#45440) 2021-01-22 23:39:34 +01:00
Robert Svensson
57fa7f926a Introduce reauth flow to deCONZ (#45443) 2021-01-22 23:37:16 +01:00
Robert Svensson
18c7ae9a8b Fix hs_color crashing when activating scenes in deCONZ on color_temp lights (#45159) 2021-01-22 22:40:22 +01:00
Robert Svensson
aaf4cd4a25 Basic logbook support for deCONZ events (#45400)
* Basic logbook support

* Improve formulation of message

* Improve typing
2021-01-22 22:39:11 +01:00
Charles Garwood
6813454821 Bump zwave-js-server-python to 0.12.0 (#45438) 2021-01-22 13:32:52 -05:00
Simone Chemelli
86cd7911de Clarify ConfigEntryNotReady log (#45425)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Charles Garwood <cgarwood@gmail.com>
2021-01-22 12:13:23 -05:00
Chris
198b875a6f Add cover platform to zwave js (#45193) 2021-01-22 11:51:39 -05:00
Xiaonan Shen
7e8d0a263c Rewrite dyson init test (#45409) 2021-01-22 10:27:43 -05:00
Matthias Alphart
4aceb0dd27 Add KNX service event_register (#45248) 2021-01-22 15:27:51 +01:00
Philip Allgaier
89fc92f68a Slightly improve error message in case of duplicate entity IDs (#45424) 2021-01-22 09:16:13 -05:00
Fabian Affolter
2bc59c1d8e Upgrade sendgrid to 6.5.0 (#45412) 2021-01-22 07:35:48 -05:00
Pascal Vizeli
8c573ae29c Bump hass-nabucasa 0.41.0 (#45422) 2021-01-22 07:30:49 -05:00
Fabian Affolter
30ed998d83 Upgrade pylast to 4.1.0 (#45413) 2021-01-22 10:16:20 +01:00
Fabian Affolter
148bc6081f Upgrade TwitterAPI to 2.6.3 (#45415) 2021-01-22 10:01:20 +01:00
Raman Gupta
8f7a4a68b2 Fix zwave_js climate entity temperature unit (#45377) 2021-01-22 09:23:16 +01:00
J. Nick Koston
38d4af1a6e Remove YAML support from powerwall (#45381) 2021-01-21 21:59:33 -05:00
Erik Montnemery
59f178ab9e Bump hatasmota to 0.2.6 (#45403) 2021-01-21 21:57:46 -05:00
Shay Levy
f117ddc6fa Stop update_coordinator schedule refresh when HA is stopping (#45338)
* Stop update_coordinator schedule refresh when HA is stopping

* Add unittests

* Fix event type
2021-01-22 00:23:50 +01:00
J. Nick Koston
3029a95410 Remove YAML support from rachio (#45383) 2021-01-21 15:07:47 -05:00
J. Nick Koston
d733292982 Remove YAML support from hunterdouglas_powerview (#45376) 2021-01-21 13:51:08 -05:00
J. Nick Koston
db83aea1df Remove YAML support from nexia (#45379) 2021-01-21 13:45:52 -05:00
Xiaonan Shen
5de8639798 Rewrite dyson sensor test (#45382) 2021-01-21 13:43:52 -05:00
J. Nick Koston
b68c287ff1 Add SSDP discovery to unifi (#45364) 2021-01-21 11:03:54 -06:00
Ville Skyttä
ded242a8fe Treat Huawei LTE response error code -1 as apparently unsupported (#45304) 2021-01-21 14:34:24 +02:00
Robert Svensson
b601e7e497 Introduce reauthentication flow to Axis integration (#45307) 2021-01-21 12:56:04 +01:00
Esben Damgaard
25adc6dd4f Don't update systemmonitor static boot time timestamp (#45165) 2021-01-21 12:35:37 +01:00
jjlawren
1f66457a34 Separate Plex/Sonos cross-integration tests (#45370) 2021-01-21 11:22:19 +01:00
Franck Nijhof
16843d9ec7 Revert "Update azure-pipelines-ci.yml to enable black mode in isort" (#45390)
This reverts commit 7a81ff55bc.
2021-01-21 11:01:22 +01:00
Franck Nijhof
03711b1d97 Revert "Update .pre-commit-config.yaml to prevent loops between isort and black" (#45391)
This reverts commit c03b4d8aee.
2021-01-21 11:00:09 +01:00
Jérôme W
fd363f9c3a Format SNMP sensor data which are not strings/counters (#44823) 2021-01-21 09:41:09 +01:00
Dermot Duffy
30622b5575 Bump required hyperion-py version (#45385) 2021-01-21 09:32:16 +01:00
J. Nick Koston
bb1224d06f Remove YAML support from myq (#45375) 2021-01-21 09:27:04 +01:00
Xiaonan Shen
daa9449f18 Fix yeelight brightness in music mode (#45358) 2021-01-21 08:54:24 +01:00
Tobias Sauerwein
e97448a201 Bump pyatmo to v4.2.2 (#45386) 2021-01-21 08:30:28 +01:00
J. Nick Koston
e8cda598ac Fix memory leak in dhcp integration (#45378)
* Fix memory leak in dhcp integration

Passing the L2socket to AsyncSniffer caused a memory
leak on some systems. To ensure we can create a socket,
we do a test creation before starting AsyncSniffer
since the sniffer will create it in another thread
and we cannot see any permission error otherwise.

* Update tests

* space

* do not store packets
2021-01-21 08:26:58 +01:00
Hans Oischinger
2925474a5d Bump pyVicare to 0.2.5 (#45301)
Also removes the power sensor that is no more supported

Full diff between 0.2.0 and 0.2.5:
b602c1670e...b443a4df75
2021-01-21 08:12:31 +01:00
Mick Vleeshouwer
9b14586568 Add DemoCover with only tilt controls (#45228)
* Add DemoCover with only tilt controls

* Add default tilt position to Pergola Roof

* Apply githooks (isort)

* Add new demo device to Google Assistant fixtures
2021-01-20 19:11:55 -06:00
Manuel Durán
7a81ff55bc Prevent isort from modifying files formatted with black and causing pipeline to fail (#45371)
Prevent isort from modifying files formatted with black and causing pipeline to fail
2021-01-20 19:08:18 -06:00
J. Nick Koston
536e835b39 Switch frequently used unifi controller properties to attributes (#45365) 2021-01-20 16:58:02 -06:00
J. Nick Koston
243014bff1 Fix test_wait_template_with_utcnow (#45356) 2021-01-20 23:56:00 +01:00
Xiaonan Shen
96448c6778 Change Dyson PureCoolLink fan speeds to adhere the standard (#45331) 2021-01-20 16:27:16 -05:00
J. Nick Koston
a7741be9bb Wait for all triggers when one fails to attach (#45361) 2021-01-20 22:13:21 +01:00
Robert Svensson
da4404e8cf Introduce reauthentication flow to UniFi integration (#45360)
* Improve site selection

* Reauth flow and tests
Add **kwargs to mock_aiohttp_client create_session to support inputting verify_ssl and cookie_jar

* Update homeassistant/components/unifi/config_flow.py

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

* Minor improvements

* Improve coverage

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-01-20 22:10:40 +01:00
Aaron Bach
7ff02fe8d4 Replace strange "dict logic" in AirVisual pollutant level sensors (1 of 2) (#44868) 2021-01-20 15:24:56 -05:00
Maciej Bieniek
14f5eb7305 Increase update interval in AccuWeather integration (#44984) 2021-01-20 15:17:53 -05:00
Xiaonan Shen
e46f1c0a10 Remove yeelight init dispatcher on unloading (#45359) 2021-01-20 15:10:01 -05:00
Santobert
ab62a4ce39 Bump pybotvac to 0.0.20 (#45367) 2021-01-20 15:08:44 -05:00
Charles Garwood
0f5a3c4359 Add default URL to zwave_js config flow (#45366) 2021-01-20 15:03:15 -05:00
Xiaonan Shen
7a01d33814 Add empty password support to pi-hole (#37958) 2021-01-20 16:40:23 +01:00
Allen Porter
bf0e012d1e Repair stream test_recorder.py and mark not flaky (#45054)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-20 14:44:24 +01:00
Charles Garwood
d284c6369e Add permanent_hold attribute to Honeywell climate (#45341) 2021-01-20 08:34:14 -05:00
Manuel Durán
c03b4d8aee Update .pre-commit-config.yaml to prevent loops between isort and black (#45321)
The pre-commit hook gets stuck in a file formatting loop where black and isort modify each other results. According to the isort webpage, the option --profile black has to be used to enhance compatibility. This has been run successfully in my local and has solved the loop.

See:
https://github.com/home-assistant/core/issues/45318
https://github.com/home-assistant/core/pull/45314
2021-01-20 08:01:13 -05:00
David F. Mulcahey
ef8ee38274 bump libs for zha (#45345) 2021-01-19 21:19:46 -05:00
J. Nick Koston
3ae527c158 Switch dhcp to use async sniff for faster shutdown (#45339)
* Switch dhcp to use async sniff for faster shutdown

* Do not actually start the thread since we do not know when it will finish starting
2021-01-19 20:49:49 +01:00
Martin Hjelmare
a9a0f8938f Move device tracker scanner attributes to ScannerEntity (#45312) 2021-01-19 11:04:08 -06:00
Philip Allgaier
52cfc06e12 Replace outdated / closed URL for reporting HA startup blocks (#45334) 2021-01-19 11:01:51 -05:00
Charles Garwood
c1addde6f9 Add node_status websocket API command to zwave_js (#45325) 2021-01-19 16:41:24 +01:00
kpine
d7a0f1e467 Include config entry id in zwave_js signal names (#45282) 2021-01-19 16:40:01 +01:00
Paulus Schoutsen
f1646f4ecc Disable pytest enabled in vscode default settings (#45317) 2021-01-19 10:25:02 +01:00
Xiaonan Shen
c929fbeea3 Rewrite dyson fan test (#45295)
* Improve device fixture to take parameter

* Remove unused code in dyson/fan

* Rewrite dyson fan test
2021-01-19 10:12:38 +01:00
Robert Svensson
07c3981de7 Use methods available to verify link local address (#45309) 2021-01-19 09:15:41 +01:00
Erik Montnemery
852136ccfe Bump hatasmota to 0.2.5 (#45297) 2021-01-18 22:26:33 +01:00
Ville Skyttä
94dbcc9d2b Generics and other type hint improvements (#45250) 2021-01-18 22:23:25 +01:00
Alan Tse
4928476abe Allow notify services to update existing targets (#45283) 2021-01-18 21:42:20 +01:00
Matthias Alphart
8d3564e275 Update xknx to 0.16.1 (#45247) 2021-01-18 10:15:28 -05:00
Charles Garwood
8de0b7b948 Add add & remove node commands to zwave_js websocket api (#45232) 2021-01-18 10:08:52 -05:00
Greg Dowling
adab9adbce Pyroon discovery (#44811)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-01-18 10:00:30 -05:00
Xiaonan Shen
5ee4479151 Rewrite dyson vacuum test (#45265) 2021-01-18 09:56:54 -05:00
J. Nick Koston
c621c0fa5d Remove YAML support from nut (#45276) 2021-01-18 15:16:42 +01:00
Robert Svensson
8e0addd216 Fix error with Axis light events without representation in light control (#45277) 2021-01-18 15:00:27 +01:00
gregod
cf9ea6f82d Sanitize user-agent in wrong_login message (#45251) 2021-01-18 09:21:30 +01:00
Raman Gupta
b2f914823d Add climate platform to zwave_js (#45177)
* add zwave_js support for climate

* fix

* add fixture

* rename fixture

* fix variable name error

* add tests

* fix tests and handle set_temp properly based on unit

* update call being tested

* fix tests

* improve coverage

* fix docstring

* address review comments

* fix test

* update enum class name

* bump zwave-js-server-python version and assume primary_value is always set

* add additional coverage

* fix docstrings and move populating modes/presets into initialization

* attempt to address comments

* improve comment

* move mode value into a variable so its easier to iterate in the future

* dont assume mode as a discovery point

* assume all values are available when node is ready

* fix order of operations

* switch to valueerror

* use primary value

* readd property and type to discovery schema
2021-01-18 03:45:06 +01:00
Greg Dowling
a1b0d6baad Improve Roon media player play_media (#45221)
* Use revised play_media api.

* Move split path function to library.
2021-01-17 21:00:30 +01:00
J. Nick Koston
ae3d038baa Update gogogate2 to be async (#42066) 2021-01-17 11:38:30 -06:00
jlvaillant
a50fba4e0b more graceful shutdown in the presence of a proxy_stream (#45246) 2021-01-17 17:10:22 +01:00
Andre Lengwenus
21b9b6b2c8 Bump pypck to 0.7.9 (#45267) 2021-01-17 15:56:21 +01:00
Daniel Hjelseth Høyer
34a9b93d41 Update Tibber library, pyTibber==0.16.1 (#45263)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-01-17 14:42:52 +01:00
Xiaonan Shen
dcd17530cd Add device classes to Dyson sensors (#45264) 2021-01-17 14:41:32 +01:00
Wim Fournier
e828e18156 Add preheater current power to comfoconnect (#44083)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-01-17 12:30:38 +01:00
J. Nick Koston
fbc98b1291 Make DHCP discovery ignore self assigned ip addresses (#45256) 2021-01-17 10:35:02 +01:00
Xiaonan Shen
a42d43d054 Improve dyson code (#45172)
* Improve air_quality

* Improve climate

* Improve sensor

* Improve vacuum

* Improve fan

* Fix pylint

* Improve on_message

* Change unique ID back

* Remove unused attribute

* Remove redundant current_humidity

* Merge current_temperature

* Rename fan device to fan entity

* Fix filter life sensors

* Remove unneeded context switch

* Remove entity_type

* Fix pylint

* Add comment on humidity check
2021-01-17 10:24:26 +01:00
J. Nick Koston
28a611f3da Use standard device tracker attributes for "ip" and "mac" in Mikrotik (#45255)
* Mikrotik now uses the device_tracker standard attributes for "ip" and "mac"

The "mac_address" and "ip_address" attributes have been removed.

* Update homeassistant/components/mikrotik/device_tracker.py
2021-01-17 10:18:07 +01:00
J. Nick Koston
41e7d960ee Use dispatcher for unifi heartbeat tracking (#45211)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-17 03:10:52 +01:00
J. Nick Koston
b71a9b5e28 Prefill the ip address for powerwall discovery (#45209) 2021-01-17 03:09:04 +01:00
J. Nick Koston
11cbf1152d Add dhcp discovery properties to mikrotik (#45205) 2021-01-17 00:26:32 +01:00
Diogo Gomes
1454349813 Re-add support for input_number as source of filter integration (#45245) 2021-01-16 23:57:32 +01:00
Allen Porter
bf4b4623aa Bump google-nest-sdm to 0.2.9 (#45244)
This library contains user experience for the case where oauth
token cannot be refreshed on startup, which regressed after
https://github.com/home-assistant/core/pull/44686
2021-01-16 23:39:33 +01:00
Klaudiusz Staniek
d4b3cf9c47 Fix the use of muted volume if not previously set in mpd (#45018) 2021-01-16 22:40:59 +01:00
Paulus Schoutsen
2de0b2aeca Merge pull request #45242 from home-assistant/rc 2021-01-16 22:35:52 +01:00
Sean Dague
278c5193a6 Bump mychevy version to 2.1.0 (#44810) 2021-01-16 22:25:41 +01:00
Paulus Schoutsen
34b90fd925 Bumped version to 2021.1.4 2021-01-16 22:05:42 +01:00
Alexei Chetroi
120304f235 Bump up ZHA dependency (#45230) 2021-01-16 22:05:08 +01:00
Philip Allgaier
a66528c640 Fix all forecast datetime values in OpenWeatherMap (#45202) 2021-01-16 22:02:58 +01:00
Jacob Southard
2d4576ddcf Fix HomeKit climate integration for devices with a single set point in Heat_Cool mode. (#45065)
* Check supported flags in auto mode, and add tests.

* Fix test description.
2021-01-16 22:02:57 +01:00
Sjack-Sch
7d2fd4bce5 Fix Home Connect ambient color (#45038) 2021-01-16 22:02:56 +01:00
Martin Weinelt
cecb711fe5 Update python-mpd2 to 3.0.3 (#45141)
Fixes: #44931
2021-01-16 20:45:54 +01:00
J. Nick Koston
3a3e5e636b Switch somfy to zeroconf discovery (#45158) 2021-01-16 20:41:41 +01:00
Robert Chmielowiec
fa8ae77a6f Bump pycomfoconnect to 0.4 (#45201) 2021-01-16 20:29:21 +01:00
Penny Wood
c8990e373d Add Homekit discovery for iZone (#45223) 2021-01-16 20:22:03 +01:00
Robert Svensson
d80ef6c5fb Create shortcuts for config entry parameters in Axis device (#45233) 2021-01-16 19:54:48 +01:00
Alexei Chetroi
0b9687f7bd Bump up ZHA dependency (#45230) 2021-01-16 13:43:35 -05:00
Martin Hjelmare
e72e66ae6f Bump zwave-js-server-python to 0.11.0 (#45231) 2021-01-16 19:26:15 +01:00
Robert Svensson
3cc45697cb Prettier Zeroconf discovery name for Axis devices (#45216)
* Change zeroconf name to be based of prettier name rather than hostname to help user understand what device is discovered
Have a full zeroconf discovery message in tests
Clean up unusued globals

* Use non-formatted serial number for config entry title as well
2021-01-16 18:59:57 +01:00
Shay Levy
8151721fbc Move switcher_kis services to entity services (#45204) 2021-01-16 18:18:40 +01:00
Raman Gupta
562d30319b Add lock platform to zwave_js (#45175)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-16 11:43:25 -05:00
Franck Nijhof
b6148bbbe7 Add DHCP discovery to Toon (#45222) 2021-01-16 15:20:56 +01:00
J. Nick Koston
74082194a6 Add dhcp discovery to squeezebox (#45210) 2021-01-16 14:25:15 +01:00
Penny Wood
7c7b357357 Handle older Izone controller (#45218)
* Updated to new library
* Fixed config flow exception
2021-01-16 21:24:00 +08:00
Robert Svensson
2044b33eb6 Add DHCP discovery support to Axis integration (#45167) 2021-01-16 11:03:56 +01:00
J. Nick Koston
233f923cd7 Add support for discovering individual roombas (#45200)
* Add support for discovering individual roombas

* add missing translation string

* Update homeassistant/components/roomba/strings.json

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-15 21:28:12 -10:00
J. Nick Koston
5e01b828af Discover devices from device_trackers with router sources (#45160)
* Discover devices from device_trackers with router sources

* Update homeassistant/components/dhcp/__init__.py

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

* fix stop being called on the wrong context

* clean

* move it to base

* cleanup was too agressive

* Update homeassistant/components/dhcp/__init__.py

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

* coverage

* revert legacy changes

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-16 01:01:37 +01:00
Robert Svensson
598a0d19b1 Normalise unique ID in Axis integration (#45203)
* Move adding unique id to config entry from setup_entry to migrate_entry

* Normalise unique ID

* MQTT subscribe should still use the serial number in the way the device itself expects
2021-01-16 01:01:14 +01:00
J. Nick Koston
b3764da912 Fix exception when trying to configure an ignored somfy mylink (#45198) 2021-01-16 00:48:19 +01:00
Philip Allgaier
5677adc104 Fix all forecast datetime values in OpenWeatherMap (#45202) 2021-01-15 23:32:38 +01:00
On Freund
03b2fbd043 Fix Typo in Onkyo A/V info (#45194) 2021-01-15 15:18:45 -05:00
J. Nick Koston
cffb1458a1 Improve dhcp discovery for somfy_mylink to handle multiple devices (#45166)
* Improve dhcp discovery for somfy_mylink to handle multiple devices

* Fix ip

* normalize

* logging debug

* force str

* we need a str

* fix tests

* add tests

* pylint
2021-01-15 19:47:25 +01:00
Sjack-Sch
7ce897f373 Fix Home Connect ambient color (#45038) 2021-01-15 19:40:29 +01:00
Martin Hjelmare
74c81b7c01 Bump zwave-js-server-python to 0.10.0 (#45189) 2021-01-15 19:32:10 +01:00
Sergio Conde Gómez
2e42a862b0 Remove service and config schemas from foscam (#45154) 2021-01-15 18:24:31 +01:00
Charles Garwood
9dbf14188a Add WebSocket API Foundation for zwave_js (#45151) 2021-01-15 15:17:40 +01:00
Marcel van der Veldt
071c8cc67d Add binary_sensor platform to zwave_js (#45081)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-15 09:15:03 -05:00
Franck Nijhof
b4268edd6a Merge pull request #45186 from home-assistant/rc 2021-01-15 14:33:52 +01:00
Franck Nijhof
e70abf5434 Merge branch 'master' into rc 2021-01-15 14:04:21 +01:00
Franck Nijhof
572b323ade Bumped version to 2021.1.3 2021-01-15 13:58:52 +01:00
Pascal Vizeli
f91d40ac38 Bump aioHTTP 3.7.3 - YARL 1.6.3 (#45180) 2021-01-15 13:58:19 +01:00
Franck Nijhof
48be748058 Extend filter and filter tests (#45179) 2021-01-15 13:58:15 +01:00
Franck Nijhof
c2deadf994 Add filtering 2021-01-15 13:57:56 +01:00
Pascal Vizeli
e1427c45f2 Bump aioHTTP 3.7.3 - YARL 1.6.3 (#45180) 2021-01-15 13:19:22 +01:00
Tobias Sauerwein
b5690053a9 Only add Netatmo climate schedule attribute if not None (#45176) 2021-01-15 13:15:59 +01:00
Philip Allgaier
41b45c7f78 Auto-create friendly name for persistent notifications (#42427) 2021-01-15 12:13:56 +01:00
Paulus Schoutsen
93c2f2bbeb Bump Z-Wave JS Server Python to 0.9.0 (#45181) 2021-01-15 10:59:35 +01:00
Franck Nijhof
dee0f887de Extend filter and filter tests (#45179) 2021-01-15 10:30:29 +01:00
Marcel van der Veldt
a276f2d19e Fix zwave_js adding not fully interviewed nodes (#45162)
* fix situation were nodes are being added or not fully interviewed

* adjust test

* lint
2021-01-15 01:09:03 +01:00
J. Nick Koston
7fada806af Downgrade dhcp log message error message when running without CAP_NET_RAW (#45157) 2021-01-14 10:46:15 -10:00
Paulus Schoutsen
2600fdfa67 Merge pull request #45156 from home-assistant/rc 2021-01-14 20:50:23 +01:00
Franck Nijhof
0bd2c13e26 Add filtering 2021-01-14 20:26:08 +01:00
Philip Allgaier
0fdda9d0f6 Fix OpenWeatherMap forecast timestamp (#45124) 2021-01-14 19:20:16 +00:00
ehendrix23
7ac208ead6 Bump MyQ to 2.0.14 (#45067) 2021-01-14 19:20:15 +00:00
Joakim Sørensen
e1989399f0 Fallback to tag for any AfterShip tracking that have no checkpoints (#45053) 2021-01-14 19:20:14 +00:00
Santobert
d0216307f3 Fix neato battery sensor not ready (#44946)
* Fix neato battery sensor not ready

* Edit available attribute

* Remove unnecessary condition
2021-01-14 19:20:14 +00:00
Paulus Schoutsen
f141f18db7 Bumped version to 2021.1.2 2021-01-14 19:08:37 +00:00
rikroe
2294f11070 Bump bimmer_connected to 0.7.14 (#45086)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-01-14 19:08:29 +00:00
Diogo Gomes
3771a800d3 Update the Utility Meter sensor status on HA start (#44765)
* fix status on HA start

* better coverage and fix

* fix test

* address review
2021-01-14 19:08:03 +00:00
Erik Montnemery
a1368ad3ed Remove beta tag from Tasmota integration (#45153) 2021-01-14 20:02:34 +01:00
Franck Nijhof
f047d04882 Add filtering 2021-01-14 20:02:01 +01:00
bchastain
3800a4feee Add pressure to OWM forecast data (#43843) 2021-01-14 19:47:48 +01:00
unaiur
ab518a7755 Migrate to maxcube-api 0.3.0 version (#45126)
Upgrade maxcube-api to solve bugs fixed in last 3 years.
2021-01-14 11:33:02 +01:00
Corbeno
4bca9596ee Rework Proxmoxve to use a DataUpdateCoordinator (#45068)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-14 11:31:37 +01:00
J. Nick Koston
4efe6762c4 Remove YAML support from harmony (#45140) 2021-01-14 09:45:32 +01:00
J. Nick Koston
23a73dc5b1 Mark YAML support for DoorBird deprecated (#45139) 2021-01-14 09:44:01 +01:00
On Freund
2ac658d257 Get A/V info for Onkyo receivers (#34477)
* Get A/V info for Onkyo receivers

* Fix lint errors

* Remove blank line

* Trigger CI
2021-01-14 09:39:11 +01:00
Erik Montnemery
e0c8b1aab6 Remove from_state from alarm device triggers (#45127) 2021-01-14 09:12:32 +01:00
J. Nick Koston
da677f7d5a Add support for discovery via DHCP (#45087)
* Add support for discovery via DHCP

* additional tesla ouis

* merge tests

* dhcp test

* merge requirements test

* dhcp test

* dhcp discovery

* dhcp discovery

* pylint

* pylint

* pylint

* fix

* Add matching tests

* 100% cover

* cleanup

* fix codespell

* Update exception handling

* remove unneeded comment

* fix options handling exception

* fix options handling exception
2021-01-14 09:09:08 +01:00
Philip Allgaier
402a0ea7da Fix OpenWeatherMap forecast timestamp (#45124) 2021-01-14 08:47:45 +01:00
ehendrix23
17cb071173 Bump MyQ to 2.0.14 (#45067) 2021-01-13 20:15:23 -10:00
Petro31
3ebc5d45a8 Add energy and power sensor tests & fix device_class (#45122) 2021-01-13 15:37:54 -05:00
Nikolay Vasilchuk
eca6bc6a73 Starline OBD information (#37608)
* Starline OBD data

* Small fix

* Review (comments)

* Review (service description)

* Review (service method)

* starline updated to 0.1.5

* Small typo fix
2021-01-13 20:44:24 +01:00
TimothyLeeAdams
7872e6caf8 Change attribute key for Lutron cover to lutron_integration_id (#45114)
Currently, covers return "Lutron Integration ID" as a state attribute. This is inconsistent with the light, switch, and binary_sensor which return "lutron_integration_id".
2021-01-13 18:59:57 +01:00
Julien Roy
94417e3e14 Add start torrent and stop torrent service for transmission integration (#43920) 2021-01-13 17:44:57 +01:00
Tobias Sauerwein
e05bb7e858 Expose selected Netatmo schedule (#45077) 2021-01-13 17:01:29 +01:00
Paulus Schoutsen
732cf47ff6 Filter some Alexa reports that are duplicate (#45093)
* Filter some Alexa reports that are duplicate

* When state changes during reporting, only report last state, not all state changes
2021-01-13 16:54:54 +01:00
Diogo Gomes
81c77942eb Update the Utility Meter sensor status on HA start (#44765)
* fix status on HA start

* better coverage and fix

* fix test

* address review
2021-01-13 16:42:28 +01:00
Martin Hjelmare
79d37fdf12 Add zwave_js light platform tests (#45107)
* Add bulb 6 multi color device state fixture

* Add light test foundation

* Add no cover comment for todo code

* Update hs_color

* Test turn on light

* Test light turn off

* Fix brightness comparison

* Test setting same brightness

* Test setting same rgb color

* Test color temp update

* Test setting same color temp

* Add entity module to coverage calculation

* Fix typing
2021-01-13 16:28:51 +01:00
Alexei Chetroi
de8f273bd0 Allow input_number entity_id as for numeric_state trigger thresholds (#45091)
* Allow input_number as limits for numeric_state trigger

* Rename threshold schema
2021-01-13 16:20:59 +01:00
Sergio Conde Gómez
83b210061d Add config_flow and stream selection to foscam (#41429)
* Add config_flow and stream selection to foscam

* Simplify config_flow steps

* Make debug log entry more useful

* Deprecate config and platform schemas

* Simplify config loading

* Add config flow testing

* Remove unneeded CONFIG_SCHEMA deprecation

* Improve test coverage

* Unload service by tracking loaded entries

* Address comment

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-13 16:09:05 +01:00
Martin Hjelmare
3537a7c3d5 Correct zwave_js value changed callback signature (#45110) 2021-01-13 15:31:31 +01:00
rikroe
938d8be0c8 Bump bimmer_connected to 0.7.14 (#45086)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-01-13 15:25:28 +01:00
jjlawren
411cc6542c Move Plex->Sonos playback to built-in service (#45066)
* Move Plex->Sonos playback service from integration to platform

* Test against 'native' Plex media_players

* Add Plex to Sonos after_dependencies

* Remove circular dependency

* Raise exceptions in failed service calls

* Add test to forward service call from Sonos

* Additional Sonos->Plex tests

* Fix docstring
2021-01-13 15:24:44 +01:00
Jacob Southard
3364e945aa Fix HomeKit climate integration for devices with a single set point in Heat_Cool mode. (#45065)
* Check supported flags in auto mode, and add tests.

* Fix test description.
2021-01-13 15:21:32 +01:00
Jesse Hills
f78b02b163 Do not try to connect to disabled ESPHome devices. (#45092) 2021-01-13 15:17:13 +01:00
J. Nick Koston
ffd9c4e410 Add additional roku model to discovery (#45103) 2021-01-13 15:14:45 +01:00
badguy99
b9e4d5988f Soma: fix battery drain issue caused by excess update requests (#45104)
* split up update and throttle update on sensor

* Update imports

* Add blank lines for isort
2021-01-13 15:14:15 +01:00
Robert Svensson
6325bc8bfe Follow Axis library changes and improve tests (#44126) 2021-01-13 14:03:54 +01:00
ErnstEeldert
ff3a1f2050 Add device class attribute to tado humidity sensor state (#45084)
* add device class attribute to humidity sensor state

* * explict return none
* use const for device class value

* removed unnecessary icon definitions
2021-01-13 13:45:11 +01:00
Alexei Chetroi
ec038bc6ea Allow any parameter of a light profile as an optional parameter (#44079)
* No code duplication for profile application

* Refactor color profile as a dataclass

* Typing

* Make color_x and color_y of a Light profile optional

* Update tests

* Make brightness field of a Light profile optional

* Transition can be of a float type

* Allow fractional transition times in light profiles

Make transition of a float type.
Allow transition to be optional with 5 column CSV files.

* Make pylint happy

* Fix dropped async_mock

* Simplify CSV row schema
2021-01-13 12:11:20 +01:00
Santobert
10bc05df00 Fix neato battery sensor not ready (#44946)
* Fix neato battery sensor not ready

* Edit available attribute

* Remove unnecessary condition
2021-01-13 10:23:16 +01:00
J. Nick Koston
ac60b34d17 Roomba cleanups (#45097)
* Roomba cleanups

Remove async_step_init backwards compat

Move urls to description_placeholders.

Fix typos

* fix test

* fix fallback to manual when roomba is in the wrong state
2021-01-13 07:27:25 +01:00
Allen Porter
eebd0d333e Clear cached nest event images after expiration (#44956)
* Clear cached nest event images after expiration

* Don't share removal cleanup with alarm cleanup

Don't share code across these functions since it would require a dummy timestamp values that is unnecessary.

* Increase test coverage on sdm camera remove

* Update homeassistant/components/nest/camera_sdm.py

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

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-12 22:08:59 -08:00
Paulus Schoutsen
82746616fa Cloud: Add web socket API to pick default TTS language (#45064)
* Allow picking default TTS language

* Fix test

* Fix coroutine function

* Improve test coverage

* Remove stale import

* Clean up hass

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-13 00:05:30 +01:00
Paulus Schoutsen
4e71be852a Bump Z-Wave JS to 0.7.1 (#45080) 2021-01-12 16:18:06 +01:00
Charles Garwood
be2aba6c52 Fix docstring in zwave_js switch test (#45076) 2021-01-12 14:29:12 +01:00
Joakim Sørensen
8ce32d67f9 Fallback to tag for any AfterShip tracking that have no checkpoints (#45053) 2021-01-12 10:33:14 +01:00
Paulus Schoutsen
e83ced6737 Add name to ignored entries (#45051)
* Add name to ignored entries

* Fix test
2021-01-12 09:26:20 +01:00
Charles Garwood
f312b87a3f Add switch platform to zwave_js (#45046) 2021-01-11 18:40:39 -05:00
Philip Allgaier
cad2fa89ed Default input_datetime to current date (#45052) 2021-01-11 23:45:58 +01:00
Philip Allgaier
bade98624d Fix tests for input_datetime (#45055) 2021-01-11 23:13:16 +01:00
J. Nick Koston
13cdf0ba63 Cleanups for somfy_mylink (#45026)
* Cleanups for somfy_mylink

* Use the target/unique_id to configure reverse

* Simplify options flow

* Various code review cleanups

* Deprecate YAML

* revert get change

* revert get change

* add note about empty response

* move CONF_DEFAULT_REVERSE out of loop

* Update homeassistant/components/somfy_mylink/config_flow.py

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

* Ensure we deepcopy options

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-11 10:10:02 -10:00
Paulus Schoutsen
f19b72ea02 Drop awarecan from codeowners (#45049) 2021-01-11 17:58:59 +01:00
Simone Chemelli
bc2c7b2d48 Add Shelly RGB devices management (#43993)
* Add support for RGB devices

* White value handling

* Fixed logic for some devices (ColorTemp, White, Kelvin limits)

* Code cleanup

* Moved func from utils to light

* Fix for DUO

* Added "Optional" to properties that need it

* Code more understandable

* Applied code review suggestions

* Applied code review suggestions

* Updated logic to always show all available options
2021-01-11 16:47:49 +01:00
Shay Levy
e3f38942cc Add 100% tests coverage for Shelly cover and switch platforms (#45001) 2021-01-11 16:45:06 +01:00
Martin Hjelmare
d270f9515b Add zwave_js init module tests (#45048)
* Add entry setup and unload test

* Test home assistant stop

* Test on connect and on disconnect

* Test client connect timeout

* Test ready node added

* Test non ready node added

* Test existing node not ready

* Test device registry state

* Add common test tools module

* Add existing ready node test

* Include init module in coverage calculation

* Clean docstrings
2021-01-11 16:05:11 +01:00
Erik Montnemery
d60fc0de38 Add availability_mode "all" and "any" to MQTT entities (#44987)
* Add availability_mode "all" to MQTT entities

* Add availability mode any
2021-01-11 16:04:22 +01:00
J. Nick Koston
74e7f7c879 Update roomba config flow to walk users through pairing (#45037)
* Update roomba config flow to walk users though pairing

* Remove YAML support

* adjust tests

* increase cover

* pylint

* pylint
2021-01-11 14:46:54 +01:00
J. Nick Koston
eb5f3b282b Mark YAML support for August deprecated (#45039) 2021-01-11 14:40:32 +01:00
J. Nick Koston
38a5f25b59 Fix vacuums that do not support start with homekit (#45030)
* Fix vacuums that do not support start with homekit

* fix tests
2021-01-11 14:38:42 +01:00
Allen Porter
65e3661f88 Repair flaky and broken stream tests in test_hls.py, and turn back on (#45025)
* Unmark tests as flaky (though still flaky)

This put tests into the broken state where they are flaky and do not yet pass

* Fix bug in test_hls_stream with incorrect path

* Enable and de-flake HLS stream tests

Background: Tests encode a fake video them start a stream to be decoded. Test
assert on the decoded segments, however there is a race with the stream worker
which can finish decoding first, and end the stream which ereases all buffers.

Breadown of fixes:
- Fix the race conditions by adding synchronization points right before the
  stream is finalized.
- Refactor StreamOutput.put so that a patch() can block the worker
  thread.  Previously, the put call would happen in the event loop which was
  not safe to block. This is a bit of a hack, but it is the simplist possible
  code change to add this synchronization and arguably provides slightly better
  separation of responsibilities from the worker anyway.
- Fix bugs in the tests that make them not pass, likely due to changes
  introduced while the tests were disabled
- Fix case where the HLS stream view recv() call returns None, indicating
  the worker finished while the request was waiting.

The tests were previously failing anywhere from 2-5% of the time on a lightly
loaded machine doing 1k iterations.  Now, have 0% flake rate.  Tested with:
$ py.test --count=1000 tests/components/strema/test_hls.py
2021-01-11 14:34:45 +01:00
Charles Garwood
ed4e8cdbc5 Bump zwave-js-server-python to 0.7.0 (#45045) 2021-01-11 14:34:08 +01:00
J. Nick Koston
af21893652 Remove safe mode from HomeKit (#45028)
Safe mode was added to work around a race condition where
the mdns announcment was sent too early and would cause
pairing to fail. Since this has been corrected in
HAP-python, there is no longer a need to have
safe mode.
2021-01-11 14:26:09 +01:00
Paulus Schoutsen
e584902b8b Remove empty schema (#45044) 2021-01-11 14:25:09 +01:00
Stefan Agner
54064b4010 Increase timeout to avoid killing the core during shutdown (#45029)
Stopping the core goes through several stages, which can take up to
120s, 60s and 30s respectively. However, if shutdown is taking longer
than 60s overall, s6 isn't patient and kills the core:
Jan 10 23:56:58 homeassistant eb034fca9c7d[407]: s6-svwait: fatal: timed out
Jan 10 23:56:58 homeassistant eb034fca9c7d[407]: [s6-finish] sending all processes the TERM signal.
Jan 10 23:57:01 homeassistant eb034fca9c7d[407]: [s6-finish] sending all processes the KILL signal and exiting.

This is most of the time not a problem since shutdown is quicker than
that.

However, increasing the timeout is especialy useful to debug cases when
an event is hanging, since the core will point it out after its timeout
elapsed.

Set the timeout to 220s, which is all core timeouts plus 10s grace time.
2021-01-11 11:24:02 +01:00
Stefan Agner
ab25c5a2bd Shutdown asyncio http server within 10 seconds (#45033)
If there are open requests, the http server waits up to 60 seconds.
However, some requests (such as the Reboot button) seems to keep a
connection open and needlessly slow down the reboot process:

```
Jan 11 00:52:54 homeassistant eb034fca9c7d[404]: 2021-01-11 00:52:54 DEBUG (MainThread) [homeassistant.core] Bus:Handling <Event homeassistant_stop[L]>
Jan 11 00:52:54 homeassistant eb034fca9c7d[404]: 2021-01-11 00:52:54 DEBUG (MainThread) [homeassistant.helpers.restore_state] Dumping states 111
Jan 11 00:52:54 homeassistant eb034fca9c7d[404]: 2021-01-11 00:52:54 DEBUG (MainThread) [homeassistant.helpers.restore_state] Dumping states
Jan 11 00:52:54 homeassistant eb034fca9c7d[404]: 2021-01-11 00:52:54 INFO (MainThread) [homeassistant.components.websocket_api.http.connection] [281473359593728] Connection closed by client
Jan 11 00:52:56 homeassistant eb034fca9c7d[404]: 2021-01-11 00:52:56 DEBUG (MainThread) [homeassistant.components.websocket_api.http.connection] [281473359593728] Disconnected
Jan 11 00:53:54 homeassistant eb034fca9c7d[404]: 2021-01-11 00:53:54 DEBUG (MainThread) [homeassistant.core] Waited 60 seconds for task: <Task pending name='Task-585' coro=<async_setup.<locals>.stop_server() running at /usr/src/homeassistant/homeassistant/components/http/__init__.py:228> wait_for=<_GatheringFuture pending cb=[<TaskWakeupMethWrapper object at 0xffff9f112f70>()]> cb=[_wait.<locals>._on_completion() at /usr/local/lib/python3.8/asyncio/tasks.py:518]>
...
```
2021-01-11 09:36:14 +01:00
Charles Garwood
d68fdbc283 Add zwave_js integration (#45020)
* Run zwave_js scaffold (#44891)

* Add zwave_js basic connection to zwave server (#44904)

* add the basic connection to zwave server

* fix name

* Fix requirements

* Fix things

* Version bump dep to 0.1.2

* fix pylint

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

* Bump zwave-js-server-python to 0.2.0

* Use zwave js server version check instead of fetching full state (#44943)

* Use version check instead of fetching full state

* Fix tests

* Use 0.3.0

* Also catch aiohttp client errors

* Update docstring

* Lint

* Unignore zwave_js

* Add zwave_js entity discovery basics and sensor platform (#44927)

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

* Complete zwave_js typing (#44960)

* Type discovery

* Type init

* Type entity

* Type config flow

* Type sensor

* Require typing of zwave_js

* Complete zwave_js config flow test coverage (#44955)

* Correct zwave_js sensor device class (#44968)

* Fix zwave_js KeyError on entry setup timeout (#44966)

* Bump zwave-js-server-python to 0.5.0 (#44975)

* Remove stale callback signal from zwave_js (#44994)

* Add light platform to zwave_js integration (#44974)

* add light platform

* styling fix

* fix type hint

* Fix typing

* Update homeassistant/components/zwave_js/const.py

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

* Update homeassistant/components/zwave_js/entity.py

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

* Update homeassistant/components/zwave_js/entity.py

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

* Update homeassistant/components/zwave_js/entity.py

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

* Update homeassistant/components/zwave_js/entity.py

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

* Update homeassistant/components/zwave_js/entity.py

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

* color temp should be integer

* guard Nonetype error

* Update homeassistant/components/zwave_js/light.py

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

* Update homeassistant/components/zwave_js/light.py

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

* some fixes after merging

* add additional guards for None values

* adjustments for rgb lights

* Fix typing

* Fix black

* Bump zwave-js-server-python to 0.6.0

* guard value updated log

* remove value_id lookup as its no longer needed

* fiz sending white value

* Update homeassistant/components/zwave_js/light.py

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

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

* Add zwave_js test foundation (#44983)

* Exclude text files from codespell

* Add basic dump fixture

* Add test foundation

* Fix test after rebase

* Exclude jsonl files from codespell

* Rename fixture file type to jsonl

* Update fixture path

* Fix stale docstring

* Add controller state json fixture

* Add multisensor 6 state json fixture

* Update fixtures

* Remove basic dump fixture

* Fix fixtures after library bump

* Update codeowner

* Minor cleanup Z-Wave JS (#45021)

* Update zwave_js device_info (#45023)

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-01-11 00:08:25 +01:00
Ryan Fleming
1402e7ae56 Use the camera UUID as the entity unique id (#44937) 2021-01-10 23:23:32 +01:00
Philip Allgaier
4de9f5194f Include current version in updater log output (#45022) 2021-01-10 21:37:55 +01:00
J. Nick Koston
f5b389faa8 Warn users when their HomeKit configuration may be unstable (#44999) 2021-01-10 09:38:41 -10:00
J. Nick Koston
4b54694c5c Add config flow for somfy_mylink (#44977)
* Add config flow for somfy_mylink

* fix typo
2021-01-10 20:24:22 +01:00
J. Nick Koston
b450d4c135 Improve unifi performance with many devices (#45006)
With 250 clients, there were about 18000 timers updated every
minute. To avoid this, we check which entities should be set
to not_home only once every second.
2021-01-10 20:12:21 +01:00
Olivier Cloirec
707a8e62f9 Add stop support to openzwave (mqtt) cover (#44622)
* feat: add stop to openzwave (mqtt) cover

* Fix isort and black linter

* Remove supported_features for cover.

As suggested by @MartinHjelmare, not needed anymore because base class
implementation is sufficient.

https://github.com/home-assistant/core/pull/44622#discussion_r549854542

* Make a simpler version depending on idempotency

qt-openzwave already implements idempotency, see:
77e414217f/qt-openzwave/source/qtozwvalueidmodel.cpp (L180)

We can use it and trigger button release anywhen.

* Clean up

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-10 18:05:52 +01:00
Allen Porter
a73a82e381 Improve nest client error handling using newest library (#44998) 2021-01-09 17:52:30 -08:00
Josef Schlehofer
f240106189 Upgrade requests to 2.25.1 (#44989) 2021-01-09 20:02:50 +01:00
Erik Montnemery
248802efd5 Add MQTT base entity (#44971) 2021-01-09 17:46:53 +01:00
Paulus Schoutsen
75615bd92a Merge pull request #44982 from home-assistant/rc
2021.1.1
2021-01-09 16:02:54 +01:00
Paulus Schoutsen
9524766b07 Bumped version to 2021.1.1 2021-01-09 14:31:14 +00:00
ehendrix23
21121b6e9b Bump pymyq to 2.0.13 (#44961) 2021-01-09 14:31:10 +00:00
Erik Montnemery
1b0e0996af Fix parameters when toggling light (#44950) 2021-01-09 14:31:09 +00:00
Sergio Oller
0e4c560f38 Disambiguate Supervisor HTTPUnauthorized on user/password validation (#44940)
* Disambiguate HTTPUnauthorized on user/password validation

The HA core API usually returns 401 when the request does not
have proper authentication tokens or they have expired.

However the user/password validation endpoint may also return
401 when the given user/password is invalid.

The supervisor is currently unable to distinguish both scenarios,
and it needs to.

See https://github.com/home-assistant/supervisor/issues/2408

* Return 404 if user& password are not found/valid

* Fix test for invalid user/password
2021-01-09 14:31:09 +00:00
J. Nick Koston
5dfe8e15e3 Fix wait_template incorrectly matching falsey values (#44938) 2021-01-09 14:31:07 +00:00
Matthias Alphart
5ef6f87ab9 Fix KNX cover state return open when unknown (#44926) 2021-01-09 14:31:07 +00:00
ehendrix23
eabe757e20 Bump pymyq to 2.0.13 (#44961) 2021-01-09 15:29:48 +01:00
Martin Hjelmare
8b72324ae6 Add zwave to ozw migration (#39081)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2021-01-09 15:23:03 +01:00
bchastain
982c42e746 Add pressure forecast to HA weather entity model (#44965) 2021-01-09 14:52:49 +01:00
Erik Montnemery
6dd6d9b368 Deduplicate MQTT entity discovery code (#44970) 2021-01-09 14:37:33 +01:00
Erik Montnemery
2d9eb25142 Fix parameters when toggling light (#44950) 2021-01-09 01:10:47 +01:00
Erik Montnemery
b85efd343f Move MQTT entity helpers to separate file (#44838)
* Move MQTT entity helpers to separate file

* Fix imports

* Update MQTT number

* Review comments

* Fix formatting
2021-01-09 00:47:17 +01:00
Ville Skyttä
3a88a4120e Helpers type hint improvements (#44964) 2021-01-09 00:08:34 +01:00
Ville Skyttä
3569d92385 Remove script/test (#44967)
It's still referencing tox py36, which has been obsolete for over a
year.
2021-01-08 23:58:39 +01:00
Diogo Gomes
e3c1281616 Add MQTT Number (non optimistic) (#44883)
* non optimistic

* test restored state

* ups

* review

* Ensure the entity is not in optimistic mode

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

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-01-08 23:43:14 +01:00
Tobias Sauerwein
8fa62329a4 Fix Netatmo climate boost for valves (#44957) 2021-01-08 18:41:31 +01:00
Sergio Oller
905100a189 Disambiguate Supervisor HTTPUnauthorized on user/password validation (#44940)
* Disambiguate HTTPUnauthorized on user/password validation

The HA core API usually returns 401 when the request does not
have proper authentication tokens or they have expired.

However the user/password validation endpoint may also return
401 when the given user/password is invalid.

The supervisor is currently unable to distinguish both scenarios,
and it needs to.

See https://github.com/home-assistant/supervisor/issues/2408

* Return 404 if user& password are not found/valid

* Fix test for invalid user/password
2021-01-08 17:28:22 +01:00
J.P. Hutchins
793adb7f40 Add torrent id to Transmission events (#44187)
* Fire event after object update; clarify code across related methods

* Change var to torrent, clarity

* Add typehints,  _ prefix private attributes
2021-01-08 07:53:47 -08:00
Joakim Sørensen
d99bc99d9b Prefix versions in system health (#44921)
* Prefix versions in system health

* Adjust test

* Update homeassistant/components/hassio/strings.json
2021-01-08 16:03:06 +01:00
Ottavio Campana
58195c64b7 Fix media renderers without volume control (#44874)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-08 14:15:54 +01:00
J. Nick Koston
7c93a11aba Fix wait_template incorrectly matching falsey values (#44938) 2021-01-08 13:07:50 +01:00
Fabian Affolter
c457ea854c Upgrade youtube_dl to 2021.01.03 (#44942) 2021-01-08 11:59:30 +01:00
Fabian Affolter
e134c17df2 Upgrade discord.py to 1.6.0 (#44941) 2021-01-08 11:53:46 +01:00
Matthias Alphart
30189fb5d5 Fix KNX cover state return open when unknown (#44926) 2021-01-08 11:50:02 +01:00
Michael Chisholm
e35e460e69 Use parent_id to find cause of logbook events with new contexts (#44416)
* Use parent_id to find cause of events with new contexts

When looking up the causing event for logbook display, use the `parent_id`
of the current context if the current context just points back to the
current event.

This now shows in the logbook the cause of an event in the case that a
component has created a new context from an existing context and tied
them together via the `Context.parent_id`.

* Fix exception when parent event not available

* Use async_Log_entry to avoid jump into executor
2021-01-07 20:27:03 -10:00
Jamin Collins
3b184ad11c Implement support for additional ecobee hold modes (#40520)
* useEndTime2hour   - 2 hours
* useEndTime4hour   - 4 hours
* indefinite        - Until I change it

These changes have been tested with an ecobee3 lite running firmware
version 4.5.81.200

Signed-off-by: Jamin W. Collins <jamin.collins@gmail.com>
2021-01-07 18:09:22 -10:00
J. Nick Koston
c54a0f80af Update nexia to 0.9.5 (#44924) 2021-01-08 03:00:53 +01:00
Bouwe Westerdijk
cb3b37a87a Correct Plugwise sensor scaling (#44344)
* Remove sensor-scaling, handled by the back-end

* Correct assert-values

* Update test-fixtures

* Revert "Correct assert-values"

This reverts commit f1a1891f73.

* Adapt value to the updated userdata set

* Link to plugwise v0.8.5, update fixtures

* Correct test-values

* Fix typo
2021-01-08 02:44:00 +01:00
Ville Skyttä
20e2493f68 Improve device registry type hints (#44919)
* Fix async_get_or_create via_device type hint

* Specify collection element types
2021-01-08 02:38:57 +01:00
jjlawren
0426b211f6 Rewrite Plex tests to use mocked payloads (#44044) 2021-01-07 19:56:52 +01:00
Paulus Schoutsen
caf14b78d1 Homekit has two types (#44879) 2021-01-07 08:44:34 -10:00
Ville Skyttä
2fb3be50ab Make DeviceRegistry.async_get_device connections arg optional (#44897)
* Make async_get_device connections Optional, default None

* Remove unnecessary async_get_device connections arg usages

Some of these were using an incorrect collection type, which didn't
cause issues mostly just due to luck.
2021-01-07 13:49:45 +01:00
emufan
751ac0b955 Bump pydaikin version to 2.4.1 (#44888) 2021-01-06 20:15:16 +01:00
Franck Nijhof
92431049e5 Revert "Revert "Bump pypck to 0.7.8"" (#44885)
This reverts commit 6de8824980.
2021-01-06 18:01:06 +01:00
Franck Nijhof
1a44a8a714 Merge branch 'master' into dev 2021-01-06 17:59:14 +01:00
Franck Nijhof
bb1ebae5cb Merge pull request #44881 from home-assistant/rc 2021-01-06 17:37:48 +01:00
Ville Skyttä
03ffeb9a02 Fix notion bridge id update device registry identifier usage (#44872) 2021-01-06 09:18:04 -07:00
Franck Nijhof
57d119a7fe Revert "Bump pypck to 0.7.8" (#44884)
This reverts commit addafd517f.
2021-01-06 16:49:02 +01:00
Franck Nijhof
6de8824980 Revert "Bump pypck to 0.7.8" (#44884)
This reverts commit addafd517f.
2021-01-06 16:47:02 +01:00
Franck Nijhof
9c478e8de7 Bumped version to 2021.1.0 2021-01-06 16:03:04 +01:00
Allen Porter
560e3811a3 Generate nest images thumbnails from events (#44638)
* Capture nest still images from events

Use python google-nest-sdm API for fetching images.  Update home assistant
to use the google-nest-sdm API for fetching the image contents generated
by the server.  This uses the existing websession object for server fetches,
reducing the amount of new code and facilites unit testing using the existing
mechanism.

Simplify tests using the image fetch API rather than a snapshot API
2021-01-06 07:02:04 -08:00
treylok
9d03b56c5c Bump python-ecobee-api to 0.2.8 (#44866) 2021-01-06 14:26:32 +01:00
jjlawren
b6d323b008 Fix Plex media summary attribute (#44863) 2021-01-06 14:26:28 +01:00
Martin Hjelmare
88eac0be85 Bump pytradfri to 7.0.6 (#44661) 2021-01-06 14:26:19 +01:00
jjlawren
d3d66c2e27 Fix Plex media summary attribute (#44863) 2021-01-06 14:12:19 +01:00
dependabot[bot]
2e864ca435 Bump codecov/codecov-action from v1.2.0 to v1.2.1 (#44869)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from v1.2.0 to v1.2.1.
- [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/v1.2.0...e156083f13aff6830c92fc5faa23505779fbf649)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-01-06 14:05:23 +01:00
Erik Montnemery
72e6d58a99 Bump pychromecast to 7.7.2 (#44871) 2021-01-06 13:41:21 +01:00
treylok
1c2f88c500 Bump python-ecobee-api to 0.2.8 (#44866) 2021-01-06 13:40:24 +01:00
Erik Montnemery
93ae65d704 Improve MQTT number test coverage (#44870) 2021-01-06 13:27:05 +01:00
JeromeHXP
1a65ab0b80 Address late review of ondilo_ico (#44837)
* Updates following comments in PR 44728

* Make all api calls in same thread context

* Set API as parameter to get_all_pools_data

* extract pools data retrieval function to api class
2021-01-06 12:36:39 +01:00
Erik Montnemery
02bfc68842 Support dynamic Google Cast groups (#44484)
* Re-add support for dynamic groups

* Add tests

* Add support for manufacturer

* Refactor support for dynamic groups

* Bump pychromecast to 7.7.0

* Bump pychromecast to 7.7.1

* Tweak tests

* Apply review suggestion
2021-01-06 09:23:18 +01:00
Diogo Gomes
f18880686c Add MQTT Number (#44739)
* Initial Commit

* initial commit

* add discovery and tests

* increase coverage

* address review

* catchup with reality
2021-01-06 08:27:46 +01:00
Franck Nijhof
c258c2653f Bumped version to 2021.1.0b3 2021-01-05 23:31:18 +01:00
Bram Kragten
587676f436 Update frontend to 20201229.1 (#44861) 2021-01-05 23:31:00 +01:00
Franck Nijhof
2ee50a4d54 Fix Canary doing I/O in event loop (#44854) 2021-01-05 23:30:55 +01:00
Finbarr Brady
fdce5878c6 Bump openwebifpy version: 3.1.6 → 3.2.7 (#44847) 2021-01-05 23:30:51 +01:00
Paulus Schoutsen
0b8251d9a1 Make Alexa custom ID unique (#44839)
* Make Alexa custom ID unique

* Lint

* Lint
2021-01-05 23:30:48 +01:00
Andre Lengwenus
e4a84bb1c3 Bump pypck to 0.7.8 (#44834) 2021-01-05 23:30:44 +01:00
TheJulianJES
9396d9db5f Implement color mode for ZHA light polling (#44829) 2021-01-05 23:30:41 +01:00
J. Nick Koston
b3fda469cf Fix zeroconf outgoing dns compression corruption for large packets (#44828) 2021-01-05 23:30:37 +01:00
Bram Kragten
cc57dd9534 Update frontend to 20201229.1 (#44861) 2021-01-05 23:27:35 +01:00
Paulus Schoutsen
009663602a Avoid Ps4 doing I/O during tests (#44845) 2021-01-05 21:12:14 +01:00
Franck Nijhof
34161f3ff6 Fix Canary doing I/O in event loop (#44854) 2021-01-05 20:55:17 +01:00
mvn23
35edc40537 Fix opentherm_gw firmware version in device registry (#44756) 2021-01-05 20:46:54 +01:00
Paulus Schoutsen
f1c116831f Patch Shelly test setting up entry (#44842) 2021-01-05 18:35:54 +01:00
Paulus Schoutsen
69b5176730 Make Alexa custom ID unique (#44839)
* Make Alexa custom ID unique

* Lint

* Lint
2021-01-05 17:35:28 +01:00
Finbarr Brady
16e1046dbc Bump openwebifpy version: 3.1.6 → 3.2.7 (#44847) 2021-01-05 17:22:25 +01:00
Ville Skyttä
67eebce55a Better general/fallback error message and traceback for unknown config errors (#44655)
* Include error repr in config error message is str(error) yields nothing

* Log traceback for config errors we don't have a "friendly" formatter for
2021-01-05 13:55:38 +01:00
Hans Oischinger
853420d972 Add Vicare set mode service (#44563)
* vicare: add set_vicare_mode service

The set_vicare_mode service allows the user to set any of the possible heating
modes of their heating device. Not just the ones that were mapped to
home assistant climate modes.

* vicare: Undo async changes and add heating mode

Useless async changes were undone.

To be able to set the most relevant modes the set_vicare_mode
shall be able to also set the heating mode (without domestic
hot water)

* Extract kwarg and undo some more async changes

Currectly extract the service argument

Adapt according to review

* Lint fixes

* Replace kwargs with single arg

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-05 12:12:31 +01:00
Shane Qi
c654476e24 Add support for reordering Shopping List Items via Drag and Drop (#41585)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-05 11:24:30 +01:00
Andre Lengwenus
addafd517f Bump pypck to 0.7.8 (#44834) 2021-01-05 10:01:34 +01:00
dependabot[bot]
106252ea21 Bump actions/upload-artifact from v2.2.1 to v2.2.2 (#44835)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from v2.2.1 to v2.2.2.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v2.2.1...e448a9b857ee2131e752b06002bf0e093c65e571)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-01-05 09:51:48 +01:00
dependabot[bot]
0c85ed1385 Bump codecov/codecov-action from v1.1.1 to v1.2.0 (#44836)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from v1.1.1 to v1.2.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/v1.1.1...a92c414703a4bba586f6df7fcc885c9d0bdff772)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-01-05 09:51:19 +01:00
Allen Porter
6cd18971b1 Propose an integration quality for nest SDM integration (#44755)
* Propose the nest SDM integration is silver quality

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-04 19:45:33 -08:00
TheJulianJES
86154744e4 Implement color mode for ZHA light polling (#44829) 2021-01-04 21:57:05 -05:00
Ville Skyttä
65e56d03bf Complete device and entity registry type hints (#44406) 2021-01-05 02:03:16 +01:00
chpego
d315ab2cf5 Bump caldav version to 0.7.1 (#44815)
* bump caldav version 0.7.1

* Update requirements_all.txt

* Update requirements_test_all.txt
2021-01-04 16:49:01 -07:00
Mike Keesey
60a1948ab0 Generate switches for harmony activities automatically (#42331)
* Adding switch code for harmony activities

* Working on-off

* Removing poll code for now

* Async updates for current activity

* Update our state based on events

* Notifications we got connected or disconnected

* Remove unncessary constructor arg

* Initial switch tests

* Additional tests for switch transitions

* Test transitions for availability

* Testing switch state changes

* Tests passing

* Final tests

* Updating manifest.

* Correctly mock the return value from a call to the library

* Adding new subscriber classes

* Update class name and location

* Got the refactor working locally.

* Tests passing

* Tracking state changes

* Remove write_to_config_file - this appears to never be read.

It was added far back in the past to account for a harmony library
change, but nothing ever reads that path.

Removing that side effect from tests is a pain - avoid the side effect
completely.

* Connection changes tested

* Clean up temporary code

* Update .coveragerc for harmony component

Specifically exclude untested files instead of the whole module

* Fix linting

* test sending activity change commands by id

* Improving coverage

* Testing channel change commands

* Splitting subscriber logic into it's own class

* Improve coverage and tighten up .coveragerc

* Test cleanups.

* re-add config file writing for harmony remote

* Create fixture for the mock harmonyclient

* Reduce duplication in subscription callbacks

* use async_run_job to call callbacks

* Adding some tests for async behaviors with subscribers.

* async_call_later for delay in marking remote unavailable

* Test disconnection handling in harmony remote

* Early exit if activity not specified

* Use connection state mixin

* Lint fix after rebase

* Fix isort

* super init for ConnectionStateMixin

* Adding @mkeesey to harmony CODEOWNERS
2021-01-04 13:21:14 -10:00
Maciej Bieniek
2e50c1be8e Add nearest method to get data for Airly integration (#44288)
* Add nearest method

* Add tests

* Move urls to consts

* Simplify config flow

* Fix tests

* Update tests

* Use in instead get

* Fix AirlyError message in tests

* Fix manual update entity tests

* Clean up tests

* Fix after rebase

* Increase test coverage

* Format the code

* Fix after rebase
2021-01-04 23:14:45 +01:00
Shay Levy
76537305e2 Add logbook and device trigger platforms to Shelly (#44020)
* Add logbook and device trigger platforms to Shelly

Add `logbook` platform for describing “shelly.click” event
Add `device_trigger` platform for adding automation based on click events:

Example of logbook event:
Shelly 'single' click event for Test I3 channel 3 was fired.
(Test I3 is the name of the device)

Example of automation triggers:
First button triple clicked
First button long clicked and then single clicked
First button double clicked
First button long clicked
First button single clicked and then long clicked
First button single clicked
Second button triple clicked
..
Second button single clicked

* Fix codespell

* Remove pylint added for debug

* Add tests

* Rebase

* Fix Rebase & Apply PR review suggestions

Fix tests after rebasing
Use `INPUTS_EVENTS_DICT` for input triggers
Apply PR suggestions
2021-01-04 23:10:42 +01:00
J. Nick Koston
773d95251e Fix zeroconf outgoing dns compression corruption for large packets (#44828) 2021-01-04 21:18:54 +01:00
Aaron Bach
7657a5c901 Move RainMachine services to entity services (#44139) 2021-01-04 20:01:14 +01:00
JeromeHXP
cd756f20b1 Updated Ondilo translation files to remove title (#44824) 2021-01-04 19:57:25 +01:00
Joakim Sørensen
766f89f338 Adjust system info for lovelace with multiple dashboards (#44796) 2021-01-04 18:02:46 +01:00
JeromeHXP
de780c6d35 Add Ondilo ico integration (#44728)
* First implementationof Ondilo component support

* Update manifest toadd pypi pkg dependency

* Update entities name and corrected refresh issue

* Changed percentage unit name

* Corrected merge issues

* Updated coveragerc

* cleaned up code and corrected config flow tests

* Code cleanup and added test for exisitng entry

* Changes following PR comments:
- Inherit CoordinatorEntity instead of Entity
- Merged pools blocking calls into one
- Renamed devices vars to sensors
- Check supported sensor types
- Stop relying on array index position for pools
- Stop relying on attribute position in dict for sensors

* Corrected unit test

* Reformat sensor type check
2021-01-04 08:09:01 -08:00
Allen Porter
c92353088c Fix Fan support in nest climate by adding HVAC_MODE_FAN_ONLY support (#44203)
* Add HVAC_MODE_FAN_ONLY to nest climate

* Remove unreachable code

* Fix HVAC_FAV_ONLY bug; must also turn off hvac
2021-01-04 16:43:41 +01:00
Joakim Plate
c1027cace6 Add device entry id to events (#44407)
* Add device entry id to events

* Only add device id if device is known for now
2021-01-04 15:31:10 +01:00
On Freund
e9f7e67f4c Try to fix flaky Risco test (#44788) 2021-01-04 15:23:47 +01:00
Simone Chemelli
3a32e16f4d Add myself to codeowners for Shelly (#44814) 2021-01-04 14:14:09 +01:00
Simone Chemelli
f07bf6a88e Cleanup timeouts values for Shelly (#44790)
* Updated timeouts

* Small cleanup

* Fix + small cleanup of test code
2021-01-04 14:04:40 +01:00
Franck Nijhof
e4fcc9c692 Bumped version to 2021.1.0b2 2021-01-04 13:17:44 +01:00
Matthias Alphart
5f91f14a49 Fix knx.send service not accepting floats (#44802) 2021-01-04 13:17:02 +01:00
Bob Matcuk
f42ce2b0d1 Fix bug with blink auth flow (#44769) 2021-01-04 13:16:59 +01:00
Pascal Vizeli
506fdc877a Update docker base image 2021.01.0 (#44761) 2021-01-04 13:16:55 +01:00
J. Nick Koston
f33c1332b9 Add index to old_state_id column for postgres and older databases (#44757)
* Add index to old_state_id column for older databases

The schema was updated in #43610 but the index was not
added on migration.

* Handle postgresql missing ondelete

* create index first
2021-01-04 13:16:52 +01:00
Maciej Bieniek
8da79479d3 Change rest sensors update interval for Shelly Motion (#44692)
* Change rest sensors update interval for Shelly Motion

* Cleaning

* Fix typo

* Remove unnecessary parentheses
2021-01-04 13:16:46 +01:00
Paulus Schoutsen
92e354ca38 Guard unbound var for DSMR (#44673) 2021-01-04 13:16:40 +01:00
Maciej Bieniek
f771d8ff14 Change rest sensors update interval for Shelly Motion (#44692)
* Change rest sensors update interval for Shelly Motion

* Cleaning

* Fix typo

* Remove unnecessary parentheses
2021-01-04 13:14:07 +01:00
Pascal Vizeli
a7a4875f52 Add more debug details to running timeouts (#43644)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-01-04 13:10:39 +01:00
Kendell R
5b67030c26 Change WHITELIST to ALLOWLIST for websockets (#44766) 2021-01-04 12:40:03 +01:00
Bob Matcuk
0cff069c98 Fix bug with blink auth flow (#44769) 2021-01-04 12:33:34 +01:00
Erik Montnemery
34bd70aee6 Fix race when handling MQTT discovery messages (#44730)
* Fix race when handling MQTT discovery messages

* Lint

* retrigger checks
2021-01-04 12:28:17 +01:00
Ville Skyttä
43474762b2 Drop remaining Python < 3.8 support (#44743)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-01-04 11:47:29 +01:00
Daniel Shokouhi
134db3f710 Bump pyobihai (#44768) 2021-01-04 11:46:58 +01:00
J. Nick Koston
12af87bc6e Add index to old_state_id column for postgres and older databases (#44757)
* Add index to old_state_id column for older databases

The schema was updated in #43610 but the index was not
added on migration.

* Handle postgresql missing ondelete

* create index first
2021-01-04 10:51:44 +01:00
Greg Dowling
3c62c21991 Bumo pyroon version to 0.0.30 (#44800) 2021-01-04 10:31:13 +01:00
Oliver
805a9bcb97 Update to denonavr version 0.9.10 (#44791) 2021-01-04 09:59:08 +01:00
dependabot[bot]
e9d2f583b6 Bump dessant/lock-threads from v2.0.1 to v2.0.3 (#44806)
Bumps [dessant/lock-threads](https://github.com/dessant/lock-threads) from v2.0.1 to v2.0.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.0.1...486f7380c15596f92b724e4260e4981c68d6bde6)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-01-04 09:43:43 +01:00
Matthias Alphart
ad4804f38a Fix knx.send service not accepting floats (#44802) 2021-01-04 04:49:29 +01:00
Álvaro Fernández Rojas
ec926105a0 Bump PyTado to 0.10.0 (#44770)
* Bump PyTado to v0.10.0

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

* Tado: switch to getDeviceInfo

This function has been introduced in version 0.10.0 of PyTado.

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

* Tado: update tests

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-01-04 03:53:15 +01:00
Matthias Alphart
2bd8ee34f4 Update xknx to 0.16.0 (#44749)
* update xknx to 0.16.0

* fix telegram in knx_event and knx.send service

* fix knx.send to not coerce floats to int

fixes #44792
also enables strings to be sent

* Revert "fix knx.send to not coerce floats to int"

This reverts commit ac40fb53f9.
2021-01-04 03:07:12 +01:00
migube
10b5912901 Reconnect mochad light on on/off command (#44507) 2021-01-03 20:01:05 +01:00
Will Hughes
1fc4284a29 Add service to lock/unlock Sure Petcare pet flaps (#44557)
* Add service to lock/unlock Sure Petcare pet flaps

Adds a service to the Sure Petcare pet flaps to allow lock, unlocking,
locking in and locking out pets using the pet flap

* Linting

* Changes from code review
2021-01-03 13:43:16 +01:00
dzukero
2ed7b90027 Add RFXtrx Rfy venetian blinds tilt control (#44309)
* Add tilt control for RFXtrx Rfy venetian blinds

* Update Rfy cover test

* Update the required version of pyRFXtrx

* Update required pyRFXtrx version to 0.26.1

* Revert "Update required pyRFXtrx version to 0.26.1"

This reverts commit d54f1645d5.

* Revert "Update the required version of pyRFXtrx"

This reverts commit ac36d65326.

* Update required version of pyRFXtrx to 0.26.1

* @dzukero
Update required version of pyRFXtrx to 0.26.1

* Make requested changes from review

* Fix isort

* Remove set tilt position support

* Remove set tilt position support per review
2021-01-03 12:59:22 +01:00
badguy99
cc21639f00 Fix Soma integration reload (#44750)
* fix async_unload_entry so that component reload works from GUI

* update to use asyncio based on review feedback
2021-01-02 18:38:45 -08:00
Joakim Plate
3de0610909 Support google assistant stopping for assumed state covers (#44266)
* Support stopping for assumed state covers

* Adjust black formatting
2021-01-02 23:01:20 +01:00
Álvaro Fernández Rojas
067f2d0098 Add tado zone binary sensors (#44576)
These should be binary sensors.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-01-02 13:35:59 +01:00
Pascal Vizeli
40cbe597be Update docker base image 2021.01.0 (#44761) 2021-01-02 12:07:52 +01:00
Will Hughes
a6e474c7c9 Update surepy to v0.4.0 (#44556)
* Update surepy to v0.4.0

* Clarify pylint disable

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-02 03:52:33 +01:00
Allen Porter
321c0a87ae Resolve nest pub/sub subscriber token refresh issues (#44686) 2021-01-02 01:51:01 +01:00
Paulus Schoutsen
a2ca08905f Guard unbound var for DSMR (#44673) 2021-01-02 01:34:10 +01:00
Franck Nijhof
508d33a220 Remove deprecated PTVSD integration (#44748) 2021-01-01 23:36:15 +01:00
Franck Nijhof
65cf2fcb6f Drop asynctest (#44746) 2021-01-01 22:31:56 +01:00
Franck Nijhof
79aad3f07b Bumped version to 2021.1.0b1 2021-01-01 21:14:18 +01:00
Robert Svensson
e781e1b26c Bump H11 library to support non RFC line endings (#44735) 2021-01-01 21:13:43 +01:00
J. Nick Koston
c60390a52a Fix templates for rest notify (#44724) 2021-01-01 21:13:40 +01:00
J. Nick Koston
af1d46aa6c Fix rest notify GET without params configured (#44723) 2021-01-01 21:13:36 +01:00
J. Nick Koston
6d33f6a115 Fix script wait templates with now/utcnow (#44717) 2021-01-01 21:13:32 +01:00
Allen Porter
39b9821d29 Fix broken test test_auto_purge in recorder (#44687)
* Fix failing test due to edge-of-2021 bug

* Rewrite test_auto_purge to make the intent more clear
2021-01-01 21:13:28 +01:00
Alexei Chetroi
864546201e Bump up ZHA dependencies (#44680)
- zigpy == 0.29.0
- zigpy_deconz == 0.11.1
- zha-quirks == 0.0.51
2021-01-01 21:13:25 +01:00
Paulus Schoutsen
1c2e4226dc Zeroconf lowercase (#44675) 2021-01-01 21:13:21 +01:00
Allen Porter
34a6b4deb0 Fix legacy nest api binary_sensor initialization (#44674) 2021-01-01 21:13:18 +01:00
Paulus Schoutsen
2b1df2e63f Catch Shelly zeroconf types with uppercase too (#44672)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-01-01 21:13:14 +01:00
Diogo Gomes
610ee24bb1 always sync unit_of_measurement (#44670) 2021-01-01 21:13:10 +01:00
Daniel Lintott
3cd97398aa Bump zm-py version to 0.5.2 (#44658) 2021-01-01 21:13:07 +01:00
David F. Mulcahey
7d99a35547 Bump ZHA quirks version to 0.0.50 (#44650) 2021-01-01 21:13:04 +01:00
Mark Allanson
470fe887a5 Upgrade canary integration to use py-canary 0.5.1 (#44645)
Fixes #35569
2021-01-01 21:13:00 +01:00
Sian
1b26f6e8e0 Correct Dyson climate fan auto mode (#44569)
Co-authored-by: Justin Gauthier <justin@justin-tech.com>
2021-01-01 21:12:56 +01:00
Maciej Bieniek
8a689a0105 Add motion binary sensor (#44445) 2021-01-01 21:12:52 +01:00
Raman Gupta
e65903822d Suppress vizio logging API call failures to prevent no-op logs (#44388) 2021-01-01 21:12:48 +01:00
J. Nick Koston
335aceedfb Update py-august to 0.25.2 to fix august token refreshes (#40109)
* Update py-august to 0.26.0 to fix august token refreshes

* bump version
2021-01-01 21:12:44 +01:00
Paulus Schoutsen
2b0556520b Catch Shelly zeroconf types with uppercase too (#44672)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-01-01 20:54:43 +01:00
Martin Hjelmare
c7fa98211d Bump locationsharinglib to 4.1.5 (#44742) 2021-01-01 19:48:33 +01:00
J. Nick Koston
661eb0338a Fix templates for rest notify (#44724) 2021-01-01 19:28:20 +01:00
Robert Svensson
c4fbfc25e3 Bump H11 library to support non RFC line endings (#44735) 2021-01-01 18:39:59 +01:00
Franck Nijhof
70d2c37131 Upgrade pre-commit to 2.9.3 (#44740) 2021-01-01 18:10:28 +01:00
Franck Nijhof
5c634ac8bb Upgrade debugpy to 1.2.1 (#44737) 2021-01-01 17:59:05 +01:00
Franck Nijhof
ea10f96bf7 Upgrade sentry-sdk to 0.19.5 (#44738) 2021-01-01 17:58:13 +01:00
Daniel Perna
e2e79aba4e Update pyhomematic to 0.1.71 (#44732) 2021-01-01 17:20:55 +01:00
Sian
52e1aad008 Correct Dyson climate fan auto mode (#44569)
Co-authored-by: Justin Gauthier <justin@justin-tech.com>
2021-01-01 16:06:36 +01:00
Chris
176415b045 Fix AccuWeather condition mapping (#44710) 2021-01-01 15:40:28 +01:00
Franck Nijhof
1f0a6b178e Fix Gree climate turn on/off (#44731) 2021-01-01 15:11:25 +01:00
Clifford Roche
f0e96f739b Add turn_on and turn_off to gree climate component (#43207) 2021-01-01 13:58:38 +01:00
Fabian Affolter
ddfc3d6d8e Upgrade volkszaehler to 0.2.1 (#44703) 2021-01-01 13:49:57 +01:00
Fabian Affolter
168b3ae6af Upgrade alpha-vantage to 2.3.1 (#44705) 2021-01-01 13:48:24 +01:00
Franck Nijhof
2f486543df Drop Python 3.7 support (#43805) 2021-01-01 13:47:01 +01:00
Raman Gupta
b651f63ef0 Suppress vizio logging API call failures to prevent no-op logs (#44388) 2021-01-01 13:35:05 +01:00
Allen Porter
051f6c0e72 Increase test coverage for Nest SDM integration (#44718) 2021-01-01 13:31:18 +01:00
Fabian Affolter
c4b11322c8 Updated certifi to >=2020.12.5 (#44701) 2021-01-01 13:07:07 +01:00
J. Nick Koston
2ef25e7414 Fix script wait templates with now/utcnow (#44717) 2021-01-01 13:03:34 +01:00
Franck Nijhof
7415dacec9 Add Python 3.9 to CI (#41373) 2021-01-01 12:51:27 +01:00
J. Nick Koston
94825b3e15 Do not restore unavailable state for august locks (#44722) 2021-01-01 12:44:53 +01:00
J. Nick Koston
681f76b99d Fix rest notify GET without params configured (#44723) 2021-01-01 12:40:08 +01:00
Fabian Affolter
5e0eea21d4 Upgrade pyowm to 3.1.1 (#44706) 2020-12-31 20:02:59 -10:00
Fabian Affolter
99eed915d6 Upgrade slixmpp to 1.6.0 (#44693) 2020-12-31 19:35:42 -10:00
Jason Cronquist
787027958d Use the async_call context in result of call_service (#44458) 2020-12-31 16:15:39 -10:00
hung2kgithub
db6bd22fc9 Add Chinese (Hong Kong) to Google Cloud TTS (#44689) 2021-01-01 01:59:42 +01:00
Oncleben31
41ebfcdc9e Add device info to Météo-France (#44457) 2021-01-01 01:51:03 +01:00
Fabian Affolter
12b7b2098d Upgrade sqlalchemy to 1.3.22 (#44698) 2020-12-31 14:28:15 -10:00
Glenn Waters
edee0682ba Bump upb-lib to 0.4.12 (#44721) 2021-01-01 00:48:44 +01:00
Fabian Affolter
61f137c7c6 Upgrade pytz to >=2020.5 (#44702) 2021-01-01 00:38:38 +01:00
Glenn Waters
74b480e9d4 Bump elkm1-lib to 0.8.10 (#44714) 2020-12-31 23:44:04 +01:00
Allen Porter
f1dff973dc Fix broken test test_auto_purge in recorder (#44687)
* Fix failing test due to edge-of-2021 bug

* Rewrite test_auto_purge to make the intent more clear
2020-12-31 12:04:12 -10:00
Allen Porter
fe9a254017 Fix legacy nest api binary_sensor initialization (#44674) 2020-12-31 19:22:24 +01:00
Ville Skyttä
1c8fbc7e6a Upgrade codespell to 2.0.0 (#44695)
* Upgrade codespell to 2.0.0

* Fix newly found spelling errors
2020-12-31 19:14:07 +01:00
Mike Keesey
cdda5900e5 Upgrade pubnubsub-handler to 1.0.9 (#44542)
This resolves an error thrown on shutdown of the wink component
2020-12-31 18:48:36 +01:00
Alexei Chetroi
64dd748330 Bump up ZHA dependencies (#44680)
- zigpy == 0.29.0
- zigpy_deconz == 0.11.1
- zha-quirks == 0.0.51
2020-12-31 14:07:15 +01:00
Franck Nijhof
408da3600b Upgrade feedparser to 6.0.2 (#44683) 2020-12-31 12:00:43 +01:00
Martin Hjelmare
4bde0640d6 Bump pytradfri to 7.0.6 (#44661) 2020-12-31 01:18:58 +01:00
Mark Allanson
1428c403ba Upgrade canary integration to use py-canary 0.5.1 (#44645)
Fixes #35569
2020-12-31 01:16:53 +01:00
Paulus Schoutsen
c7bf7b32a2 Zeroconf lowercase (#44675) 2020-12-31 01:06:26 +01:00
Diogo Gomes
b290a8b5a1 always sync unit_of_measurement (#44670) 2020-12-31 00:39:14 +01:00
Maciej Bieniek
687f90e164 Add motion binary sensor (#44445) 2020-12-31 00:02:56 +01:00
Ville Skyttä
da66a4e933 Device automation config error message improvements (#44656)
Refs #44654, #44655
2020-12-31 00:02:14 +01:00
J. Nick Koston
e2964ca878 Update py-august to 0.25.2 to fix august token refreshes (#40109)
* Update py-august to 0.26.0 to fix august token refreshes

* bump version
2020-12-30 23:10:42 +01:00
Franck Nijhof
b1bb0d12c9 Upgrade vsure to 1.6.1 (#44657) 2020-12-30 23:06:30 +01:00
J.P. Krauss
e37bb51320 Add AirNow Integration (#40091) 2020-12-30 20:25:57 +01:00
Daniel Lintott
15a4e1e1b3 Bump zm-py version to 0.5.2 (#44658) 2020-12-30 10:15:27 -08:00
Fabian Affolter
2e62e0661b Upgrade colorlog to 4.6.2 (#44652) 2020-12-30 17:12:51 +01:00
zewelor
16ddbb95f4 Add yeelight service to enable disable music mode (#44533)
* Add service to enable / disable music mode

* Black reformat

* Update test

* Fix tests

* Revert consts cleanup

* Use entity method as service call

* Use ATTR for service call

* Sort

* Add tests

* Fix isort

* Fix print

* Black
2020-12-30 17:00:28 +01:00
David F. Mulcahey
a6c83cc46a Bump ZHA quirks version to 0.0.50 (#44650) 2020-12-30 09:11:08 -05:00
Fabian Affolter
e2e07cf42e Upgrade sendgrid to 6.4.8 (#44646) 2020-12-30 13:33:13 +01:00
Franck Nijhof
4b057101c5 Bumped version to 2021.2.0dev0 (#44647) 2020-12-30 13:27:12 +01:00
Franck Nijhof
4b5056a456 Bumped version to 2021.1.0b0 2020-12-30 12:18:22 +01:00
Fabian Affolter
6e5e45b937 Upgrade youtube_dl to 2020.12.29 (#44643) 2020-12-30 11:24:00 +01:00
Franck Nijhof
222c5b532c Merge branch 'master' into dev 2020-12-30 10:59:49 +01:00
Franck Nijhof
e670a8f3b6 Merge pull request #44642 from home-assistant/rc 2020-12-30 10:45:15 +01:00
Simone Chemelli
338938a38e Fix shelly shutdown AttributeError (#44172)
* Additional check for clean shutdown

* Changed approach

* Remover leftover

* Added callback key

* Moved to listen once
2020-12-30 10:29:54 +01:00
Allen Porter
baacf2cd7d Publish timestamps in nest events (#44641) 2020-12-30 10:23:48 +01:00
Fabian Affolter
a212248f8d Upgrade psutil to 5.8.0 (#44640) 2020-12-30 10:22:09 +01:00
Franck Nijhof
d1ad474a8d Bumped version to 2020.12.2 2020-12-30 10:17:56 +01:00
Phil Cole
af4849c183 Bump pycarwings2 to 2.10 (#44634) 2020-12-30 10:17:02 +01:00
michaeldavie
19531b90a3 Bump env_canada to 0.2.5 (#44631) 2020-12-30 10:16:58 +01:00
J. Nick Koston
62f8d6cc04 Fix template triggers from time events (#44603)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-12-30 10:16:55 +01:00
Erik Montnemery
99d7c83917 Fix Tasmota device triggers (#44574) 2020-12-30 10:16:52 +01:00
Robert Svensson
59c20686c1 Bump pydeconz to version 77 (#44514) 2020-12-30 10:16:48 +01:00
MatthewFlamm
78f81b6e37 Fix falsey comparisons in NWS weather (#44486) 2020-12-30 10:16:44 +01:00
On Freund
a58219bbc7 Fix Volumio pause with missing track type (#44447) 2020-12-30 10:16:41 +01:00
Aaron Bach
f76211d58a Fix bug in unloading RainMachine options listener (#44359)
* Fix bug in unloading RainMachine options listener

* Order
2020-12-30 10:16:38 +01:00
Aaron Bach
0cac5b7cb3 Bump pyiqvia to 0.3.1 (#44358) 2020-12-30 10:16:35 +01:00
rubenbe
89168dd372 Update pytradfri to 7.0.5 (#44347) 2020-12-30 10:16:32 +01:00
ehendrix23
9c5dba6a24 Bump pyMyQ to version 2.0.12 (#44328) 2020-12-30 10:16:29 +01:00
Jc2k
2be5547c57 Fix velux homekit covers not enumerated correctly (#44318) 2020-12-30 10:16:25 +01:00
Greg Dowling
8394685493 Bump pyroon to 0.0.28 (#44302) 2020-12-30 10:16:21 +01:00
Oliver
c8bb6eb3bf Update denonavr to 0.9.8 (#44194) 2020-12-30 10:16:18 +01:00
J. Nick Koston
217e3c44d6 Bump HAP-python to 3.1.0 (#44176)
Fixes many spec compliance issues, unavailable cases
following an unexpected exception, and a thread safety
race condition.
2020-12-30 10:16:13 +01:00
Allen Porter
eb07282e9b Add debug logging for failed OAuth token refreshes to help users diagnose (#44637) 2020-12-30 10:03:27 +01:00
Franck Nijhof
ee194b9411 Initial Verisure cleanups (#44639) 2020-12-30 09:55:18 +01:00
Phil Cole
9cc768b34c Bump pycarwings2 to 2.10 (#44634) 2020-12-30 09:44:44 +01:00
Chris Talkington
12aa537eb9 Support homekit discovery for roku (#44625)
* support homekit discovery for roku

* Update config_flow.py

* Update config_flow.py

* Update test_config_flow.py

* Update __init__.py

* Update __init__.py

* Update strings.json

* Update manifest.json

* Update __init__.py

* Update test_config_flow.py

* Update __init__.py

* Update manifest.json

* Update config_flow.py

* Update config_flow.py

* Update __init__.py

* Update test_config_flow.py

* Update __init__.py

* Update manifest.json

* Update __init__.py

* Update zeroconf.py

* Update config_flow.py

* Update test_config_flow.py

* Update config_flow.py

* Update test_config_flow.py

* Update __init__.py

* Update config_flow.py

* Update test_config_flow.py

* Update manifest.json

* Update zeroconf.py
2020-12-29 20:43:02 -06:00
michaeldavie
35a19a4d02 Bump env_canada to 0.2.5 (#44631) 2020-12-30 02:54:04 +01:00
Matt Bilodeau
a750c95d2e Add OutdoorPlug to wemo (#44629) 2020-12-30 02:43:44 +01:00
Bram Kragten
62237adf91 Updated frontend to 20201229.0 (#44632) 2020-12-30 00:19:38 +01:00
J. Nick Koston
035f9412ba Fix template triggers from time events (#44603)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-12-29 23:16:39 +01:00
starkillerOG
e287160f72 Add discovery to Motion Blinds (#44615)
* Add discovery to Motion Blinds

* Update test_config_flow.py

* ommit keys()

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

* use _ to indicate private variables

* disregard changes to en.json

* remove unused errors

* clearify multicast=None

* improve tests

* make self._key a local variable

* fix styling

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2020-12-29 11:13:31 -08:00
Mister Wil
85d89c16ab Bump skybellpy to 0.6.3 (#44619) 2020-12-29 17:48:36 +01:00
starkillerOG
24f6f59eb4 Use entity service for motion blinds (#44611)
* Simplify motion blinds service
* Switch to using entity service
2020-12-29 07:21:51 -08:00
J. Nick Koston
4905be0c40 Move HomeKit autostart to advanced options flow (#44599) 2020-12-29 13:54:24 +01:00
Tsvi Mostovicz
c756457aa1 Fix typo in sensor names (#44598)
Fixes home-assistant/core#44464
2020-12-29 13:40:52 +01:00
starkillerOG
598202da07 Simplify motion blinds push callback (#44579) 2020-12-29 12:11:08 +01:00
rikroe
e5f31665b1 Add Config Flow to bmw_connected_drive (#39585)
* Add Config Flow to bmw_connected_drive

* Fix checks for bmw_connected_drive

* Adjust code as requested

* Clean .coveragerc after merge

* Use references for config flow

* Fix execute_service check against allowed accounts

* Adjust translation as username can be email or phone no

* Add BMWConnectedDriveBaseEntity mixin, remove unnecessary type casts

* Use BaseEntity correctly, fix pylint error

* Bump bimmer_connected to 0.7.13

* Adjustments for review

* Fix pylint

* Fix loading notify, move vin to entity attrs

* Remove vin from device registry

* Remove commented-out code

* Show tracker warning only if vehicle (currently) doesn't support location

* Remove unnecessary return values & other small adjustments

* Move original hass_config to own domain in hass.data

* Move entries to separate dict in hass.data

* Remove invalid_auth exception handling & test as it cannot happen

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2020-12-29 11:06:12 +01:00
Greg
5164a18d53 Bump version to fix returned data for old firmware (#44600) 2020-12-28 15:13:11 -10:00
Greg
a5cd4efd83 Optimize api calls between envoy_reader and Home Assistant (#42857)
* Updating sensor to use single API call

* Updated comment

Updated comment to reflect that polling is needed.

* Reduced calls to single API call

* Added except handling and increased async timeout

* Cleaned up some comments

* Added error handling

* Added last_reported date for inverters

* Added message during failed update

* Added retries to update function

* Updated update function

* Reformatted sensor.py with black

* Increased default scan period

* fixed timedelta typo

* importing CoordinatorEntity

* Check during setup else raise PlatformNotReady

* Removed async_update and override state

* using SCAN_INTERVAL constant

* fixed typo

* removed unused constant

* Removed retry logic

* Changed to catching exceptions rather than strings

* shortened string split line

* Replace requests_async with httpx

* Bump envoy_reader version to 0.17.2

* Resolving comments from PR requested changes

* Fixed typo in scan_interval

* Removed period from logging messages

* Bumping envoy_reader to 0.18.0

* Incorporating suggested changes

* Removing no longer used try/except

* Fail setup if authentication fails

* Bump envoy_reader to 0.18.2
2020-12-28 23:58:09 +01:00
mvn23
0d8ed9061c Update pyotgw to 1.0b1 (#43352)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-28 23:04:17 +01:00
Clifford Roche
ee97023053 Add support for Gree device light panels (#42979) 2020-12-28 22:32:04 +01:00
starkillerOG
a22d9e54db Improve TDBU motion blinds control (#44500)
* improve TDBU motion blinds control

* Simplify service registration
2020-12-28 13:09:53 -08:00
TheJulianJES
0bc04a6501 Reset hs color/color temperature when changing the other one (ZHA) (#44566) 2020-12-28 14:05:15 -05:00
Philip Allgaier
392c058d34 Ensure consistent spelling of "ID" (#44585) 2020-12-28 18:34:08 +01:00
Anton Tolchanov
13d6f5454d Turn on denonavr receiver when a source is changed (#44473) 2020-12-28 18:12:49 +01:00
badguy99
d95696e4f5 Soma cover battery level attribute (#44459) 2020-12-28 17:10:49 +01:00
Álvaro Fernández Rojas
50e11773ee Tado: use proper variable name to avoid confusion (#44571)
Current device_id variable refers to the Home ID obtained from the Tado API.
Let's use home_id in order to avoid confusion with Tado devices.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2020-12-28 14:57:51 +01:00
Erik Montnemery
ed576edde7 Fix Tasmota device triggers (#44574) 2020-12-28 14:41:39 +01:00
Allen Porter
71af0fac16 Improve nest setup error handling (#44385)
* Improve error handling user experience

This is meant to make the nest integration quieter.  Exceptions are handled with a single log error message.


Co-authored-by: j-stienstra <65826735+j-stienstra@users.noreply.github.com>
2020-12-27 20:30:51 -08:00
Álvaro Fernández Rojas
6d043f2ca1 Tado: add full list of devices (#44475)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2020-12-27 16:36:35 +01:00
Allen Porter
51b88337ca Simplify nest event handling (#44367)
* Simplify nest event handling

Use device specific update callbacks rather than a global callback.
The motivation is to prepare for a follow up change that will store
camera specific event tokens on the camera itself, so that a service
can later fetch event specific image snapshots, which would be difficult
to send across the event bus.

* Increase nest camera test coverage

* Remove unnecessary device updates for nest cameras

* Remove unused imports

* Fix device id check to look at returned entry

* Remove unused imports after rebase

* Partial revert of nest event simplification

* Push more update logic into the nest library

* Revert nest device_info changes

* Revert test changes to restore global update behavior

* Bump nest library version to support new callback interfaces
2020-12-27 09:49:22 +01:00
Rob Bierbooms
9531b08f2a Add explicit support for Luxembourg Smarty meter in dsmr integration (#43975)
* Add support for Luxembourg Smarty meter

* Add config flow test

* Add sensor tests
2020-12-27 09:39:36 +01:00
Tim van Cann
1f27fb4644 Fully remove Avri integration (#44478)
* Fully remove Avri integration

* Remove avri from .coveragerc
2020-12-27 09:30:20 +01:00
aque0us
71c9007e06 Add Olivia voice to Amazon Polly TTS (#44513)
* Update tts.py

Added Olivia Neural Voice

* Correct linting

Co-authored-by: Joakim Plate <elupus@ecce.se>
2020-12-27 08:32:22 +01:00
Robert Svensson
49d9823630 Bump pydeconz to version 77 (#44514) 2020-12-26 22:24:05 +01:00
Martin Weinelt
f8df8b6b19 Add album art support in the mpd component (#44527)
* Add album art support in the mpd component

Uses `readpicture` to retrieve embedded artwork and `albumart` to
acquire cover art located in the media directory.

As the mpd component supports multiple different implementations (think
mopidy, PI MusicBox, etc.) we check for the availability of each command
before using them.

Tested against mpd 0.22.3, which includes support for both.

* fixup! Add album art support in the mpd component
2020-12-26 22:18:28 +01:00
MatthewFlamm
f8ab98d2e1 Fix falsey comparisons in NWS weather (#44486) 2020-12-26 13:53:34 +01:00
Ville Skyttä
cfb02b5392 Upgrade huawei-lte-api to 1.4.17 (#44499)
Mostly to pave way for implementing network connection mode change
services, such as PR #44380.

https://github.com/Salamek/huawei-lte-api/releases/tag/1.4.13
https://github.com/Salamek/huawei-lte-api/releases/tag/1.4.14
https://github.com/Salamek/huawei-lte-api/releases/tag/1.4.15
https://github.com/Salamek/huawei-lte-api/releases/tag/1.4.16
https://github.com/Salamek/huawei-lte-api/releases/tag/1.4.17
2020-12-26 12:49:44 +01:00
Hmmbob
3a71b62de6 Update README.rst to avoid redirects (#44519) 2020-12-26 10:05:41 +01:00
Thibaut
dc79d71f39 Handle missing Somfy devices during update (#44425)
* Handle missing devices during update

* Raise error only if there was devices previously

* Not final dot

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

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2020-12-25 22:29:23 +01:00
Martin Weinelt
fa69daf5b3 Convert mpd component to use the async MPDClient (#44384)
Upgrades python-mpd2 to 3.0.1.
2020-12-25 21:49:30 +01:00
Matt Bilodeau
adf4eb0cc9 Bump pywemo to 0.5.6 (#44440) 2020-12-25 16:37:30 +01:00
Nick
9a5132054f Support auto as Dyson fan on device state (#44472)
* - Make the dyson integration report that the fan is on if its in AUTO or FAN states instead of only in FAN state

* - Fix code style issue to be compliant with flake8
2020-12-25 14:49:14 +01:00
HomeAssistant Azure
6f2ed86c49 [ci skip] Translation update 2020-12-25 00:03:46 +00:00
Thibaut
19b957cd84 Remove useless async_add_executor_job (#44496) 2020-12-24 20:42:56 +01:00
Tomasz Pieczykolan
d385a51653 Fix the docstring in type_fans.py (#44511) 2020-12-24 20:40:30 +01:00
Eric Severance
d912e91e81 Periodically attempt to discover new wemo devices (#44361)
* Periodically attempt to discover new wemo devices

* Set self._stop=None after stopping the periodic discovery task

* Use the async_fire_time_changed test helper to simplify test_discovery

* Stop the pywemo registry outside of the async loop

* Add a comment describing why async_fire_time_changed is used
2020-12-24 12:25:14 +01:00
J. Nick Koston
677fc6e2bb Translate siri requests to turn on thermostats to valid targets (#44236)
Siri always requests auto mode even when the device does not
support auto which results in the thermostat failing to turn
on as success is assumed.  We now determine the heat cool
target mode based on the current temp, target temp, and
supported modes to ensure the thermostat will reach the
requested target temp.
2020-12-23 17:23:26 -10:00
Diogo Gomes
2d131823ce Fix filter sensor None state (#44439)
Co-authored-by: Franck Nijhof <frenck@frenck.dev>
2020-12-24 02:24:11 +01:00
HomeAssistant Azure
6b743c3d16 [ci skip] Translation update 2020-12-24 00:03:44 +00:00
starkillerOG
82f9de31b1 Motion Blinds upgrade to local push (#44391)
* Motion Blinds upgrade to local push
2020-12-23 15:15:11 -08:00
Dermot Duffy
769513d6a8 Bump hyperion-py to 0.6.1 (#44490) 2020-12-23 21:46:04 +01:00
HomeAssistant Azure
139fb518d6 [ci skip] Translation update 2020-12-23 00:03:22 +00:00
Allen Porter
24ccdb55bb Move Legacy Works With Nest integration to subdirectory (#44368)
* Move Legacy Works With Nest integration to subdirectory

Motivation is to streamline the actively developed integration e.g. make code coverage easier to reason about and simplify __init__.py
2020-12-22 12:42:37 -08:00
Ville Skyttä
9c5f608ffd Remove Travis CI config (#44443)
https://blog.travis-ci.com/2020-11-02-travis-ci-new-billing
https://docs.travis-ci.com/user/migrate/open-source-repository-migration/#frequently-asked-questions
2020-12-22 13:49:42 +01:00
dependabot[bot]
1027361f27 Bump codecov/codecov-action from v1.1.0 to v1.1.1 (#44442)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from v1.1.0 to v1.1.1.
- [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/v1.1.0...1fc7722ded4708880a5aea49f2bfafb9336f0c8d)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-12-22 13:33:37 +01:00
PhiBo
ffbef0bcd1 Fix KNX issue if 0 kelvin is reported by device (#44392)
Co-authored-by: Matthias Alphart <farmio@alphart.net>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2020-12-22 13:28:37 +01:00
Matthias Alphart
67ed730c08 KNX BinarySensor takes float values for reset_after (#44446) 2020-12-22 12:39:50 +01:00
On Freund
d4453908d5 Fix Volumio pause with missing track type (#44447) 2020-12-22 12:32:56 +01:00
HomeAssistant Azure
2ee2f85574 [ci skip] Translation update 2020-12-22 00:06:12 +00:00
Joakim Plate
56b3e0b52e Support area on entities for google assistant (#44300)
* Support area on entities

* Don't let registry area override config
2020-12-21 21:55:06 +01:00
treylok
1ca99c4fa4 Add ecobee humidity attributes (#44366)
* Update humidity attributes.

* Update climate.py

* Raise ValueError

* Update conditions for humidity controls to show

Humidity controls only show when the humidifier mode is in "manual" mode.
2020-12-21 20:03:26 +01:00
Emily Mills
f89c682ea6 Cleanup and optimization for Zerproc (#44430)
* Cleanup and optimization for Zerproc

* Remove unnecessary extra method

* Add debug log for exceptions on disconnect
2020-12-21 12:50:31 -06:00
Oncleben31
bf253819dd Add additional debug launch methods in launch.json (#44419) 2020-12-21 17:11:53 +01:00
Diogo Gomes
cb82f5159e Reduce IPP errors when printer is offline (#44413) 2020-12-21 16:53:47 +01:00
Oliver
0b1791c293 Update denonavr to 0.9.9 (#44411) 2020-12-21 16:35:47 +01:00
dependabot[bot]
83794f0629 Bump actions/setup-python from v2.2.0 to v2.2.1 (#44420)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from v2.2.0 to v2.2.1.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2.2.0...3105fb18c05ddd93efea5f9e0bef7a03a6e9e7df)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-12-21 14:25:06 +01:00
Oncleben31
369cf10eb3 Bump meteofrance-api to 1.0.1 (#44389) 2020-12-21 13:49:53 +01:00
HomeAssistant Azure
f3cabe97e0 [ci skip] Translation update 2020-12-21 00:04:09 +00:00
Дубовик Максим
89fe232643 Add google cloud tts SSML + fix (#40203)
* Add SSML + fix

SSML option is added + pitch paramter fix + couple style code changes

* Remove redundant .get()

* Fix PITCH_SCHEMA, remove redundant .get of dict
2020-12-20 05:40:43 +01:00
JJdeVries
1ae3bb6af5 Add xiamoi_miio the water_box / mop status (#43355)
* Adding the water_box / mop status

* Clean up

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Teemu R. <tpr@iki.fi>
2020-12-20 05:13:52 +01:00
Arto Jantunen
5dc48df093 Add support for toggling Daikin streamers (#40418)
* pydaikin version bump to 2.4.0

Add support for controlling the streamer feature.

* Add switch for toggling Daikin streamer on and off

* Have DaikinStreamerSwitch inherit from SwitchEntity instead of ToggleEntity
2020-12-20 04:53:01 +01:00
Allen Porter
81341bbf91 Handle expiration of nest auth credentials (#44202)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-20 01:41:29 +01:00
HomeAssistant Azure
5bdf022bf2 [ci skip] Translation update 2020-12-20 00:04:36 +00:00
Sjack-Sch
00c0e9b8da Home connect functional and ambient light added (#44091)
* Update nl.json

* added period to end of every logging entry.

* Functional and ambient light added

* Change to dict.get method

* Update light.py

* Update __init__.py

Platforms sorted 🔡.

* Update api.py

- Removed all none light platform related changes.
- Period removed from loggin.
- Storing entities removed.
- Not needed formating change reverted.
-

* Update const.py

All words seperated with underscore.

* Update nl.json

Reverted change on translation file.

* Update light.py

-All words of constants seperated with underscore.
- f-string used iso concatenation.
- Added "ambient"to loggin text.
- Removed self._state = false when color setting did not succeed.
- Logging starts with a capital.

* Update api.py

- Removed ending perio in logging
- Reverted formating
- Removed self.device.entities.append(self)
-

* Update entity.py

- Removed self.device.entities.append(self)

* Update api.py

- Adding newline at end of file
- Added whitespave after ","

* Update api.py

Newline at end of file

* Update const.py

Removed unused.

* Update light.py

- seperated words with whitespaces
- improved debug text

* Update light.py

remove state setting after an error
2020-12-19 23:40:44 +01:00
Emily Mills
4f088dd77a Connect concurrently to discovered Zerproc lights (#44376)
* Connect concurrently to discovered Zerproc lights

* Add return type to connect_light

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-19 13:31:45 -06:00
Aaron Bach
60ecc8282c Add options flow for Recollect Waste (#44234)
* Add options flow for Recollect Waste

* Add test

* Typing

* Typing

* Typing AGAIN

* Add missing type hints

* Code review

* Code review

* Don't need to block until done
2020-12-19 10:29:37 -07:00
Aaron Bach
fbc695e5cf Fix setup of SimpliSafe options flow test (#44375) 2020-12-19 18:22:34 +01:00
eyager1
af6dd698c9 Set amazon polly network timeout settings (#44185)
* Change network timeout settings

* Change network timeout settings
2020-12-19 18:21:05 +01:00
Diogo Gomes
b7d4c1826c Add filter sensor device class from source entity (#44304)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-19 17:51:24 +01:00
Maciej Bieniek
ccbf857266 Clean Airly config flow (#44352) 2020-12-19 09:30:45 -07:00
Doug Hoffman
3ac9ead850 Bump venstarcolortouch to 0.13 (#44373) 2020-12-19 09:30:06 -07:00
Jeff Irion
a7513c9c13 Strip "adb shell " prefix in androidtv.adb_command service (#44225) 2020-12-19 16:52:44 +01:00
Emily Mills
9de393d116 Convert zerproc to use new upstream async api (#44357) 2020-12-19 09:35:47 -06:00
Abílio Costa
896f51fd82 Add Wind to Accuweather sensors (#44364) 2020-12-19 16:10:02 +01:00
Ville Skyttä
317ed418dd Use singleton enum for "not set" sentinels (#41990)
* Use singleton enum for "not set" sentinel

https://www.python.org/dev/peps/pep-0484/#support-for-singleton-types-in-unions

* Remove unused variable
2020-12-19 12:46:27 +01:00
Ville Skyttä
de04a1ed67 Enable more Bandit tests (#44307)
https://bandit.readthedocs.io/en/latest/plugins/index.html#complete-test-plugin-listing
2020-12-19 12:35:13 +01:00
HomeAssistant Azure
1ac937c7d5 [ci skip] Translation update 2020-12-19 00:03:56 +00:00
emufan
61c57d4d56 Add another xml content type for JSON conversion in RESTful sensor (#44312)
* Update sensor.py

Some xml-result is passed via "application/xhtml+xml" instead of text/xml or application/xml. And then the xml structure is not parsed to json as expected. I changed it locally, but suggest to add thise here as well.

* Update homeassistant/components/rest/sensor.py

Fine for me as well, as it is working this way as well. But I would not see any disadvantage to convert everything, what is possible - a better scrape sensor this way. ;)

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-12-18 14:27:12 -06:00
Brian Rogers
0fddaedc12 Adjust Rachio logging level when adding shared controllers (#44323)
* change logging level

* unnecessary continue

* Clean up

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-18 14:15:08 -06:00
Aaron Bach
14432248b0 Bump pyiqvia to 0.3.1 (#44358) 2020-12-18 21:12:16 +01:00
Heisenberg
ea578f5767 Update sensor.py (#44350)
BME280 sensor has a resolution of 0.01 degree (20 bits) so temperature values should be rounded to 2 decimal places
2020-12-18 12:29:16 -07:00
Aaron Bach
ae596c7dff Fix bug in unloading RainMachine options listener (#44359)
* Fix bug in unloading RainMachine options listener

* Order
2020-12-18 12:28:18 -07:00
dependabot[bot]
ad634a393b Bump actions/setup-python from v2.1.4 to v2.2.0 (#44345)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from v2.1.4 to v2.2.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2.1.4...8c5ea631b2b2d5d8840cf4a2b183a8a0edc1e40d)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-12-18 10:53:49 +01:00
dependabot[bot]
8adfb5dff4 Bump codecov/codecov-action from v1.0.15 to v1.1.0 (#44346)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from v1.0.15 to v1.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/v1.0.15...7de43a7373de21874ae196a78f8eb633fcf7f0c4)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-12-18 10:47:18 +01:00
ktnrg45
5b14c1da73 Bump pyps4-2ndscreen to 1.2.0 (#44273)
* Bump PS4 to 1.2.0

* Add additional media_player tests

* Fix tests
2020-12-18 08:46:59 +01:00
rubenbe
5c843a1597 Update pytradfri to 7.0.5 (#44347) 2020-12-18 08:37:32 +01:00
Dermot Duffy
8c8e607548 Alphabetize hyperion const.py (#44343) 2020-12-18 08:03:54 +01:00
HomeAssistant Azure
4bdb793a94 [ci skip] Translation update 2020-12-18 00:03:48 +00:00
Christopher Gramberg
c5fdde2a94 Convert filter tests to use pytest style (#41743) 2020-12-17 22:08:35 +01:00
mbo18
f54fcb7646 Add new sensors to meteo_france (#44150)
Co-authored-by: Thibaut <thibaut@etienne.pw>
2020-12-17 22:04:20 +01:00
Olivér Falvai
6ffa3c18b2 Upgrade Telegram lib, refactor component for breaking changes (#44147)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-17 21:09:58 +01:00
Aaron Bach
d18c9f1c74 Update ReCollect docs to use proper name (#44291) 2020-12-17 20:59:45 +01:00
Maciej Bieniek
97894bd718 Refactor Airly config flow (#44330) 2020-12-17 19:34:40 +01:00
ehendrix23
418304c702 Bump pyMyQ to version 2.0.12 (#44328) 2020-12-17 08:08:19 -10:00
Erik Montnemery
31b806ced1 Revert "Change http to auto for cast media image url" (#44327) 2020-12-17 17:43:52 +01:00
Jc2k
2b6842aee0 Fix velux homekit covers not enumerated correctly (#44318) 2020-12-17 17:12:06 +01:00
Dermot Duffy
c8e3b17362 Update quality_scale for Hyperion (#44306) 2020-12-17 17:01:22 +01:00
Pierre Ståhl
fe7109acf4 Add extended device info and some attributes to Apple TV (#44277) 2020-12-17 16:47:20 +01:00
Thibaut
524db33f13 Add Somfy battery sensor (#44311)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-17 16:46:22 +01:00
Maciej Bieniek
94e1f8e631 Refactor Airly tests (#44315) 2020-12-17 16:44:46 +01:00
Joakim Plate
7c63119ad2 Fix philips_js channel and source name entry (#44296) 2020-12-17 16:44:24 +01:00
Ben
63dfd8343d Increase surepetcare api timeout to 60s (#44316) 2020-12-17 13:20:18 +01:00
HomeAssistant Azure
d3255e63e3 [ci skip] Translation update 2020-12-17 00:02:51 +00:00
Greg Dowling
638374c36a Bump pyroon to 0.0.28 (#44302) 2020-12-17 00:01:39 +01:00
Paulus Schoutsen
735607c625 Bump version to 2021.1 (#44298) 2020-12-16 23:59:45 +01:00
Dermot Duffy
aaae452d58 Add reauth step to Hyperion config flow (#43797)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-16 23:55:31 +01:00
Santobert
d0ebc00684 Add OAuth to Neato (#44031)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-16 23:39:41 +01:00
Paulus Schoutsen
4ec81d4b67 Merge pull request #44297 from home-assistant/rc 2020-12-16 22:31:37 +01:00
Paulus Schoutsen
ac62028c19 Fix account link test 2020-12-16 20:55:52 +00:00
Paulus Schoutsen
ff9e1ddeed Bumped version to 2020.12.1 2020-12-16 20:29:55 +00:00
Shay Levy
3a82aecd38 Fix Shelly devices missing properties field (#44279) 2020-12-16 20:29:47 +00:00
Paulus Schoutsen
3a41878a8c Fix setting timestamp on input_datetime (#44274) 2020-12-16 20:29:46 +00:00
David F. Mulcahey
3ab0b63540 Default smartenergy multiplier and divisor (#44257) 2020-12-16 20:29:45 +00:00
Erik Montnemery
3752fa3123 Remove Home Assistant Cast user when removing entry (#44228)
* Remove Home Assistant Cast user when removing entry

* Fix test

* Fix test
2020-12-16 20:29:44 +00:00
Erik Montnemery
07df3b9565 Bump hatasmota to 0.1.6 (#44226) 2020-12-16 20:29:44 +00:00
Aaron Bach
43ef5bab18 Fix unhandled KeyError in Recollect Waste (#44224) 2020-12-16 20:29:43 +00:00
Rob Bierbooms
150ce05e26 Bump dsmr-parser to 0.25 (#44223)
* Bump version in manifest

* Update requirements_all.txt

* Update requirements_test_all.txt
2020-12-16 20:29:42 +00:00
Greg
70bd998d7c Bump envoy_reader version to 0.17.3 (#44205)
* Bump envoy_reader version to 0.17.0rc0

* Fixing version number
2020-12-16 20:29:41 +00:00
Shay Levy
fd24baa1f6 Fix Shelly devices missing properties field (#44279) 2020-12-16 21:28:59 +01:00
Erik Montnemery
36eebd92dd Bump pychromecast to 7.6.0 (#44289) 2020-12-16 18:29:57 +01:00
Geoffrey Lagaisse
295b1a91c3 Bump python-qbittorrent to 0.4.2 (#44268) 2020-12-16 15:53:01 +01:00
Paulus Schoutsen
4f9d5792ed Fix setting timestamp on input_datetime (#44274) 2020-12-16 11:18:50 +01:00
Erik Montnemery
dfde403937 Remove Home Assistant Cast user when removing entry (#44228)
* Remove Home Assistant Cast user when removing entry

* Fix test

* Fix test
2020-12-16 11:00:22 +01:00
HomeAssistant Azure
3bb996c5b4 [ci skip] Translation update 2020-12-16 00:03:31 +00:00
Shay Levy
4880a1d55a Change shelly CONNECTION_CLASS to CONN_CLASS_LOCAL_PUSH (#44260)
Shelly integration is using local push since HA 0.118
2020-12-15 19:25:14 +01:00
Erik Montnemery
0aa85b2321 Bump hatasmota to 0.1.6 (#44226) 2020-12-15 17:23:00 +01:00
David F. Mulcahey
e601f62416 Default smartenergy multiplier and divisor (#44257) 2020-12-15 10:44:28 -05:00
Tim Messerschmidt
a0ce541c0d Bump google-nest-sdm to 0.2.1 to support more SDM Pub/Sub realms (#44163) 2020-12-15 07:38:32 -08:00
Thibaut
03bfc3bcf0 Add Somfy climate platform (#43895)
* Add climate platform
* Upgrade pymfy to 0.9.3
2020-12-15 07:04:35 -08:00
Tobias Perschon
266f82ac76 Add send animation service to telegram (#41489)
* added telegram sendAnimation api call

Signed-off-by: Tobias Perschon <tobias@perschon.at>

* more accurate service descriptions

Signed-off-by: Tobias Perschon <tobias@perschon.at>

* added 3rd parse_mode to description
2020-12-15 15:20:08 +01:00
Eric Severance
2765c6f1e9 Register Wemo fan services with entity service helper (#44192)
* Use a singleton for the Wemo registry and fan services

* Undo changes to the wemo subscription registry

* Use an entity service helper to register the Wemo fan services

* Fix Wemo fan test (missing ATTR_ENTITY_ID)

* Use the function name directly rather than a string

* Improve test coverage of the set_humidity service
2020-12-15 14:19:57 +01:00
Eric Severance
69a7eff55d Add tests for the Wemo __init__ module (#44196)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-15 09:59:23 +01:00
Eric Severance
d4ab7880af Replace hard-coded domain strings with constants in the Wemo module (#44222) 2020-12-15 05:03:02 +01:00
Allen Porter
1003464544 Fix double underscore typo in fan_mode ValueError (#44182) 2020-12-14 19:52:14 -08:00
Rob Bierbooms
a1e452170b Bump dsmr-parser to 0.25 (#44223)
* Bump version in manifest

* Update requirements_all.txt

* Update requirements_test_all.txt
2020-12-15 04:45:24 +01:00
Nate Harris
7471bf36e3 Use new PocketCast dependency (#44007)
* New PocketCast dependency

* Switch to new pycketcast dependency

* Update manifest.json

* Alphabetized new dependency
2020-12-15 04:10:10 +01:00
Ville Skyttä
c6c3d720ca Upgrade bandit to 1.7.0 (#44184)
* Upgrade bandit to 1.6.3

https://github.com/PyCQA/bandit/releases/tag/1.6.3

* Upgrade bandit to 1.7.0

https://github.com/PyCQA/bandit/releases/tag/1.7.0
2020-12-15 03:38:01 +01:00
HomeAssistant Azure
9e1647d634 [ci skip] Translation update 2020-12-15 00:04:49 +00:00
Greg
d274a62c31 Bump envoy_reader version to 0.17.3 (#44205)
* Bump envoy_reader version to 0.17.0rc0

* Fixing version number
2020-12-14 22:51:28 +01:00
Shulyaka
0b8529a472 Add zha AnalogOutput cluster support (#44092)
* Initial commit
* black
* isort
* Commit suggestion from code review
Co-authored-by: Alexei Chetroi <lexoid@gmail.com>

* pylint
* removed entity cache for present_value
* fix discovery
* move write_attributes to channel
* write_attributes fix
* write_attributes yet another fix
* update_before_add=False
* mains powered test device
* removed test_restore_state
* flake8
* removed async_configure_channel_specific
* don't know what this patch does, removing
* test for async_update
* removed node_descriptor
* fix unit_of_measurement
Co-authored-by: Alexei Chetroi <lexoid@gmail.com>
2020-12-14 15:32:45 -05:00
Aaron Bach
38d16d3e0c Fix unhandled KeyError in Recollect Waste (#44224) 2020-12-14 13:03:25 -07:00
Sergio Mayoral Martínez
a7fca3cf23 Bump python-holidays (#44215) 2020-12-14 15:16:39 +01:00
Diogo Gomes
c3d8b1323c Support MSSQL in SQL Sensor (#42778)
* add mssql support

* add tests and odbc dependency

* fix requirements

* no pyodbc dependency
2020-12-14 10:57:22 +01:00
Steve Brandt
7fa26ef515 Add opensky longitude and latitude event metadata (#43205)
* Adds feature to get also longitude and latitude of the triggerd entry or exit event

* None as initial definition of longitude and latitude if it is not defined in the metadata
2020-12-14 10:50:19 +01:00
Guillaume Duveau
c27c958a4d Temperatures, fan and battery in Glances sensors (#43500)
* Temperatures, fan and battery in Glances sensors

* Lint PR #43500
2020-12-14 10:46:44 +01:00
Josef Schlehofer
61dd374713 Upgrade youtube_dl to version 2020.12.07 (#44004) 2020-12-14 10:08:28 +01:00
Mike Miller
dc1d08be70 Upgrade restrictedpython to 5.1 (needed for python 3.9 support) (#44181) 2020-12-14 10:06:21 +01:00
Barry Williams
b758c147a6 Add myself to the codeowners manifest for openhome and tapsaff (#44188) 2020-12-14 10:05:15 +01:00
Oliver
66ed34e60e Update denonavr to 0.9.8 (#44194) 2020-12-14 10:04:41 +01:00
HomeAssistant Azure
ecf9aac1ce [ci skip] Translation update 2020-12-14 00:03:52 +00:00
Franck Nijhof
3600dec6e0 Merge pull request #44175 from home-assistant/rc 2020-12-13 22:21:47 +01:00
Franck Nijhof
277b916fcd 2020.12.0 2020-12-13 22:13:58 +01:00
J. Nick Koston
350ffd3e85 Bump HAP-python to 3.1.0 (#44176)
Fixes many spec compliance issues, unavailable cases
following an unexpected exception, and a thread safety
race condition.
2020-12-13 14:00:53 -05:00
Hmmbob
623826261b Remove deprecated CONF_ALLOW_UNLOCK, CONF_API_KEY from Google Assistant (#44087)
* Remove deprecated CONF_ALLOW_UNLOCK, CONF_API_KEY

* Use vol.Remove() to prevent setup fail

* Keep constants
2020-12-13 15:30:16 +01:00
Franck Nijhof
1ac5ecbe69 Bumped version to 1.0.0 2020-12-13 15:04:00 +01:00
David F. Mulcahey
3981592ccd Bump the ZHA quirks lib to 0.0.49 (#44173) 2020-12-13 15:02:03 +01:00
J. Nick Koston
9c45874206 Bump zeroconf to 0.28.7 to fix thread safety (#44160)
Service registration was not thread safe
2020-12-13 14:48:46 +01:00
Paulus Schoutsen
17cd00ba83 Remove invalidation_version from deprecated (#44156)
* Remove invalidation_version from deprecated. We don't follow up and just hurts releases

* Revert change to ZHA
2020-12-13 14:48:40 +01:00
David F. Mulcahey
6fb6d771fd Bump the ZHA quirks lib to 0.0.49 (#44173) 2020-12-13 08:43:33 -05:00
J. Nick Koston
485cd06de9 Bump zeroconf to 0.28.7 to fix thread safety (#44160)
Service registration was not thread safe
2020-12-13 12:36:17 +01:00
Crash
8979c4987f Clear mpd source playlist when not playing a playlist (#44164)
Prevents unexpected behavior.
2020-12-13 12:10:51 +01:00
Eric Severance
8255815688 Share wemo entity code to reduce duplicate boilerplate (#44113) 2020-12-13 12:02:45 +01:00
HomeAssistant Azure
a3a7ce4842 [ci skip] Translation update 2020-12-13 00:04:18 +00:00
Paulus Schoutsen
594e905742 Remove invalidation_version from deprecated (#44156)
* Remove invalidation_version from deprecated. We don't follow up and just hurts releases

* Revert change to ZHA
2020-12-12 22:24:16 +01:00
Paulus Schoutsen
c02be99ab7 Bumped version to 1.0.0b6 2020-12-12 20:35:58 +00:00
Bram Kragten
7c2a2b08c7 Updated frontend to 20201212.0 (#44154) 2020-12-12 20:35:52 +00:00
Steven Looman
f858d6f9ec Fix upnp first discovered device is used (#44151)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-12 20:35:50 +00:00
Aaron Bach
8507b62016 Fix inability to erase SimpliSafe code (#44137) 2020-12-12 20:35:49 +00:00
Brian Rogers
8c6636994f Fix Met.no forecast precipitation (#44106) 2020-12-12 20:35:47 +00:00
Bram Kragten
76d6b55ff4 Updated frontend to 20201212.0 (#44154) 2020-12-12 21:34:16 +01:00
Allen Porter
1a8123aba6 Increase nest climate test coverage (#44146) 2020-12-12 20:57:02 +01:00
Steven Looman
05f9fb80c8 Fix upnp first discovered device is used (#44151)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-12 19:47:46 +01:00
Eric Severance
8fe5e61cbf Test edge cases in wemo platform code (#44136) 2020-12-12 19:41:20 +01:00
Olivér Falvai
dd4147fbaa Log unique_id of device when ESPHome connection fails (#44152) 2020-12-12 10:44:45 -07:00
Aaron Bach
0696724506 Fix inability to erase SimpliSafe code (#44137) 2020-12-12 10:43:38 +01:00
finity69x2
8d9fd93dc7 Update strings.json to clarify the requirements for the API key (#44143) 2020-12-12 10:29:41 +01:00
Allen Porter
6d12e764b7 Increase test coverage for nest camera (#44144) 2020-12-12 10:17:43 +01:00
k2v1n58
d1fb554e33 Add code_arm_required to IFTTT alarm (#43928)
* Update alarm_control_panel.py
2020-12-11 21:51:57 -08:00
HomeAssistant Azure
19ff83790e [ci skip] Translation update 2020-12-12 00:06:00 +00:00
Peter Nijssen
bcebc588a6 Expose spider device information (#44085)
* Expose spider device information

* Set correct identifiers
2020-12-11 21:49:14 +01:00
Paulus Schoutsen
e67809713f Nuki to use entity platform (#43774) 2020-12-11 18:02:23 +01:00
Brian Rogers
e33405a8b0 Fix Met.no forecast precipitation (#44106) 2020-12-11 16:53:21 +01:00
Anders Melchiorsen
ce3f6c368a Initialize numeric_state trigger tests (#44114)
This makes the crossed thresholds explicit.
2020-12-11 05:11:51 +01:00
HomeAssistant Azure
a29f3e7163 [ci skip] Translation update 2020-12-11 00:04:19 +00:00
Huon Wilson
2bbe8e0e6b Cache Astral object in moon integration, to use less CPU (#44012)
Creating an Astral() instance seems to be surprisingly expensive. This
was previously being done in every update, taking a non-trivial
proportion of the (actual) CPU used by HA, that is, ignoring
sleep/wait/idle states like being blocked on epoll.

This patch caches the Astral instance to avoid recomputing it
regularly.
2020-12-10 16:31:54 -06:00
Eric Severance
b4afef1395 Add tests for the wemo component (#44088)
* Add tests for the wemo component.

* Prefer mock tools from tests.async_mock over importing asynctest directly

* Avoid using `entity/entities` except when referring to an `Entity` instance in wemo tests

* Remove the overridden event_loop fixture from the wemo tests

* Patch the library code, not the integration code, in the wemo tests
2020-12-10 22:24:26 +01:00
Erik Montnemery
7084d6c650 Address old review comments of Tasmota fan (#44112)
* Address review comments of Tasmota fan

* Address review comment
2020-12-10 22:17:58 +01:00
Hmmbob
9cc406fef9 Remove deprecated CONF_ALLOW_UNLOCK, CONF_API_KEY from Google Assistant (#44087)
* Remove deprecated CONF_ALLOW_UNLOCK, CONF_API_KEY

* Use vol.Remove() to prevent setup fail

* Keep constants
2020-12-10 21:50:51 +01:00
Franck Nijhof
9c6ff9af91 Bumped version to 1.0.0b5 2020-12-10 21:34:52 +01:00
Robert Svensson
3986df63dc Support more errors to better do retries in UniFi (#44108) 2020-12-10 21:34:40 +01:00
Bram Kragten
42d1644762 Update frontend to 20201210.0 (#44105) 2020-12-10 21:34:37 +01:00
Bram Kragten
83b7439a08 Fix importing blueprint from community (#44104) 2020-12-10 21:34:33 +01:00
Paulus Schoutsen
a01cf72d67 Fix importing blueprints from forums with HTML entities (#44098) 2020-12-10 21:34:29 +01:00
Erik Montnemery
97edbaa85f Small cleanup of MQTT (#44110)
* Use relative imports of mqtt component in mqtt platforms

* Correct parameters to _async_setup_entity

* Lint
2020-12-10 21:30:07 +01:00
Robert Svensson
9651d1bcfa Support more errors to better do retries in UniFi (#44108) 2020-12-10 21:25:50 +01:00
Alexei Chetroi
6253054fd4 Bump up dependencies on pyserial and pyserial-asyncio (#44089) 2020-12-10 20:41:31 +01:00
Bram Kragten
e306308a47 Update frontend to 20201210.0 (#44105) 2020-12-10 17:54:55 +01:00
Bram Kragten
0da312b6f1 Fix importing blueprint from community (#44104) 2020-12-10 16:45:57 +01:00
Paulus Schoutsen
d9a86c1145 Fix importing blueprints from forums with HTML entities (#44098) 2020-12-10 11:11:49 +01:00
Paulus Schoutsen
cff4f7bbbf Bumped version to 1.0.0b4 2020-12-10 09:12:20 +00:00
Paulus Schoutsen
e68544cd7d Bump hass-nabucasa to 0.39.0 (#44097) 2020-12-10 09:12:09 +00:00
J.P. Hutchins
6ea3c671e9 Fix transmission torrent filtering and sorting (#44069) 2020-12-10 09:12:07 +00:00
zewelor
29e3fbe568 Fix yeelight unavailbility (#44061) 2020-12-10 09:12:06 +00:00
Paulus Schoutsen
9cce6e91f1 Bump hass-nabucasa to 0.39.0 (#44097) 2020-12-10 10:10:38 +01:00
J.P. Hutchins
b15d92edfd Fix transmission torrent filtering and sorting (#44069) 2020-12-10 10:09:08 +01:00
zewelor
e09234ffae Fix yeelight unavailbility (#44061) 2020-12-10 09:54:10 +01:00
Dermot Duffy
b9a3a001fb Include Hyperion in coverage testing (#44096) 2020-12-10 09:41:11 +01:00
HomeAssistant Azure
848224262c [ci skip] Translation update 2020-12-10 00:03:01 +00:00
Franck Nijhof
f3eb21ba59 Bumped version to 1.0.0b3 2020-12-09 19:08:29 +01:00
Robert Svensson
53b6a971d2 Fix ignored Axis config entries doesn't break set up of new entries (#44062) 2020-12-09 19:07:38 +01:00
Robert Svensson
0e871c3390 Some lights only support hs, like the lidl christmas lights (#44059) 2020-12-09 19:07:34 +01:00
Alexei Chetroi
9cfeb44b56 Exclude coordinator when looking up group members entity IDs (#44058) 2020-12-09 19:07:29 +01:00
Pierre Ståhl
88941eaa51 Bump pyatv to 0.7.5 (#44051) 2020-12-09 19:07:25 +01:00
Paulus Schoutsen
a2f9cbc941 Fix extracting entity and device IDs from scripts (#44048)
* Fix extracting entity and device IDs from scripts

* Fix extracting from data_template
2020-12-09 19:07:20 +01:00
Aaron Bach
5fee55f824 Bump simplisafe-python to 9.6.2 (#44040) 2020-12-09 19:07:15 +01:00
Alexei Chetroi
70257d7a21 Update ZHA dependencies (#44039)
zha-quirks==0.0.48
zigpy==0.28.2
zigpy-znp==0.3.0
2020-12-09 19:07:10 +01:00
Maciej Bieniek
8ad0b9845e Add the missing ATTR_ENABLED attribute to Brother integration list of sensors (#44036) 2020-12-09 19:07:06 +01:00
Paul
ec4b23173c Update pyarlo to 0.2.4 (#44034) 2020-12-09 19:07:03 +01:00
Aaron Bach
445fbb2c73 Bump simplisafe-python to 9.6.1 (#44030) 2020-12-09 19:06:59 +01:00
Jc2k
b09a8f0d21 Fix how homekit_controller enumerates Hue remote (#44019) 2020-12-09 19:06:55 +01:00
Fuzzy
7a4dac8183 Add T8400 to ignore list (#44017) 2020-12-09 19:06:50 +01:00
Jc2k
ac82dac4f3 Hide HomeKit devices from discovery that are known to be problematic (#44014) 2020-12-09 19:06:46 +01:00
JJdeVries
e3b650b2c8 Fix unit of measurement for asuswrt sensors (#44009) 2020-12-09 19:06:43 +01:00
Brian
a9d69bc1b9 Bump pymyq to 2.0.11 (#44003) 2020-12-09 19:06:38 +01:00
Alex Szlavik
4b8e3171a3 Retry tuya setup on auth rate limiting (#44001)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-09 19:06:35 +01:00
Nigel Rook
a1c5537460 Update generic_thermostat current_temperature on startup (#43951)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-09 19:06:31 +01:00
Maikel Punie
154fd4aa8b Fix Solaredge integration in case the data is not complete (#43557)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-09 19:06:27 +01:00
Robert Svensson
e2ef9d1afc Some lights only support hs, like the lidl christmas lights (#44059) 2020-12-09 19:02:44 +01:00
Robert Svensson
20c3fdfe14 Fix ignored Axis config entries doesn't break set up of new entries (#44062) 2020-12-09 17:48:16 +01:00
J. Nick Koston
dd0afc3b66 Create httpx helper to wrap a shared httpx.AsyncClient (#43877)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-12-09 17:18:57 +01:00
Finbarr Brady
12903f9c8c Bump openwebifpy version: 3.1.1 → 3.1.6 (#44064) 2020-12-09 17:13:20 +01:00
HomeAssistant Azure
0fc33bd6bf [ci skip] Translation update 2020-12-09 00:03:07 +00:00
Paul
07461f9a8e Update pyarlo to 0.2.4 (#44034) 2020-12-08 23:14:55 +01:00
Fuzzy
2fdf32bf1b Add T8400 to ignore list (#44017) 2020-12-08 20:10:50 +00:00
Alexei Chetroi
51f9da94e1 Exclude coordinator when looking up group members entity IDs (#44058) 2020-12-08 14:34:26 -05:00
Jc2k
109ce653c0 Fix how homekit_controller enumerates Hue remote (#44019) 2020-12-08 18:01:07 +01:00
Pierre Ståhl
faf21e1e1a Bump pyatv to 0.7.5 (#44051) 2020-12-08 14:16:31 +01:00
Paulus Schoutsen
ac2af69d26 Fix extracting entity and device IDs from scripts (#44048)
* Fix extracting entity and device IDs from scripts

* Fix extracting from data_template
2020-12-08 13:06:29 +01:00
Finbarr Brady
0b7b6b1d81 Bump ciscomobilityexpress version: 0.3.3 → 0.3.9 (#44050)
* Update manifest.json

* Update requirements_all.txt
2020-12-08 13:00:17 +01:00
Alex Szlavik
fca8841e34 Retry tuya setup on auth rate limiting (#44001)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-08 11:32:48 +01:00
Maciej Bieniek
572d4cfbe6 Add the missing ATTR_ENABLED attribute to Brother integration list of sensors (#44036) 2020-12-08 08:19:57 +01:00
Aaron Bach
5f4f6dea6b Bump simplisafe-python to 9.6.2 (#44040) 2020-12-07 19:57:19 -07:00
Alexei Chetroi
e0bcee1cc3 Update ZHA dependencies (#44039)
zha-quirks==0.0.48
zigpy==0.28.2
zigpy-znp==0.3.0
2020-12-07 20:06:32 -05:00
HomeAssistant Azure
ebe57d4fdb [ci skip] Translation update 2020-12-08 00:04:13 +00:00
SukramJ
34a31884b7 Bump dependency to add more multi channel devices to HomematicIP Cloud (#43914) 2020-12-08 00:16:22 +01:00
Aaron Bach
8632ab9d35 Bump simplisafe-python to 9.6.1 (#44030) 2020-12-07 13:34:47 -07:00
Brian Rogers
f18c6ae72c Add pause and resume services to Rachio (#43944)
* Add pause-resume

* address comments
2020-12-07 13:22:23 -06:00
Brian
886ce599ac Bump pymyq to 2.0.11 (#44003) 2020-12-07 12:01:58 -06:00
David F. Mulcahey
70133f2096 Fix ZHA switch group test (#44021) 2020-12-07 11:43:35 -05:00
Eric Severance
c9c3a8fe38 Unregister updates when a Wemo entry is removed (#44005) 2020-12-07 14:10:46 +01:00
Jc2k
6ce45e39d1 Hide HomeKit devices from discovery that are known to be problematic (#44014) 2020-12-07 13:51:35 +01:00
PeteBa
727b1d37b6 Add discovery for MQTT device tracker (#42327) 2020-12-07 13:16:56 +01:00
Nigel Rook
1d0b4290fe Update generic_thermostat current_temperature on startup (#43951)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-07 13:14:54 +01:00
Andre Lengwenus
fec623fb4e Fix LCN service calls (invoking coroutines) (#43932)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-07 13:13:41 +01:00
JJdeVries
84973ec8f7 Fix unit of measurement for asuswrt sensors (#44009) 2020-12-07 12:46:53 +01:00
Maikel Punie
035860ebb2 Fix Solaredge integration in case the data is not complete (#43557)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-07 11:20:22 +01:00
mbo18
4bcb6c0ec6 Add UV unit to meteo_france UV sensor (#43992) 2020-12-07 10:47:29 +01:00
Paulus Schoutsen
c7ec7e7c98 Bumped version to 1.0.0b2 2020-12-07 09:11:57 +00:00
Paulus Schoutsen
591777455a Update ring to 0.6.2 (#43995) 2020-12-07 09:11:49 +00:00
Shay Levy
4780bdd48f Prevent firing Shelly input events at startup (#43986)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-12-07 09:11:48 +00:00
treylok
6cb1ce056a Fix Ecobee set humidity (#43954) 2020-12-07 09:11:47 +00:00
Shay Levy
5fc7df2746 Prevent firing Shelly input events at startup (#43986)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-12-07 09:27:33 +01:00
nivnoach
906e1ce960 Allow manual configuration of ignored config entries (#43947) 2020-12-07 09:25:04 +01:00
Maciej Bieniek
19389b16e2 Add support for system health to GIOS integration (#43280)
* Add system health support

* Fix docstrings

* Change url to check
2020-12-07 03:50:22 +01:00
springstan
25e717c8d2 Bump fritzconnection to 1.4.0 (#43996) 2020-12-07 03:16:43 +01:00
Philip Allgaier
18736dbebf Bump voluptuous to 0.12.1 (#44002)
* Bump voluptuous to 0.12.1

* Adjust MQTT climate test to new error msg
2020-12-07 02:49:36 +01:00
Andreas Wrede
30f73a4962 Add discovery of sensors on DS2409 MicroLan (#43599)
* Add discovery of sensors on DS2409 MicroLan

* Add tests for coupler

* Update tests

* Fix isort

* Clean up

* Move tests to test_sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-07 02:09:32 +01:00
HomeAssistant Azure
9c63fbfcb1 [ci skip] Translation update 2020-12-07 00:04:18 +00:00
Jacob Southard
8b01f681ab Add target temperature range to homekit_controller (#42817)
* Add support for temperature range in thermostat.
* Add tests for setting temperature range.
* Update Lennox E30/Ecobee 3 tests to reflect new supported feature
* Add support for thermostate mode specific min/max temp values.
2020-12-06 23:23:08 +00:00
Paulus Schoutsen
23f8ae8fec Update ring to 0.6.2 (#43995) 2020-12-06 17:24:32 +01:00
HomeAssistant Azure
f9bc7bacb6 [ci skip] Translation update 2020-12-06 00:03:59 +00:00
Alexei Chetroi
a1720fdd2b Cleanup ZHA fan channel (#43973)
* Use zigpy cached values for ZHA Fan speed

* Disable update_before_add for ZHA fans

* Refresh state of the group

* Fix group tests
2020-12-05 18:24:49 -05:00
Alexei Chetroi
40e5634db3 Add ZHA Coordinator to LightLink cluster groups (#43959)
* Add coordinator to LighLink cluster groups

* Make pylint happy
2020-12-05 11:20:10 -05:00
Franck Nijhof
9b7ecddde6 Add reverse repeatmode mapping constant to Spotify (#43968) 2020-12-05 15:05:12 +01:00
treylok
180491f8cd Fix Ecobee set humidity (#43954) 2020-12-05 14:13:46 +01:00
Franck Nijhof
a390b0aca8 Bumped version to 1.0.0b1 2020-12-05 13:15:45 +01:00
Franck Nijhof
471e33ae10 Merge branch 'master' into rc 2020-12-05 13:15:31 +01:00
Robert Svensson
625f219d6b Fix device refresh service can always add devices (#43950) 2020-12-05 13:10:17 +01:00
Bram Kragten
4c2dfa54da Updated frontend to 20201204.0 (#43945) 2020-12-05 13:10:13 +01:00
Brian Rogers
bf6bd969a2 Return unique id of Blink binary sensor (#43942) 2020-12-05 13:10:10 +01:00
Martin Hjelmare
46b13e20ac Handle stale ozw discovery flow (#43939) 2020-12-05 13:10:06 +01:00
Martin Hjelmare
698ee59f10 Always send ozw network key to add-on config (#43938) 2020-12-05 13:10:02 +01:00
Erik Montnemery
fb005ba3e2 Bump hatasmota to 0.1.4 (#43912) 2020-12-05 13:09:59 +01:00
Bram Kragten
6ae46268a4 Updated frontend to 20201203.0 (#43907) 2020-12-05 13:09:55 +01:00
Emily Mills
eb6128b53e Kulersky cleanups (#43901) 2020-12-05 13:09:51 +01:00
Martin Hjelmare
b174c1d4eb Unsubscribe ozw stop listener on entry unload (#43900) 2020-12-05 13:09:47 +01:00
Paulus Schoutsen
6c5911d37f Blueprint: descriptions + descriptive errors (#43899) 2020-12-05 13:09:44 +01:00
djtimca
3ee1aed06f Bump auroranoaa library to 0.0.2 (#43898) 2020-12-05 13:09:41 +01:00
Aaron Bach
bf4e98d1ae Fix Slack "invalid_blocks_format" bug (#43875)
* Fix Slack "invalid_blocks_format" bug

* Fix optional params

* Fix one more optional param

* Update manifest
2020-12-05 13:09:37 +01:00
tehbrd
15b775a4d3 Fix intesishome passing coroutine to HassJob (#43837)
* Update climate.py

Not allowed to pass coroutines to hassjob.

* Update climate.py

* Lint

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-12-05 13:09:34 +01:00
Emily Mills
ec90ebe136 Add Kuler Sky Bluetooth floor lamp integration (#42372)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-12-05 13:09:29 +01:00
Franck Nijhof
7130b7a4b7 Merge pull request #43964 from home-assistant/0.118.5 2020-12-05 13:07:27 +01:00
Andre Lengwenus
378424b2c4 Refactor LCN integration (#40665)
* Moved configuration schemes to schemes.py

* Renamed LcnDevice to LcnEntity. Renamed address_connection to device_connection.

* Rename schemes.py to schemas.py
2020-12-05 12:57:49 +01:00
Martin Hjelmare
e93b9db55d Pin pip < 20.3 (#43771) 2020-12-05 12:05:16 +01:00
Franck Nijhof
c3fed66df6 Bumped version to 0.118.5 2020-12-05 12:00:40 +01:00
Marvin Wichmann
679d1c2b67 Implement new Google TTS API via dedicated library (#43863)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-12-05 11:58:56 +01:00
Joakim Sørensen
b10b80d7b1 Increase timeout for snapshot upload (#43851) 2020-12-05 11:58:53 +01:00
cgtobi
57687f9d56 Bump pyatmo to v4.2.1 (#43713) 2020-12-05 11:58:35 +01:00
Robert Svensson
bc83e30761 Fix device refresh service can always add devices (#43950) 2020-12-05 11:53:43 +01:00
Brian Rogers
c5adaa1f5c Return unique id of Blink binary sensor (#43942) 2020-12-05 11:32:49 +01:00
Allen Porter
0670124e8d Address PR cleanup for nest device triggers (#43961) 2020-12-05 10:55:19 +01:00
Emily Mills
c4426a73b3 Remove zerproc threaded upstream reconnect logic (#43910) 2020-12-05 01:40:56 +01:00
HomeAssistant Azure
6e74f90136 [ci skip] Translation update 2020-12-05 00:03:50 +00:00
Alexei Chetroi
125ceb7449 Refactor ZHA core channel initialization (#43953)
* Cleanup Basic channnel

Remove unused methods.

* Refactor async_configure() method

Split async_configure() into async_configure() and
async_configure_channel_specfici()

* Refactor async_initilize() method

Split into two different methods and configure channel specifics via
async_configure_channel_specific()

* Fixes
2020-12-04 18:45:09 -05:00
Bram Kragten
b19c705867 Updated frontend to 20201204.0 (#43945) 2020-12-04 23:04:31 +01:00
Martin Hjelmare
e23dc90bac Handle stale ozw discovery flow (#43939) 2020-12-04 20:41:08 +01:00
Martin Hjelmare
a47cf27ed6 Always send ozw network key to add-on config (#43938) 2020-12-04 20:23:20 +01:00
Erik Montnemery
5e6f5fca90 Don't send MQTT birth message in tests (#43917) 2020-12-04 04:39:49 +01:00
Jonas Lundberg
a5279cc279 Upgrade respx to 0.16.2 (#43892)
* Bump respx to 0.16.2

* Align sensor tests to use new respx mock api
2020-12-04 04:27:25 +01:00
djtimca
52edf6719d Bump auroranoaa library to 0.0.2 (#43898) 2020-12-04 03:57:35 +01:00
Erik Montnemery
916ff88774 Bump hatasmota to 0.1.4 (#43912) 2020-12-04 03:16:37 +01:00
HomeAssistant Azure
42f00cff30 [ci skip] Translation update 2020-12-04 00:05:42 +00:00
Bram Kragten
44d7787582 Updated frontend to 20201203.0 (#43907) 2020-12-03 22:41:02 +01:00
J. Nick Koston
4ef93feb9a Bump icmplib to 2.0 for ping (#43868) 2020-12-03 12:02:18 -07:00
Martin Hjelmare
5742db6308 Unsubscribe ozw stop listener on entry unload (#43900) 2020-12-03 19:40:33 +01:00
Martin Hjelmare
8d33c2092f Add number entity value property (#43902) 2020-12-03 18:35:17 +01:00
Emily Mills
54cb2d42af Kulersky cleanups (#43901) 2020-12-03 18:08:16 +01:00
Paulus Schoutsen
262e77d969 Blueprint: descriptions + descriptive errors (#43899) 2020-12-03 16:44:18 +01:00
Shulyaka
78a69ef284 Add reproduce state for Number (#43870) 2020-12-03 10:39:50 +01:00
Robert Svensson
2c66d26415 Improve look up speed by inverting dictionaries (#43883) 2020-12-03 10:37:39 +01:00
Guido Schmitz
6f2327c6d5 Change config flow unique_id for devolo Home Control (#43005) 2020-12-03 09:10:20 +01:00
SukramJ
40408eb0eb Add HmIP-HDM1 and HmIPW-DRD3 to Homematic IP Cloud (#43132)
* cleanup const.py

* Add wired multi dimmer HMIPW-DRD3 to Homematic IP Cloud

* Add HmIP-HDM1 to Homematic IP Cloud
2020-12-02 23:56:05 -06:00
Aaron Bach
69a438e2fc Fix Slack "invalid_blocks_format" bug (#43875)
* Fix Slack "invalid_blocks_format" bug

* Fix optional params

* Fix one more optional param

* Update manifest
2020-12-03 04:45:08 +01:00
tehbrd
4c7e17c5c6 Fix intesishome passing coroutine to HassJob (#43837)
* Update climate.py

Not allowed to pass coroutines to hassjob.

* Update climate.py

* Lint

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-12-03 01:58:10 +01:00
HomeAssistant Azure
8e6108b9e1 [ci skip] Translation update 2020-12-03 00:04:35 +00:00
Emily Mills
7c83092431 Add Kuler Sky Bluetooth floor lamp integration (#42372)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-12-02 22:28:17 +01:00
Elena Rogleva
7cd17dd94f Rewrite the kira/test_init.py unittests to pytest style test functions (#42753) 2020-12-02 22:15:53 +01:00
Franck Nijhof
adcb0260e0 Bumped version to 1.0.0b0 2020-12-02 22:07:58 +01:00
Marvin Wichmann
ce056656f8 Implement new Google TTS API via dedicated library (#43863)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-12-02 22:03:31 +01:00
Erik Montnemery
30baf333c3 Improve handling of disabled devices (#43864) 2020-12-02 21:20:14 +01:00
Vladimír Záhradník
d518db1c95 Improve custom datatype parsing in Modbus sensor and climate (#42354) 2020-12-02 21:16:30 +01:00
Bram Kragten
5e3941badb Updated frontend to 20201202.0 (#43862) 2020-12-02 20:51:51 +01:00
Franck Nijhof
f2a371257d Translation update 2020-12-02 20:51:05 +01:00
Vladimir Dronnikov
a4b1990487 Add telegram_bot.send_voice service (#43433)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2020-12-02 20:44:02 +01:00
Martin Hjelmare
9043b7b214 Add ozw add-on discovery and mqtt client (#43838) 2020-12-02 20:03:29 +01:00
Kiall Mac Innes
8efa9c5097 Add support for MQTT Scenes (#42639) 2020-12-02 19:42:28 +01:00
Dermot Duffy
39601090ba Automatically select "Solid" effect in Hyperion (#43799) 2020-12-02 19:40:49 +01:00
Maciej Bieniek
b294e1c98c Add support for system health to AccuWeather integration (#43277) 2020-12-02 19:36:16 +01:00
Maciej Bieniek
86043b2957 Add support for system health to Airly integrarion (#43220) 2020-12-02 19:32:42 +01:00
Wictor
5fa00244da Allow members of allowed groups to talk to telegram_bot (#43241) 2020-12-02 19:25:35 +01:00
Quentame
519ec64522 Bump Synology DSM to 1.0.1 (#43860) 2020-12-02 19:12:38 +01:00
Robert Svensson
a8f0ad1dd8 Allow creating deCONZ config entry even when no bridge id is available 2020-12-02 19:10:47 +01:00
jjlawren
f2f935506e Use Plex websocket payloads to reduce overhead (#42332)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-12-02 19:00:13 +01:00
Robert Svensson
6e8efe2b67 Add fan support to deCONZ climate platform (#43721) 2020-12-02 18:08:46 +01:00
Jeff Irion
efacda6c33 Bump androidtv to 0.0.56 (#43859) 2020-12-02 17:47:09 +01:00
Robert Svensson
25db1dac23 Add preset support to deCONZ climate platform (#43722) 2020-12-02 17:14:05 +01:00
Pierre Ståhl
edb246d696 Refactor Apple TV integration (#31952)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-12-02 17:01:55 +01:00
Paulus Schoutsen
58648019c6 Deprecate the use of keyring and credstash (#43854) 2020-12-02 16:55:33 +01:00
Robert Svensson
ac2c01d20c deCONZ improve options updating entities (#42320) 2020-12-02 16:21:27 +01:00
Paulus Schoutsen
ff4897a09e Fix using execute on the notify_leaving_zone (#43858) 2020-12-02 16:21:00 +01:00
epenet
55edc9f858 Cleanup unique_id on onewire integration (#43783)
* Update construction of unique_id

* Move shared logic into OneWireBaseEntity
2020-12-02 15:11:20 +01:00
Paulus Schoutsen
06626af337 Guard for when refreshing token fails (#43855) 2020-12-02 14:55:47 +01:00
Joakim Sørensen
15b5057569 Increase timeout for snapshot upload (#43851) 2020-12-02 14:34:17 +01:00
Philip Allgaier
6fadc3e140 Make "invalid password" error message clearer (#43853) 2020-12-02 14:24:47 +01:00
Shulyaka
f744f7c34e Add new number entity integration (#42735)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2020-12-02 13:50:48 +01:00
Paulus Schoutsen
6c9c280bbb Migrate notify-leaving-zone to use mobile app device action (#43832) 2020-12-02 13:07:04 +01:00
Franck Nijhof
b092430d5b Merge branch 'master' into dev 2020-12-02 12:32:16 +01:00
Paulus Schoutsen
f3bb243b1d Do not warn for weak referenced entities (#43848) 2020-12-02 11:18:08 +01:00
Paulus Schoutsen
648f9e100d Use light turn on service (#43847) 2020-12-02 10:53:26 +01:00
Andre Lengwenus
93055884b7 Bump pypck to 0.7.7 (#43824) 2020-12-02 10:49:50 +01:00
Fabian Affolter
bbe9874320 Upgrade pylast to 4.0.0 (#43830) 2020-12-02 10:47:45 +01:00
Franck Nijhof
834f3603bc Correct service not found exception message (#43846) 2020-12-02 10:32:25 +01:00
Fabian Affolter
fec0d26d55 Upgrade TwitterAPI to 2.6.2.1 (#43833) 2020-12-02 10:20:12 +01:00
Chris Talkington
891edec73b Add test for is_internal_request (#43841) 2020-12-02 10:12:48 +01:00
etheralm
cf286d1c51 Bump libpurecool to 0.6.4 (#43779) 2020-12-02 09:51:46 +01:00
Bram Kragten
d93687b5ac Update area and target selectors add sequence selector (#43831)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-12-02 09:30:49 +01:00
Andreas Oberritter
3efda93875 Support more edl21 devices and sensors (#43603)
* edl21: Handle 1-0:96.50.1*1 and 1-0:96.1.0*255

* edl21: Use 1-0:96.1.0*255 as alternative electricity ID

* edl21: Fix copy-paste error in comments

* edl21: Add active amperage sensors

* edl21: Bump pysml to 0.0.3 to fix format of electricity ID
2020-12-01 22:50:09 -06:00
Chris
26892a629d Add ozw scene_instance to scene_activated (#43829)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-12-02 01:23:08 +01:00
HomeAssistant Azure
fc42f59b0b [ci skip] Translation update 2020-12-02 00:03:14 +00:00
Alexei Chetroi
032d569cd1 Add Analog cluster for Lumi plugs (#43817) 2020-12-01 14:34:07 -05:00
Paulus Schoutsen
0ee86ea8e4 Another try to get rid of Shelly flaky test (#43821) 2020-12-01 19:26:43 +01:00
Robert Svensson
1faef0a4d4 Make simple deCONZ thermostats work (#43781) 2020-12-01 18:49:58 +01:00
Andre Lengwenus
9ace7269ae Fix wrong temperature setting in LCN climate (#43818) 2020-12-01 18:45:08 +01:00
Paulus Schoutsen
1c9c99571e Use !input instead of !placeholder (#43820)
* Use !input instead of !placeholder

* Update input name

* Lint

* Move tests around
2020-12-01 18:21:36 +01:00
Paulus Schoutsen
7d23ff6511 Add device action to mobile app to notify (#43814) 2020-12-01 18:14:01 +01:00
Simone Chemelli
52217f1f60 Move uptime from relative time to absolute time (#43623) 2020-12-01 17:28:59 +01:00
Franck Nijhof
00d0c3f98b Remove invalidation version from Airvisual (#43810) 2020-12-01 17:13:15 +01:00
Franck Nijhof
b1c11eaaf8 Fix config validation tests for upcoming beta (#43811) 2020-12-01 17:07:28 +01:00
Franck Nijhof
24ba5bcbaf Remove Ubee Router integration (ADR-0004) (#43809) 2020-12-01 17:06:49 +01:00
Abílio Costa
8f3989e7d9 Remove unused stuff from ZHA registries (#43786) 2020-12-01 09:21:25 -05:00
Paulus Schoutsen
69710cb664 Base area IDs on initial name (#43804) 2020-12-01 12:45:56 +01:00
Aaron Bach
aad16b8055 Bump aiorecollect to 0.2.2 (#43796) 2020-12-01 12:22:57 +01:00
Franck Nijhof
885f325812 Upgrade elgato to 1.0.0 (#43792) 2020-12-01 10:50:55 +01:00
Paulus Schoutsen
14620e1573 Use entity platform for Neato (#43772) 2020-12-01 09:28:41 +01:00
Paulus Schoutsen
935ec59c56 Migrate foscam to use entity platform entity services (#43775) 2020-12-01 09:28:30 +01:00
Sören
39e7b30ab6 Add lock.open service to nello (#42141) 2020-12-01 08:36:36 +01:00
Paulus Schoutsen
cf5be049b3 Warn when referencing missing devices/areas (#43787) 2020-12-01 08:01:27 +01:00
HomeAssistant Azure
cf9598fe4f [ci skip] Translation update 2020-12-01 00:03:00 +00:00
Erik Montnemery
d18a33020b Fix MQTT birth message deadlock (#43790) 2020-12-01 01:01:22 +01:00
Paulus Schoutsen
a5c79a1f84 Add support for device class in target selector (#43768) 2020-11-30 23:35:24 +01:00
Martin Hjelmare
2f73590714 Increase Supervisor add-on helper timeout (#43778) 2020-11-30 20:40:31 +01:00
Willem-Jan
ba4d630470 Add authentication support to bsblan (#42306) 2020-11-30 20:13:16 +01:00
Martin Hjelmare
434cec7a88 Pin pip < 20.3 (#43771) 2020-11-30 19:38:39 +01:00
Martin Hjelmare
3f5d7e85c3 Add show progress to ozw config flow (#43310) 2020-11-30 18:59:15 +01:00
Dermot Duffy
7ad2a6be30 Add hyperion config options flow (#43673) 2020-11-30 18:38:52 +01:00
Ernst Klamer
14d1466400 Add device information to solarlog integration (#43680)
* Update sensor.py

* Changed as requested

Thanks, tested and works ok.

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-11-30 09:40:43 -06:00
Diogo Gomes
3e24868a9e Add system health check to IPMA (#43762) 2020-11-30 16:24:18 +01:00
Paulus Schoutsen
0de9e8e952 Allow specifying device_id as target (#43767) 2020-11-30 14:27:02 +01:00
Alan Tse
e307e1315a Fix updating of Tesla switches after command (#43754)
closes #43454
2020-11-30 09:57:32 +01:00
Joakim Plate
aade4e63b8 Support asking covers to stop using google assistant (#43537) 2020-11-30 09:34:34 +01:00
springstan
f221bfae52 Report correct weather condition at night for OpenWeatherMap (#42982) 2020-11-30 09:32:06 +01:00
Allen Porter
945a0a9f7e Add nest device triggers for camera and doorbell events (#43548) 2020-11-30 09:19:42 +01:00
J. Nick Koston
2cbb93be43 Always keep the current recorder run when purging (#43733) 2020-11-30 09:13:50 +01:00
HomeAssistant Azure
533f22bb76 [ci skip] Translation update 2020-11-30 00:03:45 +00:00
Ron Klinkien
eab6a0508b Address FireServiceRota late code review (#43741)
* Address review comment from PR #38206

* Address review comment from PR #43638

* Address review comment from PR #43700

* isort fixed

* Better code for duty entity update

* Removed all pylint relative-beyond-top-level

* Removed logger entry from entity state method
2020-11-29 23:54:27 +01:00
Bas Nijholt
6eeb9c0e49 ZHA: remove unused 'from_cache' argument from 'async_get_state' and add 'async_update' (#42413)
* remove unused 'from_cache' argument from 'async_get_state'

* define async_update to use homeassistant.update_entity
2020-11-29 14:47:46 -05:00
David F. Mulcahey
54425ae0f3 Use the correct property for full init event (#43745) 2020-11-29 11:59:23 -05:00
Andre Lengwenus
493eaef616 Bump pypck to v0.7.6 (#43710)
* Bump pypck to v0.7.6

* Await commands to ensure that they are received.
2020-11-29 16:30:17 +01:00
HomeAssistant Azure
5462d6e798 [ci skip] Translation update 2020-11-29 00:04:09 +00:00
springstan
d5efb3e3de Remove temporary variable by only retrieving needed value (#42522) 2020-11-29 00:44:25 +01:00
Franck Nijhof
65ab8cbc71 Add support for multiple tags and devices in tag trigger (#43098)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-29 00:06:32 +01:00
Paulus Schoutsen
e406a47293 Allow configuring the delay in the motion light blueprint (#43737) 2020-11-28 23:56:15 +01:00
J. Nick Koston
1162d9a752 Create tables with a charset that can hold all expected data under mysql (#43732)
By default these tables are created with utf8 which can only hold 3 bytes. This
meant that all emjoi would trigger a MySQLdb._exceptions.OperationalError because
they are 4 bytes.

This will only fix the issue for users who recreate their tables.
2020-11-28 23:54:05 +01:00
Paulus Schoutsen
dd513147a5 Add a service target (#43725) 2020-11-28 23:33:32 +01:00
David F. Mulcahey
a2e1efca33 Add additional events to enhance the ZHA device pairing experience (#43729)
* support better feedback in the device pairing UI

* update pairing events
2020-11-28 17:29:56 -05:00
Ron Klinkien
2c6a72b3ad Add Response switch platform to FireServiceRota integration (#43700)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-28 21:42:51 +01:00
Paulus Schoutsen
898a07fa75 Make threshold binary sensor faster (#43695) 2020-11-28 10:19:10 -10:00
Erik Montnemery
5d7d2dee2a Bump hatasmota to 0.1.2 (#43719) 2020-11-28 10:18:06 -10:00
Maciej Bieniek
a4ae2d210e Bump Brother library to version 0.1.20 (#43628) 2020-11-28 10:17:16 -10:00
moinmoin-sh
337b8d279e Ensure MariaDB/MySQL can be purged and handle states being deleted out from under the recorder (#43610)
* MariaDB doesn't purge #42402

This addresses  home-assistant#42402
Relationships within table "states" and between tables "states" and "events " home-assistant#40467 prevent the purge from working correctly. The database increases w/o any purge.
This proposal sets related indices to NULL and permits deleting of rows.
Further explanations can be found here home-assistant#42402
This proposal also allows to purge the tables "events" and "states" in any order.

* Update models.py

Corrected for Black style requirements

* Update homeassistant/components/recorder/models.py

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

* Add the options to foreign key constraints

* purge old states when database gets deleted out from under us

* pylint

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-11-28 08:42:29 -10:00
Paulus Schoutsen
cb96bd9d0b Blueprint config to override blueprint (#43724) 2020-11-28 13:19:58 +01:00
Robert Svensson
6fa3e287da Add support to control cooling in deCONZ climate platform (#43720)
* Add fan support

* Add HVAC cool support

* Fix Martins comment from #43607

* Add preset support

* Improve climate test coverage

* Remove fan support

* Remove preset support

* Remove last preset piece
2020-11-28 13:11:13 +01:00
cgtobi
65bc128c86 Bump pyatmo to v4.2.1 (#43713) 2020-11-28 09:29:16 +01:00
HomeAssistant Azure
d5c2ef5a94 [ci skip] Translation update 2020-11-28 00:03:36 +00:00
Alexei Chetroi
c42b650031 Bump up ZHA dependencies (#43707)
bellows==0.21.0
zigpy==0.28.1
zha-quirks==0.0.47
2020-11-27 16:39:44 -05:00
jjlawren
7c0e148b59 Proxy Plex media browser images (#43111)
Co-authored-by: rajlaud <50647620+rajlaud@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-27 22:14:19 +01:00
javicalle
e10762af9b Bump RFLink to v0.0.55 (#43704) 2020-11-27 21:11:57 +01:00
Aaron Bach
fd6a2b078b Fix exception upon lock initialization on V2 SimpliSafe systems (#43705) 2020-11-27 21:09:37 +01:00
Franck Nijhof
0d5dc4aeee Add system health check to Spotify (#43249) 2020-11-27 19:25:17 +01:00
Matthias Alphart
29091f4537 Update xknx to 0.15.6 (#43645) 2020-11-27 18:06:15 +01:00
Paulus Schoutsen
5b6d9abe2a Await callbacks to keep cleaner stacktraces (#43693) 2020-11-27 17:48:43 +01:00
Paulus Schoutsen
20ed40d7ad Use utcnow from date util for http.ban (#43686) 2020-11-27 17:04:52 +01:00
Paulus Schoutsen
d34753473d Use run_job for service helper (#43696) 2020-11-27 16:12:39 +01:00
shred86
bdb04dcb9d Add Abode MFA support (#43572) 2020-11-27 13:39:26 +01:00
Paulus Schoutsen
ea55051161 Stub finding custom integrations in tests (#43692) 2020-11-27 12:53:16 +01:00
Paulus Schoutsen
897ff31ffe Maybe fix flaky test (#43690) 2020-11-27 12:31:42 +01:00
David Bonnes
bb146680ce Eliminate evohome unhandled exceptions when client API call fails (#43681) 2020-11-27 12:05:51 +01:00
Paulus Schoutsen
3a17e22cfa Convert API integration to async setup (#43685) 2020-11-27 09:50:19 +01:00
Shay Levy
2498340e1f Fix Shelly uptime sensor (#43651)
Fix sensor to include time zone
Report new value only if delta > 5 seconds
Modify REST sensors class to use callable attributes
2020-11-27 09:40:06 +01:00
David Bonnes
5e3f4954f7 Code quality improvement for evohome (#43678) 2020-11-27 09:28:05 +01:00
David Bonnes
c2cc605343 Bugfix schedule assigned to wrong day of week (#43676) 2020-11-27 09:20:20 +01:00
Philip Allgaier
bf4e6a289a Add option to deactivate a user (#43463) 2020-11-27 09:13:16 +01:00
Erik Montnemery
a5e5c5c7e6 Exclude disabled entities from async_entries_for_device (#43665) 2020-11-27 09:03:44 +01:00
Paulus Schoutsen
f9fa24950b OAuth2 to use current request header (#43668) 2020-11-27 08:55:34 +01:00
Michael Thingnes
69c2818c56 Met.no: Fix for zero temp entries (#43684)
Addresses issue #43587
2020-11-27 08:07:49 +01:00
Bram Kragten
3bd0c7188c Updated frontend to 20201126.0 (#43682) 2020-11-27 01:16:16 +01:00
HomeAssistant Azure
301a3e5481 [ci skip] Translation update 2020-11-27 00:03:57 +00:00
Erik Montnemery
974e099e2a Small cleanup of Tasmota (#43642) 2020-11-26 22:34:26 +01:00
Franck Nijhof
deb45f7c90 Upgrade pre-commit to 2.9.2 (#43655) 2020-11-26 22:34:17 +01:00
Erik Montnemery
8ff10ad3b8 Fix MQTT threading bug (#43667) 2020-11-26 22:33:58 +01:00
Paulus Schoutsen
e1de36fda8 Fix check config (#43663) 2020-11-26 22:25:21 +01:00
Paulus Schoutsen
edf70e9f06 Make input_datetime better handle timezones (#43396)
* Make input_datetime better handle timezones

* Improve test coverage

* Apply suggestions from code review

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

* Revert change to time format

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-11-26 20:20:10 +01:00
Jasper Slits
f3033ec01d Add Roomba support for automatic emptying of bin (#43594) 2020-11-26 17:48:54 +01:00
Paulus Schoutsen
a15abf8802 Merge pull request #43664 from home-assistant/rc 2020-11-26 17:42:21 +01:00
Paulus Schoutsen
0ede3da686 Bumped version to 0.118.4 2020-11-26 16:02:28 +00:00
Pascal Vizeli
ecaa9d925b Fix deadlock if an integration from stage_1 fails (#43657) 2020-11-26 16:02:24 +00:00
Paulus Schoutsen
793fdb5317 Tweak template digit detection (#43621) 2020-11-26 16:02:23 +00:00
Paulus Schoutsen
c4108d4ef1 Disable parsing scientific/complex number notation in template type (#43170) 2020-11-26 16:02:22 +00:00
Sören
373ad44760 Bump avea to 1.5.1 (#43618) 2020-11-26 15:58:42 +00:00
epenet
44c8fce33b Fix duplicate check on onewire config flow (#43590) 2020-11-26 15:58:41 +00:00
Sébastien RAMAGE
94f7f70f2d Update zigpy-zigate to 0.7.3 (#43427)
* Update zigpy-zigate to 0.7.3
Fix probing pizigate

* Update zigpy-zigate to 0.7.3
Fix probing pizigate
2020-11-26 15:58:40 +00:00
Erik Montnemery
18135bb1a1 Make MQTT climate return PRESET_NONE when no preset is set (#43257) 2020-11-26 15:58:40 +00:00
Erik Montnemery
dc8364fd3a Support disabling devices (#43293) 2020-11-26 16:45:02 +01:00
Paulus Schoutsen
39efbcb815 Allow importing gist (#43659) 2020-11-26 16:00:50 +01:00
Bram Kragten
4aa181416c Add area selector, remove date selector (#43658)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-26 15:44:25 +01:00
Ron Klinkien
316a2750df Add Duty binary_sensor platform to FireServiceRota integration (#43638) 2020-11-26 15:42:55 +01:00
Paulus Schoutsen
eb3e5cf446 Suggest folder when importing blueprint and store source_url (#43650) 2020-11-26 11:46:59 +01:00
Pascal Vizeli
d4f9c1979f Fix deadlock if an integration from stage_1 fails (#43657) 2020-11-26 11:38:30 +01:00
HomeAssistant Azure
ed16c5078f [ci skip] Translation update 2020-11-26 00:03:15 +00:00
Olivér Falvai
c439d25ac3 Add location to summary sensor attributes (#43641) 2020-11-25 13:41:56 -07:00
Bram Kragten
8533d9cae0 Add default to inputs (#43636) 2020-11-25 20:05:43 +01:00
Bram Kragten
3767af14f3 Add more selectors (#43639) 2020-11-25 20:03:56 +01:00
Erik Montnemery
6706ea36de Add Tasmota cover (#43368)
* Add Tasmota cover

* Update tests

* Bump hatasmota to 0.1.0
2020-11-25 18:52:09 +01:00
Erik Montnemery
314497d013 Add Tasmota fan (#43353)
* Add Tasmota fan

* Bump hatasmota to 0.1.0

* Apply suggestions from code review
2020-11-25 17:40:32 +01:00
Joakim Plate
ac551179ae Fix flapping derivative tests where time would move between state changes (#43579) 2020-11-25 17:08:00 +01:00
Ron Klinkien
ea52ffc2d9 Add FireServiceRota/BrandweerRooster integration (#38206)
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-25 16:38:49 +01:00
Paulus Schoutsen
1de2554f70 Tweak template digit detection (#43621) 2020-11-25 16:10:33 +01:00
Simone Chemelli
b7f36106df Add Shelly UNI ADC sensor (#43490) 2020-11-25 15:37:07 +01:00
Shay Levy
ebaf143cf6 Support for Shelly Input Events (#43479) 2020-11-25 15:29:01 +01:00
Paulus Schoutsen
b3be708db6 Add default config if not there (#43321)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2020-11-25 15:10:04 +01:00
Paulus Schoutsen
0cf3736162 Bump ha-ffmpeg to 3.0.2 (#43597) 2020-11-25 08:45:15 +01:00
Sören
c421555db3 Bump avea to 1.5.1 (#43618) 2020-11-25 08:25:09 +01:00
Teemu R
183154c017 Bump pyhs100 dependency to fix hs220 discoverability issues (#43619)
Fixes #39395
2020-11-25 08:21:48 +01:00
HomeAssistant Azure
cbfd8a5a14 [ci skip] Translation update 2020-11-25 00:03:05 +00:00
Allen Porter
745823dd55 Add nest SDM API camera/doorbell events (#42700)
* Add nest SDM API camera/doorbell events

Events are fired  when pubsub messages are received.   When messages
are received lookup a home assistant device id from the nest
device id, so that the home assistant device id can be included
in the event payload.

* Update homeassistant/components/nest/__init__.py

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

* Update nest code style based on PR feedback

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-24 14:34:43 -08:00
Matthias Alphart
7f9a7791bf update xknx to 0.15.4 (#43536) 2020-11-24 22:58:17 +01:00
epenet
48d9f1a61b Fix duplicate check on onewire config flow (#43590) 2020-11-24 21:44:31 +01:00
Robert Svensson
acb94b0b59 Add tilt support to deCONZ covers (#43607) 2020-11-24 21:42:11 +01:00
Paulus Schoutsen
dae286aed5 Upgrade foobot_async to 1.0.0 (#43611) 2020-11-24 21:25:23 +01:00
koolsb
aed6980b14 Fix Meraki API Auth (#43578) 2020-11-24 19:56:39 +01:00
Erik Montnemery
d493f18e50 Bump hatasmota to 0.1.1 (#43608) 2020-11-24 19:55:15 +01:00
springstan
5a892e8fca Add unknown_authorize_url_generation to base strings for config flows (#42484) 2020-11-24 12:00:16 -05:00
Allen Porter
3dd14e05e3 Update nest library and switch events to async (#43583) 2020-11-24 08:53:50 -07:00
Robert Svensson
7214d6517a Fix conversion of cover position between HASS and deCONZ (#43602) 2020-11-24 14:47:56 +01:00
Paulus Schoutsen
755f15abe3 Fix warning generated by surpetcare test (#43598) 2020-11-24 12:40:25 +01:00
JJdeVries
8f18af9e80 Decrease asuswrt connects per sensor (#43383)
* asuswrt: Decrease number of connects per sensor

* Changed implementation to DataUpdateCoordinator

* review changes

* update aioasuswrt dependency

* Apply suggestions from code review

Add explicit return None and fix type hint

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-11-24 04:50:57 +01:00
HomeAssistant Azure
fcd8684d40 [ci skip] Translation update 2020-11-24 00:04:19 +00:00
Franck Nijhof
c157fbef1e Bump version to 0.119.0dev0 (#43485) 2020-11-23 22:06:59 +01:00
Maikel Punie
059f1a35f2 Use references in config flow for solaredge (#43511) 2020-11-23 15:34:46 -05:00
starkillerOG
0c30abda61 Add Motion Blinds integration (#42989)
Co-authored-by: J. Nick Koston <nick@koston.org>
2020-11-23 10:33:14 -10:00
Denix
66efe92b3f Cannot use vcgencmd in HassOS (#42710) 2020-11-23 14:56:50 -05:00
Franck Nijhof
612e74703b Add webhook to default config (#43521) 2020-11-23 14:49:13 -05:00
Greg
65796eee2d Add codeowner to Enphase Envoy manifest (#43402) 2020-11-23 19:58:30 +01:00
Thibaut
b272e16b44 Fix RTS cover with set position available (#43555) 2020-11-23 08:13:52 -10:00
Oliver
0c64873c10 Update denonavr to 0.9.7 (#43546) 2020-11-23 06:54:06 -10:00
Paulus Schoutsen
d84d819b62 Merge pull request #43561 from home-assistant/rc 2020-11-23 15:37:34 +01:00
Franck Nijhof
9368ab5480 Upgrade sentry-sdk to 0.19.4 (#43504) 2020-11-23 08:09:17 -05:00
Robin Wohlers-Reichel
2fcd1a250b update solax to 0.2.5 (#43564) 2020-11-23 08:05:22 -05:00
Franck Nijhof
bb17d4552e Upgrade Docker base image to 2020.11.2 (#43560) 2020-11-23 12:10:48 +00:00
Franck Nijhof
a3d9a94339 Upgrade Docker base image to 2020.11.2 (#43560) 2020-11-23 13:10:30 +01:00
Robert Svensson
55cbd5aa0d Track deCONZ lib changes to light based devices (#43366)
* Improve control of covers

* Log backtrace if available

* Do not create entity for controller tool
Binary sensor should use state rather than is_tripped
Add some more tests to lights and sensors

* Bump dependency to v74

* Fix Balloobs comments
2020-11-23 11:37:11 +01:00
Daniel Hjelseth Høyer
3b105c415b Mill Heater: Add support for Energy consumption (#43523) 2020-11-23 10:26:50 +01:00
Anders Melchiorsen
47ff04d9ad Optimize reading of Sonos source mode (#43541) 2020-11-23 10:20:06 +01:00
Paulus Schoutsen
f823fac45c Bumped version to 0.118.3 2020-11-23 09:08:09 +00:00
Franck Nijhof
3955d64b6a Upgrade Docker base image to 2020.11.1 (#43538) 2020-11-23 09:05:33 +00:00
ahertz
a08f809c46 Bump sleepyq to 0.8.1 (#43505) 2020-11-23 09:05:32 +00:00
On Freund
e94111f725 Gracefully handle no uuid in kodi discovery (#43494) 2020-11-23 09:05:31 +00:00
Franck Nijhof
99399cfd29 Ensure Plex content_id in play_on_sonos service is a string (#43483) 2020-11-23 09:05:30 +00:00
Aaron Bach
882b1eb941 Fix unhandled exception when IQVIA API fails to return data (#43359) 2020-11-23 09:05:29 +00:00
Aaron Bach
92cd1373de Fix bug related to possibly missing task ID in Notion API data (#43330)
* Fix bug related to possibly missing task ID in Notion API data

* Calculate unique ID once

* Code review

* Simplify

* Code review
2020-11-23 09:05:28 +00:00
Kevin Fronczak
8ab15f6867 Update Blinkpy to fix non-updating blink mini cameras (#43549) 2020-11-23 09:42:28 +01:00
dependabot[bot]
b144a980da Bump actions/stale from v3.0.13 to v3.0.14 (#43551)
Bumps [actions/stale](https://github.com/actions/stale) from v3.0.13 to v3.0.14.
- [Release notes](https://github.com/actions/stale/releases)
- [Commits](https://github.com/actions/stale/compare/v3.0.13...87c2b794b9b47a9bec68ae03c01aeb572ffebdb1)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-11-23 09:36:52 +01:00
Robert Svensson
ffe0c1cd58 Add device id to deconz_event (#43552) 2020-11-23 09:22:44 +01:00
Aaron Bach
a4f7b7d784 Fix bug related to possibly missing task ID in Notion API data (#43330)
* Fix bug related to possibly missing task ID in Notion API data

* Calculate unique ID once

* Code review

* Simplify

* Code review
2020-11-22 20:15:38 -07:00
HomeAssistant Azure
492ef81069 [ci skip] Translation update 2020-11-23 00:04:13 +00:00
Maciej Bieniek
885e393df9 Make Brother uptime sensor disabled by default (#43478) 2020-11-22 11:42:16 -10:00
Franck Nijhof
20db980695 Upgrade Docker base image to 2020.11.1 (#43538) 2020-11-22 22:39:07 +01:00
Anders Melchiorsen
9ffdec63cc Optimize Sonos current playing state (#43517) 2020-11-22 22:16:03 +01:00
Daniel Rheinbay
498654a1e0 Add vendor effects to Yeelight integration (#42711)
Add effects shipped by Yeelight in their apps, as these effects are quite popular and have been missing from Home Assistant.
2020-11-22 21:41:09 +01:00
Aaron Bach
0b5851e403 Clean up RainMachine config entry (#43508) 2020-11-22 14:22:47 +01:00
Lasath Fernando
86cf184903 Add seek support to plex media players (#43420)
Turns out plexapi lib already supports this, so we just need to
pass through the command.
2020-11-22 14:05:15 +01:00
Anders Melchiorsen
62da64867c Optimize Sonos favorites updates (#43516) 2020-11-22 14:04:46 +01:00
Greg
a633341dc9 Bump envoy version to 0.17.0 (#43498) 2020-11-22 14:02:27 +01:00
Aaron Bach
3ffd97acd4 Fix unhandled exception when IQVIA API fails to return data (#43359) 2020-11-22 13:59:23 +01:00
Aaron Bach
be39104a36 Re-organize OpenUV constants (#43453)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-11-22 12:50:22 +01:00
Anders Melchiorsen
7319c4692d Optimize Sonos queue position (#43514) 2020-11-22 12:25:13 +01:00
ahertz
d7e696b90a Bump sleepyq to 0.8.1 (#43505) 2020-11-22 12:21:27 +01:00
Franck Nijhof
a0a44f12a7 Clean up Solar-log review comments (#43503) 2020-11-22 05:40:31 +01:00
HomeAssistant Azure
acca35cdc4 [ci skip] Translation update 2020-11-22 00:04:54 +00:00
On Freund
b2c9bd2ca6 Gracefully handle no uuid in kodi discovery (#43494) 2020-11-21 20:47:57 +01:00
Crash
76eb5aeeb6 Add updated British Voices (#43496)
Say hello to Charlotte and James.
https://cloud.ibm.com/apidocs/text-to-speech?code=python#getvoice
2020-11-21 20:24:04 +01:00
Ernst Klamer
977ed942ba Deprecate YAML config for Solar-log (#43484)
Per ADR-0010, this PR deprecates YAML configuration for Solar-log. Users who already use the Solar-log integration do not need to take action, as their configuration has already been imported into the UI.
2020-11-21 17:50:46 +01:00
Franck Nijhof
a092b4c204 Ensure Plex content_id in play_on_sonos service is a string (#43483) 2020-11-21 16:32:55 +01:00
Xiaonan Shen
ca053d4499 Bump rpi-bad-power to 0.1.0 (#43476) 2020-11-21 13:21:51 +01:00
Jakub Kolář
c5803614e1 Upgrade discord.py to 1.5.1 (#43473)
* Upgrade discord.py to 1.5.1

discord.py 1.5.1 introduces support for Intents that are required by future bots and integrations. While this is not yet required by Home Assistant Discord integration it is needed in the future, because old API which discord.py 1.4.1 uses is now deprecated. Also it would solve dependency collision with my custom component discord_game.

* Upgrade discord.py to 1.5.1
2020-11-21 13:07:17 +01:00
Indu Prakash
7213d5f31b Support for multiple states in history_stats (#43416)
Co-authored-by: Indu Prakash <6459774+InduPrakash@users.noreply.github.com>
2020-11-21 12:44:37 +01:00
FlavorFx
f22f568169 Fix Luftdaten.info data retrieval (#43471)
Fix Luftdaten.info data retrieval
2020-11-21 11:52:34 +01:00
Franck Nijhof
db0dee1ab2 Add repeat mode support to Spotify (#43247) 2020-11-21 11:38:40 +01:00
Franck Nijhof
7c6e80952b Upgrade debugpy to 1.2.0 (#43328) 2020-11-21 11:37:41 +01:00
Aidan Timson
d7bf783da6 Add reauth support for OVO Energy (#38882) 2020-11-21 11:21:23 +01:00
Adam Król
cccd4d734c Fix ConnectTimeout during wolflink start (#43418) 2020-11-21 11:10:11 +01:00
Alan Murray
45618f8054 Bump acmeda dependency aiopulse to 0.4.2 (#43217) 2020-11-21 11:00:08 +01:00
Julien "_FrnchFrgg_" Rivaud
b2bd68a4a0 Avoid arbitrarily reducing ZHA climate temperature information (#43442)
The Zigbee specification mandates that temperatures are given in
1/100ths of degrees, and several devices are able to provide temperature
readings or accept target temperature settings with precision equal or
better than 0.1°C. Yet the ZHA climate entity implementation advertises
an hard-coded precision of 0.5°C.

Avoid arbitrary coarsening by advertising 0.1°C precision, as passing
through the full 0.01°C precision is probably not that useful.
2020-11-21 00:06:50 -05:00
Tom
db60a71603 Change Plugwise integration to plugwise module (#43036)
* Switch to plugwise module and forthcoming changes

* Adjusted according to review

* Fix leaving out domain for tests

* Add tests for exceptions

* Add more tests for exceptions

* Version bump

* Wording on test

* Catch-up with dev
2020-11-20 20:43:20 -06:00
Alexei Chetroi
e32669a2d9 Remove zigpy monkey patching (#43456)
* Use event handler for incoming messages from zigpy

* Bump up zha dependency
2020-11-20 20:02:52 -05:00
HomeAssistant Azure
43955d3aa8 [ci skip] Translation update 2020-11-21 00:08:32 +00:00
Ville Skyttä
cab186d28f Add ONVIF PTZ Stop support (#39734) 2020-11-20 22:59:11 +01:00
Aaron Bach
b4381c5005 Move Notion logger to a package logger (#43450) 2020-11-20 22:47:48 +01:00
Martin Hjelmare
22f63be30e Remove salt integration for webscraping (#43452) 2020-11-20 21:48:23 +01:00
Paulus Schoutsen
bed28ac2e7 Merge pull request #43440 from home-assistant/rc 2020-11-20 21:41:40 +01:00
Martin Hjelmare
a745594712 Move legacy device tracker setup to legacy module (#43447) 2020-11-20 21:28:00 +01:00
Aaron Bach
8779592952 Move Ambient PWS logger to a package logger (#43448) 2020-11-20 21:20:56 +01:00
Aaron Bach
a880ef6a4e Move Flo logger to a package logger (#43449) 2020-11-20 21:14:44 +01:00
springstan
dd4f41c1db Use weather attribute conditions constants (#39945) 2020-11-20 21:04:03 +01:00
Philip Allgaier
700336258b Fix empty local_ip config flow (#43333) 2020-11-20 12:40:34 -07:00
Aleix Murtra
0f823b4c0e Upgrade Beewi Smartclim component to 0.0.10 (#43441) 2020-11-20 19:16:18 +01:00
Paulus Schoutsen
f2e78d6ea0 Bumped version to 0.118.2 2020-11-20 16:54:21 +00:00
Paulus Schoutsen
9822cacbba Fix time trigger based on entities ignoring entities if initially in the past (#43431) 2020-11-20 16:54:16 +00:00
Brett
43c53f7043 Increase Advantage Air retry limit for older systems (#43417) 2020-11-20 16:54:16 +00:00
Rob Bierbooms
7708da6713 Update dsmr_parser to 0.23 (#43403) 2020-11-20 16:47:47 +01:00
Paulus Schoutsen
dc5f7aedd7 Verify that we register blueprints on automation setup (#43434) 2020-11-20 15:57:57 +01:00
Paulus Schoutsen
bbb82ded68 Fix time trigger based on entities ignoring entities if initially in the past (#43431) 2020-11-20 15:43:28 +01:00
Philip Allgaier
82b7cc8ac7 Provide HA username via auth WS (#43283) 2020-11-20 15:42:19 +01:00
Paulus Schoutsen
43ba053030 Add support for checking minimum HA version (#43350) 2020-11-20 15:24:42 +01:00
Joakim Plate
e98f36e357 Support openRelativePercent for google assistant covers (#43336) 2020-11-20 15:20:09 +01:00
100ferhas
9b3c97345a Update Alexa supported languages (#43139) 2020-11-20 08:47:17 -05:00
Brig Lamoreaux
c42b1f65b3 Add Srp energy component (#41091) 2020-11-20 08:18:02 -05:00
Sébastien RAMAGE
2ed27fc15d Update zigpy-zigate to 0.7.3 (#43427)
* Update zigpy-zigate to 0.7.3
Fix probing pizigate

* Update zigpy-zigate to 0.7.3
Fix probing pizigate
2020-11-20 08:05:51 -05:00
Brett
6dc84654b0 Increase Advantage Air retry limit for older systems (#43417) 2020-11-20 09:23:38 +01:00
Andrew Hayworth
88367dc466 Update python-awair to 0.2.1 (#43415)
This version of python awair has support for the local api - which is
cool! But more importantly, this version also is less strict about the
versions of aiohttp it depends on.

This version prepares for the upcoming pip resolver changes outlined here:
https://pyfound.blogspot.com/2020/03/new-pip-resolver-to-roll-out-this-year.html#what-will-change

cc https://github.com/ahayworth/python_awair/issues/18
2020-11-20 09:07:59 +01:00
ehendrix23
3a42277130 Update pymyq to 2.0.10 (#43413)
* Bump version of pymyq to 2.0.9

* Bump version of pymyq to 2.0.10
2020-11-19 16:26:44 -10:00
HomeAssistant Azure
c255e74463 [ci skip] Translation update 2020-11-20 00:06:26 +00:00
Paulus Schoutsen
390668e192 Check config to use config platforms (#43407) 2020-11-19 22:05:36 +01:00
Anton Palgunov
d3f952f831 Add new air-humidifier device CA4 with miot protocol (#39398)
* Add new air-humidifier device CA4 with miot protocol

* Update homeassistant/components/xiaomi_miio/fan.py

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

* xiomi_miio fan Standard speed for fan, removed static attributes

* xiomi_miio fan Standard speed for fan, removed static attributes

* xiomi_miio fan unnessary elif

* added mode_mapping

* Changed mode_mapping to constant also move reverse to constant

* Removerd water_level

* Return to exclude breaking changes

Co-authored-by: Teemu R. <tpr@iki.fi>
2020-11-19 21:56:53 +01:00
Paulus Schoutsen
e9d895d283 Merge pull request #43400 from home-assistant/rc 2020-11-19 20:58:23 +01:00
David
f693c8a9fd Add twinkly integration (#42103)
* Add twinkly integration

* Add tests for the Twinkly integration

* Update Twinkly client package to fix typo

* Remove support of configuration.yaml from Twinkly integration

* Add ability to unload Twinkly component from the UI

* Remove dead code from Twinkly

* Fix invalid error namespace in Twinkly for python 3.7

* Fix tests failing on CI

* Workaround code analysis issue

* Move twinkly client init out of entry setup so it can be re-used between entries

* Test the twinkly component initialization

* React to PR review and add few more tests
2020-11-19 12:22:12 -05:00
Paulus Schoutsen
2741362b23 Bumped version to 0.118.1 2020-11-19 17:13:54 +00:00
Joakim Sørensen
044edd3d9e Add back system_health_info to the base of lovelace (#43382) 2020-11-19 17:13:45 +00:00
Raman Gupta
0bfcfb859a Bump pyvizio to 0.1.57 (#43374) 2020-11-19 17:13:44 +00:00
J. Nick Koston
e15f3b7b8e Fix homekit bridges when no name was provided (#43364) 2020-11-19 17:13:43 +00:00
Erik Montnemery
18fdf3a429 Bump hatasmota to 0.0.32 (#43360) 2020-11-19 17:13:42 +00:00
Adam Król
59d6eaf856 Bump wolf_smartset to 0.1.8 and handle server fetch error (#43351) 2020-11-19 17:13:42 +00:00
Bram Kragten
5dcbb634f6 Fix selector to return the selector type (#43395) 2020-11-19 16:48:43 +01:00
Adam Król
edd25ae338 Bump wolf_smartset to 0.1.8 and handle server fetch error (#43351) 2020-11-19 15:24:28 +01:00
Aidan Timson
17e1a2a78a Update ovoenergy to v1.1.11 (#43391) 2020-11-19 15:23:20 +01:00
Allen Porter
2d14f07396 Improve nest SDM integration error handling (#43271) 2020-11-19 12:26:49 +01:00
J. Nick Koston
a3061ebd8d Fix homekit bridges when no name was provided (#43364) 2020-11-19 12:10:23 +01:00
Erik Montnemery
d61998e184 Raise in base implementation of FanEntity.oscillate (#43354) 2020-11-19 12:05:52 +01:00
Anders Melchiorsen
390b45b149 Reword numeric_state trigger (#43367) 2020-11-19 12:00:01 +01:00
Joakim Sørensen
3ca8f0c475 Add back system_health_info to the base of lovelace (#43382) 2020-11-19 11:55:21 +01:00
Shay Levy
982624b3ac Support for Shelly Binary Input Sensors (#43313)
Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-19 11:42:24 +01:00
Simone Chemelli
3dbfd2cb70 Add shelly installed firmware info (#43221) 2020-11-19 10:47:23 +01:00
Erik Montnemery
0bf9734af1 Bump hatasmota to 0.0.32 (#43360) 2020-11-19 09:07:35 +01:00
Raman Gupta
4205367aa7 Bump pyvizio to 0.1.57 (#43374) 2020-11-19 08:46:20 +01:00
Oliver
f555e20fac Update denonavr to 0.9.6 (#43370) 2020-11-18 19:46:30 -10:00
Alexei Chetroi
54c4e9335f Refactor ZHA sensor initialization (#43339)
* Refactor ZHA sensors to use cached values after restart

* Get attr from cluster, not channel

* Run cached state through formatter method

* Use cached values for div/multiplier for SmartEnergy channel

* Restore batter voltage from cache

* Refactor sensor to use cached values only

* Update tests

* Add battery sensor test
2020-11-18 21:34:12 -05:00
Alexei Chetroi
70a3489845 Update Zha dependencies (#43373) 2020-11-18 20:31:22 -05:00
Alexei Chetroi
f1693e2433 Refactor ZHA tests to allow attribute reads during device initialization (#43357)
* Allow plugging zigpy attribute reads in tests

* Migrate ZHA tests to use new patched attribute reads

* Remove logging in tests
2020-11-18 19:12:38 -05:00
HomeAssistant Azure
a1306059af [ci skip] Translation update 2020-11-19 00:11:12 +00:00
Franck Nijhof
aec17d25fa Merge pull request #43356 from home-assistant/rc 2020-11-18 19:01:29 +01:00
Franck Nijhof
462793f43c Bumped version to 0.118.0 2020-11-18 17:45:38 +01:00
Bram Kragten
ddd7fff6cd Updated frontend to 20201111.2 (#43334) 2020-11-18 17:43:04 +01:00
Erik Montnemery
d2a3811186 Bump hatasmota to 0.0.31 (#43319) 2020-11-18 17:22:26 +01:00
Raman Gupta
27707d9711 Abort vizio discovery flow without unique ID (#43303)
* abort vizio discovery flow if unique ID cant be found because it means we cant connect

* add tests

* fix abort call
2020-11-18 17:22:17 +01:00
Aaron Bach
0e155f5240 Bump aioguardian to 1.0.4 (#43299) 2020-11-18 17:22:07 +01:00
rikroe
9920aaf1f7 Bump bimmer_connected to 0.7.13 (#43294)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2020-11-18 17:21:58 +01:00
Chris
b25e8be3f2 Tweak OZW Light discovery (#43325) 2020-11-18 15:18:59 +01:00
Bram Kragten
de5e49b37c Updated frontend to 20201111.2 (#43334) 2020-11-18 08:24:25 +01:00
HomeAssistant Azure
262fadd9bc [ci skip] Translation update 2020-11-18 00:09:55 +00:00
Alex-Klein
682417d2c7 Add TV channel name to smartthings integration (#41729)
* Adds TV channel name to smartthings integration

* fix on attribute to not override key
2020-11-17 17:20:59 -06:00
Joakim Plate
1567fadda3 Improve Google Assistant cover assumed state handling (#43255)
* Set command only cover
* No need for override position now that we support command only
* Return empty state response for assumed state

Fixes #43178
Reverts: #23498

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-17 21:55:46 +01:00
mvn23
212fb572e1 Fix kodi media_player unavailable at start (#41714) 2020-11-17 07:27:58 -10:00
Maciej Wilczyński
6a5546afc1 Add an option to template delay_on/off in template binary sensor (#43259) 2020-11-17 07:24:04 -10:00
Erik Montnemery
14aba1f9de Bump hatasmota to 0.0.31 (#43319) 2020-11-17 18:02:41 +01:00
Klaas Schoute
b358103b58 Update cloud integration to 0.38.0 (#43314)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-17 16:31:59 +01:00
Martin Hjelmare
e73d2c65cd Add progress translation key to hassfest (#43311) 2020-11-17 11:44:06 +01:00
dependabot[bot]
aa6376a691 Bump codecov/codecov-action from v1.0.14 to v1.0.15 (#43304)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from v1.0.14 to v1.0.15.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Commits](https://github.com/codecov/codecov-action/compare/v1.0.14...239febf655bba88b16ff5dea1d3135ea8663a1f9)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-11-17 08:55:56 +01:00
Thomas
4e6035d057 Improvement to allow parsing of station ID in vasttrafik integration. Addresses #34851 (#43136) 2020-11-17 07:34:20 +01:00
Raman Gupta
95504b7408 Abort vizio discovery flow without unique ID (#43303)
* abort vizio discovery flow if unique ID cant be found because it means we cant connect

* add tests

* fix abort call
2020-11-17 07:11:42 +01:00
Chris Talkington
c861a1c850 Update directv to 0.4.0 (#43302)
* update directv to 0.4.0

* Update requirements_all.txt

* Update requirements_test_all.txt
2020-11-17 06:50:04 +01:00
Tom
ed36cb7beb Add notification binary_sensor to Plugwise integration (#41473)
* Notifications extract from beta

* Remove info loggings

* Delete notification service

* Only notifications for right smiles

* Revert to correct logic

* Catchup with dev (mostly with ourselves from #41201)

* Remove debug logging

* Naming improvement

* Improve test quality as per codecov patch requirement

* Revert to original condition (and appropriately test)

* Fix delete_notification_service, bring tests fixtures up to 1.6.0 including notifications

* Review comment (@bouwew)

* Correct test value

* Re-apply #40108 fix after rebase sidestep

* Update tests/components/plugwise/test_init.py

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

* Add needed state to imports

* Remove separate gw unload code

* Change entry_fail approach

* Revert persistent notification part

* Revert persistent notification part - lint

* Update homeassistant/components/plugwise/binary_sensor.py

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

* Update homeassistant/components/plugwise/binary_sensor.py

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

* Rework reuse of sensor in binary_sensor

* Explicit state attribute keys

* Remove tempfile

* List of notifications per severity

* Update homeassistant/components/plugwise/binary_sensor.py

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

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-11-16 19:54:44 -06:00
HomeAssistant Azure
c8113e6b11 [ci skip] Translation update 2020-11-17 00:06:49 +00:00
rikroe
096d73eb4f Bump bimmer_connected to 0.7.13 (#43294)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2020-11-17 00:31:54 +01:00
Aaron Bach
699402ca18 Bump aioguardian to 1.0.4 (#43299) 2020-11-16 16:31:35 -07:00
Jc2k
3e1f2a5103 Refactor how entities are created for homekit_controller services (#43242) 2020-11-16 23:11:39 +00:00
Paulus Schoutsen
d6ea96ca44 Bumped version to 0.118.0b3 2020-11-16 21:59:07 +00:00
Bram Kragten
b9c395a641 Updated frontend to 20201111.1 (#43298) 2020-11-16 21:58:57 +00:00
Paulus Schoutsen
e6955f50b5 Update pytradfri to 7.0.4 (#43297) 2020-11-16 21:58:57 +00:00
reaper7
1bb9792bfc Fix Enigma2 available entity property (#43292)
Available property should return self.e2_box.is_offlin negation

fixes previous PR: https://github.com/home-assistant/core/pull/42407
2020-11-16 21:58:56 +00:00
Paulus Schoutsen
10818e73ae Update pytradfri to 7.0.3 (#43289) 2020-11-16 21:58:55 +00:00
Philip Allgaier
1ba2e07609 Bump requests to 2.25.0 (#43279) 2020-11-16 21:58:54 +00:00
Greg Dowling
cabd730281 Bump pyvera to 0.3.11 (#43262) 2020-11-16 21:58:53 +00:00
Sébastien RAMAGE
bf2c10196d Update zigpy-zigate to 0.7.2 (#43252)
* update zigpy_zigate to v0.7.1

* bump zigpy-zigate to 0.7.2
2020-11-16 21:58:52 +00:00
michaeldavie
c6126ff6e4 Bump env_canada to 0.2.4, fix config validation (#43251) 2020-11-16 21:58:52 +00:00
Clifford Roche
f1ec34007e Update greeclimate to 0.10.3 (#43248)
* Update greeclimate to 0.10.3

* Device search needs to be mocked in tests
2020-11-16 21:58:51 +00:00
Clifford Roche
26a7773da8 Update greeclimate to 0.10.2 (#43206) 2020-11-16 21:58:50 +00:00
Martin Hjelmare
72a68bbf9c Bump hass-nabucasa to 0.37.2 (#43146) 2020-11-16 21:57:23 +00:00
uvjustin
e7e1676468 Remove pts adjustments in stream (#42399)
* Remove unnecessary pts adjustments

* Add comments

* Use -inf for initial last_dts to be more clear

* Use video first_pts as common adjuster in recorder

* Remove seek(0) before av.open
2020-11-16 21:57:22 +00:00
Bram Kragten
d11d1343a8 Updated frontend to 20201111.1 (#43298) 2020-11-16 22:56:45 +01:00
Paulus Schoutsen
c04b600ddd Update pytradfri to 7.0.4 (#43297) 2020-11-16 22:55:53 +01:00
uvjustin
414f167508 Remove pts adjustments in stream (#42399)
* Remove unnecessary pts adjustments

* Add comments

* Use -inf for initial last_dts to be more clear

* Use video first_pts as common adjuster in recorder

* Remove seek(0) before av.open
2020-11-16 15:13:33 -05:00
reaper7
159ebe1dac Fix Enigma2 available entity property (#43292)
Available property should return self.e2_box.is_offlin negation

fixes previous PR: https://github.com/home-assistant/core/pull/42407
2020-11-16 20:25:07 +01:00
Erik Montnemery
52e1282d8c Make MQTT climate return PRESET_NONE when no preset is set (#43257) 2020-11-16 20:10:55 +01:00
michaeldavie
4ffba281db Bump env_canada to 0.2.4, fix config validation (#43251) 2020-11-16 20:09:18 +01:00
Sylvia van Os
a164989e41 Bump PyEssent to 0.14 (#43282) 2020-11-16 18:53:42 +01:00
Paulus Schoutsen
f19f743bed Update pytradfri to 7.0.3 (#43289) 2020-11-16 18:26:22 +01:00
Paulus Schoutsen
479de9433c Convert core tests to async (#43287) 2020-11-16 18:25:55 +01:00
Paulus Schoutsen
819dd27925 Automatically clean up executor as part of closing loop (#43284) 2020-11-16 15:43:48 +01:00
Greg Dowling
5d83f0a911 Bump Pywemo to 0.5.3 (#43263) 2020-11-16 13:17:58 +01:00
Greg Dowling
31f3ce81ee Bump pyvera to 0.3.11 (#43262) 2020-11-16 13:16:49 +01:00
dependabot[bot]
63abe8b4f9 Bump actions/upload-artifact from v2.2.0 to v2.2.1 (#43272)
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from v2.2.0 to v2.2.1.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v2.2.0...726a6dcd0199f578459862705eed35cda05af50b)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-11-16 12:39:14 +01:00
Guy Khmelnitsky
5ea55f7e89 Xiaomi Device Tracker - Move "Refreshing device list" to debug (#43276) 2020-11-16 12:31:45 +01:00
Philip Allgaier
7280dbd431 Bump requests to 2.25.0 (#43279) 2020-11-16 12:27:42 +01:00
Sebastian Muszynski
1783e1ae64 Bump python-miio and construct version (#43267) 2020-11-16 12:22:32 +01:00
Adrian Suwała
246ad8dba9 Rewrite ecobee unittest tests to pytest (#42584) 2020-11-16 11:54:51 +01:00
Simone Chemelli
4c2bf1ddf5 Avoid creating battery sensor if Shelly device is external powered (#43243) 2020-11-16 11:49:23 +01:00
Michael
60314ecc61 Apply suggestions from #42697 to synology_dsm (#43197)
* apply suggestions from #42697

* fix tests

* use MockConfigEntry for test

* use hass.config_entries.async_setup()

* disable default fixture

* rename marker to no_bypass_setup
2020-11-16 11:18:48 +01:00
Chris Talkington
467d79c7fd Add tests for browse media image proxy (#43076)
* add tests for browse media image proxy

* Update test_init.py

* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update __init__.py
2020-11-16 07:49:41 +01:00
HomeAssistant Azure
7dcfc8f1fa [ci skip] Translation update 2020-11-16 00:03:40 +00:00
J. Nick Koston
9d0cd9c1b1 Convert most esphome state updates to callbacks (#43246) 2020-11-15 22:18:23 +01:00
Tim de Boer
149ba088d4 Add dsmr_reader telegram timestamp and device classes (#42909)
* Added Telegram timestamp

* added to 'dsmr/reading/timestamp' and 'dsmr/consumption/gas/read_at'

* Fixed import sorting

* Replaced 'kW' with ENERGY_KILO_WATT_HOUR

* Added device_class, changed unit_of_measurement with fallback on device_class

* Fixed typo

* Fixed 'black' coding format

* Removed fallback, added unit_of_measurement and CURRENCY_EURO as device_class

* Fixed newline

* Removed 'timestamp' unit_of_meassure

* Removed icons from defintions with device_class

* Updated device_classes

* Updated device_classes

* Updated device_classes

* Added 'entity_registry_enabled_default' properties

* Added 'entity_registry_enabled_default' properties, fixed typo

* MQTT discovery will be in another pull-request
2020-11-15 14:52:31 -06:00
Pieter De Baets
61475cf090 Support gas meter capability for smartthings (#41310) 2020-11-15 14:42:11 -06:00
Sébastien RAMAGE
65b2ef659e Update zigpy-zigate to 0.7.2 (#43252)
* update zigpy_zigate to v0.7.1

* bump zigpy-zigate to 0.7.2
2020-11-15 12:40:45 -05:00
J. Nick Koston
869cb83170 Set should_poll for zone entities (#43212) 2020-11-15 11:40:03 -06:00
Clifford Roche
eb9e9e67f0 Update greeclimate to 0.10.3 (#43248)
* Update greeclimate to 0.10.3

* Device search needs to be mocked in tests
2020-11-15 11:06:51 -06:00
Florian Klien
a6f47ac380 Remove yessssms integration (#43200) 2020-11-15 16:40:59 +01:00
HomeAssistant Azure
9a21421807 [ci skip] Translation update 2020-11-15 00:03:48 +00:00
Alexei Chetroi
84569549f8 Refactor ZHA light initialization (#43149)
* Refactor ZHA light initialization

* Don't do redundant attribute reads
2020-11-14 17:24:41 -05:00
Paulus Schoutsen
ec357081af Bumped version to 0.118.0b2 2020-11-14 21:07:16 +00:00
michaeldavie
058733ae79 Remove OpenCV dependecy from Environment Canada (#43235)
* Bump env_canada to 0.2.2

* Revert PR #38731
2020-11-14 21:06:38 +00:00
Glenn Waters
bd6c63cae7 Bump elkm1-lib to 0.8.8 (#43230) 2020-11-14 21:06:37 +00:00
J. Nick Koston
d24b74417a Fix typo in lw12wifi shoud_poll (#43213) 2020-11-14 21:06:37 +00:00
Aaron Bach
c434afae2e Revert "Remove YAML config for Tile (#43064)" (#43199)
This reverts commit 19f48e180c.
2020-11-14 21:06:36 +00:00
Allen Porter
a24263fc30 Catch the right nest stream refresh exception error (#43189) 2020-11-14 21:06:35 +00:00
Paulus Schoutsen
62e6a86432 Revert opensky flight latitude and longitude (#43185)
This reverts commit 0f46916f9e.
2020-11-14 21:06:35 +00:00
Paulus Schoutsen
39493fd3ea Prevent spider from doing I/O in the event loop (#43182) 2020-11-14 21:06:34 +00:00
Sébastien RAMAGE
33d5e79301 update zigpy_zigate to v0.7.1 (#43159) 2020-11-14 21:06:33 +00:00
Andrew Sayre
cd42d82f9d Bump pysmartthings and pysmartapp (#43240) 2020-11-14 21:57:42 +01:00
J. Nick Koston
4e00a8a3d0 Eliminate doorbird switch polling (#43215) 2020-11-14 21:47:38 +01:00
J. Nick Koston
8b63e22c99 Bypass the slow update warning for group updates (#43209) 2020-11-14 21:46:24 +01:00
Andrew Sayre
11a437bac9 Bump pyheos to 0.7.2 (#43239) 2020-11-14 21:46:01 +01:00
J. Nick Koston
810561e313 Switch ios to dispatching instead of polling (#43233) 2020-11-14 21:43:49 +01:00
Josef Schlehofer
085aa3c99d Upgrade youtube_dl to version 2020.11.12 (#43231) 2020-11-14 21:41:04 +01:00
michaeldavie
a3e8968e8a Remove OpenCV dependecy from Environment Canada (#43235)
* Bump env_canada to 0.2.2

* Revert PR #38731
2020-11-14 21:16:14 +01:00
Austin Drummond
d1566bd210 Add HomeKit humidifier/dehumidifier (#42311)
* add HomeKit humidifier/dehumidifier

* added more test coverage

* simplified char logic

Co-authored-by: Quentame <polletquentin74@me.com>

* use mode constants

* Renamed HomeKit Contorller

Co-authored-by: Quentame <polletquentin74@me.com>

* improved threshold logic

* split up homekit humidifier into 2 entities

* fixed tests

* fixed mode and switch logic

* added set mode tests

* removed redundant methods present in base class

Co-authored-by: Quentame <polletquentin74@me.com>
2020-11-14 17:59:13 +00:00
Glenn Waters
c6608f7f49 Bump elkm1-lib to 0.8.8 (#43230) 2020-11-14 07:13:37 -10:00
b4dpxl
bb31de1de7 Add support for Broadlink BG1 devices (#42314)
* Support for BG1 switches after config flow updates to core Broadlink component

* updates based on @felipediel feedback

* Update updater.py

* Update switch.py

* Update switch.py
2020-11-14 14:59:41 +01:00
Jc2k
cc396b9736 Add initial camera support to homekit_controller (#43100) 2020-11-14 12:07:22 +00:00
Clifford Roche
dc8db033b9 Update greeclimate to 0.10.2 (#43206) 2020-11-14 11:57:36 +01:00
Thomas Delaet
293f8eaaf3 Add quarter-hour period feature for utility_meter component (#41999)
* add support for quarter-hourly intervals to utility meter (15 minutes)

* add tests

* add test for every quarter

* Update homeassistant/components/utility_meter/sensor.py

Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>

Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
2020-11-14 11:53:59 +01:00
J. Nick Koston
bf955f3eb8 Fix typo in lw12wifi shoud_poll (#43213) 2020-11-14 11:12:00 +01:00
Allen Porter
3e46c42307 Catch the right nest stream refresh exception error (#43189) 2020-11-13 22:37:09 -08:00
HomeAssistant Azure
d7f1deeb00 [ci skip] Translation update 2020-11-14 00:07:02 +00:00
Aaron Bach
907907e6f9 Revert "Remove YAML config for Tile (#43064)" (#43199)
This reverts commit 19f48e180c.
2020-11-14 00:04:34 +01:00
czechmark
16364636d1 Update fitbit battery status (#42980)
* Read the device_status in order to update the fitbit battery

* Read the device_status in order to update the fitbit battery
2020-11-13 23:10:04 +01:00
Paulus Schoutsen
bae026a6fe Add support for selectors in services.yaml (#43162)
* Add support for selectors in services.yaml

* Add base schema validation
2020-11-13 22:53:55 +01:00
Paulus Schoutsen
df25b53bb8 Fix automation in packages (#43202) 2020-11-13 22:49:01 +01:00
Thomas
6e7b14f139 Hide cancelled trips from being displayed in vasttrafik integration (#43184) 2020-11-13 17:51:33 +01:00
Charles Garwood
71b8aad91b Update ozw get_config_parameter websocket response (#43058) 2020-11-13 10:06:34 -05:00
Martin Hjelmare
6daf40b254 Copy default vscode settings during bootstrap (#43180) 2020-11-13 16:03:40 +01:00
Paulus Schoutsen
37361a6332 Prevent spider from doing I/O in the event loop (#43182) 2020-11-13 16:03:08 +01:00
Paulus Schoutsen
36b4a8e128 Revert opensky flight latitude and longitude (#43185)
This reverts commit 0f46916f9e.
2020-11-13 09:52:15 -05:00
Daniel
5de30e19bb Rewrite google_wifi unittest tests to pytest style (#42030) 2020-11-13 15:40:46 +01:00
Franck Nijhof
976640102f Upgrade sentry-sdk to 0.19.3 (#43176) 2020-11-13 14:42:40 +01:00
Paulus Schoutsen
5ecaa9e4d2 Add log message server startup (#43177) 2020-11-13 14:39:50 +01:00
Sébastien RAMAGE
ea550d475a update zigpy_zigate to v0.7.1 (#43159) 2020-11-13 08:35:41 -05:00
Paulus Schoutsen
7a85b3ea66 Add test to access current request in websocket API (#43133) 2020-11-13 14:20:47 +01:00
Anders Melchiorsen
55b214ec9c Fix time_date interval for DST (#43166) 2020-11-13 13:32:56 +01:00
Paulus Schoutsen
0a717f313e Improve entity domain validator (#43164) 2020-11-13 13:31:43 +01:00
Anders Melchiorsen
87d86026ed Fix time_date timestamp offsets (#43165) 2020-11-13 13:29:57 +01:00
Paulus Schoutsen
8dbd54bed1 Disable parsing scientific/complex number notation in template type (#43170) 2020-11-13 13:22:29 +01:00
Simone Chemelli
7bcd92172a Remove relative time sensor from cert_expiry (#42338) 2020-11-13 13:15:37 +01:00
Paulus Schoutsen
890d740093 Further improve MFI tests (#43167) 2020-11-13 10:51:27 +01:00
Paulus Schoutsen
239cc23b9b Update translations 2020-11-13 09:42:02 +00:00
Paulus Schoutsen
3404e6ded1 Update translations 2020-11-13 10:40:51 +01:00
Paulus Schoutsen
c8a104d602 Bumped version to 0.118.0b1 2020-11-13 09:39:04 +00:00
HomeAssistant Azure
2bf15172bb [ci skip] Translation update 2020-11-13 09:38:56 +00:00
HomeAssistant Azure
b93648f856 [ci skip] Translation update 2020-11-13 09:38:24 +00:00
J. Nick Koston
c37c0da191 Guard against empty ssdp locations (#43156) 2020-11-13 09:38:10 +00:00
Anders Melchiorsen
91f265dd93 Fix playing of Spotify URIs on Sonos (#43154) 2020-11-13 09:38:09 +00:00
Erik Montnemery
b90cf94df3 Bump hatasmota to 0.0.30 (#43140) 2020-11-13 09:38:08 +00:00
Joakim Sørensen
c5f8b4106e Add missing 'hassio' translation string (#43127)
* Add missing 'hassio' translation string

* Fix typo...
2020-11-13 09:37:55 +00:00
Philip Allgaier
9fbf39b0ff Added missing system health translation for "Views" (#43126) 2020-11-13 09:36:56 +00:00
Aaron Bach
b0ff1e3885 Fix bug preventing Notion entities from updating their bridge (#43122) 2020-11-13 09:36:55 +00:00
Aaron Bach
3caa94e81e Streamline SimpliSafe errors (#43117) 2020-11-13 09:36:55 +00:00
Shay Levy
f7544b9427 Make Appliance Type Case-insensitive (#43114)
"appliance_type" is a free text parameter in the device settings, this fix will make the comparison case-insensitive
2020-11-13 09:36:54 +00:00
Aaron Bach
86a26d1a7c Fix incorrect Notion battery state calculation (#43108)
* Fix incorrect Notion battery state calculation

* Both cases
2020-11-13 09:36:53 +00:00
Hmmbob
6cfbf294d1 Bump pycsspeechtts to 1.0.4 (#43105) 2020-11-13 09:36:53 +00:00
Joakim Sørensen
3732b5286d Add system health section for the Supervisor (#43074) 2020-11-13 09:36:52 +00:00
Chris Talkington
e7ce8940b2 Use media player image proxy for roku media browser (#43070) 2020-11-13 09:36:51 +00:00
SukramJ
9e65eb53e4 Bump dependency for HomematicIP Cloud (#43018)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-13 09:36:51 +00:00
Joshua M. Boniface
b17cf75583 Move setup_url_for_address to pyWeMo library (#42722)
* Move setup_url_for_address to PyWemo library

* Bump pywemo to 0.5.2

* Use module-level function call

* Update requirements via script
2020-11-13 09:36:50 +00:00
Marvin Wichmann
f5184c5aef Update xknx to 0.15.3 (#42026)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-13 09:36:49 +00:00
J. Nick Koston
4907996dd6 Guard against empty ssdp locations (#43156) 2020-11-13 09:40:25 +01:00
Anders Melchiorsen
96641cab02 Fix playing of Spotify URIs on Sonos (#43154) 2020-11-13 09:40:00 +01:00
Joakim Sørensen
f50869d62e Add missing 'hassio' translation string (#43127)
* Add missing 'hassio' translation string

* Fix typo...
2020-11-13 09:39:36 +01:00
Aaron Bach
ad7f1446be Streamline SimpliSafe errors (#43117) 2020-11-13 09:38:58 +01:00
Marvin Wichmann
899fc3d35a Update xknx to 0.15.3 (#42026)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-13 09:37:45 +01:00
Anders Melchiorsen
1a888433cb Fix beat calculation (#43142) 2020-11-13 09:33:00 +01:00
Anders Melchiorsen
e0f1d0ab20 Mock time_date sensor tests (#43141) 2020-11-13 09:31:55 +01:00
HomeAssistant Azure
76b843118b [ci skip] Translation update 2020-11-13 00:10:16 +00:00
Aaron Bach
3f09c9bc0e Fix bug preventing Notion entities from updating their bridge (#43122) 2020-11-12 21:45:20 +01:00
Martin Hjelmare
b84415344f Bump hass-nabucasa to 0.37.2 (#43146) 2020-11-12 20:15:31 +01:00
Simone Chemelli
31502e960a Shelly: minor improvements (#43138) 2020-11-12 19:49:06 +01:00
Felipe Martins Diel
c620fa344e Add support for learning RF commands with Broadlink remotes (#39671)
* Add support for learning RF codes with Broadlink remotes

* Rename INFRARED and RADIOFREQUENCY to COMMAND_TYPE_IR and COMMAND_TYPE_RF

* Rewrite if expression as normal if statement

* Use COMMAND_TYPE_IR directly and improve error messages
2020-11-12 19:10:29 +01:00
Aaron Bach
7921be1b5f Fix incorrect Notion battery state calculation (#43108)
* Fix incorrect Notion battery state calculation

* Both cases
2020-11-12 10:47:47 -07:00
Erik Montnemery
7b7bb0a15f Bump hatasmota to 0.0.30 (#43140) 2020-11-12 18:29:06 +01:00
Paulus Schoutsen
a68d6a63bb Add VSCode debug launch conf (#43130) 2020-11-12 15:46:49 +01:00
Shay Levy
ad06b6b340 Revert "shelly_naming" rebase errors (#43134) 2020-11-12 15:22:51 +01:00
Philip Allgaier
bbd7402793 Add reload support to KNX (#42429)
* Add reload support to KNX

* Changes from review (platform reset + asyncio.gather)

* Changes from review (proper asyncio.gather usage)
2020-11-12 14:34:08 +01:00
Martin Hjelmare
a665e152a9 Fix aurora config flow tests (#43128) 2020-11-12 12:11:05 +01:00
Franck Nijhof
6f326a7ea4 Add support for multiple event triggers in automation (#43097)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-12 11:58:28 +01:00
Philip Allgaier
673ac21de4 Added missing system health translation for "Views" (#43126) 2020-11-12 11:50:24 +01:00
Aaron Bach
24840cce23 Add a config flow for Recollect Waste (#43063)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-12 11:00:42 +01:00
Simone Chemelli
cdc53329d0 Add Shelly totalWorkTime as Lamp life (Shelly Air) (#43112)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-12 10:38:53 +01:00
SukramJ
d7e5d1bfaf Bump dependency for HomematicIP Cloud (#43018)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-12 10:33:01 +01:00
Shay Levy
22a0464dce Make Appliance Type Case-insensitive (#43114)
"appliance_type" is a free text parameter in the device settings, this fix will make the comparison case-insensitive
2020-11-12 10:12:56 +01:00
Joshua M. Boniface
be93060e99 Move setup_url_for_address to pyWeMo library (#42722)
* Move setup_url_for_address to PyWemo library

* Bump pywemo to 0.5.2

* Use module-level function call

* Update requirements via script
2020-11-12 06:37:27 +01:00
HomeAssistant Azure
8a0907acf9 [ci skip] Translation update 2020-11-12 00:10:58 +00:00
Bram Kragten
1c7080d5c5 Add save and delete WS commands to blueprints (#42907)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-11 23:32:46 +01:00
djtimca
d47b3a5f44 Fix Aurora integration including externalizing API to PyPi and adding config_flow (#43045)
Co-authored-by: Pawel <pszafer@gmail.com>
2020-11-11 20:36:16 +01:00
Chris Talkington
df5a8c4dac Use media player image proxy for roku media browser (#43070) 2020-11-11 20:17:46 +01:00
Simone Chemelli
d8b067ebf9 Add Shelly support for REST sensors (#40429) 2020-11-11 20:13:14 +01:00
Joakim Sørensen
403514ccb3 Add system health section for the Supervisor (#43074) 2020-11-11 20:12:24 +01:00
springstan
37bcfd1d2f Simplify distance conversion (#43107) 2020-11-11 20:10:17 +01:00
Moritz Schmitz von Hülst
434d39a5ea Add initial rest query params (#42198)
* add initial rest query params

* of course I didn't run black

* fix tests

* fix tests

* add test

* reformat

* add binary sensor test

* fix tests

* add one more test and fix switch

* should not have touched that

* if you don't pay attention once
2020-11-11 09:03:55 -10:00
Hmmbob
6a7b71e8fb Bump pycsspeechtts to 1.0.4 (#43105) 2020-11-11 19:47:03 +01:00
Franck Nijhof
0cf9e99044 Bumped version to 0.118.0b0 2020-11-11 19:27:47 +01:00
Clifford Roche
c93d2909a2 Bump greeclimate to 0.9.6 (#43106)
This fixes a bug with discovery for some devices which do not have a CID
2020-11-11 19:23:25 +01:00
Michael
dbe89c1e02 Add reboot and shutdown service to synology_dsm (#42697)
* add reboot and shutdown service to synology_dsm

* apply suggestions

* make _async_setup_services() async

* add comment to make sure unique_id is serial
2020-11-11 19:06:50 +01:00
Alexei Chetroi
11ded51ddb Bump up ZHA dependencies (#43104) 2020-11-11 19:03:22 +01:00
Franck Nijhof
710ca65549 Merge branch 'master' into dev 2020-11-11 18:57:51 +01:00
uvjustin
66dccd86bd Modify wait timeout in stream (#42794)
* Set wait timeout to 40

* Use dynamic wait_timeout

* Catch error in container open

* Get restart times from const.py

* Fix test_stream_keepalive
2020-11-11 12:32:56 -05:00
Franck Nijhof
7c783dc1b4 Merge pull request #43102 from home-assistant/rc
Co-authored-by: Sören Oldag <soeren_oldag@freenet.de>
Co-authored-by: Hmmbob <33529490+hmmbob@users.noreply.github.com>
Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2020-11-11 18:30:59 +01:00
Franck Nijhof
650f3413a4 Bumped version to 0.117.6 2020-11-11 18:04:17 +01:00
jjlawren
176c2f3978 Fix Plex auth issues by setting header (#43081) 2020-11-11 18:01:48 +01:00
Hmmbob
9d617d446e Bump gTTS-token to 1.1.4 (#43015) 2020-11-11 17:59:07 +01:00
Sören Oldag
ea5f621351 Bump pwmled to v1.6.7 (#42903) 2020-11-11 17:58:58 +01:00
Sören Oldag
b49aa9485c Remove unneeded state restoration of the physical device in rpi_gpio_pwm integration (#42804)
* Add @soldag to code owners of rpi_gpio_pwm platform

* Remove unneeded state restoration of the physical device in rpi_gpio_pwm integration
2020-11-11 17:58:48 +01:00
Bram Kragten
f4f3192a6a Update frontend to 20201111.0 (#43101) 2020-11-11 16:43:45 +01:00
Jonathan Keljo
8f59104c71 Show media progress in sisyphus (#42996)
This is newly possible in recent Sisyphus table firmwares. If it doesn't work for you, make sure you're running at least firmware 1.10.73.
2020-11-11 14:52:34 +01:00
Paulus Schoutsen
560afc31ad Use internal url for Squeezebox if possible (#43089) 2020-11-11 14:49:08 +01:00
Allen Porter
1061f78f12 Add watchdog to reset nest subscriber (#43034) 2020-11-11 13:56:59 +01:00
Erik Montnemery
8cc7069323 Bump hatasmota to 0.0.29 (#43013) 2020-11-11 13:51:09 +01:00
Paulus Schoutsen
621a0a5dd2 Update translations 2020-11-11 13:25:22 +01:00
Paulus Schoutsen
687923690f Chunk translation clean script to avoid too long url error (#43090) 2020-11-11 13:23:16 +01:00
Paulus Schoutsen
68d757e5d2 Remove brand names from translations (#43092) 2020-11-11 13:22:52 +01:00
Radek Rada
b790c2e79d Remove Octoprint log spam when printer endpoint status code is 409 (#42985) 2020-11-11 12:27:12 +01:00
Paulus Schoutsen
54f3d9078a Update translations 2020-11-11 12:10:09 +01:00
Aaron Bach
19f48e180c Remove YAML config for Tile (#43064) 2020-11-11 09:44:14 +01:00
jjlawren
39cdf61c2d Fix Plex auth issues by setting header (#43081) 2020-11-11 09:40:25 +01:00
Rob Bierbooms
930866bad5 Add MIN_TIME_BETWEEN_UPDATES to dsmr integration (#43057) 2020-11-11 09:21:07 +01:00
David Nielsen
11a9aa3956 Update bravia-tv to 1.0.8 (#43069) 2020-11-11 09:18:14 +01:00
Matthew Donoughe
9771ac1169 Upgrade pylutron-caseta to 0.7.2 (#43075) 2020-11-11 09:15:18 +01:00
Shay Levy
0ddf14a98a Cleanup and naming schema fixes for Shelly (#42987)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-11 09:05:08 +01:00
J. Nick Koston
94bf55e29b Limit concurrency of async_get_integration to avoid creating extra threads (#43085)
* Limit concurrency of async_get_integration to avoid creating extra threads

Since async_get_integration is waiting on the disk most of the time
it would end up creating many new threads because the disk could
not deliver the data in time.

* pylint
2020-11-10 21:34:54 -10:00
Aaron Bach
518e462e9a Streamline Tile CoordinatorEntity (#43065) 2020-11-10 18:00:19 -07:00
Aaron Bach
9b58b24b17 Fix API change with Notion batteries (#43073) 2020-11-10 18:00:04 -07:00
HomeAssistant Azure
4b9ba79584 [ci skip] Translation update 2020-11-11 00:10:27 +00:00
Paulus Schoutsen
ec1b9c2099 Fix mfi test (#43067) 2020-11-11 00:03:16 +01:00
Paulus Schoutsen
7745408440 System health improvement (#43066) 2020-11-10 23:56:50 +01:00
rajlaud
55a6d37f2c Add proxy support for browse media images (#42193)
Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2020-11-10 23:51:58 +01:00
Allen Porter
94db07ca8c Update nest sdm camera to refresh in background (#42865)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-10 23:48:02 +01:00
Paulus Schoutsen
9f4480a634 Add system health streaming updates (#42831) 2020-11-10 22:45:59 +01:00
Erik Montnemery
8a7febcfbe Improve restore of deleted devices (#42703)
* Improve restore of deleted devices

* Simplify
2020-11-10 22:14:39 +01:00
Rob Bierbooms
1fe93b4ec9 Remove setting log level of dsmr_parser inside dsmr integration (#43059) 2020-11-10 22:13:26 +01:00
Paulus Schoutsen
b1c78554f2 Fix mfi test (#43060) 2020-11-10 22:09:38 +01:00
Sébastien RAMAGE
0eb473769f Update zigpy-zigate to 0.7.0 (#43043) 2020-11-10 16:02:44 -05:00
Erik Montnemery
4e49bd0596 Correct handling of existing MQTT subscriptions (#43056) 2020-11-10 21:55:26 +01:00
Pawel
d7bcf4a3b4 Add available state for Epson integration (#43038) 2020-11-10 12:58:00 +01:00
9R
0c9189af0a Add set and check repeat mode to mpd component (#42808)
Co-authored-by: Anders Melchiorsen <amelchio@nogoto.net>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-11-10 12:56:04 +01:00
Paulus Schoutsen
3af1771616 Include device_id in ZHA event (#43037) 2020-11-10 12:43:15 +01:00
Elena Rogleva
c029d29f11 Rewrite the pilight/test_sensor.py tests to use async pytest functions (#42418) 2020-11-10 11:11:56 +01:00
Felipe Martins Diel
48e954e038 Change instructions for unlocking Broadlink devices (#42023) 2020-11-10 10:42:59 +01:00
Peter Epley
b099726854 Add function to remove holidays from workday sensor (#41988) 2020-11-10 10:26:55 +01:00
springstan
1366354725 Clean up yaml configurations for all fritz integrations (#39995) 2020-11-10 10:08:49 +01:00
Felipe Martins Diel
2b83af856f Set an appropriate SCAN_INTERVAL for Broadlink A1 sensor (#41309) 2020-11-10 10:02:37 +01:00
Paulus Schoutsen
1fba245ff1 Catch correct error when Spotify has a request error (#43032) 2020-11-10 09:58:52 +01:00
Pawel
3d4c530dd0 Address review feedback for Epson (#43012)
* Martin review

* Update homeassistant/components/epson/__init__.py

Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>

* fix STATE_UNAVAILABLE

Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
2020-11-10 09:55:42 +01:00
JJdeVries
537c0c41eb Bump aioasuswrt version to handle telnet asus routers (#43031) 2020-11-10 09:50:03 +01:00
Thibaut
7ba373e74b Bump pymfy to 0.9.1 (#43021) 2020-11-10 09:38:14 +01:00
Aaron Bach
49b4f9d2c6 Streamline Notion CoordinatorEntity (#43027) 2020-11-10 09:24:27 +01:00
Aaron Bach
244bfb2096 Deprecate YAML config for Notion (0.119 removal) (#43026) 2020-11-09 23:47:38 -06:00
HomeAssistant Azure
95c9880c52 [ci skip] Translation update 2020-11-10 00:04:21 +00:00
Rob Bierbooms
f09004acf5 Increase timeout for setup of rfxtrx (#43003)
* Increase timeout and remove reload

* Use asyncio.TimeoutError

* Remove import

* Add logging

* Minor tweak

* Fix black

* Update homeassistant/components/rfxtrx/__init__.py

Co-authored-by: Joakim Plate <elupus@ecce.se>
2020-11-10 00:30:15 +01:00
Aaron Bach
5541721899 Migrate Recollect Waste integration to use aiorecollect library (#43022) 2020-11-09 23:31:48 +01:00
Charles Garwood
0d203da854 Bump python-openzwave-mqtt to 1.3.2 (#43020) 2020-11-09 23:26:42 +01:00
epenet
7716740c18 Update inheritance for onewire entities (#43019) 2020-11-09 23:21:16 +01:00
Aaron Bach
6f4219d709 Add support for additional SimpliSafe sensors (#43017) 2020-11-09 23:18:18 +01:00
Diego Elio Pettenò
6b21df9053 Expose Dyson PureCool filter life remaining percentage (#42765) 2020-11-09 23:01:13 +01:00
ollo69
ebc26c70b9 Remove Tuya climate ext. temperature entity option (#42546) 2020-11-09 22:57:04 +01:00
dmonego
dc89bfe9ce Remove stale fixture from mqtt-statestream tests (#42233) 2020-11-09 22:55:00 +01:00
ZzetT
d8f2d04b4f Fix volume calculation of Onkyo MediaPlayer (#42236)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-11-09 22:43:55 +01:00
J. Nick Koston
c7f35b20fb Make all translations cacheable (#42892) 2020-11-09 22:36:45 +01:00
Oncleben31
3187c7cc9d Add missing device class strings (binary sensor) (#42326)
`battery_charging`, `light`, `moving`, `plug` were missing.
Developer documentation was used for states text:
https://developers.home-assistant.io/docs/core/entity/binary-sensor
2020-11-09 22:09:44 +01:00
J. Nick Koston
add50cb33a Add services to log and dump objects to the profiler to help track down memory leaks (#42951)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-09 10:54:18 -10:00
Hmmbob
2d6a12ea34 Bump gTTS-token to 1.1.4 (#43015) 2020-11-09 20:17:57 +01:00
Erik Montnemery
5694e4190c Extend WS API result when enabling an entity (#42667)
* Extend WS API result when enabling an entity

* Fix tests

* Fix tests

* Move updated registry entry to sub dict

* Address review comments

* Increase test coverage
2020-11-09 19:47:45 +01:00
Thomas
94182a9443 Fix vasttrafik sensor displaying incorrect departure times (#43011) 2020-11-09 18:45:36 +01:00
On Freund
4ed8e209f1 Obtain zone entity id in Risco sensors through entity registry (#43007) 2020-11-09 18:44:30 +01:00
Martin Hjelmare
1338c4a425 Add data entry flow show progress step (#42419) 2020-11-09 18:39:28 +01:00
Franck Nijhof
3380b69d54 Remove iAlarm integration (ADR-0004) (#43010) 2020-11-09 18:35:09 +01:00
Paulus Schoutsen
aec191b558 Support datetime sensor in time trigger (#42899) 2020-11-09 14:50:54 +01:00
Chris Talkington
03653f5d2c Reload sonarr config entry on options update (#41958) 2020-11-09 13:58:51 +01:00
Chris Talkington
28e68eaada Reload sonarr config entry on options update (#41958) 2020-11-09 13:58:24 +01:00
Franck Nijhof
b04837e901 Merge branch 'master' into dev 2020-11-09 13:51:22 +01:00
Aaron Bach
3707b72a37 Deprecate YAML config for AirVisual (0.119 removal) (#42581) 2020-11-09 13:41:04 +01:00
Martin Hjelmare
6c5ef0970a Add ozw config flow add-on management (#42421)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-09 13:30:19 +01:00
springstan
a7bd521768 Remove temporary variable from supported_features (#42685)
* Remove temporary variable from supported_features

* Revert removing temp variable for supported features hunterdouglas
2020-11-09 13:19:29 +01:00
Erik Montnemery
b45fa29077 Force color or white mode exclusivity for MQTT lights (#42887) 2020-11-09 12:51:01 +01:00
Guido Schmitz
804579cd54 Update devolo-home-control-api to 0.16.0 (#42944) 2020-11-09 12:17:35 +01:00
Matthew Donoughe
bc4bbaf6ef Add device trigger support for device trackers (#42324)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-09 12:04:16 +01:00
Franck Nijhof
5f09addb74 Replace stale bot with GitHub Action (#42994)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-11-09 11:51:56 +01:00
Franck Nijhof
c6afbceb37 Replace lock bot with GitHub Action (#43001) 2020-11-09 11:47:28 +01:00
reaper7
8fc8ce8197 Fix enigma2 off state (#42407) 2020-11-09 11:38:38 +01:00
springstan
67b3552165 Add more units to distance conversion util (#40181)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-09 11:38:15 +01:00
Allen Porter
64f06b2b00 Update nest SDM climate simplifying support for eco mode (#42955) 2020-11-09 11:35:38 +01:00
Paulus Schoutsen
e477e94ddd Fix flaky epson CI (#42999) 2020-11-09 10:45:17 +01:00
czechmark
354058f020 Fix Neurio Sensor by making the sensor ID required (#42728) 2020-11-09 10:23:04 +01:00
springstan
30b94892c4 Use strings instead of f-strings for constants (#40619) 2020-11-09 10:09:53 +01:00
Jonathan Keljo
c8a940c59f Upgrade sisyphus-control dependency to 3.0 (#42995)
This has a small chance of breaking tables with older firmwares; if your table has issues, make sure it is running at least firmware v1.10.73.

From the release notes for the new version:

[3.0] - 2020-11-08
==================
Added
-----
* Track remaining/total time support (requires recent firmware)
* Test shell program

Changed
-------
* Reworked the data model to match how Sisyphus itself does it. This fixes crashes that were occurring working with tables that have the latest firmware, but may break things with older firmwares.
* Switched to `python-socketio` for Socket.IO support, as it is more actively maintained than `SocketIO-client-nexus`.
* Switched to VSCode for development
2020-11-09 09:36:16 +01:00
Yuval Aboulafia
adfcbe9058 Make Jewish Calendar use DEVICE_CLASS_TIMSTAMP and remove timestamp attribute (#41397)
* Added "time" attribute

* Revert "Added "time" attribute"

This reverts commit 8adab9b788.

* Make DEVICE_CLASS use the DEVICE_CLASS_TIMESTAMP

* Removed unix timstamp attr

* keep attributes but delete the timestamp
2020-11-09 09:26:43 +01:00
Raman Gupta
a416a9e046 Allow options flows to be aborted (#41875) 2020-11-09 08:59:42 +01:00
Steve Brandt
0f46916f9e Adds feature to get also longitude and latitude of the triggerd entry… (#42990) 2020-11-09 08:37:59 +01:00
Diogo Gomes
12adde5349 On HA restart parse last_reset as a datetime object (#42939) 2020-11-09 08:35:50 +01:00
Andrew Marks
42cdbc7e1d Correct logging and add test case for sharkiq (#41863)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-11-09 08:33:09 +01:00
Xiaonan Shen
f499187835 Fix yeelight binary sensor unique ID (#42562) 2020-11-09 08:32:21 +01:00
HomeAssistant Azure
d9d21ab05e [ci skip] Translation update 2020-11-09 00:03:23 +00:00
Kevin Hellemun
e929ae10cd Fix Spotify scopes evaluation (#42819)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2020-11-09 00:46:26 +01:00
Shay Levy
8b998365a4 Increase update timeouts used in Shelly integration (#42937)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-08 21:49:41 +01:00
springstan
46412ef0c6 Remove empty dependencies from manifest (#42973) 2020-11-08 21:29:28 +01:00
On Freund
5a7e4b4dae Add zone_entity_id to Risco events (#39678)
* Add zone_entity_id to Risco events

* Add comment

* Fix dependency on order
2020-11-08 12:14:43 -06:00
epenet
7c397a02b7 Add onewire switches (#42962)
* Add support for switches

* Fix stale comment
2020-11-08 12:06:41 -06:00
J. Nick Koston
2845fca08e Remove debug prints from utcnow test (#42977) 2020-11-08 11:48:01 -06:00
Felipe Martins Diel
e5fe0c40ec Add support for Broadlink SP4 series and the latest SP mini 3 devices (#41522)
* Add support for Broadlink SP4 series

* Bump python-broadlink to 0.16

* Fix stale docstring
2020-11-08 11:19:28 -06:00
springstan
30e0d14499 Correct link to frontend repo (#42972) 2020-11-08 11:11:45 -06:00
Tom
877bfcb308 Add support for Stretch product to Plugwise integration (#40108)
* Initial switch-group/stretch with failing wk_lisa_battery test

* Adding switch tests, but TypeErrors, needs more investigation

* Fixes and tests aligned

* Review updates

* Use const

* Comments

* Add stretch hostname for testing part

* Remove unused consts

* Revert guardings in line with -beta

* Catchup with dev (mostly with ourselves from #41201)

* Update docstring

* Remove debug logging

* Fix for #42725 (incorrect entity namingi)

* Fix naming for gas interval

* Add missing CONF_USERNAME and use of it

* Change "dummy" to "class"

* Don't use "class"

* Fix CONF_USERNAME default, dummy and other consts

Co-authored-by: Bouwe Westerdijk <11290930+bouwew@users.noreply.github.com>
2020-11-08 11:09:43 -06:00
jan iversen
55cdec8c4e Add test for register configuration for modbus switch (#42604)
* check for false config in modbus tests.

add call to pytest.fail() if device cannot be defined.

* correct bit error in register read.

Only LSB is to be considered for checking ON/OFF

* Add register tests for modbus switch.

Copy the coil tests to work for register tests.

* allow test coverage to control switch.py

With both register and coil test the coverage is a log higher than 50%

* Correct minor bug in handling of register in modbus switch

* Add state_on/state_off test for modbus switch

* restore modbus switch exclusion from coverage

switch file coverage is only at 72%, ideally we want either 80%+ coverage on the file or 90%+ on the component itself which is only about 83% currently with this file included. this is so we keep the overall project coverage in 90%+.

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2020-11-08 10:42:45 -06:00
Erik Montnemery
51b4bc547c Bump hatasmota from 0.0.27 (#42802)
* Adjust tests

* Add test for deprecated discovery message

* Update status sensors

* Bump hatasmota to 0.0.27

* Update tests
2020-11-08 17:11:25 +01:00
Franck Nijhof
6e9b65405a Disable legacy templates by default (#42967) 2020-11-08 16:11:38 +01:00
Franck Nijhof
2656e9b0f9 Upgrade colorlog to 4.5.0 (#42965) 2020-11-08 14:05:55 +01:00
Malte Franken
a0d1f4a6fb Bump aio_georss_gdacs to v0.4 (#42957) 2020-11-08 13:13:09 +01:00
springstan
c029490e15 Add not internet accessible to base strings for config flows (#42478)
* Add not internet accessible to base strings for config flows

* Add prefix webhook_ to json key

* Update reference value to new key
2020-11-08 08:55:18 +01:00
springstan
9ce971ca30 Use common strings in locative config flow (#42481) 2020-11-07 23:03:40 -06:00
absurdist81
d384ca0e69 Add icons for OBiTALK status and reboot sensors (#42883) 2020-11-07 21:00:21 -06:00
Aaron Bach
8dbddd874f Migrate Flu Near You to DataUpdateCoordinator (#42594)
* Migrate Flu Near You to DataUpdateCoordinator

* Prefer partial over lambda

* Remove overlap with CoordinatorEntity
2020-11-07 20:45:14 -06:00
epenet
2b2d7558de Add binary_sensor platform to onewire integration (#42832)
* Add binary_sensor platform to onewire integration

* Keep the same name

* Rework tests

* Rework tests
2020-11-07 20:42:20 -06:00
J. Nick Koston
1626c236dc Only call utcnow once during a state changed event (#42941) 2020-11-07 15:51:06 -10:00
HomeAssistant Azure
eebf0ef336 [ci skip] Translation update 2020-11-08 00:04:05 +00:00
Randall Wessel
239b3f059b Change air pressure unit to hPa in OpenWeatherMap (#42801) 2020-11-07 20:29:57 +01:00
Pawel
df38c59dc8 Add config flow to epson and fix timeouts (#39697) 2020-11-07 18:15:29 +01:00
Simone Chemelli
12a891cc0a Bump aioshelly to 0.5.1 (#42940) 2020-11-07 18:10:14 +01:00
J. Nick Koston
b47a5449e3 Ensure storage task loads are always garbage collected (#42917) 2020-11-07 06:54:56 -10:00
J. Nick Koston
3ec7258c21 Ensure instances of async_add_entities can be garbage collected (#42919) 2020-11-07 06:54:20 -10:00
Erik Montnemery
7f640c4a2e Generate random MQTT client ID (#42934)
* Generate random MQTT client ID

* Add comment

* Apply suggestions from code review

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

Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-11-07 16:27:09 +01:00
Franck Nijhof
9d650245ee Upgrade pytest to 6.1.2 (#40662)
* Upgrade pytest to 6.1.0

* Upgrade pytest to 6.1.2
2020-11-07 12:39:37 +01:00
AlexSchmitz222
d77d7b2217 Change fritzbox title for better product family distinction (#42432) 2020-11-07 11:13:16 +01:00
Daniel Hjelseth Høyer
ce5994d9fe Upgrade Tibber library to 0.16.0 (#42929)
Signed-off-by: Daniel Hjelseth Høyer <mail@dahoiv.net>
2020-11-07 10:53:19 +01:00
HomeAssistant Azure
57c6bb96f4 [ci skip] Translation update 2020-11-07 00:04:02 +00:00
Alexei Chetroi
4b7829d777 Allow ZHA coordinator binding/unbinding (#42854)
* Allow coordinator ZDO binding/unbinding operations

* Let coordinator to provide endpoint it

* Refactor ClusterPair to a dataclass

* Rename ClusterPair
2020-11-06 17:33:13 -05:00
shbatm
121872c546 Fix dimming for ISY994 Z-Wave devices using percent instead of 8-bit brightness values (#42915) 2020-11-06 10:07:37 -10:00
Sören Oldag
bf9f3e1997 Bump pwmled to v1.6.7 (#42903) 2020-11-06 19:27:01 +01:00
Guido Schmitz
c7b2147e55 Handle offline gateways in devolo Home Control (#42897) 2020-11-06 12:49:47 +01:00
Paulus Schoutsen
15da7b3ca6 Cloud: Recover when internet is not available yet (#42877) 2020-11-06 12:12:18 +01:00
Franck Nijhof
fd04b96132 Upgrade hadolint to 0.18.2 (#42087)
* Upgrade hadolint to 0.18.1

* Upgrade hadolint to 0.18.2
2020-11-06 11:01:51 +01:00
Aaron Bach
bba7c15d79 Migrate RainMachine to DataUpdateCoordinator (#42530) 2020-11-06 10:58:50 +01:00
Sören Oldag
4e614e0f2c Remove unneeded state restoration of the physical device in rpi_gpio_pwm integration (#42804)
* Add @soldag to code owners of rpi_gpio_pwm platform

* Remove unneeded state restoration of the physical device in rpi_gpio_pwm integration
2020-11-06 10:58:37 +01:00
Manuel de la Rosa
2d428210e4 Add Spanish US voice to amazon polly (#42891)
* Update tts.py

* Update tts.py
2020-11-06 10:49:00 +01:00
Allen Porter
a5da98680a Add nest climate support for SDM API (#42702)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-11-06 09:57:02 +01:00
J. Nick Koston
3c84c7ccf0 Fix memory leak in websocket_api (#42894)
* Fix memory leak in websocket_api

Each named logger lives forever

* tweak
2020-11-06 09:27:41 +01:00
Steven Barth
1e87ac7eda Bump pyvlx to 0.2.18 (#42895) 2020-11-06 09:19:27 +01:00
HomeAssistant Azure
e972686a13 [ci skip] Translation update 2020-11-06 00:04:57 +00:00
Simone Chemelli
05dc457955 Handle Shelly light domain for relay switches ( fw >=1.9 ) (#42508)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-05 18:38:53 +01:00
Adam Ernst
06a7fc491e Tweak wording of Rachio options (#42849)
This is a bit clearer to my eyes.
2020-11-05 07:27:03 -10:00
Jeff Irion
cfc8e96b15 Handle overriding of default apps for Android TV (#41893)
* Handle overriding of default apps for Android TV

* Fix comment
2020-11-05 16:41:22 +01:00
epenet
38495057a5 Cleanup onewire tests (#42864)
* Cleanup onewire tests

* Cleanup onewire tests
2020-11-05 10:37:35 -05:00
Anders Melchiorsen
650c57db5b Fix async_track_utc_time_change firing too early (#42176) 2020-11-05 16:34:56 +01:00
Paulus Schoutsen
22f16759e5 Merge pull request #42874 from home-assistant/rc 2020-11-05 16:33:21 +01:00
rikroe
8895c65dd4 Bump bimmer_connected to 0.7.12 (#42875)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2020-11-05 15:32:12 +00:00
rikroe
ac06e871e4 Bump bimmer_connected to 0.7.12 (#42875)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2020-11-05 16:32:02 +01:00
Joakim Sørensen
a199d7af59 Move to Launch Library 2 (#42723)
* Move to Launch Library 2

* isort

* Apply suggestions from code review

* Add const to .coveragerc
2020-11-05 15:42:12 +01:00
Jeff Irion
cd675f9175 Bump androidtv to 0.0.54 (#42861) 2020-11-05 15:25:14 +01:00
Sean Dague
2a576e979b Add unique_id property to ARWN sensors (#42570)
* Add unique_id property

After HA 0.111 the ARWN platform's lack of a unique_id causes the
sensors to fail to register correctly. The unique_id for this is just
a slug which is the mqtt topic that it's inbound on.

Also change the logging to INFO for data received to make it fit
better in the logging levels and show up during '-v' runs.

* use topic as unique_id

fix logging

* fix final topic location

* fix black

* address the fact that some topics have more than one sensor

This splits up rain and wind sensors to unique topics

* address review comments
2020-11-05 14:55:53 +01:00
edomat
50761eb4e4 Distinguish Shutters and Awnings in Google Assistant (#42782)
* Distinguish Shutters and Awnings.

* Remove trailing whitespace
2020-11-05 14:55:48 +01:00
Paulus Schoutsen
dfed834617 Bumped version to 0.117.5 2020-11-05 13:45:58 +00:00
Andreas Billmeier
7d0f5fa31a Revert "Fix broken maxcube component" (#42859)
This reverts commit 898f50386f.
2020-11-05 13:45:43 +00:00
cgtobi
b65c92ce91 Fix Netatmo public weather sensor bug (#42858) 2020-11-05 13:45:42 +00:00
Aaron Bach
7c084975b7 Fix missing/incorrect SimpliSafe entities (#42846)
* Entity types

* Don't overdo it

* Fix missing/incorrect SimpliSafe entities
2020-11-05 13:44:57 +00:00
Aaron Bach
943cc243b5 Fix missing sensor exceptions in SimpliSafe (#42845)
* Fix missing sensor exceptions in SimpliSafe

* Entity types

* Don't overdo it
2020-11-05 13:44:56 +00:00
Aaron Bach
ba48fd6c51 Clean up SimpliSafe binary sensor implementation (#42841)
* Clean up SimpliSafe binary sensor implementation

* Cleanup

* Constant name
2020-11-05 13:44:55 +00:00
Diederik van den Burger
60234ecf40 Add hdmi input attribute to AndroidTV (#42571)
* bumps androidtv to 0.0.53

* add hdmi_input attribute to androidtv

* update tests for hdmi_input attribute

* chore: update docstrings
2020-11-05 14:36:46 +01:00
cgtobi
f16ccae78b Fix Netatmo public weather sensor bug (#42858) 2020-11-05 14:16:51 +01:00
Jeff Sloyer
7ed409d681 clarify range of max and min for intensity (#42853) 2020-11-05 10:33:40 +01:00
David Bonnes
fd01636058 Fix evohome coroutine not allowed to be passed to HassJob (#42730) 2020-11-05 10:17:48 +01:00
Adam Ernst
623f2b6f9c Tweak Shelly message to be clearer (#42862)
Not all Shelly devices are battery-powered.
2020-11-05 10:09:22 +01:00
Andreas Billmeier
f6751de262 Revert "Fix broken maxcube component" (#42859)
This reverts commit 898f50386f.
2020-11-05 09:45:29 +01:00
Tom Parker-Shemilt
b1ed5a3e79 Fix circular import of config_validation and template (#41802) 2020-11-04 19:06:19 -10:00
Aaron Bach
956e3b4451 Fix missing/incorrect SimpliSafe entities (#42846)
* Entity types

* Don't overdo it

* Fix missing/incorrect SimpliSafe entities
2020-11-04 18:59:54 -07:00
HomeAssistant Azure
9298fec345 [ci skip] Translation update 2020-11-05 00:10:11 +00:00
Erik Montnemery
2f1d30fa85 Bump hatasmota to 0.0.25.1 (#42850) 2020-11-04 21:59:08 +01:00
Aaron Bach
5b754c29e0 Fix missing sensor exceptions in SimpliSafe (#42845)
* Fix missing sensor exceptions in SimpliSafe

* Entity types

* Don't overdo it
2020-11-04 12:34:14 -07:00
Aaron Bach
b0a6ac7e91 Properly unload listener for SimpliSafe config entry updates (#42579) 2020-11-04 12:28:43 -07:00
Aaron Bach
9bb1c6f188 Clean up SimpliSafe binary sensor implementation (#42841)
* Clean up SimpliSafe binary sensor implementation

* Cleanup

* Constant name
2020-11-04 11:41:08 -07:00
Adam Ernst
ceb8172b7c Tweak Rachio integration strings (#42843)
This is now called "Settings", not "Account Settings", on the home page. (Confusingly the page the button leads to is still titled "Account Settings".)

Also add a missing quote and tweak grammar.
2020-11-04 08:34:09 -10:00
J. Nick Koston
3661d8380a Avoid the same task ending up multiple times in the ssdp asyncio.gather (#42815) 2020-11-04 17:25:37 +01:00
Paulus Schoutsen
7a96f8a4eb Merge pull request #42836 from home-assistant/rc 2020-11-04 17:20:54 +01:00
Pascal Vizeli
c094f4b907 Split build release base + machine build (#42827)
* Split build release base + machine build

* fix second change
2020-11-04 16:56:22 +01:00
Paulus Schoutsen
df6ee2e51f Bumped version to 0.117.4 2020-11-04 15:47:28 +00:00
Maciej Bieniek
6bacda3cee Call coordinator.shutdown() when ConfigEntryNotReady (#42833) 2020-11-04 15:47:11 +00:00
Rob Bierbooms
d4b68454a3 Cleanup dispatchers when unloading rfxtrx (#42803)
* Cleanup dispatchers

* Fix name

* Refactor code

* Fix typo in function description

* Fix pylint error

* Change function definition

* Move cleanup_callbacks data to domain
2020-11-04 15:47:11 +00:00
Clifford Roche
36b099592e Update greeclimate to 0.9.5 (#42796)
Provides better discovery across subnets in some cases
2020-11-04 15:47:09 +00:00
Clifford Roche
08a221be77 Update greeclimate to 0.9.5 (#42796)
Provides better discovery across subnets in some cases
2020-11-04 16:43:33 +01:00
J. Nick Koston
cca661574d Fix webhook when doorbird not yet setup (#42657) 2020-11-04 05:34:07 -10:00
Maciej Bieniek
34f5ad33e9 Call coordinator.shutdown() when ConfigEntryNotReady (#42833) 2020-11-04 09:35:54 -05:00
Paulus Schoutsen
d156e95f8a Merge pull request #42824 from home-assistant/rc 2020-11-04 12:22:18 +01:00
Rob Bierbooms
1fe66df962 Cleanup dispatchers when unloading rfxtrx (#42803)
* Cleanup dispatchers

* Fix name

* Refactor code

* Fix typo in function description

* Fix pylint error

* Change function definition

* Move cleanup_callbacks data to domain
2020-11-04 11:30:46 +01:00
Paulus Schoutsen
f3c7b77afa Bumped version to 0.117.3 2020-11-04 09:24:41 +00:00
Paulus Schoutsen
45dbd49852 Fix evohome scheduling coroutines (#42821) 2020-11-04 09:24:33 +00:00
J. Nick Koston
e4f88a02f7 Fix rest sensors with resource templates (#42818) 2020-11-04 09:24:32 +00:00
Rob Bierbooms
32652fde48 Filter rfxtrx replace devices in option flow on existing config entry (#42800)
* Fix function _can_replace_device

* Rearrange
2020-11-04 09:24:31 +00:00
rikroe
0dc926a131 Bump bimmer_connected to 0.7.11 (#42788) 2020-11-04 09:24:30 +00:00
Michael
43486917bf Fix broken 2fa authentication in synology_dsm (#42775) 2020-11-04 09:24:30 +00:00
cgtobi
d967ecc8c6 Bump pyatmo to 4.2.0 (#42774) 2020-11-04 09:24:29 +00:00
Erik Montnemery
a7bdd2aafe Force color or white mode exclusivity for Tasmota lights (#42772) 2020-11-04 09:24:28 +00:00
Aaron Bach
e6cc35cff2 Fix incorrect property usage for SimpliSafe (#42770) 2020-11-04 09:24:27 +00:00
Aaron Bach
b7d0a21a8b Bump pyairvisual to 5.0.4 (#42760) 2020-11-04 09:24:26 +00:00
rikroe
beaaa1478c Bump bimmer_connected to 0.7.10: fix login issues, add (PH)EV services (#42747)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2020-11-04 09:24:25 +00:00
Raman Gupta
74d8569aab Fix Vizio host string for zeroconf discovery (#42738) 2020-11-04 09:24:25 +00:00
Andreas Billmeier
dc0d27ec18 Fix broken maxcube component (#42674) 2020-11-04 09:24:24 +00:00
Andreas Billmeier
64707d89dd Please set exact cryptography version cryptography==3.2 (#42611) 2020-11-04 09:24:23 +00:00
Andreas Billmeier
898f50386f Fix broken maxcube component (#42674) 2020-11-04 10:17:40 +01:00
Allen Porter
6b57ad9f28 Fix nest subscriber by upgrading google_pubsub to newer library version (#42501) 2020-11-04 10:15:13 +01:00
epenet
c7cdad2b5a Default some entities to disabled (#42797) 2020-11-04 10:08:50 +01:00
Andreas Billmeier
2625a4dfdc Please set exact cryptography version cryptography==3.2 (#42611) 2020-11-04 10:06:35 +01:00
Paulus Schoutsen
254e7eb407 Fix evohome scheduling coroutines (#42821) 2020-11-04 10:04:45 +01:00
rikroe
5530a350e9 Bump bimmer_connected to 0.7.11 (#42788) 2020-11-04 10:04:30 +01:00
Erik Montnemery
56ee99372d Force color or white mode exclusivity for Tasmota lights (#42772) 2020-11-04 10:03:32 +01:00
J. Nick Koston
9e0043fb17 Fix rest sensors with resource templates (#42818) 2020-11-04 08:52:47 +01:00
HomeAssistant Azure
b71e28dfac [ci skip] Translation update 2020-11-04 00:13:14 +00:00
Rob Bierbooms
bfc3d3be76 Filter rfxtrx replace devices in option flow on existing config entry (#42800)
* Fix function _can_replace_device

* Rearrange
2020-11-03 23:01:52 +01:00
Niccolo Zapponi
5ddf99e496 Add support for OpenWeatherMap One Call API (#39839) 2020-11-03 08:37:30 -10:00
epenet
79b10a8efd Update definition of onewire device specifications (#42460)
* Update definition of device specifications

* If set, sensor_name doesn't need to be capitalized
2020-11-03 18:12:01 +01:00
Franck Nijhof
c4f6259f16 Upgrade sentry-sdk to 0.19.2 (#42786) 2020-11-03 16:41:00 +01:00
Paulus Schoutsen
7719e878f9 Migrate system health to use integration_platform (#42785) 2020-11-03 14:28:55 +01:00
Joseph Albert
856f0e209a Bump uEagle to 0.0.2 (#42780) 2020-11-03 12:39:41 +01:00
SigmaPic
51f847c4b8 Catch unhandled exception in websocket_api (#42693)
Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-03 10:35:45 +01:00
Paulus Schoutsen
349e4a5ac2 Fix shelly import (#42783) 2020-11-03 09:49:34 +01:00
Allen Porter
89a5c9fcac Add image support to nest SDM api (#42556) 2020-11-03 09:31:43 +01:00
epenet
744e4378ff Remove unnecessary onewire variable (#42704) 2020-11-03 09:07:22 +01:00
Jason Hunter
5a4c1dbcc4 Add DPI Restriction switch to UniFi integration (#42499)
* initial implementation for controlling DPI restrictions

* address PR review comments and add DataUpdateCoordinator

* fix existing tests against new lib version

* add tests for DPI switches

* bump aiounifi

* listen to events instead of polling

* fix tests

* remove useless test

* bump aiounifi

* rename device to UniFi Controller per PR feedback
2020-11-03 08:36:37 +01:00
HomeAssistant Azure
aab0ff2ea5 [ci skip] Translation update 2020-11-03 00:04:39 +00:00
Michael
3e0fd99616 Fix broken 2fa authentication in synology_dsm (#42775) 2020-11-03 00:20:02 +01:00
cgtobi
391a5447d3 Bump pyatmo to 4.2.0 (#42774) 2020-11-03 00:17:37 +01:00
Michael
b1035697c5 Fix existing synology_dsm config entries cannot be setup (#42769) 2020-11-02 23:55:41 +01:00
Franck Nijhof
4e1b7583e0 Upgrade pre-commit to 2.8.2 (#42757) 2020-11-02 23:46:04 +01:00
Aaron Bach
1f9564bcf5 Fix incorrect property usage for SimpliSafe (#42770) 2020-11-02 14:57:53 -07:00
Paulus Schoutsen
ebe3cbc058 Drop usage of asynctests (#42756) 2020-11-02 19:57:24 +01:00
Aaron Bach
2a3c0f409c Bump pyairvisual to 5.0.4 (#42760) 2020-11-02 10:51:03 -07:00
Shay Levy
f45075eeb5 Use own CoAP lib and support for multicast updates (#42718)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-11-02 16:46:34 +01:00
jjlawren
e5dee965f1 Bump plexapi to 4.2.0 (#42727) 2020-11-02 15:37:41 +01:00
rikroe
b9c43e209c Bump bimmer_connected to 0.7.10: fix login issues, add (PH)EV services (#42747)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2020-11-02 15:13:53 +01:00
Paulus Schoutsen
0fb587727c Add initial blueprint support (#42469)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-11-02 15:00:13 +01:00
David Bonnes
a84dc14569 Provide a more useful error message in evohome (#42734) 2020-11-02 14:53:22 +01:00
Michael
8d9a844e84 Add verify_ssl option for connection setup to synology_dsm (#42539) 2020-11-02 14:23:16 +01:00
Raman Gupta
098dead16d Fix Vizio host string for zeroconf discovery (#42738) 2020-11-02 13:08:36 +01:00
Pascal Vizeli
a4947ed32d Base image 2020.10.1 (#42666) 2020-11-02 11:54:16 +01:00
Paulus Schoutsen
1844e30858 Add support for manual updating a data coordinator (#42746) 2020-11-02 09:54:08 +01:00
HomeAssistant Azure
ce16ff27ef [ci skip] Translation update 2020-11-02 00:03:44 +00:00
Alexei Chetroi
9ccc49411a Refactor ZHA light state restoration after a restart (#42726)
* Restore ZHA light state and level

* Restore state and color temp from zigpy cache
2020-11-01 17:19:36 -05:00
Paulus Schoutsen
6c51ff63ad Merge pull request #42724 from home-assistant/rc 2020-11-01 21:29:21 +01:00
Paulus Schoutsen
aecc3476e8 Bumped version to 0.117.2 2020-11-01 20:00:21 +00:00
Matthew Donoughe
43a990350b Use pylutron_caseta 0.7.1 (#42701) 2020-11-01 19:59:52 +00:00
Chris Talkington
769c5c1779 Fix canary camera entity inheritance (#42691) 2020-11-01 19:59:51 +00:00
Alexei Chetroi
a93ae418a2 Bump up ZHA dependencies (#42679)
* Bump up ZHA dependencies

* Fix tests because of zigpy request signature change
2020-11-01 19:59:51 +00:00
Jason Hunter
562ccbbe25 attempt to renew subscription immediately to stop endless loop if it fails after setup (#42651) 2020-11-01 19:59:50 +00:00
Erik Montnemery
5f28c82837 Make sure Tasmota status sensors are disabled (#42643) 2020-11-01 19:59:49 +00:00
Joakim Sørensen
92f9a77770 Bump pycfdns to 1.2.1 (#42634) 2020-11-01 19:59:49 +00:00
Malte Franken
2430c5ea22 Fix geo_rss_events import statement (#42629)
* bump integration library version

* fix import statement
2020-11-01 19:59:48 +00:00
airthusiast
6d54ed14b4 Fix Fibaro HC2 climate device missing temperature (#42627) 2020-11-01 19:59:47 +00:00
Sören Oldag
faf73e304a Bump pwmled to v1.6.6 (#42607) 2020-11-01 19:59:47 +00:00
ubergeek801
3f12648212 adding support for hardkernel odroid-c4 (#42719) 2020-11-01 20:47:20 +01:00
Matthew Donoughe
704f474894 Use pylutron_caseta 0.7.1 (#42701) 2020-11-01 18:25:34 +01:00
Josef Schlehofer
7498c04410 Upgrade youtube_dl to version 2020.11.01.1 (#42714) 2020-11-01 17:50:53 +01:00
Alexei Chetroi
8868028dcd Bump up ZHA dependencies (#42679)
* Bump up ZHA dependencies

* Fix tests because of zigpy request signature change
2020-11-01 11:05:55 -05:00
Sören Oldag
be058d1eb2 Bump pwmled to v1.6.6 (#42607) 2020-11-01 15:23:42 +01:00
J. Nick Koston
951f166679 Remove homekit cover precision workarounds (#42647)
These workarounds inevitably ended up assuming the wrong thing
In issue #42444 they would assume it was still opening, and
in issue #41645 they would assume is was already closed.
2020-11-01 03:53:02 -10:00
Lindsay Ward
181811b7b8 Fix typo exceeded, change to exceed, in HomeKit (#42705) 2020-11-01 03:51:56 -10:00
taiyeoguns
9fc92ab04e Remove classes in nx584 tests (#42628) 2020-11-01 13:27:33 +01:00
Ville Skyttä
8f22c5917f Run tox verbosely in Travis CI (#42706)
Avoids hitting a no output timeout in sometimes time consuming dep
installs.
2020-11-01 12:57:56 +01:00
Greg
a5b8d0038f Bump version to 0.16.2 (#42696) 2020-11-01 12:25:33 +01:00
epenet
c8735edb7f Optimise onewire sensor update method (#42690) 2020-10-31 14:46:31 -10:00
HomeAssistant Azure
abe6f552f6 [ci skip] Translation update 2020-11-01 00:04:54 +00:00
Chris Talkington
2762b582af Fix canary camera entity inheritance (#42691) 2020-10-31 22:05:59 +01:00
epenet
8fabb99b2e Cleanup local imports on onewire integration (#42689) 2020-10-31 15:08:26 -05:00
Greg Dowling
065ad920ea Bump roonapi to 0.0.25 (#42680) 2020-10-31 20:11:26 +01:00
Michael
1803fee89d Add @mib1185 as codeowner to synology_dsm (#42671)
* add @mib1185 as codeowner to synology_dsm

* Apply suggestions from code review

Co-authored-by: Quentame <polletquentin74@me.com>
2020-10-31 20:10:04 +01:00
springstan
c7fbbbe935 Allow saving zero precision option in Opentherm_gw (#42593)
* Allow saving zero precision option in Opentherm_gw

* Add default 0 back for precision option

* Adjust config flow test for zero precision
2020-10-31 16:19:17 +01:00
Adrian Suwała
d67d8e76dd Remove redundant mock_storage fixture from mqtt_statestream tests (#42652) 2020-10-31 15:28:06 +01:00
Jason Hunter
f1bb7b4a0f attempt to renew subscription immediately to stop endless loop if it fails after setup (#42651) 2020-10-31 09:15:11 -04:00
HomeAssistant Azure
c7ba2341e3 [ci skip] Translation update 2020-10-31 00:04:15 +00:00
Petro31
ee528e1a60 Add hassio service descriptions (#42597)
* Add yaml for snapshot services

Adds snapshot_full and snapshot_partial service descriptions.

* fixes

Added password to full & partial.  Added name to partial.
2020-10-30 21:18:53 +01:00
Aaron Bach
036a8b5667 Small cleanup to IQVIA DataUpdateCoordinator logic (#42642) 2020-10-30 15:10:32 -05:00
Glenn Waters
2b24b9658f Bump ElkM1 library to 0.8.7 (#42645)
This is a bump by two dot versions of the library. The 0.8.6 version had
a number of internal improvements to the library. No external changes.

The 0.8.7 version fixes
https://github.com/home-assistant/core/issues/20630.
2020-10-30 13:41:13 -05:00
Erik Montnemery
73eaef0b1c Make sure Tasmota status sensors are disabled (#42643) 2020-10-30 19:04:11 +01:00
Erik Montnemery
6e9b0b4614 Bump hatasmota to 0.0.26 (#42644) 2020-10-30 19:02:26 +01:00
airthusiast
c8944760b7 Fix Fibaro HC2 climate device missing temperature (#42627) 2020-10-30 18:50:59 +01:00
Felipe Martins Diel
f9208634bd Fix on/off button (#42443) 2020-10-30 18:08:37 +01:00
Erik Montnemery
251d8286e0 Revert "Bump hatasmota to 0.0.26 (#42613)" (#42641)
This reverts commit 2dc5c4dd69.
2020-10-30 18:02:44 +01:00
Joakim Sørensen
b302534042 Bump pycfdns to 1.2.1 (#42634) 2020-10-30 09:20:42 -05:00
springstan
92379ad8d2 Use list literal without using dict.keys() (#42573) 2020-10-30 09:19:13 -05:00
Federico Leoni
2dc5c4dd69 Bump hatasmota to 0.0.26 (#42613)
* Tasmota : Add new Status Sensors

* Tasmota: add new Status Sensors

* Update RSSI sensor icon

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2020-10-30 14:59:36 +01:00
Malte Franken
8c239f2304 Fix geo_rss_events import statement (#42629)
* bump integration library version

* fix import statement
2020-10-30 12:23:07 +01:00
SNoof85
b3d7f940c5 Fix typo in Flunearyou config flow (#42617) 2020-10-30 12:21:00 +01:00
Paulus Schoutsen
e902cfcbf0 Merge pull request #42624 from home-assistant/rc 2020-10-30 10:11:50 +01:00
Erik Montnemery
62b5279d86 Add WS command to remove a Tasmota device (#42266) 2020-10-30 09:56:41 +01:00
Allen Porter
b228ffc761 Add missing config flow translation key to script scaffold (#42621)
Add missing config key for no_url_available when generating new oauth2
config entry based integrations.  This was found in issue #42423 where
the nest integration was missing a string when a user had a misconfiguration.
2020-10-30 09:51:22 +01:00
Paulus Schoutsen
750bb11895 Fix broken time trigger test (#42606) 2020-10-30 08:50:34 +00:00
Paulus Schoutsen
2dcd57bf38 Bumped version to 0.117.1 2020-10-30 08:31:58 +00:00
Clifford Roche
26766d68aa Update greeclimate to 0.9.2 (#42616)
Fixes issue with erroneous await in UDP recv queue
2020-10-30 08:30:57 +00:00
Erik Montnemery
d26bceb110 Bump hatasmota to 0.0.25 (#42605) 2020-10-30 08:30:56 +00:00
Erik Montnemery
aa52ade5a0 Fix MQTT template light (#42598) 2020-10-30 08:30:56 +00:00
Bram Kragten
c57d697df5 Update frontend to 20201021.4 (#42590) 2020-10-30 08:30:55 +00:00
cgtobi
c604595f98 Fix RMV giving wrong data and ignoring given parameters (#42561) 2020-10-30 08:30:54 +00:00
Jc2k
1ab2d55a7a Bump aiohomekit to 0.2.54 (#42532) 2020-10-30 08:30:53 +00:00
Rob Bierbooms
048db9cb7d Enable polling for DSMR derivative entity (#42524) 2020-10-30 08:30:53 +00:00
Michael
0959777b81 Fix adding Virtual DSM system in synology_dsm (#42523) 2020-10-30 08:30:52 +00:00
J. Nick Koston
df552f08c3 Purge unused constants from template helper (#42618) 2020-10-30 09:29:12 +01:00
Adrian Suwała
6011756e90 Rewrite mfi unittest tests to pytest (#42510) 2020-10-30 09:13:33 +01:00
Rob Bierbooms
f470d1e28d Enable polling for DSMR derivative entity (#42524) 2020-10-30 09:11:25 +01:00
J. Nick Koston
8a403cde00 Defer esphome persistent storage writes until after startup (#42600)
Avoid disk I/O during startup as it can cause delays when
a user has many esphome devices.
2020-10-30 09:02:00 +01:00
J. Nick Koston
2bbd2a6e70 Reduce complexity of storage writes (#42576)
* Reduce complexity of storage writes

* add test

* stop hass

* workaround bad test
2020-10-29 22:35:51 -05:00
Aaron Bach
f78e75e16f Properly unload listener for AirVisual config entry updates (#42583) 2020-10-29 19:04:12 -05:00
HomeAssistant Azure
b9d04b9304 [ci skip] Translation update 2020-10-30 00:02:45 +00:00
Clifford Roche
3a11e2c461 Update greeclimate to 0.9.2 (#42616)
Fixes issue with erroneous await in UDP recv queue
2020-10-30 00:49:13 +01:00
Andreas Billmeier
c403534ae1 Fix inexact version of pylacrosse (#42610)
* fix inexact version for pylacrosse

* https://github.com/hthiery/python-lacrosse/releases
* https://pypi.org/project/pylacrosse/#history

* Update requirements_all.txt
2020-10-30 00:31:54 +01:00
Bram Kragten
25ac0d2f6e Update frontend to 20201021.4 (#42590) 2020-10-30 00:14:07 +01:00
Erik Montnemery
153f05afde Bump hatasmota to 0.0.25 (#42605) 2020-10-30 00:13:49 +01:00
J. Nick Koston
7f1683c731 Remove legacy template extract_entities (#42601) 2020-10-30 00:06:08 +01:00
J. Nick Koston
8eb89cdb46 Fix flapping event template test (#42614) 2020-10-30 00:05:55 +01:00
Nikolai
a396f8f76f Add telegram_sent event (#41159)
Co-authored-by: Heine Furubotten <hfurubotten@users.noreply.github.com>
2020-10-29 17:55:25 -05:00
Paulus Schoutsen
7027b01a29 Fix broken time trigger test (#42606) 2020-10-29 22:34:06 +01:00
Erik Montnemery
1215100f9a Fix MQTT template light (#42598) 2020-10-29 20:09:41 +01:00
cgtobi
bebbafdaba Fix RMV giving wrong data and ignoring given parameters (#42561) 2020-10-29 11:50:39 +01:00
J. Nick Koston
c8f00a7b38 Gather all collection listeners and changes at the same time (#42497) 2020-10-29 10:06:55 +01:00
springstan
6b29648cfc Use common strings in twilio config flow (#42477) 2020-10-29 09:59:15 +01:00
Chris Talkington
708423e0f8 Remove YAML config for roku (#41960) 2020-10-29 09:51:48 +01:00
Chris Talkington
0ba1298f1b Remove YAML config for directv (#41961) 2020-10-29 09:51:22 +01:00
Michael
a2f2a42e66 Fix adding Virtual DSM system in synology_dsm (#42523) 2020-10-29 09:22:36 +01:00
Jason Hunter
2a795c0397 Add guppy3 memory profile to Profiler integration (#42435)
* add guppy memory profile to profiler integration

* add output path to notification

* create new service for memory profile

* address review comments
2020-10-28 21:05:16 -04:00
Aaron Bach
3fb091c4ea Deprecate YAML config for Flu Near You (0.119 removal) (#42535) 2020-10-28 19:54:51 -05:00
HomeAssistant Azure
026e0063fe [ci skip] Translation update 2020-10-29 00:09:16 +00:00
Aaron Bach
31518937c0 Cleanup RainMachine (#42544) 2020-10-29 00:52:15 +01:00
Jc2k
12da814470 Bump aiohomekit to 0.2.54 (#42532) 2020-10-29 00:06:01 +01:00
Aaron Bach
e61e8fafee Add options flow to RainMachine (#42241)
* Add options flow to RainMachine

* Linting
2020-10-28 15:52:42 -06:00
David Noren
aef80263cd Recollect waste multi day (#41853)
* Add a "next day" attribute for recollect_waste

* Add a "next_day" attribute for recollect_waste

* Added "next day" capability to recollect_waste

* Add a "next_day" attribute for recollect_waste

* Add better try/catch for recollect_waste
2020-10-28 15:37:37 -06:00
Michael
36b1756816 Add update available binary sensor to synology_dsm (#42378)
* 'update available' binary-sensor

* make black compliant

* add available() to SynoDSMUpgradeBinarySensor

* correct spacing

* Correct usage of _with_upgrade

Co-authored-by: Quentame <polletquentin74@me.com>
2020-10-28 20:56:18 +01:00
Guido Schmitz
c480284861 Remove listener on async_unload_entry in devolo Home Control (#42520) 2020-10-28 20:54:57 +01:00
springstan
a967f689c7 Remove unnecessary instances of dict.keys() (#42518) 2020-10-28 20:43:48 +01:00
Adam Cooper
6e43d489ca Implement minor Colorfix alterations (#42521)
* Added logic to ensure one of ATTR_URL or ATTR_PATH is provided using cv, updated tests to reflect this

* Added missing explicit None returns
2020-10-28 20:36:10 +01:00
Franck Nijhof
9c0a2d69ff Merge pull request #42516 from home-assistant/rc 2020-10-28 20:01:21 +01:00
Franck Nijhof
529b849efe Bumped version to 0.117.0 2020-10-28 18:08:23 +01:00
Paulus Schoutsen
a34d06e363 Default legacy templates to true (#42511)
* Default legacy templates to true

* Disable legacy_templates in tests

Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-10-28 18:08:04 +01:00
Paulus Schoutsen
5b85776566 Fix string representation of template result wrappers (#42494) 2020-10-28 18:08:00 +01:00
Angelo Gagliano
68d2938c6b Move async_add_entities back to event loop for tplink component (#42454) 2020-10-28 18:07:55 +01:00
Greg Dowling
0860ce4099 Tidy after adding group services to roon media player (#42512)
* Tidy after adding roon group services.

* Fix missed changes.
2020-10-28 17:32:23 +01:00
Paulus Schoutsen
21e9e7c5c2 Default legacy templates to true (#42511)
* Default legacy templates to true

* Disable legacy_templates in tests

Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-10-28 16:58:16 +01:00
J. Nick Koston
94219c2266 Ensure the oauth2 token is refreshed before it is expired (#42487)
The current implementation assumed clocks were in sync and did
not account for the time it took to refresh the token.  A 20
second buffer has been added to ensure that the token is refreshed
before it expires as OAuth2Session.valid_token would assume the
token was still good even though the remote would reject it
and would not refresh because it was not time yet.
2020-10-28 07:47:54 -05:00
springstan
4e28ae8e3a Use common strings in life360 config flow (#42375)
* Use common strings for life360 config flow

* Address feedback comments

* Keep two space indentation

* Fix indentation hopefully
2020-10-28 13:29:28 +01:00
springstan
989ab5029a Use dict.values() when appropriate (#42509) 2020-10-28 11:59:07 +01:00
scheric
9545fce55b Use common strings in Dexcom config flow (#41767)
* add strings

* remove unused

* revert change

* already_configured_account->already_configured
2020-10-28 11:03:33 +01:00
Sören
0d0cccea7e Bump avea to 1.5 (#42495) 2020-10-28 11:02:03 +01:00
Franck Nijhof
a99c6f0a7b Upgrade debugpy to 1.1.0 (#42506) 2020-10-28 10:49:58 +01:00
Angelo Gagliano
d42bdcfc2a Move async_add_entities back to event loop for tplink component (#42454) 2020-10-28 09:51:53 +01:00
Paulus Schoutsen
e21e28e49f Fix string representation of template result wrappers (#42494) 2020-10-28 09:11:08 +01:00
Maikel Punie
ce51286c53 Bump python-velbus to 2.1.1 (#42414)
* Bump to python-velbus 2.1.0

* bump to 2.1.1
2020-10-27 21:06:09 -05:00
ollo69
c4b3cf0788 Update tuyaha to 0.0.8 and adapt code (#41375) 2020-10-27 20:26:18 -05:00
J. Nick Koston
2858a90d5c Start homekit bridges with asyncio.gather (#42498) 2020-10-27 19:58:07 -05:00
J. Nick Koston
3c8c5a814b Fix somfy device recreation on update (#42462)
* Fix somfy device recreation on update

If all devices are assumed state, only update every hour
to ensure the token is refreshed

* pylint
2020-10-27 19:57:22 -05:00
David Bonnes
ca0caabce1 Remove zxdavb from honeywell codeowners (#42491) 2020-10-27 19:49:25 -05:00
HomeAssistant Azure
7a06af53ef [ci skip] Translation update 2020-10-28 00:03:38 +00:00
Paulus Schoutsen
5a460e609f Bumped version to 0.117.0b6 2020-10-27 22:26:04 +00:00
Erik Montnemery
a88e011bba Fix race in Tasmota discovery (#42492) 2020-10-27 22:25:57 +00:00
Paulus Schoutsen
40be42299d Improve mqtt test (#42490) 2020-10-27 22:25:56 +00:00
Paulus Schoutsen
7dcebbe89d Bump cryptography to 3.2 (#42489) 2020-10-27 22:25:55 +00:00
Paulus Schoutsen
cb453d3ae1 Make result wrappers more robust (#42488) 2020-10-27 22:25:55 +00:00
Bram Kragten
2effbb6604 Update frontend to 20201021.3 (#42486) 2020-10-27 22:25:54 +00:00
Erik Montnemery
ba6acc286c Bump hatasmota to 0.0.24 (#42472) 2020-10-27 22:25:53 +00:00
Paulus Schoutsen
45c1c2acac Fix initial state of pi4ioe (#42459) 2020-10-27 22:25:53 +00:00
Quentame
1962a7c7ce Fix DSM Surveillance Station when only home mode is enabled (#42456) 2020-10-27 22:25:51 +00:00
Pascal Vizeli
8da732a89d Fix hassio-version (#42449) 2020-10-27 22:25:51 +00:00
João Gabriel
2697056ba9 Add device info default values to Panasonic Viera (#42441) 2020-10-27 22:25:50 +00:00
rajlaud
91e8593fb6 Improve Squeezebox media browser performance (#42439)
* Bump pysqueezebox version to better handle large libraries for media browser

* Merge changes into requirements
2020-10-27 22:25:49 +00:00
Aaron Bach
9fa97473cb Bump simplisafe-python to 9.6.0 (#42437) 2020-10-27 22:25:48 +00:00
Jason Hunter
29e7aa753c Remove title string from Xbox translations (#42431) 2020-10-27 22:25:47 +00:00
Tsvi Mostovicz
af31aa7995 Fix DLNA DMR media receiver when using Python 3.9 (#42430) 2020-10-27 22:25:47 +00:00
Robert Svensson
e3d29429d3 Make sure to clean up httpx session on failed connection to Axis device (#42428) 2020-10-27 22:25:46 +00:00
Angelo Gagliano
93e71ef218 Add retry for unavailable static tplink devices after HA starts (#42247) 2020-10-27 22:25:45 +00:00
Erik Montnemery
8800b83283 Fix race in Tasmota discovery (#42492) 2020-10-27 23:24:54 +01:00
Paulus Schoutsen
d4efa938dd Improve mqtt test (#42490) 2020-10-27 23:22:59 +01:00
Erik Montnemery
f0b676607d Bump hatasmota to 0.0.24 (#42472) 2020-10-27 23:01:13 +01:00
Bram Kragten
5cf7d8395d Update frontend to 20201021.3 (#42486) 2020-10-27 23:00:39 +01:00
Paulus Schoutsen
e797c28b4a Bump cryptography to 3.2 (#42489) 2020-10-27 22:59:49 +01:00
Paulus Schoutsen
711b7d4605 Make result wrappers more robust (#42488) 2020-10-27 22:51:58 +01:00
Adam Cooper
4bf8850131 Add color_extractor service (#42129)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-27 22:22:09 +01:00
J. Nick Koston
5ca4b4cd0f Set the translations cache under the lock (#42470) 2020-10-27 22:02:38 +01:00
Greg Dowling
30a3fe69bc Add platform services to Roon media player to allow grouping, ungrouping and transfer between players (#42133) 2020-10-27 21:50:20 +01:00
springstan
e8ec9b5b40 Use common strings in openuv config flow (#42480) 2020-10-27 13:04:01 -06:00
Simone Chemelli
6a67d29a28 Bump fritzconnection from 1.2.0 to 1.3.4 (#40508)
* Bump fritzconnection from 1.2.0 to 1.3.4

* Updated requirements

* Update other integrations
2020-10-27 16:34:08 +01:00
Allen Porter
8caa177ba1 Add Nest cam support for the SDM API (#42325)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-27 15:20:01 +01:00
Paulus Schoutsen
b6df411115 Fix initial state of pi4ioe (#42459) 2020-10-27 15:08:56 +01:00
Tsvi Mostovicz
bbbe64f1aa Fix DLNA DMR media receiver when using Python 3.9 (#42430) 2020-10-27 14:56:45 +01:00
Quentame
6776b1ddd7 Fix DSM Surveillance Station when only home mode is enabled (#42456) 2020-10-27 14:50:20 +01:00
Xiaonan Shen
f23fcfcd9b Fix yeelight connection issue (#40251)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-27 14:47:11 +01:00
epenet
08342a1e05 Move onewire entity classes to separate module (#42445) 2020-10-27 14:34:25 +01:00
Paulus Schoutsen
b2598d2241 Use async functions for Somfy (#42448) 2020-10-27 14:08:32 +01:00
Pascal Vizeli
f91cd25e57 Fix hassio-version (#42449) 2020-10-27 11:04:11 +01:00
Angelo Gagliano
34283ac283 Add retry for unavailable static tplink devices after HA starts (#42247) 2020-10-27 10:02:16 +01:00
João Gabriel
b45ac5159d Add device info default values to Panasonic Viera (#42441) 2020-10-27 09:03:07 +01:00
J. Nick Koston
df25feab37 Convert somfy to use DataUpdateCoordinator (#42434) 2020-10-26 23:42:12 -05:00
epenet
f3a15eab6e Discover onewire devices at startup (#42410) 2020-10-26 23:36:51 -05:00
springstan
5f3384fc8a Add elevation to base strings for config flows (#42377) 2020-10-26 23:30:20 -05:00
springstan
caa378d7aa Add mode to base strings for config flows (#42373) 2020-10-26 23:29:49 -05:00
rajlaud
67269659f7 Improve Squeezebox media browser performance (#42439)
* Bump pysqueezebox version to better handle large libraries for media browser

* Merge changes into requirements
2020-10-26 23:12:03 -05:00
J. Nick Koston
9e3d9af8e9 Set device class for lutron_caseta cover (#42436)
Since only shades are supported by the current code
always set to DEVICE_CLASS_SHADE
2020-10-26 20:43:04 -05:00
HomeAssistant Azure
f4cebfbb7e [ci skip] Translation update 2020-10-27 00:06:28 +00:00
Aaron Bach
02f86f01bc Bump simplisafe-python to 9.6.0 (#42437) 2020-10-26 17:26:03 -06:00
J. Nick Koston
325b66c41c Restore somfy state in optimistic mode on restart (#42426) 2020-10-26 17:15:39 -05:00
Robert Svensson
f0e11f713e Make sure to clean up httpx session on failed connection to Axis device (#42428) 2020-10-26 22:12:21 +01:00
Jason Hunter
6f2b0c756a Remove title string from Xbox translations (#42431) 2020-10-26 22:10:30 +01:00
Paulus Schoutsen
2893972c69 Bumped version to 0.117.0b5 2020-10-26 19:30:18 +00:00
Franck Nijhof
13b8bc6290 Add missing config flow translation key for Nest (#42423) 2020-10-26 19:29:44 +00:00
Franck Nijhof
ba655c5451 Add missing config flow translation key for Nest (#42423) 2020-10-26 20:29:20 +01:00
Franck Nijhof
326d36d303 Skip template result parsing in several places (#42408)
* Skip template result parsing in several places

* Adjust alert integration

* Adjust Alexa integration

* Adjust apns integration

* Adjust arest integration

* Adjust dialogflow integration

* Adjust generic camera integration

* Adjust imap email content  integration

* Adjust InfluxDB integration

* Adjust intent integration

* Adjust logbook integration

* Adjust HP ILO integration

* Adjust manual alarm control panel integration

* Adjust manual mqtt alarm control panel integration

* Adjust minio integration

* Adjust mqtt integration

* Adjust notify integration

* Adjust persistent notification integration

* Adjust rest integration

* Adjust rss feed template integration

* Adjust slack integration

* Adjust Xiaomi integration

* Adjust TCP integration

* Adjust Telegram Bot integration

* Bump CI cache version

* Revert "Bump CI cache version"

This reverts commit 875efe58cf.

* Adjust demo tests
2020-10-26 19:28:21 +00:00
Paulus Schoutsen
287b33eef3 Do not set up DSM when setting up Nest legacy (#42406) 2020-10-26 19:28:20 +00:00
Paulus Schoutsen
3ec83dc29e Catch ValueError in google_translate (#42405) 2020-10-26 19:28:20 +00:00
Franck Nijhof
f716b7714b Allow skip parsing template result (#42401) 2020-10-26 19:28:19 +00:00
Paulus Schoutsen
b7c958719e Fix MQTT publish from a script with templates (#42398) 2020-10-26 19:28:18 +00:00
Paulus Schoutsen
934ac73ae5 Fix CI (#42397) 2020-10-26 19:28:17 +00:00
Tsvi Mostovicz
bcd2ae78a0 Bump libhdate depndency (#42396)
* Bump libhdate depndency

This version fixes an important bug found by @amitfin in py-libhdate/py-libhdate#78

* Update reqs

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-10-26 19:28:17 +00:00
Erik Montnemery
c00ab762d3 Bump hatasmota to 0.0.23 (#42394) 2020-10-26 19:28:16 +00:00
Paulus Schoutsen
1fb18580b2 Store original result on template results (#42391)
* Store original result on template results

* Fix shell command test
2020-10-26 19:28:15 +00:00
Maksym D
9c6351c1b3 Change AfterShip polling interval from 5m to 15m (#42360)
This change will prevent reaching API requests limit of AfterShip free-tier account.
2020-10-26 19:28:14 +00:00
Franck Nijhof
0e98bc5ea2 Skip template result parsing in several places (#42408)
* Skip template result parsing in several places

* Adjust alert integration

* Adjust Alexa integration

* Adjust apns integration

* Adjust arest integration

* Adjust dialogflow integration

* Adjust generic camera integration

* Adjust imap email content  integration

* Adjust InfluxDB integration

* Adjust intent integration

* Adjust logbook integration

* Adjust HP ILO integration

* Adjust manual alarm control panel integration

* Adjust manual mqtt alarm control panel integration

* Adjust minio integration

* Adjust mqtt integration

* Adjust notify integration

* Adjust persistent notification integration

* Adjust rest integration

* Adjust rss feed template integration

* Adjust slack integration

* Adjust Xiaomi integration

* Adjust TCP integration

* Adjust Telegram Bot integration

* Bump CI cache version

* Revert "Bump CI cache version"

This reverts commit 875efe58cf.

* Adjust demo tests
2020-10-26 19:29:10 +01:00
Paulus Schoutsen
6380ebd1eb Fix MQTT publish from a script with templates (#42398) 2020-10-26 16:46:26 +01:00
Paulus Schoutsen
810ef349c3 Do not set up DSM when setting up Nest legacy (#42406) 2020-10-26 16:40:43 +01:00
Paulus Schoutsen
a12a8350ce Catch ValueError in google_translate (#42405) 2020-10-26 16:38:48 +01:00
epenet
0de52c173c Implement PlatformNotReady on onewire integration (#42395) 2020-10-26 16:33:13 +01:00
J. Nick Koston
935c2df7cb Add a test for template entities that reuse the template (#42404) 2020-10-26 16:08:57 +01:00
Franck Nijhof
45aba9bdf2 Allow skip parsing template result (#42401) 2020-10-26 16:01:09 +01:00
Tsvi Mostovicz
80e8068b46 Bump libhdate depndency (#42396)
* Bump libhdate depndency

This version fixes an important bug found by @amitfin in py-libhdate/py-libhdate#78

* Update reqs

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-10-26 15:26:21 +01:00
Elena Rogleva
41f917fede Rewrite pilight/test_init.py tests to pytest style test functions (#42366) 2020-10-26 15:26:08 +01:00
Franck Nijhof
a82c1e9506 Upgrade debugpy to 1.0.0 (#40929) 2020-10-26 14:59:49 +01:00
Franck Nijhof
55a4aba9ae Deprecate ptvsd integration (#42351) 2020-10-26 14:59:31 +01:00
Erik Montnemery
029963dfc2 Bump hatasmota to 0.0.23 (#42394) 2020-10-26 14:58:36 +01:00
Paulus Schoutsen
bba770b411 Fix CI (#42397) 2020-10-26 13:36:03 +01:00
Paulus Schoutsen
e552c9ba96 Store original result on template results (#42391)
* Store original result on template results

* Fix shell command test
2020-10-26 11:30:58 +01:00
Glenn Waters
6645cb2637 Cleanup log style and tests for ElkM1 (#42353) 2020-10-26 10:36:28 +01:00
taiyeoguns
8f74a0c2e6 Convert logbook tests to pytest (#42289) 2020-10-26 09:18:02 +01:00
Olen
0cf9a1621a Create __init__.py in AlarmDecoder tests (#42388)
__init__.py was missing
2020-10-26 09:17:15 +01:00
Emily Mills
00df7539cf Use string-lights icon for zerproc (#42379) 2020-10-26 09:04:58 +01:00
Maksym D
92b06ed5d4 Change AfterShip polling interval from 5m to 15m (#42360)
This change will prevent reaching API requests limit of AfterShip free-tier account.
2020-10-26 08:38:37 +01:00
HomeAssistant Azure
c2a9f2ae52 [ci skip] Translation update 2020-10-26 00:03:36 +00:00
Paulus Schoutsen
4eacf3f6c0 Bumped version to 0.117.0b4 2020-10-25 22:54:50 +00:00
J. Nick Koston
35d2badb24 Ensure config entry platforms are excluded from reload (#42367) 2020-10-25 22:54:40 +00:00
Andre Lengwenus
331d5ba7ef Fix parameter issue in LCN cover close/stop (#42342) 2020-10-25 22:54:40 +00:00
mezz64
a2c157b5e9 Bump pyhik to 0.2.8 (#42322) 2020-10-25 22:54:39 +00:00
Jörg Thalheim
883fb8c168 Fix iCloud matching accounts (#42303)
`name` is no longer defined but `username`.
Fixes #38393
2020-10-25 22:54:38 +00:00
airthusiast
2e7ce63cbc Fix for Fibaro HC3 support, climate temp sensor and target temp (#42300) 2020-10-25 22:54:38 +00:00
Franck Nijhof
b925ae39cb Upgrade spotipy to 2.16.1 (#42293) 2020-10-25 22:54:37 +00:00
Erik Montnemery
5c608eb1bc Fix reconfiguring of Tasmota lights (#42288) 2020-10-25 22:54:36 +00:00
Erik Montnemery
3032f9280c Fix Tasmota CT light (#42287) 2020-10-25 22:54:35 +00:00
uvjustin
00284a87d0 Fix AVError and allow more missing DTS packets in stream (#42277)
* Fix AVError and allow more missing DTS in stream init

* Avoid recreating container demux iterator

* Relax missing dts requirement

* Fix spelling error

* Fix error message count

* Add timeout to av.open read

* Increase STREAM_TIMEOUT to 30
2020-10-25 22:54:35 +00:00
Alan Tse
21917e86c9 Fix Tesla attribute refreshing (#42257)
* Fix Tesla attribute refreshing

* Remove extraneous copy
2020-10-25 22:54:34 +00:00
Allen Porter
b6994689b1 Update nest integration with fixes from initial PR (#42250) 2020-10-25 22:54:33 +00:00
Teemu R
0c1c7d797c Only log xiaomi_miio update exceptions once (#41226)
* xiaomi_miio: only log update exceptions once

Replaces #37695

* add som more missed exception logger cases + do not change the control flow as pointed out by @cgtobi

* Use patch&MagickMock from tests.async_mock

* Fix linting for alarm_control_panel

* update the test to verify that the warning on update is only logged when the device was previously available
2020-10-25 22:54:33 +00:00
J. Nick Koston
ce2c388c09 Ensure config entry platforms are excluded from reload (#42367) 2020-10-25 23:53:31 +01:00
springstan
fe62543a25 Add location to base strings for config flows (#42374) 2020-10-25 23:41:26 +01:00
springstan
cbf6086c30 Use common strings in luftdaten config flow (#42376) 2020-10-25 23:40:12 +01:00
wouterbaake
e6400fc11b Use common strings in opentherm_gw config flow (#42211)
* Use common strings in opentherm_gw config flow

* Combine TimeourError and SerialException handling

* Fixed test_form_connection_error

* And then fix the flake8 error...

* Change "timeout" to "cannot_connect" msg
2020-10-25 22:01:05 +01:00
Paulus Schoutsen
de12ac354a Expose more Websocket API constants (#42263) 2020-10-25 21:10:13 +01:00
epenet
c157a582b8 Add device_info to onewire sensors (#42309)
* Add device info

* Cleanup log
2020-10-25 18:05:02 +01:00
SukramJ
9a970cfe3d Remove split devices from HMIPC (#42348) 2020-10-25 11:03:41 -05:00
Maikel Punie
396f75b4c3 Bump python velbus to 2.0.47 (#42349) 2020-10-25 15:41:32 +01:00
Brett T. Warden
ab5e34a49f Fix error strings for PTZ operations (#42231)
PTZ error strings for unsupported move operations were copied/pasted
from ContinuousMove. Fix the strings for AbsoluteMove and RelativeMove.
2020-10-25 14:52:32 +01:00
J. Nick Koston
221bb5ad52 Upgrade to aiohttp 3.7.1 (#42305) 2020-10-25 14:44:39 +01:00
Andre Lengwenus
99e2d13668 Fix parameter issue in LCN cover close/stop (#42342) 2020-10-25 13:44:39 +01:00
mezz64
bf4cc364e9 Bump pyhik to 0.2.8 (#42322) 2020-10-25 13:32:41 +01:00
J. Nick Koston
3f18cdc75e Refactor august to use self.async_on_remove (#42333) 2020-10-25 07:27:51 -05:00
J. Nick Koston
6822190772 Fix unmocked https in the test suite (#42316) 2020-10-25 07:16:23 -05:00
airthusiast
3846639744 Fix for Fibaro HC3 support, climate temp sensor and target temp (#42300) 2020-10-25 13:06:45 +01:00
Alex Popoutsis
64b1ccd8f6 Add WLED preset service (#42217)
Co-authored-by: djtimca <60706061+djtimca@users.noreply.github.com>
2020-10-25 12:44:26 +01:00
mezz64
dc37368440 Bump pyeight to 0.1.5 (#42323) 2020-10-25 12:37:49 +01:00
ChristianKuehnel
9509e33a32 Remove ChristianKuehnel from codeowners (#42335) 2020-10-25 11:36:09 +01:00
Glenn Waters
cc77621477 Clean up ElkM1 lib (#42319) 2020-10-24 23:46:22 -05:00
uvjustin
f8d87bff16 Fix AVError and allow more missing DTS packets in stream (#42277)
* Fix AVError and allow more missing DTS in stream init

* Avoid recreating container demux iterator

* Relax missing dts requirement

* Fix spelling error

* Fix error message count

* Add timeout to av.open read

* Increase STREAM_TIMEOUT to 30
2020-10-24 22:55:12 -04:00
walthowd
09bd449698 Send pro-active IAS Enroll Response (#42282)
* Send pro-active IAS Enroll Response 

Some zigbee devices require a pro-active IAS enroll response to be sent before they will send their IAS enroll request.  This PR sends a single IAS enroll response after CIE write and fixes some of these devices including the Ecolink 4655BC0-R and many others. 

This also more closely aligns with the default behavior of Smartthings and zigbee2mqtt which also send pro-active enroll requests:

b217b91bb7 (diff-6d00af5fc389c40b8c4dfc390d80e3eca3946d331dff84afdc1632cb5568bca2)

Thanks to @puddly for helping figure this all out and @tubalainen for testing.

* flake8 fixes

* flake8 again
2020-10-24 21:41:27 -04:00
HomeAssistant Azure
12a9504203 [ci skip] Translation update 2020-10-25 00:03:36 +00:00
Teemu R
bdb71c9159 Only log xiaomi_miio update exceptions once (#41226)
* xiaomi_miio: only log update exceptions once

Replaces #37695

* add som more missed exception logger cases + do not change the control flow as pointed out by @cgtobi

* Use patch&MagickMock from tests.async_mock

* Fix linting for alarm_control_panel

* update the test to verify that the warning on update is only logged when the device was previously available
2020-10-25 01:53:36 +02:00
Jörg Thalheim
51915c86cb Fix iCloud matching accounts (#42303)
`name` is no longer defined but `username`.
Fixes #38393
2020-10-25 01:07:17 +02:00
J. Nick Koston
c1a7896a40 Minimize sense writes to the state machine (#42310)
Sense was generating hundred state updates when most
of the time the state was not changing
2020-10-24 23:35:21 +02:00
Allen Porter
5e9de88f4b Fix nest to stop doing asyncio in a property (#42312)
This upgrades to the latest vesion of python-google-nest-sdm that
had bug fixes to stop doing asyncio in a property.
2020-10-24 23:33:52 +02:00
epenet
5db1474099 Add device_class information to onewire sensors (#42308) 2020-10-24 14:45:01 -05:00
cgtobi
d13402108b Add unit of measurement to Netatmo sensors (#42208)
* Add unit of measurement

* Update homeassistant/components/netatmo/sensor.py

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

* Update sensor.py

* Update sensor.py

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2020-10-24 14:43:54 -05:00
Robert Svensson
e06c8009e1 Add area id to entity registry (#42221)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-24 21:25:28 +02:00
Alan Tse
b54dde10ca Fix Tesla attribute refreshing (#42257)
* Fix Tesla attribute refreshing

* Remove extraneous copy
2020-10-24 21:13:40 +02:00
epenet
2787a52ef7 Add onewire test for more devices (#42037)
* Add tests for device families 12 and 26

* Update patch import to tests.async_mock
2020-10-24 13:56:41 -05:00
Allen Porter
0c852b5f81 Update nest integration with fixes from initial PR (#42250) 2020-10-24 20:48:28 +02:00
Franck Nijhof
7a6d82d997 Upgrade spotipy to 2.16.1 (#42293) 2020-10-24 18:19:57 +02:00
Paulus Schoutsen
1c36bf5e19 Fix block till done in create entry config flow tests (#42290) 2020-10-24 16:20:56 +02:00
Erik Montnemery
bfb603fe78 Fix reconfiguring of Tasmota lights (#42288) 2020-10-24 14:31:08 +02:00
Erik Montnemery
15f46392d2 Fix Tasmota CT light (#42287) 2020-10-24 14:29:26 +02:00
Ville Skyttä
2b10128631 Bump dist to focal in Travis CI (#42286)
No need for external multimedia repos with it; they have some
dependency issues for bionic at the moment.
2020-10-24 13:23:53 +02:00
Rob Bierbooms
79fac17c28 Add unique_id and device_info to DSMR entities (#42279)
* Add unique ids and device info

* Fix tests

* Add tests

* Apply suggestions from code review

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

* Fix black

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2020-10-24 06:22:23 -05:00
SukramJ
6efb782871 Add wired devices to Homematic IP Cloud (#41232)
* Add wired devices to HomematicIP Cloud

* Add test to check device registry

* Add comments

* Update comment
2020-10-23 21:14:54 -05:00
Sebastian Muszynski
ea0e359d90 Bump PyXiaomiGateway version to 0.13.4 (#42262) 2020-10-23 21:07:45 -05:00
epenet
6ef53a2c5d Add config flow for One wire (#39321)
* Add support for config_flow
Add support for switches
Add support for binary sensors

* Add config flow strings

* Update .coveragerc

* black-formatting

* fixes for isort and flake

* fixes for pylint

* fixes for isort

* fixes for isort

* fixes for config_flow

* Add devices to Device Registry

* Updated comments

* fixes for flake8

* Updated comments

* Updated comments

* Implement async_unload_entry

* remove binary_sensor and switch implementation (will move to new PR)

* Update .coveragerc

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

* Update .coveragerc

* Review config flow to store the configuration type

* Add config_flow tests

* Move CONF_NAMES to constants

* Fix isort

* Tweak to onewire logger

* Tweak to onewire logger for sensor

* Reset _LOGGER variable

* Normalise header

* Normalise header

* Update to use references in config flow translations

* Improve test coverage

* fixes for isort

* Update async_unload_entry

* Update common strings

* Update imports

* Move connect attempt to executor

* Update common strings

* Remove OWFS from config_flow

* Prevent duplicate config entries

* Fix isort

* Fix flake8

* Fix tests following removal of OWFS implementation

* Fix flake8

* Adjust config from yaml to config-flow, and add ability to specify sysbus directory

* Ajust unique_id for config entries

* Fix test_config_flow

* Fix invalid merge

* Convert yaml to config_entry

* Update sysbus tests

* Tweaks to yaml import process, and add OWFS warning

* Enable migration of OWFS platform config to config_entry

* update the existing corresponding config entry on OWFS conversion

* Remove CONFIG_SCHEMA

* Move data_schema to constants

* Remove log message

* Remove duplicate warning

* Update already_configured to use already_configured_device constant

* Schedule get_entities on the executor

* Update duplicate entry check for OWServer

* Review TryCatch

* Schedule os.path.isdir on the executor

* rename owhost/owport

* Update checks for empty

* Fix incorrect patch

* Move config_flow validation methods to new OneWireHub

* Fix typo and pre-commit

* Cleanup try/else

* patch async_setup/async_setup_entry

* cleanup implicit exit point

* Fix invalid patch

* cleanup implicit exit point

* cleanup implicit exit point

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2020-10-23 20:57:16 -05:00
HomeAssistant Azure
ed232ac733 [ci skip] Translation update 2020-10-24 00:05:17 +00:00
Schachar Levin
af048715f0 Add next alarm time sensor to Garmin (#40420)
* Add sensor for garmin next alarm(s)

* code-review changes

* type fix

* linter fix

* review fixes
2020-10-23 23:01:29 +02:00
Greg Dowling
e997e3a2eb Tidy Roon media_browser following recently merged PR (#42276)
* Tidy media_browser details.

* Apply suggestions from code review

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-23 20:33:30 +02:00
J. Nick Koston
4bf9ce6fca Add support for homekit garage obstruction sensors (#42243) 2020-10-23 12:18:02 -05:00
Paulus Schoutsen
9c60195780 Bumped version to 0.117.0b3 2020-10-23 15:45:06 +00:00
J. Nick Koston
d8fea1c582 Ensure event listener integrations do the queue insert as a callback (#42265) 2020-10-23 15:44:56 +00:00
Erik Montnemery
84ab40c57d Fix Tasmota relay acting as on/off light (#42259) 2020-10-23 15:44:56 +00:00
Alan Tse
aace9dce38 Fix is_on test for Tesla Charger switch (#42251)
closes #41755
2020-10-23 15:44:55 +00:00
TheJulianJES
f6f95d0422 Fix polling of color for ZHA lights not updating (#42248) 2020-10-23 15:44:54 +00:00
BrianWithAHat
e0466d4ac8 Fix MaryTTS filename extensions (#42228)
Co-authored-by: Brian Laferriere <BrianWithAHat@users.noreply.github.com>
2020-10-23 15:44:53 +00:00
Erik Montnemery
88231aa541 Fix Tasmota relay acting as on/off light (#42259) 2020-10-23 17:40:43 +02:00
J. Nick Koston
5bba299e8f Ensure event listener integrations do the queue insert as a callback (#42265) 2020-10-23 17:38:46 +02:00
Paulus Schoutsen
5dac3883b0 Stub light profiles (#42232) 2020-10-23 16:28:21 +02:00
Erik Montnemery
b626df1316 Improve cast integration tests (#42229)
* Improve cast tests

* Address review comments

* Further cleanup of tests
2020-10-23 16:16:55 +02:00
TheJulianJES
7618fe6111 Fix polling of color for ZHA lights not updating (#42248) 2020-10-23 09:14:37 -04:00
Willem-Jan
1340abb2fe Bump version bsblan library to 0.4.0 (#42220) 2020-10-23 14:32:47 +02:00
Alan Tse
20c43df768 Fix is_on test for Tesla Charger switch (#42251)
closes #41755
2020-10-23 13:17:10 +02:00
Tim Werner
3f623ad453 Rewrite group unittest to pytest style (#42159) 2020-10-23 12:05:07 +02:00
BrianWithAHat
3fa97f5fc0 Fix MaryTTS filename extensions (#42228)
Co-authored-by: Brian Laferriere <BrianWithAHat@users.noreply.github.com>
2020-10-23 09:25:55 +02:00
Aaron Bach
536f1186b0 Remove remnants of configurable RainMachine scan interval (#42239)
* Remove remnants of configurable RainMachine scan interval

* Clean up tests

* Cleanup
2020-10-22 21:32:04 -05:00
HomeAssistant Azure
6e53aa1155 [ci skip] Translation update 2020-10-23 00:03:04 +00:00
Paulus Schoutsen
8e4a325fdb Bumped version to 0.117.0b2 2020-10-22 23:33:34 +00:00
Alexei Chetroi
868b14f151 Update ZHA dependencies (#42245) 2020-10-22 23:33:22 +00:00
Bram Kragten
e660577e43 Update frontend to 20201021.2 (#42242) 2020-10-22 23:33:21 +00:00
J. Nick Koston
69cace1d41 Ensure websocket event serializer cache is effective if subscription iden differs (#42226)
Since someone websocket subscriptions will use an iden of 2 for
state_changed event (most comment), and some will use another
number for all events, the cache would not be used because the
iden number was different.  We now cache only the event and
use a fast replace to insert the iden number into the serailized
response.
2020-10-22 23:33:20 +00:00
Anders Melchiorsen
4f908bc58c Refresh now() templates on second=0 (#42225) 2020-10-22 23:33:20 +00:00
rikroe
d00ca7bf03 Bump bimmer-connected to 0.7.8 to fix login issue (#42215)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2020-10-22 23:33:19 +00:00
Tom Harris
65eb5ea55f Fix issue in python > 3.8.2 (#42213) 2020-10-22 23:33:18 +00:00
Niccolo Zapponi
3586e0c5e4 Fix bug for SimpliSafe 2 systems repeatedly saying "your settings have been synchronised" (#42197)
* Fix bug for SimpliSafe 2 systems

* Improved loop and logging for SimpliSafe 2
2020-10-22 23:33:18 +00:00
Raman Gupta
e0621d2e5f Set Vizio unique ID for discovery flow early and abort if configured to prevent duplicate discovery flows (#42194) 2020-10-22 23:33:17 +00:00
Erik Montnemery
1fb1bb0c08 Support reloading Tasmota config entries (#42097) 2020-10-22 23:33:16 +00:00
cgtobi
6c5e2af379 Add Netatmo sensor enable default (#41928) 2020-10-22 23:33:15 +00:00
Guido Schmitz
fcbe90cb80 Fix precision of climate devices in devolo Home Control (#41832) 2020-10-22 23:33:15 +00:00
Alexei Chetroi
0ab7bc7e75 Update ZHA dependencies (#42245) 2020-10-23 01:30:32 +02:00
J. Nick Koston
4a3b40a3ef Ensure websocket event serializer cache is effective if subscription iden differs (#42226)
Since someone websocket subscriptions will use an iden of 2 for
state_changed event (most comment), and some will use another
number for all events, the cache would not be used because the
iden number was different.  We now cache only the event and
use a fast replace to insert the iden number into the serailized
response.
2020-10-23 01:28:22 +02:00
Erik Montnemery
de35d58fd4 Support reloading Tasmota config entries (#42097) 2020-10-23 01:22:51 +02:00
Bram Kragten
3661035397 Update frontend to 20201021.2 (#42242) 2020-10-23 01:17:47 +02:00
Anders Melchiorsen
cb0c937b3e Refresh now() templates on second=0 (#42225) 2020-10-23 00:11:02 +02:00
rikroe
4e917cf62c Bump bimmer-connected to 0.7.8 to fix login issue (#42215)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2020-10-22 22:30:21 +02:00
Tom Harris
c07b146e58 Fix issue in python > 3.8.2 (#42213) 2020-10-22 22:04:06 +02:00
tkdrob
d1c8485297 Correct docstring in Skybell (#42218) 2020-10-22 14:38:15 -05:00
Niccolo Zapponi
93841e3e0c Fix bug for SimpliSafe 2 systems repeatedly saying "your settings have been synchronised" (#42197)
* Fix bug for SimpliSafe 2 systems

* Improved loop and logging for SimpliSafe 2
2020-10-22 10:01:10 -06:00
Erik Montnemery
57cd3058d9 Always use shared zeroconf in cast config flow (#42210) 2020-10-22 17:47:19 +02:00
Guido Schmitz
13b2d10194 Handle multiple setups of devolo Home Control (#41752) 2020-10-22 15:01:44 +02:00
Andre Lengwenus
22db1a509d Bump pypck to v0.7.4 (#42206) 2020-10-22 15:00:37 +02:00
Tim Werner
fcc895f294 Rewrite mochad unittest to pytest style (#42164) 2020-10-22 14:58:54 +02:00
Greg Dowling
9a54c31c34 Add media browser support to roon media player (#42061) 2020-10-22 14:54:55 +02:00
Paulus Schoutsen
e7b6903ef4 Improve the readability of the config flow code (#42169) 2020-10-22 13:00:55 +02:00
Franck Nijhof
05a65bb612 Upgrade shodan to 1.24.0 (#42199) 2020-10-22 11:21:15 +02:00
taiyeoguns
8bb7febbc5 Convert nx584 tests to pytest (#42094)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-22 10:36:31 +02:00
Erik Montnemery
6194c382cb Bump PAHO MQTT to 1.5.1 (#42099) 2020-10-22 10:08:19 +02:00
Guido Schmitz
c211275091 Fix precision of climate devices in devolo Home Control (#41832) 2020-10-22 10:06:16 +02:00
CurrentThread
9b145a78d9 Remove not used legacy remote test helpers (#42144) 2020-10-22 10:02:04 +02:00
cgtobi
c052c261d5 Add Netatmo sensor enable default (#41928) 2020-10-22 10:01:43 +02:00
Julian Engelhardt
5230ff6640 Rest test style (#42032) 2020-10-22 10:00:48 +02:00
jaydesl
f92ebde75a Add more builtins to safe list (python_script) (#42146) 2020-10-22 09:59:49 +02:00
uvjustin
1c58a0fedc Version bump pyforked daapd and add error string for forbidden (#42156) 2020-10-22 09:57:40 +02:00
Robert Svensson
e54f4aa9ed Improve Axis tests (#42183) 2020-10-22 09:29:53 +02:00
HomeAssistant Azure
3eece977f8 [ci skip] Translation update 2020-10-22 09:21:20 +02:00
Raman Gupta
148a7ff50c Set Vizio unique ID for discovery flow early and abort if configured to prevent duplicate discovery flows (#42194) 2020-10-22 09:20:17 +02:00
HomeAssistant Azure
b102ad731f [ci skip] Translation update 2020-10-22 00:09:52 +00:00
Bram Kragten
f1de6bf6b4 Bumped version to 0.117.0b1 2020-10-22 00:24:25 +02:00
Aaron Bach
a8342d9395 Bump simplisafe-python to 9.5.1 (#42179) 2020-10-22 00:22:21 +02:00
J. Nick Koston
66453429b0 Avoid overloading the executor with service.yaml loads (#42172) 2020-10-22 00:22:19 +02:00
uvjustin
a83a5a2603 Remove duplicated finalize_stream code in stream (#42171) 2020-10-22 00:22:19 +02:00
Bram Kragten
bfd943c5dc Updated frontend to 20201021.1 (#42185) 2020-10-22 00:20:31 +02:00
Aaron Bach
1ea103f090 Remove coordinator success from SimpliSafe availability calculation (#42180) 2020-10-22 00:20:30 +02:00
Bram Kragten
98697a504f Updated frontend to 20201021.1 (#42185) 2020-10-22 00:17:13 +02:00
Ronan Murray
dab5e5ebc9 Rewrite london_air tests in pytest style (#41165) 2020-10-21 23:49:28 +02:00
Diogo Gomes
1f850f6374 Enable co-existence of two IPMA weather entities for the same location (#40354)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-21 23:41:06 +02:00
uvjustin
6a59e79bc6 Remove duplicated finalize_stream code in stream (#42171) 2020-10-21 23:36:54 +02:00
Aaron Bach
8e063e94da Bump simplisafe-python to 9.5.1 (#42179) 2020-10-21 23:35:48 +02:00
Aaron Bach
8bcfe4c859 Remove coordinator success from SimpliSafe availability calculation (#42180) 2020-10-21 23:35:20 +02:00
J. Nick Koston
4a0d18ccd8 Avoid overloading the executor with service.yaml loads (#42172) 2020-10-21 22:24:50 +02:00
Franck Nijhof
43aaf91799 Bump version to 0.118.0dev0 (#42178) 2020-10-21 22:06:18 +02:00
Franck Nijhof
db0cd34b24 Bumped version to 0.117.0b0 2020-10-21 20:57:05 +02:00
Franck Nijhof
813406573b Add counter and timer to default_config (#42174) 2020-10-21 20:53:20 +02:00
Robert Svensson
1a97b0edd9 Fix deCONZ device refresh service (#42175) 2020-10-21 20:35:19 +02:00
Bram Kragten
e7d806c832 Update frontend to 20201021.0 (#42173) 2020-10-21 20:21:22 +02:00
Pascal Vizeli
208ccc6487 Update base image to 2020.10.0 (#42167) 2020-10-21 19:40:06 +02:00
Philip Allgaier
bd1d6f2c0d Add link to log view in persistent notification (#42060) 2020-10-21 12:09:45 -05:00
Robert Svensson
a62db7887b Bump Axis dependency (#42168) 2020-10-21 17:48:57 +02:00
Jason Heddings
1fe5928818 Handle type error in hunterdouglas_powerview (#42137) 2020-10-21 10:37:23 -05:00
Kevin Cathcart
754ba18af0 Add persistent_notification service to the notify platform (#40638)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-21 17:12:36 +02:00
J. Nick Koston
df2ede6522 Fix state overwrite race condition where two platforms request the same entity_id (#42151)
* Fix state overwrite race condition where two platforms request the same entity id

* fix test

* create reservations instead

* revert

* cannot use __slots__ because we patch async_all
2020-10-21 17:01:51 +02:00
Quentame
bb641c23a9 Bump python-synology to 1.0.0 (#42161) 2020-10-21 16:42:07 +02:00
Paulus Schoutsen
5626a379de Guard bad supported features for Google (#42163) 2020-10-21 16:37:42 +02:00
Chris Talkington
d8577a1550 Add config flow for cloudflare (#41167)
* add config flow for cloudflare

* Create const.py

* work on flow.

* remove const.

* lint.

* Apply suggestions from code review

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

* Update config_flows.py

* Update homeassistant/components/cloudflare/strings.json

* Apply suggestions from code review

* Apply suggestions from code review

* Apply suggestions from code review

* Update strings.json

* Apply suggestions from code review

* Update __init__.py

* Update __init__.py

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-10-21 09:09:00 -05:00
Erik Montnemery
e203896638 Align MQTT light's default color temperature (#41842) 2020-10-21 15:46:29 +02:00
On Freund
a07c0d1605 Fallback to mac in Shelly config flow title (#40783) 2020-10-21 15:05:06 +02:00
CurrentThread
c1ebad8c97 Clean up filesize unittest test file in test tear down (#42143) 2020-10-21 13:47:30 +02:00
CurrentThread
bb1b210047 Use async_load_platform in test_discover_notify unittest (#42142) 2020-10-21 13:47:10 +02:00
Franck Nijhof
767c94f9c3 Merge branch 'master' into dev 2020-10-21 13:44:54 +02:00
Maciej Bieniek
f855ff8751 Bump aioshelly library to 0.4.0 (#41905)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-21 13:37:17 +02:00
Olen
abeff01626 Add async_setup_entry to calendar platform (#42075) 2020-10-21 13:20:34 +02:00
Kevin Cathcart
0674ae6205 Fix pico tts errors (#41619)
Enabled the use of mutagen in unit tests.
Added a test for tagging a minimal .wav file.
2020-10-21 11:58:07 +02:00
J.P. Hutchins
c677489535 Handle Fritz exception and log warning (#42145) 2020-10-21 11:02:44 +02:00
Franck Nijhof
5671063ddc Upgrade sentry-sdk to 0.19.1 (#42132) 2020-10-21 11:01:11 +02:00
Dermot Duffy
83e843820b Use the beautiful ambient light icon (#42153) 2020-10-21 11:00:19 +02:00
Paulus Schoutsen
45345ddc05 Improve handling of ignored entries (#42148) 2020-10-21 10:49:09 +02:00
Rob Bierbooms
177bda01e8 Rewrite zwave init tests to pytest style test function (phase 2) (#41431) 2020-10-21 10:19:47 +02:00
Allen Porter
52b66e88c7 Update Nest integration to support Google Nest Device Access (new API) (#41689)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-21 10:17:49 +02:00
Jeff Irion
9bc0509f28 Bump androidtv to 0.0.52 (#42155) 2020-10-21 09:51:13 +02:00
dmonego
1cacca6568 Update mqtt_eventstream tests to pytest style functions (#42119) 2020-10-21 04:07:48 +02:00
HomeAssistant Azure
00847db54f [ci skip] Translation update 2020-10-21 00:06:01 +00:00
cgtobi
70969ecbfb Add attribute for camera light state (#40575) 2020-10-20 21:57:00 +02:00
Brett
582074d1db Improve Advantage Air integration to Platinum quality (#41996)
* Rename to ADVANTAGE_AIR_DOMAIN

* Remove attributes from binary sensor platform

* Handle other motionConfig values

* Restructure

* Unloading

* Fix unloading

* PARALLEL_UPDATES

* Remove pointless check

* Rollup to sensor

* Rollup to switch platform

* @ctalkington suggestion of added __init__ back

* Fix unload test

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

* Fix ENTRY_STATE_NOT_LOADED

* Update test docstring

* Remove obsolete __init__'s

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

* Remove unused __init__ from cover

* Code Quality 🏆 Platinum

* Re-push manifest.json

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2020-10-20 13:30:09 -05:00
J. Nick Koston
023268df38 Update nuheat exception handling (#42127)
* Update nuheat exception handling

* remove unneeded exception handler
2020-10-20 20:22:10 +02:00
Brian Rogers
199464f084 Add rachio service to start multiple zones (#42092) 2020-10-20 13:14:39 -05:00
J. Nick Koston
5a907095e5 Remove logging from state in flume (#42126) 2020-10-20 16:41:06 +02:00
Tim Werner
e5aa5e2c35 rewrite mqtt unittest tests to pytest style (#42122) 2020-10-20 16:35:49 +02:00
Yuval Aboulafia
6c3362217e Add light group icon (#42091) 2020-10-20 13:54:43 +02:00
Rob Bierbooms
be431ce12a Set should_poll property for DSMR integration (#42108) 2020-10-20 12:14:09 +02:00
wouterbaake
1363fbb02a Set force_update property for DSMR integration (#42086) 2020-10-20 09:45:43 +02:00
Robert Svensson
1303d20064 Adapt Axis integration to async HTTPx calls (#42095) 2020-10-20 09:31:04 +02:00
rajlaud
fcdb54d878 Add browse media support to squeezebox integration (#40642)
* Add browse media support to squeezebox integration

* Move browse media logic to browse_media.py

* Fix missing command when loading single url

* Update .coveragerc

* Handle empty library gracefully

* Apply suggestions from code review

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

* Implement suggestions from code review

* Additional suggestion from code review

* Use MEDIA_CLASS_GENRE

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-20 01:17:00 -05:00
Colin Robbins
b3a97c7b42 Bump lightwave to 0.19 (#42033)
* Python 3.9 compatibilty

* Python 3.9 compatibility
2020-10-20 03:03:35 +02:00
HomeAssistant Azure
81296b2b70 [ci skip] Translation update 2020-10-20 00:08:00 +00:00
jjlawren
e6e4c9cf59 Allow Cast to play Plex media (#41869)
* Allow Cast to play Plex media

* Add Plex to after_dependencies, add missing constant

* Extract function from Sonos service to allow media lookups

* Move to non-async method

* Check if media_id exists

* Add test to make codecov happy
2020-10-19 16:34:22 -05:00
dmonego
c8821d930e Move sleepiq tests to pytest style functions (#42018) 2020-10-19 23:31:33 +02:00
CurrentThread
e129ea4db7 Rewrite demo unittest tests to pytest style test functions (#41845) 2020-10-19 23:29:44 +02:00
CurrentThread
7e3aa6ddce Rewrite remote unittest tests to pytest style test functions and remove legacy test helpers (#41715) 2020-10-19 23:28:40 +02:00
Alexander Pitkin
f5f4570a29 Rewrite alert test to pytest (#41102)
* Rewrite alert test to pytest

* Rewrite alert test to pytest. Add mock_notifier fixture
2020-10-19 23:26:40 +02:00
Paulus Schoutsen
b8417a2ce2 Do not allow coroutines to be passed to HassJob (#42073)
Co-authored-by: J. Nick Koston <nick@koston.org>
2020-10-19 23:25:33 +02:00
Erik Montnemery
ec7f329807 Add support for Tasmota status sensor (#41782)
* Add sensor attributes, remove useless test.

* Fix tests

* Rework handling of sensor attributes

* Remove unused sensor attributes

* Hide status sensors

* Bump hatasmota to 0.0.19

* Use DEVICE_CLASS_SIGNAL_STRENGTH for WiFi signal sensor

* Improve test coverage

* Fix tests
2020-10-19 22:07:31 +02:00
ehendrix23
4da6c22338 Update pymyq to 2.0.8 (#42088) 2020-10-19 20:11:21 +02:00
Robert Svensson
de98168211 Axis lib migrates to httpx (#42054)
* Clean up some parameter naming

* Bump lib

* Bump to v39
2020-10-19 20:01:25 +02:00
Rihan9
d01a96d1ce Fix onvif sensor detection and onvif stop service call (#41949)
* Fix stop service call after movement, add new parser for topic: tns1:RuleEngine/MotionRegionDetector/Motion

* Fix PullMessages call and formatting Stop call

* Fix timeout on pullmessages call

* Fix black and flake8 detected issues

* add SetSynchronizationPoint with try/except block
2020-10-19 13:01:34 -04:00
epenet
4459c843ea Deprecate OWFS/FUSE implementation in onewire integration (#42041)
* Add warning

* Fix black

* Combine logging messages

* Combine logging messages
2020-10-19 18:23:43 +02:00
Jeff Irion
5db01ed7cf Bump androidtv to 0.0.51 (add support for Google TV devices) (#42047) 2020-10-19 10:58:56 -05:00
dependabot[bot]
83d01ee857 Bump codecov/codecov-action from v1.0.13 to v1.0.14 (#42070)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from v1.0.13 to v1.0.14.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Commits](https://github.com/codecov/codecov-action/compare/v1.0.13...7d5dfa54903bd909319c580a00535b483d1efcf3)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-19 17:41:58 +02:00
Paulus Schoutsen
440570244d Don't swallow all errors when checking for config validator platform (#42058) 2020-10-19 17:09:57 +02:00
Paulus Schoutsen
8d4675713a Fix event test (#42078) 2020-10-19 16:50:46 +02:00
Ronan Murray
16c402f583 Rewrite nsw_fuel_station tests to pytest style (#41171) 2020-10-19 12:19:39 +02:00
Rob Bierbooms
5e98bdb19c Rewrite openhardwaremonitor tests to pytest style test functions (#41157) 2020-10-19 12:18:34 +02:00
Sebastian Rodriguez
226a6f7584 Rewrite time_date unittest tests to pytest style test functions (#41149) 2020-10-19 12:14:07 +02:00
CurrentThread
6b409dc811 Rewrite filesize unittest tests to pytest style test functions (#41421) 2020-10-19 12:10:53 +02:00
thaohtp
a57d1c1bf0 Rewrite efergy unittest tests to pytest style test functions. (#41769)
Issue: https://github.com/home-assistant/core/issues/40836
2020-10-19 12:09:39 +02:00
Adam Cooper
fe7c8dd80a Migrated coinmarketcap tests to utilise pytests instead of unittests (#42013) 2020-10-19 12:08:55 +02:00
Julian Engelhardt
97b1fffad4 Geo rss test style (#42038) 2020-10-19 11:59:04 +02:00
dvermd
5a533a8c5d Rewrite datadog tests to pytest (#42059) 2020-10-19 11:57:01 +02:00
thaohtp
6f4be7882b Rewrite logentries unittest tests to pytest style test functions (#41852)
* Rewrite logentries unittest tests to pytest style test functions.

Issue: https://github.com/home-assistant/core/issues/40862

* Import mock correctly

* Fix mock import

* Fix failure in formatting.

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-19 11:30:40 +02:00
J. Nick Koston
31c21126a8 Implement time tracking in templates (#41147)
Co-authored-by: Anders Melchiorsen <amelchio@nogoto.net>
2020-10-19 11:02:43 +02:00
Paulus Schoutsen
8949eb2442 Add httpx as a core dep (#42071) 2020-10-19 10:18:47 +02:00
J. Nick Koston
77b95ae8a1 Reduce domain states rate limit to 1 per second (#42004) 2020-10-19 10:18:25 +02:00
J. Nick Koston
3a9b2392f8 Suppress domain and all listeners during template rate limit (#42005) 2020-10-19 10:17:51 +02:00
Cristian Asenjo
344514601d Sort Kodi BrowseMedia children TV Shows and Movies (#41377) 2020-10-19 09:55:17 +02:00
J. Nick Koston
9649525fe6 Increase coverage and optimize history skip_initial_state (#42014)
Avoids a database query when all states have not
changed in the time window when skip_initial_state
is set.
2020-10-19 09:53:47 +02:00
Paulus Schoutsen
388a5d8c91 Add entity ID to time trigger (#41933) 2020-10-19 09:42:00 +02:00
Colin Robbins
6f8e3d2544 Update stream integration for Python 3.9 which removed isAlive from threading in favor of is_alive (#42051)
Python 3.9 compact
2020-10-18 23:42:50 -04:00
Jason Hunter
33f0bf4c4a Do not guess app state in Xbox integration (#42067) 2020-10-18 23:30:44 -04:00
Jason Hunter
5a397312e7 Update ONVIF to Zeep 4.0/httpx (#42020)
* convert to httpx and zeep 4.0

* fix tests

* add onvif-zeep-async to manifest

* pin zeep to fool CI cache

* address review comments
2020-10-18 23:29:53 -04:00
Glenn Waters
304b9f47b4 ElkM1 fix auto-configure. (#42064)
The elkm1-lib autoconfigure set the `configured` flag based on an
attribute of the element being changed. This approach misses counters
and thermostats. It also does not work well well an "unconfigured"
element's default value is different from what is on the panel. This
was the case for zones (the `area` attribute was different).

The fix in the library is to mark an element as `configured` when
the element has a name associated with it. This change is
technically breaking, although I imagine, few if any people will be
affected as (1) they configure names on all elements (2) the
functionality was not working properly, so element would not be missing.

The HA docs will be updated to add a section on autoconfigure. It will
describe that to have an element automatically configured then the
element must be configured on the ElkM1 panel with a name.

This particular patch is required for ElkM1 areas. The existing logic
assumes that an area is configured if it has an associated keypad. Not
all areas have keypads (I have an area only armable with HA). The
library fix should catch all configured areas.
2020-10-18 19:48:20 -05:00
HomeAssistant Azure
59a3add24a [ci skip] Translation update 2020-10-19 00:03:28 +00:00
J. Nick Koston
c86dfeb6e2 Remove double timeout from gogogate2 (#42052) 2020-10-18 15:46:13 -05:00
Paulus Schoutsen
6ab9b7355f Add tests for singleton decorator (#42055) 2020-10-18 22:41:22 +02:00
Eugene Prystupa
6366872119 Add support for Bond fireplaces with integrated lights (#41255) 2020-10-18 14:11:24 -05:00
Guido Schmitz
e5eae22ad8 Disable less popular entities in devolo Home Control (#41945) 2020-10-18 14:07:24 -05:00
Bas Nijholt
2604bf59ad Set keyword arguments in DemoLight (#42040)
I noticed that the signature was very hard to read when working on https://github.com/home-assistant/core/pull/40626.
2020-10-18 13:57:35 -05:00
scheric
22b360a10e Use common strings in ambiclimate config flow (#41772)
* already_configured_account->already_configured

* add authenticated string

* oauth2_missing_...->missing_configuration
2020-10-18 20:55:32 +02:00
Ronaldo Lima
d6d17aa295 Replace invalid credentials with common string invalid_auth (#41997)
* add GeoNet NZ Volcano to home-assistant#40578

* move invalid_credentials

* revert geonet nz volkano

* change invalid_credentials to invalid_auth

* change translation keys
2020-10-18 13:55:01 -05:00
scheric
24cfca812e Use common strings in sharkiq config flow (#41773)
* already_configured_account->already_configured

* remove already_configured_account

* already_configured_account->already_configured
2020-10-18 20:50:58 +02:00
J. Nick Koston
8c27a99386 Convert nuheat to use DataUpdateCoordinator (#42034)
* Convert nuheat to use DataUpdateCoordinator

* coverage

* Update homeassistant/components/nuheat/climate.py
2020-10-18 13:45:47 -05:00
J. Nick Koston
37df7bf4c5 Convert flume to use DataUpdateCoordinator (#42017)
* Convert flume to use DataUpdateCoordinator

* pylint

* Update homeassistant/components/flume/sensor.py

* Update homeassistant/components/flume/sensor.py
2020-10-18 13:44:36 -05:00
J. Nick Koston
6c1078d1ca Reduce ssdp context switches into the executor (#42045)
* Reduce ssdp context switches into the executor

* no self use
2020-10-18 13:44:01 -05:00
shbatm
c4821bfa74 Improve ISY994 NodeServer sorting and format sensor display values (#42050) 2020-10-18 13:33:45 -05:00
Brig Lamoreaux
a17da16dd2 Use common strings in xiaomi_aqara (#41866)
* Use common strings in xiaomi_aqara

* Remove mixed strings
2020-10-18 20:32:18 +02:00
Brett
5fab68725d Add Switch platform to Advantage Air (#41995)
* Add Switch platform

* Rename DOMAIN in climate

* Revert "Rename DOMAIN in climate"

This reverts commit 271ac7b8a5.

* Update unique_id

* Use constants

* Add switch platform to init

* Fix path for change

* Add tests

* Fix indentation of async_add_entities
2020-10-18 13:30:53 -05:00
Aaron Bach
91fd59aa57 Fix incorrect initial state with SimpliSafe locks (#42039)
* Fix incorrect initial state with SimpliSafe locks

* Cleanup
2020-10-18 12:21:48 -06:00
shbatm
941453dca9 Upgrade PyISY to v2.1.0, add support for variable precision (#42043) 2020-10-18 11:45:15 -05:00
Felipe Martins Diel
d96a1744f0 Improve RemoteEntity class (#40605) 2020-10-18 08:59:36 -05:00
Ronaldo Lima
1355d285e8 Remove unused strings in deCONZ config flow (#41978) 2020-10-18 15:26:40 +02:00
David Straub
6b77633e6e Bump homeconnect to 0.6.3 (#42022) 2020-10-18 10:33:19 +02:00
HomeAssistant Azure
1a03bbda5a [ci skip] Translation update 2020-10-18 00:03:28 +00:00
Erik Montnemery
515a6479a4 Bump hatasmota to 0.0.18 (#42000)
* Bump hatasmota to 0.0.17

* Bump hatasmota to 0.0.18
2020-10-18 00:00:28 +02:00
Aaron Bach
95f66ff4d5 Add low battery sensor for SimpliSafe locks (#42010) 2020-10-17 14:41:01 -05:00
Aaron Bach
8b6336a91a Move SimpliSafe REST API to DataUpdateCoordinator (#41919)
* Mirgrate SimpliSafe REST API to DataUpdateCoordinator

* Docstring

* More work

* Good to go

* Linting

* Restore previous initial event check

* Linting

* Comment

* Simplify listener

* Code review

* Cleanup
2020-10-17 14:40:34 -05:00
J. Nick Koston
183f94364a Parse html in the executor for scrape sensors (#41987) 2020-10-17 18:57:59 +02:00
Robert Svensson
c6c617ed31 Improve device registry for host and deCONZ service (#41786) 2020-10-17 11:44:23 -05:00
mezz64
92669d33aa Bump pyEmby to 1.7 (#41984) 2020-10-17 11:35:23 -05:00
Brett
e71d851973 Add Sensor Platform to Advantage Air (#41870)
* WIP Add Sensor platform

* Code quality improvements

* Readability improvements

* Fix RSSI in fixture

* Sensor platform tests

* Created parent sensor class

* Fix DOMAIN namespace

* Code Coverage fix for impossible case

* Use parent class

* Add to fixture for code coverage

* Description Update

* Use consistent name for ADVANTAGE_AIR_DOMAIN

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

* Set ADVANTAGE_AIR_DOMAIN where required

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2020-10-17 11:29:36 -05:00
marecabo
2443f5d108 Add device classes to battery, illuminance and temperature miflora sensor (#41975) 2020-10-17 11:25:26 -05:00
Erik Montnemery
5d1b4f5c87 Bump pychromecast to 7.5.1 (#41991) 2020-10-17 11:22:58 -05:00
Robert Svensson
7eb532ddd0 Improve imports in deCONZ tests (#41976)
* Improve imports in deconz tests

* Add spacing
2020-10-17 11:20:06 -05:00
Aaron Bach
1b94ef69d8 Migrate IQVIA to DataUpdateCoordinator (#41970)
* Migrate IQVIA to DataUpdateCoordinator

* Linting

* Code review

* Better re-raise
2020-10-17 11:16:41 -05:00
J. Nick Koston
c0845a3650 Prevent ios sensor updates from running in the executor (#41986)
The update was only checking an existing dict
2020-10-17 15:38:42 +02:00
J. Nick Koston
d9fbde4f6c Prevent doorbird from creating many executor jobs (#41985) 2020-10-17 15:35:24 +02:00
Ronaldo Lima
121613f5e6 Use common string in GeoNet NZ Volcano (#41981)
* add GeoNet NZ Volcano to home-assistant#40578

* change key from already_configured_location to already_configured on GeoNet NZ Volkano
2020-10-17 15:07:44 +02:00
Stuart Mumford
d0b1b0a39e Bump oemthermostat to 1.1.1 (#41998)
The library update is a packaging fix for upcoming pip dependency
resolution
2020-10-17 14:05:22 +02:00
Paulus Schoutsen
39ba0fc7ee Remove BOM integration because it uses webscraping (#41941)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-17 13:56:11 +02:00
Gautham Varma K
ee1b6d3195 Use common strings in denonavr integration (#41746) 2020-10-17 13:34:51 +02:00
Gautham Varma K
622c56b6a7 Use common strings in emulated roku (#41745)
* Use common strings in emulated roku

Replace IP and port with references from common strings

* Update strings.json

*Replace References in mix with sentence with their values.
*Replace name_exists with already_configured

* Replace references in config_flow
2020-10-17 13:13:05 +02:00
Erik Montnemery
49b7f317ff Fix Tasmota stale docstring + print level (#41992) 2020-10-17 13:07:21 +02:00
Anders Melchiorsen
30b454ddb7 Fix Sonos shuffle/repeat state with Spotify Connect (#41939) 2020-10-17 09:40:43 +02:00
J. Nick Koston
5580b21260 Decouple RestData from rest.sensor (#41980) 2020-10-17 04:56:45 +02:00
Philip Allgaier
dde6305549 Cleanup unused loggers (components N-Z + tests) (#41982) 2020-10-16 21:24:08 -05:00
J. Nick Koston
ad6ce5fa83 Convert rest sensors to async using httpx (#41973) 2020-10-16 19:21:13 -05:00
HomeAssistant Azure
39adf14079 [ci skip] Translation update 2020-10-17 00:06:00 +00:00
Abílio Costa
28fb761b01 Use skip_configuration flag to skip requests in ZHA (#41554)
* Remove duplicated attribute request from ZHA

The on_off attribute is on the REPORT_CONFIG, so
super().async_initialize already requests it from the device.
No need to request it twice.

* Use skip_configuration flag to skip requests in ZHA

* Fix loading from cache

* Fix loading from cache condition
2020-10-16 20:03:35 -04:00
Alexei Chetroi
c29f613b1d Fix schema for set_zigbee_cluster_attribute service (#41850) 2020-10-16 20:02:14 -04:00
Ronaldo Lima
87deb2344c Use common strings in Azure DevOps config flow (#41974) 2020-10-17 01:27:44 +02:00
Aaron Bach
74a1b75919 Deprecate YAML config for RainMachine (0.119 removal) (#41971) 2020-10-16 16:35:13 -05:00
Jaroslav Hanslík
3e82cc1b4f Add arming state to template alarm control panel (#41964) 2020-10-16 23:01:06 +02:00
Jaroslav Hanslík
b7f818e431 Fix typo in comment in demo integration (#41955) 2020-10-16 22:53:16 +02:00
João Gabriel
554246f061 Add device_class to Panasonic Viera media player entity (#41966) 2020-10-16 22:13:27 +02:00
Quentame
7469bd9266 Wait Synology NAS boot before configuring (#41829) 2020-10-16 14:39:20 -05:00
Jason Hunter
d5bf27427c Fix media source for Xbox integration (#41959)
* fix media content type

* fix comments
2020-10-16 15:02:24 -04:00
Brett
ca9ac48938 Add Binary Sensor Platform to Advantage Air (#41871)
* Binary Sensor Platform

* Parent Binary Sensor Class

* Fix DOMAIN namespace

* Use parent class
2020-10-16 12:12:24 -05:00
Aaron Bach
bbef87d3f3 Clean up SimpliSafe device info and sensor creation (#41920)
* Clean up SimpliSafe device info and sensor creation

* Code review
2020-10-16 12:01:16 -05:00
Robert Svensson
1c3ec69166 Remove deprecated UniFi yaml configuration support (#41954) 2020-10-16 11:55:44 -05:00
Robert Svensson
028689d6bd Remove update on add signalling in Axis integration (#41956)
Minor clean up of the integration
2020-10-16 11:54:48 -05:00
ioull
cb60905415 Add Bancs de Brouillard in fog condition (#41947)
* Add Bancs de Brouillard in fog condition

* Add Bancs de Brouillard in fog condition
2020-10-16 18:30:17 +02:00
uvjustin
ce0e08838f Fix timestamp overflow error in stream (#41951) 2020-10-16 11:48:45 -04:00
Aaron Bach
eff0c4a494 Properly unload SimpliSafe websocket listener (#41952) 2020-10-16 17:44:53 +02:00
Robert Svensson
8c0b39eb9c No update before adding entity in deCONZ (#41948) 2020-10-16 17:14:26 +02:00
Rob Bierbooms
92f89213a3 Fix InfluxDB v2 API with write precision None (#41937) 2020-10-16 16:44:50 +02:00
J. Nick Koston
1e256e6122 Remove unneeded async_add_job from homematic (#41855) 2020-10-16 09:24:12 -05:00
Robert Svensson
85ccff28cd Revert partial changes to deCONZ integration from earlier PR (#41943) 2020-10-16 14:38:12 +02:00
Punita Ojha
23b3db08f3 Rewrite smtp Unittest Tests To Pytest Style (#41720)
* Rewrite smtp unittest tests to pytest style
test functions.

.coverage.rc  --> Remove homeassistant/component/smtp/notify.py from
omit section.
test_notify.py --> Convert test case to pytest style.
test.jpg, test.pdf --> Add test files.

Issue id:- #40894

* Made Fix Based On Code Review
To Pull Request -  #41720.

.coveragerc --> Add file in omit section as coverage is 75%(i.e. <95%)
test_notify.py --> Capitalize constant in file, Made parametrized data
compatible to avoid if conditions.

Code Review Submission on Pull Request #41720.

* Made Fix Based On Code Review
To Pull Request #41720.

test_notify.py --> Add different test for simple text message to avoid if conditions check in code.

* Move Notify Media Files To
 Folder tests/testing_config/notify.

 test_notify.py --> Add Relevant Path For .jpg and .pdf file.
 test.jpg, test.pdf --> Move to relevant location.

 Pull request #41720
2020-10-16 13:55:12 +02:00
Marc Kolly
8bcae65dd8 Add missing Extended GTFS Route Types (#40297) 2020-10-16 13:51:05 +02:00
scheric
db802ff2b4 Use common strings in Mill config flow (#41836) 2020-10-16 13:44:41 +02:00
Chris Talkington
243a4e5df6 Remove deprecated YAML config from sonarr (#41904) 2020-10-16 13:43:35 +02:00
Edward Knight
b39d82c154 Rewrite APNS tests to use pytest (#41684)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-10-16 13:43:02 +02:00
Paulus Schoutsen
11d2e0c671 Bump cloud to 0.37.1 (#41930) 2020-10-16 13:40:04 +02:00
CurrentThread
75f27d6318 Rewrite mold_indicator unittest tests to pytest style test functions (#41598) 2020-10-16 13:37:15 +02:00
J. Nick Koston
965bb2c8df Update nest to use async_add_executor_job (#41926) 2020-10-16 13:31:16 +02:00
CurrentThread
250fbd857b Rewrite file unittest tests to pytest style test functions (#41616) 2020-10-16 13:30:03 +02:00
J. Nick Koston
9c719beded Update telegram_bot to use async_add_executor_job (#41924) 2020-10-16 13:29:28 +02:00
sycx2
91042e3e46 Improve template test lock (#41195)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-16 13:25:57 +02:00
Johan Hammar
30c20f362e Rewrite folder unittest tests to pytest style test functions (#41672) 2020-10-16 13:19:38 +02:00
scheric
0f2dfeb33f Use common strings in ovo energy config flow (#41940) 2020-10-16 13:17:41 +02:00
J. Nick Koston
83af805522 Update google_translate to use async_add_executor_job (#41925) 2020-10-16 13:15:01 +02:00
Ariana Hlavaty
c9ba5bfebd Rewrite proximity tests to be pytest functions (#41711) 2020-10-16 13:13:34 +02:00
thaohtp
aabf26bbc8 Rewrite bayesian unittest tests to pytest style test functions. (#41740) 2020-10-16 13:10:48 +02:00
J. Nick Koston
6f113e981b Update litejet and zwave tests to use async_add_executor_job (#41927)
* Update litejet and zwave tests to use async_add_executor_job

* await
2020-10-16 13:08:04 +02:00
Ariana Hlavaty
0a192947ed Rewrite shell_command unittest tests to pytest style test function (#41274) 2020-10-16 13:04:12 +02:00
Captone Habiyaremye
5e96d21414 Add device actions to water_heater (#41417)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-16 12:51:12 +02:00
J. Nick Koston
9f5e3bfbd5 Update homekit camera resolutions for tvOS 14 (#41914) 2020-10-16 05:42:38 -05:00
Maciej Bieniek
798f7d1c63 Fix zeroconf name (#41908) 2020-10-16 05:38:39 -05:00
Ville Skyttä
92488849ea Add deCONZ IKEA TRÅDFRI wireless dimmer fast rotate events (#41573)
Ref https://fccid.io/FHO-ICTC-G-1/User-Manual/User-Manual-3155271.pdf
2020-10-16 12:12:59 +02:00
Balazs Keresztury
544b7c67e5 Removed unneccessary dependency on adafruit-blinka (#41768) 2020-10-16 12:12:32 +02:00
CurrentThread
904ce66a72 Rewrite tod unittest tests to pytest style test functions (#41603) 2020-10-16 12:10:38 +02:00
CurrentThread
a28f347b2b Rewrite fail2ban unittest tests to pytest style test functions (#41606) 2020-10-16 12:04:53 +02:00
James Warne
2146dd1268 Rewrite wsdot unittest tests to pytest style test functions (#41638) 2020-10-16 12:00:42 +02:00
Koen Beckers
465c21e075 Add game_icon to steam_online (#39947)
May just need to rename the sensor to steam info?
2020-10-16 11:59:27 +02:00
Gerard
0f1011ba3f Update featured integrations screenshot in README (#41085) 2020-10-16 11:53:57 +02:00
Robert Svensson
9abe18b579 Remove setup platform functions from UniFi since they are no longer needed (#41935) 2020-10-16 11:48:56 +02:00
Paulus Schoutsen
2f69b53bc3 Fix upcloud coverage that is breaking CI (#41934) 2020-10-16 11:30:51 +02:00
Thomas Barnekov
8be3f2f2a5 Add automatic keep-alive for IKEA Trådfri (#41778)
* Added automatic keep-alive for IKEA Trådfri

* Don't shut down factory on keep-alive error

* Avoid keep-alive after shutdown

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

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-16 11:21:36 +02:00
Tom Schneider
d16c04a8e0 Fix hvv_departures request time (#40195) 2020-10-16 10:07:24 +02:00
Tom Parker-Shemilt
2b151209b2 Don't try and store exceptions when the key is missing (#41803) 2020-10-16 10:01:58 +02:00
Paulus Schoutsen
8bc47c0cd1 Catch it when files are ignored by coverage but shouldn't (#41876) 2020-10-16 09:57:11 +02:00
Paulus Schoutsen
62343f87ad Catch when old entity can't be serialized in Google Report State (#41916)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-16 09:56:48 +02:00
Erik Montnemery
9e9f841f35 Add Tasmota device trigger (#41590)
* Add Tasmota device trigger

* Correct import

* Remove useless try-except

* Remove commented out code

* Align with hatasmota 0.0.14

* Update according to review comments
2020-10-16 08:16:07 +02:00
Brett
731d617c5e Code Quality improvements for Advantage Air integration (#41861)
* Readability improvements

* Code quality and more tests

* Created a parent entity

* Apply parent entity to cover platform

* Update _zone property

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

* Remove device_state_attributes

* Correct attribute tests

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-15 23:30:29 -05:00
Aaron Bach
1e0663e986 Bump pyairvisual to 5.0.3 (#41921) 2020-10-15 23:16:03 -05:00
Aaron Bach
76f88459dd Fix incorrect SimpliSafe websocket disconnect listener (#41923) 2020-10-15 23:13:45 -05:00
HomeAssistant Azure
11b812b82e [ci skip] Translation update 2020-10-16 00:04:33 +00:00
Chris Talkington
cbdd712b3d Remove sonarr reauth persistent notification (#41911) 2020-10-16 01:19:22 +02:00
Jason Hunter
c10fe4f723 Add sensors to Xbox integration (#41868)
* favorited friends binary sensors

* add binary_sensor to .coveragerc

* fix copy/paste comments...

* make sensor entities instead of attributes

* address PR review comments

* default state to None
2020-10-15 19:11:05 -04:00
Glenn Waters
801168f9d7 Add ElkM1 time and counter services and keypress event (#41867) 2020-10-15 17:05:07 -05:00
Aaron Bach
a0bb8ae5d9 Fix unhandled exception with SimpliSafe socket disconnection (#41917) 2020-10-15 17:00:57 -05:00
Paulus Schoutsen
3bcf2f9fd5 Merge pull request #41909 from home-assistant/rc 2020-10-15 23:41:17 +02:00
Martin Hjelmare
da6bdd4464 Add supervisor set add-on options helper (#41651) 2020-10-15 23:38:53 +02:00
Ariana Hlavaty
e28e453c08 Rewrite scene unittest tests to pytest style test function (#41172) 2020-10-15 23:35:30 +02:00
Aaron Bach
162a5d99a2 Add common string for reauth title (#41865) 2020-10-15 16:35:00 -05:00
Ville Skyttä
a9f342ef74 Convert UpCloud to config flow, improve error handling (#37941) 2020-10-15 23:26:01 +02:00
Bas Nijholt
d790de1346 Minor code improvement for KEF (#41885) 2020-10-15 16:20:23 -05:00
Raman Gupta
0e20bba40a Add persistent notification for reauth config flows (#41811)
* add persistent notification for reauth config flow

* remove log

* Update homeassistant/config_entries.py

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

* Update homeassistant/config_entries.py

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

* fix logic for determining when to dismiss notification

* add comment

* improve tests to ensure notifications only get dismissed when all in progress config flows of a given type are complete

* Update homeassistant/config_entries.py

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

* handle context is None when accessing source

* add guard to show_advanced_options

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2020-10-15 15:46:27 -05:00
uvjustin
a72dd6b917 Cap AVC profile level at 4.1 in stream master playlist (#41592)
* Cap AVC profile level at 4.1

* Use smaller multiplier in bandwidth calculation
2020-10-15 20:43:32 +00:00
J. Nick Koston
a220e74154 Update zhong_hong to use async_add_executor_job (#41846) 2020-10-15 15:39:48 -05:00
uvjustin
9270585a44 Cap AVC profile level at 4.1 in stream master playlist (#41592)
* Cap AVC profile level at 4.1

* Use smaller multiplier in bandwidth calculation
2020-10-15 16:37:27 -04:00
Paulus Schoutsen
36a1fe5f54 Bumped version to 0.116.4 2020-10-15 20:30:57 +00:00
Jason Hunter
303b7efd4b Bump ONVIF and pin Zeep (#41907) 2020-10-15 20:30:49 +00:00
Aaron Bach
6114006b8b Deprecate YAML config for SimpliSafe (0.119 removal) (#41896)
* Deprecate YAML config for SimpliSafe (0.119 removal)

* Remove import step from config flow
2020-10-15 14:28:09 -06:00
Jason Hunter
32675e0e38 Bump ONVIF and pin Zeep (#41907) 2020-10-15 22:24:33 +02:00
Erik Montnemery
766a0032c9 Bump hatasmota to 0.0.16 (#41902) 2020-10-15 21:14:42 +02:00
Aaron Bach
2079e41b7a Properly disconnect from SimpliSafe websocket on HASS shutdown (#41894)
* Properly disconnect from SimpliSafe websocket on HASS shutdown

* Update homeassistant/components/simplisafe/__init__.py

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

* Update homeassistant/components/simplisafe/__init__.py

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-10-15 13:05:00 -06:00
epenet
ba789105ee Add PRESSURE_CBAR to onewire constants (#41826) 2020-10-15 19:57:15 +02:00
J. Nick Koston
3ffa050905 Support HomeKit accessory mode (#41679)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-15 11:59:50 -05:00
Aaron Bach
db7c16162d Remove duplicated options handling in SimpliSafe (#41806)
* Remove duplicated options handling in SimpliSafe

* Incorrect property name
2020-10-15 10:36:04 -06:00
Tom
368bc0c34b Fix Plugwise hvac action and mode (#41550) 2020-10-15 16:59:02 +02:00
dependabot[bot]
2074da4f9f Bump actions/setup-python from v2.1.3 to v2.1.4 (#41873)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from v2.1.3 to v2.1.4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2.1.3...41b7212b1668f5de9d65e9c82aa777e6bbedb3a8)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-15 16:42:06 +02:00
J. Nick Koston
41872341f5 Update mysensors to use async_add_executor_job (#41849) 2020-10-15 09:22:50 -05:00
J. Nick Koston
3ee4f43b20 Update kira to use async_add_executor_job (#41847) 2020-10-15 09:22:37 -05:00
J. Nick Koston
2e05592039 Update remaining i2c sensors to use async_add_executor_job (#41860) 2020-10-15 09:22:17 -05:00
On Freund
086378c48f Add media browser capability to volumio (#40785) 2020-10-15 15:49:36 +02:00
J. Nick Koston
c5ae801bcb Allow HomeKit to be configured in include mode from the UI (#41662) 2020-10-15 15:33:01 +02:00
Pascal Vizeli
0323aeb660 Fix machine release builds (#41879) 2020-10-15 11:52:39 +00:00
Pascal Vizeli
b2f50d0a3a Fix machine release builds (#41879) 2020-10-15 11:52:20 +00:00
Pascal Vizeli
f2a2cfc52e Fix machine release builds (#41879) 2020-10-15 13:34:27 +02:00
Gabe Cook
ffb4a9112b Ruckus Unleashed Requested Changes (#41824) 2020-10-15 12:49:43 +02:00
Brett
a2574a4ed5 Add Cover Platform to Advantage Air (#41757)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-15 12:45:05 +02:00
J. Nick Koston
21cc23244d Improve template ratelimit performance (#41741) 2020-10-15 12:02:05 +02:00
Paulus Schoutsen
58e8162d18 Merge pull request #41877 from home-assistant/rc 2020-10-15 11:35:03 +02:00
Joakim Sørensen
1f07a4eba0 Forward client headers for proxied stream responses (#41663) 2020-10-15 11:01:37 +02:00
Paulus Schoutsen
8036b709e0 Bumped version to 0.116.3 2020-10-15 08:42:52 +00:00
cgtobi
e80ffe16f7 Reduce polling for Netatmo weather station sensors (#41858) 2020-10-15 08:42:27 +00:00
J. Nick Koston
99010bab18 Permit event trackers to accept an empty list of entities or domains (#41857) 2020-10-15 08:42:05 +00:00
Simone Chemelli
8d5e15df3d Shelly: fix for RGB devices (#41841) 2020-10-15 08:42:05 +00:00
Aaron Bach
efffc82414 Fix SimpliSafe re-auth flow (#41805)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-15 08:42:05 +00:00
djtimca
06b99a1ff9 Fix issues with metric conversion and single pump type for filter pumps in Omnilogic integration (#41777) 2020-10-15 08:42:05 +00:00
Pascal Vizeli
fd79c141b2 Offload dockermachines into core (#41756) 2020-10-15 08:42:05 +00:00
J. Nick Koston
b541b08d2d Ensure all template errors are caught and the websocket api reports them (#41719) 2020-10-15 08:42:00 +00:00
Bas Nijholt
42c9776c97 Fix KEF LSX becoming unavailable (#41700)
* Do not use asyncio.gather because the speaker only allows one concurrent connection

* bump to aiokef=0.2.16
2020-10-15 08:31:26 +00:00
Quentame
897340b115 Fix disabled Synology DSM camera (#41686) 2020-10-15 08:31:25 +00:00
Joakim Sørensen
e072d8b694 Add delete to hassio API (#41500) 2020-10-15 08:31:24 +00:00
Aaron Bach
690024b34a Fix SimpliSafe re-auth flow (#41805)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-15 10:15:32 +02:00
Paulus Schoutsen
5f3fc6a9e3 Cleanup the min-max sensor (#41851)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-15 09:54:04 +02:00
Aaron Bach
099de37ee5 Fix re-authentication in AirVisual (#41801) 2020-10-15 09:30:39 +02:00
J. Nick Koston
53a1d92f2b Permit event trackers to accept an empty list of entities or domains (#41857) 2020-10-15 09:26:51 +02:00
cgtobi
0a4298322c Reduce polling for Netatmo weather station sensors (#41858) 2020-10-15 09:25:59 +02:00
cgtobi
9dcc769a4a Remove max and min temperature sensors (#41859) 2020-10-15 09:24:20 +02:00
Paulus Schoutsen
4899d7628a Fix flaky ONVIF test (#41848) 2020-10-15 09:19:08 +02:00
Robert Svensson
6ccdf62e6b Add basic device information for UniFi clients device registry entries (#41839) 2020-10-15 08:10:59 +02:00
Brig Lamoreaux
58a432685c Use common srings in xiaomi-miio (#41864) 2020-10-15 08:09:20 +02:00
Daniel Hjelseth Høyer
4146a90313 Tibber, change time for fetching prices (#41840) 2020-10-15 08:08:57 +02:00
HomeAssistant Azure
994ae09f69 [ci skip] Translation update 2020-10-15 00:03:50 +00:00
Robert Svensson
cb6d3b590e Revert device trigger modelid for Trådfri remotes for deCONZ (#41843) 2020-10-14 23:39:00 +02:00
Mark Bergsma
5fd2acdbef Add influxdb config option 'measurement_attr' (#36020) 2020-10-14 22:49:57 +02:00
J. Nick Koston
e0df91ef9f Update mqtt to use HassJob (#41796)
Avoids the overhead of checking the callable type at run time
2020-10-14 22:04:48 +02:00
jjlawren
4e8012fcea Remove unnecessary check in Plex client scanning (#41844) 2020-10-14 22:01:06 +02:00
scheric
f5248b5562 Use common strings in withings config flow (#41770) 2020-10-14 21:54:23 +02:00
Ville Skyttä
4cc6eee1ac Mark Huawei LTE sensors with None value as unavailable (#41667) 2020-10-14 22:11:48 +03:00
Ville Skyttä
50468c4c8c Add Huawei LTE battery sensor (#41668) 2020-10-14 22:11:18 +03:00
scheric
6d1242ffe7 Use common strings in ovo_energy config flow (#41838) 2020-10-14 21:10:59 +02:00
scheric
78c0871ae5 Use common strings in Tibber config flow (#41837) 2020-10-14 21:10:37 +02:00
Simone Chemelli
70eebc7211 Shelly: fix for RGB devices (#41841) 2020-10-14 21:09:03 +02:00
Jason Hunter
2b1fc90de7 Add Media Source to Xbox Integration (#41833)
* initial implementation of xbox media source

* minor fixes

* fix lint

* add media class map to remove multi-line ternary
2020-10-14 15:02:08 -04:00
J. Nick Koston
9d9520b2f9 Switch sabnzbd to use async_add_executor_job (#41835) 2020-10-14 20:27:34 +02:00
Robert Svensson
68cfc36b6b Don't override proper data for UniFi Controller entry in device registry (#41834) 2020-10-14 17:52:45 +02:00
Erik Montnemery
042ce1cb92 Add Tasmota light (#41485) 2020-10-14 17:47:13 +02:00
jjlawren
c63c253b7f Discover Plex clients using GDM (#39053) 2020-10-14 15:46:52 +02:00
João Gabriel
72759d7501 Re-add forced update in Panasonic Viera (#41804) 2020-10-14 15:33:47 +02:00
djtimca
49d58bb6a8 Bump omnilogic to 0.4.2 (#41821) 2020-10-14 15:21:29 +02:00
Clifford Roche
839b9f226e Add gree climate integration (#37498)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-14 15:15:56 +02:00
Sharif Nassar
9ee97cb213 Convert fan tests to pytest style (#41631) 2020-10-14 11:07:26 +02:00
J. Nick Koston
afc602595b Only validate entity id if it did not exist on state change (#41820) 2020-10-14 11:06:51 +02:00
epenet
3cba25a892 Add test coverage for onewire (#40786)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-14 10:19:12 +02:00
J. Nick Koston
6d05729e48 Update image_processing to use async_add_executor_job (#41810) 2020-10-14 08:19:39 +02:00
J. Nick Koston
6c0d5fa1d6 Switch legacy async_add_job to async_add_executor_job in wemo (#41807)
These calls were already using async_add_executor_job in some of the
other platforms
2020-10-14 08:19:09 +02:00
J. Nick Koston
cdd17b4215 Update caldav to use async_add_executor_job (#41808)
self.calendar.date_search was already being run in the executor in
other places so this should be safe
2020-10-14 08:18:23 +02:00
Chris Talkington
b9d34603e4 Use canary fixture for options flow test (#41817) 2020-10-14 08:17:36 +02:00
Jason Hunter
3013f39191 Add Remote entity to Xbox Integration (#41809) 2020-10-13 21:00:44 -04:00
HomeAssistant Azure
ba55cb8955 [ci skip] Translation update 2020-10-14 00:04:41 +00:00
J. Nick Koston
6c3e450117 Update shopping_list to use async_add_executor_job (#41795) 2020-10-13 17:22:17 -05:00
J. Nick Koston
3748c3c985 Fix canary test doing IO and failing when the cloud is offline (#41799) 2020-10-13 15:57:00 -05:00
J. Nick Koston
ff2872e376 Remove unneeded context switch in dyson (#41793)
dyson was running the add_message_listener code in the
executor even though all it did was append to an array

https://github.com/etheralm/libpurecool/blob/master/libpurecool/dyson_device.py#L213
2020-10-13 15:45:00 -05:00
J. Nick Koston
5c540dcfcf Update cast to use async_add_executor_job (#41794) 2020-10-13 15:39:43 -05:00
J. Nick Koston
af74e36d16 Update html5 to use async_add_executor_job (#41788) 2020-10-13 22:26:14 +02:00
Sharif Nassar
c08f984f2b Update uptime tests to pytest style (#41077)
* Update uptime tests to pytest style

First attempt

* Test that the sensor is actually configured

* Swap the rest of the tests to pytest

* fixup! Swap the rest of the tests to pytest
2020-10-13 22:18:31 +02:00
Robert Svensson
dc71b7421c Improve deCONZ climate platform handling unsupported commands (#41780)
* Improve deCONZ climate platform

* Raise valueerror if missing input

* Fix linting
2020-10-13 22:11:09 +02:00
Aaron Bach
3a59f7c2b7 Address cleanup commentary for Guardian Paired Sensors (#41785) 2020-10-13 22:01:10 +02:00
J. Nick Koston
e791946f00 Update generic camera to use async_add_executor_job (#41787) 2020-10-13 21:59:39 +02:00
J. Nick Koston
b58ef6ae92 Convert remaining async_add_job to async_add_executor_job in media_player (#41790) 2020-10-13 21:57:36 +02:00
J. Nick Koston
aefd4908df Update mjpeg camera to use async_add_executor_job (#41791) 2020-10-13 21:56:57 +02:00
dvermd
840e4be029 Rewrite configurator tests to pytest (#41731) 2020-10-13 21:42:16 +02:00
J. Nick Koston
1bcedd15b3 Update sun listeners to use HassJob (#41695)
Avoids checking the callable type every time sun events trigger
2020-10-13 21:37:10 +02:00
djtimca
5069fc4024 Fix issues with metric conversion and single pump type for filter pumps in Omnilogic integration (#41777) 2020-10-13 21:32:32 +02:00
J. Nick Koston
ef9cd485fd Update to zeroconf 0.28.6 to accomodate devices that are not strictly name compliant (#41784) 2020-10-13 14:02:52 -05:00
Bas Nijholt
8db88192a8 Fix KEF LSX becoming unavailable (#41700)
* Do not use asyncio.gather because the speaker only allows one concurrent connection

* bump to aiokef=0.2.16
2020-10-13 20:13:48 +02:00
Guido Schmitz
db4b4745dc Update devolo-home-control-api to 0.15.1 (#41783) 2020-10-13 20:09:54 +02:00
Daniel Hjelseth Høyer
3a119dd669 Update pyTibber to 0.15.7 (#41722) 2020-10-13 19:58:39 +02:00
thaohtp
7298bb32f1 Rewrite homematic unittest tests to pytest style test functions (#41766)
Issue: https://github.com/home-assistant/core/issues/40856
2020-10-13 19:51:08 +02:00
Robert Svensson
267d97e80e Improve deCONZ fan platform handling unsupported commands (#41779)
* Improve handling unsupported commands

* Raise valueerror on unsupported speed

* Fix linting
2020-10-13 19:34:33 +02:00
Erik Montnemery
7f9db59209 Bump hatasmota to 0.0.15 (#41781) 2020-10-13 18:53:18 +02:00
Jason Hunter
c3ccea52a5 Add Browse Media to Xbox (#41776)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-13 17:51:51 +02:00
Franck Nijhof
5dbb5f12eb Upgrade sqlalchemy to 1.3.20 (#41765) 2020-10-13 08:43:58 -05:00
Franck Nijhof
64d3cdfb41 Add nested light group test (#41764) 2020-10-13 08:37:16 -05:00
Jason Hunter
9877e8e25b Add Xbox Integration (#41697)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-13 15:37:01 +02:00
Erik Montnemery
12a6d10168 Log exceptions in EntityPlatform.async_add_entities (#41730)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-13 15:35:27 +02:00
J. Nick Koston
33b548e247 Reduce ORM overhead when the old state was already written to the database (#41736)
We can avoid processing the relationship when the old state was already
written to the database which will common case with a commit interval
of 1s. Since we already know the value for old_state_id we can use it
instead of asking sqlalchemy to process the relationship at flush/commit
time which can significantly speed up sqlalchemy's _emit_insert_statements
implementation.
2020-10-13 15:34:46 +02:00
Aidan Timson
52c93edb53 Add Palette to WLED Effect Service (#41724) 2020-10-13 14:12:01 +02:00
Rob Bierbooms
c16f107f6b Filter rfxtrx configure devices option flow on existing config entry (#40975)
* Prompt only configure devices when device is in config entry

* Fix copy
2020-10-13 13:51:42 +02:00
tkacikdominik
b6855816ed Rewrite Facebook unit test to pytest style test function (#41671)
* refactoring - Rewrite Facebook unit test to pytest style test function

* Modifying email author

* modified code formating

* Run CI
2020-10-13 13:45:46 +02:00
João Gabriel
d1041efedf Add device info to Panasonic Viera (#41028)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-13 13:14:59 +02:00
Robert Svensson
72289b8171 Add fan support to deCONZ (#40806)
* Add fan support to deconz

* Fix gateway test

* Fix lint issue

* Apply suggestions from code review

* Fix black

* Improve tests

* Store previously used speed in case turn_on service is called without a speed attribute

* Fix tests

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-13 12:57:42 +02:00
Sören Oldag
113a680c43 Bump pwmled to 1.5.3 (#41681) 2020-10-13 12:53:29 +02:00
Joakim Plate
11bbc14530 Pass context to on/off scripts (#40254) 2020-10-13 12:13:47 +02:00
Pascal Vizeli
2d08708c3b Offload dockermachines into core (#41756) 2020-10-13 11:56:28 +02:00
Diogo Gomes
c4148eb2c5 Add notify platform to TTS (#40028) 2020-10-13 11:52:51 +02:00
Pascal Vizeli
4d997180e6 Replace old python extension with new pylance in devcontainer (#41591) 2020-10-13 11:50:25 +02:00
Tom Schneider
1d682bdc78 Bump pygti to 0.9.2 (#41571) 2020-10-13 10:31:42 +02:00
Fredrik Erlandsson
8bdc824b6c Update pypoint to use async http requests (#41546)
* Remove domain after entities

* Add support for async http-requests

* Fix, handle network issues (update _is_available status)

* Fix missing await for alarm_arm

* Fix alarm status

* Update tests to async

* Bump pypoint version

* Fix doc string

* Apply suggestions from code review, remove pylint disable

* Fix black
2020-10-13 08:48:26 +02:00
Sören
32204821c1 Bump pynello to 2.0.3 (#41737)
* Bump pynello to 2.0.3

* Bump pynello to 2.0.3
2020-10-13 08:42:33 +02:00
Aaron Bach
bb98f7ed1b Add support for Elexa Guardian paired sensors (#37930)
* Add support for Guardian paired sensors

* More work

* OOP

* More OOP

* Binary sensors looking good

* Entities all in place

* Looking good

* Linting

* Code review

* Code review

* Flake

* Fix removal

* Code review

* Linting

* Don't use potentially confusing method name

* Use CoordinatorEntity

* Linting

* Pylint

* Code review

* Code review
2020-10-12 21:41:57 -06:00
Glenn Waters
f7d3f3a1ed Add elkm1 bypass and trigger services (#41584) 2020-10-12 21:41:19 -05:00
scheric
7e6432dad6 Use common strings in Griddy config flow (#41716) 2020-10-12 21:13:04 -05:00
Guido Schmitz
bb2d3bf50d Fix climate platform in devolo Home Control (#40746)
Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
2020-10-12 19:21:59 -05:00
Ville Skyttä
f28c3273c2 Upgrade mypy to 0.790 (#41595) 2020-10-12 19:17:30 -05:00
HomeAssistant Azure
1417a4161f [ci skip] Translation update 2020-10-13 00:03:24 +00:00
J. Nick Koston
a9de9c62f1 Use native utc timezone for utcnow() (#41727)
This allows timezone operations to happen in C code instead
of the pure-python code of pytz
2020-10-12 17:43:21 -05:00
Anders Melchiorsen
b5308bda09 Add Sonos support for media_player.repeat_set service (#41735)
* Add Sonos support for media_player.repeat_set service

* Update homeassistant/components/sonos/media_player.py

* Remove else for pylint

Co-authored-by: cgtobi <cgtobi@users.noreply.github.com>
2020-10-13 00:30:38 +02:00
Anders Melchiorsen
d00655810f Add media_player.repeat_set service (#41435) 2020-10-12 23:29:28 +02:00
scheric
a6393fb36c Use common strings in Avri config flow (#41717) 2020-10-12 19:42:07 +02:00
Christian Bilevits
54bb82a3c2 Add common strings in plaato config flow (#41622) 2020-10-12 19:39:09 +02:00
Niccolo Zapponi
8a45bc2d13 Add support for SimpliSafe sensors (#41080)
* Add support for SimpliSafe sensors

* Turn sensor refresh rate to a configurable setting

* Set minimum to scan interval

* Removed dynamic sensor refresh rate

* Refactoring

* Refactoring

* Move battery entities to binary_sensor platform

* Bug fix

* Clean up

* Simplified device info override

* Ignore sensor cache
2020-10-12 11:31:55 -06:00
Erik Montnemery
f70aa0b5cc Merge Tasmota sensor device class and icon maps (#41706) 2020-10-12 19:26:35 +02:00
sycx2
fc75927d85 Rewrite tests for Template Binary Sensor (#41098) 2020-10-12 17:56:08 +02:00
Paulus Schoutsen
57996e1942 Improve mobile app template handling (#41703)
Co-authored-by: J. Nick Koston <nick@koston.org>
2020-10-12 17:26:54 +02:00
Nathan Tilley
feabf99f92 Rewrite Wake on LAN Tests to use pytest style (#41173)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-12 17:17:31 +02:00
Philip Allgaier
625bbe6238 Cleanup unused loggers (components A-M) (#41600) 2020-10-12 16:59:05 +02:00
Thomas Lovén
9e6df38994 Fix too agressive .gitignore (#41677) 2020-10-12 16:48:42 +02:00
Quentame
6cff58f37d Fix disabled Synology DSM camera (#41686) 2020-10-12 16:47:05 +02:00
J. Nick Koston
b897ca7260 Ensure all template errors are caught and the websocket api reports them (#41719) 2020-10-12 16:38:24 +02:00
puddly
f7e7f1371e Update zigpy-znp to 0.2.2 (#41670) 2020-10-12 09:44:40 -04:00
Vladimír Záhradník
111afbb66f Refactor Modbus switch to provide a base for other entities (#33551)
* Add Modbus light and fan entities

* Rework Fan and Light components to new config structure

* Fix Linter issue

* Rework Modbus switch initialization

* Properly update state on actuator methods

* Remove Fan and Light entity from this change. They will be merged separately

* Fix loading of the Switch platform

* Modbus switch - inherit from the SwitchEntity
2020-10-12 14:34:44 +02:00
fnurgel
bf57035880 Use separate line for return statement in hue_activate_scene (#41709) 2020-10-12 13:40:26 +02:00
Brett
3e41c682f4 Add Advantage Air Integration (#40159)
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-12 13:22:15 +02:00
Erik Montnemery
cd21786536 Bump hatasmota to 0.0.13 (#41705)
* Bump hatasmota to 0.0.13

* Fix tests
2020-10-12 13:09:17 +02:00
Dan Ports
c8ac787c9f Bump greeneye_monitor to 2.1 (#41692)
This fixes reporting of temperature sensors with negative values.
2020-10-12 08:14:09 +02:00
Erik Montnemery
84cb00bb4e Add Tasmota sensor (#41483)
* Add Tasmota sensor

* Remove useless try-except

* Bump hatasmota to 0.0.11

* Apply suggestions from code review

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

* Sort dict constants

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-12 07:27:06 +02:00
Philip Allgaier
59edb25e4e Clean up speedtest (#41139)
* Remove unused error string + add server list log msg

* Use more common reference texts

* Revert translation files + correct typos
2020-10-12 06:03:45 +02:00
HomeAssistant Azure
f787289ea0 [ci skip] Translation update 2020-10-12 00:03:31 +00:00
Matthias Alphart
93a9a11065 Add config validator helper positive_float (#41640) 2020-10-11 22:04:49 +02:00
Angelo Gagliano
874e1f6103 Prevent tplink missing devices and unavailable state (#39762)
* Adds self to codeowners for tplink

* Adds retry to update to prevent missing devices

* Runs through isort and corrects async commit

* Runs through black

* Runs through pre-checks

* Corrects and matches var names

* Re-runs through black

* Corrects var name

* Removes the retry loop and in favor of async add

* Cleanup imports

* Removes no longer valid test

* Removes is_ready and only log retry once

* Corrects switch logging vars

* Adds list of entities to add_entities

* Consumes exception for attempt_update

* Consumes specific exception

* Removes unnecessary update

* Reducing back to 2 seconds

* Removes useless return

* Call get_sysinfo for all at once

* Formated black

* Adds missing docstirng

* Corrects docstring

* Update homeassistant/components/tplink/light.py

Co-authored-by: Anders Melchiorsen <amelchio@nogoto.net>

* Corrects sysinfo call

* Adds default for host vars

* Adds log when device responds again

* Revert host alias default

* Removes unncessary host var

* Removes host var

* Get device details from sysinfo

* Use host and alias for log msg

* Gets hosts from smartbulb

* Changes retry logging to debug

* Attempts coverage add

* Removes unused import

* Updates tests for new retry

* Runs through isort

* Removes unneeded try

* Prevents static entries from failing integration

* Format black

* Forces an update after turn on off

* Remove common test

* Revert update after turn_on off

* Adds patch for sleep_time 0

* Returns False when update fails

Co-authored-by: Anders Melchiorsen <amelchio@nogoto.net>
2020-10-11 21:10:36 +02:00
fnurgel
366006e0aa Multiple Hue activate scene (#41353) 2020-10-11 21:01:49 +02:00
uvjustin
1c6d0d138d Adjust dts warning messages in stream (#41467)
* Adjust dts warning messages

* Wait for second packet with overflow dts condition

* Rename dts gap watch variable

* Remove out of order packet warning
2020-10-11 12:55:13 -04:00
uvjustin
6c18feb4ed Allow only one packet with no dts in stream init (#41129)
* Allow only one packet with no dts in stream init

* Call finalize_stream() on exit
2020-10-11 12:52:51 -04:00
J. Nick Koston
c7bbba9d48 Reduce icmplib ping timeout to match ping binary behavior (#41620) 2020-10-11 11:12:27 -05:00
ochlocracy
178b2d8c22 Update display categories in Alexa (#41626)
* Add new display categories from Alexa Smart Home API

* Update Vacuum entities to use VACUUM_CLEANER category.

* Update Automation entities to use ACTIVITY_TRIGGER category.

* Update tests for Automation entities to use ACTIVITY_TRIGGER category.
2020-10-11 11:09:05 -05:00
Maciej Bieniek
13f0ea506e Bump brother to 0.1.18 (#41056) 2020-10-11 11:04:27 -05:00
Spartan-II-117
44a3278ba8 Use common strings for AirVisual (#41632) 2020-10-11 17:28:55 +02:00
scheric
9d6589240f Use common strings in logi_circle config flow (#41427)
* already_setup->already_configured

* auth_error->invalid_auth

* rm default

* auth_timeout->oauth2_authorize_url_timeout

* enable auto format black

* add oauth2_missing_configuration

* Use standard helper keys

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-11 10:11:45 -05:00
Christian Bilevits
ae20b3a678 Use common strings in ps4 config flow (#41623) 2020-10-11 16:57:21 +02:00
Gautham Varma K
ffd25fb2ce Use common strings in homematicip_cloud config flow (#41658) 2020-10-11 16:53:03 +02:00
Philip Allgaier
b6a93724bf Use consistent "percent" naming in systemmonitor (#41411) 2020-10-11 15:52:32 +02:00
Christian Bilevits
1cb25cdaf7 Use common strings in panasonic config flow (#41641)
* Add missing common strings

* Add common string
2020-10-11 15:47:49 +02:00
Gautham Varma K
9d515e8c34 Use common strings in risco config flow (#41656) 2020-10-11 15:46:59 +02:00
scheric
1f4fe62380 Use common strings in twentemilieu config flow (#41647) 2020-10-11 14:54:08 +02:00
Christian Bilevits
1c4512bc40 Use common strings in Nest config flow (#41597) 2020-10-11 14:47:30 +02:00
Christian Bilevits
ef448f1549 Use common strings in profiler config flow (#41642) 2020-10-11 14:33:34 +02:00
scheric
f382754830 Use common strings in iOS config flow (#41644) 2020-10-11 14:32:06 +02:00
scheric
9c9b9e8227 Use common strings in Météo-France (#41610)
* insert feadback

* more feadback
2020-10-11 09:58:54 +02:00
Brian Rogers
899431235b Bump rachiopy to 1.0.3 and update methods to handle changes (#41398) 2020-10-10 19:44:49 -05:00
HomeAssistant Azure
80522f1bdc [ci skip] Translation update 2020-10-11 00:03:37 +00:00
Christian Bilevits
fdc965c6b9 Add missing common strings (#41621) 2020-10-11 00:42:32 +02:00
Steffen Rusitschka
b5f4b58832 Add rx mode to homematic.put_paramset service (#40065) 2020-10-10 20:42:19 +02:00
Christian Bilevits
0838936ce7 Add common strings in broadlink config flow (#41602) 2020-10-10 19:12:15 +02:00
Paulus Schoutsen
dc1b1706f1 Add device info to met (#41611) 2020-10-10 17:30:27 +02:00
Daniel Hjelseth Høyer
4ece928c0a Remove icon for Tibber sensor (#41604) 2020-10-10 17:29:45 +02:00
J. Nick Koston
00b338002a Update icmplib to 1.2.2 (#41608)
Fixes IPv6 lookups
2020-10-10 17:28:13 +02:00
J. Nick Koston
da2f9db62e Fix async functions accidentally marked as callbacks (#41607) 2020-10-10 16:54:36 +02:00
javicalle
73f52c829a Remove illuminance sensor for Xiaomi EU gateway (#41580)
Xiaomi EU gateway don't support the `XiaomiGatewayIlluminanceSensor`.
2020-10-10 14:43:06 +02:00
Diederik van den Burger
c31d9bfd3f Update Withings integration (add sleeps data) (#41504) 2020-10-10 14:41:26 +02:00
scheric
7f8f53607e add strings (#41599) 2020-10-10 14:38:00 +02:00
Daniel Hjelseth Høyer
9299f0a8b2 Add device_class to Tibber sensor (#41572) 2020-10-10 14:20:15 +02:00
Ville Skyttä
3a6c9b43ab Remove redundant flake8 max-line-length (#41596)
Disabling E501 is needed and handles it anyway.
2020-10-10 13:43:37 +02:00
Alexander Pitkin
85b01a9b80 Rewrite mhz19 unittest tests to pytest style tests (#41441)
* Rewrite mhz19 unittest tests to pytest style tests

* Move mhz19 tests imports
2020-10-10 13:05:08 +02:00
Ville Skyttä
66aa55dddf Fix deCONZ IKEA TRÅDFRI device name spelling (#41574) 2020-10-10 13:04:00 +02:00
Gabe Cook
4b617db669 Add Ruckus Unleashed integration (#40002)
* Add Ruckus Unleashed integration

* Tweak catches to better rely on CoordinatorEntity error handling, rename LoginError to AuthenticationError

* Make router_update be a callback function

* Make name property return hint match the newer value

* Add entity to tracked set when restoring on boot

* Add a device's MAC to the attributes
2020-10-10 13:01:53 +02:00
Chris
de300ddd56 Clean up some of the ozw tests (#41578)
* Remove some unnecessary fixtures and combine csv dumps
2020-10-10 09:45:20 +02:00
Raman Gupta
025bdd74a1 Allow users to update their iCloud password when auth fails (#39138)
* Allow users to update their iCloud password when auth fails after successful setup

* remove trailing comma

* use new reauth source instead of custom one so frontend can do the right thing

* add quentames text suggestion with a slight tweak

* fix test

* use common string for successful reauth and remove creation and dismissal of persistent notification

* Update homeassistant/components/icloud/account.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-10 02:02:28 -04:00
HomeAssistant Azure
6ae12c3faf [ci skip] Translation update 2020-10-10 00:05:05 +00:00
Franck Nijhof
0c7d8ce704 Upgrade codecov to 2.1.10 (#41562) 2020-10-09 18:27:26 +02:00
epenet
843c4e27f3 Update Onewire SysBus integration to use a 3rd party library (#40943) 2020-10-09 17:31:05 +02:00
Paulus Schoutsen
52d8c66a8b Merge pull request #41555 from home-assistant/rc 2020-10-09 16:46:08 +02:00
J. Nick Koston
3bb0e00abe Update python_script tests to use async_add_executor_job (#41553) 2020-10-09 15:58:36 +02:00
J. Nick Koston
49e5b665cf Convert final async_add_job to async_add_executor_job in logbook tests (#41552) 2020-10-09 15:52:06 +02:00
J. Nick Koston
61262222aa Remove async_add_job from system_log tests (#41551) 2020-10-09 15:50:43 +02:00
Paulus Schoutsen
a26413c989 Bumped version to 0.116.2 2020-10-09 13:44:04 +00:00
cgtobi
c9d53dec8d Fix missing weather sensors (#41540) 2020-10-09 13:42:54 +00:00
Maciej Bieniek
dae2117078 Fix description reference in PoolSense config flow (#41535) 2020-10-09 13:42:53 +00:00
Xiaonan Shen
72b95f7529 Bump yeelight to 0.5.4 (#41524) 2020-10-09 13:42:52 +00:00
J. Nick Koston
56436e6387 Restore group support to plant entities (#41519) 2020-10-09 13:42:52 +00:00
djtimca
7cdbbc248f Fix omnilogic temperature sensor with metric setting (#41509) 2020-10-09 13:42:51 +00:00
Arjan van Balken
cca2594225 Update Arris TG2492LG dependency version (#41465) 2020-10-09 13:42:50 +00:00
Abílio Costa
078ecef4b2 Remove duplicated attribute request from ZHA (#41442)
The on_off attribute is on the REPORT_CONFIG, so
super().async_initialize already requests it from the device.
No need to request it twice.
2020-10-09 09:23:52 -04:00
definitio
0a1d9abe79 Use common strings in esphome config flow (#41547) 2020-10-09 14:28:54 +02:00
Steffen Rusitschka
a9adc2a6f0 Publish state changes to Zabbix (#36659) 2020-10-09 14:11:50 +02:00
Xiaonan Shen
e6a65b8bd3 Bump yeelight to 0.5.4 (#41524) 2020-10-09 13:30:42 +02:00
cgtobi
96035eb052 Fix missing weather sensors (#41540) 2020-10-09 12:34:52 +02:00
Tobias Efinger
f101d9cddb Update translate develop to substitute references (#41445) 2020-10-09 11:51:05 +02:00
Franck Nijhof
58ede21f39 Fix date parsing template int in history stats (#41476) 2020-10-09 11:50:52 +02:00
Dmitry
b106149588 Fix string parameter processing in parse_time_expression (#41468) (#41469) 2020-10-09 11:48:49 +02:00
Maciej Bieniek
9d1aa70c62 Fix description reference in PoolSense config flow (#41535) 2020-10-09 11:16:16 +02:00
J. Nick Koston
f268378f0f Fix plant doing IO in the event loop. (#41527)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-09 09:57:46 +02:00
Raman Gupta
d3734aae9d Allow custom_serializer to recognize cv.string and cv.boolean to make config schema more reusable (#41532) 2020-10-09 09:36:54 +02:00
J. Nick Koston
852d1b2e67 Update discovery to use HassJob (#41511)
Predetermine the listener types for discovery
2020-10-09 09:35:28 +02:00
J. Nick Koston
3a863c4a0f Fully convert async_track_time_interval to use HassJob (#41513)
The callback type for interval_listener was being determined
each time the interval hit.

This was missed in the original conversion.
2020-10-09 09:35:09 +02:00
J. Nick Koston
a8a2109cef Convert last remaining async_add_job in light to async_add_executor_job (#41518) 2020-10-09 09:32:55 +02:00
J. Nick Koston
1c431aa7bd Set created field when creating db events and states (#41523)
Avoids thousands of utcnow calls when the session
is commited on busy systems to fill in the field
default.
2020-10-09 09:31:17 +02:00
J. Nick Koston
617509413c Update wake_on_lan to use async_add_executor_job (#41528) 2020-10-09 09:29:16 +02:00
J. Nick Koston
3267823165 Update http to use async_add_executor_job (#41529) 2020-10-09 09:29:07 +02:00
J. Nick Koston
822ad0ae9c Update arcam_fmj device trigger to use async_run_hass_job (#41530) 2020-10-09 09:28:55 +02:00
J. Nick Koston
fef2700351 Update kodi device trigger to use async_run_hass_job (#41531) 2020-10-09 09:27:47 +02:00
J. Nick Koston
5ebf5996f1 Predetermine listener type for script change listeners (#41510) 2020-10-09 08:41:12 +02:00
J. Nick Koston
0b3bea0282 Use async_add_hass_job for debouncer (#41449) 2020-10-09 08:40:36 +02:00
cgtobi
22bef1d0d3 Fix Netatmo non specified sensor types (#41517) 2020-10-09 08:37:56 +02:00
J. Nick Koston
e03b3e2310 Restore group support to plant entities (#41519) 2020-10-09 08:37:27 +02:00
J. Nick Koston
68e1c70b14 Update history tests to use async_add_executor_job (#41526) 2020-10-09 08:36:59 +02:00
HomeAssistant Azure
29aea5a66c [ci skip] Translation update 2020-10-09 00:04:33 +00:00
J. Nick Koston
480b8165d7 Update notify to use async_add_executor_job (#41516) 2020-10-08 23:58:33 +02:00
J. Nick Koston
5b8ecc26a4 Update device_tracker to use async_add_executor_job (#41515) 2020-10-08 23:56:32 +02:00
jan iversen
4d9ff13384 Fix bool registers in modbus integration (#41506)
When a register is of type bool modbus returns a whole byte, but ONLY the
lowest bit determine true/false.
2020-10-08 23:52:41 +02:00
djtimca
8e3258cdfb Fix omnilogic temperature sensor with metric setting (#41509) 2020-10-08 23:48:54 +02:00
springstan
916178925e Return attribute dict directly without temporary variable v3 (#41502) 2020-10-08 21:33:08 +02:00
Fredrik Erlandsson
f42eca3fcf Add common strings in daikin config flow (#41419) 2020-10-08 21:25:54 +02:00
Ville Skyttä
cf83c6bf00 Complete Huawei LTE type hints, make mypy check them (#41503) 2020-10-08 21:02:47 +02:00
Joakim Sørensen
61a5bf5645 Add delete to hassio API (#41500) 2020-10-08 20:40:45 +02:00
willholdoway
1e9e0c8686 Add mute command to Bluesound integration (#41501)
Adding mute as a separate command as per the Bluesound API, rather than the current pseudo-mute which is achieved via lowering the volume to 0 then detecting whether the volume is 0 < volume < 0.001
2020-10-08 20:20:39 +02:00
Arjan van Balken
0856d91b0e Update Arris TG2492LG dependency version (#41465) 2020-10-08 19:08:20 +02:00
Paulus Schoutsen
b2885f6cc5 Merge pull request #41498 from home-assistant/rc 2020-10-08 19:03:12 +02:00
scheric
c2d0c90cd4 Use common strings in tellduslive config flow (#41408)
Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
2020-10-08 18:14:21 +02:00
scheric
5345e9fb5c Use common strings in fritzbox config flow (#41407)
Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
2020-10-08 18:12:04 +02:00
Keilin Bickar
d8aebe145b Add active voltage sensors to Sense integration (#41112) 2020-10-08 18:08:37 +02:00
J. Nick Koston
3a1ee2f654 Add missing on states to media player groups (#41496) 2020-10-08 15:59:09 +00:00
J. Nick Koston
2aee72981c Add missing on states to media player groups (#41496) 2020-10-08 17:58:52 +02:00
Paulus Schoutsen
26ba956242 Bumped version to 0.116.1 2020-10-08 15:48:36 +00:00
Bram Kragten
90d8874825 Update frontend to 20201001.2 (#41491) 2020-10-08 15:47:57 +00:00
Guido Schmitz
22f76a9363 Fix async_unload_entry for devolo Home Control (#41488) 2020-10-08 15:47:56 +00:00
cgtobi
cc4d71f942 Bump pyatmo version to 4.1.0 (#41487) 2020-10-08 15:47:56 +00:00
Paulus Schoutsen
0a55f024a4 Downgrade Paho MQTT to 1.5.0 (#41479) 2020-10-08 15:47:55 +00:00
J. Nick Koston
60fe64d119 Ensure recorder commit can retry after encountering invalid data (#41426) 2020-10-08 15:46:40 +00:00
Markus Bong
ac256815f9 Optimize devolo light devices (#41053) 2020-10-08 16:55:23 +02:00
Guido Schmitz
a81f4cf387 Fix async_unload_entry for devolo Home Control (#41488) 2020-10-08 16:48:05 +02:00
Khole
a3692859e9 Update Pyhiveapi Library Version (#40804)
* Update Pyhiveapi Library Version

This fixs an issue caused by a change in authentication method by hive

* Update Library Version
2020-10-08 14:01:21 +00:00
Bram Kragten
29a613e91f Update frontend to 20201001.2 (#41491) 2020-10-08 16:00:34 +02:00
jan iversen
9f3701bd32 Change modbus tests to use pytest.mark.parametrize (#41486) 2020-10-08 15:47:59 +02:00
scheric
a71049112e Use common strings in Atag config flow (#41351) 2020-10-08 15:27:28 +02:00
jrester
734972f876 Update tesla_powerwall to 0.3.3 (#41482) 2020-10-08 08:26:44 -05:00
cgtobi
07d208f1bc Bump pyatmo version to 4.1.0 (#41487) 2020-10-08 15:08:15 +02:00
Paulus Schoutsen
3036c17769 Downgrade Paho MQTT to 1.5.0 (#41479) 2020-10-08 12:31:46 +02:00
Erik Montnemery
35287828bc Poll state when Tasmota device becomes available (#41401) 2020-10-08 11:17:23 +02:00
J. Nick Koston
b51a160cce Update triggers to use HassJob (#41450)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-10-08 09:44:34 +02:00
J. Nick Koston
7537a3a7c8 Update filter to use async_add_executor_job (#41455) 2020-10-08 09:22:51 +02:00
J. Nick Koston
740d15e41d Update media_player to use async_add_executor_job (#41459) 2020-10-08 09:22:37 +02:00
J. Nick Koston
dfc656a2c6 Update lock to use async_add_executor_job (#41458) 2020-10-08 09:22:16 +02:00
J. Nick Koston
aa250c2b61 Update cover to use async_add_executor_job (#41456) 2020-10-08 09:21:47 +02:00
J. Nick Koston
1bf6166817 Update fan to use async_add_executor_job (#41457) 2020-10-08 09:21:29 +02:00
J. Nick Koston
e10413fa4c Update trend to use async_add_executor_job (#41454) 2020-10-08 09:20:58 +02:00
J. Nick Koston
ad5273ded1 Update config to use async_add_executor_job (#41452) 2020-10-08 09:20:39 +02:00
J. Nick Koston
8a374590e8 Update discovery to use async_add_executor_job (#41453) 2020-10-08 09:20:07 +02:00
J. Nick Koston
52e8366ce7 Update roomba to use async_add_executor_job (#41448) 2020-10-08 09:15:47 +02:00
J. Nick Koston
4ab02cb9bc Ensure recorder commit can retry after encountering invalid data (#41426) 2020-10-08 09:15:25 +02:00
On Freund
b5e57ed4fd Support matching multiple user ids in event trigger (#41036) 2020-10-08 09:10:42 +02:00
Erik Montnemery
392d5c673a Cache matching MQTT subscriptions (#41433) 2020-10-08 08:52:23 +02:00
Erik Montnemery
85603dcd08 Remove useless try-except from Tasmota binary sensor (#41462) 2020-10-08 08:44:11 +02:00
J. Nick Koston
896f64d02b Fix group tests when run in parallel (#41446) 2020-10-08 00:01:33 -05:00
J. Nick Koston
c1a0329401 Update nexia to use async_add_executor_job (#41451) 2020-10-07 23:59:02 -05:00
J. Nick Koston
700e639ec6 Fix flapping pilight test (#41447) 2020-10-07 23:58:17 -05:00
HomeAssistant Azure
d73d36d0cd [ci skip] Translation update 2020-10-08 00:06:03 +00:00
Erik Montnemery
a3f8b76537 Make async_step_discovery default for MQTT config flows (#41414) 2020-10-07 23:49:29 +02:00
Vladimír Záhradník
ba84d0bf5c Add custom data type support into Modbus climate (#32439) 2020-10-07 22:43:16 +02:00
scheric
3d9d90c4c8 Use common string names in ipp config flow (#41409)
* connection_error->cannot_connect

* connection_error->cannot_connect in config flow
2020-10-07 22:42:01 +02:00
Tom
b8f291d58e Prepare Plugwise integration for USB products (#41201)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-07 22:25:42 +02:00
Erik Montnemery
343e5d64b8 Add MQTT integration discovery (#41332)
* Add MQTT integration discovery

* Add script/hassfest/mqtt.py

* Unsubscribe if config entry exists

* Add homeassistant/generated/mqtt.py

* Fix bad loop

* Improve tests

* Improve tests

* Apply suggestions from code review

Co-authored-by: Fabian Affolter <mail@fabian-affolter.ch>

* Prevent initiating multiple config flows

Co-authored-by: Fabian Affolter <mail@fabian-affolter.ch>
2020-10-07 18:30:51 +02:00
Erik Montnemery
3f263d5cbe Remove deprecated host & platform configuration for cast (#41402) 2020-10-07 18:01:34 +02:00
Franck Nijhof
55958bcfb7 Merge pull request #41406 from home-assistant/rc 2020-10-07 17:50:57 +02:00
Franck Nijhof
cde6400482 Bumped version to 0.116.0 2020-10-07 17:10:04 +02:00
Paulus Schoutsen
d2077acc92 Warn when using Python 3.7 (#41400) 2020-10-07 17:07:27 +02:00
Martin Hjelmare
f4991794d4 Revert zoneminder config flow (#41395) 2020-10-07 17:05:46 +02:00
Paulus Schoutsen
088fb7eff3 Reduce Somfy polling (#41389) 2020-10-07 17:00:59 +02:00
J. Nick Koston
9e1461da62 Determine how to run listeners at setup time instead of execution time (#41304) 2020-10-07 16:51:50 +02:00
Paulus Schoutsen
8d94dff75c Warn when using Python 3.7 (#41400) 2020-10-07 16:44:13 +02:00
J. Nick Koston
8d5c124deb Improve performance of generating non-cryptographically secure uuids (#41314) 2020-10-07 16:37:01 +02:00
Glenn Waters
451f27bba1 Bump ElkM1 lib dependency. (#41399) 2020-10-07 09:31:37 -05:00
Martin Hjelmare
e006e0ddb3 Revert zoneminder config flow (#41395) 2020-10-07 16:28:49 +02:00
jyz0501
0f3489f5cb Baidu TTS: support more voices (#41393)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-07 15:44:16 +02:00
scheric
434c269f25 Add common strings in Agent dvr config flow (#41279) 2020-10-07 15:39:10 +02:00
J. Nick Koston
113d738fa2 Reduce orm overhead by grouping object expiration (#41394) 2020-10-07 15:35:48 +02:00
Maciej Bieniek
0dabf4962e Use already_configured_location string in GIOS config flow (#41384) 2020-10-07 15:30:46 +02:00
Kendell R
18419416ce Make PR search link not show changes requested PRs (#41278) 2020-10-07 15:30:08 +02:00
cgtobi
05765f1700 Remove Netatmo unnecessary battery sensors (#41321) 2020-10-07 15:25:11 +02:00
Maciej Bieniek
4434958265 Use name translation reference in Airly config flow (#41319)
* Use more translation references

* Revert already_configured string
2020-10-07 15:24:32 +02:00
Allen Porter
42cef1773b Update script scaffold templates for config_flow_oauth2 (#41181)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-07 15:23:45 +02:00
Dave T
d3bc4efa89 Use common strings in Awair (#41313)
* awair use common strings

* Use common strings: 'auth' to invalid_access_token

* Use reauth successful ref

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-07 15:17:10 +02:00
Erik Montnemery
306ee30574 Enable MQTT discovery by default (#41361) 2020-10-07 14:51:06 +02:00
SNoof85
b7c2e117be Use reference strings in Alarmdecoder (#41392) 2020-10-07 14:46:17 +02:00
Spartan-II-117
d2d3749223 Use common strings for Almond Config Flow (#41097)
Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-10-07 14:45:19 +02:00
Erik Montnemery
6e84f91762 Add Tasmota binary sensor (#41380) 2020-10-07 14:41:30 +02:00
SNoof85
7c133e4630 Use reference strings in Smarthab (#41391) 2020-10-07 14:39:30 +02:00
Paulus Schoutsen
4968a12b6c Reduce Somfy polling (#41389) 2020-10-07 13:49:45 +02:00
Glenn Waters
c3e679f69b Fix elkm1 changed by (#41378) 2020-10-07 13:14:03 +02:00
Alexei Chetroi
aa8e336af5 Bump up zha dependency to 0.26.0 (#41371) 2020-10-07 13:14:00 +02:00
Paulus Schoutsen
ac87c0eea2 Add additionalAttributes to Alexa discovery payload (#41370) 2020-10-07 13:13:56 +02:00
Quentame
281456b252 Set longer timeout during synology_dsm config flow (#41364) 2020-10-07 13:13:48 +02:00
Matej Plavevski
cf9a508557 Remove duplicate ATTR_USERNAME (#41386) 2020-10-07 11:41:00 +02:00
Maciej Bieniek
ca441a79aa Add invalid_host to base strings for config flows (#41381) 2020-10-07 11:24:31 +02:00
SNoof85
04b04027c3 Use reference strings in Withings (#41345) 2020-10-07 11:22:11 +02:00
Chris Talkington
21655e93bf Add CONF_API_TOKEN to constants (#41379)
* add CONF_API_TOKEN to constants

* Update const.py
2020-10-07 10:55:59 +02:00
Glenn Waters
95e4048f4e Fix elkm1 changed by (#41378) 2020-10-07 10:36:49 +02:00
Paulus Schoutsen
66e6ae8dbd Add additionalAttributes to Alexa discovery payload (#41370) 2020-10-07 09:32:12 +02:00
Yury Kotlyarov
99a64237f4 Support of NEW fan speed controller Leviton Decora ZW4SF-1BW (#41374)
Product page: https://www.leviton.com/en/products/zw4sf-1bz
Product year: 2020
2020-10-07 08:50:41 +02:00
tkdrob
1ed6133ee6 Add update_alarm to sonos services.yaml (#41376) 2020-10-07 08:18:13 +02:00
Maciej Bieniek
81ceb3e499 Add already_configured_location to base strings for config flows (#41335)
* Add already_configured_location key

* Use already_configured_location in Airly

* Use already_configured_location in Flu Near You

* Use already_configured_location in OpenUV

* Use already_configured_location in Open Weather Map

* Use already_configured_location in AirVisual
2020-10-06 22:34:06 -05:00
Charles Garwood
4c86e99ccf Bump python-openzwave-mqtt to 1.2.2 (#41357) 2020-10-07 02:10:54 +02:00
HomeAssistant Azure
486c0b644a [ci skip] Translation update 2020-10-07 00:06:20 +00:00
Alexei Chetroi
0ec4887837 Bump up zha dependency to 0.26.0 (#41371) 2020-10-07 01:15:49 +02:00
Quentame
ae1c15ff14 Set longer timeout during synology_dsm config flow (#41364) 2020-10-07 01:14:05 +02:00
Alexander Pitkin
5b0282e56d Rewrite panel_iframe unittest tests to pytest style tests (#41368) 2020-10-07 00:40:28 +02:00
Paul Annekov
ca59c4a645 Bump tuyaha to 0.0.8 (#41365) 2020-10-07 00:22:42 +02:00
Anders Melchiorsen
a65dcbf204 Allow playing Spotify URLs with Sonos (#41366) 2020-10-07 00:15:09 +02:00
Franck Nijhof
ee914366a8 Add native Python types support to templates (#41227)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-10-07 00:05:52 +02:00
Robert Svensson
cbb4324c84 Refactor deCONZ tests (#41362)
* Use hass.config_entries.async_unload

* Return config_entry from setup_deconz_integration
2020-10-06 23:25:57 +02:00
Paulus Schoutsen
aefa305f77 Bumped version to 0.116.0b6 2020-10-06 20:46:27 +00:00
J. Nick Koston
a11fa832ef Resolve memory leak in recorder (#41349)
Avoids a build up of the InstanceState.
2020-10-06 20:46:20 +00:00
Franck Nijhof
0470142701 Fix TTS ID3 Tag capability check (#41343) 2020-10-06 20:46:19 +00:00
Steven Looman
3c22834751 Don't set upnp config_entry.unique_id from setup entry (#40988)
* Don't set config_entry.unique_id from setup entry. Fixes #40168

* Ensure entry has a unique_id

* Add test test_flow_import_incomplete

* Add test test_flow_import_duplicate

* Re-add testing import_info

* Simplify import flow

* Remove not needed line

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-06 20:46:19 +00:00
Erik Montnemery
42fb0e9545 Bump hatasmota to 0.0.10, minor refactor of discovery (#41331)
* Bump hatasmota to 0.0.10, minor refactor of discovery

* Update tests

* Add missing docstrings
2020-10-06 22:32:36 +02:00
Shulyaka
9b947e08bf Add ZHA Analog Input cluster for XBee (#41311)
* Add ZHA XBee Analog Input cluster

* Fix manufacturer to Digi
2020-10-06 16:01:51 -04:00
Ariana Hlavaty
1e9e40bf71 Rewrite recorder unittest tests to pytest style test function (#41264) 2020-10-06 21:24:13 +02:00
J. Nick Koston
d35e33610a Resolve memory leak in recorder (#41349)
Avoids a build up of the InstanceState.
2020-10-06 20:12:47 +02:00
SNoof85
b8287d6db6 Use reference strings in Vesync (#41341)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-06 20:00:07 +02:00
SNoof85
ba81c0c043 Use reference strings in Upb (#41340)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-06 19:57:38 +02:00
SNoof85
f256d0a4ea Use reference strings in upnp (#41327)
* Update strings.json

* Update strings.json

* Update config_flow.py

* replace service by device

Co-authored-by: scheric <38077357+scheric@users.noreply.github.com>

Co-authored-by: scheric <38077357+scheric@users.noreply.github.com>
2020-10-06 19:54:20 +02:00
scheric
6ab9d0bc31 add common strings (#41350) 2020-10-06 18:50:32 +02:00
springstan
61d9067a49 Return empty dictionary at first for attributes (#41348) 2020-10-06 18:08:53 +02:00
Franck Nijhof
4d12fcc218 Fix TTS ID3 Tag capability check (#41343) 2020-10-06 17:49:14 +02:00
springstan
513f03eb1f Return attribute dict directly without temporary variable v2 (#41271) 2020-10-06 16:55:16 +02:00
Dave T
33e69fe4bf Update axis to use common strings (#41164)
* Update axis to use common strings

* Update common str device_unavailable to cannot_connect

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2020-10-06 16:54:18 +02:00
SNoof85
8b2df5bf99 Use reference strings in Smappee (#41337)
* Update strings.json

* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-06 16:51:36 +02:00
Maciej Bieniek
d9e48b483b Use name translation reference in AccuWeather config flow (#41338) 2020-10-06 16:49:02 +02:00
Charles Garwood
d6ad85bba7 Protect add/remove node services from invalid instance ID (#41334) 2020-10-06 09:54:46 -04:00
Guido Schmitz
bfb00b9bb5 Add battery state for devolo Home Control devices (#41329) 2020-10-06 15:43:12 +02:00
SNoof85
0460166c7c Use reference strings in Synology_DSM (#41333)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-06 15:35:36 +02:00
Teemu R
46b2c776db Fetch timers separately for xiaomi vacuums (#41330) 2020-10-06 15:26:59 +02:00
cgtobi
6065ab118f Add Netatmo weather trend sensors (#41318)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-06 15:25:12 +02:00
Paulus Schoutsen
4d5948b4d0 Use dict syntax (#41325) 2020-10-06 15:02:23 +02:00
Thibaut
61f919b18c Handle somfy error 404 during setup (#41298) 2020-10-06 15:02:03 +02:00
Edward Knight
8bcd6c1880 Rewrite imap_email_content tests to use pytest (#41200) 2020-10-06 15:01:25 +02:00
Franck Nijhof
357a0e9d7e Improve switch template tests, remove common test helpers (#41322) 2020-10-06 14:54:39 +02:00
Maciej Bieniek
ae54c21945 Use name reference and fix already_configured string for GIOS integration (#41323) 2020-10-06 14:54:02 +02:00
Ronan Murray
df4998d7cf Rewrite uk_transport tests to use pytest style (#41168) 2020-10-06 14:53:17 +02:00
Erik Montnemery
06e9489fc7 Add Tasmota integration (#39624)
* Add Tasmota integration

* Refactor

* Add tests, small improvements

* isort

* Attempt to fix tests failing with Python 3.8

* Revert "Attempt to fix tests failing with Python 3.8"

This reverts commit 11454f8a00136f068ea27204183fa3e62f3cd263.

* Fix tests failing with Python 3.8

* Cleanup tests

* Address review comments

* Address review comments

* Address review comments

* Use MAC address for device identification

* Bump hatasmota

* Bump hatasmota

* Apply suggestions from code review

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

* Fix indentation

* Remove preparation for device remove WS API

* Address review comments

* Remove useless try-except

* Tweak

* Improve tests

* Tweak

* Address review comments

* Correct test

* Update manifest.json

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-06 14:51:58 +02:00
SNoof85
3cf6535011 Use reference strings in Tile (#41328) 2020-10-06 14:44:14 +02:00
cgtobi
dcf0f9d3f3 Fix Netatmo wind angle (#41324) 2020-10-06 14:43:30 +02:00
cgtobi
d7890f35be Fix Netatmo rain sensor naming (#41326) 2020-10-06 14:42:50 +02:00
Ariana Hlavaty
8adc5ee452 Rewrite pushbullet unittest tests to pytest style test function (#41266) 2020-10-06 14:34:39 +02:00
Raman Gupta
06306f5dfe Add OZW WS API support for locks (#41186)
* add WS API support for locks and simplify lock service calls

* move return outside of try blocK

* fix rebase conflicts
2020-10-06 14:20:48 +02:00
Pigotka
e1578e5389 Use of reference strings in Almond config flow (#41284) 2020-10-06 14:12:12 +02:00
TopdRob
888c92aa5e Use common strings for Panasonic Viera (#41268)
* Update strings.json

* Update config_flow.py

* Update homeassistant/components/panasonic_viera/strings.json

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

* Update homeassistant/components/panasonic_viera/strings.json

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

* Update config_flow.py

* Update test_config_flow.py

* Update test_config_flow.py

* Fix failed tests

* revert line 530

* Fix remaining error key

* Remove not needed import

* Update const.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-06 14:07:38 +02:00
Charles Garwood
356ebc1128 Add cancel_command service for OpenZWave (#41285)
* Add cancel_command service for OpenZWave

* Raise ValueError if instance is None
2020-10-06 14:05:52 +02:00
Felipe Martins Diel
34416fcad3 Log device info in Broadlink error messages (#41307) 2020-10-06 08:02:14 -04:00
Steven Looman
c812812631 Don't set upnp config_entry.unique_id from setup entry (#40988)
* Don't set config_entry.unique_id from setup entry. Fixes #40168

* Ensure entry has a unique_id

* Add test test_flow_import_incomplete

* Add test test_flow_import_duplicate

* Re-add testing import_info

* Simplify import flow

* Remove not needed line

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-06 13:57:36 +02:00
Rob Bierbooms
b2b5f2ffcb Rewrite zwave init tests to pytest style test function (phase 1) (#41301) 2020-10-06 11:50:03 +02:00
SNoof85
c5653ec57b Use reference strings in konnected (#41290)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-06 11:49:46 +02:00
SNoof85
883c9b5e18 Add reauth_successful to base strings (#41316) 2020-10-06 11:29:53 +02:00
Ville Skyttä
0444f3de14 Move isort, pylint, and pytest configs to pyproject.toml (#40335) 2020-10-06 11:26:48 +02:00
Pigotka
ed9a40874d Use of reference strings in Transmission config flow (#41215) 2020-10-06 11:25:56 +02:00
Julian Engelhardt
14273e9e48 Rewrite statsd unittest tests to pytest style test functions (#41223) 2020-10-06 11:24:16 +02:00
springstan
014fe48096 Add pin to base strings for config flows (#41202) 2020-10-06 11:00:36 +02:00
SNoof85
c4401754be Use reference strings in iqvia (#41289) 2020-10-06 10:27:16 +02:00
SNoof85
3e2b95949f Use reference strings in Metoffice (#41295) 2020-10-06 10:26:49 +02:00
Björn Olsson Jarl
3abf30cf42 Rewrite sigfox unittest tests to pytest (#41302) 2020-10-06 10:16:41 +02:00
Paulus Schoutsen
e303064f75 Don't use asynctest directly (#41306) 2020-10-06 10:15:50 +02:00
SNoof85
949ab621c0 Use reference strings in ambient_station (#41276) 2020-10-06 10:15:11 +02:00
sycx2
956b735be6 Improve yessssms test notify (#41283) 2020-10-06 10:11:36 +02:00
Brett
b6b85d3e0c Fix reported temperatures in Maxcube (#41259) 2020-10-06 10:06:54 +02:00
Paulus Schoutsen
570d1e7d8f Bumped version to 0.116.0b5 2020-10-06 07:55:25 +00:00
J. Nick Koston
23be039b7f Prevent collecting states already referenced by domain or all (#41308)
The template engine would collect all the states in
a domain or all states while iterating even though
they were already included in all or the domain

This lead to the rate limit not being applied to
templates that iterated all states that also
accessed a collectable property because the engine
incorrectly believed they were specifically
referenced.
2020-10-06 07:55:18 +00:00
Bram Kragten
859632d636 Exclude media_dirs from YAML config check (#41299) 2020-10-06 07:55:18 +00:00
Andrew Sayre
874cbf808e Update pysmartthings (#41294) 2020-10-06 07:55:17 +00:00
J. Nick Koston
2fabd4edb8 Prevent collecting states already referenced by domain or all (#41308)
The template engine would collect all the states in
a domain or all states while iterating even though
they were already included in all or the domain

This lead to the rate limit not being applied to
templates that iterated all states that also
accessed a collectable property because the engine
incorrectly believed they were specifically
referenced.
2020-10-06 07:25:05 +02:00
Joakim Plate
999eeb39b9 Indicate to user that remote was turned off when call was attempted (#40715)
* Indicate to user that remote was turned off when call was attempted

* Catch exception in test

* Switch to warning log

* Apply suggestions from code review

Add suggested change to loggin
2020-10-06 06:12:39 +02:00
SNoof85
acb0307beb Use reference strings in Hunter Douglas PowerView (#41291) 2020-10-05 21:57:34 -05:00
Jason Rebelo
4d3802ff95 Rewrite reddit tests to pytest style tests (#41006)
*  rewrite reddit tests to pytest tests

*  add missing blocking
2020-10-05 20:33:31 -04:00
HomeAssistant Azure
bcfa4ac959 [ci skip] Translation update 2020-10-06 00:08:09 +00:00
Ariana Hlavaty
329e56fac0 Rewrite min_max unittest tests to pytest style test function (#41296)
* Rewrite min_max unittest tests to pytest style test function

For: #40866

* Use uppercase letters for constants

* Remove not needed line

* Fix missing rename to uppercase

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-05 22:57:58 +02:00
Andrew Sayre
8e6a616846 Update pysmartthings (#41294) 2020-10-05 22:12:38 +02:00
Bram Kragten
510e90803e Exclude media_dirs from YAML config check (#41299) 2020-10-05 22:09:47 +02:00
scheric
f2b73c05d6 add strings (#41297) 2020-10-05 14:56:47 -05:00
scheric
95c831648b add common strings (#41300) 2020-10-05 14:56:06 -05:00
SNoof85
7a12a16fc5 Use reference strings in iaqualink (#41292)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-05 14:55:12 -05:00
SNoof85
72cbdbbe36 Update strings.json (#41293) 2020-10-05 14:54:43 -05:00
Raman Gupta
6db4075a23 Add OZW node config parameters websocket commands (#40527)
* add websocket commands to retrieve and set config parameters for a node

* move set_config_parameter into generic function and refactor service and WS API

* add payload to return to make service call behave the same way it did before

* create response class

* update error message to pass tests

* move things a bit to reduce LOC

* add tests

* handle logging errors better and make new response class more generic to prepare for lock user code work

* remove unused function parameter

* invert check

* add additional error checking

* refactor a bit to remove repeat code

* revert log msg change

* one more refactor to create generic get_config_parameters function

* change if logic for consistency

* fix test

* add support to provide bool value in set_config_parameter service call

* standardize parameter names on service call

* add test coverage

* fix tests and message sending

* remove unnecessary logging import

* fix one test to get missing coverage

* update per martin and kpines reviews

* remove false assertion

* string line length

* add support for Decimal config param, remove node instance ID as input, and move helper functions to node.py

* cast Decimal appropriately

* revert change to support Decimal for config params since they are not supported as a config param type

* revert to using error arguments to make next PR for WS lock commands easier

* switch to class method and add guard for list Value not being a number

* update logic to use new openzwavemqtt util methods

* add support for bitsets

* use parent exception class

* bump openzwavemqtt version, remove node.py from .coveragerc and put file references in the right place

* add comment

* improve config validation

* remove bitset support from config validation

* re-add bitset support with some additional tests

* move send_result out of try block
2020-10-05 21:47:28 +02:00
Erik Montnemery
c777647233 Drop legacy_patchable_time from MQTT tests (#41287) 2020-10-05 21:39:44 +02:00
djtimca
985e4e1bd9 Bump pyvesync to version 1.2.1 (#41269)
* Bumped vesync dependency to updated 1.2 library to fix issue 40111.

* Returned to existing pyvesync library with bumped version.
2020-10-05 20:26:01 +02:00
Erik Montnemery
13dad34019 Reorder MQTT binary sensor tests (#41277) 2020-10-05 19:42:28 +02:00
Pigotka
7eaa304fc3 Use of reference strings in Heos config flow (#41282) 2020-10-05 12:22:02 -05:00
Pigotka
ac795ddcd0 Use of reference strings in Goalzero config flow (#41275) 2020-10-05 18:07:11 +02:00
Bram Kragten
56b5ddb06d Bumped version to 0.116.0b4 2020-10-05 18:05:31 +02:00
Bram Kragten
df371d99dc Updated frontend to 20201001.1 (#41273) 2020-10-05 18:03:37 +02:00
SNoof85
87b1d1b57f Use reference strings in Rainmachine (#41272) 2020-10-05 17:40:35 +02:00
Bram Kragten
bc2305561f Updated frontend to 20201001.1 (#41273) 2020-10-05 17:39:13 +02:00
SNoof85
8bae9b2124 Use reference strings in Tesla (#41270)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-05 16:41:16 +02:00
J. Nick Koston
4798f37c6e Convert States to dicts via as_dict only once (#41208)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-05 09:18:57 -05:00
TopdRob
2f54bf29ba Use reference strings in HomematicIP Cloud #40578 (#41243)
Co-authored-by: scheric <38077357+scheric@users.noreply.github.com>
2020-10-05 15:30:39 +02:00
SNoof85
b7ff0a5a49 Use reference strings in rainmachine (#41216) 2020-10-05 15:29:27 +02:00
J. Nick Koston
f50976a0b3 Switch to asyncio.wait for slow update warning implementation (#41184) 2020-10-05 15:28:15 +02:00
Diefferson Koderer Môro
dde465da48 Use common strings for Onvif config flow (#41170)
* Use common strings for Onvif config flow

* Fix tests

* Update homeassistant/components/onvif/strings.json

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-05 15:27:48 +02:00
SNoof85
c7027e2828 Use reference strings in Notion (#41211) 2020-10-05 15:13:37 +02:00
J. Nick Koston
20a136e2a1 Avoid event data serialization during recorder that we throw away (#41217)
We currently serialize the event data for state change events
and then replace it because we save the state in the states table.
Since the old state and new state are both contains in the event
the cost of serializing the data has a noticable impact when there
are many state changed events.
2020-10-05 15:08:47 +02:00
Diefferson Koderer Môro
44580b1c07 Use common strings for Flu Near You config flow (#41174) 2020-10-05 15:05:57 +02:00
J. Nick Koston
494d4a262a Add Profiler integration (#41175)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-05 07:57:07 -05:00
sycx2
e813d3ebf9 Improve template test sensor (#41199) 2020-10-05 14:52:31 +02:00
SNoof85
2763ace2bc Use reference strings in Tradfri (#41237) 2020-10-05 14:35:59 +02:00
SNoof85
f679acd3fa Use reference strings in Tesla (#41238) 2020-10-05 14:32:09 +02:00
Rob Bierbooms
5745e64cab Rewrite zwave node entity tests to pytest style test function (#41239) 2020-10-05 14:29:15 +02:00
Spartan-II-117
c02d9050b7 Use common Strings for Z-Wave config flow (#41161)
* Use common Strings for Z-Wave config flow

* Update strings.json

* Update config_flow.py
2020-10-05 14:26:06 +02:00
J. Nick Koston
15ade1232e Setup geo_location to only track the geo_location domain (#41254)
The trigger was watching for all states
2020-10-05 14:25:41 +02:00
TopdRob
c3eb56c592 Use common strings for Lutron Caseta config flow (#41241) 2020-10-05 14:23:34 +02:00
Diefferson Koderer Môro
def9c98c9b Use common strings for GDACS config flow (#41178)
* Use common strings for GDACS config flow

* Fix ci

* Update test_config_flow.py
2020-10-05 14:21:00 +02:00
Paulus Schoutsen
74b5db9ca5 Bumped version to 0.116.0b3 2020-10-05 12:05:54 +00:00
Paulus Schoutsen
6f4225b51d Add extended validation for script repeat/choose (#41265) 2020-10-05 12:04:33 +00:00
Paulus Schoutsen
b524cc9c56 Allow any value when triggering on state attribute (#41261) 2020-10-05 12:04:32 +00:00
Raman Gupta
a6d50ba89b Bump apprise version to avoid sync in async issues (#41253) 2020-10-05 12:04:31 +00:00
J. Nick Koston
228de5807c Remove manual rate_limit control directive from templates (#41225)
Increase default rate limit for all states and entire
domain states to one minute

Ensure specifically referenced entities are excluded from
the rate limit
2020-10-05 12:04:30 +00:00
Franck Nijhof
d4b40154e5 Remove deprecation invalidation version from cast integration (#41197) 2020-10-05 12:04:30 +00:00
Justin Paupore
6e3aa004c4 Fix TTS handling of non-ID3 metadata tags (#41191)
Change #40666 used mutagen's ID3 TextFrame to wrap metadata information.
While this is the correct behavior for container formats that use ID3
metadata tags, such as MP3 and linear PCM, Ogg container formats use
a different metadata format. For these containers, the metadata needs to
be a bare str, not wrapped in a TextFrame.
2020-10-05 12:04:29 +00:00
J. Nick Koston
149cc5cbeb Simplify template tracking and make it easier to follow (#41030) 2020-10-05 12:04:28 +00:00
Simone Chemelli
37acf9b165 Handle Shelly channel names (if available) for emeters devices (#40820) 2020-10-05 12:04:27 +00:00
Franck Nijhof
d7f4cfbb65 Improve demo media player platform tests (#41096) 2020-10-05 14:04:02 +02:00
Paulus Schoutsen
8ae3f575dd Add extended validation for script repeat/choose (#41265) 2020-10-05 14:03:48 +02:00
scheric
0a3db42d61 Use common strings in Ecobee config flow (#41257)
* Update common Strings

* one_instance_only -> single_instance_allowed
2020-10-05 13:53:11 +02:00
Dave T
5f695e789b Axis remove orphan string (#41166) 2020-10-05 13:27:12 +02:00
Paulus Schoutsen
fe2c16dc29 Allow any value when triggering on state attribute (#41261) 2020-10-05 12:53:12 +02:00
springstan
038c05d0ee Return attribute dict directly without temporary variable (#41206) 2020-10-05 12:51:48 +02:00
SNoof85
cf5c99d2a9 Use reference strings in Tuya (#41236) 2020-10-05 12:49:09 +02:00
SNoof85
d6fff02b11 Use reference strings in pvpc_hourly_pricing (#41214) 2020-10-05 12:22:29 +02:00
zetvio
979346f1ce Use references in blebox config flow (#41244) 2020-10-05 11:48:44 +02:00
zetvio
78b4c3981f Use reference strings in Samsung TV config flow (#41248)
* Use reference strings in samsungtv config flow

* Adjust samsungtv config flow tests
2020-10-05 11:45:35 +02:00
Ville Skyttä
56f0a68c49 Add and fix some Huawei LTE type hints (#41196) 2020-10-05 11:21:48 +02:00
Raman Gupta
baef8b033a Bump apprise version to avoid sync in async issues (#41253) 2020-10-05 10:24:18 +02:00
SNoof85
f145a8c8d1 Use reference strings in Myq (#41209) 2020-10-04 19:16:23 -05:00
SNoof85
116dd7ddf4 Use reference strings in Nuheat (#41213) 2020-10-04 19:15:14 -05:00
HomeAssistant Azure
8d1d585b40 [ci skip] Translation update 2020-10-05 00:04:23 +00:00
springstan
6102d05306 Remove unnecessary should poll from light classes (#41229) 2020-10-04 23:28:25 +02:00
springstan
b1ff69d9a3 Remove unnecessary should poll from cover classes (#41231) 2020-10-04 23:26:33 +02:00
Jeff H
a1f70e11ae Fix slack message icon override (#41212)
* Fix slack message icon override

Allows overriding the icon for individual slack
messages using either an emoji or a URL.

* Run python3 -m script.gen_requirements_all

* Add period to first line

* Add support for python 3.7 testing

AsyncMock is only available from python 3.8+. Prior to this,
CoroutineMock is used which doesn't mock the method so it
needs to be done manually.

* Fix tests for python3.7 compatibility

The Python3.7 mock call object doesn't have the kwargs helper property.

* Update default emoji test docstring
2020-10-04 14:17:24 -07:00
Björn Olsson Jarl
e64b8774ec Rewrite transport_nsw sensor tests to pytest tests (#41169)
* Improve transport_nsw sensor tests.

* patch fix.
2020-10-04 23:10:00 +02:00
Nikolai
27c3ce16c3 Fix spelling in telegram_bot services (#41235) 2020-10-04 22:52:02 +02:00
J. Nick Koston
51da605b9f Remove manual rate_limit control directive from templates (#41225)
Increase default rate limit for all states and entire
domain states to one minute

Ensure specifically referenced entities are excluded from
the rate limit
2020-10-04 22:40:04 +02:00
springstan
e75557c1f5 Remove unnecessary should poll from binary sensor classes (#41221) 2020-10-04 22:11:46 +02:00
Oren
dd26ab6b4e Rewrite threshold unittest tests to pytest style test functions (#41141)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-04 21:38:21 +02:00
springstan
f47d58d9c2 Remove unnecessary should poll from sensor classes (#41219)
* Remove unnecessary should poll from sensor classes

* Remove two more occurrences
2020-10-04 21:35:59 +02:00
springstan
e51be33e18 Remove unnecessary should poll from switch classes (#41218) 2020-10-04 21:31:02 +02:00
springstan
f17089e46e Remove unnecessary should poll from camera classes (#41228) 2020-10-04 21:26:59 +02:00
springstan
228e167b03 Remove unnecessary should poll from media player classes (#41220) 2020-10-04 21:26:09 +02:00
SNoof85
b8ed9fb4c0 Use reference strings in Nexia (#41210) 2020-10-04 15:38:52 +02:00
Paulus Schoutsen
e2921475e2 Fix flaky huawei test (#41204) 2020-10-04 15:24:07 +02:00
Rob Bierbooms
e97792adf0 Refactor dsmr tests (#39724) 2020-10-04 14:27:22 +02:00
Ronan Murray
fd065e7aea Rewite Radarr tests as in pytest style for #40879 (#41145) 2020-10-04 14:08:08 +02:00
Ariana Hlavaty
27dd4ca9b3 Rewrite ring unittest test to pytest (#41151)
For: #40886
2020-10-04 14:05:49 +02:00
Claudio Catterina
6765d395f9 Rewrite aurora tests to pytest style (#41144) 2020-10-04 13:58:16 +02:00
Eliot Wong
9ff8f03322 Rewrite dte_energy_bridge unittest tests to pytest style test functions (#41116) 2020-10-04 13:50:03 +02:00
Franck Nijhof
346be6fc3f Improve demo fan platform tests (#41123) 2020-10-04 13:49:13 +02:00
Eliot Wong
f7696fdb9f Rewrite simulated unittest tests to pytest style test functions (#41115) 2020-10-04 13:48:47 +02:00
scheric
c3ef05a37e Use common strings in Icloud config flow (#41188) 2020-10-04 13:32:53 +02:00
SNoof85
d5c88a4e3c Use reference strings in Coronavirus (#41057)
* Update strings.json

* Update strings.json
2020-10-04 13:29:41 +02:00
scheric
600b6c0e34 Use common strings in Geonetnz quakes config flow (#41192) 2020-10-04 13:28:59 +02:00
Franck Nijhof
4ca552e90a Bump version to 0.117.0dev0 (#40928) 2020-10-04 13:26:31 +02:00
Franck Nijhof
f95416bd98 Remove deprecation invalidation version from cast integration (#41197) 2020-10-04 12:54:03 +02:00
scheric
abfe575a58 Use common strings in hisense_aehw4a1 config flow (#41190) 2020-10-04 12:04:51 +02:00
Justin Paupore
b4799ba66d Fix TTS handling of non-ID3 metadata tags (#41191)
Change #40666 used mutagen's ID3 TextFrame to wrap metadata information.
While this is the correct behavior for container formats that use ID3
metadata tags, such as MP3 and linear PCM, Ogg container formats use
a different metadata format. For these containers, the metadata needs to
be a bare str, not wrapped in a TextFrame.
2020-10-04 11:59:53 +02:00
On Freund
a50405aa6e Fix kodi.add_to_playlist (#41185) 2020-10-04 10:53:44 +02:00
HomeAssistant Azure
f8c2d877aa [ci skip] Translation update 2020-10-04 00:05:05 +00:00
Abílio Costa
4aacc87425 Indentify IKEA and Phillips motion sensors correctly (#41111) 2020-10-03 19:52:21 -04:00
Guido Schmitz
a73daa5f20 Use the shared Zeroconf instance in devolo_home_control (#40800) 2020-10-03 15:31:19 -05:00
cgtobi
f9f17dc718 Update Kodi to no longer use protected methods (#40788)
* Replace protected methods

* Fix method name

* Bump PyKodi version to 0.2.1

* Reuse variable
2020-10-03 15:12:18 -05:00
Matthew Donoughe
b281e85c80 Lutron Caseta: update for light transition and cover stop (#41155)
Co-authored-by: J. Nick Koston <nick@koston.org>
2020-10-03 15:06:23 -05:00
Paulus Schoutsen
5c4ba23ca9 Bumped version to 0.116.0b2 2020-10-03 19:43:26 +00:00
Rohan Kapoor
abc42efe08 Treat optional input as optional in ZoneMinder config flow (#41156) 2020-10-03 19:43:12 +00:00
Alexei Chetroi
17ebc85b62 Bump up ZHA dependency (#41109) 2020-10-03 19:43:11 +00:00
Franck Nijhof
681cd92627 Fix referenced entity extraction when service call entity contains a template (#41107) 2020-10-03 19:43:10 +00:00
Baptiste Candellier
7fc4b196bd Fix SmartHab import flow (#41093) 2020-10-03 19:43:10 +00:00
Samantha
f114419359 Add full command details to exception Debug log (#41070) 2020-10-03 19:43:09 +00:00
Paulus Schoutsen
751f041009 Bump aioshelly to 0.3.4 (#41065) 2020-10-03 19:43:08 +00:00
J. Nick Koston
44b1b87e13 Ensure lights added after group is created have the correct state (#41034) 2020-10-03 19:43:07 +00:00
Marius
1ef3d856a6 Change Swap free mandatory arg (#41025)
to False
2020-10-03 19:43:06 +00:00
Alexei Chetroi
2707bbeb23 Better parsing of the ZHA device profile id (#41024) 2020-10-03 19:43:06 +00:00
J. Nick Koston
f89ba74410 Prevent template loop detection from triggering when all templates are self referencing (#41013) 2020-10-03 19:43:05 +00:00
Rohan Kapoor
95c3ac0c09 Treat optional input as optional in ZoneMinder config flow (#41156) 2020-10-03 21:34:52 +02:00
Guido Schmitz
daf3a29ae5 Use references in config flow of devolo_home_control (#40949) 2020-10-03 21:33:33 +02:00
J. Nick Koston
78dfaa72a2 Ensure lights added after group is created have the correct state (#41034) 2020-10-03 21:29:41 +02:00
Spartan-II-117
ed171a885b Use common Strings for Acmeda Config Flow (#41092) 2020-10-03 21:29:30 +02:00
Franck Nijhof
38d132addd Fix referenced entity extraction when service call entity contains a template (#41107) 2020-10-03 20:55:59 +02:00
Marius
00b3b9f183 Change Swap free mandatory arg (#41025)
to False
2020-10-03 20:55:00 +02:00
Rob Bierbooms
fc925790dc Use common strings for somfy config flow (#41150) 2020-10-03 20:18:48 +02:00
Rob Bierbooms
8e9e44e93f Use common strings for home connect config flow (#41153) 2020-10-03 20:15:53 +02:00
springstan
f919646519 Use already configured key in harmony and mikrotik (#41142) 2020-10-03 18:17:24 +02:00
SukramJ
5721225dde Reorg channel handling for Homematic IP Cloud (#41118) 2020-10-03 16:35:04 +02:00
springstan
c00915a6a7 Add ssl and verify_ssl to base strings for config flows (#40944)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-10-03 16:06:45 +02:00
Matej Plavevski
4fea7c6775 Replace minecraft translation strings with reference strings (#40997) 2020-10-03 16:02:03 +02:00
springstan
064a453604 Add already_in_progress to base strings for config flows (#40961) 2020-10-03 15:49:09 +02:00
springstan
04daa9a378 Add name to base strings for config flows (#40947)
* Add name to base strings for config flows

* Fix HA strings.json
2020-10-03 15:28:42 +02:00
springstan
7bafa921bb Add api token to base strings for config flows (#41133) 2020-10-03 15:26:37 +02:00
Thijs de Jong
406ac38c75 Use common string in Melcloud config flow (#41134)
* Use common string in Melcloud config flow

* Add missing config_flow
2020-10-03 15:24:48 +02:00
scheric
1b4254d1df Use common string in Solarlog config flow (#41130)
* Update common Strings

* Merge feadback
2020-10-03 15:22:15 +02:00
Daniel Hjelseth Høyer
4a1173c3de Update met config string (#41048)
* update config string met

* typo

* config strings
2020-10-03 15:18:05 +02:00
groot406
7b7bdd9d8f Use common strings in Powerwall config flow (#41137) 2020-10-03 15:14:36 +02:00
Spartan-II-117
030dd7d476 Use common strings for Google Cast config flow (#41086) 2020-10-03 15:12:17 +02:00
groot406
31ce68e91e Use common strings for Sentry config flow (#41087) 2020-10-03 15:04:22 +02:00
groot406
20bacb6918 Use reference strings for Zoneminder config flow (#41103) 2020-10-03 15:02:30 +02:00
scheric
f1cb8e209e Use common string in Ring config flow (#41132) 2020-10-03 14:54:27 +02:00
scheric
2a758699e6 Use common strings in Tado config flow (#41128) 2020-10-03 14:51:20 +02:00
scheric
861fe36f5d Use common strings in zha config flow (#41127) 2020-10-03 14:48:26 +02:00
Jason Madigan
529601eb82 Use reference strings in izone (#41125) 2020-10-03 14:44:38 +02:00
Jason Madigan
be41442a86 Use reference strings in Wemo (#41067) 2020-10-03 14:43:30 +02:00
Spartan-II-117
3208670b61 Use common strings for Mikrotik config flow (#41110) 2020-10-03 14:39:18 +02:00
Heine Furubotten
cb8d7fe575 Bump azure-servicebus to 0.50.3 (#41106) 2020-10-03 14:19:39 +02:00
groot406
a6136111aa use common string for "Port" (#41104) 2020-10-03 14:15:52 +02:00
Daniel Perna
8e4b10fb13 Update pyhomematic to 0.1.70 (#41108) 2020-10-03 14:15:11 +02:00
scheric
a4b25112ed Update common Strings (#41131) 2020-10-03 14:14:36 +02:00
Hmmbob
788cb0d1ce Remove excessive logging (#41120) 2020-10-03 14:13:42 +02:00
Jason Madigan
a3fef0f330 Use reference strings in lifx (#41124) 2020-10-03 14:12:52 +02:00
SNoof85
d0a1a6cba5 Update strings.json (#41051) 2020-10-03 14:11:25 +02:00
Jenny
8b30b6b312 Use reference strings for openweathermap (#41055) 2020-10-03 14:11:03 +02:00
Spartan-II-117
4c00ff98ea Use common Strings for Ambiclimate config flow (#41100) 2020-10-03 13:43:34 +02:00
groot406
01e47a977b Use common strings for Harmony config flow (#41094)
* Use common strings for harmony component

* Update homeassistant/components/harmony/strings.json

Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>

* use default key for common config flow strings

Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
2020-10-03 13:31:45 +02:00
Jason Madigan
ed867955f4 Use reference strings in sonos (#41122) 2020-10-03 12:02:12 +02:00
Ville Skyttä
32f7045c7c Upgrade flake8 to 3.8.4 (#41117)
https://flake8.pycqa.org/en/latest/release-notes/3.8.4.html
2020-10-03 10:11:22 +02:00
Daniel Hjelseth Høyer
16d5c145a9 Spread the load on the Tibber server (#40797)
* Tibber, Spread the load on the server

* start hour
2020-10-03 04:09:29 +02:00
Julian Engelhardt
473afc4837 Rewrite SQL tests to pytest style (#41016)
* Remove unittests and common mock from SQL component tests

* Switch to async versions of setup_component and block_till_done
2020-10-03 03:42:50 +02:00
Baptiste Candellier
9611e5223a Fix SmartHab import flow (#41093) 2020-10-03 03:26:08 +02:00
Alexei Chetroi
9765fc13e8 Bump up ZHA dependency (#41109) 2020-10-02 21:25:50 -04:00
Melvin
414633a129 Use references in Neato translation strings (#41009)
* Replace unexpected_error with unknown key in Neato

* Replace string with reference

* Revert the specific language json files back to unexpected_error

* Use reference for already_configured

* Change invalid_credentials to invalid_auth key

* Use reference for invalid_auth

* Use invalid_auth in the neato test

* Replace abort.invalid_credentials with invalid_auth
2020-10-03 02:42:07 +02:00
Chris Talkington
3a266fa116 Rewrite season sensor tests to pytest style (#40918)
* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* fix tests.

* Update sensor.py

* Update test_sensor.py

* fix tests.

* Update sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py
2020-10-03 02:24:29 +02:00
springstan
a2c3c33b22 Use core GitHub URL in all files (#41089) 2020-10-03 00:04:11 +02:00
SNoof85
005898a0d9 Use reference strings in Huawei LTE (#41011)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py

* Update strings.json

* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-02 22:43:57 +02:00
Maciej Bieniek
d3a0743fea Use reference strings in Abode (#41004)
* Use translation references

* Suggested change

* Remove unused string

* Rename invalid_credentials key

* Fix invalid_auth in manifest.json file
2020-10-02 21:59:55 +02:00
Matej Plavevski
a3aee85335 Use reference strings in JuiceNet (#41021)
* Reference Strings for JuiceNet

* Update strings.json

* Add Reference String for API Token
2020-10-02 21:57:26 +02:00
Brian Rogers
fdd86edf60 Use common strings for Rachio (#41090) 2020-10-02 21:50:31 +02:00
SNoof85
7492b60325 Use reference strings in Sense (#41046) 2020-10-02 21:47:31 +02:00
SNoof85
f654834d34 Use reference strings in Totalconnect (#41047)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-02 21:45:49 +02:00
SNoof85
4ab479d48d Use reference strings in Bsblan (#41049)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py

* Update strings.json
2020-10-02 21:43:13 +02:00
SNoof85
65611320d4 Use reference strings in Coolmaster (#41066)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-02 21:17:32 +02:00
SNoof85
135be787e2 Use reference strings in Firmata (#41073) 2020-10-02 21:11:25 +02:00
SNoof85
2e21ef3223 Use reference strings in Flick Electric (#41074) 2020-10-02 21:09:27 +02:00
SNoof85
4158cefeb9 Use reference strings in Flume (#41075) 2020-10-02 21:07:19 +02:00
SNoof85
87c1c16b31 Use reference strings in Garmin Connect (#41076) 2020-10-02 21:05:11 +02:00
SNoof85
e9b70511a2 Use reference strings in Glances (#41078) 2020-10-02 21:03:53 +02:00
SNoof85
c958ec887f Use reference strings in directv (#41059) 2020-10-02 21:00:00 +02:00
SNoof85
4afeaaedca Use reference strings in doorbird (#41061) 2020-10-02 20:58:05 +02:00
SNoof85
6a821d6a64 Use reference strings in elgato (#41063)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-02 20:55:54 +02:00
SNoof85
d282694efe Use reference strings in Dexcom (#41072)
* Update strings.json

* Update config_flow.py

* Update test_config_flow.py
2020-10-02 20:48:12 +02:00
Gerard
a3511a9a81 Use core GitHub URL in contributing guidelines (#41083)
Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
2020-10-02 20:42:33 +02:00
MatthewFlamm
29d10d3c35 Use already_configured_service in NWS strings (#41062) 2020-10-02 20:40:23 +02:00
SNoof85
8eeaf67cd1 Use reference strings in Griddy (#41079) 2020-10-02 12:24:33 -05:00
Oliver
1ff0f37f3a Update denonavr to 0.9.5 (#41058) 2020-10-02 19:02:04 +02:00
Samantha
bebf5368c1 Add full command details to exception Debug log (#41070) 2020-10-02 12:18:55 -04:00
Davey Chu
08cf400473 Use references in isy994 strings.json (#40990) 2020-10-02 18:07:20 +02:00
Paulus Schoutsen
576fbbe0be Bump aioshelly to 0.3.4 (#41065) 2020-10-02 15:27:45 +02:00
Maciej Bieniek
bba0bb1bad Fix the name of the translation key for Brother integration (#41054) 2020-10-02 15:06:28 +02:00
J. Nick Koston
ab17b4ab70 Simplify template tracking and make it easier to follow (#41030) 2020-10-02 07:27:39 -05:00
djtimca
bc8a0209cb Bump pyvesync to 1.2.0 (#40978) 2020-10-02 12:34:03 +02:00
SNoof85
68aafd4d23 Use reference strings in Wled (#40969) 2020-10-02 12:08:22 +02:00
Davey Chu
8dae2f4308 Use reference strings in forked_daapd (#40989) 2020-10-02 11:55:23 +02:00
Daniel Hjelseth Høyer
708ef3201e Update config string for Tibber (#41045) 2020-10-02 11:42:26 +02:00
SNoof85
db9110c399 Use reference strings in Vilfo (#41039) 2020-10-02 11:41:21 +02:00
dependabot[bot]
796cce79b0 Bump actions/upload-artifact from v2.1.4 to v2.2.0 (#41037)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-02 11:26:09 +02:00
Robert Svensson
552856203b Clean deCONZ tests to depend less on integration code (#41015) 2020-10-02 11:20:33 +02:00
Daniel Hjelseth Høyer
dfe3ee5387 Use reference strings in Tibber (#41038) 2020-10-02 09:17:06 +02:00
Paulus Schoutsen
22b4ad6308 Allow processing data in CoordinatorEntity before writing state (#40926) 2020-10-02 09:16:37 +02:00
Daniel Perna
187fec9a0c Update pyhomematic to 0.1.69 (#41010) 2020-10-02 09:06:05 +02:00
SNoof85
eeb06da514 Update strings.json (#40994) 2020-10-02 08:48:24 +02:00
Davey Chu
f56a750f77 Use references in agent_dvr strings.json (#40999) 2020-10-02 08:47:59 +02:00
MatthewFlamm
9373066cee Use string references for config flow in NWS (#41007) 2020-10-02 08:47:40 +02:00
J. Nick Koston
b1ba1a7134 Verify template sensors that reference other template sensors can reload (#41031) 2020-10-02 08:34:33 +02:00
Chris Talkington
afc388c55a Improve patching for nzbget sensor tests (#41032) 2020-10-02 08:32:22 +02:00
Daniel Hjelseth Høyer
9d3ddb8981 Scaffold: correct import (#40998) 2020-10-02 08:32:03 +02:00
Alexei Chetroi
f1f23c0453 Better parsing of the ZHA device profile id (#41024) 2020-10-01 21:47:33 -04:00
Davey Chu
aba3cdc7b3 Use references in guardian strings.json (#40987) 2020-10-01 19:16:15 -06:00
HomeAssistant Azure
81c6d48cb4 [ci skip] Translation update 2020-10-02 00:05:51 +00:00
J. Nick Koston
deedd41d62 Prevent template loop detection from triggering when all templates are self referencing (#41013) 2020-10-01 22:11:11 +02:00
Bram Kragten
1219c95f63 Update frontend to 20201001.0 (#40974) 2020-10-01 21:56:44 +02:00
jjlawren
8c4b571901 Plex websocket callback async cleanup (#40992) 2020-10-01 21:56:15 +02:00
Jason Rebelo
cad2304968 Rewrite remember_the_milk tests to pytest style tests (#41002)
*  rewrite remember_the_milk tests to pytest tests

*  rewrite reddit tests to pytest tests

* Revert " rewrite reddit tests to pytest tests"

This reverts commit 7eae35f69a.
Forgot to switch to a new branch 🙈
2020-10-01 21:55:04 +02:00
Davey Chu
4b225a87c5 Use references in airvisual strings.json (#41005) 2020-10-01 13:49:16 -06:00
J. Nick Koston
b45215f1d2 Implement template rate_limit directive (#40667) 2020-10-01 21:39:44 +02:00
jjlawren
b3464c5087 Remove unnecessary instance attribute in Plex reauth config flow (#41000)
* Avoid unnecessary instance attribute

* Don't need to enrich existing entry data
2020-10-01 21:38:57 +02:00
springstan
c7ebfdb403 Use single_instance_allowed for webhook config flows (#40965) 2020-10-01 20:44:13 +02:00
Melvin
17c6838b7f Replace references in august strings.json (#40993) 2020-10-01 13:13:50 -05:00
Melvin
4b8f91823c Use reference strings in elkm1 strings.json (#40996) 2020-10-01 13:12:44 -05:00
J. Nick Koston
6b509fd9db Prevent sqlalchemy from refetching the old_state_id as it will never change (#40982)
Disable expire_on_commit for the event writer. Since we never expect the
old_state_id to change in the database, it was never worth the expense of
refetching the id after the commit.
2020-10-01 19:57:52 +02:00
jjlawren
cf785b86db Minor fixes for Plex media browser (#39878) 2020-10-01 19:55:11 +02:00
Robert Svensson
c2ed743237 Improve deCONZ platforms (#40986)
* Use platform domain imports with the list of supported platforms

* Remove legacy async_setup_platform from platforms
2020-10-01 19:06:20 +02:00
Brian Rogers
40ea30da96 Fix Rachio switch state when paused (#40984) 2020-10-01 11:19:34 -05:00
jan iversen
639c864a76 Add test coverage for modbus switch (coil part) (#40696)
* Prepare test code for complex devices.

push entity_id to conftest, to make it common for all devices.

Add device to base_setup.

* Add test coverage for modbus switch (coil part).

* Update .coveragerc

* Update .coveragerc

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2020-10-01 11:00:26 -05:00
Melvin
b56ec71998 Replace strings in hvv_departures with references (#40980) 2020-10-01 17:08:19 +02:00
Melvin
2a05fe7270 Replace IP Address in strings.json (#40968) 2020-10-01 16:31:34 +02:00
tkdrob
6627ffff39 Clean up goalzero (#40817)
* cleanup goalzero code

* more cleanup

* mroe cleanup

* log defined exception to error

* return None if not configured

* return False if not configured
2020-10-01 16:15:24 +02:00
Simone Chemelli
7554c8d6c5 Add missing unit for signal strength (#40436)
* Added missing unit for signal strength

* Added one more unit

* Replaced string with variable

* Fixed wrong import

* Fix import

* Replaced string with variable

* Fixed wrong import

* Apply suggestions from code review

* Black

* Again a fix :-(

* iSort

* iSort after merge

Co-authored-by: springstan <46536646+springstan@users.noreply.github.com>
2020-10-01 16:14:29 +02:00
SNoof85
480066ba63 Add longitude and latitude common strings (#40963) 2020-10-01 15:36:57 +02:00
Melvin
e0d14603f1 Replace strings in atag component (#40935) 2020-10-01 15:33:44 +02:00
epenet
f90f6904e0 Upgrade surepy to 0.2.6 (#40964) 2020-10-01 15:05:50 +02:00
springstan
20f8bcc908 Use common strings in mqtt config flow (#40956) 2020-10-01 14:55:45 +02:00
springstan
bd1de3cd7c Use common strings in spotify config flow (#40957) 2020-10-01 14:53:33 +02:00
SNoof85
46e8655fcf Use reference strings for Nut configflow (#40966) 2020-10-01 14:51:05 +02:00
epenet
1d138f0773 Use common string in TPLink config flow (#40958) 2020-10-01 13:38:59 +02:00
Maciej Bieniek
670404f43a Use translation references for BraviaTV config flow (#40955) 2020-10-01 13:16:07 +02:00
Paulus Schoutsen
fb3de7e3e6 Test reloading webhook trigger (#40950) 2020-10-01 13:06:22 +02:00
Maciej Bieniek
0d523d7116 Use translation references for Brother config flow (#40953) 2020-10-01 13:02:53 +02:00
springstan
1b864aeccc Use common strings in adguard config flow (#40942) 2020-10-01 12:56:55 +02:00
Maciej Bieniek
75a6dacaba Use translation references for gios config flow (#40952) 2020-10-01 12:54:10 +02:00
SNoof85
3195ce5d56 Use of reference strings for Airly config flow (#40946) 2020-10-01 12:28:32 +02:00
springstan
a3b62cea6a Use common strings in roomba config flow (#40948) 2020-10-01 12:27:47 +02:00
Maciej Bieniek
d1c04750cd Add voltage, power factor and energy returned sensors to Shelly integration (#40681) 2020-10-01 12:08:03 +02:00
Simone Chemelli
b4b056b75b Handle Shelly channel names (if available) for emeters devices (#40820) 2020-10-01 12:07:18 +02:00
On Freund
04f87eedf5 Add context to event trigger (#40932) 2020-10-01 11:59:35 +02:00
SNoof85
78ebd1add9 Use of reference strings in meteo france config flow (#40939) 2020-10-01 11:36:26 +02:00
SNoof85
0a700f7272 Common strings in Freebox config flow (#40938) 2020-10-01 11:31:43 +02:00
Franck Nijhof
22ba6e06fd Use direct service calls in demo climate tests instead of climate common (#40934) 2020-10-01 11:22:30 +02:00
Bram Kragten
1eb086e86d Revert using own cast app for media (#40937) 2020-10-01 11:05:00 +02:00
Chris Talkington
d93141c1a9 Use DataUpdateCoordinator for canary (#40691)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-10-01 10:26:26 +02:00
J. Nick Koston
7285c7806f Seperate state change tracking from async_track_template_result into async_track_state_change_filtered (#40803) 2020-10-01 10:19:20 +02:00
jjlawren
be9ff3bd66 Accept new Plex websocket callback payloads (#40773) 2020-10-01 09:57:45 +02:00
cgtobi
6dc25ccc7b Fix Netatmo climate error when no boiler status is set (#40815) 2020-10-01 09:56:46 +02:00
Robert Svensson
9116061262 Add lock support to deCONZ (#40807)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-10-01 09:50:06 +02:00
Eliot Wong
95d228cace Rewrite worldclock unittest tests to pytest style test functions (#40922) 2020-10-01 09:42:23 +02:00
Robert Svensson
d95f83b5fb Improve logging to identify which deCONZ device is at fault (#40808) 2020-10-01 09:23:32 +02:00
Robert Svensson
2922d4675f Abort deCONZ config flow if no radio hardware is connected (#40811) 2020-10-01 09:23:12 +02:00
Antetokounpo
df1e910ac7 Update weather tests to pytest style (#40917) 2020-10-01 09:14:48 +02:00
dependabot[bot]
632bf4f7f7 Bump actions/setup-python from v2.1.2 to v2.1.3 (#40921)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from v2.1.2 to v2.1.3.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2.1.2...c181ffa198a1248f902bc2f7965d2f9a36c2d7f6)

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-01 09:06:53 +02:00
Eliot Wong
ad8ab183cb Rewrite random unittest tests to pytest style test functions (#40920) 2020-10-01 09:05:44 +02:00
Rob Bierbooms
c5041b41c8 Implement config and option flow for rfxtrx integration (#39117)
* Create option flow for Rfxtrx integration (#37982)

* Implement config flow for rfxtrx integration (#39299)

* Add config flow

* Add strings

* Add first series of tests

* Add tests

* Adjust tests according review comments

* Adjust strings

* Add executor for testing connection

* Change ports to dict

* Fix pylint issue

* Adjust tests

* Migrate config entry for rfxtrx integration (#39528)

* Add rfxtrx device connection validation when importing (#39582)

* Implement import connection validation

* Fix binary sensor tests

* Move rfxtrx data

* Fix cover tests

* Fix test init

* Fix light tests

* Fix sensor tests

* Fix switch tests

* Refactor rfxtrx test data

* Fix strings

* Fix check

* Rework device string in test code

* Add option to delete multiple rfxtrx devices (#39625)

* Opt to remove multiple devices

* Fix devices key

* Add tests (phase 1)

* Add tests (phase 2)

* Tweak remove devices test

* Implement device migration function in rfxtrx option flow (#39694)

* Prompt option to replace device

* Revert unwanted changes

* Add replace device function

* WIP replace entities

* Remove device/entities and update config entry

* Fix styling

* Add info

* Add test

* Fix strings

* Refactor building migration map

* Allow migration for all device types

* Add test to migrate control device

* Fixup some names

* Fixup entry names in test code

* Bump pyRFXtrx to 0.26 and deprecate debug config key (#40679)

* Create option flow for Rfxtrx integration (#37982)

* Implement config flow for rfxtrx integration (#39299)

* Add config flow

* Add strings

* Add first series of tests

* Add tests

* Adjust tests according review comments

* Adjust strings

* Add executor for testing connection

* Change ports to dict

* Fix pylint issue

* Adjust tests

* Migrate config entry for rfxtrx integration (#39528)

* Add rfxtrx device connection validation when importing (#39582)

* Implement import connection validation

* Fix binary sensor tests

* Move rfxtrx data

* Fix cover tests

* Fix test init

* Fix light tests

* Fix sensor tests

* Fix switch tests

* Refactor rfxtrx test data

* Fix strings

* Fix check

* Rework device string in test code

* Add option to delete multiple rfxtrx devices (#39625)

* Opt to remove multiple devices

* Fix devices key

* Add tests (phase 1)

* Add tests (phase 2)

* Tweak remove devices test

* Implement device migration function in rfxtrx option flow (#39694)

* Prompt option to replace device

* Revert unwanted changes

* Add replace device function

* WIP replace entities

* Remove device/entities and update config entry

* Fix styling

* Add info

* Add test

* Fix strings

* Refactor building migration map

* Allow migration for all device types

* Add test to migrate control device

* Fixup some names

* Fixup entry names in test code

* Bump version number

* Remove debug key from connect

* Remove debug option from config flow

* Remove debug from tests

* Fix event test

* Add cv.deprecated

* Fix test

* Fix config schema

* Add timeout on connection

* Rework config schema

* Fix schema...again

* Prevent creation of duplicate device in rfxtrx option flow (#40656)
2020-10-01 08:55:57 +02:00
Aaron Bach
44e5ec58b0 Bump simplisafe-python to 9.4.1 (#40819)
* Bump simplisafe-python to 9.4.0

* One more bump
2020-09-30 19:20:10 -06:00
Alexei Chetroi
9fa23f6479 Bump up zha dependencies (#40914) 2020-09-30 20:53:00 -04:00
HomeAssistant Azure
7d39ecffa0 [ci skip] Translation update 2020-10-01 00:04:01 +00:00
Khole
c0c38fa6d4 Update Pyhiveapi Library Version (#40804)
* Update Pyhiveapi Library Version

This fixs an issue caused by a change in authentication method by hive

* Update Library Version
2020-10-01 00:02:42 +02:00
Anders Melchiorsen
e08934ee4c Support adding Spotify share links to the Sonos queue (#40802) 2020-09-30 21:19:41 +02:00
11693 changed files with 370755 additions and 103564 deletions

View File

@@ -23,12 +23,16 @@ omit =
homeassistant/components/adguard/sensor.py
homeassistant/components/adguard/switch.py
homeassistant/components/ads/*
homeassistant/components/aemet/abstract_aemet_sensor.py
homeassistant/components/aemet/weather_update_coordinator.py
homeassistant/components/aftership/sensor.py
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/airvisual/__init__.py
homeassistant/components/airvisual/air_quality.py
homeassistant/components/airvisual/sensor.py
@@ -48,7 +52,9 @@ omit =
homeassistant/components/anel_pwrctrl/switch.py
homeassistant/components/anthemav/media_player.py
homeassistant/components/apcupsd/*
homeassistant/components/apple_tv/*
homeassistant/components/apple_tv/__init__.py
homeassistant/components/apple_tv/media_player.py
homeassistant/components/apple_tv/remote.py
homeassistant/components/aqualogic/*
homeassistant/components/aquostv/media_player.py
homeassistant/components/arcam_fmj/media_player.py
@@ -63,13 +69,17 @@ omit =
homeassistant/components/arwn/sensor.py
homeassistant/components/asterisk_cdr/mailbox.py
homeassistant/components/asterisk_mbox/*
homeassistant/components/asuswrt/__init__.py
homeassistant/components/asuswrt/router.py
homeassistant/components/aten_pe/*
homeassistant/components/atome/*
homeassistant/components/aurora/__init__.py
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/avri/const.py
homeassistant/components/avri/sensor.py
homeassistant/components/azure_devops/__init__.py
homeassistant/components/azure_devops/const.py
homeassistant/components/azure_devops/sensor.py
@@ -97,10 +107,12 @@ omit =
homeassistant/components/bme280/sensor.py
homeassistant/components/bme680/sensor.py
homeassistant/components/bmp280/sensor.py
homeassistant/components/bmw_connected_drive/*
homeassistant/components/bom/camera.py
homeassistant/components/bom/sensor.py
homeassistant/components/bom/weather.py
homeassistant/components/bmw_connected_drive/__init__.py
homeassistant/components/bmw_connected_drive/binary_sensor.py
homeassistant/components/bmw_connected_drive/device_tracker.py
homeassistant/components/bmw_connected_drive/lock.py
homeassistant/components/bmw_connected_drive/notify.py
homeassistant/components/bmw_connected_drive/sensor.py
homeassistant/components/braviatv/__init__.py
homeassistant/components/braviatv/const.py
homeassistant/components/braviatv/media_player.py
@@ -122,7 +134,6 @@ omit =
homeassistant/components/buienradar/weather.py
homeassistant/components/caldav/calendar.py
homeassistant/components/canary/camera.py
homeassistant/components/cast/*
homeassistant/components/cert_expiry/helper.py
homeassistant/components/channels/*
homeassistant/components/circuit/*
@@ -134,12 +145,12 @@ omit =
homeassistant/components/clickatell/notify.py
homeassistant/components/clicksend/notify.py
homeassistant/components/clicksend_tts/notify.py
homeassistant/components/cloudflare/*
homeassistant/components/climacell/weather.py
homeassistant/components/cmus/media_player.py
homeassistant/components/co2signal/*
homeassistant/components/coinbase/*
homeassistant/components/comed_hourly_pricing/sensor.py
homeassistant/components/comfoconnect/*
homeassistant/components/comfoconnect/fan.py
homeassistant/components/concord232/alarm_control_panel.py
homeassistant/components/concord232/binary_sensor.py
homeassistant/components/control4/__init__.py
@@ -151,7 +162,6 @@ omit =
homeassistant/components/coolmaster/const.py
homeassistant/components/cppm_tracker/device_tracker.py
homeassistant/components/cpuspeed/sensor.py
homeassistant/components/crimereports/sensor.py
homeassistant/components/cups/sensor.py
homeassistant/components/currencylayer/sensor.py
homeassistant/components/daikin/*
@@ -167,7 +177,6 @@ omit =
homeassistant/components/denonavr/media_player.py
homeassistant/components/denonavr/receiver.py
homeassistant/components/deutsche_bahn/sensor.py
homeassistant/components/devolo_home_control/__init__.py
homeassistant/components/devolo_home_control/binary_sensor.py
homeassistant/components/devolo_home_control/climate.py
homeassistant/components/devolo_home_control/const.py
@@ -210,7 +219,12 @@ omit =
homeassistant/components/ecobee/notify.py
homeassistant/components/ecobee/sensor.py
homeassistant/components/ecobee/weather.py
homeassistant/components/econet/*
homeassistant/components/econet/__init__.py
homeassistant/components/econet/binary_sensor.py
homeassistant/components/econet/climate.py
homeassistant/components/econet/const.py
homeassistant/components/econet/sensor.py
homeassistant/components/econet/water_heater.py
homeassistant/components/ecovacs/*
homeassistant/components/edl21/*
homeassistant/components/eddystone_temperature/sensor.py
@@ -259,11 +273,18 @@ omit =
homeassistant/components/evohome/*
homeassistant/components/ezviz/*
homeassistant/components/familyhub/camera.py
homeassistant/components/faa_delays/__init__.py
homeassistant/components/faa_delays/binary_sensor.py
homeassistant/components/fastdotcom/*
homeassistant/components/ffmpeg/camera.py
homeassistant/components/fibaro/*
homeassistant/components/filesize/sensor.py
homeassistant/components/fints/sensor.py
homeassistant/components/fireservicerota/__init__.py
homeassistant/components/fireservicerota/binary_sensor.py
homeassistant/components/fireservicerota/const.py
homeassistant/components/fireservicerota/sensor.py
homeassistant/components/fireservicerota/switch.py
homeassistant/components/firmata/__init__.py
homeassistant/components/firmata/binary_sensor.py
homeassistant/components/firmata/board.py
@@ -290,16 +311,18 @@ omit =
homeassistant/components/folder_watcher/*
homeassistant/components/foobot/sensor.py
homeassistant/components/fortios/device_tracker.py
homeassistant/components/foscam/__init__.py
homeassistant/components/foscam/camera.py
homeassistant/components/foscam/const.py
homeassistant/components/foursquare/*
homeassistant/components/free_mobile/notify.py
homeassistant/components/freebox/__init__.py
homeassistant/components/freebox/device_tracker.py
homeassistant/components/freebox/router.py
homeassistant/components/freebox/sensor.py
homeassistant/components/freebox/switch.py
homeassistant/components/fritz/device_tracker.py
homeassistant/components/fritzbox_callmonitor/__init__.py
homeassistant/components/fritzbox_callmonitor/const.py
homeassistant/components/fritzbox_callmonitor/base.py
homeassistant/components/fritzbox_callmonitor/sensor.py
homeassistant/components/fritzbox_netmonitor/sensor.py
homeassistant/components/fronius/sensor.py
@@ -309,6 +332,7 @@ omit =
homeassistant/components/garmin_connect/__init__.py
homeassistant/components/garmin_connect/const.py
homeassistant/components/garmin_connect/sensor.py
homeassistant/components/garmin_connect/alarm_util.py
homeassistant/components/gc100/*
homeassistant/components/geniushub/*
homeassistant/components/geizhals/sensor.py
@@ -340,14 +364,22 @@ omit =
homeassistant/components/guardian/sensor.py
homeassistant/components/guardian/switch.py
homeassistant/components/guardian/util.py
homeassistant/components/habitica/*
homeassistant/components/habitica/__init__.py
homeassistant/components/habitica/const.py
homeassistant/components/habitica/sensor.py
homeassistant/components/hangouts/*
homeassistant/components/hangouts/__init__.py
homeassistant/components/hangouts/const.py
homeassistant/components/hangouts/hangouts_bot.py
homeassistant/components/hangouts/hangups_utils.py
homeassistant/components/harman_kardon_avr/media_player.py
homeassistant/components/harmony/*
homeassistant/components/harmony/const.py
homeassistant/components/harmony/data.py
homeassistant/components/harmony/remote.py
homeassistant/components/harmony/util.py
homeassistant/components/hassio/binary_sensor.py
homeassistant/components/hassio/entity.py
homeassistant/components/hassio/sensor.py
homeassistant/components/haveibeenpwned/sensor.py
homeassistant/components/hdmi_cec/*
homeassistant/components/heatmiser/climate.py
@@ -355,7 +387,13 @@ omit =
homeassistant/components/hikvisioncam/switch.py
homeassistant/components/hisense_aehw4a1/*
homeassistant/components/hitron_coda/device_tracker.py
homeassistant/components/hive/*
homeassistant/components/hive/__init__.py
homeassistant/components/hive/climate.py
homeassistant/components/hive/binary_sensor.py
homeassistant/components/hive/light.py
homeassistant/components/hive/sensor.py
homeassistant/components/hive/switch.py
homeassistant/components/hive/water_heater.py
homeassistant/components/hlk_sw16/__init__.py
homeassistant/components/hlk_sw16/switch.py
homeassistant/components/home_connect/*
@@ -363,6 +401,9 @@ omit =
homeassistant/components/homematic/climate.py
homeassistant/components/homematic/cover.py
homeassistant/components/homematic/notify.py
homeassistant/components/home_plus_control/api.py
homeassistant/components/home_plus_control/helpers.py
homeassistant/components/home_plus_control/switch.py
homeassistant/components/homeworks/*
homeassistant/components/honeywell/climate.py
homeassistant/components/horizon/media_player.py
@@ -380,8 +421,6 @@ omit =
homeassistant/components/hvv_departures/sensor.py
homeassistant/components/hvv_departures/__init__.py
homeassistant/components/hydrawise/*
homeassistant/components/hyperion/light.py
homeassistant/components/ialarm/alarm_control_panel.py
homeassistant/components/iammeter/sensor.py
homeassistant/components/iaqualink/binary_sensor.py
homeassistant/components/iaqualink/climate.py
@@ -444,7 +483,11 @@ omit =
homeassistant/components/kaiterra/*
homeassistant/components/kankun/switch.py
homeassistant/components/keba/*
homeassistant/components/keenetic_ndms2/__init__.py
homeassistant/components/keenetic_ndms2/binary_sensor.py
homeassistant/components/keenetic_ndms2/const.py
homeassistant/components/keenetic_ndms2/device_tracker.py
homeassistant/components/keenetic_ndms2/router.py
homeassistant/components/kef/*
homeassistant/components/keyboard/*
homeassistant/components/keyboard_remote/*
@@ -464,8 +507,20 @@ omit =
homeassistant/components/lametric/*
homeassistant/components/lannouncer/notify.py
homeassistant/components/lastfm/sensor.py
homeassistant/components/launch_library/const.py
homeassistant/components/launch_library/sensor.py
homeassistant/components/lcn/*
homeassistant/components/lcn/__init__.py
homeassistant/components/lcn/binary_sensor.py
homeassistant/components/lcn/climate.py
homeassistant/components/lcn/const.py
homeassistant/components/lcn/cover.py
homeassistant/components/lcn/helpers.py
homeassistant/components/lcn/light.py
homeassistant/components/lcn/scene.py
homeassistant/components/lcn/schemas.py
homeassistant/components/lcn/sensor.py
homeassistant/components/lcn/services.py
homeassistant/components/lcn/switch.py
homeassistant/components/lg_netcast/media_player.py
homeassistant/components/lg_soundbar/media_player.py
homeassistant/components/life360/*
@@ -499,12 +554,15 @@ omit =
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
homeassistant/components/lyric/sensor.py
homeassistant/components/magicseaweed/sensor.py
homeassistant/components/mailgun/notify.py
homeassistant/components/map/*
homeassistant/components/mastodon/notify.py
homeassistant/components/matrix/*
homeassistant/components/maxcube/*
homeassistant/components/mcp23017/*
homeassistant/components/media_extractor/*
homeassistant/components/mediaroom/media_player.py
@@ -537,45 +595,57 @@ omit =
homeassistant/components/minio/*
homeassistant/components/mitemp_bt/sensor.py
homeassistant/components/mjpeg/camera.py
homeassistant/components/mobile_app/*
homeassistant/components/mochad/*
homeassistant/components/modbus/climate.py
homeassistant/components/modbus/cover.py
homeassistant/components/modbus/modbus.py
homeassistant/components/modbus/switch.py
homeassistant/components/modbus/sensor.py
homeassistant/components/modem_callerid/sensor.py
homeassistant/components/motion_blinds/__init__.py
homeassistant/components/motion_blinds/const.py
homeassistant/components/motion_blinds/cover.py
homeassistant/components/motion_blinds/sensor.py
homeassistant/components/mpchc/media_player.py
homeassistant/components/mpd/media_player.py
homeassistant/components/mqtt_room/sensor.py
homeassistant/components/msteams/notify.py
homeassistant/components/mullvad/__init__.py
homeassistant/components/mullvad/binary_sensor.py
homeassistant/components/nest/const.py
homeassistant/components/mvglive/sensor.py
homeassistant/components/mychevy/*
homeassistant/components/mycroft/*
homeassistant/components/mycroft/notify.py
homeassistant/components/mysensors/*
homeassistant/components/mysensors/__init__.py
homeassistant/components/mysensors/binary_sensor.py
homeassistant/components/mysensors/climate.py
homeassistant/components/mysensors/const.py
homeassistant/components/mysensors/cover.py
homeassistant/components/mysensors/device.py
homeassistant/components/mysensors/device_tracker.py
homeassistant/components/mysensors/gateway.py
homeassistant/components/mysensors/handler.py
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/n26/*
homeassistant/components/nad/media_player.py
homeassistant/components/nanoleaf/light.py
homeassistant/components/neato/__init__.py
homeassistant/components/neato/api.py
homeassistant/components/neato/camera.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/*
homeassistant/components/netatmo/__init__.py
homeassistant/components/netatmo/api.py
homeassistant/components/netatmo/camera.py
homeassistant/components/netatmo/climate.py
homeassistant/components/netatmo/const.py
homeassistant/components/netatmo/data_handler.py
homeassistant/components/netatmo/helper.py
homeassistant/components/netatmo/light.py
homeassistant/components/netatmo/netatmo_entity_base.py
homeassistant/components/netatmo/sensor.py
homeassistant/components/netatmo/webhook.py
homeassistant/components/nest/legacy/*
homeassistant/components/netdata/sensor.py
homeassistant/components/netgear/device_tracker.py
homeassistant/components/netgear_lte/*
@@ -595,7 +665,8 @@ omit =
homeassistant/components/norway_air/air_quality.py
homeassistant/components/notify_events/notify.py
homeassistant/components/nsw_fuel_station/sensor.py
homeassistant/components/nuimo_controller/*
homeassistant/components/nuki/__init__.py
homeassistant/components/nuki/const.py
homeassistant/components/nuki/lock.py
homeassistant/components/nut/sensor.py
homeassistant/components/nx584/alarm_control_panel.py
@@ -609,8 +680,11 @@ omit =
homeassistant/components/omnilogic/__init__.py
homeassistant/components/omnilogic/common.py
homeassistant/components/omnilogic/sensor.py
homeassistant/components/onewire/const.py
homeassistant/components/onewire/sensor.py
homeassistant/components/ondilo_ico/__init__.py
homeassistant/components/ondilo_ico/api.py
homeassistant/components/ondilo_ico/const.py
homeassistant/components/ondilo_ico/oauth_impl.py
homeassistant/components/ondilo_ico/sensor.py
homeassistant/components/onkyo/media_player.py
homeassistant/components/onvif/__init__.py
homeassistant/components/onvif/base.py
@@ -638,7 +712,6 @@ omit =
homeassistant/components/openuv/sensor.py
homeassistant/components/openweathermap/sensor.py
homeassistant/components/openweathermap/weather.py
homeassistant/components/openweathermap/forecast_update_coordinator.py
homeassistant/components/openweathermap/weather_update_coordinator.py
homeassistant/components/openweathermap/abstract_owm_sensor.py
homeassistant/components/opnsense/*
@@ -651,26 +724,35 @@ omit =
homeassistant/components/ovo_energy/__init__.py
homeassistant/components/ovo_energy/const.py
homeassistant/components/ovo_energy/sensor.py
homeassistant/components/ozw/__init__.py
homeassistant/components/ozw/entity.py
homeassistant/components/ozw/services.py
homeassistant/components/panasonic_bluray/media_player.py
homeassistant/components/panasonic_viera/media_player.py
homeassistant/components/pandora/media_player.py
homeassistant/components/pcal9535a/*
homeassistant/components/pencom/switch.py
homeassistant/components/philips_js/__init__.py
homeassistant/components/philips_js/media_player.py
homeassistant/components/philips_js/remote.py
homeassistant/components/pi_hole/sensor.py
homeassistant/components/pi4ioe5v9xxxx/binary_sensor.py
homeassistant/components/pi4ioe5v9xxxx/switch.py
homeassistant/components/picotts/tts.py
homeassistant/components/piglow/light.py
homeassistant/components/pilight/*
homeassistant/components/ping/__init__.py
homeassistant/components/ping/const.py
homeassistant/components/ping/binary_sensor.py
homeassistant/components/ping/device_tracker.py
homeassistant/components/pioneer/media_player.py
homeassistant/components/pjlink/media_player.py
homeassistant/components/plaato/*
homeassistant/components/plaato/__init__.py
homeassistant/components/plaato/binary_sensor.py
homeassistant/components/plaato/const.py
homeassistant/components/plaato/entity.py
homeassistant/components/plaato/sensor.py
homeassistant/components/plex/media_player.py
homeassistant/components/plex/sensor.py
homeassistant/components/plum_lightpad/light.py
homeassistant/components/pocketcasts/sensor.py
homeassistant/components/point/*
@@ -685,7 +767,6 @@ omit =
homeassistant/components/prowl/notify.py
homeassistant/components/proxmoxve/*
homeassistant/components/proxy/camera.py
homeassistant/components/ptvsd/*
homeassistant/components/pulseaudio_loopback/switch.py
homeassistant/components/pushbullet/notify.py
homeassistant/components/pushbullet/sensor.py
@@ -712,7 +793,9 @@ omit =
homeassistant/components/rainforest_eagle/sensor.py
homeassistant/components/raspihats/*
homeassistant/components/raspyrfm/*
homeassistant/components/recollect_waste/__init__.py
homeassistant/components/recollect_waste/sensor.py
homeassistant/components/recorder/repack.py
homeassistant/components/recswitch/switch.py
homeassistant/components/reddit/*
homeassistant/components/rejseplanen/sensor.py
@@ -720,11 +803,12 @@ omit =
homeassistant/components/repetier/__init__.py
homeassistant/components/repetier/sensor.py
homeassistant/components/remote_rpi_gpio/*
homeassistant/components/rest/binary_sensor.py
homeassistant/components/rest/notify.py
homeassistant/components/rest/switch.py
homeassistant/components/ring/camera.py
homeassistant/components/ripple/sensor.py
homeassistant/components/rituals_perfume_genie/switch.py
homeassistant/components/rituals_perfume_genie/__init__.py
homeassistant/components/rocketchat/notify.py
homeassistant/components/roomba/binary_sensor.py
homeassistant/components/roomba/braava.py
@@ -734,6 +818,7 @@ omit =
homeassistant/components/roomba/vacuum.py
homeassistant/components/roon/__init__.py
homeassistant/components/roon/const.py
homeassistant/components/roon/media_browser.py
homeassistant/components/roon/media_player.py
homeassistant/components/roon/server.py
homeassistant/components/route53/*
@@ -749,10 +834,14 @@ omit =
homeassistant/components/russound_rnet/media_player.py
homeassistant/components/sabnzbd/*
homeassistant/components/saj/sensor.py
homeassistant/components/salt/device_tracker.py
homeassistant/components/satel_integra/*
homeassistant/components/schluter/*
homeassistant/components/scrape/sensor.py
homeassistant/components/screenlogic/__init__.py
homeassistant/components/screenlogic/binary_sensor.py
homeassistant/components/screenlogic/climate.py
homeassistant/components/screenlogic/sensor.py
homeassistant/components/screenlogic/switch.py
homeassistant/components/scsgate/*
homeassistant/components/scsgate/cover.py
homeassistant/components/sendgrid/notify.py
@@ -769,17 +858,18 @@ omit =
homeassistant/components/shodan/sensor.py
homeassistant/components/shelly/__init__.py
homeassistant/components/shelly/binary_sensor.py
homeassistant/components/shelly/cover.py
homeassistant/components/shelly/entity.py
homeassistant/components/shelly/light.py
homeassistant/components/shelly/sensor.py
homeassistant/components/shelly/switch.py
homeassistant/components/shelly/utils.py
homeassistant/components/sht31/sensor.py
homeassistant/components/sigfox/sensor.py
homeassistant/components/simplepush/notify.py
homeassistant/components/simplisafe/__init__.py
homeassistant/components/simplisafe/alarm_control_panel.py
homeassistant/components/simplisafe/binary_sensor.py
homeassistant/components/simplisafe/lock.py
homeassistant/components/simplisafe/sensor.py
homeassistant/components/simulated/sensor.py
homeassistant/components/sisyphus/*
homeassistant/components/sky_hub/*
@@ -809,10 +899,12 @@ omit =
homeassistant/components/solaredge_local/sensor.py
homeassistant/components/solarlog/*
homeassistant/components/solax/sensor.py
homeassistant/components/soma/cover.py
homeassistant/components/soma/__init__.py
homeassistant/components/soma/cover.py
homeassistant/components/soma/sensor.py
homeassistant/components/somfy/*
homeassistant/components/somfy_mylink/*
homeassistant/components/somfy_mylink/__init__.py
homeassistant/components/somfy_mylink/cover.py
homeassistant/components/sonos/*
homeassistant/components/sony_projector/switch.py
homeassistant/components/spc/*
@@ -822,7 +914,9 @@ omit =
homeassistant/components/spotcrime/sensor.py
homeassistant/components/spotify/__init__.py
homeassistant/components/spotify/media_player.py
homeassistant/components/spotify/system_health.py
homeassistant/components/squeezebox/__init__.py
homeassistant/components/squeezebox/browse_media.py
homeassistant/components/squeezebox/media_player.py
homeassistant/components/starline/*
homeassistant/components/starlingbank/sensor.py
@@ -842,7 +936,6 @@ omit =
homeassistant/components/switcher_kis/switch.py
homeassistant/components/switchmate/switch.py
homeassistant/components/syncthru/sensor.py
homeassistant/components/synology/camera.py
homeassistant/components/synology_chat/notify.py
homeassistant/components/synology_dsm/__init__.py
homeassistant/components/synology_dsm/binary_sensor.py
@@ -910,8 +1003,12 @@ omit =
homeassistant/components/toon/sensor.py
homeassistant/components/toon/switch.py
homeassistant/components/torque/sensor.py
homeassistant/components/totalconnect/*
homeassistant/components/totalconnect/__init__.py
homeassistant/components/totalconnect/alarm_control_panel.py
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
@@ -928,13 +1025,19 @@ omit =
homeassistant/components/transmission/const.py
homeassistant/components/transmission/errors.py
homeassistant/components/travisci/sensor.py
homeassistant/components/tuya/*
homeassistant/components/tuya/__init__.py
homeassistant/components/tuya/climate.py
homeassistant/components/tuya/const.py
homeassistant/components/tuya/cover.py
homeassistant/components/tuya/fan.py
homeassistant/components/tuya/light.py
homeassistant/components/tuya/scene.py
homeassistant/components/tuya/switch.py
homeassistant/components/twentemilieu/const.py
homeassistant/components/twentemilieu/sensor.py
homeassistant/components/twilio_call/notify.py
homeassistant/components/twilio_sms/notify.py
homeassistant/components/twitter/notify.py
homeassistant/components/ubee/device_tracker.py
homeassistant/components/ubus/device_tracker.py
homeassistant/components/ue_smart_radio/media_player.py
homeassistant/components/unifiled/*
@@ -942,7 +1045,9 @@ omit =
homeassistant/components/upb/const.py
homeassistant/components/upb/light.py
homeassistant/components/upb/scene.py
homeassistant/components/upcloud/*
homeassistant/components/upcloud/__init__.py
homeassistant/components/upcloud/binary_sensor.py
homeassistant/components/upcloud/switch.py
homeassistant/components/upnp/*
homeassistant/components/upc_connect/*
homeassistant/components/uptimerobot/binary_sensor.py
@@ -959,12 +1064,20 @@ omit =
homeassistant/components/velbus/switch.py
homeassistant/components/velux/*
homeassistant/components/venstar/climate.py
homeassistant/components/verisure/*
homeassistant/components/verisure/__init__.py
homeassistant/components/verisure/alarm_control_panel.py
homeassistant/components/verisure/binary_sensor.py
homeassistant/components/verisure/camera.py
homeassistant/components/verisure/coordinator.py
homeassistant/components/verisure/lock.py
homeassistant/components/verisure/sensor.py
homeassistant/components/verisure/switch.py
homeassistant/components/versasense/*
homeassistant/components/vesync/__init__.py
homeassistant/components/vesync/common.py
homeassistant/components/vesync/const.py
homeassistant/components/vesync/fan.py
homeassistant/components/vesync/light.py
homeassistant/components/vesync/switch.py
homeassistant/components/viaggiatreno/sensor.py
homeassistant/components/vicare/*
@@ -976,6 +1089,7 @@ omit =
homeassistant/components/vlc_telnet/media_player.py
homeassistant/components/volkszaehler/sensor.py
homeassistant/components/volumio/__init__.py
homeassistant/components/volumio/browse_media.py
homeassistant/components/volumio/media_player.py
homeassistant/components/volvooncall/*
homeassistant/components/w800rf32/*
@@ -985,7 +1099,6 @@ omit =
homeassistant/components/watson_tts/tts.py
homeassistant/components/waze_travel_time/sensor.py
homeassistant/components/webostv/*
homeassistant/components/wemo/*
homeassistant/components/whois/sensor.py
homeassistant/components/wiffi/*
homeassistant/components/wink/*
@@ -996,9 +1109,17 @@ omit =
homeassistant/components/worldtidesinfo/sensor.py
homeassistant/components/worxlandroid/sensor.py
homeassistant/components/x10/light.py
homeassistant/components/xbox/__init__.py
homeassistant/components/xbox/api.py
homeassistant/components/xbox/base_sensor.py
homeassistant/components/xbox/binary_sensor.py
homeassistant/components/xbox/browse_media.py
homeassistant/components/xbox/media_player.py
homeassistant/components/xbox/media_source.py
homeassistant/components/xbox/remote.py
homeassistant/components/xbox/sensor.py
homeassistant/components/xbox_live/sensor.py
homeassistant/components/xeoma/camera.py
homeassistant/components/xfinity/device_tracker.py
homeassistant/components/xiaomi/camera.py
homeassistant/components/xiaomi_aqara/__init__.py
homeassistant/components/xiaomi_aqara/binary_sensor.py
@@ -1011,6 +1132,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/device.py
homeassistant/components/xiaomi_miio/device_tracker.py
homeassistant/components/xiaomi_miio/fan.py
homeassistant/components/xiaomi_miio/gateway.py
@@ -1041,7 +1163,6 @@ omit =
homeassistant/components/zha/core/device.py
homeassistant/components/zha/core/gateway.py
homeassistant/components/zha/core/helpers.py
homeassistant/components/zha/core/patches.py
homeassistant/components/zha/core/registries.py
homeassistant/components/zha/core/typing.py
homeassistant/components/zha/entity.py
@@ -1050,11 +1171,12 @@ omit =
homeassistant/components/zhong_hong/climate.py
homeassistant/components/xbee/*
homeassistant/components/ziggo_mediabox_xl/media_player.py
homeassistant/components/zoneminder/*
homeassistant/components/supla/*
homeassistant/components/zwave/util.py
homeassistant/components/ozw/__init__.py
homeassistant/components/ozw/entity.py
homeassistant/components/ozw/services.py
homeassistant/components/zwave_js/discovery.py
homeassistant/components/zwave_js/light.py
homeassistant/components/zwave_js/sensor.py
[report]
# Regexes for lines to exclude from consideration
@@ -1068,3 +1190,6 @@ exclude_lines =
# Don't complain if tests don't hit defensive assertion code:
raise AssertionError
raise NotImplementedError
# TYPE_CHECKING block is never executed during pytest run
if TYPE_CHECKING:

View File

@@ -2,27 +2,31 @@
"name": "Home Assistant Dev",
"context": "..",
"dockerFile": "../Dockerfile.dev",
"postCreateCommand": "mkdir -p config && pip3 install -e .",
"postCreateCommand": "script/setup",
"postStartCommand": "script/bootstrap",
"containerEnv": { "DEVCONTAINER": "1" },
"appPort": 8123,
"runArgs": ["-e", "GIT_EDITOR=code --wait"],
"extensions": [
"ms-python.python",
"ms-python.vscode-pylance",
"visualstudioexptteam.vscodeintellicode",
"ms-azure-devops.azure-pipelines",
"redhat.vscode-yaml",
"esbenp.prettier-vscode"
],
// Please keep this file in sync with settings in home-assistant/.vscode/settings.default.json
"settings": {
"python.pythonPath": "/usr/local/bin/python",
"python.linting.pylintEnabled": true,
"python.linting.enabled": true,
"python.formatting.provider": "black",
"python.testing.pytestArgs": ["--no-cov"],
"editor.formatOnPaste": false,
"editor.formatOnSave": true,
"editor.formatOnType": true,
"files.trimTrailingWhitespace": true,
"terminal.integrated.shell.linux": "/bin/bash",
"terminal.integrated.shell.linux": "/usr/bin/zsh",
"yaml.customTags": [
"!input scalar",
"!secret scalar",
"!include_dir_named scalar",
"!include_dir_list scalar",

2
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,2 @@
custom: https://www.nabucasa.com
github: balloob

View File

@@ -1,53 +0,0 @@
---
name: Report a bug with Home Assistant Core
about: Report an issue with Home Assistant Core
---
<!-- READ THIS FIRST:
- If you need additional help with this template, please refer to https://www.home-assistant.io/help/reporting_issues/
- Make sure you are running the latest version of Home Assistant before reporting an issue: https://github.com/home-assistant/core/releases
- Do not report issues for integrations if you are using custom components or integrations.
- Provide as many details as possible. Paste logs, configuration samples and code into the backticks.
DO NOT DELETE ANY TEXT from this template! Otherwise, your issue may be closed without comment.
-->
## The problem
<!--
Describe the issue you are experiencing here to communicate to the
maintainers. Tell us what you were trying to do and what happened.
-->
## Environment
<!--
Provide details about the versions you are using, which helps us to reproduce
and find the issue quicker. Version information is found in the
Home Assistant frontend: Configuration -> Info.
-->
- Home Assistant Core release with the issue:
- Last working Home Assistant Core release (if known):
- Operating environment (OS/Container/Supervised/Core):
- Integration causing this issue:
- Link to integration documentation on our website:
## Problem-relevant `configuration.yaml`
<!--
An example configuration that caused the problem for you. Fill this out even
if it seems unimportant to you. Please be sure to remove personal information
like passwords, private URLs and other credentials.
-->
```yaml
```
## Traceback/Error logs
<!--
If you come across any trace or error logs, please provide them.
-->
```txt
```
## Additional information

97
.github/ISSUE_TEMPLATE/bug_report.yml vendored Normal file
View File

@@ -0,0 +1,97 @@
name: Report an issue with Home Assistant Core
description: Report an issue with Home Assistant Core.
title: ""
issue_body: true
body:
- type: markdown
attributes:
value: |
This issue form is for reporting bugs only!
If you have a feature or enhancement request, please use the [feature request][fr] section of our [Community Forum][fr].
[fr]: https://community.home-assistant.io/c/feature-requests
- type: textarea
validations:
required: true
attributes:
label: The problem
description: >-
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.
- type: markdown
attributes:
value: |
## Environment
- type: input
id: version
validations:
required: true
attributes:
label: What is version of Home Assistant Core has the issue?
placeholder: core-
description: >
Can be found in the Configuration panel -> Info.
- type: input
attributes:
label: What was the last working version of Home Assistant Core?
placeholder: core-
description: >
If known, otherwise leave blank.
- type: dropdown
validations:
required: true
attributes:
label: What type of installation are you running?
description: >
If you don't know, you can find it in: Configuration panel -> Info.
options:
- Home Assistant OS
- Home Assistant Container
- Home Assistant Supervised
- Home Assistant Core
- type: input
id: integration_name
attributes:
label: Integration causing the issue
description: >
The name of the integration, for example, Automation or Philips Hue.
- type: input
id: integration_link
attributes:
label: Link to integration documentation on our website
placeholder: "https://www.home-assistant.io/integrations/..."
description: |
Providing a link [to the documentation][docs] help us categorizing the
issue, while providing a useful reference at the same time.
[docs]: https://www.home-assistant.io/integrations
- type: markdown
attributes:
value: |
# Details
- type: textarea
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.
render: yaml
- type: textarea
attributes:
label: Anything in the logs that might be useful for us?
description: For example, error message, or stack traces.
render: txt
- type: markdown
attributes:
value: |
## Additional information
- type: markdown
attributes:
value: >
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.

View File

@@ -119,7 +119,7 @@ To help with the load of incoming pull requests:
- [ ] I have reviewed two other [open pull requests][prs] in this repository.
[prs]: https://github.com/home-assistant/core/pulls?q=is%3Aopen+is%3Apr+-author%3A%40me+-draft%3Atrue+-label%3Awaiting-for-upstream+sort%3Acreated-asc+-review%3Aapproved
[prs]: https://github.com/home-assistant/core/pulls?q=is%3Aopen+is%3Apr+-author%3A%40me+-draft%3Atrue+-label%3Awaiting-for-upstream+sort%3Acreated-desc+review%3Anone
<!--
Thank you for contributing <3

27
.github/lock.yml vendored
View File

@@ -1,27 +0,0 @@
# Configuration for Lock Threads - https://github.com/dessant/lock-threads
# Number of days of inactivity before a closed issue or pull request is locked
daysUntilLock: 1
# Skip issues and pull requests created before a given timestamp. Timestamp must
# follow ISO 8601 (`YYYY-MM-DD`). Set to `false` to disable
skipCreatedBefore: 2019-07-01
# Issues and pull requests with these labels will be ignored. Set to `[]` to disable
exemptLabels: []
# Label to add before locking, such as `outdated`. Set to `false` to disable
lockLabel: false
# Comment to post before locking. Set to `false` to disable
lockComment: false
# Assign `resolved` as the reason for locking. Set to `false` to disable
setLockReason: false
# Limit to only `issues` or `pulls`
only: pulls
# Optionally, specify configuration settings just for `issues` or `pulls`
issues:
daysUntilLock: 30

66
.github/stale.yml vendored
View File

@@ -1,66 +0,0 @@
# Configuration for probot-stale - https://github.com/probot/stale
# Number of days of inactivity before an Issue or Pull Request becomes stale
daysUntilStale: 90
# Number of days of inactivity before an Issue or Pull Request with the stale label is closed.
# Set to false to disable. If disabled, issues still need to be closed manually, but will remain marked as stale.
daysUntilClose: 7
# Only issues or pull requests with all of these labels are check if stale. Defaults to `[]` (disabled)
onlyLabels: []
# Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable
exemptLabels:
- under investigation
- Help wanted
# Set to true to ignore issues in a project (defaults to false)
exemptProjects: true
# Set to true to ignore issues in a milestone (defaults to false)
exemptMilestones: true
# Set to true to ignore issues with an assignee (defaults to false)
exemptAssignees: false
# Label to use when marking as stale
staleLabel: stale
# Comment to post when marking as stale. Set to `false` to disable
markComment: >
There hasn't been any activity on this issue recently. Due to the high number
of incoming GitHub notifications, we have to clean some of the old issues,
as many of them have already been resolved with the latest updates.
Please make sure to update to the latest Home Assistant version and check
if that solves the issue. Let us know if that works for you by adding a
comment 👍
This issue now has been marked as stale and will be closed if no further
activity occurs. Thank you for your contributions.
# Comment to post when removing the stale label.
# unmarkComment: >
# Your comment here.
# Comment to post when closing a stale Issue or Pull Request.
# closeComment: >
# Your comment here.
# Limit the number of actions per hour, from 1-30. Default is 30
limitPerRun: 30
# Limit to only `issues` or `pulls`
# only: issues
# Handle pull requests a little bit faster and with an adjusted comment.
pulls:
daysUntilStale: 30
exemptProjects: false
markComment: >
There hasn't been any activity on this pull request recently. This pull
request has been automatically marked as stale because of that and will
be closed if no further activity occurs within 7 days.
Thank you for your contributions.

View File

@@ -11,8 +11,8 @@ on:
env:
CACHE_VERSION: 1
DEFAULT_PYTHON: 3.7
PRE_COMMIT_HOME: ~/.cache/pre-commit
DEFAULT_PYTHON: 3.8
PRE_COMMIT_CACHE: ~/.cache/pre-commit
jobs:
# Separate job to pre-populate the base dependency cache
@@ -20,45 +20,57 @@ jobs:
prepare-base:
name: Prepare base dependencies
runs-on: ubuntu-latest
outputs:
python-key: ${{ steps.generate-python-key.outputs.key }}
pre-commit-key: ${{ steps.generate-pre-commit-key.outputs.key }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v2.1.2
uses: actions/setup-python@v2.2.1
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Generate partial Python venv restore key
id: generate-python-key
run: >-
echo "::set-output name=key::base-venv-${{ env.CACHE_VERSION }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}"
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{
steps.python.outputs.python-version }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
steps.generate-python-key.outputs.key }}
restore-keys: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{ steps.python.outputs.python-version }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('requirements_test.txt') }}-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{ steps.python.outputs.python-version }}-${{ hashFiles('requirements.txt') }}
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{ steps.python.outputs.python-version }}-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-base-venv-${{ env.CACHE_VERSION }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('requirements_test.txt') }}-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-base-venv-${{ env.CACHE_VERSION }}-${{ hashFiles('requirements.txt') }}-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-base-venv-${{ env.CACHE_VERSION }}-
- name: Create Python virtual environment
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
python -m venv venv
. venv/bin/activate
pip install -U pip setuptools
pip install -U "pip<20.3" setuptools
pip install -r requirements.txt -r requirements_test.txt
- name: Generate partial pre-commit restore key
id: generate-pre-commit-key
run: >-
echo "::set-output name=key::pre-commit-${{ env.CACHE_VERSION }}-${{
hashFiles('.pre-commit-config.yaml') }}"
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: ${{ env.PRE_COMMIT_HOME }}
key: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-pre-commit-${{ hashFiles('.pre-commit-config.yaml') }}
path: ${{ env.PRE_COMMIT_CACHE }}
key: >-
${{ runner.os }}-${{ steps.generate-pre-commit-key.outputs.key }}
restore-keys: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-pre-commit-
${{ runner.os }}-pre-commit-${{ env.CACHE_VERSION }}-
- name: Install pre-commit dependencies
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
@@ -73,21 +85,17 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.1.2
uses: actions/setup-python@v2.2.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{
steps.python.outputs.python-version }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.prepare-base.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -95,15 +103,14 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: ${{ env.PRE_COMMIT_HOME }}
key: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-pre-commit-${{ hashFiles('.pre-commit-config.yaml') }}
- name: Fail job if cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Run bandit
run: |
@@ -118,21 +125,17 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.1.2
uses: actions/setup-python@v2.2.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{
steps.python.outputs.python-version }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.prepare-base.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -140,15 +143,14 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: ${{ env.PRE_COMMIT_HOME }}
key: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-pre-commit-${{ hashFiles('.pre-commit-config.yaml') }}
- name: Fail job if cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Run black
run: |
@@ -163,21 +165,17 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.1.2
uses: actions/setup-python@v2.2.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{
steps.python.outputs.python-version }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.prepare-base.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -185,15 +183,14 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: ${{ env.PRE_COMMIT_HOME }}
key: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-pre-commit-${{ hashFiles('.pre-commit-config.yaml') }}
- name: Fail job if cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Register codespell problem matcher
run: |
@@ -214,11 +211,11 @@ jobs:
run: |
echo "::add-matcher::.github/workflows/matchers/hadolint.json"
- name: Check Dockerfile
uses: docker://hadolint/hadolint:v1.18.0
uses: docker://hadolint/hadolint:v1.18.2
with:
args: hadolint Dockerfile
- name: Check Dockerfile.dev
uses: docker://hadolint/hadolint:v1.18.0
uses: docker://hadolint/hadolint:v1.18.2
with:
args: hadolint Dockerfile.dev
@@ -230,21 +227,17 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.1.2
uses: actions/setup-python@v2.2.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{
steps.python.outputs.python-version }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.prepare-base.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -252,15 +245,14 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: ${{ env.PRE_COMMIT_HOME }}
key: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-pre-commit-${{ hashFiles('.pre-commit-config.yaml') }}
- name: Fail job if cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Register check executables problem matcher
run: |
@@ -278,21 +270,17 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.1.2
uses: actions/setup-python@v2.2.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{
steps.python.outputs.python-version }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.prepare-base.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -300,15 +288,14 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: ${{ env.PRE_COMMIT_HOME }}
key: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-pre-commit-${{ hashFiles('.pre-commit-config.yaml') }}
- name: Fail job if cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Register flake8 problem matcher
run: |
@@ -326,21 +313,17 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.1.2
uses: actions/setup-python@v2.2.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{
steps.python.outputs.python-version }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.prepare-base.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -348,15 +331,14 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: ${{ env.PRE_COMMIT_HOME }}
key: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-pre-commit-${{ hashFiles('.pre-commit-config.yaml') }}
- name: Fail job if cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Run isort
run: |
@@ -371,21 +353,17 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.1.2
uses: actions/setup-python@v2.2.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{
steps.python.outputs.python-version }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.prepare-base.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -393,15 +371,14 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: ${{ env.PRE_COMMIT_HOME }}
key: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-pre-commit-${{ hashFiles('.pre-commit-config.yaml') }}
- name: Fail job if cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Register check-json problem matcher
run: |
@@ -419,21 +396,17 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.1.2
uses: actions/setup-python@v2.2.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{
steps.python.outputs.python-version }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.prepare-base.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -441,15 +414,14 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: ${{ env.PRE_COMMIT_HOME }}
key: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-pre-commit-${{ hashFiles('.pre-commit-config.yaml') }}
- name: Fail job if cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Run pyupgrade
run: |
@@ -475,21 +447,17 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.1.2
uses: actions/setup-python@v2.2.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{
steps.python.outputs.python-version }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.prepare-base.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -497,15 +465,14 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: ${{ env.PRE_COMMIT_HOME }}
key: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-pre-commit-${{ hashFiles('.pre-commit-config.yaml') }}
- name: Fail job if cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
- name: Fail job if pre-commit cache restore failed
if: steps.cache-precommit.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Register yamllint problem matcher
run: |
@@ -521,22 +488,18 @@ jobs:
needs: prepare-tests
strategy:
matrix:
python-version: [3.7]
python-version: [3.8]
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name:
Restore full Python ${{ matrix.python-version }} virtual environment
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-venv-${{
matrix.python-version }}-${{ hashFiles('requirements_test.txt')
}}-${{ hashFiles('requirements_all.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ matrix.python-version }}-${{
needs.prepare-tests.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -555,21 +518,17 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.1.2
uses: actions/setup-python@v2.2.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-base-venv-${{
steps.python.outputs.python-version }}-${{
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.prepare-base.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -585,31 +544,42 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: [3.7, 3.8]
python-version: [3.8, 3.9]
outputs:
python-key: ${{ steps.generate-python-key.outputs.key }}
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Generate partial Python venv restore key
id: generate-python-key
run: >-
echo "::set-output name=key::venv-${{ env.CACHE_VERSION }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('requirements_all.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}"
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-venv-${{
matrix.python-version }}-${{ hashFiles('requirements_test.txt')
}}-${{ hashFiles('requirements_all.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
${{ runner.os }}-${{ matrix.python-version }}-${{
steps.generate-python-key.outputs.key }}
restore-keys: |
${{ env.CACHE_VERSION}}-${{ runner.os }}-venv-${{ matrix.python-version }}-${{ hashFiles('requirements_test.txt') }}-${{ hashFiles('requirements_all.txt') }}
${{ env.CACHE_VERSION}}-${{ runner.os }}-venv-${{ matrix.python-version }}-${{ hashFiles('requirements_test.txt') }}
${{ env.CACHE_VERSION}}-${{ runner.os }}-venv-${{ matrix.python-version }}-
${{ runner.os }}-${{ matrix.python-version }}-venv-${{ env.CACHE_VERSION }}-${{ hashFiles('requirements_test.txt') }}-${{ hashFiles('requirements_all.txt') }}-
${{ runner.os }}-${{ matrix.python-version }}-venv-${{ env.CACHE_VERSION }}-${{ hashFiles('requirements_test.txt') }}-
${{ runner.os }}-${{ matrix.python-version }}-venv-${{ env.CACHE_VERSION }}-
- name: Create full Python ${{ matrix.python-version }} virtual environment
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
# Temporary addition of cmake, needed to build some Python 3.9 packages
apt-get update
apt-get -y install cmake
python -m venv venv
. venv/bin/activate
pip install -U pip setuptools wheel
pip install -U "pip<20.3" setuptools wheel
pip install -r requirements_all.txt
pip install -r requirements_test.txt
pip install -e .
@@ -620,21 +590,18 @@ jobs:
needs: prepare-tests
strategy:
matrix:
python-version: [3.7]
python-version: [3.8]
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-venv-${{
matrix.python-version }}-${{ hashFiles('requirements_test.txt')
}}-${{ hashFiles('requirements_all.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ matrix.python-version }}-${{
needs.prepare-tests.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -654,21 +621,18 @@ jobs:
needs: prepare-tests
strategy:
matrix:
python-version: [3.7]
python-version: [3.8]
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-venv-${{
matrix.python-version }}-${{ hashFiles('requirements_test.txt')
}}-${{ hashFiles('requirements_all.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ matrix.python-version }}-${{
needs.prepare-tests.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -686,9 +650,10 @@ jobs:
runs-on: ubuntu-latest
needs: prepare-tests
strategy:
fail-fast: false
matrix:
group: [1, 2, 3, 4]
python-version: [3.7, 3.8]
python-version: [3.8, 3.9]
name: >-
Run tests Python ${{ matrix.python-version }} (group ${{ matrix.group }})
container: homeassistant/ci-azure:${{ matrix.python-version }}
@@ -697,14 +662,11 @@ jobs:
uses: actions/checkout@v2
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-venv-${{
matrix.python-version }}-${{ hashFiles('requirements_test.txt')
}}-${{ hashFiles('requirements_all.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ matrix.python-version }}-${{
needs.prepare-tests.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -732,11 +694,12 @@ jobs:
--test-group-count 4 \
--test-group=${{ matrix.group }} \
--cov homeassistant \
--cov-report= \
-o console_output_style=count \
-p no:sugar \
tests
- name: Upload coverage artifact
uses: actions/upload-artifact@v2.1.4
uses: actions/upload-artifact@v2.2.2
with:
name: coverage-${{ matrix.python-version }}-group${{ matrix.group }}
path: .coverage
@@ -747,24 +710,21 @@ jobs:
coverage:
name: Process test coverage
runs-on: ubuntu-latest
needs: pytest
needs: ["prepare-tests", "pytest"]
strategy:
matrix:
python-version: [3.7]
python-version: [3.8]
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2
uses: actions/cache@v2.1.4
with:
path: venv
key: >-
${{ env.CACHE_VERSION}}-${{ runner.os }}-venv-${{
matrix.python-version }}-${{ hashFiles('requirements_test.txt')
}}-${{ hashFiles('requirements_all.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}
key: ${{ runner.os }}-${{ matrix.python-version }}-${{
needs.prepare-tests.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -779,4 +739,4 @@ jobs:
coverage report --fail-under=94
coverage xml
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1.0.13
uses: codecov/codecov-action@v1.3.1

20
.github/workflows/lock.yml vendored Normal file
View File

@@ -0,0 +1,20 @@
name: Lock
# yamllint disable-line rule:truthy
on:
schedule:
- cron: "0 * * * *"
jobs:
lock:
runs-on: ubuntu-latest
steps:
- uses: dessant/lock-threads@v2.0.3
with:
github-token: ${{ github.token }}
issue-lock-inactive-days: "30"
issue-exclude-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-lock-reason: ""

103
.github/workflows/stale.yml vendored Normal file
View File

@@ -0,0 +1,103 @@
name: Stale
# yamllint disable-line rule:truthy
on:
schedule:
- cron: "0 * * * *"
workflow_dispatch:
jobs:
stale:
runs-on: ubuntu-latest
steps:
# The 90 day stale policy
# Used for:
# - Issues & PRs
# - No PRs marked as no-stale
# - No issues marked as no-stale or help-wanted
- name: 90 days stale issues & PRs policy
uses: actions/stale@v3.0.18
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 90
days-before-close: 7
operations-per-run: 150
remove-stale-when-updated: true
stale-issue-label: "stale"
exempt-issue-labels: "no-stale,help-wanted"
stale-issue-message: >
There hasn't been any activity on this issue recently. Due to the
high number of incoming GitHub notifications, we have to clean some
of the old issues, as many of them have already been resolved with
the latest updates.
Please make sure to update to the latest Home Assistant version and
check if that solves the issue. Let us know if that works for you by
adding a comment 👍
This issue has now been marked as stale and will be closed if no
further activity occurs. Thank you for your contributions.
stale-pr-label: "stale"
exempt-pr-labels: "no-stale"
stale-pr-message: >
There hasn't been any activity on this pull request recently. This
pull request has been automatically marked as stale because of that
and will be closed if no further activity occurs within 7 days.
Thank you for your contributions.
# The 30 day stale policy for PRS
# Used for:
# - PRs
# - No PRs marked as no-stale or new-integrations
# - No issues (-1)
- name: 30 days stale PRs policy
uses: actions/stale@v3.0.18
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 30
days-before-close: 7
days-before-issue-close: -1
operations-per-run: 50
remove-stale-when-updated: true
stale-pr-label: "stale"
# Exempt new integrations, these often take more time.
# They will automatically be handled by the 90 day version above.
exempt-pr-labels: "no-stale,new-integration"
stale-pr-message: >
There hasn't been any activity on this pull request recently. This
pull request has been automatically marked as stale because of that
and will be closed if no further activity occurs within 7 days.
Thank you for your contributions.
# The 30 day stale policy for issues
# Used for:
# - Issues that are pending more information (incomplete issues)
# - No Issues marked as no-stale or help-wanted
# - No PRs (-1)
- name: Needs more information stale issues policy
uses: actions/stale@v3.0.18
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
only-labels: "needs-more-information"
days-before-stale: 14
days-before-close: 7
days-before-pr-close: -1
operations-per-run: 50
remove-stale-when-updated: true
stale-issue-label: "stale"
exempt-issue-labels: "no-stale,help-wanted"
stale-issue-message: >
There hasn't been any activity on this issue recently. Due to the
high number of incoming GitHub notifications, we have to clean some
of the old issues, as many of them have already been resolved with
the latest updates.
Please make sure to update to the latest Home Assistant version and
check if that solves the issue. Let us know if that works for you by
adding a comment 👍
This issue has now been marked as stale and will be closed if no
further activity occurs. Thank you for your contributions.

2
.gitignore vendored
View File

@@ -88,7 +88,7 @@ venv
.venv
Pipfile*
share/*
Scripts/
/Scripts/
# vimmy stuff
*.swp

View File

@@ -1,9 +1,9 @@
repos:
- repo: https://github.com/asottile/pyupgrade
rev: v2.7.2
rev: v2.11.0
hooks:
- id: pyupgrade
args: [--py37-plus]
args: [--py38-plus]
- repo: https://github.com/psf/black
rev: 20.8b1
hooks:
@@ -13,24 +13,29 @@ repos:
- --quiet
files: ^((homeassistant|script|tests)/.+)?[^/]+\.py$
- repo: https://github.com/codespell-project/codespell
rev: v1.17.1
rev: v2.0.0
hooks:
- id: codespell
args:
- --ignore-words-list=hass,alot,datas,dof,dur,farenheit,hist,iff,ines,ist,lightsensor,mut,nd,pres,referer,ser,serie,te,technik,ue,uint,visability,wan,wanna,withing,iam,incomfort
- --ignore-words-list=hass,alot,datas,dof,dur,ether,farenheit,hist,iff,ines,ist,lightsensor,mut,nd,pres,referer,ser,serie,te,technik,ue,uint,visability,wan,wanna,withing,iam,incomfort
- --skip="./.*,*.csv,*.json"
- --quiet-level=2
exclude_types: [csv, json]
exclude: ^tests/fixtures/
- repo: https://gitlab.com/pycqa/flake8
rev: 3.8.3
rev: 3.9.0
hooks:
- id: flake8
additional_dependencies:
- flake8-docstrings==1.5.0
- pydocstyle==5.1.1
- pycodestyle==2.7.0
- pyflakes==2.3.1
- flake8-docstrings==1.6.0
- pydocstyle==6.0.0
- flake8-comprehensions==3.4.0
- flake8-noqa==1.1.0
files: ^(homeassistant|script|tests)/.+\.py$
- repo: https://github.com/PyCQA/bandit
rev: 1.6.2
rev: 1.7.0
hooks:
- id: bandit
args:
@@ -39,7 +44,7 @@ repos:
- --configfile=tests/bandit.yaml
files: ^(homeassistant|script|tests)/.+\.py$
- repo: https://github.com/PyCQA/isort
rev: 5.5.3
rev: 5.7.0
hooks:
- id: isort
- repo: https://github.com/pre-commit/pre-commit-hooks
@@ -48,6 +53,7 @@ repos:
- id: check-executables-have-shebangs
stages: [manual]
- id: check-json
exclude: (.vscode|.devcontainer)
- id: no-commit-to-branch
args:
- --branch=dev
@@ -57,11 +63,24 @@ repos:
rev: v1.24.2
hooks:
- id: yamllint
- repo: https://github.com/prettier/prettier
rev: 2.0.4
- repo: https://github.com/pre-commit/mirrors-prettier
rev: v2.2.1
hooks:
- id: prettier
stages: [manual]
- repo: https://github.com/cdce8p/python-typing-update
rev: v0.3.2
hooks:
# Run `python-typing-update` hook manually from time to time
# to update python typing syntax.
# Will require manual work, before submitting changes!
- id: python-typing-update
stages: [manual]
args:
- --py38-plus
- --force
- --keep-updates
files: ^(homeassistant|tests|script)/.+\.py$
- repo: local
hooks:
# Run mypy through our wrapper script in order to get the possible
@@ -87,5 +106,5 @@ repos:
entry: script/run-in-env.sh python3 -m script.hassfest
pass_filenames: false
language: script
types: [json]
files: ^homeassistant/.+/(manifest|strings)\.json$
types: [text]
files: ^(homeassistant/.+/(manifest|strings)\.json|\.coveragerc|homeassistant/.+/services\.yaml)$

View File

@@ -4,7 +4,7 @@ build:
image: latest
python:
version: 3.7
version: 3.8
setup_py_install: true
requirements_file: requirements_docs.txt

View File

@@ -1,45 +0,0 @@
dist: bionic
addons:
apt:
packages:
- ffmpeg
- libudev-dev
- libavformat-dev
- libavcodec-dev
- libavdevice-dev
- libavutil-dev
- libswscale-dev
- libswresample-dev
- libavfilter-dev
sources:
- sourceline: ppa:savoury1/ffmpeg4
- sourceline: ppa:savoury1/multimedia
python:
- "3.7.1"
- "3.8"
env:
- TOX_ARGS="-- --test-group-count 4 --test-group 1"
- TOX_ARGS="-- --test-group-count 4 --test-group 2"
- TOX_ARGS="-- --test-group-count 4 --test-group 3"
- TOX_ARGS="-- --test-group-count 4 --test-group 4"
jobs:
fast_finish: true
include:
- python: "3.7.1"
env: TOXENV=lint
- python: "3.7.1"
# PYLINT_ARGS=--jobs=0 disabled for now: https://github.com/PyCQA/pylint/issues/3584
env: TOXENV=pylint TRAVIS_WAIT=30
- python: "3.7.1"
env: TOXENV=typing
cache:
pip: true
directories:
- $HOME/.cache/pre-commit
install: pip install -U tox tox-travis
language: python
script: ${TRAVIS_WAIT:+travis_wait $TRAVIS_WAIT} tox --develop ${TOX_ARGS-}

49
.vscode/launch.json vendored Normal file
View File

@@ -0,0 +1,49 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Home Assistant",
"type": "python",
"request": "launch",
"module": "homeassistant",
"args": [
"--debug",
"-c",
"config"
]
},
{
// Debug by attaching to local Home Asistant server using Remote Python Debugger.
// See https://www.home-assistant.io/integrations/debugpy/
"name": "Home Assistant: Attach Local",
"type": "python",
"request": "attach",
"port": 5678,
"host": "localhost",
"pathMappings": [
{
"localRoot": "${workspaceFolder}",
"remoteRoot": "."
}
],
},
{
// Debug by attaching to remote Home Asistant server using Remote Python Debugger.
// See https://www.home-assistant.io/integrations/debugpy/
"name": "Home Assistant: Attach Remote",
"type": "python",
"request": "attach",
"port": 5678,
"host": "homeassistant.local",
"pathMappings": [
{
"localRoot": "${workspaceFolder}",
"remoteRoot": "/usr/src/homeassistant"
}
],
}
]
}

9
.vscode/settings.default.json vendored Normal file
View File

@@ -0,0 +1,9 @@
{
// Please keep this file in sync with settings in home-assistant/.devcontainer/devcontainer.json
"python.formatting.provider": "black",
// Added --no-cov to work around TypeError: message must be set
// https://github.com/microsoft/vscode-python/issues/14067
"python.testing.pytestArgs": ["--no-cov"],
// https://code.visualstudio.com/docs/python/testing#_pytest-configuration-settings
"python.testing.pytestEnabled": false
}

View File

@@ -9,6 +9,12 @@ homeassistant/*.py @home-assistant/core
homeassistant/helpers/* @home-assistant/core
homeassistant/util/* @home-assistant/core
# Home Assistant Supervisor
build.json @home-assistant/supervisor
machine/* @home-assistant/supervisor
rootfs/* @home-assistant/supervisor
Dockerfile @home-assistant/supervisor
# Other code
homeassistant/scripts/check_config.py @kellerza
@@ -17,8 +23,11 @@ homeassistant/components/abode/* @shred86
homeassistant/components/accuweather/* @bieniu
homeassistant/components/acmeda/* @atmurray
homeassistant/components/adguard/* @frenck
homeassistant/components/advantage_air/* @Bre77
homeassistant/components/aemet/* @noltari
homeassistant/components/agent_dvr/* @ispysoftware
homeassistant/components/airly/* @bieniu
homeassistant/components/airnow/* @asymworks
homeassistant/components/airvisual/* @bachya
homeassistant/components/alarmdecoder/* @ajschmidt8
homeassistant/components/alexa/* @home-assistant/cloud @ochlocracy
@@ -27,27 +36,28 @@ homeassistant/components/alpha_vantage/* @fabaff
homeassistant/components/ambiclimate/* @danielhiversen
homeassistant/components/ambient_station/* @bachya
homeassistant/components/amcrest/* @pnbruckner
homeassistant/components/analytics/* @home-assistant/core @ludeeus
homeassistant/components/androidtv/* @JeffLIrion
homeassistant/components/apache_kafka/* @bachya
homeassistant/components/api/* @home-assistant/core
homeassistant/components/apple_tv/* @postlund
homeassistant/components/apprise/* @caronc
homeassistant/components/aprs/* @PhilRW
homeassistant/components/arcam_fmj/* @elupus
homeassistant/components/arduino/* @fabaff
homeassistant/components/arest/* @fabaff
homeassistant/components/arris_tg2492lg/* @vanbalken
homeassistant/components/asuswrt/* @kennedyshead
homeassistant/components/asuswrt/* @kennedyshead @ollo69
homeassistant/components/atag/* @MatsNL
homeassistant/components/aten_pe/* @mtdcr
homeassistant/components/atome/* @baqs
homeassistant/components/august/* @bdraco
homeassistant/components/aurora/* @djtimca
homeassistant/components/aurora_abb_powerone/* @davet2001
homeassistant/components/auth/* @home-assistant/core
homeassistant/components/automation/* @home-assistant/core
homeassistant/components/avea/* @pattyland
homeassistant/components/avri/* @timvancann
homeassistant/components/awair/* @ahayworth @danielsjf
homeassistant/components/aws/* @awarecan
homeassistant/components/axis/* @Kane610
homeassistant/components/azure_devops/* @timmo001
homeassistant/components/azure_event_hub/* @eavanvalkenburg
@@ -57,9 +67,9 @@ homeassistant/components/bitcoin/* @fabaff
homeassistant/components/bizkaibus/* @UgaitzEtxebarria
homeassistant/components/blebox/* @gadgetmobile
homeassistant/components/blink/* @fronzbot
homeassistant/components/blueprint/* @home-assistant/core
homeassistant/components/bmp280/* @belidzs
homeassistant/components/bmw_connected_drive/* @gerard33 @rikroe
homeassistant/components/bom/* @maddenp
homeassistant/components/bond/* @prystupa
homeassistant/components/braviatv/* @bieniu
homeassistant/components/broadlink/* @danielhiversen @felipediel
@@ -74,8 +84,10 @@ homeassistant/components/circuit/* @braam
homeassistant/components/cisco_ios/* @fbradyirl
homeassistant/components/cisco_mobility_express/* @fbradyirl
homeassistant/components/cisco_webex_teams/* @fbradyirl
homeassistant/components/climacell/* @raman325
homeassistant/components/cloud/* @home-assistant/cloud
homeassistant/components/cloudflare/* @ludeeus
homeassistant/components/cloudflare/* @ludeeus @ctalkington
homeassistant/components/color_extractor/* @GenericStudent
homeassistant/components/comfoconnect/* @michaelarnauts
homeassistant/components/config/* @home-assistant/core
homeassistant/components/configurator/* @home-assistant/core
@@ -98,6 +110,7 @@ homeassistant/components/derivative/* @afaucogney
homeassistant/components/device_automation/* @home-assistant/core
homeassistant/components/devolo_home_control/* @2Fake @Shutgun
homeassistant/components/dexcom/* @gagebenne
homeassistant/components/dhcp/* @bdraco
homeassistant/components/digital_ocean/* @fabaff
homeassistant/components/directv/* @ctalkington
homeassistant/components/discogs/* @thibmaek
@@ -108,9 +121,9 @@ homeassistant/components/dunehd/* @bieniu
homeassistant/components/dwd_weather_warnings/* @runningman84 @stephan192 @Hummel95
homeassistant/components/dweet/* @fabaff
homeassistant/components/dynalite/* @ziv1234
homeassistant/components/dyson/* @etheralm
homeassistant/components/eafm/* @Jc2k
homeassistant/components/ecobee/* @marthoc
homeassistant/components/econet/* @vangorra @w1ll1am23
homeassistant/components/ecovacs/* @OverloadUT
homeassistant/components/edl21/* @mtdcr
homeassistant/components/egardia/* @jeroenterheerdt
@@ -123,18 +136,22 @@ homeassistant/components/emoncms/* @borpin
homeassistant/components/emulated_kasa/* @kbickar
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/ephember/* @ttroy50
homeassistant/components/epson/* @pszafer
homeassistant/components/epsonworkforce/* @ThaStealth
homeassistant/components/eq3btsmart/* @rytilahti
homeassistant/components/esphome/* @OttoWinter
homeassistant/components/essent/* @TheLastProject
homeassistant/components/evohome/* @zxdavb
homeassistant/components/ezviz/* @baqs
homeassistant/components/faa_delays/* @ntilley905
homeassistant/components/fastdotcom/* @rohankapoorcom
homeassistant/components/file/* @fabaff
homeassistant/components/filter/* @dgomes
homeassistant/components/fireservicerota/* @cyberjunky
homeassistant/components/firmata/* @DaAwesomeP
homeassistant/components/fixer/* @fabaff
homeassistant/components/flick_electric/* @ZephireNZ
@@ -145,7 +162,7 @@ homeassistant/components/flunearyou/* @bachya
homeassistant/components/forked_daapd/* @uvjustin
homeassistant/components/fortios/* @kimfrellsen
homeassistant/components/foscam/* @skgsergio
homeassistant/components/freebox/* @snoof85 @Quentame
homeassistant/components/freebox/* @hacf-fr @Quentame
homeassistant/components/fronius/* @nielstron
homeassistant/components/frontend/* @home-assistant/frontend
homeassistant/components/garmin_connect/* @cyberjunky
@@ -161,16 +178,15 @@ homeassistant/components/goalzero/* @tkdrob
homeassistant/components/gogogate2/* @vangorra
homeassistant/components/google_assistant/* @home-assistant/cloud
homeassistant/components/google_cloud/* @lufton
homeassistant/components/google_translate/* @awarecan
homeassistant/components/gpsd/* @fabaff
homeassistant/components/gree/* @cmroche
homeassistant/components/greeneye_monitor/* @jkeljo
homeassistant/components/griddy/* @bdraco
homeassistant/components/group/* @home-assistant/core
homeassistant/components/growatt_server/* @indykoning
homeassistant/components/guardian/* @bachya
homeassistant/components/harmony/* @ehendrix23 @bramkragten @bdraco
homeassistant/components/hassio/* @home-assistant/hass-io
homeassistant/components/hdmi_cec/* @newAM
homeassistant/components/habitica/* @ASMfreaK @leikoilja
homeassistant/components/harmony/* @ehendrix23 @bramkragten @bdraco @mkeesey
homeassistant/components/hassio/* @home-assistant/supervisor
homeassistant/components/heatmiser/* @andylockran
homeassistant/components/heos/* @andrewsayre
homeassistant/components/here_travel_time/* @eifinger
@@ -181,16 +197,16 @@ homeassistant/components/history/* @home-assistant/core
homeassistant/components/hive/* @Rendili @KJonline
homeassistant/components/hlk_sw16/* @jameshilliard
homeassistant/components/home_connect/* @DavidMStraub
homeassistant/components/home_plus_control/* @chemaaa
homeassistant/components/homeassistant/* @home-assistant/core
homeassistant/components/homekit/* @bdraco
homeassistant/components/homekit_controller/* @Jc2k
homeassistant/components/homematic/* @pvizeli @danielperna84
homeassistant/components/homematicip_cloud/* @SukramJ
homeassistant/components/honeywell/* @zxdavb
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/humidifier/* @home-assistant/core @Shulyaka
homeassistant/components/hunterdouglas_powerview/* @bdraco
homeassistant/components/hvv_departures/* @vigonotion
@@ -198,7 +214,7 @@ homeassistant/components/hydrawise/* @ptcryan
homeassistant/components/hyperion/* @dermotduffy
homeassistant/components/iammeter/* @lewei50
homeassistant/components/iaqualink/* @flz
homeassistant/components/icloud/* @Quentame
homeassistant/components/icloud/* @Quentame @nzapponi
homeassistant/components/ign_sismologia/* @exxamalte
homeassistant/components/image/* @home-assistant/core
homeassistant/components/incomfort/* @zxdavb
@@ -228,14 +244,18 @@ homeassistant/components/keba/* @dannerph
homeassistant/components/keenetic_ndms2/* @foxel
homeassistant/components/kef/* @basnijholt
homeassistant/components/keyboard_remote/* @bendavid
homeassistant/components/kmtronic/* @dgomes
homeassistant/components/knx/* @Julius2342 @farmio @marvin-w
homeassistant/components/kodi/* @OnFreund @cgtobi
homeassistant/components/konnected/* @heythisisnate @kit-klein
homeassistant/components/kulersky/* @emlove
homeassistant/components/lametric/* @robbiet480
homeassistant/components/launch_library/* @ludeeus
homeassistant/components/lcn/* @alengwenus
homeassistant/components/life360/* @pnbruckner
homeassistant/components/linux_battery/* @fabaff
homeassistant/components/litejet/* @joncar
homeassistant/components/litterrobot/* @natekspencer
homeassistant/components/local_ip/* @issacg
homeassistant/components/logger/* @home-assistant/core
homeassistant/components/logi_circle/* @evanjd
@@ -245,9 +265,11 @@ homeassistant/components/luci/* @mzdrale
homeassistant/components/luftdaten/* @fabaff
homeassistant/components/lupusec/* @majuss
homeassistant/components/lutron/* @JonGilmore
homeassistant/components/lutron_caseta/* @swails
homeassistant/components/lutron_caseta/* @swails @bdraco
homeassistant/components/lyric/* @timmo001
homeassistant/components/mastodon/* @fabaff
homeassistant/components/matrix/* @tinloaf
homeassistant/components/mazda/* @bdr99
homeassistant/components/mcp23017/* @jardiamj
homeassistant/components/media_source/* @hunterjm
homeassistant/components/mediaroom/* @dgomes
@@ -257,7 +279,7 @@ homeassistant/components/met/* @danielhiversen @thimic
homeassistant/components/meteo_france/* @hacf-fr @oncleben31 @Quentame
homeassistant/components/meteoalarm/* @rolfberkenbosch
homeassistant/components/metoffice/* @MrHarcombe
homeassistant/components/miflora/* @danielhiversen @ChristianKuehnel @basnijholt
homeassistant/components/miflora/* @danielhiversen @basnijholt
homeassistant/components/mikrotik/* @engrbm87
homeassistant/components/mill/* @danielhiversen
homeassistant/components/min_max/* @fabaff
@@ -267,20 +289,23 @@ homeassistant/components/mobile_app/* @robbiet480
homeassistant/components/modbus/* @adamchengtkc @janiversen @vzahradnik
homeassistant/components/monoprice/* @etsinko @OnFreund
homeassistant/components/moon/* @fabaff
homeassistant/components/motion_blinds/* @starkillerOG
homeassistant/components/mpd/* @fabaff
homeassistant/components/mqtt/* @home-assistant/core @emontnemery
homeassistant/components/mqtt/* @emontnemery
homeassistant/components/msteams/* @peroyvind
homeassistant/components/mullvad/* @meichthys
homeassistant/components/my/* @home-assistant/core
homeassistant/components/myq/* @bdraco
homeassistant/components/mysensors/* @MartinHjelmare
homeassistant/components/mysensors/* @MartinHjelmare @functionpointer
homeassistant/components/mystrom/* @fabaff
homeassistant/components/neato/* @dshokouhi @Santobert
homeassistant/components/nederlandse_spoorwegen/* @YarmoM
homeassistant/components/nello/* @pschmitt
homeassistant/components/ness_alarm/* @nickw444
homeassistant/components/nest/* @awarecan
homeassistant/components/nest/* @allenporter
homeassistant/components/netatmo/* @cgtobi
homeassistant/components/netdata/* @fabaff
homeassistant/components/nexia/* @ryannazaretian @bdraco
homeassistant/components/nexia/* @bdraco
homeassistant/components/nextbus/* @vividboarder
homeassistant/components/nextcloud/* @meichthys
homeassistant/components/nightscout/* @marciogranzotto
@@ -295,8 +320,9 @@ homeassistant/components/notion/* @bachya
homeassistant/components/nsw_fuel_station/* @nickw444
homeassistant/components/nsw_rural_fire_service_feed/* @exxamalte
homeassistant/components/nuheat/* @bdraco
homeassistant/components/nuki/* @pschmitt @pvizeli
homeassistant/components/nuki/* @pschmitt @pvizeli @pree
homeassistant/components/numato/* @clssn
homeassistant/components/number/* @home-assistant/core @Shulyaka
homeassistant/components/nut/* @bdraco
homeassistant/components/nws/* @MatthewFlamm
homeassistant/components/nzbget/* @chriscla
@@ -305,19 +331,20 @@ homeassistant/components/ohmconnect/* @robbiet480
homeassistant/components/ombi/* @larssont
homeassistant/components/omnilogic/* @oliver84 @djtimca @gentoosu
homeassistant/components/onboarding/* @home-assistant/core
homeassistant/components/onewire/* @garbled1
homeassistant/components/ondilo_ico/* @JeromeHXP
homeassistant/components/onewire/* @garbled1 @epenet
homeassistant/components/onvif/* @hunterjm
homeassistant/components/openerz/* @misialq
homeassistant/components/opengarage/* @danielhiversen
homeassistant/components/openhome/* @bazwilliams
homeassistant/components/opentherm_gw/* @mvn23
homeassistant/components/openuv/* @bachya
homeassistant/components/openweathermap/* @fabaff @freekode
homeassistant/components/openweathermap/* @fabaff @freekode @nzapponi
homeassistant/components/opnsense/* @mtreinish
homeassistant/components/orangepi_gpio/* @pascallj
homeassistant/components/oru/* @bvlaicu
homeassistant/components/ovo_energy/* @timmo001
homeassistant/components/ozw/* @cgarwood @marcelveldt @MartinHjelmare
homeassistant/components/panasonic_viera/* @joogps
homeassistant/components/panel_custom/* @home-assistant/frontend
homeassistant/components/panel_iframe/* @home-assistant/frontend
homeassistant/components/pcal9535a/* @Shulyaka
@@ -327,49 +354,55 @@ homeassistant/components/pi4ioe5v9xxxx/* @antonverburg
homeassistant/components/pi_hole/* @fabaff @johnluetke @shenxn
homeassistant/components/pilight/* @trekky12
homeassistant/components/plaato/* @JohNan
homeassistant/components/plant/* @ChristianKuehnel
homeassistant/components/plex/* @jjlawren
homeassistant/components/plugwise/* @CoMPaTech @bouwew
homeassistant/components/plugwise/* @CoMPaTech @bouwew @brefra
homeassistant/components/plum_lightpad/* @ColinHarrington @prystupa
homeassistant/components/point/* @fredrike
homeassistant/components/poolsense/* @haemishkyd
homeassistant/components/powerwall/* @bdraco @jrester
homeassistant/components/profiler/* @bdraco
homeassistant/components/progettihwsw/* @ardaseremet
homeassistant/components/prometheus/* @knyar
homeassistant/components/proxmoxve/* @k4ds3 @jhollowe
homeassistant/components/ps4/* @ktnrg45
homeassistant/components/ptvsd/* @swamp-ig
homeassistant/components/push/* @dgomes
homeassistant/components/pvoutput/* @fabaff
homeassistant/components/pvpc_hourly_pricing/* @azogue
homeassistant/components/qbittorrent/* @geoffreylagaisse
homeassistant/components/qld_bushfire/* @exxamalte
homeassistant/components/qnap/* @colinodell
homeassistant/components/quantum_gateway/* @cisasteelersfan
homeassistant/components/qvr_pro/* @oblogic7
homeassistant/components/qwikswitch/* @kellerza
homeassistant/components/rachio/* @bdraco
homeassistant/components/radiotherm/* @vinnyfuria
homeassistant/components/rainbird/* @konikvranik
homeassistant/components/raincloud/* @vanstinator
homeassistant/components/rainforest_eagle/* @gtdiehl @jcalbert
homeassistant/components/rainmachine/* @bachya
homeassistant/components/random/* @fabaff
homeassistant/components/recollect_waste/* @bachya
homeassistant/components/rejseplanen/* @DarkFox
homeassistant/components/repetier/* @MTrab
homeassistant/components/rfxtrx/* @danielhiversen @elupus
homeassistant/components/rflink/* @javicalle
homeassistant/components/rfxtrx/* @danielhiversen @elupus @RobBie1221
homeassistant/components/ring/* @balloob
homeassistant/components/risco/* @OnFreund
homeassistant/components/rituals_perfume_genie/* @milanmeu
homeassistant/components/rmvtransport/* @cgtobi
homeassistant/components/roku/* @ctalkington
homeassistant/components/roomba/* @pschmitt @cyr-ius @shenxn
homeassistant/components/roon/* @pavoni
homeassistant/components/rpi_gpio_pwm/* @soldag
homeassistant/components/rpi_power/* @shenxn @swetoast
homeassistant/components/ruckus_unleashed/* @gabe565
homeassistant/components/safe_mode/* @home-assistant/core
homeassistant/components/saj/* @fredericvl
homeassistant/components/salt/* @bjornorri
homeassistant/components/samsungtv/* @escoand
homeassistant/components/scene/* @home-assistant/core
homeassistant/components/schluter/* @prairieapps
homeassistant/components/scrape/* @fabaff
homeassistant/components/screenlogic/* @dieselrabbit
homeassistant/components/script/* @home-assistant/core
homeassistant/components/search/* @home-assistant/core
homeassistant/components/sense/* @kbickar
@@ -380,7 +413,7 @@ homeassistant/components/seven_segments/* @fabaff
homeassistant/components/seventeentrack/* @bachya
homeassistant/components/sharkiq/* @ajmarks
homeassistant/components/shell_command/* @home-assistant/core
homeassistant/components/shelly/* @balloob @bieniu
homeassistant/components/shelly/* @balloob @bieniu @thecode @chemelli74
homeassistant/components/shiftr/* @fabaff
homeassistant/components/shodan/* @fabaff
homeassistant/components/sighthound/* @robmarkcole
@@ -389,15 +422,18 @@ homeassistant/components/simplisafe/* @bachya
homeassistant/components/sinch/* @bendikrb
homeassistant/components/sisyphus/* @jkeljo
homeassistant/components/sky_hub/* @rogerselwyn
homeassistant/components/slack/* @bachya
homeassistant/components/slide/* @ualex73
homeassistant/components/sma/* @kellerza
homeassistant/components/smappee/* @bsmappee
homeassistant/components/smart_meter_texas/* @grahamwetzler
homeassistant/components/smarthab/* @outadoc
homeassistant/components/smartthings/* @andrewsayre
homeassistant/components/smarttub/* @mdz
homeassistant/components/smarty/* @z0mbieprocess
homeassistant/components/sms/* @ocalvo
homeassistant/components/smtp/* @fabaff
homeassistant/components/solaredge/* @frenck
homeassistant/components/solaredge_local/* @drobtravels @scheric
homeassistant/components/solarlog/* @Ernst79
homeassistant/components/solax/* @squishykid
@@ -413,12 +449,14 @@ homeassistant/components/splunk/* @Bre77
homeassistant/components/spotify/* @frenck
homeassistant/components/sql/* @dgomes
homeassistant/components/squeezebox/* @rajlaud
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/stream/* @hunterjm @uvjustin
homeassistant/components/stream/* @hunterjm @uvjustin @allenporter
homeassistant/components/stt/* @pvizeli
homeassistant/components/subaru/* @G-Two
homeassistant/components/suez_water/* @ooii
homeassistant/components/sun/* @Swamp-Ig
homeassistant/components/supla/* @mwegrzynek
@@ -429,13 +467,15 @@ homeassistant/components/switchbot/* @danielhiversen
homeassistant/components/switcher_kis/* @tomerfi
homeassistant/components/switchmate/* @danielhiversen
homeassistant/components/syncthru/* @nielstron
homeassistant/components/synology_dsm/* @hacf-fr @Quentame
homeassistant/components/synology_dsm/* @hacf-fr @Quentame @mib1185
homeassistant/components/synology_srm/* @aerialls
homeassistant/components/syslog/* @fabaff
homeassistant/components/tado/* @michaelarnauts @bdraco
homeassistant/components/tado/* @michaelarnauts @bdraco @noltari
homeassistant/components/tag/* @balloob @dmulcahey
homeassistant/components/tahoma/* @philklei
homeassistant/components/tankerkoenig/* @guillempages
homeassistant/components/tapsaff/* @bazwilliams
homeassistant/components/tasmota/* @emontnemery
homeassistant/components/tautulli/* @ludeeus
homeassistant/components/tellduslive/* @fredrike
homeassistant/components/template/* @PhracturedBlue @tetienne
@@ -450,16 +490,17 @@ homeassistant/components/tmb/* @alemuro
homeassistant/components/todoist/* @boralyl
homeassistant/components/toon/* @frenck
homeassistant/components/totalconnect/* @austinmroczek
homeassistant/components/tplink/* @rytilahti
homeassistant/components/tplink/* @rytilahti @thegardenmonkey
homeassistant/components/traccar/* @ludeeus
homeassistant/components/tradfri/* @ggravlingen
homeassistant/components/trace/* @home-assistant/core
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/twentemilieu/* @frenck
homeassistant/components/ubee/* @mzdrale
homeassistant/components/twinkly/* @dr1rrb
homeassistant/components/ubus/* @noltari
homeassistant/components/unifi/* @Kane610
homeassistant/components/unifiled/* @florisvdk
homeassistant/components/upb/* @gwww
@@ -472,7 +513,8 @@ homeassistant/components/usgs_earthquakes_feed/* @exxamalte
homeassistant/components/utility_meter/* @dgomes
homeassistant/components/velbus/* @Cereal2nd @brefra
homeassistant/components/velux/* @Julius2342
homeassistant/components/vera/* @vangorra
homeassistant/components/vera/* @pavoni
homeassistant/components/verisure/* @frenck
homeassistant/components/versasense/* @flamm3blemuff1n
homeassistant/components/version/* @fabaff @ludeeus
homeassistant/components/vesync/* @markperdue @webdjoe @thegardenmonkey
@@ -480,14 +522,16 @@ homeassistant/components/vicare/* @oischinger
homeassistant/components/vilfo/* @ManneW
homeassistant/components/vivotek/* @HarlemSquirrel
homeassistant/components/vizio/* @raman325
homeassistant/components/vlc_telnet/* @rodripf
homeassistant/components/vlc_telnet/* @rodripf @dmcc
homeassistant/components/volkszaehler/* @fabaff
homeassistant/components/volumio/* @OnFreund
homeassistant/components/wake_on_lan/* @ntilley905
homeassistant/components/waqi/* @andrey-git
homeassistant/components/watson_tts/* @rutkai
homeassistant/components/weather/* @fabaff
homeassistant/components/webostv/* @bendavid
homeassistant/components/websocket_api/* @home-assistant/core
homeassistant/components/wemo/* @esev
homeassistant/components/wiffi/* @mampfes
homeassistant/components/wilight/* @leofig-rj
homeassistant/components/withings/* @vangorra
@@ -495,8 +539,8 @@ homeassistant/components/wled/* @frenck
homeassistant/components/wolflink/* @adamkrol93
homeassistant/components/workday/* @fabaff
homeassistant/components/worldclock/* @fabaff
homeassistant/components/xbox/* @hunterjm
homeassistant/components/xbox_live/* @MartinHjelmare
homeassistant/components/xfinity/* @cisasteelersfan
homeassistant/components/xiaomi_aqara/* @danielhiversen @syssi
homeassistant/components/xiaomi_miio/* @rytilahti @syssi @starkillerOG
homeassistant/components/xiaomi_tv/* @simse
@@ -505,15 +549,15 @@ homeassistant/components/yamaha_musiccast/* @jalmeroth
homeassistant/components/yandex_transport/* @rishatik92 @devbis
homeassistant/components/yeelight/* @rytilahti @zewelor @shenxn
homeassistant/components/yeelightsunflower/* @lindsaymarkward
homeassistant/components/yessssms/* @flowolf
homeassistant/components/yi/* @bachya
homeassistant/components/zeroconf/* @Kane610
homeassistant/components/zeroconf/* @bdraco
homeassistant/components/zerproc/* @emlove
homeassistant/components/zha/* @dmulcahey @adminiuga
homeassistant/components/zodiac/* @JulienTant
homeassistant/components/zone/* @home-assistant/core
homeassistant/components/zoneminder/* @rohankapoorcom @vangorra
homeassistant/components/zoneminder/* @rohankapoorcom
homeassistant/components/zwave/* @home-assistant/z-wave
homeassistant/components/zwave_js/* @home-assistant/z-wave
# Individual files
homeassistant/components/demo/weather @fabaff

View File

@@ -5,14 +5,14 @@ Everybody is invited and welcome to contribute to Home Assistant. There is a lot
The process is straight-forward.
- Read [How to get faster PR reviews](https://github.com/kubernetes/community/blob/master/contributors/guide/pull-requests.md#best-practices-for-faster-reviews) by Kubernetes (but skip step 0 and 1)
- Fork the Home Assistant [git repository](https://github.com/home-assistant/home-assistant).
- Fork the Home Assistant [git repository](https://github.com/home-assistant/core).
- Write the code for your device, notification service, sensor, or IoT thing.
- Ensure tests work.
- Create a Pull Request against the [**dev**](https://github.com/home-assistant/home-assistant/tree/dev) branch of Home Assistant.
- Create a Pull Request against the [**dev**](https://github.com/home-assistant/core/tree/dev) branch of Home Assistant.
Still interested? Then you should take a peek at the [developer documentation](https://developers.home-assistant.io/) to get more details.
## Feature suggestions
If you want to suggest a new feature for Home Assistant (e.g., new integrations), please open a thread in our [Community Forum: Feature Requests](https://community.home-assistant.io/c/feature-requests).
We use [GitHub for tracking issues](https://github.com/home-assistant/home-assistant/issues), not for tracking feature requests.
We use [GitHub for tracking issues](https://github.com/home-assistant/core/issues), not for tracking feature requests.

View File

@@ -1,8 +1,9 @@
ARG BUILD_FROM
FROM ${BUILD_FROM}
# Synchronize with homeassistant/core.py:async_stop
ENV \
S6_SERVICES_GRACETIME=60000
S6_SERVICES_GRACETIME=220000
WORKDIR /usr/src

View File

@@ -1,7 +1,11 @@
FROM mcr.microsoft.com/vscode/devcontainers/python:0-3.8
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
RUN \
apt-get update && apt-get install -y --no-install-recommends \
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 \
libudev-dev \
libavformat-dev \
libavcodec-dev \
@@ -10,6 +14,7 @@ RUN \
libswscale-dev \
libswresample-dev \
libavfilter-dev \
libpcap-dev \
git \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
@@ -23,10 +28,11 @@ RUN git clone --depth 1 https://github.com/home-assistant/hass-release \
WORKDIR /workspaces
# Install Python dependencies from requirements
COPY requirements_test.txt requirements_test_pre_commit.txt ./
COPY requirements.txt requirements_test.txt requirements_test_pre_commit.txt ./
COPY homeassistant/package_constraints.txt homeassistant/package_constraints.txt
RUN pip3 install -r requirements_test.txt \
&& rm -rf requirements_test.txt requirements_test_pre_commit.txt homeassistant/
RUN pip3 install -r requirements.txt \
&& pip3 install -r requirements_test.txt \
&& rm -rf requirements.txt requirements_test.txt requirements_test_pre_commit.txt homeassistant/
# Set the default shell to bash instead of sh
ENV SHELL /bin/bash

View File

@@ -5,7 +5,7 @@ Open source home automation that puts local control and privacy first. Powered b
Check out `home-assistant.io <https://home-assistant.io>`__ for `a
demo <https://home-assistant.io/demo/>`__, `installation instructions <https://home-assistant.io/getting-started/>`__,
`tutorials <https://home-assistant.io/getting-started/automation-2/>`__ and `documentation <https://home-assistant.io/docs/>`__.
`tutorials <https://home-assistant.io/getting-started/automation/>`__ and `documentation <https://home-assistant.io/docs/>`__.
|screenshot-states|
@@ -14,8 +14,8 @@ Featured integrations
|screenshot-components|
The system is built using a modular approach so support for other devices or actions can be implemented easily. See also the `section on architecture <https://developers.home-assistant.io/docs/en/architecture_index.html>`__ and the `section on creating your own
components <https://developers.home-assistant.io/docs/en/creating_component_index.html>`__.
The system is built using a modular approach so support for other devices or actions can be implemented easily. See also the `section on architecture <https://developers.home-assistant.io/docs/architecture_index/>`__ and the `section on creating your own
components <https://developers.home-assistant.io/docs/creating_component_index/>`__.
If you run into issues while using Home Assistant or during development
of a component, check the `Home Assistant help section <https://home-assistant.io/help/>`__ of our website for further help and information.

View File

@@ -14,8 +14,6 @@ pr:
resources:
containers:
- container: 37
image: homeassistant/ci-azure:3.7
- container: 38
image: homeassistant/ci-azure:3.8
repositories:
@@ -25,7 +23,7 @@ resources:
endpoint: "home-assistant"
variables:
- name: PythonMain
value: "37"
value: "38"
- name: versionHadolint
value: "v1.17.6"
@@ -150,8 +148,6 @@ stages:
strategy:
maxParallel: 3
matrix:
Python37:
python.container: "37"
Python38:
python.container: "38"
container: $[ variables['python.container'] ]

View File

@@ -14,7 +14,7 @@ schedules:
always: true
variables:
- name: versionBuilder
value: '7.2.0'
value: '2021.02.0'
- group: docker
- group: github
- group: twine
@@ -60,9 +60,9 @@ stages:
vmImage: 'ubuntu-latest'
steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.7'
displayName: 'Use Python 3.8'
inputs:
versionSpec: '3.7'
versionSpec: '3.8'
- script: pip install twine wheel
displayName: 'Install tools'
- script: python setup.py sdist bdist_wheel
@@ -82,19 +82,14 @@ stages:
matrix:
amd64:
buildArch: 'amd64'
buildMachine: 'qemux86-64,intel-nuc'
i386:
buildArch: 'i386'
buildMachine: 'qemux86'
armhf:
buildArch: 'armhf'
buildMachine: 'qemuarm,raspberrypi'
armv7:
buildArch: 'armv7'
buildMachine: 'raspberrypi2,raspberrypi3,raspberrypi4,odroid-xu,tinker'
aarch64:
buildArch: 'aarch64'
buildMachine: 'qemuarm-64,raspberrypi3-64,raspberrypi4-64,odroid-c2,odroid-n2'
steps:
- template: templates/azp-step-ha-version.yaml@azure
- script: |
@@ -111,15 +106,68 @@ stages:
-v $(pwd):/data:ro \
homeassistant/amd64-builder:$(versionBuilder) \
--generic $(homeassistantRelease) "--$(buildArch)" -t /data \
displayName: 'Build Release'
- job: 'ReleaseMachine'
dependsOn:
- ReleaseDocker
timeoutInMinutes: 240
pool:
vmImage: 'ubuntu-latest'
strategy:
maxParallel: 17
matrix:
qemux86-64:
buildMachine: 'qemux86-64'
generic-x86-64:
buildMachine: 'generic-x86-64'
intel-nuc:
buildMachine: 'intel-nuc'
qemux86:
buildMachine: 'qemux86'
qemuarm:
buildMachine: 'qemuarm'
raspberrypi:
buildMachine: 'raspberrypi'
raspberrypi2:
buildMachine: 'raspberrypi2'
raspberrypi3:
buildMachine: 'raspberrypi3'
raspberrypi4:
buildMachine: 'raspberrypi4'
odroid-xu:
buildMachine: 'odroid-xu'
tinker:
buildMachine: 'tinker'
qemuarm-64:
buildMachine: 'qemuarm-64'
raspberrypi3-64:
buildMachine: 'raspberrypi3-64'
raspberrypi4-64:
buildMachine: 'raspberrypi4-64'
odroid-c2:
buildMachine: 'odroid-c2'
odroid-c4:
buildMachine: 'odroid-c4'
odroid-n2:
buildMachine: 'odroid-n2'
steps:
- template: templates/azp-step-ha-version.yaml@azure
- script: |
docker login -u $(dockerUser) -p $(dockerPassword)
displayName: 'Docker hub login'
- script: docker pull homeassistant/amd64-builder:$(versionBuilder)
displayName: 'Install Builder'
- script: |
set -e
docker run --rm --privileged \
-v ~/.docker:/root/.docker \
-v /run/docker.sock:/run/docker.sock:rw \
-v $(pwd):/data:ro \
homeassistant/amd64-builder:$(versionBuilder) \
--homeassistant-machine "$(homeassistantRelease)=$(buildMachine)" \
-r https://github.com/home-assistant/hassio-homeassistant \
-t machine --docker-hub homeassistant
displayName: 'Build Release'
-t /data/machine --docker-hub homeassistant
displayName: 'Build Machine'
- stage: 'Publish'
jobs:
@@ -143,8 +191,8 @@ stages:
version="$(homeassistantRelease)"
git clone https://github.com/home-assistant/hassio-version
cd hassio-version
git clone https://github.com/home-assistant/version
cd version
dev_version="$(jq --raw-output '.homeassistant.default' dev.json)"
beta_version="$(jq --raw-output '.homeassistant.default' beta.json)"

View File

@@ -30,9 +30,9 @@ jobs:
vmImage: 'ubuntu-latest'
steps:
- task: UsePythonVersion@0
displayName: 'Use Python 3.7'
displayName: 'Use Python 3.8'
inputs:
versionSpec: '3.7'
versionSpec: '3.8'
- script: |
export LOKALISE_TOKEN="$(lokaliseToken)"
export AZURE_BRANCH="$(Build.SourceBranchName)"

View File

@@ -1,11 +1,11 @@
{
"image": "homeassistant/{arch}-homeassistant",
"build_from": {
"aarch64": "homeassistant/aarch64-homeassistant-base:8.4.0",
"armhf": "homeassistant/armhf-homeassistant-base:8.4.0",
"armv7": "homeassistant/armv7-homeassistant-base:8.4.0",
"amd64": "homeassistant/amd64-homeassistant-base:8.4.0",
"i386": "homeassistant/i386-homeassistant-base:8.4.0"
"aarch64": "homeassistant/aarch64-homeassistant-base:2021.02.0",
"armhf": "homeassistant/armhf-homeassistant-base:2021.02.0",
"armv7": "homeassistant/armv7-homeassistant-base:2021.02.0",
"amd64": "homeassistant/amd64-homeassistant-base:2021.02.0",
"i386": "homeassistant/i386-homeassistant-base:2021.02.0"
},
"labels": {
"io.hass.type": "core"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 102 KiB

View File

@@ -1,6 +1,6 @@
<ul>
<li><a href="https://home-assistant.io/">Homepage</a></li>
<li><a href="https://community.home-assistant.io">Community Forums</a></li>
<li><a href="https://github.com/home-assistant/home-assistant">GitHub</a></li>
<li><a href="https://github.com/home-assistant/core">GitHub</a></li>
<li><a href="https://discord.gg/c5DvZ4e">Discord</a></li>
</ul>

View File

@@ -207,7 +207,6 @@ html_theme_options = {
"github_repo": PROJECT_GITHUB_REPOSITORY,
"github_type": "star",
"github_banner": True,
"travis_button": True,
"touch_icon": "logo-apple.png",
# 'fixed_sidebar': True, # Re-enable when we have more content
}

View File

@@ -1,11 +1,12 @@
"""Start Home Assistant."""
from __future__ import annotations
import argparse
import os
import platform
import subprocess
import sys
import threading
from typing import List
from homeassistant.const import REQUIRED_PYTHON_VER, RESTART_EXIT_CODE, __version__
@@ -206,7 +207,7 @@ def closefds_osx(min_fd: int, max_fd: int) -> None:
pass
def cmdline() -> List[str]:
def cmdline() -> list[str]:
"""Collect path and arguments to re-execute the current hass instance."""
if os.path.basename(sys.argv[0]) == "__main__.py":
modulepath = os.path.dirname(sys.argv[0])

View File

@@ -1,9 +1,10 @@
"""Provide an authentication layer for Home Assistant."""
from __future__ import annotations
import asyncio
from collections import OrderedDict
from datetime import timedelta
import logging
from typing import Any, Dict, List, Optional, Tuple, cast
from typing import Any, Dict, Optional, Tuple, cast
import jwt
@@ -20,17 +21,24 @@ from .providers import AuthProvider, LoginFlow, auth_provider_from_config
EVENT_USER_ADDED = "user_added"
EVENT_USER_REMOVED = "user_removed"
_LOGGER = logging.getLogger(__name__)
_MfaModuleDict = Dict[str, MultiFactorAuthModule]
_ProviderKey = Tuple[str, Optional[str]]
_ProviderDict = Dict[_ProviderKey, AuthProvider]
class InvalidAuthError(Exception):
"""Raised when a authentication error occurs."""
class InvalidProvider(Exception):
"""Authentication provider not found."""
async def auth_manager_from_config(
hass: HomeAssistant,
provider_configs: List[Dict[str, Any]],
module_configs: List[Dict[str, Any]],
) -> "AuthManager":
provider_configs: list[dict[str, Any]],
module_configs: list[dict[str, Any]],
) -> AuthManager:
"""Initialize an auth manager from config.
CORE_CONFIG_SCHEMA will make sure do duplicated auth providers or
@@ -70,7 +78,7 @@ async def auth_manager_from_config(
class AuthManagerFlowManager(data_entry_flow.FlowManager):
"""Manage authentication flows."""
def __init__(self, hass: HomeAssistant, auth_manager: "AuthManager"):
def __init__(self, hass: HomeAssistant, auth_manager: AuthManager):
"""Init auth manager flows."""
super().__init__(hass)
self.auth_manager = auth_manager
@@ -79,8 +87,8 @@ class AuthManagerFlowManager(data_entry_flow.FlowManager):
self,
handler_key: Any,
*,
context: Optional[Dict[str, Any]] = None,
data: Optional[Dict[str, Any]] = None,
context: dict[str, Any] | None = None,
data: dict[str, Any] | None = None,
) -> data_entry_flow.FlowHandler:
"""Create a login flow."""
auth_provider = self.auth_manager.get_auth_provider(*handler_key)
@@ -89,8 +97,8 @@ class AuthManagerFlowManager(data_entry_flow.FlowManager):
return await auth_provider.async_login_flow(context)
async def async_finish_flow(
self, flow: data_entry_flow.FlowHandler, result: Dict[str, Any]
) -> Dict[str, Any]:
self, flow: data_entry_flow.FlowHandler, result: dict[str, Any]
) -> dict[str, Any]:
"""Return a user as result of login flow."""
flow = cast(LoginFlow, flow)
@@ -98,7 +106,7 @@ class AuthManagerFlowManager(data_entry_flow.FlowManager):
return result
# we got final result
if isinstance(result["data"], models.User):
if isinstance(result["data"], models.Credentials):
result["result"] = result["data"]
return result
@@ -122,11 +130,12 @@ class AuthManagerFlowManager(data_entry_flow.FlowManager):
modules = await self.auth_manager.async_get_enabled_mfa(user)
if modules:
flow.credential = credentials
flow.user = user
flow.available_mfa_modules = modules
return await flow.async_step_select_mfa_module()
result["result"] = await self.auth_manager.async_get_or_create_user(credentials)
result["result"] = credentials
return result
@@ -148,22 +157,22 @@ class AuthManager:
self.login_flow = AuthManagerFlowManager(hass, self)
@property
def auth_providers(self) -> List[AuthProvider]:
def auth_providers(self) -> list[AuthProvider]:
"""Return a list of available auth providers."""
return list(self._providers.values())
@property
def auth_mfa_modules(self) -> List[MultiFactorAuthModule]:
def auth_mfa_modules(self) -> list[MultiFactorAuthModule]:
"""Return a list of available auth modules."""
return list(self._mfa_modules.values())
def get_auth_provider(
self, provider_type: str, provider_id: str
) -> Optional[AuthProvider]:
self, provider_type: str, provider_id: str | None
) -> AuthProvider | None:
"""Return an auth provider, None if not found."""
return self._providers.get((provider_type, provider_id))
def get_auth_providers(self, provider_type: str) -> List[AuthProvider]:
def get_auth_providers(self, provider_type: str) -> list[AuthProvider]:
"""Return a List of auth provider of one type, Empty if not found."""
return [
provider
@@ -171,30 +180,30 @@ class AuthManager:
if p_type == provider_type
]
def get_auth_mfa_module(self, module_id: str) -> Optional[MultiFactorAuthModule]:
def get_auth_mfa_module(self, module_id: str) -> MultiFactorAuthModule | None:
"""Return a multi-factor auth module, None if not found."""
return self._mfa_modules.get(module_id)
async def async_get_users(self) -> List[models.User]:
async def async_get_users(self) -> list[models.User]:
"""Retrieve all users."""
return await self._store.async_get_users()
async def async_get_user(self, user_id: str) -> Optional[models.User]:
async def async_get_user(self, user_id: str) -> models.User | None:
"""Retrieve a user."""
return await self._store.async_get_user(user_id)
async def async_get_owner(self) -> Optional[models.User]:
async def async_get_owner(self) -> models.User | None:
"""Retrieve the owner."""
users = await self.async_get_users()
return next((user for user in users if user.is_owner), None)
async def async_get_group(self, group_id: str) -> Optional[models.Group]:
async def async_get_group(self, group_id: str) -> models.Group | None:
"""Retrieve all groups."""
return await self._store.async_get_group(group_id)
async def async_get_user_by_credentials(
self, credentials: models.Credentials
) -> Optional[models.User]:
) -> models.User | None:
"""Get a user by credential, return None if not found."""
for user in await self.async_get_users():
for creds in user.credentials:
@@ -204,7 +213,7 @@ class AuthManager:
return None
async def async_create_system_user(
self, name: str, group_ids: Optional[List[str]] = None
self, name: str, group_ids: list[str] | None = None
) -> models.User:
"""Create a system user."""
user = await self._store.async_create_user(
@@ -216,10 +225,10 @@ class AuthManager:
return user
async def async_create_user(
self, name: str, group_ids: Optional[List[str]] = None
self, name: str, group_ids: list[str] | None = None
) -> models.User:
"""Create a user."""
kwargs: Dict[str, Any] = {
kwargs: dict[str, Any] = {
"name": name,
"is_active": True,
"group_ids": group_ids or [],
@@ -285,17 +294,24 @@ class AuthManager:
async def async_update_user(
self,
user: models.User,
name: Optional[str] = None,
group_ids: Optional[List[str]] = None,
name: str | None = None,
is_active: bool | None = None,
group_ids: list[str] | None = None,
) -> None:
"""Update a user."""
kwargs: Dict[str, Any] = {}
kwargs: dict[str, Any] = {}
if name is not None:
kwargs["name"] = name
if group_ids is not None:
kwargs["group_ids"] = group_ids
await self._store.async_update_user(user, **kwargs)
if is_active is not None:
if is_active is True:
await self.async_activate_user(user)
else:
await self.async_deactivate_user(user)
async def async_activate_user(self, user: models.User) -> None:
"""Activate a user."""
await self._store.async_activate_user(user)
@@ -346,9 +362,9 @@ class AuthManager:
await module.async_depose_user(user.id)
async def async_get_enabled_mfa(self, user: models.User) -> Dict[str, str]:
async def async_get_enabled_mfa(self, user: models.User) -> dict[str, str]:
"""List enabled mfa modules for user."""
modules: Dict[str, str] = OrderedDict()
modules: dict[str, str] = OrderedDict()
for module_id, module in self._mfa_modules.items():
if await module.async_is_user_setup(user.id):
modules[module_id] = module.name
@@ -357,11 +373,12 @@ class AuthManager:
async def async_create_refresh_token(
self,
user: models.User,
client_id: Optional[str] = None,
client_name: Optional[str] = None,
client_icon: Optional[str] = None,
token_type: Optional[str] = None,
client_id: str | None = None,
client_name: str | None = None,
client_icon: str | None = None,
token_type: str | None = None,
access_token_expiration: timedelta = ACCESS_TOKEN_EXPIRATION,
credential: models.Credentials | None = None,
) -> models.RefreshToken:
"""Create a new refresh token for a user."""
if not user.is_active:
@@ -410,17 +427,18 @@ class AuthManager:
client_icon,
token_type,
access_token_expiration,
credential,
)
async def async_get_refresh_token(
self, token_id: str
) -> Optional[models.RefreshToken]:
) -> models.RefreshToken | None:
"""Get refresh token by id."""
return await self._store.async_get_refresh_token(token_id)
async def async_get_refresh_token_by_token(
self, token: str
) -> Optional[models.RefreshToken]:
) -> models.RefreshToken | None:
"""Get refresh token by token."""
return await self._store.async_get_refresh_token_by_token(token)
@@ -432,9 +450,11 @@ class AuthManager:
@callback
def async_create_access_token(
self, refresh_token: models.RefreshToken, remote_ip: Optional[str] = None
self, refresh_token: models.RefreshToken, remote_ip: str | None = None
) -> str:
"""Create a new access token."""
self.async_validate_refresh_token(refresh_token, remote_ip)
self._store.async_log_refresh_token_usage(refresh_token, remote_ip)
now = dt_util.utcnow()
@@ -448,9 +468,43 @@ class AuthManager:
algorithm="HS256",
).decode()
@callback
def _async_resolve_provider(
self, refresh_token: models.RefreshToken
) -> AuthProvider | None:
"""Get the auth provider for the given refresh token.
Raises an exception if the expected provider is no longer available or return
None if no provider was expected for this refresh token.
"""
if refresh_token.credential is None:
return None
provider = self.get_auth_provider(
refresh_token.credential.auth_provider_type,
refresh_token.credential.auth_provider_id,
)
if provider is None:
raise InvalidProvider(
f"Auth provider {refresh_token.credential.auth_provider_type}, {refresh_token.credential.auth_provider_id} not available"
)
return provider
@callback
def async_validate_refresh_token(
self, refresh_token: models.RefreshToken, remote_ip: str | None = None
) -> None:
"""Validate that a refresh token is usable.
Will raise InvalidAuthError on errors.
"""
provider = self._async_resolve_provider(refresh_token)
if provider:
provider.async_validate_refresh_token(refresh_token, remote_ip)
async def async_validate_access_token(
self, token: str
) -> Optional[models.RefreshToken]:
) -> models.RefreshToken | None:
"""Return refresh token if an access token is valid."""
try:
unverif_claims = jwt.decode(token, verify=False)
@@ -481,7 +535,7 @@ class AuthManager:
@callback
def _async_get_auth_provider(
self, credentials: models.Credentials
) -> Optional[AuthProvider]:
) -> AuthProvider | None:
"""Get auth provider from a set of credentials."""
auth_provider_key = (
credentials.auth_provider_type,

View File

@@ -1,10 +1,12 @@
"""Storage for auth models."""
from __future__ import annotations
import asyncio
from collections import OrderedDict
from datetime import timedelta
import hmac
from logging import getLogger
from typing import Any, Dict, List, Optional
from typing import Any
from homeassistant.auth.const import ACCESS_TOKEN_EXPIRATION
from homeassistant.core import HomeAssistant, callback
@@ -34,15 +36,15 @@ class AuthStore:
def __init__(self, hass: HomeAssistant) -> None:
"""Initialize the auth store."""
self.hass = hass
self._users: Optional[Dict[str, models.User]] = None
self._groups: Optional[Dict[str, models.Group]] = None
self._perm_lookup: Optional[PermissionLookup] = None
self._users: dict[str, models.User] | None = None
self._groups: dict[str, models.Group] | None = None
self._perm_lookup: PermissionLookup | None = None
self._store = hass.helpers.storage.Store(
STORAGE_VERSION, STORAGE_KEY, private=True
)
self._lock = asyncio.Lock()
async def async_get_groups(self) -> List[models.Group]:
async def async_get_groups(self) -> list[models.Group]:
"""Retrieve all users."""
if self._groups is None:
await self._async_load()
@@ -50,7 +52,7 @@ class AuthStore:
return list(self._groups.values())
async def async_get_group(self, group_id: str) -> Optional[models.Group]:
async def async_get_group(self, group_id: str) -> models.Group | None:
"""Retrieve all users."""
if self._groups is None:
await self._async_load()
@@ -58,7 +60,7 @@ class AuthStore:
return self._groups.get(group_id)
async def async_get_users(self) -> List[models.User]:
async def async_get_users(self) -> list[models.User]:
"""Retrieve all users."""
if self._users is None:
await self._async_load()
@@ -66,7 +68,7 @@ class AuthStore:
return list(self._users.values())
async def async_get_user(self, user_id: str) -> Optional[models.User]:
async def async_get_user(self, user_id: str) -> models.User | None:
"""Retrieve a user by id."""
if self._users is None:
await self._async_load()
@@ -76,12 +78,12 @@ class AuthStore:
async def async_create_user(
self,
name: Optional[str],
is_owner: Optional[bool] = None,
is_active: Optional[bool] = None,
system_generated: Optional[bool] = None,
credentials: Optional[models.Credentials] = None,
group_ids: Optional[List[str]] = None,
name: str | None,
is_owner: bool | None = None,
is_active: bool | None = None,
system_generated: bool | None = None,
credentials: models.Credentials | None = None,
group_ids: list[str] | None = None,
) -> models.User:
"""Create a new user."""
if self._users is None:
@@ -97,7 +99,7 @@ class AuthStore:
raise ValueError(f"Invalid group specified {group_id}")
groups.append(group)
kwargs: Dict[str, Any] = {
kwargs: dict[str, Any] = {
"name": name,
# Until we get group management, we just put everyone in the
# same group.
@@ -146,9 +148,9 @@ class AuthStore:
async def async_update_user(
self,
user: models.User,
name: Optional[str] = None,
is_active: Optional[bool] = None,
group_ids: Optional[List[str]] = None,
name: str | None = None,
is_active: bool | None = None,
group_ids: list[str] | None = None,
) -> None:
"""Update a user."""
assert self._groups is not None
@@ -203,18 +205,20 @@ class AuthStore:
async def async_create_refresh_token(
self,
user: models.User,
client_id: Optional[str] = None,
client_name: Optional[str] = None,
client_icon: Optional[str] = None,
client_id: str | None = None,
client_name: str | None = None,
client_icon: str | None = None,
token_type: str = models.TOKEN_TYPE_NORMAL,
access_token_expiration: timedelta = ACCESS_TOKEN_EXPIRATION,
credential: models.Credentials | None = None,
) -> models.RefreshToken:
"""Create a new token for a user."""
kwargs: Dict[str, Any] = {
kwargs: dict[str, Any] = {
"user": user,
"client_id": client_id,
"token_type": token_type,
"access_token_expiration": access_token_expiration,
"credential": credential,
}
if client_name:
kwargs["client_name"] = client_name
@@ -242,7 +246,7 @@ class AuthStore:
async def async_get_refresh_token(
self, token_id: str
) -> Optional[models.RefreshToken]:
) -> models.RefreshToken | None:
"""Get refresh token by id."""
if self._users is None:
await self._async_load()
@@ -257,7 +261,7 @@ class AuthStore:
async def async_get_refresh_token_by_token(
self, token: str
) -> Optional[models.RefreshToken]:
) -> models.RefreshToken | None:
"""Get refresh token by token."""
if self._users is None:
await self._async_load()
@@ -274,7 +278,7 @@ class AuthStore:
@callback
def async_log_refresh_token_usage(
self, refresh_token: models.RefreshToken, remote_ip: Optional[str] = None
self, refresh_token: models.RefreshToken, remote_ip: str | None = None
) -> None:
"""Update refresh token last used information."""
refresh_token.last_used_at = dt_util.utcnow()
@@ -307,8 +311,9 @@ class AuthStore:
self._set_defaults()
return
users: Dict[str, models.User] = OrderedDict()
groups: Dict[str, models.Group] = OrderedDict()
users: dict[str, models.User] = OrderedDict()
groups: dict[str, models.Group] = OrderedDict()
credentials: dict[str, models.Credentials] = OrderedDict()
# Soft-migrating data as we load. We are going to make sure we have a
# read only group and an admin group. There are two states that we can
@@ -325,7 +330,7 @@ class AuthStore:
# was added.
for group_dict in data.get("groups", []):
policy: Optional[PolicyType] = None
policy: PolicyType | None = None
if group_dict["id"] == GROUP_ID_ADMIN:
has_admin_group = True
@@ -415,15 +420,15 @@ class AuthStore:
)
for cred_dict in data["credentials"]:
users[cred_dict["user_id"]].credentials.append(
models.Credentials(
id=cred_dict["id"],
is_new=False,
auth_provider_type=cred_dict["auth_provider_type"],
auth_provider_id=cred_dict["auth_provider_id"],
data=cred_dict["data"],
)
credential = models.Credentials(
id=cred_dict["id"],
is_new=False,
auth_provider_type=cred_dict["auth_provider_type"],
auth_provider_id=cred_dict["auth_provider_id"],
data=cred_dict["data"],
)
credentials[cred_dict["id"]] = credential
users[cred_dict["user_id"]].credentials.append(credential)
for rt_dict in data["refresh_tokens"]:
# Filter out the old keys that don't have jwt_key (pre-0.76)
@@ -469,6 +474,8 @@ class AuthStore:
jwt_key=rt_dict["jwt_key"],
last_used_at=last_used_at,
last_used_ip=rt_dict.get("last_used_ip"),
credential=credentials.get(rt_dict.get("credential_id")),
version=rt_dict.get("version"),
)
users[rt_dict["user_id"]].refresh_tokens[token.id] = token
@@ -484,7 +491,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:
"""Return the data to store."""
assert self._users is not None
assert self._groups is not None
@@ -503,7 +510,7 @@ class AuthStore:
groups = []
for group in self._groups.values():
g_dict: Dict[str, Any] = {
g_dict: dict[str, Any] = {
"id": group.id,
# Name not read for sys groups. Kept here for backwards compat
"name": group.name,
@@ -542,6 +549,10 @@ class AuthStore:
if refresh_token.last_used_at
else None,
"last_used_ip": refresh_token.last_used_ip,
"credential_id": refresh_token.credential.id
if refresh_token.credential
else None,
"version": refresh_token.version,
}
for user in self._users.values()
for refresh_token in user.refresh_tokens.values()
@@ -558,7 +569,7 @@ class AuthStore:
"""Set default values for auth store."""
self._users = OrderedDict()
groups: Dict[str, models.Group] = OrderedDict()
groups: dict[str, models.Group] = OrderedDict()
admin_group = _system_admin_group()
groups[admin_group.id] = admin_group
user_group = _system_user_group()

View File

@@ -1,8 +1,10 @@
"""Pluggable auth modules for Home Assistant."""
from __future__ import annotations
import importlib
import logging
import types
from typing import Any, Dict, Optional
from typing import Any
import voluptuous as vol
from voluptuous.humanize import humanize_error
@@ -36,7 +38,7 @@ class MultiFactorAuthModule:
DEFAULT_TITLE = "Unnamed auth module"
MAX_RETRY_TIME = 3
def __init__(self, hass: HomeAssistant, config: Dict[str, Any]) -> None:
def __init__(self, hass: HomeAssistant, config: dict[str, Any]) -> None:
"""Initialize an auth module."""
self.hass = hass
self.config = config
@@ -66,7 +68,7 @@ class MultiFactorAuthModule:
"""Return a voluptuous schema to define mfa auth module's input."""
raise NotImplementedError
async def async_setup_flow(self, user_id: str) -> "SetupFlow":
async def async_setup_flow(self, user_id: str) -> SetupFlow:
"""Return a data entry flow handler for setup module.
Mfa module should extend SetupFlow
@@ -85,7 +87,7 @@ class MultiFactorAuthModule:
"""Return whether user is setup."""
raise NotImplementedError
async def async_validate(self, user_id: str, user_input: Dict[str, Any]) -> bool:
async def async_validate(self, user_id: str, user_input: dict[str, Any]) -> bool:
"""Return True if validation passed."""
raise NotImplementedError
@@ -102,14 +104,14 @@ class SetupFlow(data_entry_flow.FlowHandler):
self._user_id = user_id
async def async_step_init(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Handle the first step of setup flow.
Return self.async_show_form(step_id='init') if user_input is None.
Return self.async_create_entry(data={'result': result}) if finish.
"""
errors: Dict[str, str] = {}
errors: dict[str, str] = {}
if user_input:
result = await self._auth_module.async_setup_user(self._user_id, user_input)
@@ -123,7 +125,7 @@ class SetupFlow(data_entry_flow.FlowHandler):
async def auth_mfa_module_from_config(
hass: HomeAssistant, config: Dict[str, Any]
hass: HomeAssistant, config: dict[str, Any]
) -> MultiFactorAuthModule:
"""Initialize an auth module from a config."""
module_name = config[CONF_TYPE]

View File

@@ -1,6 +1,7 @@
"""Example auth module."""
import logging
from typing import Any, Dict
from __future__ import annotations
from typing import Any
import voluptuous as vol
@@ -22,8 +23,6 @@ CONFIG_SCHEMA = MULTI_FACTOR_AUTH_MODULE_SCHEMA.extend(
extra=vol.PREVENT_EXTRA,
)
_LOGGER = logging.getLogger(__name__)
@MULTI_FACTOR_AUTH_MODULES.register("insecure_example")
class InsecureExampleModule(MultiFactorAuthModule):
@@ -31,7 +30,7 @@ class InsecureExampleModule(MultiFactorAuthModule):
DEFAULT_TITLE = "Insecure Personal Identify Number"
def __init__(self, hass: HomeAssistant, config: Dict[str, Any]) -> None:
def __init__(self, hass: HomeAssistant, config: dict[str, Any]) -> None:
"""Initialize the user data store."""
super().__init__(hass, config)
self._data = config["data"]
@@ -78,17 +77,11 @@ class InsecureExampleModule(MultiFactorAuthModule):
async def async_is_user_setup(self, user_id: str) -> bool:
"""Return whether user is setup."""
for data in self._data:
if data["user_id"] == user_id:
return True
return False
return any(data["user_id"] == user_id for data in self._data)
async def async_validate(self, user_id: str, user_input: Dict[str, Any]) -> bool:
async def async_validate(self, user_id: str, user_input: dict[str, Any]) -> bool:
"""Return True if validation passed."""
for data in self._data:
if data["user_id"] == user_id:
# user_input has been validate in caller
if data["pin"] == user_input["pin"]:
return True
return False
return any(
data["user_id"] == user_id and data["pin"] == user_input["pin"]
for data in self._data
)

View File

@@ -2,10 +2,12 @@
Sending HOTP through notify service
"""
from __future__ import annotations
import asyncio
from collections import OrderedDict
import logging
from typing import Any, Dict, List, Optional
from typing import Any, Dict
import attr
import voluptuous as vol
@@ -79,8 +81,8 @@ class NotifySetting:
secret: str = attr.ib(factory=_generate_secret) # not persistent
counter: int = attr.ib(factory=_generate_random) # not persistent
notify_service: Optional[str] = attr.ib(default=None)
target: Optional[str] = attr.ib(default=None)
notify_service: str | None = attr.ib(default=None)
target: str | None = attr.ib(default=None)
_UsersDict = Dict[str, NotifySetting]
@@ -92,10 +94,10 @@ class NotifyAuthModule(MultiFactorAuthModule):
DEFAULT_TITLE = "Notify One-Time Password"
def __init__(self, hass: HomeAssistant, config: Dict[str, Any]) -> None:
def __init__(self, hass: HomeAssistant, config: dict[str, Any]) -> None:
"""Initialize the user data store."""
super().__init__(hass, config)
self._user_settings: Optional[_UsersDict] = None
self._user_settings: _UsersDict | None = None
self._user_store = hass.helpers.storage.Store(
STORAGE_VERSION, STORAGE_KEY, private=True
)
@@ -146,7 +148,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
)
@callback
def aync_get_available_notify_services(self) -> List[str]:
def aync_get_available_notify_services(self) -> list[str]:
"""Return list of notify services."""
unordered_services = set()
@@ -198,7 +200,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
return user_id in self._user_settings
async def async_validate(self, user_id: str, user_input: Dict[str, Any]) -> bool:
async def async_validate(self, user_id: str, user_input: dict[str, Any]) -> bool:
"""Return True if validation passed."""
if self._user_settings is None:
await self._async_load()
@@ -258,7 +260,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
)
async def async_notify(
self, code: str, notify_service: str, target: Optional[str] = None
self, code: str, notify_service: str, target: str | None = None
) -> None:
"""Send code by notify service."""
data = {"message": self._message_template.format(code)}
@@ -276,23 +278,23 @@ class NotifySetupFlow(SetupFlow):
auth_module: NotifyAuthModule,
setup_schema: vol.Schema,
user_id: str,
available_notify_services: List[str],
available_notify_services: list[str],
) -> None:
"""Initialize the setup flow."""
super().__init__(auth_module, setup_schema, user_id)
# to fix typing complaint
self._auth_module: NotifyAuthModule = auth_module
self._available_notify_services = available_notify_services
self._secret: Optional[str] = None
self._count: Optional[int] = None
self._notify_service: Optional[str] = None
self._target: Optional[str] = None
self._secret: str | None = None
self._count: int | None = None
self._notify_service: str | None = None
self._target: str | None = None
async def async_step_init(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Let user select available notify services."""
errors: Dict[str, str] = {}
errors: dict[str, str] = {}
hass = self._auth_module.hass
if user_input:
@@ -306,7 +308,7 @@ class NotifySetupFlow(SetupFlow):
if not self._available_notify_services:
return self.async_abort(reason="no_available_service")
schema: Dict[str, Any] = OrderedDict()
schema: dict[str, Any] = OrderedDict()
schema["notify_service"] = vol.In(self._available_notify_services)
schema["target"] = vol.Optional(str)
@@ -315,10 +317,10 @@ class NotifySetupFlow(SetupFlow):
)
async def async_step_setup(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Verify user can receive one-time password."""
errors: Dict[str, str] = {}
errors: dict[str, str] = {}
hass = self._auth_module.hass
if user_input:

View File

@@ -1,8 +1,9 @@
"""Time-based One Time Password auth module."""
from __future__ import annotations
import asyncio
from io import BytesIO
import logging
from typing import Any, Dict, Optional, Tuple
from typing import Any
import voluptuous as vol
@@ -30,8 +31,6 @@ INPUT_FIELD_CODE = "code"
DUMMY_SECRET = "FPPTH34D4E3MI2HG"
_LOGGER = logging.getLogger(__name__)
def _generate_qr_code(data: str) -> str:
"""Generate a base64 PNG string represent QR Code image of data."""
@@ -53,7 +52,7 @@ def _generate_qr_code(data: str) -> str:
)
def _generate_secret_and_qr_code(username: str) -> Tuple[str, str, str]:
def _generate_secret_and_qr_code(username: str) -> tuple[str, str, str]:
"""Generate a secret, url, and QR code."""
import pyotp # pylint: disable=import-outside-toplevel
@@ -72,10 +71,10 @@ class TotpAuthModule(MultiFactorAuthModule):
DEFAULT_TITLE = "Time-based One Time Password"
MAX_RETRY_TIME = 5
def __init__(self, hass: HomeAssistant, config: Dict[str, Any]) -> None:
def __init__(self, hass: HomeAssistant, config: dict[str, Any]) -> None:
"""Initialize the user data store."""
super().__init__(hass, config)
self._users: Optional[Dict[str, str]] = None
self._users: dict[str, str] | None = None
self._user_store = hass.helpers.storage.Store(
STORAGE_VERSION, STORAGE_KEY, private=True
)
@@ -103,7 +102,7 @@ class TotpAuthModule(MultiFactorAuthModule):
"""Save data."""
await self._user_store.async_save({STORAGE_USERS: self._users})
def _add_ota_secret(self, user_id: str, secret: Optional[str] = None) -> str:
def _add_ota_secret(self, user_id: str, secret: str | None = None) -> str:
"""Create a ota_secret for user."""
import pyotp # pylint: disable=import-outside-toplevel
@@ -148,7 +147,7 @@ class TotpAuthModule(MultiFactorAuthModule):
return user_id in self._users # type: ignore
async def async_validate(self, user_id: str, user_input: Dict[str, Any]) -> bool:
async def async_validate(self, user_id: str, user_input: dict[str, Any]) -> bool:
"""Return True if validation passed."""
if self._users is None:
await self._async_load()
@@ -184,13 +183,13 @@ class TotpSetupFlow(SetupFlow):
# to fix typing complaint
self._auth_module: TotpAuthModule = auth_module
self._user = user
self._ota_secret: Optional[str] = None
self._ota_secret: str | None = None
self._url = None # type Optional[str]
self._image = None # type Optional[str]
async def async_step_init(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Handle the first step of setup flow.
Return self.async_show_form(step_id='init') if user_input is None.
@@ -198,10 +197,10 @@ class TotpSetupFlow(SetupFlow):
"""
import pyotp # pylint: disable=import-outside-toplevel
errors: Dict[str, str] = {}
errors: dict[str, str] = {}
if user_input:
verified = await self.hass.async_add_executor_job( # type: ignore
verified = await self.hass.async_add_executor_job(
pyotp.TOTP(self._ota_secret).verify, user_input["code"]
)
if verified:

View File

@@ -1,11 +1,14 @@
"""Auth models."""
from __future__ import annotations
from datetime import datetime, timedelta
import secrets
from typing import Dict, List, NamedTuple, Optional
from typing import NamedTuple
import uuid
import attr
from homeassistant.const import __version__
from homeassistant.util import dt as dt_util
from . import permissions as perm_mdl
@@ -20,7 +23,7 @@ TOKEN_TYPE_LONG_LIVED_ACCESS_TOKEN = "long_lived_access_token"
class Group:
"""A group."""
name: Optional[str] = attr.ib()
name: str | None = attr.ib()
policy: perm_mdl.PolicyType = attr.ib()
id: str = attr.ib(factory=lambda: uuid.uuid4().hex)
system_generated: bool = attr.ib(default=False)
@@ -30,24 +33,24 @@ class Group:
class User:
"""A user."""
name: Optional[str] = attr.ib()
name: str | None = attr.ib()
perm_lookup: perm_mdl.PermissionLookup = attr.ib(eq=False, order=False)
id: str = attr.ib(factory=lambda: uuid.uuid4().hex)
is_owner: bool = attr.ib(default=False)
is_active: bool = attr.ib(default=False)
system_generated: bool = attr.ib(default=False)
groups: List[Group] = attr.ib(factory=list, eq=False, order=False)
groups: list[Group] = attr.ib(factory=list, eq=False, order=False)
# List of credentials of a user.
credentials: List["Credentials"] = attr.ib(factory=list, eq=False, order=False)
credentials: list[Credentials] = attr.ib(factory=list, eq=False, order=False)
# Tokens associated with a user.
refresh_tokens: Dict[str, "RefreshToken"] = attr.ib(
refresh_tokens: dict[str, RefreshToken] = attr.ib(
factory=dict, eq=False, order=False
)
_permissions: Optional[perm_mdl.PolicyPermissions] = attr.ib(
_permissions: perm_mdl.PolicyPermissions | None = attr.ib(
init=False,
eq=False,
order=False,
@@ -88,10 +91,10 @@ class RefreshToken:
"""RefreshToken for a user to grant new access tokens."""
user: User = attr.ib()
client_id: Optional[str] = attr.ib()
client_id: str | None = attr.ib()
access_token_expiration: timedelta = attr.ib()
client_name: Optional[str] = attr.ib(default=None)
client_icon: Optional[str] = attr.ib(default=None)
client_name: str | None = attr.ib(default=None)
client_icon: str | None = attr.ib(default=None)
token_type: str = attr.ib(
default=TOKEN_TYPE_NORMAL,
validator=attr.validators.in_(
@@ -103,8 +106,12 @@ class RefreshToken:
token: str = attr.ib(factory=lambda: secrets.token_hex(64))
jwt_key: str = attr.ib(factory=lambda: secrets.token_hex(64))
last_used_at: Optional[datetime] = attr.ib(default=None)
last_used_ip: Optional[str] = attr.ib(default=None)
last_used_at: datetime | None = attr.ib(default=None)
last_used_ip: str | None = attr.ib(default=None)
credential: Credentials | None = attr.ib(default=None)
version: str | None = attr.ib(default=__version__)
@attr.s(slots=True)
@@ -112,7 +119,7 @@ class Credentials:
"""Credentials for a user on an auth provider."""
auth_provider_type: str = attr.ib()
auth_provider_id: Optional[str] = attr.ib()
auth_provider_id: str | None = attr.ib()
# Allow the auth provider to store data to represent their auth.
data: dict = attr.ib()
@@ -124,5 +131,5 @@ class Credentials:
class UserMeta(NamedTuple):
"""User metadata."""
name: Optional[str]
name: str | None
is_active: bool

View File

@@ -1,6 +1,8 @@
"""Permissions for Home Assistant."""
from __future__ import annotations
import logging
from typing import Any, Callable, Optional
from typing import Any, Callable
import voluptuous as vol
@@ -19,7 +21,7 @@ _LOGGER = logging.getLogger(__name__)
class AbstractPermissions:
"""Default permissions class."""
_cached_entity_func: Optional[Callable[[str, str], bool]] = None
_cached_entity_func: Callable[[str, str], bool] | None = None
def _entity_func(self) -> Callable[[str, str], bool]:
"""Return a function that can test entity access."""

View File

@@ -1,6 +1,8 @@
"""Entity permissions."""
from __future__ import annotations
from collections import OrderedDict
from typing import Callable, Optional
from typing import Callable
import voluptuous as vol
@@ -43,14 +45,14 @@ ENTITY_POLICY_SCHEMA = vol.Any(
def _lookup_domain(
perm_lookup: PermissionLookup, domains_dict: SubCategoryDict, entity_id: str
) -> Optional[ValueType]:
) -> ValueType | None:
"""Look up entity permissions by domain."""
return domains_dict.get(entity_id.split(".", 1)[0])
def _lookup_area(
perm_lookup: PermissionLookup, area_dict: SubCategoryDict, entity_id: str
) -> Optional[ValueType]:
) -> ValueType | None:
"""Look up entity permissions by area."""
entity_entry = perm_lookup.entity_registry.async_get(entity_id)
@@ -67,7 +69,7 @@ def _lookup_area(
def _lookup_device(
perm_lookup: PermissionLookup, devices_dict: SubCategoryDict, entity_id: str
) -> Optional[ValueType]:
) -> ValueType | None:
"""Look up entity permissions by device."""
entity_entry = perm_lookup.entity_registry.async_get(entity_id)
@@ -79,7 +81,7 @@ def _lookup_device(
def _lookup_entity_id(
perm_lookup: PermissionLookup, entities_dict: SubCategoryDict, entity_id: str
) -> Optional[ValueType]:
) -> ValueType | None:
"""Look up entity permission by entity id."""
return entities_dict.get(entity_id)

View File

@@ -1,13 +1,15 @@
"""Merging of policies."""
from typing import Dict, List, Set, cast
from __future__ import annotations
from typing import cast
from .types import CategoryType, PolicyType
def merge_policies(policies: List[PolicyType]) -> PolicyType:
def merge_policies(policies: list[PolicyType]) -> PolicyType:
"""Merge policies."""
new_policy: Dict[str, CategoryType] = {}
seen: Set[str] = set()
new_policy: dict[str, CategoryType] = {}
seen: set[str] = set()
for policy in policies:
for category in policy:
if category in seen:
@@ -20,7 +22,7 @@ def merge_policies(policies: List[PolicyType]) -> PolicyType:
return new_policy
def _merge_policies(sources: List[CategoryType]) -> CategoryType:
def _merge_policies(sources: list[CategoryType]) -> CategoryType:
"""Merge a policy."""
# When merging policies, the most permissive wins.
# This means we order it like this:
@@ -34,7 +36,7 @@ def _merge_policies(sources: List[CategoryType]) -> CategoryType:
# merge each key in the source.
policy: CategoryType = None
seen: Set[str] = set()
seen: set[str] = set()
for source in sources:
if source is None:
continue

View File

@@ -1,11 +1,12 @@
"""Models for permissions."""
from __future__ import annotations
from typing import TYPE_CHECKING
import attr
if TYPE_CHECKING:
# pylint: disable=unused-import
from homeassistant.helpers import ( # noqa: F401
from homeassistant.helpers import (
device_registry as dev_reg,
entity_registry as ent_reg,
)
@@ -15,5 +16,5 @@ if TYPE_CHECKING:
class PermissionLookup:
"""Class to hold data for permission lookups."""
entity_registry: "ent_reg.EntityRegistry" = attr.ib()
device_registry: "dev_reg.DeviceRegistry" = attr.ib()
entity_registry: ent_reg.EntityRegistry = attr.ib()
device_registry: dev_reg.DeviceRegistry = attr.ib()

View File

@@ -1,6 +1,8 @@
"""Helpers to deal with permissions."""
from __future__ import annotations
from functools import wraps
from typing import Callable, Dict, List, Optional, cast
from typing import Callable, Dict, Optional, cast
from .const import SUBCAT_ALL
from .models import PermissionLookup
@@ -45,7 +47,7 @@ def compile_policy(
assert isinstance(policy, dict)
funcs: List[Callable[[str, str], Optional[bool]]] = []
funcs: list[Callable[[str, str], bool | None]] = []
for key, lookup_func in subcategories.items():
lookup_value = policy.get(key)
@@ -80,10 +82,10 @@ def compile_policy(
def _gen_dict_test_func(
perm_lookup: PermissionLookup, lookup_func: LookupFunc, lookup_dict: SubCategoryDict
) -> Callable[[str, str], Optional[bool]]:
) -> Callable[[str, str], bool | None]:
"""Generate a lookup function."""
def test_value(object_id: str, key: str) -> Optional[bool]:
def test_value(object_id: str, key: str) -> bool | None:
"""Test if permission is allowed based on the keys."""
schema: ValueType = lookup_func(perm_lookup, lookup_dict, object_id)

View File

@@ -1,8 +1,10 @@
"""Auth providers for Home Assistant."""
from __future__ import annotations
import importlib
import logging
import types
from typing import Any, Dict, List, Optional
from typing import Any
import voluptuous as vol
from voluptuous.humanize import humanize_error
@@ -16,7 +18,7 @@ from homeassistant.util.decorator import Registry
from ..auth_store import AuthStore
from ..const import MFA_SESSION_EXPIRATION
from ..models import Credentials, User, UserMeta
from ..models import Credentials, RefreshToken, User, UserMeta
_LOGGER = logging.getLogger(__name__)
DATA_REQS = "auth_prov_reqs_processed"
@@ -40,7 +42,7 @@ class AuthProvider:
DEFAULT_TITLE = "Unnamed auth provider"
def __init__(
self, hass: HomeAssistant, store: AuthStore, config: Dict[str, Any]
self, hass: HomeAssistant, store: AuthStore, config: dict[str, Any]
) -> None:
"""Initialize an auth provider."""
self.hass = hass
@@ -48,7 +50,7 @@ class AuthProvider:
self.config = config
@property
def id(self) -> Optional[str]:
def id(self) -> str | None:
"""Return id of the auth provider.
Optional, can be None.
@@ -70,7 +72,7 @@ class AuthProvider:
"""Return whether multi-factor auth supported by the auth provider."""
return True
async def async_credentials(self) -> List[Credentials]:
async def async_credentials(self) -> list[Credentials]:
"""Return all credentials of this provider."""
users = await self.store.async_get_users()
return [
@@ -84,7 +86,7 @@ class AuthProvider:
]
@callback
def async_create_credentials(self, data: Dict[str, str]) -> Credentials:
def async_create_credentials(self, data: dict[str, str]) -> Credentials:
"""Create credentials."""
return Credentials(
auth_provider_type=self.type, auth_provider_id=self.id, data=data
@@ -92,7 +94,7 @@ class AuthProvider:
# Implement by extending class
async def async_login_flow(self, context: Optional[Dict]) -> "LoginFlow":
async def async_login_flow(self, context: dict | None) -> LoginFlow:
"""Return the data flow for logging in with auth provider.
Auth provider should extend LoginFlow and return an instance.
@@ -100,7 +102,7 @@ class AuthProvider:
raise NotImplementedError
async def async_get_or_create_credentials(
self, flow_result: Dict[str, str]
self, flow_result: dict[str, str]
) -> Credentials:
"""Get credentials based on the flow result."""
raise NotImplementedError
@@ -117,9 +119,19 @@ class AuthProvider:
async def async_initialize(self) -> None:
"""Initialize the auth provider."""
@callback
def async_validate_refresh_token(
self, refresh_token: RefreshToken, remote_ip: str | None = None
) -> None:
"""Verify a refresh token is still valid.
Optional hook for an auth provider to verify validity of a refresh token.
Should raise InvalidAuthError on errors.
"""
async def auth_provider_from_config(
hass: HomeAssistant, store: AuthStore, config: Dict[str, Any]
hass: HomeAssistant, store: AuthStore, config: dict[str, Any]
) -> AuthProvider:
"""Initialize an auth provider from a config."""
provider_name = config[CONF_TYPE]
@@ -176,16 +188,17 @@ class LoginFlow(data_entry_flow.FlowHandler):
def __init__(self, auth_provider: AuthProvider) -> None:
"""Initialize the login flow."""
self._auth_provider = auth_provider
self._auth_module_id: Optional[str] = None
self._auth_module_id: str | None = None
self._auth_manager = auth_provider.hass.auth
self.available_mfa_modules: Dict[str, str] = {}
self.available_mfa_modules: dict[str, str] = {}
self.created_at = dt_util.utcnow()
self.invalid_mfa_times = 0
self.user: Optional[User] = None
self.user: User | None = None
self.credential: Credentials | None = None
async def async_step_init(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Handle the first step of login flow.
Return self.async_show_form(step_id='init') if user_input is None.
@@ -194,8 +207,8 @@ class LoginFlow(data_entry_flow.FlowHandler):
raise NotImplementedError
async def async_step_select_mfa_module(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Handle the step of select mfa module."""
errors = {}
@@ -207,7 +220,7 @@ class LoginFlow(data_entry_flow.FlowHandler):
errors["base"] = "invalid_auth_module"
if len(self.available_mfa_modules) == 1:
self._auth_module_id = list(self.available_mfa_modules.keys())[0]
self._auth_module_id = list(self.available_mfa_modules)[0]
return await self.async_step_mfa()
return self.async_show_form(
@@ -219,9 +232,10 @@ class LoginFlow(data_entry_flow.FlowHandler):
)
async def async_step_mfa(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Handle the step of mfa validation."""
assert self.credential
assert self.user
errors = {}
@@ -257,9 +271,9 @@ class LoginFlow(data_entry_flow.FlowHandler):
return self.async_abort(reason="too_many_retry")
if not errors:
return await self.async_finish(self.user)
return await self.async_finish(self.credential)
description_placeholders: Dict[str, Optional[str]] = {
description_placeholders: dict[str, str | None] = {
"mfa_module_name": auth_module.name,
"mfa_module_id": auth_module.id,
}
@@ -271,6 +285,6 @@ class LoginFlow(data_entry_flow.FlowHandler):
errors=errors,
)
async def async_finish(self, flow_result: Any) -> Dict:
async def async_finish(self, flow_result: Any) -> dict:
"""Handle the pass of login flow."""
return self.async_create_entry(title=self._auth_provider.name, data=flow_result)

View File

@@ -1,19 +1,20 @@
"""Auth provider that validates credentials via an external command."""
from __future__ import annotations
import asyncio.subprocess
import collections
import logging
import os
from typing import Any, Dict, Optional, cast
from typing import Any, cast
import voluptuous as vol
from homeassistant.const import CONF_COMMAND
from homeassistant.exceptions import HomeAssistantError
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
CONF_COMMAND = "command"
CONF_ARGS = "args"
CONF_META = "meta"
@@ -51,9 +52,9 @@ class CommandLineAuthProvider(AuthProvider):
attributes provided by external programs.
"""
super().__init__(*args, **kwargs)
self._user_meta: Dict[str, Dict[str, Any]] = {}
self._user_meta: dict[str, dict[str, Any]] = {}
async def async_login_flow(self, context: Optional[dict]) -> LoginFlow:
async def async_login_flow(self, context: dict | None) -> LoginFlow:
"""Return a flow to login."""
return CommandLineLoginFlow(self)
@@ -82,7 +83,7 @@ class CommandLineAuthProvider(AuthProvider):
raise InvalidAuthError
if self.config[CONF_META]:
meta: Dict[str, str] = {}
meta: dict[str, str] = {}
for _line in stdout.splitlines():
try:
line = _line.decode().lstrip()
@@ -99,7 +100,7 @@ class CommandLineAuthProvider(AuthProvider):
self._user_meta[username] = meta
async def async_get_or_create_credentials(
self, flow_result: Dict[str, str]
self, flow_result: dict[str, str]
) -> Credentials:
"""Get credentials based on the flow result."""
username = flow_result["username"]
@@ -125,8 +126,8 @@ class CommandLineLoginFlow(LoginFlow):
"""Handler for the login flow."""
async def async_step_init(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Handle the step of the form."""
errors = {}
@@ -143,7 +144,7 @@ class CommandLineLoginFlow(LoginFlow):
user_input.pop("password")
return await self.async_finish(user_input)
schema: Dict[str, type] = collections.OrderedDict()
schema: dict[str, type] = collections.OrderedDict()
schema["username"] = str
schema["password"] = str

View File

@@ -1,9 +1,11 @@
"""Home Assistant auth provider."""
from __future__ import annotations
import asyncio
import base64
from collections import OrderedDict
import logging
from typing import Any, Dict, List, Optional, Set, cast
from typing import Any, cast
import bcrypt
import voluptuous as vol
@@ -19,7 +21,7 @@ STORAGE_VERSION = 1
STORAGE_KEY = "auth_provider.homeassistant"
def _disallow_id(conf: Dict[str, Any]) -> Dict[str, Any]:
def _disallow_id(conf: dict[str, Any]) -> dict[str, Any]:
"""Disallow ID in config."""
if CONF_ID in conf:
raise vol.Invalid("ID is not allowed for the homeassistant auth provider.")
@@ -31,7 +33,7 @@ CONFIG_SCHEMA = vol.All(AUTH_PROVIDER_SCHEMA, _disallow_id)
@callback
def async_get_provider(hass: HomeAssistant) -> "HassAuthProvider":
def async_get_provider(hass: HomeAssistant) -> HassAuthProvider:
"""Get the provider."""
for prv in hass.auth.auth_providers:
if prv.type == "homeassistant":
@@ -60,7 +62,7 @@ class Data:
self._store = hass.helpers.storage.Store(
STORAGE_VERSION, STORAGE_KEY, private=True
)
self._data: Optional[Dict[str, Any]] = None
self._data: dict[str, Any] | None = None
# Legacy mode will allow usernames to start/end with whitespace
# and will compare usernames case-insensitive.
# Remove in 2020 or when we launch 1.0.
@@ -81,7 +83,7 @@ class Data:
if data is None:
data = {"users": []}
seen: Set[str] = set()
seen: set[str] = set()
for user in data["users"]:
username = user["username"]
@@ -119,7 +121,7 @@ class Data:
self._data = data
@property
def users(self) -> List[Dict[str, str]]:
def users(self) -> list[dict[str, str]]:
"""Return users."""
return self._data["users"] # type: ignore
@@ -218,7 +220,7 @@ class HassAuthProvider(AuthProvider):
def __init__(self, *args: Any, **kwargs: Any) -> None:
"""Initialize an Home Assistant auth provider."""
super().__init__(*args, **kwargs)
self.data: Optional[Data] = None
self.data: Data | None = None
self._init_lock = asyncio.Lock()
async def async_initialize(self) -> None:
@@ -231,7 +233,7 @@ class HassAuthProvider(AuthProvider):
await data.async_load()
self.data = data
async def async_login_flow(self, context: Optional[Dict]) -> LoginFlow:
async def async_login_flow(self, context: dict | None) -> LoginFlow:
"""Return a flow to login."""
return HassLoginFlow(self)
@@ -275,7 +277,7 @@ class HassAuthProvider(AuthProvider):
await self.data.async_save()
async def async_get_or_create_credentials(
self, flow_result: Dict[str, str]
self, flow_result: dict[str, str]
) -> Credentials:
"""Get credentials based on the flow result."""
if self.data is None:
@@ -316,8 +318,8 @@ class HassLoginFlow(LoginFlow):
"""Handler for the login flow."""
async def async_step_init(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Handle the step of the form."""
errors = {}
@@ -333,7 +335,7 @@ class HassLoginFlow(LoginFlow):
user_input.pop("password")
return await self.async_finish(user_input)
schema: Dict[str, type] = OrderedDict()
schema: dict[str, type] = OrderedDict()
schema["username"] = str
schema["password"] = str

View File

@@ -1,7 +1,9 @@
"""Example auth provider."""
from __future__ import annotations
from collections import OrderedDict
import hmac
from typing import Any, Dict, Optional, cast
from typing import Any, cast
import voluptuous as vol
@@ -33,7 +35,7 @@ class InvalidAuthError(HomeAssistantError):
class ExampleAuthProvider(AuthProvider):
"""Example auth provider based on hardcoded usernames and passwords."""
async def async_login_flow(self, context: Optional[Dict]) -> LoginFlow:
async def async_login_flow(self, context: dict | None) -> LoginFlow:
"""Return a flow to login."""
return ExampleLoginFlow(self)
@@ -60,7 +62,7 @@ class ExampleAuthProvider(AuthProvider):
raise InvalidAuthError
async def async_get_or_create_credentials(
self, flow_result: Dict[str, str]
self, flow_result: dict[str, str]
) -> Credentials:
"""Get credentials based on the flow result."""
username = flow_result["username"]
@@ -94,8 +96,8 @@ class ExampleLoginFlow(LoginFlow):
"""Handler for the login flow."""
async def async_step_init(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Handle the step of the form."""
errors = {}
@@ -111,7 +113,7 @@ class ExampleLoginFlow(LoginFlow):
user_input.pop("password")
return await self.async_finish(user_input)
schema: Dict[str, type] = OrderedDict()
schema: dict[str, type] = OrderedDict()
schema["username"] = str
schema["password"] = str

View File

@@ -3,18 +3,19 @@ Support Legacy API password auth provider.
It will be removed when auth system production ready
"""
from __future__ import annotations
import hmac
from typing import Any, Dict, Optional, cast
from typing import Any, cast
import voluptuous as vol
from homeassistant.core import HomeAssistant, callback
from homeassistant.core import callback
from homeassistant.exceptions import HomeAssistantError
import homeassistant.helpers.config_validation as cv
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from .. import AuthManager
from ..models import Credentials, User, UserMeta
from ..models import Credentials, UserMeta
AUTH_PROVIDER_TYPE = "legacy_api_password"
CONF_API_PASSWORD = "api_password"
@@ -30,23 +31,6 @@ class InvalidAuthError(HomeAssistantError):
"""Raised when submitting invalid authentication."""
async def async_validate_password(hass: HomeAssistant, password: str) -> Optional[User]:
"""Return a user if password is valid. None if not."""
auth = cast(AuthManager, hass.auth) # type: ignore
providers = auth.get_auth_providers(AUTH_PROVIDER_TYPE)
if not providers:
raise ValueError("Legacy API password provider not found")
try:
provider = cast(LegacyApiPasswordAuthProvider, providers[0])
provider.async_validate_login(password)
return await auth.async_get_or_create_user(
await provider.async_get_or_create_credentials({})
)
except InvalidAuthError:
return None
@AUTH_PROVIDERS.register(AUTH_PROVIDER_TYPE)
class LegacyApiPasswordAuthProvider(AuthProvider):
"""An auth provider support legacy api_password."""
@@ -58,7 +42,7 @@ class LegacyApiPasswordAuthProvider(AuthProvider):
"""Return api_password."""
return str(self.config[CONF_API_PASSWORD])
async def async_login_flow(self, context: Optional[Dict]) -> LoginFlow:
async def async_login_flow(self, context: dict | None) -> LoginFlow:
"""Return a flow to login."""
return LegacyLoginFlow(self)
@@ -73,7 +57,7 @@ class LegacyApiPasswordAuthProvider(AuthProvider):
raise InvalidAuthError
async def async_get_or_create_credentials(
self, flow_result: Dict[str, str]
self, flow_result: dict[str, str]
) -> Credentials:
"""Return credentials for this login."""
credentials = await self.async_credentials()
@@ -97,8 +81,8 @@ class LegacyLoginFlow(LoginFlow):
"""Handler for the login flow."""
async def async_step_init(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Handle the step of the form."""
errors = {}

View File

@@ -3,8 +3,17 @@
It shows list of users if access from trusted network.
Abort login flow if not access from trusted network.
"""
from ipaddress import IPv4Address, IPv4Network, IPv6Address, IPv6Network, ip_network
from typing import Any, Dict, List, Optional, Union, cast
from __future__ import annotations
from ipaddress import (
IPv4Address,
IPv4Network,
IPv6Address,
IPv6Network,
ip_address,
ip_network,
)
from typing import Any, Dict, List, Union, cast
import voluptuous as vol
@@ -13,7 +22,8 @@ from homeassistant.exceptions import HomeAssistantError
import homeassistant.helpers.config_validation as cv
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
from .. import InvalidAuthError
from ..models import Credentials, RefreshToken, UserMeta
IPAddress = Union[IPv4Address, IPv6Address]
IPNetwork = Union[IPv4Network, IPv6Network]
@@ -46,10 +56,6 @@ CONFIG_SCHEMA = AUTH_PROVIDER_SCHEMA.extend(
)
class InvalidAuthError(HomeAssistantError):
"""Raised when try to access from untrusted networks."""
class InvalidUserError(HomeAssistantError):
"""Raised when try to login as invalid user."""
@@ -64,12 +70,12 @@ class TrustedNetworksAuthProvider(AuthProvider):
DEFAULT_TITLE = "Trusted Networks"
@property
def trusted_networks(self) -> List[IPNetwork]:
def trusted_networks(self) -> list[IPNetwork]:
"""Return trusted networks."""
return cast(List[IPNetwork], self.config[CONF_TRUSTED_NETWORKS])
@property
def trusted_users(self) -> Dict[IPNetwork, Any]:
def trusted_users(self) -> dict[IPNetwork, Any]:
"""Return trusted users per network."""
return cast(Dict[IPNetwork, Any], self.config[CONF_TRUSTED_USERS])
@@ -78,7 +84,7 @@ class TrustedNetworksAuthProvider(AuthProvider):
"""Trusted Networks auth provider does not support MFA."""
return False
async def async_login_flow(self, context: Optional[Dict]) -> LoginFlow:
async def async_login_flow(self, context: dict | None) -> LoginFlow:
"""Return a flow to login."""
assert context is not None
ip_addr = cast(IPAddress, context.get("ip_address"))
@@ -107,7 +113,7 @@ class TrustedNetworksAuthProvider(AuthProvider):
if (
user.id in user_list
or any(
[group.id in flattened_group_list for group in user.groups]
group.id in flattened_group_list for group in user.groups
)
)
]
@@ -121,7 +127,7 @@ class TrustedNetworksAuthProvider(AuthProvider):
)
async def async_get_or_create_credentials(
self, flow_result: Dict[str, str]
self, flow_result: dict[str, str]
) -> Credentials:
"""Get credentials based on the flow result."""
user_id = flow_result["user"]
@@ -163,6 +169,17 @@ class TrustedNetworksAuthProvider(AuthProvider):
):
raise InvalidAuthError("Not in trusted_networks")
@callback
def async_validate_refresh_token(
self, refresh_token: RefreshToken, remote_ip: str | None = None
) -> None:
"""Verify a refresh token is still valid."""
if remote_ip is None:
raise InvalidAuthError(
"Unknown remote ip can't be used for trusted network provider."
)
self.async_validate_access(ip_address(remote_ip))
class TrustedNetworksLoginFlow(LoginFlow):
"""Handler for the login flow."""
@@ -171,7 +188,7 @@ class TrustedNetworksLoginFlow(LoginFlow):
self,
auth_provider: TrustedNetworksAuthProvider,
ip_addr: IPAddress,
available_users: Dict[str, Optional[str]],
available_users: dict[str, str | None],
allow_bypass_login: bool,
) -> None:
"""Initialize the login flow."""
@@ -181,8 +198,8 @@ class TrustedNetworksLoginFlow(LoginFlow):
self._allow_bypass_login = allow_bypass_login
async def async_step_init(
self, user_input: Optional[Dict[str, str]] = None
) -> Dict[str, Any]:
self, user_input: dict[str, str] | None = None
) -> dict[str, Any]:
"""Handle the step of the form."""
try:
cast(

View File

@@ -1,4 +1,6 @@
"""Provide methods to bootstrap a Home Assistant instance."""
from __future__ import annotations
import asyncio
import contextlib
from datetime import datetime
@@ -8,19 +10,16 @@ import os
import sys
import threading
from time import monotonic
from typing import TYPE_CHECKING, Any, Dict, Optional, Set
from typing import TYPE_CHECKING, Any
import voluptuous as vol
import yarl
from homeassistant import config as conf_util, config_entries, core, loader
from homeassistant.components import http
from homeassistant.const import (
EVENT_HOMEASSISTANT_STOP,
REQUIRED_NEXT_PYTHON_DATE,
REQUIRED_NEXT_PYTHON_VER,
)
from homeassistant.const import REQUIRED_NEXT_PYTHON_DATE, REQUIRED_NEXT_PYTHON_VER
from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers import area_registry, device_registry, entity_registry
from homeassistant.helpers.typing import ConfigType
from homeassistant.setup import (
DATA_SETUP,
@@ -28,9 +27,9 @@ from homeassistant.setup import (
async_set_domains_to_be_loaded,
async_setup_component,
)
from homeassistant.util.async_ import gather_with_concurrency
from homeassistant.util.logging import async_activate_log_queue_handler
from homeassistant.util.package import async_get_user_site, is_virtual_env
from homeassistant.util.yaml import clear_secret_cache
if TYPE_CHECKING:
from .runner import RuntimeConfig
@@ -49,7 +48,9 @@ STAGE_2_TIMEOUT = 300
WRAP_UP_TIMEOUT = 300
COOLDOWN_TIME = 60
DEBUGGER_INTEGRATIONS = {"debugpy", "ptvsd"}
MAX_LOAD_CONCURRENTLY = 6
DEBUGGER_INTEGRATIONS = {"debugpy"}
CORE_INTEGRATIONS = ("homeassistant", "persistent_notification")
LOGGING_INTEGRATIONS = {
# Set log levels
@@ -75,8 +76,8 @@ STAGE_1_INTEGRATIONS = {
async def async_setup_hass(
runtime_config: "RuntimeConfig",
) -> Optional[core.HomeAssistant]:
runtime_config: RuntimeConfig,
) -> core.HomeAssistant | None:
"""Set up Home Assistant."""
hass = core.HomeAssistant()
hass.config.config_dir = runtime_config.config_dir
@@ -122,8 +123,6 @@ async def async_setup_hass(
basic_setup_success = (
await async_from_config_dict(config_dict, hass) is not None
)
finally:
clear_secret_cache()
if config_dict is None:
safe_mode = True
@@ -139,11 +138,9 @@ async def async_setup_hass(
_LOGGER.warning("Detected that frontend did not load. Activating safe mode")
# Ask integrations to shut down. It's messy but we can't
# do a clean stop without knowing what is broken
hass.async_track_tasks()
hass.bus.async_fire(EVENT_HOMEASSISTANT_STOP, {})
with contextlib.suppress(asyncio.TimeoutError):
async with hass.timeout.async_timeout(10):
await hass.async_block_till_done()
await hass.async_stop()
safe_mode = True
old_config = hass.config
@@ -193,7 +190,7 @@ def open_hass_ui(hass: core.HomeAssistant) -> None:
async def async_from_config_dict(
config: ConfigType, hass: core.HomeAssistant
) -> Optional[core.HomeAssistant]:
) -> core.HomeAssistant | None:
"""Try to configure Home Assistant from a configuration dictionary.
Dynamically loads required components and its dependencies.
@@ -260,8 +257,8 @@ async def async_from_config_dict(
def async_enable_logging(
hass: core.HomeAssistant,
verbose: bool = False,
log_rotate_days: Optional[int] = None,
log_file: Optional[str] = None,
log_rotate_days: int | None = None,
log_file: str | None = None,
log_no_color: bool = False,
) -> None:
"""Set up the logging.
@@ -310,12 +307,10 @@ def async_enable_logging(
sys.excepthook = lambda *args: logging.getLogger(None).exception(
"Uncaught exception", exc_info=args # type: ignore
)
if sys.version_info[:2] >= (3, 8):
threading.excepthook = lambda args: logging.getLogger(None).exception(
"Uncaught thread exception",
exc_info=(args.exc_type, args.exc_value, args.exc_traceback),
)
threading.excepthook = lambda args: logging.getLogger(None).exception(
"Uncaught thread exception",
exc_info=(args.exc_type, args.exc_value, args.exc_traceback), # type: ignore[arg-type]
)
# Log errors to a file if we have write access to file or config dir
if log_file is None:
@@ -369,10 +364,10 @@ async def async_mount_local_lib_path(config_dir: str) -> str:
@core.callback
def _get_domains(hass: core.HomeAssistant, config: Dict[str, Any]) -> Set[str]:
def _get_domains(hass: core.HomeAssistant, config: dict[str, Any]) -> set[str]:
"""Get domains of components to set up."""
# Filter out the repeating and common config section [homeassistant]
domains = {key.split(" ")[0] for key in config.keys() if key != core.DOMAIN}
domains = {key.split(" ")[0] for key in config if key != core.DOMAIN}
# Add config entry domains
if not hass.config.safe_mode:
@@ -386,7 +381,7 @@ def _get_domains(hass: core.HomeAssistant, config: Dict[str, Any]) -> Set[str]:
async def _async_log_pending_setups(
domains: Set[str], setup_started: Dict[str, datetime]
hass: core.HomeAssistant, domains: set[str], setup_started: dict[str, datetime]
) -> None:
"""Periodic log of setups that are pending for longer than LOG_SLOW_STARTUP_INTERVAL."""
while True:
@@ -398,20 +393,23 @@ async def _async_log_pending_setups(
"Waiting on integrations to complete setup: %s",
", ".join(remaining),
)
_LOGGER.debug("Running timeout Zones: %s", hass.timeout.zones)
async def async_setup_multi_components(
hass: core.HomeAssistant,
domains: Set[str],
config: Dict[str, Any],
setup_started: Dict[str, datetime],
domains: set[str],
config: dict[str, Any],
setup_started: dict[str, datetime],
) -> None:
"""Set up multiple domains. Log on failure."""
futures = {
domain: hass.async_create_task(async_setup_component(hass, domain, config))
for domain in domains
}
log_task = asyncio.create_task(_async_log_pending_setups(domains, setup_started))
log_task = asyncio.create_task(
_async_log_pending_setups(hass, domains, setup_started)
)
await asyncio.wait(futures.values())
log_task.cancel()
errors = [domain for domain in domains if futures[domain].exception()]
@@ -426,7 +424,7 @@ async def async_setup_multi_components(
async def _async_set_up_integrations(
hass: core.HomeAssistant, config: Dict[str, Any]
hass: core.HomeAssistant, config: dict[str, Any]
) -> None:
"""Set up all the integrations."""
setup_started = hass.data[DATA_SETUP_STARTED] = {}
@@ -434,7 +432,7 @@ async def _async_set_up_integrations(
# Resolve all dependencies so we know all integrations
# that will have to be loaded and start rightaway
integration_cache: Dict[str, loader.Integration] = {}
integration_cache: dict[str, loader.Integration] = {}
to_resolve = domains_to_setup
while to_resolve:
old_to_resolve = to_resolve
@@ -442,7 +440,8 @@ async def _async_set_up_integrations(
integrations_to_process = [
int_or_exc
for int_or_exc in await asyncio.gather(
for int_or_exc in await gather_with_concurrency(
loader.MAX_LOAD_CONCURRENTLY,
*(
loader.async_get_integration(hass, domain)
for domain in old_to_resolve
@@ -511,10 +510,12 @@ async def _async_set_up_integrations(
stage_2_domains = domains_to_setup - logging_domains - debuggers - stage_1_domains
# Kick off loading the registries. They don't need to be awaited.
asyncio.create_task(hass.helpers.device_registry.async_get_registry())
asyncio.create_task(hass.helpers.entity_registry.async_get_registry())
asyncio.create_task(hass.helpers.area_registry.async_get_registry())
# Load the registries
await asyncio.gather(
device_registry.async_load(hass),
entity_registry.async_load(hass),
area_registry.async_load(hass),
)
# Start setup
if stage_1_domains:
@@ -530,7 +531,7 @@ async def _async_set_up_integrations(
_LOGGER.warning("Setup timed out for stage 1 - moving forward")
# Enables after dependencies
async_set_domains_to_be_loaded(hass, stage_1_domains | stage_2_domains)
async_set_domains_to_be_loaded(hass, stage_2_domains)
if stage_2_domains:
_LOGGER.info("Setting up stage 2: %s", stage_2_domains)

View File

@@ -4,15 +4,16 @@ from copy import deepcopy
from functools import partial
from abodepy import Abode
from abodepy.exceptions import AbodeException
from abodepy.exceptions import AbodeAuthenticationException, AbodeException
import abodepy.helpers.timeline as TIMELINE
from requests.exceptions import ConnectTimeout, HTTPError
import voluptuous as vol
from homeassistant.config_entries import SOURCE_IMPORT
from homeassistant.config_entries import SOURCE_IMPORT, SOURCE_REAUTH
from homeassistant.const import (
ATTR_ATTRIBUTION,
ATTR_DATE,
ATTR_DEVICE_ID,
ATTR_ENTITY_ID,
ATTR_TIME,
CONF_PASSWORD,
@@ -32,7 +33,6 @@ SERVICE_SETTINGS = "change_setting"
SERVICE_CAPTURE_IMAGE = "capture_image"
SERVICE_TRIGGER_AUTOMATION = "trigger_automation"
ATTR_DEVICE_ID = "device_id"
ATTR_DEVICE_NAME = "device_name"
ATTR_DEVICE_TYPE = "device_type"
ATTR_EVENT_CODE = "event_code"
@@ -66,7 +66,7 @@ CAPTURE_IMAGE_SCHEMA = vol.Schema({ATTR_ENTITY_ID: cv.entity_ids})
AUTOMATION_SCHEMA = vol.Schema({ATTR_ENTITY_ID: cv.entity_ids})
ABODE_PLATFORMS = [
PLATFORMS = [
"alarm_control_panel",
"binary_sensor",
"lock",
@@ -110,19 +110,35 @@ async def async_setup_entry(hass, config_entry):
username = config_entry.data.get(CONF_USERNAME)
password = config_entry.data.get(CONF_PASSWORD)
polling = config_entry.data.get(CONF_POLLING)
cache = hass.config.path(DEFAULT_CACHEDB)
# For previous config entries where unique_id is None
if config_entry.unique_id is None:
hass.config_entries.async_update_entry(
config_entry, unique_id=config_entry.data[CONF_USERNAME]
)
try:
cache = hass.config.path(DEFAULT_CACHEDB)
abode = await hass.async_add_executor_job(
Abode, username, password, True, True, True, cache
)
hass.data[DOMAIN] = AbodeSystem(abode, polling)
except AbodeAuthenticationException as ex:
LOGGER.error("Invalid credentials: %s", ex)
await hass.config_entries.flow.async_init(
DOMAIN,
context={"source": SOURCE_REAUTH},
data=config_entry.data,
)
return False
except (AbodeException, ConnectTimeout, HTTPError) as ex:
LOGGER.error("Unable to connect to Abode: %s", str(ex))
LOGGER.error("Unable to connect to Abode: %s", ex)
raise ConfigEntryNotReady from ex
for platform in ABODE_PLATFORMS:
hass.data[DOMAIN] = AbodeSystem(abode, polling)
for platform in PLATFORMS:
hass.async_create_task(
hass.config_entries.async_forward_entry_setup(config_entry, platform)
)
@@ -142,7 +158,7 @@ async def async_unload_entry(hass, config_entry):
tasks = []
for platform in ABODE_PLATFORMS:
for platform in PLATFORMS:
tasks.append(
hass.config_entries.async_forward_entry_unload(config_entry, platform)
)
@@ -347,7 +363,7 @@ class AbodeDevice(AbodeEntity):
return self._device.name
@property
def device_state_attributes(self):
def extra_state_attributes(self):
"""Return the state attributes."""
return {
ATTR_ATTRIBUTION: ATTRIBUTION,
@@ -395,7 +411,7 @@ class AbodeAutomation(AbodeEntity):
return self._automation.name
@property
def device_state_attributes(self):
def extra_state_attributes(self):
"""Return the state attributes."""
return {ATTR_ATTRIBUTION: ATTRIBUTION, "type": "CUE automation"}

View File

@@ -69,7 +69,7 @@ class AbodeAlarm(AbodeDevice, alarm.AlarmControlPanelEntity):
self._device.set_away()
@property
def device_state_attributes(self):
def extra_state_attributes(self):
"""Return the state attributes."""
return {
ATTR_ATTRIBUTION: ATTRIBUTION,

View File

@@ -1,15 +1,16 @@
"""Config flow for the Abode Security System component."""
from abodepy import Abode
from abodepy.exceptions import AbodeException
from abodepy.exceptions import AbodeAuthenticationException, AbodeException
from abodepy.helpers.errors import MFA_CODE_REQUIRED
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.core import callback
from .const import DEFAULT_CACHEDB, DOMAIN, LOGGER # pylint: disable=unused-import
from .const import DEFAULT_CACHEDB, DOMAIN, LOGGER
CONF_MFA = "mfa_code"
CONF_POLLING = "polling"
@@ -25,53 +26,146 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
vol.Required(CONF_USERNAME): str,
vol.Required(CONF_PASSWORD): str,
}
self.mfa_data_schema = {
vol.Required(CONF_MFA): str,
}
self._cache = None
self._mfa_code = None
self._password = None
self._polling = False
self._username = None
async def _async_abode_login(self, step_id):
"""Handle login with Abode."""
self._cache = self.hass.config.path(DEFAULT_CACHEDB)
errors = {}
try:
await self.hass.async_add_executor_job(
Abode, self._username, self._password, True, False, False, self._cache
)
except (AbodeException, ConnectTimeout, HTTPError) as ex:
if ex.errcode == MFA_CODE_REQUIRED[0]:
return await self.async_step_mfa()
LOGGER.error("Unable to connect to Abode: %s", ex)
if ex.errcode == HTTP_BAD_REQUEST:
errors = {"base": "invalid_auth"}
else:
errors = {"base": "cannot_connect"}
if errors:
return self.async_show_form(
step_id=step_id, data_schema=vol.Schema(self.data_schema), errors=errors
)
return await self._async_create_entry()
async def _async_abode_mfa_login(self):
"""Handle multi-factor authentication (MFA) login with Abode."""
try:
# Create instance to access login method for passing MFA code
abode = Abode(
auto_login=False,
get_devices=False,
get_automations=False,
cache_path=self._cache,
)
await self.hass.async_add_executor_job(
abode.login, self._username, self._password, self._mfa_code
)
except AbodeAuthenticationException:
return self.async_show_form(
step_id="mfa",
data_schema=vol.Schema(self.mfa_data_schema),
errors={"base": "invalid_mfa_code"},
)
return await self._async_create_entry()
async def _async_create_entry(self):
"""Create the config entry."""
config_data = {
CONF_USERNAME: self._username,
CONF_PASSWORD: self._password,
CONF_POLLING: self._polling,
}
existing_entry = await self.async_set_unique_id(self._username)
if existing_entry:
self.hass.config_entries.async_update_entry(
existing_entry, data=config_data
)
# Reload the Abode config entry otherwise devices will remain unavailable
self.hass.async_create_task(
self.hass.config_entries.async_reload(existing_entry.entry_id)
)
return self.async_abort(reason="reauth_successful")
return self.async_create_entry(title=self._username, data=config_data)
async def async_step_user(self, user_input=None):
"""Handle a flow initialized by the user."""
if self._async_current_entries():
return self.async_abort(reason="single_instance_allowed")
if not user_input:
return self._show_form()
username = user_input[CONF_USERNAME]
password = user_input[CONF_PASSWORD]
polling = user_input.get(CONF_POLLING, False)
cache = self.hass.config.path(DEFAULT_CACHEDB)
try:
await self.hass.async_add_executor_job(
Abode, username, password, True, True, True, cache
if user_input is None:
return self.async_show_form(
step_id="user", data_schema=vol.Schema(self.data_schema)
)
except (AbodeException, ConnectTimeout, HTTPError) as ex:
LOGGER.error("Unable to connect to Abode: %s", str(ex))
if ex.errcode == HTTP_BAD_REQUEST:
return self._show_form({"base": "invalid_credentials"})
return self._show_form({"base": "connection_error"})
self._username = user_input[CONF_USERNAME]
self._password = user_input[CONF_PASSWORD]
return self.async_create_entry(
title=user_input[CONF_USERNAME],
data={
CONF_USERNAME: username,
CONF_PASSWORD: password,
CONF_POLLING: polling,
},
)
return await self._async_abode_login(step_id="user")
@callback
def _show_form(self, errors=None):
"""Show the form to the user."""
return self.async_show_form(
step_id="user",
data_schema=vol.Schema(self.data_schema),
errors=errors if errors else {},
)
async def async_step_mfa(self, user_input=None):
"""Handle a multi-factor authentication (MFA) flow."""
if user_input is None:
return self.async_show_form(
step_id="mfa", data_schema=vol.Schema(self.mfa_data_schema)
)
self._mfa_code = user_input[CONF_MFA]
return await self._async_abode_mfa_login()
async def async_step_reauth(self, config):
"""Handle reauthorization request from Abode."""
self._username = config[CONF_USERNAME]
return await self.async_step_reauth_confirm()
async def async_step_reauth_confirm(self, user_input=None):
"""Handle reauthorization flow."""
if user_input is None:
return self.async_show_form(
step_id="reauth_confirm",
data_schema=vol.Schema(
{
vol.Required(CONF_USERNAME, default=self._username): str,
vol.Required(CONF_PASSWORD): str,
}
),
)
self._username = user_input[CONF_USERNAME]
self._password = user_input[CONF_PASSWORD]
return await self._async_abode_login(step_id="reauth_confirm")
async def async_step_import(self, import_config):
"""Import a config entry from configuration.yaml."""
if self._async_current_entries():
LOGGER.warning("Only one configuration of abode is allowed.")
LOGGER.warning("Already configured; Only a single configuration possible")
return self.async_abort(reason="single_instance_allowed")
self._polling = import_config.get(CONF_POLLING, False)
return await self.async_step_user(import_config)

View File

@@ -3,7 +3,7 @@
"name": "Abode",
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/abode",
"requirements": ["abodepy==1.1.0"],
"requirements": ["abodepy==1.2.0"],
"codeowners": ["@shred86"],
"homekit": {
"models": ["Abode", "Iota"]

View File

@@ -1,6 +1,7 @@
"""Support for Abode Security System sensors."""
import abodepy.helpers.constants as CONST
from homeassistant.components.sensor import SensorEntity
from homeassistant.const import (
DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_ILLUMINANCE,
@@ -33,7 +34,7 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
async_add_entities(entities)
class AbodeSensor(AbodeDevice):
class AbodeSensor(AbodeDevice, SensorEntity):
"""A sensor implementation for Abode devices."""
def __init__(self, data, device, sensor_type):

View File

@@ -7,15 +7,30 @@
"username": "[%key:common::config_flow::data::email%]",
"password": "[%key:common::config_flow::data::password%]"
}
},
"mfa": {
"title": "Enter your MFA code for Abode",
"data": {
"mfa_code": "MFA code (6-digits)"
}
},
"reauth_confirm": {
"title": "Fill in your Abode login information",
"data": {
"username": "[%key:common::config_flow::data::email%]",
"password": "[%key:common::config_flow::data::password%]"
}
}
},
"error": {
"identifier_exists": "Account already registered.",
"invalid_credentials": "Invalid credentials.",
"connection_error": "Unable to connect to Abode."
"invalid_auth": "[%key:common::config_flow::error::invalid_auth%]",
"cannot_connect": "[%key:common::config_flow::error::cannot_connect%]",
"invalid_mfa_code": "Invalid MFA code"
},
"abort": {
"single_instance_allowed": "Only a single configuration of Abode is allowed."
"single_instance_allowed": "[%key:common::config_flow::abort::single_instance_allowed%]",
"reauth_successful": "[%key:common::config_flow::abort::reauth_successful%]"
}
}
}

View File

@@ -3,11 +3,6 @@
"abort": {
"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": {
"connection_error": "\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435 \u0441 Abode.",
"identifier_exists": "\u041f\u0440\u043e\u0444\u0438\u043b\u044a\u0442 \u0435 \u0432\u0435\u0447\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430\u043d.",
"invalid_credentials": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u0438 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u043e\u043d\u043d\u0438 \u0434\u0430\u043d\u043d\u0438."
},
"step": {
"user": {
"data": {

View File

@@ -1,14 +1,28 @@
{
"config": {
"abort": {
"single_instance_allowed": "Nom\u00e9s es permet una \u00fanica configuraci\u00f3 d'Abode."
"reauth_successful": "Re-autenticaci\u00f3 realitzada correctament",
"single_instance_allowed": "Ja configurat. Nom\u00e9s \u00e9s possible una sola configuraci\u00f3."
},
"error": {
"connection_error": "No es pot connectar amb Abode.",
"identifier_exists": "Compte ja registrat.",
"invalid_credentials": "Credencials inv\u00e0lides."
"cannot_connect": "Ha fallat la connexi\u00f3",
"invalid_auth": "Autenticaci\u00f3 inv\u00e0lida",
"invalid_mfa_code": "Codi MFA inv\u00e0lid"
},
"step": {
"mfa": {
"data": {
"mfa_code": "Codi MFA (6 d\u00edgits)"
},
"title": "Introdueix el codi MFA per a Abode"
},
"reauth_confirm": {
"data": {
"password": "Contrasenya",
"username": "Correu electr\u00f2nic"
},
"title": "Introdueix la informaci\u00f3 d'inici de sessi\u00f3 d'Abode."
},
"user": {
"data": {
"password": "Contrasenya",

View File

@@ -1,18 +1,32 @@
{
"config": {
"abort": {
"single_instance_allowed": "Je povolena pouze jedna konfigurace Abode."
"reauth_successful": "Op\u011btovn\u00e9 ov\u011b\u0159en\u00ed bylo \u00fasp\u011b\u0161n\u00e9",
"single_instance_allowed": "Ji\u017e nastaveno. Je mo\u017en\u00e1 pouze jedin\u00e1 konfigurace."
},
"error": {
"connection_error": "Nelze se p\u0159ipojit k Abode.",
"identifier_exists": "\u00da\u010det je ji\u017e zaregistrov\u00e1n.",
"invalid_credentials": "Neplatn\u00e9 p\u0159ihla\u0161ovac\u00ed \u00fadaje."
"cannot_connect": "Nepoda\u0159ilo se p\u0159ipojit",
"invalid_auth": "Neplatn\u00e9 ov\u011b\u0159en\u00ed",
"invalid_mfa_code": "Neplatn\u00fd k\u00f3d MFA"
},
"step": {
"mfa": {
"data": {
"mfa_code": "K\u00f3d MFA (6 \u010d\u00edslic)"
},
"title": "Zadejte k\u00f3d MFA pro Abode"
},
"reauth_confirm": {
"data": {
"password": "Heslo",
"username": "E-mail"
},
"title": "Vypl\u0148te sv\u00e9 p\u0159ihla\u0161ovac\u00ed \u00fadaje do Abode"
},
"user": {
"data": {
"password": "Heslo",
"username": "E-mailov\u00e1 adresa"
"username": "E-mail"
},
"title": "Vypl\u0148te p\u0159ihla\u0161ovac\u00ed \u00fadaje Abode"
}

View File

@@ -3,11 +3,6 @@
"abort": {
"single_instance_allowed": "Det er kun n\u00f8dvendigt med en ops\u00e6tning af Abode."
},
"error": {
"connection_error": "Kunne ikke oprette forbindelse til Abode.",
"identifier_exists": "Konto er allerede registreret.",
"invalid_credentials": "Ugyldige legitimationsoplysninger."
},
"step": {
"user": {
"data": {

View File

@@ -1,14 +1,28 @@
{
"config": {
"abort": {
"single_instance_allowed": "Es ist nur eine einzige Konfiguration von Abode erlaubt."
"reauth_successful": "Die erneute Authentifizierung war erfolgreich",
"single_instance_allowed": "Bereits konfiguriert. Nur eine einzige Konfiguration m\u00f6glich."
},
"error": {
"connection_error": "Es kann keine Verbindung zu Abode hergestellt werden.",
"identifier_exists": "Das Konto ist bereits registriert.",
"invalid_credentials": "Ung\u00fcltige Anmeldeinformationen"
"cannot_connect": "Verbindung fehlgeschlagen",
"invalid_auth": "Ung\u00fcltige Authentifizierung",
"invalid_mfa_code": "Ung\u00fcltiger MFA-Code"
},
"step": {
"mfa": {
"data": {
"mfa_code": "MFA-Code (6-stellig)"
},
"title": "Gib deinen MFA-Code f\u00fcr Abode ein"
},
"reauth_confirm": {
"data": {
"password": "Passwort",
"username": "E-Mail"
},
"title": "Gib deine Abode-Anmeldeinformationen ein"
},
"user": {
"data": {
"password": "Passwort",

View File

@@ -0,0 +1,8 @@
{
"config": {
"error": {
"cannot_connect": "\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2",
"invalid_auth": "\u039c\u03b7 \u03ad\u03b3\u03ba\u03c5\u03c1\u03b7 \u03b1\u03c5\u03b8\u03b5\u03bd\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7"
}
}
}

View File

@@ -1,14 +1,28 @@
{
"config": {
"abort": {
"single_instance_allowed": "Only a single configuration of Abode is allowed."
"reauth_successful": "Re-authentication was successful",
"single_instance_allowed": "Already configured. Only a single configuration possible."
},
"error": {
"connection_error": "Unable to connect to Abode.",
"identifier_exists": "Account already registered.",
"invalid_credentials": "Invalid credentials."
"cannot_connect": "Failed to connect",
"invalid_auth": "Invalid authentication",
"invalid_mfa_code": "Invalid MFA code"
},
"step": {
"mfa": {
"data": {
"mfa_code": "MFA code (6-digits)"
},
"title": "Enter your MFA code for Abode"
},
"reauth_confirm": {
"data": {
"password": "Password",
"username": "Email"
},
"title": "Fill in your Abode login information"
},
"user": {
"data": {
"password": "Password",

View File

@@ -3,11 +3,6 @@
"abort": {
"single_instance_allowed": "Solo se permite una \u00fanica configuraci\u00f3n de Abode."
},
"error": {
"connection_error": "No se puede conectar a Abode.",
"identifier_exists": "Cuenta ya registrada.",
"invalid_credentials": "Credenciales inv\u00e1lidas."
},
"step": {
"user": {
"data": {

View File

@@ -1,18 +1,32 @@
{
"config": {
"abort": {
"single_instance_allowed": "Solo se permite una \u00fanica configuraci\u00f3n de Abode."
"reauth_successful": "La reautenticaci\u00f3n se realiz\u00f3 correctamente",
"single_instance_allowed": "Ya est\u00e1 configurado. Solo es posible una \u00fanica configuraci\u00f3n."
},
"error": {
"connection_error": "No se puede conectar a Abode.",
"identifier_exists": "Cuenta ya registrada.",
"invalid_credentials": "Credenciales inv\u00e1lidas."
"cannot_connect": "No se pudo conectar",
"invalid_auth": "Autenticaci\u00f3n no v\u00e1lida",
"invalid_mfa_code": "C\u00f3digo MFA inv\u00e1lido"
},
"step": {
"mfa": {
"data": {
"mfa_code": "C\u00f3digo MFA (6 d\u00edgitos)"
},
"title": "Introduce tu c\u00f3digo MFA para Abode"
},
"reauth_confirm": {
"data": {
"password": "Contrase\u00f1a",
"username": "Correo electr\u00f3nico"
},
"title": "Rellene su informaci\u00f3n de inicio de sesi\u00f3n de Abode"
},
"user": {
"data": {
"password": "Contrase\u00f1a",
"username": "Direcci\u00f3n de correo electr\u00f3nico"
"username": "Correo electr\u00f3nico"
},
"title": "Rellene la informaci\u00f3n de acceso Abode"
}

View File

@@ -0,0 +1,35 @@
{
"config": {
"abort": {
"reauth_successful": "Taastuvastamine \u00f5nnestus",
"single_instance_allowed": "Juba seadistatud. V\u00f5imalik on ainult \u00fcks seadistamine."
},
"error": {
"cannot_connect": "\u00dchendamine nurjus",
"invalid_auth": "Tuvastamise viga",
"invalid_mfa_code": "Kehtetu MFA-kood"
},
"step": {
"mfa": {
"data": {
"mfa_code": "MFA kood (6-kohaline)"
},
"title": "Sisesta oma Abode MFA kood"
},
"reauth_confirm": {
"data": {
"password": "Salas\u00f5na",
"username": "E-post"
},
"title": "Sisesta oma Abode sisselogimisteave"
},
"user": {
"data": {
"password": "Salas\u00f5na",
"username": "E-post"
},
"title": "Sisesta oma Abode sisselogimisteave"
}
}
}
}

View File

@@ -0,0 +1,12 @@
{
"config": {
"step": {
"user": {
"data": {
"password": "\u06a9\u0644\u0645\u0647 \u0639\u0628\u0648\u0631",
"username": "\u0627\u06cc\u0645\u06cc\u0644"
}
}
}
}
}

View File

@@ -1,7 +0,0 @@
{
"config": {
"error": {
"connection_error": "Yhteytt\u00e4 Abodeen ei voi muodostaa."
}
}
}

View File

@@ -1,18 +1,32 @@
{
"config": {
"abort": {
"single_instance_allowed": "Une seule configuration d'Abode est autoris\u00e9e."
"reauth_successful": "La r\u00e9-authentification a r\u00e9ussi",
"single_instance_allowed": "D\u00e9ja configur\u00e9. Une seule configuration possible."
},
"error": {
"connection_error": "Impossible de se connecter \u00e0 Abode.",
"identifier_exists": "Compte d\u00e9j\u00e0 enregistr\u00e9.",
"invalid_credentials": "Informations d'identification invalides."
"cannot_connect": "\u00c9chec de connexion",
"invalid_auth": "Authentification invalide",
"invalid_mfa_code": "Code MFA non valide"
},
"step": {
"mfa": {
"data": {
"mfa_code": "Code MFA (6 chiffres)"
},
"title": "Entrez votre code MFA pour Abode"
},
"reauth_confirm": {
"data": {
"password": "Mot de passe",
"username": "Email"
},
"title": "Remplissez vos informations de connexion Abode"
},
"user": {
"data": {
"password": "Mot de passe",
"username": "Adresse e-mail"
"username": "Email"
},
"title": "Remplissez vos informations de connexion Abode"
}

View File

@@ -0,0 +1,11 @@
{
"config": {
"step": {
"user": {
"data": {
"username": "\u05e9\u05dd \u05de\u05e9\u05ea\u05de\u05e9"
}
}
}
}
}

View File

@@ -1,14 +1,27 @@
{
"config": {
"abort": {
"single_instance_allowed": "Csak egyetlen Abode konfigur\u00e1ci\u00f3 enged\u00e9lyezett."
"reauth_successful": "Az \u00fajrahiteles\u00edt\u00e9s sikeres volt",
"single_instance_allowed": "M\u00e1r konfigur\u00e1lva van. Csak egy konfigur\u00e1ci\u00f3 lehets\u00e9ges."
},
"error": {
"connection_error": "Nem lehet csatlakozni az Abode-hez.",
"identifier_exists": "Fi\u00f3k m\u00e1r regisztr\u00e1lva van",
"invalid_credentials": "\u00c9rv\u00e9nytelen hiteles\u00edt\u0151 adatok"
"cannot_connect": "Sikertelen csatlakoz\u00e1s",
"invalid_auth": "\u00c9rv\u00e9nytelen hiteles\u00edt\u00e9s",
"invalid_mfa_code": "\u00c9rv\u00e9nytelen MFA k\u00f3d"
},
"step": {
"mfa": {
"data": {
"mfa_code": "MFA k\u00f3d (6 jegy\u0171)"
},
"title": "Add meg az Abode MFA k\u00f3dj\u00e1t"
},
"reauth_confirm": {
"data": {
"password": "Jelsz\u00f3",
"username": "E-mail"
}
},
"user": {
"data": {
"password": "Jelsz\u00f3",

View File

@@ -0,0 +1,35 @@
{
"config": {
"abort": {
"reauth_successful": "Autentikasi ulang berhasil",
"single_instance_allowed": "Sudah dikonfigurasi. Hanya satu konfigurasi yang diizinkan."
},
"error": {
"cannot_connect": "Gagal terhubung",
"invalid_auth": "Autentikasi tidak valid",
"invalid_mfa_code": "Kode MFA tidak valid"
},
"step": {
"mfa": {
"data": {
"mfa_code": "Kode MFA (6 digit)"
},
"title": "Masukkan kode MFA Anda untuk Abode"
},
"reauth_confirm": {
"data": {
"password": "Kata Sandi",
"username": "Email"
},
"title": "Masukkan informasi masuk Abode Anda"
},
"user": {
"data": {
"password": "Kata Sandi",
"username": "Email"
},
"title": "Masukkan informasi masuk Abode Anda"
}
}
}
}

View File

@@ -1,14 +1,28 @@
{
"config": {
"abort": {
"single_instance_allowed": "\u00c8 consentita una sola configurazione di Abode."
"reauth_successful": "La nuova autenticazione \u00e8 stata eseguita correttamente",
"single_instance_allowed": "Gi\u00e0 configurato. \u00c8 possibile una sola configurazione."
},
"error": {
"connection_error": "Impossibile connettersi ad Abode.",
"identifier_exists": "Account gi\u00e0 registrato",
"invalid_credentials": "Credenziali non valide"
"cannot_connect": "Impossibile connettersi",
"invalid_auth": "Autenticazione non valida",
"invalid_mfa_code": "Codice MFA non valido"
},
"step": {
"mfa": {
"data": {
"mfa_code": "Codice MFA (6 cifre)"
},
"title": "Inserisci il tuo codice MFA per Abode"
},
"reauth_confirm": {
"data": {
"password": "Password",
"username": "E-mail"
},
"title": "Inserisci le tue informazioni di accesso Abode"
},
"user": {
"data": {
"password": "Password",

View File

@@ -1,14 +1,28 @@
{
"config": {
"abort": {
"single_instance_allowed": "\ud558\ub098\uc758 Abode \ub9cc \uad6c\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4."
"reauth_successful": "\uc7ac\uc778\uc99d\uc5d0 \uc131\uacf5\ud588\uc2b5\ub2c8\ub2e4",
"single_instance_allowed": "\uc774\ubbf8 \uad6c\uc131\ub418\uc5c8\uc2b5\ub2c8\ub2e4. \ud558\ub098\uc758 \uc778\uc2a4\ud134\uc2a4\ub9cc \uad6c\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4."
},
"error": {
"connection_error": "Abode \uc5d0 \uc5f0\uacb0\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.",
"identifier_exists": "\uacc4\uc815\uc774 \uc774\ubbf8 \ub4f1\ub85d\ub418\uc5c8\uc2b5\ub2c8\ub2e4",
"invalid_credentials": "\uc0ac\uc6a9\uc790 \uc774\ub984 \ud639\uc740 \ube44\ubc00\ubc88\ud638\uac00 \uc798\ubabb\ub418\uc5c8\uc2b5\ub2c8\ub2e4"
"cannot_connect": "\uc5f0\uacb0\ud558\uc9c0 \ubabb\ud588\uc2b5\ub2c8\ub2e4",
"invalid_auth": "\uc778\uc99d\uc774 \uc798\ubabb\ub418\uc5c8\uc2b5\ub2c8\ub2e4",
"invalid_mfa_code": "MFA \ucf54\ub4dc\uac00 \uc798\ubabb\ub418\uc5c8\uc2b5\ub2c8\ub2e4"
},
"step": {
"mfa": {
"data": {
"mfa_code": "MFA \ucf54\ub4dc (6\uc790\ub9ac)"
},
"title": "Abode\uc5d0 \ub300\ud55c MFA \ucf54\ub4dc\ub97c \uc785\ub825\ud574\uc8fc\uc138\uc694"
},
"reauth_confirm": {
"data": {
"password": "\ube44\ubc00\ubc88\ud638",
"username": "\uc774\uba54\uc77c"
},
"title": "Abode \ub85c\uadf8\uc778 \uc815\ubcf4 \uc785\ub825\ud558\uae30"
},
"user": {
"data": {
"password": "\ube44\ubc00\ubc88\ud638",

View File

@@ -1,14 +1,28 @@
{
"config": {
"abort": {
"single_instance_allowed": "N\u00ebmmen eng eenzeg Konfiguratioun vun ZHA ass erlaabt."
"reauth_successful": "Re-authentifikatioun war erfollegr\u00e4ich",
"single_instance_allowed": "Scho konfigur\u00e9iert. N\u00ebmmen eng eenzeg Konfiguratioun m\u00e9iglech."
},
"error": {
"connection_error": "Kann sech net mat Abode verbannen.",
"identifier_exists": "Konto ass scho registr\u00e9iert",
"invalid_credentials": "Ong\u00eblteg Login Informatioune"
"cannot_connect": "Feeler beim verbannen",
"invalid_auth": "Ong\u00eblteg Authentifikatioun",
"invalid_mfa_code": "Ong\u00ebltege MFA Code"
},
"step": {
"mfa": {
"data": {
"mfa_code": "MFA code (6 Zifferen)"
},
"title": "G\u00ebff dain MFA code fir Abode un"
},
"reauth_confirm": {
"data": {
"password": "Passwuert",
"username": "E-Mail"
},
"title": "F\u00ebll deng Abode Login Informatiounen aus"
},
"user": {
"data": {
"password": "Passwuert",

View File

@@ -1,14 +1,28 @@
{
"config": {
"abort": {
"reauth_successful": "Herauthenticatie was succesvol",
"single_instance_allowed": "Slechts een enkele configuratie van Abode is toegestaan."
},
"error": {
"connection_error": "Kan geen verbinding maken met Abode.",
"identifier_exists": "Account is al geregistreerd.",
"invalid_credentials": "Ongeldige inloggegevens."
"cannot_connect": "Kan geen verbinding maken",
"invalid_auth": "Ongeldige authenticatie",
"invalid_mfa_code": "Ongeldige MFA-code"
},
"step": {
"mfa": {
"data": {
"mfa_code": "MFA-code (6-cijfers)"
},
"title": "Voer uw MFA-code voor Abode in"
},
"reauth_confirm": {
"data": {
"password": "Wachtwoord",
"username": "E-mail"
},
"title": "Vul uw Abode-inloggegevens in"
},
"user": {
"data": {
"password": "Wachtwoord",

View File

@@ -1,18 +1,32 @@
{
"config": {
"abort": {
"single_instance_allowed": "Bare en enkelt konfigurasjon av Abode er tillatt."
"reauth_successful": "Godkjenning p\u00e5 nytt var vellykket",
"single_instance_allowed": "Allerede konfigurert. Bare \u00e9n enkelt konfigurasjon er mulig."
},
"error": {
"connection_error": "Kan ikke koble til Abode.",
"identifier_exists": "Kontoen er allerede registrert.",
"invalid_credentials": "Ugyldig legitimasjon"
"cannot_connect": "Tilkobling mislyktes",
"invalid_auth": "Ugyldig godkjenning",
"invalid_mfa_code": "Ugyldig MFA-kode"
},
"step": {
"mfa": {
"data": {
"mfa_code": "MFA-kode (6-sifre)"
},
"title": "Skriv inn din MFA-kode for Abode"
},
"reauth_confirm": {
"data": {
"password": "Passord",
"username": "E-post"
},
"title": "Fyll ut innloggingsinformasjonen for Abode"
},
"user": {
"data": {
"password": "Passord",
"username": "E-postadresse"
"username": "E-post"
},
"title": "Fyll ut innloggingsinformasjonen for Abode"
}

View File

@@ -1,14 +1,28 @@
{
"config": {
"abort": {
"single_instance_allowed": "Dozwolona jest tylko jedna konfiguracja Abode."
"reauth_successful": "Ponowne uwierzytelnienie powiod\u0142o si\u0119",
"single_instance_allowed": "Ju\u017c skonfigurowano. Mo\u017cliwa jest tylko jedna konfiguracja."
},
"error": {
"connection_error": "Nie mo\u017cna po\u0142\u0105czy\u0107 si\u0119 z Abode.",
"identifier_exists": "Konto jest ju\u017c zarejestrowane.",
"invalid_credentials": "Nieprawid\u0142owe dane uwierzytelniaj\u0105ce"
"cannot_connect": "Nie mo\u017cna nawi\u0105za\u0107 po\u0142\u0105czenia",
"invalid_auth": "Niepoprawne uwierzytelnienie",
"invalid_mfa_code": "Nieprawid\u0142owy kod uwierzytelniania wielosk\u0142adnikowego"
},
"step": {
"mfa": {
"data": {
"mfa_code": "6-cyfrowy kod uwierzytelniania wielosk\u0142adnikowego"
},
"title": "Wprowad\u017a kod uwierzytelniania wielosk\u0142adnikowego dla Abode"
},
"reauth_confirm": {
"data": {
"password": "Has\u0142o",
"username": "Adres e-mail"
},
"title": "Wprowad\u017a informacje logowania Abode"
},
"user": {
"data": {
"password": "Has\u0142o",

View File

@@ -3,11 +3,6 @@
"abort": {
"single_instance_allowed": "Somente uma \u00fanica configura\u00e7\u00e3o de Abode \u00e9 permitida."
},
"error": {
"connection_error": "N\u00e3o foi poss\u00edvel conectar ao Abode.",
"identifier_exists": "Conta j\u00e1 cadastrada.",
"invalid_credentials": "Credenciais inv\u00e1lidas."
},
"step": {
"user": {
"data": {

View File

@@ -1,9 +1,20 @@
{
"config": {
"abort": {
"reauth_successful": "Reautentica\u00e7\u00e3o bem sucedida",
"single_instance_allowed": "J\u00e1 configurado. Apenas uma \u00fanica configura\u00e7\u00e3o \u00e9 poss\u00edvel."
},
"error": {
"identifier_exists": "Conta j\u00e1 registada"
"cannot_connect": "Falha na liga\u00e7\u00e3o",
"invalid_auth": "Autentica\u00e7\u00e3o inv\u00e1lida"
},
"step": {
"reauth_confirm": {
"data": {
"password": "Palavra-passe",
"username": "Email"
}
},
"user": {
"data": {
"password": "Palavra-passe",

View File

@@ -1,14 +1,28 @@
{
"config": {
"abort": {
"single_instance_allowed": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u0430 \u0443\u0436\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430."
"reauth_successful": "\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u0430\u044f \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u043e.",
"single_instance_allowed": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0443\u0436\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u0434\u043d\u0443 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e."
},
"error": {
"connection_error": "\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043a Abode.",
"identifier_exists": "\u0423\u0447\u0451\u0442\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u0443\u0436\u0435 \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0430.",
"invalid_credentials": "\u041d\u0435\u0432\u0435\u0440\u043d\u044b\u0435 \u0443\u0447\u0451\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435."
"cannot_connect": "\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f.",
"invalid_auth": "\u041e\u0448\u0438\u0431\u043a\u0430 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438.",
"invalid_mfa_code": "\u041d\u0435\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043a\u043e\u0434 MFA."
},
"step": {
"mfa": {
"data": {
"mfa_code": "\u041a\u043e\u0434 MFA (6 \u0446\u0438\u0444\u0440)"
},
"title": "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043a\u043e\u0434 MFA \u0434\u043b\u044f Abode"
},
"reauth_confirm": {
"data": {
"password": "\u041f\u0430\u0440\u043e\u043b\u044c",
"username": "\u0410\u0434\u0440\u0435\u0441 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0439 \u043f\u043e\u0447\u0442\u044b"
},
"title": "Abode"
},
"user": {
"data": {
"password": "\u041f\u0430\u0440\u043e\u043b\u044c",

View File

@@ -1,14 +1,26 @@
{
"config": {
"abort": {
"reauth_successful": "Ponovno overjanje je uspelo",
"single_instance_allowed": "Dovoljena je samo ena konfiguracija Abode."
},
"error": {
"connection_error": "Ni mogo\u010de vzpostaviti povezave z Abode.",
"identifier_exists": "Ra\u010dun je \u017ee registriran.",
"invalid_credentials": "Neveljavne poverilnice."
"invalid_mfa_code": "Napa\u010dna MFA koda"
},
"step": {
"mfa": {
"data": {
"mfa_code": "MFA koda (6 \u0161tevilk)"
},
"title": "Vnesite MFA kodo za Abode"
},
"reauth_confirm": {
"data": {
"password": "Geslo",
"username": "E-po\u0161tni naslov"
},
"title": "Vnesite podatke za prijavo v Abode"
},
"user": {
"data": {
"password": "Geslo",

View File

@@ -3,11 +3,6 @@
"abort": {
"single_instance_allowed": "Endast en enda konfiguration av Abode \u00e4r till\u00e5ten."
},
"error": {
"connection_error": "Det gick inte att ansluta till Abode.",
"identifier_exists": "Kontot \u00e4r redan registrerat.",
"invalid_credentials": "Ogiltiga autentiseringsuppgifter."
},
"step": {
"user": {
"data": {

View File

@@ -0,0 +1,9 @@
{
"config": {
"step": {
"mfa": {
"title": "\u0e1b\u0e49\u0e2d\u0e19\u0e23\u0e2b\u0e31\u0e2a MFA \u0e08\u0e32\u0e01 Abode"
}
}
}
}

View File

@@ -0,0 +1,34 @@
{
"config": {
"abort": {
"reauth_successful": "Yeniden kimlik do\u011frulama ba\u015far\u0131l\u0131 oldu",
"single_instance_allowed": "Zaten yap\u0131land\u0131r\u0131lm\u0131\u015f. Yaln\u0131zca tek bir konfig\u00fcrasyon m\u00fcmk\u00fcnd\u00fcr."
},
"error": {
"cannot_connect": "Ba\u011flanma hatas\u0131",
"invalid_auth": "Ge\u00e7ersiz kimlik do\u011frulama",
"invalid_mfa_code": "Ge\u00e7ersiz MFA kodu"
},
"step": {
"mfa": {
"data": {
"mfa_code": "MFA kodu (6 basamakl\u0131)"
},
"title": "Abode i\u00e7in MFA kodunuzu girin"
},
"reauth_confirm": {
"data": {
"password": "Parola",
"username": "E-posta"
},
"title": "Abode giri\u015f bilgilerinizi doldurun"
},
"user": {
"data": {
"password": "Parola",
"username": "E-posta"
}
}
}
}
}

View File

@@ -0,0 +1,35 @@
{
"config": {
"abort": {
"reauth_successful": "\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u0430 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0446\u0456\u044f \u043f\u0440\u043e\u0439\u0448\u043b\u0430 \u0443\u0441\u043f\u0456\u0448\u043d\u043e",
"single_instance_allowed": "\u041d\u0430\u043b\u0430\u0448\u0442\u0443\u0432\u0430\u043d\u043d\u044f \u0432\u0436\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e. \u041c\u043e\u0436\u043d\u0430 \u0434\u043e\u0434\u0430\u0442\u0438 \u043b\u0438\u0448\u0435 \u043e\u0434\u043d\u0443 \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044e."
},
"error": {
"cannot_connect": "\u041d\u0435 \u0432\u0434\u0430\u043b\u043e\u0441\u044f \u043f\u0456\u0434'\u0454\u0434\u043d\u0430\u0442\u0438\u0441\u044f",
"invalid_auth": "\u041d\u0435\u0432\u0456\u0440\u043d\u0430 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0446\u0456\u044f.",
"invalid_mfa_code": "\u041d\u0435\u0434\u0456\u0439\u0441\u043d\u0438\u0439 \u043a\u043e\u0434 MFA."
},
"step": {
"mfa": {
"data": {
"mfa_code": "\u041a\u043e\u0434 MFA (6 \u0446\u0438\u0444\u0440)"
},
"title": "\u0412\u0432\u0435\u0434\u0456\u0442\u044c \u043a\u043e\u0434 MFA \u0434\u043b\u044f Abode"
},
"reauth_confirm": {
"data": {
"password": "\u041f\u0430\u0440\u043e\u043b\u044c",
"username": "\u0410\u0434\u0440\u0435\u0441\u0430 \u0435\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0457 \u043f\u043e\u0448\u0442\u0438"
},
"title": "Abode"
},
"user": {
"data": {
"password": "\u041f\u0430\u0440\u043e\u043b\u044c",
"username": "\u0410\u0434\u0440\u0435\u0441\u0430 \u0435\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u043e\u0457 \u043f\u043e\u0448\u0442\u0438"
},
"title": "Abode"
}
}
}
}

View File

@@ -1,14 +1,28 @@
{
"config": {
"abort": {
"single_instance_allowed": "\u50c5\u5141\u8a31\u8a2d\u5b9a\u4e00\u7d44 Abode\u3002"
"reauth_successful": "\u91cd\u65b0\u8a8d\u8b49\u6210\u529f",
"single_instance_allowed": "\u50c5\u80fd\u8a2d\u5b9a\u4e00\u7d44\u88dd\u7f6e\u3002"
},
"error": {
"connection_error": "\u7121\u6cd5\u9023\u7dda\u81f3 Abode\u3002",
"identifier_exists": "\u5e33\u865f\u5df2\u8a3b\u518a\u3002",
"invalid_credentials": "\u6191\u8b49\u7121\u6548\u3002"
"cannot_connect": "\u9023\u7dda\u5931\u6557",
"invalid_auth": "\u9a57\u8b49\u78bc\u7121\u6548",
"invalid_mfa_code": "\u591a\u6b65\u9a5f\u8a8d\u8b49\u78bc\u7121\u6548"
},
"step": {
"mfa": {
"data": {
"mfa_code": "\u591a\u6b65\u9a5f\u8a8d\u8b49\u78bc\uff086 \u4f4d\uff09"
},
"title": "\u8f38\u5165 Abode \u591a\u6b65\u9a5f\u8a8d\u8b49\u78bc"
},
"reauth_confirm": {
"data": {
"password": "\u5bc6\u78bc",
"username": "\u96fb\u5b50\u90f5\u4ef6"
},
"title": "\u586b\u5beb Abode \u767b\u5165\u8cc7\u8a0a"
},
"user": {
"data": {
"password": "\u5bc6\u78bc",

View File

@@ -8,8 +8,6 @@ from aiohttp.client_exceptions import ClientConnectorError
from async_timeout import timeout
from homeassistant.const import CONF_API_KEY
from homeassistant.core import Config, HomeAssistant
from homeassistant.exceptions import ConfigEntryNotReady
from homeassistant.helpers.aiohttp_client import async_get_clientsession
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
@@ -26,12 +24,6 @@ _LOGGER = logging.getLogger(__name__)
PLATFORMS = ["sensor", "weather"]
async def async_setup(hass: HomeAssistant, config: Config) -> bool:
"""Set up configured AccuWeather."""
hass.data.setdefault(DOMAIN, {})
return True
async def async_setup_entry(hass, config_entry) -> bool:
"""Set up AccuWeather as config entry."""
api_key = config_entry.data[CONF_API_KEY]
@@ -45,21 +37,18 @@ async def async_setup_entry(hass, config_entry) -> bool:
coordinator = AccuWeatherDataUpdateCoordinator(
hass, websession, api_key, location_key, forecast
)
await coordinator.async_refresh()
if not coordinator.last_update_success:
raise ConfigEntryNotReady
await coordinator.async_config_entry_first_refresh()
undo_listener = config_entry.add_update_listener(update_listener)
hass.data[DOMAIN][config_entry.entry_id] = {
hass.data.setdefault(DOMAIN, {})[config_entry.entry_id] = {
COORDINATOR: coordinator,
UNDO_UPDATE_LISTENER: undo_listener,
}
for component in PLATFORMS:
for platform in PLATFORMS:
hass.async_create_task(
hass.config_entries.async_forward_entry_setup(config_entry, component)
hass.config_entries.async_forward_entry_setup(config_entry, platform)
)
return True
@@ -70,8 +59,8 @@ async def async_unload_entry(hass, config_entry):
unload_ok = all(
await asyncio.gather(
*[
hass.config_entries.async_forward_entry_unload(config_entry, component)
for component in PLATFORMS
hass.config_entries.async_forward_entry_unload(config_entry, platform)
for platform in PLATFORMS
]
)
)
@@ -100,13 +89,13 @@ class AccuWeatherDataUpdateCoordinator(DataUpdateCoordinator):
self.accuweather = AccuWeather(api_key, session, location_key=self.location_key)
# Enabling the forecast download increases the number of requests per data
# update, we use 32 minutes for current condition only and 64 minutes for
# update, we use 40 minutes for current condition only and 80 minutes for
# current condition and forecast as update interval to not exceed allowed number
# of requests. We have 50 requests allowed per day, so we use 45 and leave 5 as
# of requests. We have 50 requests allowed per day, so we use 36 and leave 14 as
# a reserve for restarting HA.
update_interval = (
timedelta(minutes=64) if self.forecast else timedelta(minutes=32)
)
update_interval = timedelta(minutes=40)
if self.forecast:
update_interval *= 2
_LOGGER.debug("Data will be update every %s", update_interval)
super().__init__(hass, _LOGGER, name=DOMAIN, update_interval=update_interval)

View File

@@ -13,7 +13,7 @@ from homeassistant.core import callback
from homeassistant.helpers.aiohttp_client import async_get_clientsession
import homeassistant.helpers.config_validation as cv
from .const import CONF_FORECAST, DOMAIN # pylint:disable=unused-import
from .const import CONF_FORECAST, DOMAIN
class AccuWeatherFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):

View File

@@ -1,6 +1,24 @@
"""Constants for AccuWeather integration."""
from homeassistant.components.weather import (
ATTR_CONDITION_CLEAR_NIGHT,
ATTR_CONDITION_CLOUDY,
ATTR_CONDITION_EXCEPTIONAL,
ATTR_CONDITION_FOG,
ATTR_CONDITION_HAIL,
ATTR_CONDITION_LIGHTNING,
ATTR_CONDITION_LIGHTNING_RAINY,
ATTR_CONDITION_PARTLYCLOUDY,
ATTR_CONDITION_POURING,
ATTR_CONDITION_RAINY,
ATTR_CONDITION_SNOWY,
ATTR_CONDITION_SNOWY_RAINY,
ATTR_CONDITION_SUNNY,
ATTR_CONDITION_WINDY,
)
from homeassistant.const import (
ATTR_DEVICE_CLASS,
ATTR_ICON,
CONCENTRATION_PARTS_PER_CUBIC_METER,
DEVICE_CLASS_TEMPERATURE,
LENGTH_FEET,
LENGTH_INCHES,
@@ -13,16 +31,13 @@ from homeassistant.const import (
TEMP_FAHRENHEIT,
TIME_HOURS,
UV_INDEX,
VOLUME_CUBIC_METERS,
)
ATTRIBUTION = "Data provided by AccuWeather"
ATTR_ICON = "icon"
ATTR_FORECAST = CONF_FORECAST = "forecast"
ATTR_LABEL = "label"
ATTR_UNIT_IMPERIAL = "Imperial"
ATTR_UNIT_METRIC = "Metric"
CONCENTRATION_PARTS_PER_CUBIC_METER = f"p/{VOLUME_CUBIC_METERS}"
COORDINATOR = "coordinator"
DOMAIN = "accuweather"
MANUFACTURER = "AccuWeather, Inc."
@@ -30,20 +45,20 @@ NAME = "AccuWeather"
UNDO_UPDATE_LISTENER = "undo_update_listener"
CONDITION_CLASSES = {
"clear-night": [33, 34, 37],
"cloudy": [7, 8, 38],
"exceptional": [24, 30, 31],
"fog": [11],
"hail": [25],
"lightning": [15],
"lightning-rainy": [16, 17, 41, 42],
"partlycloudy": [4, 6, 35, 36],
"pouring": [18],
"rainy": [12, 13, 14, 26, 39, 40],
"snowy": [19, 20, 21, 22, 23, 43, 44],
"snowy-rainy": [29],
"sunny": [1, 2, 3, 5],
"windy": [32],
ATTR_CONDITION_CLEAR_NIGHT: [33, 34, 37],
ATTR_CONDITION_CLOUDY: [7, 8, 38],
ATTR_CONDITION_EXCEPTIONAL: [24, 30, 31],
ATTR_CONDITION_FOG: [11],
ATTR_CONDITION_HAIL: [25],
ATTR_CONDITION_LIGHTNING: [15],
ATTR_CONDITION_LIGHTNING_RAINY: [16, 17, 41, 42],
ATTR_CONDITION_PARTLYCLOUDY: [3, 4, 6, 35, 36],
ATTR_CONDITION_POURING: [18],
ATTR_CONDITION_RAINY: [12, 13, 14, 26, 39, 40],
ATTR_CONDITION_SNOWY: [19, 20, 21, 22, 23, 43, 44],
ATTR_CONDITION_SNOWY_RAINY: [29],
ATTR_CONDITION_SUNNY: [1, 2, 5],
ATTR_CONDITION_WINDY: [32],
}
FORECAST_DAYS = [0, 1, 2, 3, 4]
@@ -168,6 +183,20 @@ FORECAST_SENSOR_TYPES = {
ATTR_UNIT_METRIC: SPEED_KILOMETERS_PER_HOUR,
ATTR_UNIT_IMPERIAL: SPEED_MILES_PER_HOUR,
},
"WindDay": {
ATTR_DEVICE_CLASS: None,
ATTR_ICON: "mdi:weather-windy",
ATTR_LABEL: "Wind Day",
ATTR_UNIT_METRIC: SPEED_KILOMETERS_PER_HOUR,
ATTR_UNIT_IMPERIAL: SPEED_MILES_PER_HOUR,
},
"WindNight": {
ATTR_DEVICE_CLASS: None,
ATTR_ICON: "mdi:weather-windy",
ATTR_LABEL: "Wind Night",
ATTR_UNIT_METRIC: SPEED_KILOMETERS_PER_HOUR,
ATTR_UNIT_IMPERIAL: SPEED_MILES_PER_HOUR,
},
}
OPTIONAL_SENSORS = (
@@ -269,6 +298,13 @@ SENSOR_TYPES = {
ATTR_UNIT_METRIC: TEMP_CELSIUS,
ATTR_UNIT_IMPERIAL: TEMP_FAHRENHEIT,
},
"Wind": {
ATTR_DEVICE_CLASS: None,
ATTR_ICON: "mdi:weather-windy",
ATTR_LABEL: "Wind",
ATTR_UNIT_METRIC: SPEED_KILOMETERS_PER_HOUR,
ATTR_UNIT_IMPERIAL: SPEED_MILES_PER_HOUR,
},
"WindGust": {
ATTR_DEVICE_CLASS: None,
ATTR_ICON: "mdi:weather-windy",

View File

@@ -2,7 +2,7 @@
"domain": "accuweather",
"name": "AccuWeather",
"documentation": "https://www.home-assistant.io/integrations/accuweather/",
"requirements": ["accuweather==0.0.11"],
"requirements": ["accuweather==0.1.1"],
"codeowners": ["@bieniu"],
"config_flow": true,
"quality_scale": "platinum"

View File

@@ -1,4 +1,5 @@
"""Support for the AccuWeather service."""
from homeassistant.components.sensor import SensorEntity
from homeassistant.const import (
ATTR_ATTRIBUTION,
ATTR_DEVICE_CLASS,
@@ -48,7 +49,7 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
async_add_entities(sensors, False)
class AccuWeatherSensor(CoordinatorEntity):
class AccuWeatherSensor(CoordinatorEntity, SensorEntity):
"""Define an AccuWeather entity."""
def __init__(self, name, kind, coordinator, forecast_day=None):
@@ -96,7 +97,7 @@ class AccuWeatherSensor(CoordinatorEntity):
return self.coordinator.data[ATTR_FORECAST][self.forecast_day][
self.kind
]["Value"]
if self.kind in ["WindGustDay", "WindGustNight"]:
if self.kind in ["WindDay", "WindNight", "WindGustDay", "WindGustNight"]:
return self.coordinator.data[ATTR_FORECAST][self.forecast_day][
self.kind
]["Speed"]["Value"]
@@ -115,7 +116,7 @@ class AccuWeatherSensor(CoordinatorEntity):
return self.coordinator.data["PrecipitationSummary"][self.kind][
self._unit_system
]["Value"]
if self.kind == "WindGust":
if self.kind in ["Wind", "WindGust"]:
return self.coordinator.data[self.kind]["Speed"][self._unit_system]["Value"]
return self.coordinator.data[self.kind]
@@ -141,10 +142,10 @@ class AccuWeatherSensor(CoordinatorEntity):
return SENSOR_TYPES[self.kind][self._unit_system]
@property
def device_state_attributes(self):
def extra_state_attributes(self):
"""Return the state attributes."""
if self.forecast_day is not None:
if self.kind in ["WindGustDay", "WindGustNight"]:
if self.kind in ["WindDay", "WindNight", "WindGustDay", "WindGustNight"]:
self._attrs["direction"] = self.coordinator.data[ATTR_FORECAST][
self.forecast_day
][self.kind]["Direction"]["English"]

View File

@@ -5,10 +5,10 @@
"title": "AccuWeather",
"description": "If you need help with the configuration have a look here: https://www.home-assistant.io/integrations/accuweather/\n\nSome sensors are not enabled by default. You can enable them in the entity registry after the integration configuration.\nWeather forecast is not enabled by default. You can enable it in the integration options.",
"data": {
"name": "Name of the integration",
"name": "[%key:common::config_flow::data::name%]",
"api_key": "[%key:common::config_flow::data::api_key%]",
"latitude": "Latitude",
"longitude": "Longitude"
"latitude": "[%key:common::config_flow::data::latitude%]",
"longitude": "[%key:common::config_flow::data::longitude%]"
}
}
},
@@ -25,11 +25,17 @@
"step": {
"user": {
"title": "AccuWeather Options",
"description": "Due to the limitations of the free version of the AccuWeather API key, when you enable weather forecast, data updates will be performed every 64 minutes instead of every 32 minutes.",
"description": "Due to the limitations of the free version of the AccuWeather API key, when you enable weather forecast, data updates will be performed every 80 minutes instead of every 40 minutes.",
"data": {
"forecast": "Weather forecast"
}
}
}
},
"system_health": {
"info": {
"can_reach_server": "Reach AccuWeather server",
"remaining_requests": "Remaining allowed requests"
}
}
}

View File

@@ -0,0 +1,27 @@
"""Provide info to system health."""
from accuweather.const import ENDPOINT
from homeassistant.components import system_health
from homeassistant.core import HomeAssistant, callback
from .const import COORDINATOR, DOMAIN
@callback
def async_register(
hass: HomeAssistant, register: system_health.SystemHealthRegistration
) -> None:
"""Register system health callbacks."""
register.async_register_info(system_health_info)
async def system_health_info(hass):
"""Get info for the info page."""
remaining_requests = list(hass.data[DOMAIN].values())[0][
COORDINATOR
].accuweather.requests_remaining
return {
"can_reach_server": system_health.async_check_can_reach_url(hass, ENDPOINT),
"remaining_requests": remaining_requests,
}

View File

@@ -14,7 +14,7 @@
"api_key": "Clau API",
"latitude": "Latitud",
"longitude": "Longitud",
"name": "Nom de la integraci\u00f3"
"name": "Nom"
},
"description": "Si necessites ajuda amb la configuraci\u00f3, consulta els seg\u00fcent enlla\u00e7: https://www.home-assistant.io/integrations/accuweather/ \n\n Alguns sensors no estan activats de manera predeterminada. Els pots activar des del registre d'entitats, despr\u00e9s de la configurraci\u00f3 de la integraci\u00f3.\n La previsi\u00f3 meteorol\u00f2gica no est\u00e0 activada de manera predeterminada. Pots activar-la en les opcions de la integraci\u00f3.",
"title": "AccuWeather"
@@ -27,9 +27,15 @@
"data": {
"forecast": "Previsi\u00f3 meteorol\u00f2gica"
},
"description": "Per culpa de les limitacions de la versi\u00f3 gratu\u00efta l'API d'AccuWeather, quan habilitis la previsi\u00f3 meteorol\u00f2gica, les actualitzacions es realitzaran cada 64 minuts en comptes de 32.",
"description": "Per culpa de les limitacions de la versi\u00f3 gratu\u00efta l'API d'AccuWeather, quan habilitis la previsi\u00f3 meteorol\u00f2gica, les actualitzacions de dades es faran cada 80 minuts en comptes de cada 40.",
"title": "Opcions d'AccuWeather"
}
}
},
"system_health": {
"info": {
"can_reach_server": "Servidor d'Accuweather accessible",
"remaining_requests": "Sol\u00b7licituds permeses restants"
}
}
}

View File

@@ -1,12 +1,41 @@
{
"config": {
"abort": {
"single_instance_allowed": "Ji\u017e nastaveno. Je mo\u017en\u00e1 pouze jedin\u00e1 konfigurace."
},
"error": {
"cannot_connect": "Nepoda\u0159ilo se p\u0159ipojit",
"invalid_api_key": "Neplatn\u00fd kl\u00ed\u010d API",
"requests_exceeded": "Byl p\u0159ekro\u010den povolen\u00fd po\u010det po\u017eadavk\u016f pro API Accuweather. Mus\u00edte po\u010dkat nebo zm\u011bnit API kl\u00ed\u010d."
},
"step": {
"user": {
"data": {
"api_key": "Kl\u00ed\u010d API",
"latitude": "Zem\u011bpisn\u00e1 \u0161\u00ed\u0159ka",
"longitude": "Zem\u011bpisn\u00e1 d\u00e9lka"
}
"longitude": "Zem\u011bpisn\u00e1 d\u00e9lka",
"name": "Jm\u00e9no"
},
"description": "Pokud pot\u0159ebujete pomoc s nastaven\u00ed, pod\u00edvejte se na: https://www.home-assistant.io/integrations/accuweather/\n\nN\u011bkter\u00e9 senzory nejsou ve v\u00fdchoz\u00edm nastaven\u00ed povoleny. M\u016f\u017eete je povolit po nastaven\u00ed integrace v registru entit.\nP\u0159edpov\u011b\u010f po\u010das\u00ed nen\u00ed ve v\u00fdchoz\u00edm nastaven\u00ed povolena. M\u016f\u017eete ji povolit v mo\u017enostech integrace.",
"title": "AccuWeather"
}
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "P\u0159edpov\u011b\u010f po\u010das\u00ed"
},
"description": "Kdy\u017e povol\u00edte p\u0159edpov\u011b\u010f po\u010das\u00ed, budou aktualizace dat prov\u00e1d\u011bny ka\u017ed\u00fdch 80 minut nam\u00edsto 40 minut z d\u016fvodu omezen\u00ed bezplatn\u00e9 verze AccuWeather.",
"title": "Mo\u017enosti AccuWeather"
}
}
},
"system_health": {
"info": {
"can_reach_server": "Lze kontaktovat AccuWeather server",
"remaining_requests": "Zb\u00fdvaj\u00edc\u00ed povolen\u00e9 \u017e\u00e1dosti"
}
}
}

View File

@@ -1,13 +1,38 @@
{
"config": {
"abort": {
"single_instance_allowed": "Bereits konfiguriert. Nur eine einzige Konfiguration m\u00f6glich."
},
"error": {
"cannot_connect": "Verbindung fehlgeschlagen",
"invalid_api_key": "Ung\u00fcltiger API-Schl\u00fcssel",
"requests_exceeded": "Die zul\u00e4ssige Anzahl von Anforderungen an die Accuweather-API wurde \u00fcberschritten. Sie m\u00fcssen warten oder den API-Schl\u00fcssel \u00e4ndern."
},
"step": {
"user": {
"data": {
"api_key": "API-Schl\u00fcssel",
"latitude": "Breitengrad",
"longitude": "L\u00e4ngengrad"
"longitude": "L\u00e4ngengrad",
"name": "Name"
},
"title": "AccuWeather"
}
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "Wettervorhersage"
}
}
}
},
"system_health": {
"info": {
"can_reach_server": "AccuWeather-Server erreichen",
"remaining_requests": "Verbleibende erlaubte Anfragen"
}
}
}

View File

@@ -14,7 +14,7 @@
"api_key": "API Key",
"latitude": "Latitude",
"longitude": "Longitude",
"name": "Name of the integration"
"name": "Name"
},
"description": "If you need help with the configuration have a look here: https://www.home-assistant.io/integrations/accuweather/\n\nSome sensors are not enabled by default. You can enable them in the entity registry after the integration configuration.\nWeather forecast is not enabled by default. You can enable it in the integration options.",
"title": "AccuWeather"
@@ -27,9 +27,15 @@
"data": {
"forecast": "Weather forecast"
},
"description": "Due to the limitations of the free version of the AccuWeather API key, when you enable weather forecast, data updates will be performed every 64 minutes instead of every 32 minutes.",
"description": "Due to the limitations of the free version of the AccuWeather API key, when you enable weather forecast, data updates will be performed every 80 minutes instead of every 40 minutes.",
"title": "AccuWeather Options"
}
}
},
"system_health": {
"info": {
"can_reach_server": "Reach AccuWeather server",
"remaining_requests": "Remaining allowed requests"
}
}
}

View File

@@ -0,0 +1,23 @@
{
"config": {
"error": {
"requests_exceeded": "Se super\u00f3 el n\u00famero permitido de solicitudes a la API de Accuweather. Tiene que esperar o cambiar la clave de API."
},
"step": {
"user": {
"description": "Si necesita ayuda con la configuraci\u00f3n, eche un vistazo aqu\u00ed: https://www.home-assistant.io/integrations/accuweather/ \n\nAlgunos sensores no est\u00e1n habilitados de forma predeterminada. Puede habilitarlos en el registro de entidades despu\u00e9s de la configuraci\u00f3n de integraci\u00f3n. La previsi\u00f3n meteorol\u00f3gica no est\u00e1 habilitada de forma predeterminada. Puede habilitarlo en las opciones de integraci\u00f3n.",
"title": "AccuWeather"
}
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "Pron\u00f3stico del tiempo"
},
"description": "Debido a las limitaciones de la versi\u00f3n gratuita de la clave API de AccuWeather, cuando habilita el pron\u00f3stico del tiempo, las actualizaciones de datos se realizar\u00e1n cada 64 minutos en lugar de cada 32 minutos."
}
}
}
}

View File

@@ -1,7 +1,7 @@
{
"config": {
"abort": {
"single_instance_allowed": "Ya est\u00e1 configurado. S\u00f3lo es posible una \u00fanica configuraci\u00f3n."
"single_instance_allowed": "Ya est\u00e1 configurado. Solo es posible una \u00fanica configuraci\u00f3n."
},
"error": {
"cannot_connect": "No se pudo conectar",
@@ -14,7 +14,7 @@
"api_key": "Clave API",
"latitude": "Latitud",
"longitude": "Longitud",
"name": "Nombre de la integraci\u00f3n"
"name": "Nombre"
},
"description": "Si necesitas ayuda con la configuraci\u00f3n, echa un vistazo aqu\u00ed: https://www.home-assistant.io/integrations/accuweather/ \n\nEl pron\u00f3stico del tiempo no est\u00e1 habilitado por defecto. Puedes habilitarlo en las opciones de la integraci\u00f3n.",
"title": "AccuWeather"
@@ -31,5 +31,11 @@
"title": "Opciones de AccuWeather"
}
}
},
"system_health": {
"info": {
"can_reach_server": "Alcanzar el servidor AccuWeather",
"remaining_requests": "Solicitudes permitidas restantes"
}
}
}

View File

@@ -1,10 +1,10 @@
{
"config": {
"abort": {
"single_instance_allowed": "Sidumine juba tehtud. V\u00f5imalik on ainult 1 sidumine,"
"single_instance_allowed": "Sidumine juba tehtud. V\u00f5imalik on ainult 1 sidumine."
},
"error": {
"cannot_connect": "\u00dchendus eba\u00f5nnestus",
"cannot_connect": "\u00dchendamine nurjus",
"invalid_api_key": "API v\u00f5ti on vale",
"requests_exceeded": "Accuweatheri API-le esitatud p\u00e4ringute piirarv on \u00fcletatud. Peate ootama (v\u00f5i muutma API v\u00f5tit)."
},
@@ -27,9 +27,15 @@
"data": {
"forecast": "Ilmateade"
},
"description": "AccuWeather API tasuta versioonis toimub ilmaennustuse lubamisel andmete v\u00e4rskendamine iga 32 minuti asemel iga 64 minuti j\u00e4rel.",
"description": "AccuWeather API tasuta versioonis toimub ilmaennustuse lubamisel andmete v\u00e4rskendamine iga 80 minuti j\u00e4rel (muidu 40 minutit).",
"title": "AccuWeatheri valikud"
}
}
},
"system_health": {
"info": {
"can_reach_server": "\u00dchendus Accuweatheri serveriga",
"remaining_requests": "Lubatud taotlusi on j\u00e4\u00e4nud"
}
}
}

Some files were not shown because too many files have changed in this diff Show More