Compare commits

...

3398 Commits

Author SHA1 Message Date
Franck Nijhof
604a2ac327 Merge pull request #61501 from home-assistant/rc 2021-12-11 19:06:29 +01:00
Franck Nijhof
1042f23a0a Bumped version to 2021.12.0 2021-12-11 18:15:19 +01:00
Bram Kragten
608ce2d5a0 Update frontend to 20211211.0 (#61499) 2021-12-11 18:14:53 +01:00
Marcel van der Veldt
2e989bdfcf Fix typo in Hue device triggers - use enum value (#61498) 2021-12-11 18:14:45 +01:00
Franck Nijhof
f10bfc961d Bumped version to 2021.12.0b7 2021-12-11 13:36:48 +01:00
J. Nick Koston
1f57c8ed1a Fix missing color modes for Magic Home Ceiling Light CCT (0xE1) (#61478) 2021-12-11 13:36:23 +01:00
J. Nick Koston
dd47f0b698 Fix exception in color_rgb_to_rgbww (#61466) 2021-12-11 13:36:20 +01:00
J. Nick Koston
08eabfd056 Fix non-threadsafe call to async_fire in telegram_bot (#61465)
Fixes https://github.com/home-assistant/core/issues/53255#issuecomment-888111478
2021-12-11 13:36:17 +01:00
Marcel van der Veldt
7b64eabde1 Small fix for device triggers and events on Hue integration (#61462) 2021-12-11 13:36:13 +01:00
David F. Mulcahey
46808b1fc1 Bump ZHA quirks to 0.0.65 (#61458) 2021-12-11 13:36:09 +01:00
Simone Chemelli
23cb75fe20 Interim fix (#61435) 2021-12-11 13:33:56 +01:00
Erik Montnemery
d20496a1bc Correct rest sensor configured to generate timestamps (#61429) 2021-12-11 13:26:33 +01:00
Erik Montnemery
4496aeb327 Correct recorder.statistics.get_last_statistics (#61421) 2021-12-11 13:26:30 +01:00
Erik Montnemery
519ec18a04 Correct device class for Tasmota dewpoint sensor (#61420) 2021-12-11 13:26:26 +01:00
J. Nick Koston
c14269d09d Fix older v1 dimmable flux_led bulbs not turning on (#61414) 2021-12-11 13:26:21 +01:00
J. Nick Koston
81b1b04210 Fix flux_led discovery with older models (#61413) 2021-12-11 13:26:17 +01:00
Aaron Bach
18768ad8a0 Bump simplisafe-python to 2021.12.1 (#61412) 2021-12-11 13:26:13 +01:00
J. Nick Koston
d038db01ed Fix lookin set temperature when device is off (#61411) 2021-12-11 13:26:09 +01:00
Matthias Alphart
c51c18781d Fix unique_id of S0 meters connected to Fronius inverters (#61408) 2021-12-11 13:26:06 +01:00
bsmappee
e483c16d59 Remove energy entity again in Smappee local integration (#61373) 2021-12-11 13:26:02 +01:00
Yehuda Davis
87b50fff54 Fix Tuya cover open/close commands (#61369)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-11 13:25:58 +01:00
bsmappee
da9fbde83a add missing unit of measurement in Smappee (#61365) 2021-12-11 13:25:55 +01:00
MattWestb
6785e32683 Add 2 new CN-Hysen TRVs (#61002)
Adding CN-Hysen "_TZE200_pvvbommb" and "_TZE200_4eeyebrt" TRVs
2021-12-11 13:25:51 +01:00
Paulus Schoutsen
7208cb49f1 Disable lupusec (#61142) 2021-12-09 15:05:41 -08:00
Paulus Schoutsen
5476b23d8b Bumped version to 2021.12.0b6 2021-12-09 14:42:14 -08:00
Aaron Bach
5d65db5168 Assign docs URL to a placeholder in SimpliSafe config flow (#61410) 2021-12-09 14:42:05 -08:00
Paulus Schoutsen
509ebbc743 Bump frontend to 20211209.0 (#61406) 2021-12-09 14:42:05 -08:00
Aaron Bach
abe6f1ab5b Consolidate SimpliSafe config flow forms into one (#61402) 2021-12-09 14:42:04 -08:00
jjlawren
ae26e60740 Fix Sonos radio handling during polling (#61401) 2021-12-09 14:42:03 -08:00
bigbadblunt
f8f381afa3 Add default value for signal_repetitions in cover (#61393) 2021-12-09 14:42:02 -08:00
einarhauks
7cc2af2a46 Update tesla-wall-connector to v1.0.1 (#61392) 2021-12-09 14:42:02 -08:00
Franck Nijhof
29aab7ad7a Bumped version to 2021.12.0b5 2021-12-09 12:09:53 +01:00
Franck Nijhof
3b2b116c10 Upgrade tailscale to 0.1.4 (#61338) 2021-12-09 12:08:36 +01:00
Paulus Schoutsen
07438c07c9 Fix CO2signal error handling (#61311) 2021-12-09 12:08:33 +01:00
Paulus Schoutsen
0203228a11 Fix hue groups inheritance (#61308) 2021-12-09 12:08:29 +01:00
J. Nick Koston
fe7521b503 Fix lookin failing to setup during firmware updates (#61305) 2021-12-09 12:08:26 +01:00
Yehuda Davis
24a6e90042 Fix regression in Tuya cover is_closed logic (#61303) 2021-12-09 12:08:23 +01:00
Paulus Schoutsen
7387640524 Fix rova timezone (#61302) 2021-12-09 12:08:20 +01:00
Stefan Agner
d7708d58ba Introduce only_supervisor for @websocket_api.ws_require_user() (#61298) 2021-12-09 12:08:16 +01:00
Paulus Schoutsen
10a4037ed3 Rest fixes (#61296) 2021-12-09 12:08:13 +01:00
J. Nick Koston
aefd675737 Restore rest integration ability to follow http redirects (#61293) 2021-12-09 12:08:10 +01:00
J. Nick Koston
9a4a09b2f2 Bump flux_led to 0.26.3 (#61287) 2021-12-09 12:08:06 +01:00
Paulus Schoutsen
793bdebc13 Use correct template parameter in Rest template rendering (#61269) 2021-12-09 12:08:01 +01:00
Paulus Schoutsen
e66f0a68e7 Guard cannot connect during Tuya init (#61267) 2021-12-09 12:07:58 +01:00
Paulus Schoutsen
5c70ddb7cb Fix smartthings timestamp sensor (#61254) 2021-12-09 12:07:55 +01:00
Erik Montnemery
79501289f0 Correct state class for Tasmota sensors (#61236)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2021-12-09 12:07:51 +01:00
Allen Porter
7ee148c650 Display nest media events using local time (#61143) 2021-12-09 12:07:48 +01:00
Franck Nijhof
1ddb0d255a Fix date/datetime support for templates (#61088)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-12-09 12:07:45 +01:00
Stefan Agner
89eed9c31e Allow to lock SQLite database during backup (#60874)
* Allow to set CONF_DB_URL

This is useful for test which need a custom DB path.

* Introduce write_lock_db helper to lock SQLite database

* Introduce Websocket API which allows to lock database during backup

* Fix isort

* Avoid mutable default arguments

* Address pylint issues

* Avoid holding executor thread

* Set unlock event in case timeout occures

This makes sure the database is left unlocked even in case of a race
condition.

* Add more unit tests

* Address new pylint errors

* Lower timeout to speedup tests

* Introduce queue overflow test

* Unlock database if necessary

This makes sure that the test runs through in case locking actually
succeeds (and the test fails).

* Make DB_LOCK_TIMEOUT a global

There is no good reason for this to be an argument. The recorder needs
to pick a sensible value.

* Add Websocket Timeout test

* Test lock_database() return

* Update homeassistant/components/recorder/__init__.py

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

* Fix format

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-09 12:07:41 +01:00
Paulus Schoutsen
0cb0136b2f Bumped version to 2021.12.0b4 2021-12-08 11:02:14 -08:00
Paulus Schoutsen
36eca38be2 don't convert GTFS timestamp to UTC in timestamp sensor (#61221) 2021-12-08 11:02:05 -08:00
Paulus Schoutsen
0b470bb8fb Fix follow-up review comment for bbox (#61219) 2021-12-08 11:02:04 -08:00
Paulus Schoutsen
030ac3d762 Fix yandex_transport timestamp sensor (#61217) 2021-12-08 11:02:04 -08:00
Paulus Schoutsen
b5b2c3cc0d Fix vallox timestamp sensor (#61216)
* Fix vallox timestamp sensor

* Change old state type
2021-12-08 11:02:03 -08:00
Paulus Schoutsen
7940aab4c5 Fix repetier timestamp sensors (#61214) 2021-12-08 11:02:02 -08:00
Paulus Schoutsen
2513347e27 Fix oasa_telematics timestamp sensor (#61213) 2021-12-08 11:02:01 -08:00
Paulus Schoutsen
e6b784e4f2 Fix nextbus timestamp sensor (#61212) 2021-12-08 11:02:00 -08:00
Paulus Schoutsen
d080c31583 Fix modern_forms timestmap sensors (#61211) 2021-12-08 11:01:59 -08:00
Paulus Schoutsen
e68dcff3f3 Fix meteo_france timestamp sensor (#61210) 2021-12-08 11:01:58 -08:00
Paulus Schoutsen
66fa6dff93 Fix lyric timestamp sensor (#61209)
* Fix lyric timestamp sensor

* Update type
2021-12-08 11:01:57 -08:00
Paulus Schoutsen
d533aba4f9 Fix litterrobot timestamp sensor (#61208)
* Fix litterrobot timestamp sensor

* Update type
2021-12-08 11:01:56 -08:00
Paulus Schoutsen
700eaf8794 Fix islamic prayer times timestamp sensor (#61207) 2021-12-08 11:01:56 -08:00
Paulus Schoutsen
7583d9a409 Fix hydrawise timestamp sensor (#61206) 2021-12-08 11:01:55 -08:00
Paulus Schoutsen
dc3ece447b Fix hvv_departures timestamp sensor (#61205) 2021-12-08 11:01:54 -08:00
Paulus Schoutsen
2c0e406c1b Fix gtfs timestamp sensor (#61204) 2021-12-08 11:01:53 -08:00
Paulus Schoutsen
67c808bde9 Fix flipr timestamp sensor (#61203) 2021-12-08 11:01:52 -08:00
Paulus Schoutsen
2fa2a2e6d4 Fix bbox timestamp (#61202) 2021-12-08 11:01:52 -08:00
Paulus Schoutsen
8735395144 Fix Rova using strings as timestamp (#61201) 2021-12-08 11:01:51 -08:00
J. Nick Koston
428129cad7 Fix log spam from flux_led 0x08 devices when in music mode (#61196) 2021-12-08 11:01:50 -08:00
puddly
64c52aecef Bump ZHA dependency zigpy-znp from 0.6.3 to 0.6.4 (#61194) 2021-12-08 11:01:49 -08:00
J. Nick Koston
04a2e1fd7b Fix uncaught exception in bond config flow (#61184) 2021-12-08 11:01:49 -08:00
Robert Blomqvist
bdc37e9353 Rephrase upgrade notification message to avoid installing Python 3.10 (#61181) 2021-12-08 11:01:48 -08:00
Jan Bouwhuis
a581095bd0 Fix pvoutput template use and REST integer parsing (#61171)
* Fix pvoutput template use and REST integer parsing

* revert accepting templates as input
2021-12-08 11:01:47 -08:00
Erik Montnemery
707e501511 Skip duplicated data when calculating fossil energy consumption (#60599) 2021-12-08 11:01:46 -08:00
Paulus Schoutsen
9f1701f557 Bumped version to 2021.12.0b3 2021-12-07 12:54:28 -08:00
Charles Garwood
61545edd96 Remove loopenergy integration (#61175)
* Remove loopenergy integration

* Fix requirements_all.txt

* Fix requirements_test_all.txt
2021-12-07 12:54:22 -08:00
Allen Porter
e09c85c591 Bump nest to 0.4.5 to fix media player event expiration (#61174) 2021-12-07 12:54:21 -08:00
einarhauks
fecfbba442 Display energy in wh instead of kWh (#61169) 2021-12-07 12:54:21 -08:00
Aaron Bach
13ce6edc68 Bump py17track to 2021.12.2 (#61166) 2021-12-07 12:54:20 -08:00
Tobias Sauerwein
816b5af883 Fix Netatmo climate issue (#61154)
Signed-off-by: cgtobi <cgtobi@gmail.com>
2021-12-07 12:54:19 -08:00
Erik Montnemery
78ada630c0 Guard against missing states in Alexa state updates (#61152) 2021-12-07 12:54:18 -08:00
Marcel van der Veldt
4ad904f3b7 Change check for existence of options flow (#61147)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-12-07 12:54:16 -08:00
Fredrik Erlandsson
fa447332c6 Fix point availability (#61144) 2021-12-07 12:54:15 -08:00
Erik Montnemery
8da3756602 Bump hatasmota to 0.3.1 (#61120) 2021-12-07 12:54:15 -08:00
G Johansson
01adc6a042 Improve code quality trafikverket_weatherstation (#61044)
* Code quality trafikverket_weatherstation

* Updates from review

* Fix extra attributes settings

* Fix for additional review comments
2021-12-07 12:54:14 -08:00
Paulus Schoutsen
d105e9f99e Bumped version to 2021.12.0b2 2021-12-06 15:54:09 -08:00
Paulus Schoutsen
348079f069 Bump frontend to 20211206.0 (#61133) 2021-12-06 15:54:01 -08:00
Aaron Bach
86f5165e4c Deprecate entity_id parameter in Guardian service calls (#61129) 2021-12-06 15:54:00 -08:00
jjlawren
b6d012222a Improve Sonos activity debug logging (#61122) 2021-12-06 15:53:59 -08:00
Aaron Bach
0532c22069 Bump simplisafe-python to 2021.12.0 (#61121) 2021-12-06 15:53:58 -08:00
Marcel van der Veldt
d1672a1e9a Remove colon from default entity name in Hue integration (#61118) 2021-12-06 15:53:58 -08:00
Paulus Schoutsen
725e3046db Return native timestamps for home connect (#61116) 2021-12-06 15:53:57 -08:00
Paulus Schoutsen
325aa66b8c Bump aiohue to 3.0.2 (#61115) 2021-12-06 15:53:56 -08:00
Erik Montnemery
3ba07ce395 Fix CO2 calculation when data is missing (#61106) 2021-12-06 15:53:56 -08:00
Martin Hjelmare
21463121a7 Improve zwave_js add-on config flow description (#61099) 2021-12-06 15:53:55 -08:00
Marcel van der Veldt
ef0f3f7ce9 Fix migration of entities of Hue integration (#61095)
* fix device name in log

* Fix Hue migration for all id versions

* fix tests

* typo

* change to bit more universal approach

* fix test again

* formatting
2021-12-06 15:53:54 -08:00
epenet
cb371ef27c Prevent log flooding in frame helper (#61085)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-06 15:53:54 -08:00
J. Nick Koston
878700e26f Provide a hint on which username to use for enphase_envoy (#61084) 2021-12-06 15:53:53 -08:00
J. Nick Koston
e09245eb14 Fix missing unique id in enphase_envoy (#61083) 2021-12-06 15:53:52 -08:00
J. Nick Koston
20fb06484c Bump enphase_envoy to 0.20.1 (#61082) 2021-12-06 15:53:51 -08:00
Allen Porter
f4a38c0190 Coalesce nest media source preview clips by session and bump google-nest-sdm (#61081) 2021-12-06 15:53:50 -08:00
Allen Porter
fa33464217 Remove unnecessary explicit use of OrderedDict in nest media source (#61054)
Address follow up PR comments from #60073
2021-12-06 15:53:49 -08:00
Alexander Pitkin
bd239bcbed Fix yandex transport for Belarus (#61080) 2021-12-06 15:52:00 -08:00
Aaron Bach
d5f3e2a761 Deprecate system_id parameter in SimpliSafe service calls (#61076) 2021-12-06 15:51:59 -08:00
J. Nick Koston
ec88a42948 Abort flux_led discovery if another device gets the ip (#61074)
- If the dhcp reservation expired for the device that
  was at the ip and a new flux_led device appears we
  would discover it because the unique_id did not match
2021-12-06 15:51:59 -08:00
Alexei Chetroi
a3ede8f895 Add 3157100-E model to Centralite thermostat (#61073) 2021-12-06 15:51:58 -08:00
J. Nick Koston
23ebde58cd Bump flux_led to 0.25.17 to fix missing push messages on 0xA3 models (#61070) 2021-12-06 15:51:57 -08:00
Allen Porter
0c87885f41 Fix regression in nest event media player with multiple devices (#61064) 2021-12-06 15:51:56 -08:00
Aaron Bach
c159790caf Fix mispelling in SimpliSafe service description (#61058) 2021-12-06 15:51:56 -08:00
Allen Porter
056575f491 Add debug logging for pip install command (#61057) 2021-12-06 15:51:55 -08:00
Jérôme W
e4d9d0d83e Add media player volume control in fr-FR with Alexa (#60489)
* media player volume control in `fr-FR` with Alexa

* Apply suggestions from code review

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-06 15:51:54 -08:00
schreyack
34f728e5d2 Fix previous setting briefly appearing on newer flux_led devices when turning on (#60004)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-06 15:51:54 -08:00
Allen Porter
377046bff5 Fetch media for events for rendering in the nest media player (#61056) 2021-12-05 09:52:28 -08:00
Marcel van der Veldt
dd95b9b1e4 Disable options flow for Hue V2 bridges (#61045) 2021-12-05 09:52:28 -08:00
Marcel van der Veldt
a976ed2c72 Add guard for empty mac address in Hue integration (#61037) 2021-12-05 09:52:27 -08:00
Marcel van der Veldt
90442d9e9e Fix Hue migration (#61030) 2021-12-05 09:52:26 -08:00
Marcel van der Veldt
c67b250be2 Fix Hue config flow (#61028) 2021-12-05 09:52:26 -08:00
J. Nick Koston
974cc94f87 Update flux_led models database to fix turn on for newer models (#61005) 2021-12-05 09:52:25 -08:00
david reid
528d4bc6ce Catch ConnectionResetError (#60987) 2021-12-05 09:52:24 -08:00
Franck Nijhof
7a4f1c3147 Handle unknown/unavailable state for mobile_app (#60974) 2021-12-05 09:52:24 -08:00
Teemu R
c70f833069 Use STATE_DOCKED for emptying the bin for xiaomi_miio.vacuum (#60513) 2021-12-05 09:52:23 -08:00
Paulus Schoutsen
eaf53c10ed Bumped version to 2021.12.0b1 2021-12-05 09:44:11 -08:00
Allen Porter
576362bfe1 Bump nest to version 0.4.2 (#61036) 2021-12-05 09:43:52 -08:00
J. Nick Koston
4e957b1dbe Fix lutron caseta discovery with newer firmwares (#61029) 2021-12-05 09:43:51 -08:00
Allen Porter
c4fe3d05f2 Improve nest media source event timestamp display (#61027)
Drop subsecond text from the nest media source event timestamp display, using a common date/time
template string.
2021-12-05 09:43:51 -08:00
Marvin Wichmann
f81055dc09 Add missing local_ip to KNX config flow and options flow (#61018)
* Add missing local_ip to KNX config flow and options flow

* Update strings
2021-12-05 09:43:50 -08:00
Erik Montnemery
70814130c3 Fix translations for binary_sensor tampered device triggers (#60996) 2021-12-05 09:43:49 -08:00
Franck Nijhof
0e70121a6f Fix typo in state_characteristic warning (#60990) 2021-12-05 09:43:49 -08:00
Franck Nijhof
62a60f1cf6 Fix str for device registry entry_type warnings caused by core (#60989) 2021-12-05 09:43:48 -08:00
Franck Nijhof
6a1dce852e Fix DSMR Reader providing strings as timestamps (#60988) 2021-12-05 09:43:47 -08:00
Franck Nijhof
af1ad0e6f8 Only report deprecated device_state_attributes once (#60980) 2021-12-05 09:43:47 -08:00
Franck Nijhof
dd2e250c66 Fix Xiaomi Miio providing strings as timestamps (#60979) 2021-12-05 09:43:46 -08:00
Martin Hjelmare
18f36b9c0b Revert metoffice weather daytime (#60978) 2021-12-05 09:43:45 -08:00
J. Nick Koston
2ba7f9c584 Fix flood lights not turning on/off with flux_led (#60973) 2021-12-05 09:43:45 -08:00
J. Nick Koston
5a3dd71bde Fix dimmable effects for flux_led model 0x33 v9+ (#60972) 2021-12-05 09:43:44 -08:00
Franck Nijhof
823a4578d7 Upgrade netdata to 1.0.1 (#60971) 2021-12-05 09:43:43 -08:00
Franck Nijhof
b5bfa728e9 Upgrade luftdaten to 0.7.1 (#60970) 2021-12-05 09:43:43 -08:00
J. Nick Koston
11b343a513 Fix yeelight name changing to ip address if discovery fails (#60967) 2021-12-05 09:43:42 -08:00
Paulus Schoutsen
fe46b2664a Handle invalid device registry entry type (#60966)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-05 09:43:41 -08:00
Paulus Schoutsen
53e2ebc688 Correctly type the SSDP callback function (#60964) 2021-12-05 09:43:41 -08:00
Paulus Schoutsen
4023d55229 Fix statistics registering at start callback (#60963) 2021-12-05 09:43:40 -08:00
Aaron Bach
823e46ea26 Ensure that inactive RainMachine switch that is toggled on is toggled back off (#60959) 2021-12-05 09:43:39 -08:00
Aaron Bach
0b9efc2a06 Add missing SimpliSafe service information (#60958) 2021-12-05 09:43:38 -08:00
Raman Gupta
6af9471710 Fix nzbget datetime return value (#60953) 2021-12-05 09:43:38 -08:00
rikroe
f78e59842d Fix BMW Connected Drive (#60938)
* Bump bimmer_connected to 0.8.5

* Always update HA states after service execution

* Fix BMW device tracker & vehicle_finder service

* Add charging_end_time sensor

* Fix pylint & pytest

* Remove unneeded DEFAULT_OPTION

* Revert adding charging_end_time & state_attributes

* Don't delete option data for CONF_USE_LOCATION

* Remove stale string

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-12-05 09:43:37 -08:00
Franck Nijhof
215d0ac612 Bumped version to 2021.12.0b0 2021-12-03 20:29:15 +01:00
Chen-IL
ac26c2378b Add temperature sensors for Asuswrt (#58303)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-12-03 11:27:17 -08:00
J. Nick Koston
0dfc86956b Reduce flux_led dhcp matching complexity (#60934) 2021-12-03 20:26:15 +01:00
Clifford Roche
d6c27809dc Gree update device ips when changed (#57876) 2021-12-03 11:18:53 -08:00
Raman Gupta
788a9bd9f7 Clean up eight_sleep code (#58508) 2021-12-03 11:17:00 -08:00
Marc Mueller
b60b38c6f6 Fix amcrest pylint issue (#60932) 2021-12-03 20:14:21 +01:00
Jonathan Keslin
c915aa1493 Update volvooncall, add hybrid plug status (#58919) 2021-12-03 11:07:03 -08:00
Jan Bouwhuis
88b93546f3 Re-add-tests with new filters removed with #60854 (#60895) 2021-12-03 11:04:05 -08:00
jjlawren
171b57bf32 Use _attrs where possible in Sonos (#60931) 2021-12-03 10:57:19 -08:00
Allen Porter
ba99dc3af9 Add Nest Battery Cam event clip support with a Nest MediaSource (#60073) 2021-12-03 10:53:05 -08:00
Matthias Alphart
40f1b0d3a5 Add quality scale for Fronius (#60531) 2021-12-03 19:43:01 +01:00
dougiteixeira
fdb13726f6 Add more Tuya Vacuum sensors and select entities (#60927)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-12-03 19:38:32 +01:00
epenet
b65b25c1bb Move MqttServiceInfo to init.py (#60905)
Co-authored-by: epenet <epenet@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-12-03 19:34:48 +01:00
Franck Nijhof
74d1c340d7 Allow use of relative_time as a filter (#60923) 2021-12-03 19:30:12 +01:00
David F. Mulcahey
02b5449648 Add support for siren entities in ZHA (#60920) 2021-12-03 19:23:57 +01:00
Bram Kragten
df36b3dcb8 Update frontend to 20211203.0 (#60925) 2021-12-03 10:20:09 -08:00
Erik Montnemery
e50a47621f Enable basic type checking for climacell (#55334) 2021-12-03 10:08:23 -08:00
jjlawren
cbf2bf2e1f Add audio input format sensor to Sonos HT devices (#60884) 2021-12-03 10:06:56 -08:00
Marius
b61dede826 Add command_line icon_template (#58877)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2021-12-03 10:06:32 -08:00
Pedro Rodriguez Tavarez
e0562385f1 Implement privacy_mode for amcrest integration (#57210) 2021-12-03 10:00:39 -08:00
Franck Nijhof
943c12e5fa Revert "Temporarily disable CI concurrency" (#60928) 2021-12-03 18:56:07 +01:00
Tobias Sauerwein
cf7a614309 Add battery sensor for Netatmo climate devices (#60911) 2021-12-03 09:33:24 -08:00
yanuino
a80447f096 Use state class enum for DHT (#60916) 2021-12-03 18:32:04 +01:00
Marvin Wichmann
3baa7b679d Use new Platform enum in KNX (#60902) 2021-12-03 09:29:38 -08:00
Matthias Alphart
77cd751543 DHCP discovery for Fronius integration (#60806)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-03 18:29:15 +01:00
epenet
75ec937359 Use new Platform enum in Renault (#60903)
* Use Platform enum in Renault

* Use Platform enum in Renault tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 09:28:04 -08:00
epenet
231d434b76 Use new Platform enum in Onewire (#60904)
* Use new Platform enum in Onewire

* Use Platform in tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 09:25:22 -08:00
epenet
a6cd3e2a02 Use dataclass properties in yeelight (#60912)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 09:20:58 -08:00
epenet
adf2fa5664 Use EntityCategory enum in Onewire (#60907)
* Use EntityCategory enum in Onewire

* Add checks for the entity_category

* Fix typo

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 09:20:00 -08:00
Franck Nijhof
0a2ca1f7d5 Temporarily disable CI concurrency (#60926) 2021-12-03 09:16:18 -08:00
Erik Montnemery
17dc609363 Correct validation of conditions in scripts and automations (#60890)
* Correct validation of conditions in scripts and automations

* Fix test
2021-12-03 09:08:28 -08:00
Marc Mueller
f57d42a9e8 Use platform enum (1) [A-D] (#60908)
* Use platform enum (1) [A-D]

* Fix imports

* Fix tests

* Use Platform even in tests
2021-12-03 08:51:30 -08:00
Bram Kragten
ef458b237c Return if user is local only (#60917) 2021-12-03 16:34:26 +01:00
jjlawren
b883014ed4 Add Sonos subwoofer and surround on/off controls (#60918) 2021-12-03 16:05:40 +01:00
jjlawren
7d8b3e9de3 Bump soco to 0.25.0 (#60915) 2021-12-03 15:34:18 +01:00
Martin Hjelmare
deae8dd07b Bump pytradfri to 7.2.1 (#60910) 2021-12-03 15:30:09 +01:00
epenet
e64f901e92 Use dataclass properties in zwave_js (#60913)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 14:47:56 +01:00
epenet
358922db56 Use dataclass for HassioServiceInfo (#60824)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 14:05:56 +01:00
Franck Nijhof
e8b4b70747 Mark config schema as removed in Verisure (#60896) 2021-12-03 11:22:28 +01:00
Joakim Sørensen
d784c8dd1a Remove Supervisor panel title and icon (#60894) 2021-12-03 10:35:57 +01:00
Tuen Lee
85293d8073 Update tuya cover, fix Up/down position (#59858) 2021-12-03 10:23:15 +01:00
Maciej Bieniek
67f9118cbf Use native datetime value in Brother uptime sensor (#60363) 2021-12-03 09:58:27 +01:00
Marvin Wichmann
707fe67c00 Move StrEnum to homeassistant.backports and move Platform to homeassistant.const (#60880)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-12-03 09:31:17 +01:00
Jan Bouwhuis
3188a364e2 Add template filters pack and unpack (#60836)
* add pack and unpack template filters

* Add unpack test with offset

* use unpack_from

* Simplify unpack_from statement
2021-12-03 08:58:15 +01:00
epenet
c04bfcc7f4 Use dataclass properties in devolo_home_network tests (#60889)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 08:51:42 +01:00
epenet
b70d24394e Use dataclass properties in homekit_controller tests (#60891)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 08:51:13 +01:00
epenet
2da9a51919 Use dataclass properties in keenetic_ndms2 tests (#60892)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 08:50:52 +01:00
Erik Montnemery
9f4a99fe81 Revert "Add bytes support for bitwise template operations" (#60854) 2021-12-03 08:50:29 +01:00
epenet
a64ff2ae27 Use dataclass properties in system_bridge tests (#60888)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-03 08:49:35 +01:00
ollo69
c33e3e465b Use entity category enums in AsusWrt (#60882) 2021-12-03 08:37:51 +01:00
ollo69
8eb056396c Use entity category enums in Nut (#60883) 2021-12-03 08:37:19 +01:00
epenet
4207d5a85f Use dataclass properties in upnp (#60893)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-02 23:32:42 -08:00
Kevin Worrel
e1b4e40ac6 Limit parallel updates for screenlogic number ents (#60886) 2021-12-02 20:43:15 -10:00
Kevin Worrel
9d1985ab03 Move screenlogic SCG levels to number platform (#60872)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-02 16:36:31 -10:00
puddly
4758a4fdc8 Bump ZHA dependency zigpy-znp from 0.6.1 to 0.6.3 (#60871) 2021-12-02 20:27:35 -05:00
GitHub Action
42fff989d1 [ci skip] Translation update 2021-12-03 00:13:00 +00:00
Paulus Schoutsen
e8c6e0ef2b Bump frontend to 20211202.0 (#60877) 2021-12-02 15:19:09 -08:00
Erik Montnemery
0e3bc21d54 Teach state and numeric_state conditions about entity registry ids (#60841) 2021-12-02 14:55:12 -08:00
Erik Montnemery
a07f75c6b0 Revert "Allow template int filter to render from a bytes based integer" (#60855) 2021-12-02 14:37:19 -08:00
Franck Nijhof
c8b0a3b667 Revert "Move Platform StrEnum to const" (#60875) 2021-12-02 14:19:08 -08:00
Franck Nijhof
6e220d5d17 Move Platform StrEnum to const (#60857) 2021-12-02 22:30:52 +01:00
David F. Mulcahey
fd8e7ae5d9 Add PPB VOC sensor to ZHA (#60853) 2021-12-02 16:05:15 -05:00
Franck Nijhof
3c66706a49 Clean up deprecated sanitize_filename and sanitize_path (#60859) 2021-12-02 15:35:11 -05:00
epenet
9e96f3e227 Use HassioServiceInfo in deconz tests (#60868) 2021-12-02 10:33:23 -10:00
J. Nick Koston
d7c4a669f1 Revert "Use HassioServiceInfo in mqtt tests" (#60867) 2021-12-02 10:13:41 -10:00
epenet
37200decf9 Use HassioServiceInfo in mqtt tests (#60865) 2021-12-02 10:10:50 -10:00
epenet
272b147550 Use HassioServiceInfo in adguard tests (#60866) 2021-12-02 10:10:15 -10:00
epenet
ade228ebc6 Use HassioServiceInfo in motioneye tests (#60861) 2021-12-02 10:09:26 -10:00
epenet
2be939b45b Use HassioServiceInfo in zwave_js tests (#60863) 2021-12-02 20:57:45 +01:00
epenet
dff624f371 Use HassioServiceInfo in ozw tests (#60864) 2021-12-02 20:56:54 +01:00
Aaron Bach
3f2519bedf Reorganize Guardian services (#58632) 2021-12-02 09:47:15 -10:00
Aaron Bach
9aa0994809 Add configuration URL for SimpliSafe (#60860) 2021-12-02 09:42:31 -10:00
epenet
0723b1c539 Introduce HassioServiceInfo (#60844)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-02 11:17:54 -08:00
Aaron Bach
e641214c60 Reorganize SimpliSafe services (#58722) 2021-12-02 09:07:14 -10:00
Paulus Schoutsen
d9c567e205 Fix Ring sensors with timestamp class returning a string (#60850) 2021-12-02 19:55:52 +01:00
David F. Mulcahey
c466f3767a Bump ZHA dependencies (#60852) 2021-12-02 13:32:55 -05:00
MattWestb
2bc0493535 Adding presets for new tuya TRV (#60408)
Adding presets for _TZE200_2atgpdho and _TYST11_2atgpdho and also deleting it for Beca Smart with old Zigbee module then its looks like they is not releasing devices with it.
2021-12-02 13:32:35 -05:00
Erik Montnemery
5b8d081441 Teach zone trigger about entity registry ids (#60838) 2021-12-02 10:28:21 -08:00
Erik Montnemery
a67a4873dc Minor refactor of template cover (#59537) 2021-12-02 10:26:10 -08:00
dougiteixeira
824e5ed6b8 Tuya Vacuum: Adjusted comand PAUSE (#60849) 2021-12-02 19:12:58 +01:00
jjlawren
60adccd549 Do not print full traceback during Sonos resubscription failure (#60644) 2021-12-02 08:11:08 -10:00
Franck Nijhof
65a7563ac9 CI: Upload coverage results in a single step (#60834) 2021-12-02 19:00:17 +01:00
Erik Montnemery
411b0f0b15 Generate external statistics in demo component (#58470) 2021-12-02 09:55:46 -08:00
J. Nick Koston
8e0ef52cc8 Ensure sonos ssdp callbacks use dataclass methods (#60782) 2021-12-02 09:53:08 -08:00
epenet
0c18d710cc Use dataclass properties in yamaha_musiccast (#60787)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-02 09:50:35 -08:00
epenet
66494b0238 Use dataclass properties in dlna_dmr (#60794)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-02 09:49:34 -08:00
epenet
d775c66194 Tidy up ssdp_location parsing (#60846)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-02 09:47:20 -08:00
Erik Montnemery
36734972f0 Teach numeric state trigger about entity registry ids (#60835) 2021-12-02 09:45:40 -08:00
Shay Levy
f46055de99 Fix Shelly device name for older firmware (#60826) 2021-12-02 09:26:00 -08:00
jjlawren
e56a676fd5 Import helpers in Sonos instead of accessing hass (#60848) 2021-12-02 18:21:49 +01:00
Franck Nijhof
7d3fcfbd30 Add Platform StrEnum to entity_platform (#60818) 2021-12-02 09:07:09 -08:00
Ville Skyttä
4107063a5a Make entity registry disabled_by an enum (#60424) 2021-12-02 18:02:29 +01:00
Kyle Hildebrandt
d6dff403c9 Set _attr_is_on to True for avion on init (#60433) 2021-12-02 16:37:29 +01:00
Matt
7019c524fa Add configuration_url to Forecast.Solar integration (#60384)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-02 16:36:41 +01:00
Martin Hjelmare
c8781bbe3b Simplify zwave_js USB discovery add-on form (#60845) 2021-12-02 16:30:01 +01:00
Franck Nijhof
bf6ca2527d Upgrade guppy3 to 3.1.2 (#60842) 2021-12-02 15:58:00 +01:00
Teemu R
82f26392b4 Bump xiaomi_miio dependency (#60807) 2021-12-02 15:03:03 +01:00
Franck Nijhof
49ebb27b44 Run partial tests without coverage for Python 3.8 (#60827) 2021-12-02 14:38:00 +01:00
Erik Montnemery
c85bb27d0d Teach state trigger about entity registry ids (#60271)
* Teach state trigger about entity registry ids

* Tweak

* Add tests

* Tweak tests

* Fix tests

* Resolve entity ids during config validation

* Update device_triggers

* Fix mistake

* Tweak trigger validator to ensure we don't modify the original config

* Add index from entry id to entry

* Update scaffold

* Pre-compile UUID regex

* Address review comment

* Tweak mock_registry

* Tweak

* Apply suggestion from code review
2021-12-02 14:26:45 +01:00
Matthias Alphart
c0fb1bffce Use Enums in EntityDescriptions in Fronius (#60832) 2021-12-02 12:43:59 +01:00
Matthias Alphart
f2f6602890 Add support for Ohmpilots to Fronius integration (#60765)
* add support for Fronius Ohmpilot

* disable the debugger
2021-12-02 11:05:22 +01:00
J. Nick Koston
da2fb17d94 Update flux_led for upstream strict typing (#60800)
- Bump library to 0.25.10

- Changelog: https://github.com/Danielhiversen/flux_led/compare/0.25.2...0.25.10

- This is a squashed version of #60554 since that one keeps failing to restore the python env on 3.9
2021-12-02 10:55:06 +01:00
Tobias Sauerwein
653fb5b637 Update Netatmo climate platform (#59974) 2021-12-02 10:31:54 +01:00
Jan Bouwhuis
3307e54363 Add MQTT availability template and encoding (#60470)
* Add MQTT availability template and encoding

* use generic encoding field

* pylint and cleanup

* remove additional topic check
2021-12-02 10:21:31 +01:00
Franck Nijhof
42bae5439b Add support for Christmas Tree pickup to TwenteMilieu (#60822) 2021-12-02 10:21:19 +01:00
Franck Nijhof
4c158e8168 Upgrade twentemilieu to 0.5.0 (#60820) 2021-12-02 10:00:16 +01:00
Simone Chemelli
00605c1e35 Fix old model network suffix for Fritz (#60802) 2021-12-02 09:59:07 +01:00
Tobias Sauerwein
63c377a239 Use state class enums in airvisual (#60819) 2021-12-02 09:53:02 +01:00
Milan Meulemans
831e69d07c Use callback instead of coroutine function (#60821) 2021-12-02 09:52:19 +01:00
Tobias Sauerwein
a9b2036de1 Use state class enums in aemet (#60817) 2021-12-02 09:26:39 +01:00
Thomas Dietrich
bee3c9102c Add binary characteristics, add deprecation warning for optional state_characteristic parameter (#60402)
* Add binary source sensor statistics

* Make state_characteristic a required parameter

* Move binary unitless testcase

* Add testcases for binary characteristics

* Revert charact. to optional with deprecation warning

* Correctly check for binary supported characteristic
2021-12-02 09:03:24 +01:00
Franck Nijhof
9128dc214c Upgrade apprise to 0.9.6 (#60816) 2021-12-02 08:54:52 +01:00
Tobias Sauerwein
c033348323 Use state class enums in Advantage Air (#60815) 2021-12-02 08:45:16 +01:00
Tobias Sauerwein
d619a86b4e Use state class enums in AccuWeather (#60813) 2021-12-02 08:24:59 +01:00
Milan Meulemans
caa04c1866 Add support for Nanoleaf push updates (#60708) 2021-12-01 17:50:17 -10:00
Franck Nijhof
0c4b308e03 Use device class enum in Stookalert (#60789) 2021-12-01 22:16:09 -05:00
Franck Nijhof
58fdcfb6b8 Use device/state class enums in DSMR (#60791) 2021-12-01 22:15:17 -05:00
Gage Benne
8e715064cc Bump pydexcom version to 0.2.1 (#60812) 2021-12-01 22:11:55 -05:00
Franck Nijhof
8279873018 Extend entities provided by Tailscale (#60785) 2021-12-01 21:47:10 -05:00
avee87
d0da0eef36 Add day/night markers to MetOffice daily forecast (#58679) 2021-12-01 21:42:59 -05:00
avee87
d066864158 Use precipitation probability in MetOffice forecasts (#58677) 2021-12-01 21:41:28 -05:00
einarhauks
ed106f203f Update tesla_wall_connector lib to version 1.0.0 (#60776) 2021-12-01 21:29:29 -05:00
Franck Nijhof
563b488739 Use state/device/entity category enums in Tuya (#60788) 2021-12-01 21:19:24 -05:00
ollo69
c875d726b1 Use state and device class enums in Nut (#60810) 2021-12-01 21:11:19 -05:00
Milan Meulemans
43d8c8fc2d Use entity category enum in Rituals (#60809) 2021-12-01 21:11:05 -05:00
ollo69
7dc2a11ea5 Use state class enums in AsusWrt (#60808) 2021-12-01 21:10:54 -05:00
GitHub Action
de792e3af2 [ci skip] Translation update 2021-12-02 00:13:02 +00:00
Aaron Bach
344cd0d71f Only unload RainMachine services if the last config entry is loaded (#60805) 2021-12-01 16:59:33 -07:00
Paulus Schoutsen
12cd87d230 Bump frontend to 20211201.0 (#60801) 2021-12-01 15:20:08 -08:00
G Johansson
d211dc6e6e Fix trafikverket_weatherstation (#60772)
* First commit

* Modify test according to fixes

* Review changes

* Clean up

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-02 00:14:42 +01:00
Joakim Plate
c54ca7941f Make sure entity inherit disabled device (#60469) 2021-12-01 13:59:57 -08:00
Kevin Stillhammer
d1962f6e51 Cleanup here_travel_time tests (#60529) 2021-12-01 21:52:44 +01:00
jjlawren
cb7e7e9bd1 Improve Sonos activity tracking (#60642) 2021-12-01 21:49:21 +01:00
epenet
0cf228d5a1 Use dataclass properties in hyperion (#60792) 2021-12-01 21:46:55 +01:00
Joakim Sørensen
737dd6fc26 Add tests to hassio binary_sensor platform (#60609) 2021-12-01 21:41:31 +01:00
J. Nick Koston
4b8a8dda8d Fix yeelight discovery (#60783)
Regressed in #60640
2021-12-01 15:13:59 -05:00
epenet
2b49694a4c Use dataclass properties in songpal discovery (#60786) 2021-12-01 20:46:10 +01:00
Daniel Hjelseth Høyer
fbaec76b8a Add more Tractive sensors (#55170)
* Tractive, add more sensors

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

* source

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

* Fix unit for sensor

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

* Device state

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

* Device state

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

* Tractive

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

* Tractive

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

* unit

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

* Handle unavailable

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

* time

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

* continue

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

* remove sensor

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

* style

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

* tractive states

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-12-01 20:44:48 +01:00
epenet
1fa0351447 Use dataclass properties in tolo discovery (#60784) 2021-12-01 20:43:33 +01:00
epenet
7a098cff1c Use dataclass properties in upnp discovery (#60744)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 09:23:38 -10:00
Franck Nijhof
ed8794de1c Upgrade tailscale to 0.1.3 (#60780) 2021-12-01 20:13:27 +01:00
Eric Mai
4437926e06 Map OpenWeatherMap weather condition 721 to Fog instead of Exceptional (#60518) 2021-12-01 19:59:27 +01:00
epenet
e95914cf60 Use dataclass properties in dlna_dmr discovery (#60693)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 08:59:12 -10:00
Franck Nijhof
d7bf8a7ac3 Upgrade aiohttp to 3.8.1 (#60778) 2021-12-01 19:45:16 +01:00
Franck Nijhof
b32e1d9339 Upgrade hole to 0.7.0 (#60779) 2021-12-01 19:44:42 +01:00
Tobias Sauerwein
a1aaecb3bf Use state class enums in Netatmo (#60725) 2021-12-01 19:40:51 +01:00
epenet
a3cccb50c7 Use dataclass properties in tesla_wall_connector discovery (#60741)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 19:39:43 +01:00
epenet
3d5f4e54ea Use dataclass properties in vicare discovery (#60746)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 19:39:03 +01:00
epenet
4411d51d6f Use dataclass properties in deconz discovery (#60690)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 19:38:20 +01:00
epenet
6a926b41f2 Enable warnings for SsdpServiceInfo (#60756)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 08:35:39 -10:00
einarhauks
5c4422dc72 Remove power sensor from Tesla Wall Connector (#60775)
Add voltage and current sensors for each phase
2021-12-01 19:21:56 +01:00
Franck Nijhof
4dfdb3b96f Upgrade vehicle to 0.2.2 (#60763)
* Upgrade vehicle to 0.2.1

* Upgrade vehicle to 0.2.2
2021-12-01 19:08:35 +01:00
Robert Svensson
8ddfa424c0 Add typing to deCONZ init and config flow (#59999) 2021-12-01 18:59:52 +01:00
Aaron Bach
a053c0a106 Bump py17track to 2021.12.1 (#60762) 2021-12-01 18:52:33 +01:00
epenet
b65b2c4cd1 Use dataclass properties in syncthru discovery (#60739)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 18:40:27 +01:00
epenet
5c992ec2cc Remove cleanup_registry from onewire (#60546)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 18:38:07 +01:00
epenet
824b313705 Use dataclass properties in yamaha_musiccast discovery (#60749)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 18:36:07 +01:00
Tobias Sauerwein
68011ee952 Clean up Netatmo climate platform (#60694)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-12-01 18:35:12 +01:00
epenet
ead4f745e3 Use dataclass properties in somfy_mylink discovery (#60736)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 18:33:22 +01:00
epenet
800ffc0dec Use ssdp namespace in roku (#60733)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 18:32:48 +01:00
epenet
e001cb3b17 Use dataclass properties in powerwall discovery (#60732)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 18:32:15 +01:00
epenet
3db3f264c2 Use dataclass properties in nuki discovery (#60731)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 18:31:51 +01:00
Tobias Sauerwein
037f4dbdb1 Use device class enums in Netatmo (#60723) 2021-12-01 18:30:47 +01:00
xpac1985
b41e020f85 Better warning if unit of sensor is unsupported for its device class (#60665)
* Better warning if unit of sensor is unsupported for its device class

* Prettify the code
2021-12-01 18:18:58 +01:00
einarhauks
a6ec646f98 Tesla wall connector config flow refactor continued (#60774) 2021-12-01 18:18:42 +01:00
epenet
c7eaba45f4 Use dataclass properties in wilight discovery (#60748)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 18:07:12 +01:00
Daniel Hjelseth Høyer
d60517d5f4 Use state and device class enum in Rfxtrx (#60773) 2021-12-01 18:06:13 +01:00
epenet
0c89c8a6b4 Use dataclass properties in synology_dsm discovery (#60740)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 18:04:00 +01:00
epenet
aefd89d8f2 Use dataclass properties in tplink discovery (#60742)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 18:01:51 +01:00
epenet
4fa58b1ecb Use dataclass properties in unifi discovery (#60743)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 17:54:40 +01:00
Daniel Hjelseth Høyer
30e573b694 Use state class enum in Mill (#60726) 2021-12-01 17:53:04 +01:00
epenet
64a4218a24 Use dataclass properties in squeezebox discovery (#60738)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 17:52:29 +01:00
epenet
fa95146aa0 Use dataclass properties in songpal discovery (#60737)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 17:51:01 +01:00
epenet
2b4a1ee7eb Use dataclass properties in flux_led discovery (#60696)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 06:47:14 -10:00
epenet
92b149fffe Use dataclass properties in isy994 discovery (#60715)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 06:45:09 -10:00
epenet
3eba575fde Use state class enum for Onewire (#60770)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 17:42:08 +01:00
epenet
cd9962dfa0 Use device and state class enum for Renault (#60768)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 17:40:56 +01:00
Milan Meulemans
b154f43657 Use device class enum in Rituals (#60767) 2021-12-01 17:34:30 +01:00
epenet
7363033ada Use device class enum in Onewire (#60766)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 17:33:26 +01:00
Tom Brien
1268cefc38 Use state class enum for Coinbase (#60764) 2021-12-01 17:26:53 +01:00
Franck Nijhof
c985bee1dd Add sensor platform to Tailscale (#60751)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-01 17:05:44 +01:00
epenet
6caaa5f6bd Add compatibility tests for MqttServiceInfo (#60754)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 17:04:49 +01:00
epenet
38153b015f Enable warnings for DhcpServiceInfo (#60750)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 05:56:54 -10:00
epenet
683eb10f0e Enable warnings for ZeroconfServiceInfo (#60759)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 05:55:36 -10:00
epenet
35c40bcf85 Enable warnings for UsbServiceInfo (#60757)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 05:44:01 -10:00
epenet
2fe0382841 Add compatibility tests for UsbServiceInfo (#60753)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 05:43:31 -10:00
epenet
7f355681a7 Add compatibility tests for DhcpServiceInfo (#60752)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 05:43:09 -10:00
epenet
fc3c9b1b4e Use dataclass properties in samsungtv discovery (#60595)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 05:42:42 -10:00
einarhauks
e7f00c2c4f Refactor Tesla wall connector config flow (#60755) 2021-12-01 16:07:24 +01:00
epenet
76d906d17e Use dataclass properties in roomba discovery (#60734)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 15:53:02 +01:00
epenet
00f71e5dfc Use dataclass properties in screenlogic discovery (#60735)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 15:52:08 +01:00
Daniel Hjelseth Høyer
ecf1bc1b22 Use state class enum in Tibber (#60729) 2021-12-01 15:50:35 +01:00
Marcel van der Veldt
5d0cf4cb95 Fix tests for Hue integration (#60683)
* fix tests

make sure the migration code is not called in all other tests

* only patch v2 check where needed
2021-12-01 14:53:30 +01:00
Franck Nijhof
6a8c732b37 Add Tailscale integration (#59764)
* Add Tailscale integration

* Use DeviceEntryType

* Fix tests

* Adjust to new Pylint version

* Use enums for device classes

* Update homeassistant/components/tailscale/config_flow.py

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

* Pass empty string as default

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-01 14:40:38 +01:00
epenet
59f87b9488 Use dataclass properties in netgear discovery (#60730)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 14:38:17 +01:00
epenet
16942fc8e9 Use dataclass properties in denonavr discovery (#60691)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 14:28:40 +01:00
epenet
6544b440d2 Use dataclass properties in fritz discovery (#60697)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 14:02:58 +01:00
epenet
0047790db6 Use dataclass properties in harmony discovery (#60711)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 14:02:11 +01:00
epenet
1edc0a0560 Use dataclass properties in huawei_lte discovery (#60713)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 14:01:21 +01:00
epenet
63ed0af644 Use dataclass properties in hyperion discovery (#60714)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 14:00:46 +01:00
epenet
c7c2b810a7 Use dataclass properties in keenetic_ndms2 discovery (#60716)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 13:59:34 +01:00
epenet
2a1f0cadaa Use dataclass properties in broadlink discovery (#60689)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 13:58:56 +01:00
Daniel Hjelseth Høyer
92e608ce04 Use state class enum in Airthings (#60728) 2021-12-01 13:57:54 +01:00
Daniel Hjelseth Høyer
ddc17cb001 Use state class enum in Opengarage (#60727) 2021-12-01 13:57:23 +01:00
Franck Nijhof
c28b45cd83 Migrate entity categories to StrEnum (#60720) 2021-12-01 13:54:36 +01:00
Paulus Schoutsen
72d8882c79 Handle errors response to be None (#60679)
Co-authored-by: Philip Allgaier <mail@spacegaier.de>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-01 13:51:10 +01:00
Matthias Alphart
e5e1e7b7e0 Update pyfronius to 0.7.1 (#60722) 2021-12-01 13:30:25 +01:00
Stefan Agner
b04b314a9b Extend Docker build caching opportunities (#60661) 2021-12-01 13:20:00 +01:00
Oleksandr Kapshuk
95286791fe Add tuya zndb device category (#59477) 2021-12-01 13:17:02 +01:00
Franck Nijhof
d5dc963b6f Guard config flow coverage in Codecov (#60718) 2021-12-01 12:52:08 +01:00
Fredrik Erlandsson
2ba21d6bf3 Fix point device identifiers (#60719) 2021-12-01 12:48:06 +01:00
epenet
9a8c1cf6c4 Use dataclass properties in konnected discovery (#60717)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 12:30:36 +01:00
epenet
cbab0ba9c0 Drop base ATTR constants in zeroconf (#60561)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 12:29:41 +01:00
Franck Nijhof
2ec49d4ffd Migrate sensor state classes to StrEnum (#60709) 2021-12-01 12:09:31 +01:00
Franck Nijhof
c6cbfe8c37 Migrate humidifier device classes to StrEnum (#60706)
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-12-01 12:02:14 +01:00
Raman Gupta
eeafa36abc Add SmartStart provisioning support to zwave_js WS API (#59037)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-01 11:43:51 +01:00
epenet
694f6d0abe Use dataclass properties in heos discovery (#60712)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 11:38:46 +01:00
epenet
0782c6c446 Use dataclass properties in guardian discovery (#60710)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 11:33:40 +01:00
epenet
160e6febc3 Use dataclass properties in directv discovery (#60692)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 11:08:36 +01:00
epenet
ad66522bce Use dataclass properties in fritzbox discovery (#60698)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 11:07:10 +01:00
epenet
76e08aa93b Use dataclass properties in goalzero discovery (#60703)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 11:06:38 +01:00
Daniel Hjelseth Høyer
bcb2fefbe5 Use device class enum in Tibber (#60705) 2021-12-01 11:00:17 +01:00
Daniel Hjelseth Høyer
3e9c72df5c Use device class enum in Airthings (#60704) 2021-12-01 10:59:24 +01:00
Daniel Hjelseth Høyer
38c2c879c9 Use device class enum in Open Garage (#60702) 2021-12-01 10:59:12 +01:00
Daniel Hjelseth Høyer
739ce9bc75 Use device class enum in Surepetcare (#60701) 2021-12-01 10:58:52 +01:00
Daniel Hjelseth Høyer
ca55216d67 Use device class enum in Tractive (#60700) 2021-12-01 10:58:43 +01:00
Daniel Hjelseth Høyer
06f12fc583 Use device class enum in Mill (#60699) 2021-12-01 10:58:28 +01:00
Joakim Sørensen
49f3a7ce46 Use device class enum in Supervisor (#60687) 2021-12-01 10:55:30 +01:00
epenet
52112a25b0 Use dataclass properties in emonitor discovery (#60695)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-01 10:54:42 +01:00
Joakim Sørensen
bbd179200c Use device class enum in UptimeRobot (#60688) 2021-12-01 10:36:15 +01:00
Franck Nijhof
79ebc1b79a Use device class enums in TwenteMilieu (#60686) 2021-12-01 10:25:26 +01:00
Franck Nijhof
6c7c7acdef Use device class enums in Verisure (#60685) 2021-12-01 10:24:58 +01:00
Franck Nijhof
74f7f28f1c Use device class enums in WLED (#60684) 2021-12-01 10:16:44 +01:00
epenet
73a4dba2ae Use dataclass properties in yeelight discovery (#60640)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 22:28:19 -10:00
Kevin Worrel
8240b8c72e Update screenlogic use asyncio API (#60466)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-11-30 22:19:01 -10:00
Franck Nijhof
cc8e02c733 Upgrade pre-commit to 2.16.0 (#60680) 2021-12-01 08:43:37 +01:00
LJU
19361216de Fix key reference placeholder (#60681)
Fix typo for placeholder invalid acces token
2021-11-30 23:38:38 -08:00
Franck Nijhof
2b8f245e27 Migrate binary sensor device classes to StrEnum (#60651) 2021-12-01 08:12:09 +01:00
Franck Nijhof
12ff5dee74 Migrate sensor device classes to StrEnum (#60654)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-01 08:09:55 +01:00
Teemu R
908b7ca9c2 Bump xiaomi_miio dependency (#60650) 2021-12-01 08:08:59 +01:00
Penny Wood
44714081d1 Update IZone to new version of library (#60676) 2021-12-01 07:41:52 +01:00
Franck Nijhof
3770a72601 Migrate media player device classes to StrEnum (#60656) 2021-12-01 07:25:10 +01:00
Franck Nijhof
9715601255 Add button device classes to NAM (#60621) 2021-12-01 07:08:17 +01:00
G Johansson
9efec244b9 Fix yale_smart_alarm strings (#60657) 2021-12-01 05:26:35 +01:00
Milan Meulemans
c0021e5768 Upgrade aionanoleaf to 0.1.1 (#60670) 2021-11-30 17:32:57 -10:00
GitHub Action
c9589f763c [ci skip] Translation update 2021-12-01 00:17:12 +00:00
Franck Nijhof
542aef2fe1 Migrate switch device classes to StrEnum (#60658) 2021-11-30 15:38:45 -08:00
Franck Nijhof
98ce12c6ee Migrate cover device classes to StrEnum (#60655) 2021-11-30 15:37:34 -08:00
G Johansson
51ebfade52 Fix ADR 0003 issues in trafikverket_weatherstation (#60664)
* Fix ADR 0003 issues

* Remove commented code
2021-11-30 22:54:10 +01:00
Joakim Sørensen
28ebd13d75 Mark calendar as a base platform (#60660) 2021-11-30 21:28:33 +01:00
epenet
8954609f6b Use dataclass properties in axis discovery (#60558)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 10:15:34 -10:00
Jesse Hills
c2830b3e66 Fix fields being None for discord notify service (#59736)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-01 08:26:02 +13:00
Jesse Hills
8630022e92 Add mode to ESPHome numbers (#60653) 2021-11-30 20:19:14 +01:00
G Johansson
11b81ef88b Config flow for trafikverket_weatherstation (#60078)
* First commit

* Added tests

* Add requirements for test

* Correction requirements tests

* Add init to untested files

* Fix review comments

* Resolve last items from review

* Add sync_abort_entries_match in import flow
2021-11-30 19:53:41 +01:00
Joakim Sørensen
153f15c93b Remove running binary_sensor for HAOS (#60597) 2021-11-30 10:18:14 -08:00
Marcel van der Veldt
19b4cc7119 Hue handle device update (#60612) 2021-11-30 10:14:51 -08:00
jjlawren
de9e48174f Change unnecessary Sonos coroutine to callback (#60643) 2021-11-30 17:35:29 +01:00
epenet
97c04d2e67 Use dataclass properties in gogogate2 discovery (#60607)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 06:15:23 -10:00
epenet
f444dd6d86 Use dataclass properties in sonos discovery (#60633)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 06:06:52 -10:00
epenet
be89c07cac Use dataclass properties in nanoleaf discovery (#60580)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 06:05:50 -10:00
Tim Rightnour
8a9f197918 Binary sensor platform for the Balboa Spa (#60409) 2021-11-30 06:04:24 -10:00
epenet
7295ab10ae Use dataclass properties in doorbird discovery (#60639)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 06:03:21 -10:00
epenet
ec923b877c Use dataclass properties in rachio discovery (#60637)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 06:02:24 -10:00
epenet
071385e8d2 Use dataclass properties in tado discovery (#60641)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 16:44:11 +01:00
Dave T
0a1f73e3f7 Correct Temper USB sensor IoT class (#60619)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-30 16:37:58 +01:00
epenet
d75785d701 Use dataclass properties in hue discovery (#60598)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 16:36:35 +01:00
epenet
601ad8f71a Use dataclass properties in xiaomi_aqara discovery (#60636)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 16:28:49 +01:00
epenet
30bb2c82c6 Use dataclass properties in freebox discovery (#60635)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 16:28:02 +01:00
Marc Mueller
a90ef488a1 Add return type annotation to StrEnum (#60624) 2021-11-30 16:26:02 +01:00
epenet
ad75c217ce Use dataclass properties in kodi discovery (#60634)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 16:25:40 +01:00
epenet
ffb9b4cd2d Use dataclass properties in hunterdouglas discovery (#60605) 2021-11-30 05:16:30 -10:00
Allen Porter
a84b12abe7 Revert "Add an entity service for saving nest event related snapshots" (#60632) 2021-11-30 16:16:00 +01:00
Jc2k
b8a1899d48 Remove homekit_controller's air quality entity in favor of separate sensor entities (#60480) 2021-11-30 16:14:49 +01:00
Franck Nijhof
16462df451 Add button device classes to MQTT (#60628) 2021-11-30 16:08:02 +01:00
epenet
0d24862a28 Use dataclass properties in homekit_controller discovery (#60626)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 16:06:18 +01:00
epenet
3f22905709 Use dataclass properties in plugwise discovery (#60631)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 15:50:47 +01:00
epenet
6f22ffbedd Use dataclass properties in enphase_envoy discovery (#60627)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 15:47:18 +01:00
Jan Bouwhuis
cd351cf22b Fix test naming switch (#60630) 2021-11-30 15:45:06 +01:00
Franck Nijhof
6be1b0c704 Add button device classes to Shelly (#60625) 2021-11-30 15:44:47 +01:00
Franck Nijhof
2366fbe846 Add button device classes to HomeKit Controller (#60620) 2021-11-30 15:21:26 +01:00
Jesse Hills
683bb13f50 Support unit of measurement in ESPHome numbers (#60591) 2021-11-30 15:20:40 +01:00
Franck Nijhof
b5a6e03c21 Fix device class shorthand attr in ButtonEntity (#60622) 2021-11-30 15:06:33 +01:00
Jan Bouwhuis
f07e676c82 Allow template int filter to render from a bytes based integer (#60452)
* Allow template int to render bytes

* re-triggering tests

* Add warning when base !=10 and rendering bytes

* re-trigger tests

* Re-trigger tests

* remove period

* Update homeassistant/helpers/template.py

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

* Fix logger syntax

* remove parentheses

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-30 15:01:43 +01:00
Jan Bouwhuis
2a2a20fcb3 Add mqtt sensor configurable state encoding for sensor and binary_sensor platform (#60447)
* Add mqtt sensor state encoding

* Make encoding attribute not specific to states

* Move encoding attribute to schema base
2021-11-30 14:04:24 +01:00
Franck Nijhof
7469f083fd Migrate number mode to StrEnum (#60614) 2021-11-30 12:54:06 +01:00
Franck Nijhof
1b8eba0afd Add button device classes to WLED (#60613) 2021-11-30 12:12:08 +01:00
Franck Nijhof
9b9801516b Migrate button device classes to StrEnum (#60611) 2021-11-30 11:54:06 +01:00
Franck Nijhof
6e3f522d4b Fix StrEnum backport return type issue (#60610) 2021-11-30 11:16:56 +01:00
Adam Chyb
56899d61fe Add support for Kogan smart blinds to Tuya (#60552) 2021-11-30 11:07:44 +01:00
epenet
ae9320b616 Use dataclass properties in tradfri discovery (#60592)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 11:05:42 +01:00
epenet
58661fa636 Use dataclass properties in devolo_home_network discovery (#60608)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 11:04:33 +01:00
epenet
416976dd39 Use dataclass properties in esphome discovery (#60606)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 11:03:08 +01:00
epenet
f0df3e4646 Use dataclass properties in smappee discovery (#60602)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 11:01:28 +01:00
epenet
ba1cc00c24 Use dataclass properties in shelly discovery (#60593)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 11:00:54 +01:00
epenet
fb94ed4e6b Use dataclass properties in bond discovery (#60590)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 10:58:06 +01:00
epenet
d537ec1d6f Use dataclass properties in bosch_shc discovery (#60559) 2021-11-30 10:57:37 +01:00
epenet
9b92787d59 Use dataclass properties in daikin discovery (#60589)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 10:55:52 +01:00
epenet
40a814221c Use dataclass properties in forked_daapd discovery (#60587)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 10:55:32 +01:00
epenet
7182827818 Use dataclass properties in modern_forms discovery (#60584)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 10:18:25 +01:00
epenet
efebd1b657 Use dataclass properties in nut discovery (#60603)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 10:17:49 +01:00
epenet
071296865b Use dataclass properties in lookin discovery (#60585)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 10:16:06 +01:00
epenet
2f79760fb4 Use dataclass properties in guardian discovery (#60586)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 10:15:46 +01:00
epenet
a32a748cec Use dataclass properties in devolo_home_control discovery (#60600)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 10:08:55 +01:00
epenet
0bb44c042c Use dataclass properties in brother discovery (#60601)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 10:07:58 +01:00
Franck Nijhof
b996f624db Ensure ESPHome device classes are valid (#60594) 2021-11-30 09:44:39 +01:00
epenet
5003a1515b Use dataclass properties in nam discovery (#60596)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 09:36:41 +01:00
epenet
64afe738cc Use dataclass properties in elgato discovery (#60588)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 08:53:03 +01:00
epenet
d74145ed7b Use dataclass properties in roku discovery (#60577)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 08:46:40 +01:00
epenet
9374ce87ba Use dataclass properties in wled discovery (#60573)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 08:42:30 +01:00
epenet
e0b315041b Use dataclass properties in octoprint discovery (#60579)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-30 08:42:08 +01:00
dependabot[bot]
b4f3e08b84 Bump actions/setup-python from 2.3.0 to 2.3.1 (#60572)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-30 08:34:20 +01:00
Jesse Hills
e17759410c Esphome button device class (#60569) 2021-11-30 08:33:14 +01:00
Klaas Schoute
222da7e2d1 Add configuration_url to integration (#60565) 2021-11-30 08:32:02 +01:00
epenet
bb92dd2467 Use dataclass properties in apple_tv discovery (#60557) 2021-11-30 08:31:25 +01:00
epenet
0e3a229a1f Use dataclass properties in volumio discovery (#60575)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-29 21:13:48 -10:00
epenet
b4d17e1fad Use dataclass properties in system_bridge discovery (#60576)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-29 21:11:56 -10:00
epenet
b40dc6c271 Use dataclass properties in rainmachine discovery (#60578)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-29 21:10:50 -10:00
Allen Porter
c4e5242b0c Add an entity service for saving nest event related snapshots (#58369)
* Add an entity service for saving nest event related snapshots

Add an entity service `nest.snapshot_event` for recording camera event
related media to disk. This is based on `camera.snapshot` but takes in
a parameter for a Nest API event_id.

PR #58299 adds `nest_event_id` to events published by nest so that they can
be hooked up to this service for capturing events.

Future related work includes:
- Height & Width parameters for the rendered image
- Support video clips for new battery cameras
- An API for proxying media related to events, separate from the camera image thumbnail
- A Nest MediaSource for browsing media related to events

* Revert debugging information

* Add test coverage for OSError failure case

* Add service description for nest snapshot service

* Reduce unnecessary diffs.

* Sort nest camera imports

* Remove unnecessary if block in snapshot
2021-11-29 23:04:29 -08:00
Allen Porter
cc543b200d Update nest config flow to dramatically simplify end user setup with automated pub/sub subscription creation (#59260)
* Configure nest pubsub subscriber automatically

Update the config flow to configure the nest pubsub subscriber automatically.
After completing the authentication step, the user is now asked for the google
cloud console ID, which is needed to create a subscription.

Home Assistant manages the lifecycle of a subscription only when it is created
by the ConfigFlow. Otherwise (if specified in configuration.yaml) it treats
it similarly as before.

These are the considerations or failure modes taken into account:
- Subscription is created with reasonable default values as previously recommended (e.g. retion only keeps 5-15 minutes of backlog messages)
- Subscriptions are created with a naming scheme that makes it clear they came from home assistant, and with a random
  string
- Subscriptions are cleaned up when the ConfigEntry is removed. If removal fails, a subscription that is orphaned will
  be deleted after 30 days
- If the subscription gets into a bad state or deleted, the user can go through the re-auth flow to re-create it.
- Users can still specifcy a CONF_SUBSCRIBER_ID in the configuration.yaml, and
skip automatic subscriber creation

* Remove unnecessary nest config flow diffs and merge in upstream changes

* Incorporate review feedback into nest subscription config flow

* Update text wording in nest config flow
2021-11-29 22:41:29 -08:00
Allen Porter
8ca89b10eb Split StreamState class out of SegmentBuffer (#60423)
This refactoring was pulled out of https://github.com/home-assistant/core/pull/53676 as an
initial step towards reverting the addition of the SegmentBuffer class, which will be
unrolled back into a for loop.

The StreamState class holds the persistent state in stream that is used across stream worker
instantiations, e.g. state across a retry or url expiration, which primarily handles
discontinuities. By itself, this PR is not a large win until follow up PRs further simplify
the SegmentBuffer class.
2021-11-29 22:25:28 -08:00
epenet
890790a659 Use dataclass properties in arcam_fmj discovery (#60562) 2021-11-30 06:46:41 +01:00
Allen Porter
df90fdf641 Add an available property on Stream (#60429) 2021-11-29 21:23:58 -08:00
J. Nick Koston
f0f88d56bd Avoid probing configured ipp devices at discovery (#60551)
- Each time these were seen by zeroconf, these devices were
  probed even if they were already configured. This is expensive
  and we want to avoid this when possible
2021-11-29 22:53:42 -06:00
Paulus Schoutsen
1bfd98ab14 Bump frontend to 20211129.0 (#60564) 2021-11-29 18:35:41 -08:00
David F. Mulcahey
2f24fc0fd4 Fix Flo returning stale data (#60491)
* Fix Flo returning stale data

* update tests

* update coverage
2021-11-29 20:00:39 -05:00
Franck Nijhof
9f26850a19 Add device class support for button entity (#60560) 2021-11-29 17:44:21 -07:00
GitHub Action
a925451906 [ci skip] Translation update 2021-11-30 00:13:53 +00:00
Joakim Sørensen
8a5df5f7eb Fix ingress for non admin (#60120) 2021-11-29 23:03:16 +01:00
Paulus Schoutsen
914f7f85ec Add local only users (#57598) 2021-11-29 14:01:03 -08:00
Maciej Bieniek
847b10fa65 Add button platform to NAM integration (#60410) 2021-11-29 22:58:04 +01:00
Michael
8626de24fc Use correct value for current temperature for AVM Fritz!Smarthome thermostat devices (#60510) 2021-11-29 19:58:22 +01:00
Michael
83acfda757 Add reboot button to Shelly devices (#60417) 2021-11-29 19:49:49 +01:00
Erik Montnemery
814a742518 Don't wait for Google Assistant service calls when reporting state (#59832)
* Don't wait for Google Assistant service calls when reporting state

* Update tests

* Add test
2021-11-29 18:34:38 +01:00
Erik Montnemery
d980ca7e04 Correct recorder migration._add_columns for PostgreSQL (#60547) 2021-11-29 18:33:25 +01:00
epenet
54df81cbab Use ZeroconfServiceInfo in vizio (#60115)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-29 18:27:15 +01:00
epenet
37430e7c9e Add get method to ZeroconfServiceInfo (#60528)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-29 17:37:55 +01:00
Matthias Lohr
7b81185d2a Add tolo fan platform (#60502) 2021-11-29 17:15:38 +01:00
epenet
ec1c52d945 Use dataclass for SsdpServiceInfo (#59931)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-29 06:10:07 -10:00
einarhauks
7ece86ee8d Add sensors to Tesla Wall Connector Integration (#60507) 2021-11-29 06:05:14 -10:00
Eugenio Panadero
923cb0f4b7 Bump aiopvpc to 2.2.4 to fix price sensor attributes for pvpc_hourly_pricing (#60012) 2021-11-29 16:57:32 +01:00
Kevin Stillhammer
6167e4178b Use find_coordinates in here_travel_time (#59938) 2021-11-29 16:54:03 +01:00
PlusPlus-ua
2be7773f5e Add Tuya Fingerbot device support (#59880) 2021-11-29 16:52:15 +01:00
alexanv1
9aa33a3cf8 Fix brightness support for Tuya dimmers that use the Light ("dj") category (#60385)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-11-29 16:45:00 +01:00
Maikel Punie
f18fe342ac Remove configuration.yaml support for the velbus component (#60411) 2021-11-29 16:33:26 +01:00
Steffen Zimmermann
c407e24a18 Add wiffi device configuration url support (#60367) 2021-11-29 16:29:31 +01:00
Simone Chemelli
07c09ab268 Add new name handling for Shelly RPC devices (#60539) 2021-11-29 16:16:49 +01:00
epenet
0f2e39adee Add get method to DhcpServiceInfo (#60527)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-29 05:11:36 -10:00
jjlawren
a88cc8b98c Move Sonos bass & treble controls to number entities (#60498) 2021-11-29 16:00:37 +01:00
Franck Nijhof
3aa35e15c2 Remove custom WLED services (#60537) 2021-11-29 15:15:50 +01:00
rianadon
09af85c6a4 Add native unit types for weather entities (#59533)
* Add native unit types for weather entities

* Update weatherentity and change precision in climacell test

* Move weather test to demo tests

* Add weather test for temperature conversion

* Add more unit conversion tests

* Remove extra native_ methods

* Remove extra properties and save precision change for another PR

* Remove visibility_unit from metoffice component

The vibility values given by metoffice are formatted into strings,
which means they can't automatically be converted.

* Improve docstrings and convert pressures in forecast

* Add precipitation and wind speed units

* Clean up tests

* Round converted weather values

* Round weather values to 2 decimal places

* Move number of rounding decimal places to constant

* Docstring and styles
2021-11-29 14:44:44 +01:00
Franck Nijhof
5a97db6685 Upgrade wled to 0.10.1 (#60542) 2021-11-29 14:43:02 +01:00
Raphaël Beamonte
8600b5597a Add 'trigger' support for MQTT Alarm Control Panel (#60525)
When configuring an Alarm Control Panel through MQTT discovery, it
was not possible to use the trigger service. This fixes that by making
it available the same way as ARM and DISARM services are.
2021-11-29 14:41:52 +01:00
Franck Nijhof
1f2a5ae98d Upgrade coverage to 6.2.0 (#60530) 2021-11-29 11:52:13 +01:00
Franck Nijhof
909784bff8 Upgrade black to 21.11b1 (#60532) 2021-11-29 11:51:58 +01:00
Franck Nijhof
4cff04cbd5 Remove obsolete light attributes from WLED (#60535) 2021-11-29 11:32:30 +01:00
Jesse Hills
dd001cacfd Fix missing name for ESPHome reauth dialog (#60508) 2021-11-29 10:06:56 +01:00
Allen Porter
5e86c78c46 Redact ?auth= url parameters in stream sources when logged (#60438) 2021-11-29 09:59:01 +01:00
Jesse Hills
622d9606a5 Esphome/button (#60522) 2021-11-29 09:57:37 +01:00
Ville Skyttä
e5718ccac4 Add removal versions and backcompat constants for device registry enum changes (#60421) 2021-11-29 09:47:14 +01:00
Matthias Alphart
823c37f4c7 100% test coverage for Fronius integration (#60515)
* support for multiple fixture sets

* add test data from Fronius Gen24 device

* test Gen24 with Storage

* test Gen24 inverter without storage

* 100% coverage

* copy&paste fail
2021-11-29 09:15:10 +01:00
J. Nick Koston
ef8cf9e597 Add configuration_url to bond (#60523) 2021-11-29 08:44:11 +01:00
Michael Kowalchuk
15bf4dae9b Add zwave_js speed configurations for GE/Jasco 12730 and 14287 fans (#60517) 2021-11-29 08:27:32 +01:00
Daniel Hjelseth Høyer
70b8decfb5 Replace Tibber STATE_CLASS_TOTAL_INCREASING with STATE_CLASS_TOTAL for not strictly increasing sensors (#60501)
* Tibber, fix #60490 not strictly increasing

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

* Tibber, fix #60490 not strictly increasing

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

* Tibber, fix #60490 not strictly increasing

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-11-29 08:22:48 +01:00
J. Nick Koston
c535f785a8 Bump flux_led to 0.25.2 (#60519)
- Fixes warm/cold values on RGBCW bulbs with newer firmware

- Changelog: https://github.com/Danielhiversen/flux_led/compare/0.25.1...0.25.2
2021-11-29 06:21:33 +01:00
Joakim Sørensen
325861addf Set internal quality_scale for the safe_mode integration (#60526) 2021-11-29 06:18:39 +01:00
Simone Chemelli
110fd261ee Fix & update for latest Shelly Valve firmware (#60458) 2021-11-28 20:18:15 -08:00
Michael
a29cc29304 Fix DeprecationWarning for asyncio.wait() in mysensors (#60512) 2021-11-29 02:06:11 +01:00
GitHub Action
2918e2d7d0 [ci skip] Translation update 2021-11-29 00:13:08 +00:00
Pascal Vizeli
313d6a81d0 Fix docker prefix for meta image (#60495) 2021-11-28 10:25:52 -08:00
micha91
b4730f4ffe Add Yamaha MusicCast number entities (#60093) 2021-11-28 07:52:46 -10:00
einarhauks
4d345e0665 Add Tesla Wall Connector integration (#60000) 2021-11-28 07:41:01 -10:00
Sergiy Maysak
efebb76a7e Bump wirelesstagpy to 0.8.1 (#60472)
* Bumped version of wirelessttagpy to 0.8.1

* Removed dependency on wirelesstagpy for tests as no tests yet present
2021-11-28 10:26:57 -06:00
Matthias Lohr
2d1d9e9e20 Address late review of tolo integration (#60453)
* improvements requested by @MartinHjelmare

* addressed requested changes

* more improvements
2021-11-28 16:50:57 +01:00
Raman Gupta
bae01ca7d8 Fix climacell hourly and nowcast forecasts (#60454) 2021-11-28 16:44:43 +01:00
Franck Nijhof
e1036f3c71 Upgrade restrictedpython to 5.2 (#60493) 2021-11-28 16:34:15 +01:00
Erik Montnemery
caf5ee2fab Remove optional validation when creating conditions (#60481) 2021-11-28 14:54:07 +01:00
Vilppu Vuorinen
76b047dd12 Update pymelcloud to 2.5.5 (#60484) 2021-11-28 14:21:44 +01:00
Paulus Schoutsen
c6ec84d0cf Remove store user as auth result (#60468) 2021-11-28 14:14:52 +01:00
Gábor Kiss
1aadda4b0f Fix Shelly dual mode bulb mode switch (#60471)
* fix_shelly_dual_mode_bulb_mode_switch

* Update __init__.py

* Update light.py
2021-11-28 12:07:18 +02:00
MJJ
6d08bee3df Update buienradar library to 1.0.5 (#60473)
* Update buienradar to 1.0.5

should fix https://github.com/home-assistant/core/issues/60200

* Update requirements_all.txt

* Update requirements_test_all.txt
2021-11-28 10:46:32 +01:00
J. Nick Koston
a3e34c74db Fix flux_led discovery missing responses (#60464) 2021-11-27 23:36:38 -08:00
Alexei Chetroi
9b493be2b2 Bump up ZHA dependencies (#60474) 2021-11-27 22:49:59 -05:00
GitHub Action
3af54d96c7 [ci skip] Translation update 2021-11-28 00:14:19 +00:00
Matthias Alphart
2a0c1fa074 don't issue requests for non-existing devices (#60416) 2021-11-27 19:56:00 +01:00
Juan Jesús García de Soria
4526d25697 Update PyTurboJPEG to v1.6.3 (#60400) 2021-11-27 08:35:07 -10:00
J. Nick Koston
adeeb99579 Bump flux_led to 0.25.1 (#60463)
* Bump flux_led to 0.25.1

- Fixes for older firmwares

- Changelog: https://github.com/Danielhiversen/flux_led/compare/0.25.0...0.25.1

* empty , pypi behind
2021-11-27 12:23:12 -06:00
J. Nick Koston
fa2399030a Bump flux_led to 0.25.0 (#60460)
* Bump flux_led to 0.25.0

* Refactor color_temp_to_white_levels and improve code coverage by @bdraco in https://github.com/Danielhiversen/flux_led/pull/185
* Adjust protocol to handle newer models that send 0xB0 responses by @bdraco in https://github.com/Danielhiversen/flux_led/pull/186
* Fix effects with floor lamps by @bdraco in https://github.com/Danielhiversen/flux_led/pull/188
* Add support for CCT protocol aka 0x1C models by @bdraco in https://github.com/Danielhiversen/flux_led/pull/187

- Changelog: https://github.com/Danielhiversen/flux_led/compare/0.24.38...0.25.0

* handle change in color_temp_to_white_levels
2021-11-27 18:24:42 +01:00
Simone Chemelli
3cd80b95db Logging issue workaround for fritzconnection library (#60448)
* Logging issue workaround

* Better approach
2021-11-27 07:56:53 -08:00
Daniel Hjelseth Høyer
bb99d07d82 Remove unused constant in Tibber (#60439) 2021-11-27 11:18:58 +01:00
Michael
d63e2d1db0 fix blocking startup when NAS is busy (#60360) 2021-11-27 09:25:27 +01:00
Ricardo Steijn
729394547c Bump crownstone-sse to 2.0.3 (#60428) 2021-11-27 08:37:07 +01:00
Alan Murray
d8c73e8685 Bump acmeda integration aiopulse dependency version to 0.4.3 (#60434)
* Bump acmeda integration aiopulse dependency version to 0.4.3 to implement battery health monitoring.

* Updated acmeda requirements
2021-11-27 08:35:23 +01:00
GitHub Action
96313bbbe0 [ci skip] Translation update 2021-11-27 00:12:17 +00:00
bcelary
ec7b1e574f Use mysensors child description as entity name (#60420)
* using description for instance name if not empty

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-27 01:07:30 +01:00
Christopher Bailey
5a72c9f7c3 Rename various usages of UniFi to better identify only UniFi Network (#59568)
* Renames various usages of UniFi to better indentify only UniFi Network

* Apply suggestions from code review

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

* Missed renames

* Updates more locations

* Removes instances of application/controller

* Missed a spot

* Updates all UniFi Controller instances

* Fixes typo

* Reverts changes to translations

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2021-11-26 22:44:49 +01:00
Michael
296b738740 Add button to trigger ota firmware update for Shelly devices (#58757)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2021-11-26 14:19:39 +01:00
Erik Montnemery
ea102f71a6 Correct validation of repeats in scripts and automations (#60318)
* Correct validation of repeats in scripts and automations

* Improve validation test
2021-11-26 14:12:59 +01:00
Erik Montnemery
ad9c3a47cf Correct validation of conditions in scripts and automations (#60403) 2021-11-26 13:21:11 +01:00
Joakim Sørensen
dc98791963 Bump awesomeversion from 21.10.1 to 21.11.0 (#60401) 2021-11-26 12:06:50 +01:00
Matt
3d5432b799 Add configuration_url to AccuWeather integration (#60381) 2021-11-26 11:15:03 +01:00
Erik Montnemery
88068fa97f Remove unused OrderedEnum (#60392) 2021-11-26 11:10:39 +01:00
Franck Nijhof
249cac2901 Remove myself as codeowner from Hue (#60395) 2021-11-26 10:03:51 +01:00
PlusPlus-ua
061691508b Fixed handling of zero values in TuyaNumberEntity (#60393) 2021-11-26 09:35:19 +01:00
Matt Zimmerman
3f741d4295 Bump python-smarttub dependency to 0.0.28 (#60391) 2021-11-26 09:19:26 +01:00
J. Nick Koston
53f1530756 Fix flux_led effect brightness in A2,A3 models (#60386)
- Changelog: https://github.com/Danielhiversen/flux_led/compare/0.24.37...0.24.38
2021-11-25 22:33:01 -06:00
J. Nick Koston
18e822b7b6 Bump sqlalchemy to 1.4.27 (#60383) 2021-11-25 19:55:17 -08:00
Matt
79d6d79557 Add configuration_url to Nanoleaf integration (#60372) 2021-11-25 18:23:14 -06:00
Chris Talkington
2a35ae2c0a Update rokuecp to 0.8.4 (#57259) 2021-11-25 18:21:39 -06:00
GitHub Action
78b47019f9 [ci skip] Translation update 2021-11-26 00:12:49 +00:00
Matt
fabc55cbc4 Added configuration_url to Met.no integration (#60378) 2021-11-26 00:14:55 +01:00
Michael
c9dc3a61af Fix slow config_flow test in devolo Home Network (#60364) 2021-11-26 00:14:15 +01:00
epenet
22bdd38583 Use SsdpServiceInfo for SOURCE_SSDP tests (part 4) (#60339)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-25 17:13:52 -06:00
Marc Mueller
25f8d4a189 Upgrade pylint to 2.12.1 (#60375) 2021-11-26 00:13:27 +01:00
Matt
dab2b17a17 Added configuration_url for Met Eireann integration (#60380) 2021-11-26 00:10:20 +01:00
Michael
af8e1143b9 Fix slow config_flow test in upnp (#60377) 2021-11-26 00:07:23 +01:00
Matt
b61375e5cb Add configuration_url to Waze Travel Time (#60376) 2021-11-26 00:03:52 +01:00
Michael
db0c82b88e Fix slow config_flow test in Twinkly (#60374) 2021-11-26 00:00:37 +01:00
Michael
16eb85bfc8 Fix slow config_flow test in squeezebox (#60373) 2021-11-25 23:26:28 +01:00
Matt
7613c6fd4c Add configuration_url to AdGuard Home integration (#60356) 2021-11-25 22:41:56 +01:00
Matthias Lohr
db0104c2c9 Add tolo binary_sensor platform (#60365) 2021-11-25 22:39:39 +01:00
Michael
ba7b5681e6 Fix slow config_flow test in Dune HD (#60366) 2021-11-25 22:34:47 +01:00
Marc Mueller
de78c4f0f8 Import Callable from collections.abc (#60354) 2021-11-25 22:23:48 +01:00
Matthias Lohr
4360fb733f Add tolo button platform (#60345) 2021-11-25 22:02:59 +01:00
Franck Nijhof
7014f60f42 CI: Add partial run support to pyupgrade (#60362) 2021-11-25 21:51:08 +01:00
Franck Nijhof
9b4fb44fea CI: GitHub Annotate slow tests in partial test runs (#60359)
* CI: GitHub Annotate slow tests in partial test runs

* Correct line regex
2021-11-25 12:45:14 -08:00
cvroque
f2e03420d1 Add commands to Tuya Vacuum (sd) (#60351) 2021-11-25 21:24:46 +01:00
J. Nick Koston
d504c1e3e8 Add support for flux_led 0xA2 devices (#60361) 2021-11-25 21:20:34 +01:00
Franck Nijhof
e5d8c69a92 CI: Move bandit into the other linters job (#60357) 2021-11-25 20:53:49 +01:00
Michael
fb909eca8a Fix slow config_flow test in bond (#60355) 2021-11-25 12:32:26 -06:00
Tim Rightnour
03d1efab46 Add Balboa Spa integration (#59234) 2021-11-25 12:04:06 -06:00
Michael
78305ac6ae Fix slow config_flow test in AVM Fritz!SmartHome (#60348) 2021-11-25 11:48:17 -06:00
Marc Mueller
b724672dd8 Fix overridden state methods - camera (#60352) 2021-11-25 11:47:57 -06:00
epenet
f292691b7b Use SsdpServiceInfo for ssdp tests (part 3) (#60334)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-25 11:46:20 -06:00
epenet
624d866239 SSDP attributes can be present but empty (#60340)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-25 11:41:49 -06:00
J. Nick Koston
67684d68ff Fix slow yeelight discovery test (#60346) 2021-11-25 11:39:37 -06:00
Franck Nijhof
f72e9aea1c CI: Only carry forward full-suite test coverage (#60344) 2021-11-25 17:35:15 +01:00
epenet
2468724378 Use SsdpServiceInfo for ssdp tests (part 2) (#60322)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-25 09:45:35 -06:00
Redah
3399c90936 Add Notifications for Android TV icon support (#60159)
* Add icon support

* Sort imports

* Sort imports correctly

* Satisfy pylint

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-25 16:40:26 +01:00
Franck Nijhof
6b9c2d8295 Add shorthand attribute support to Camera platform (#59837) 2021-11-25 16:03:53 +01:00
Hypnos
57fd632cd9 Add missing MQTT lock.open (#60022)
* Add missing MQTT lock.open

from:
https://community.home-assistant.io/t/mqtt-lock-open/232823/13
based on https://github.com/home-assistant/core/pull/48008

* Update homeassistant/components/mqtt/lock.py

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

* Update homeassistant/components/mqtt/lock.py

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

* Update homeassistant/components/mqtt/lock.py

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

* removed `STATE_OPEN` from tests

* Apply suggestions from code review

* Format code

* Update lock.py

* Update test_lock.py

* Update test_lock.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-25 15:54:08 +01:00
Till Skrodzki
635d875b1d Only accept valid hvac actions sent via mqtt (#59919)
* Only accept valid hvac actions sent via mqtt

* Only accept valid hvac actions sent via mqtt

* Fix existing action test and remove old one

* Remote None as valid hvac action being accepted

* Change loglevel of wrong hvac action received
2021-11-25 15:53:34 +01:00
Thomas Dietrich
4c0d90ed41 Remove unknown attribute instead of marking STATE_UNKNOWN (#60325) 2021-11-25 15:13:55 +01:00
Franck Nijhof
8b001fd54d Adjust/Fix CI coverage reporting (#60329) 2021-11-25 15:05:20 +01:00
Matthias Lohr
2f0ec0d7e5 Add tolo select platform (#60326) 2021-11-25 14:41:57 +01:00
epenet
9eed18f121 Use SsdpServiceInfo for ssdp tests (part 1) (#60320)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-25 14:35:19 +01:00
epenet
18a82e43a4 CI: fix linters on partial runs with multiple components (#60331)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-25 14:13:03 +01:00
J. Nick Koston
213be1f15e Update flux_led to use async_set_brightness in the lib (#60315) 2021-11-25 12:41:32 +01:00
refinedcranberry
a78f0eae39 Add "nextchange" sensors to AVM FRITZ!Smarthome devices (#58274) 2021-11-25 12:34:04 +01:00
J. Nick Koston
995f01cb68 Fix exception in august if bridge is missing (#60316) 2021-11-25 12:30:57 +01:00
Matthias Lohr
3372288c88 Add tolo sensor platform (#60308) 2021-11-25 12:29:09 +01:00
Pascal Vizeli
f2a44553d8 Fix image build issues (#60319) 2021-11-25 12:24:30 +01:00
Thomas Dietrich
fd8b43320d Replace returned STATE_UNKNOWN by None (#60324) 2021-11-25 12:09:30 +01:00
epenet
62bf42e421 Introduce SsdpServiceInfo for ssdp discovery (#60284)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-24 19:35:15 -06:00
J. Nick Koston
5b199bcc6d Use random effect from flux_led library (#60312) 2021-11-25 02:34:19 +01:00
epenet
75057949d1 Adjust async_step_discovery methods for BaseServiceInfo (#60285)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-24 19:30:02 -06:00
avee87
0920e74aa2 Use DeviceEntryType in Metoffice (#60252) 2021-11-25 01:24:27 +01:00
GitHub Action
d3c020325b [ci skip] Translation update 2021-11-25 00:13:33 +00:00
Erik Montnemery
f3d5c07615 Use async_validate_actions_config helper in scripts (#60287) 2021-11-24 23:35:54 +01:00
Matthias Alphart
c808fa8d3d fix configuration url (#60311) 2021-11-24 23:27:13 +01:00
rikroe
301ef0f636 Fix BMW ConnectedDrive, update to My BMW API (#59881)
* Fix BMW ConnectedDrive, update to My BMW API

* Use const device classes

* Implement native_value via EntityDescription

* Use device class const, reomve device_class from charging_status

* Cleanup

* Remove max_range_electric

* Revert removing sensor name & unique_id

* Add region china again, update bimmer_connected

* Update to bimmer_connected==0.8.2

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-11-24 23:18:45 +01:00
Sergiy Maysak
de1527d0e9 Add wirelesstag ambient temperature sensor for Outdoor Probe (#60243)
* Added support for ambient temperature sensor for Outdoor Probe.

* Switched to use of SensorEntityDescription for device_class.

* Removed unused config param, restored use of _sensor_type ivar.

* Use entity descriptions as dict for shorter iteration.

* Clean up

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-24 23:02:18 +01:00
Simone Chemelli
15f62a7237 More tests optimizations for SamsungTV (#60297)
* More tests optimizations

* Apply review comments
2021-11-24 22:54:49 +01:00
Maciej Bieniek
970df6d067 Move sensor stuff to the sensor platform in Brother integration (#60306) 2021-11-24 22:50:35 +01:00
Ville Skyttä
9f4de8df18 Make device entry disabled by an enum (#60239) 2021-11-24 22:32:16 +01:00
alim4r
42389fc81b Support numeric sensors with no unit_of_measurement in prometheus (#60157) 2021-11-24 22:30:08 +01:00
Matthias Lohr
5853d81944 Add tolo light platform (#60305) 2021-11-24 22:26:08 +01:00
Franck Nijhof
37219e8d04 Add button platform to Tuya (#60304) 2021-11-24 21:10:26 +01:00
Matthias Lohr
a399037a46 Add TOLO Sauna (tolo) integration (#55619) 2021-11-24 20:45:13 +01:00
Fabian Seitz
2439f6b562 Bump openwrt-luci-rpc from 1.1.8 to 1.1.11 (#60124) 2021-11-24 20:12:39 +01:00
Erik Montnemery
7c3edf24f2 Allow MQTT selects to have a single or no options (#60281) 2021-11-24 20:06:12 +01:00
J. Nick Koston
fd116fc408 Refactor zeroconf matching to be more DRY (#60293) 2021-11-24 19:57:13 +01:00
J. Nick Koston
86cd46a0dd Add support for adjusting effect brightness in flux_led (#60247) 2021-11-24 19:55:00 +01:00
Franck Nijhof
39f5eba97d Use native datetime value in OpenWeatherMap sensors (#60303) 2021-11-24 19:51:25 +01:00
Franck Nijhof
c5d480f0c9 CI: Fix test groups when running full CI suite (#60300) 2021-11-24 12:03:33 -06:00
Franck Nijhof
29f1abd2d5 CI: Fix full suite on core file changes (#60299) 2021-11-24 18:43:58 +01:00
Franck Nijhof
fb40a5c0d1 Partial CI workflows: take 2 (#60294) 2021-11-24 18:14:41 +01:00
Erik Montnemery
7b57033265 Correct today_at template function / filter (#60291)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-11-24 15:51:43 +01:00
Jan Bouwhuis
d33457b7bc Add bytes support for bitwise template operations (#60211)
* Add bytes support for bitwise template operations

* spelling

* Update bitwise tests

* remove try block for bytes conversion

* do not accept empty `bytes` object
2021-11-24 15:15:27 +01:00
Franck Nijhof
fa34153b20 Use UTC timestamp in uptime sensor (#60240) 2021-11-24 15:00:54 +01:00
epenet
5a8cbb8cab Use UsbServiceInfo in zwave-js (#60267)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-24 07:51:28 -06:00
epenet
3bf12fcd29 Use UsbServiceInfo and ZeroconfServiceInfo in zha (#60266)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-24 07:50:45 -06:00
epenet
d990fe1957 Update ssdp matching_domain constant (#60283)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-24 07:49:44 -06:00
Thomas Dietrich
b8f4b76194 Add additional statistics characteristics, remove attributes (#59867)
* Add additional statistics characterics, improve rounding

* Improve name of age_usage_ratio

* Replace difference by three relevant distances

* Refactor attributes, remove stats, add metadata

* Fix binary sensor testcase

* Fix sensor defaults testcase

* Fix and enhance all testcases

* Remove age coverage from attr when not configured

* Refactor so only the relevant characteristic value is calculated

* Rename unclear characteristics, add timebound average

* Fix coverage warning

* Remove explicit functions dict
2021-11-24 13:42:44 +01:00
Franck Nijhof
3aac757e7c CI: Combine smaller linters into a single job (#60279)
* CI: Combine smaller linters into a single job

* Remove unrelated changhe

* Remove stale exit
2021-11-24 11:56:50 +01:00
h2zero
f4f945e65e Fix Konnected multiple discovery of panels (#59953)
* Konnected - Fix multiple discovery of panels.

This resolves an issue which creates multiple discoveries of a Konnected panel if it is restarted and fails to connect to home assistant.

See #57467.

* Revert changes to user step, add handling to ssdp step.

* Add abort reason string to strings.json

* Abort ssdp discovery if device is already known.

* Add test for multiple discovery fix.

* Remove unrelated file change.

* Add ssdp discovery abort tests.

* Add missing abort reason check.

* Add "already_configured" to strings.

* Use "cannot_connect" abort reason.
2021-11-24 11:35:00 +01:00
Michael Kowalchuk
74cfbf5f42 Use configured speed ranges for HomeSeer FC200+ fan controllers in zwave_js (#59697)
* Use configured speed ranges for HomeSeer FC200+ fan controllers in zwave_js

* Fix pylint errors

* Remove unused param in tests

* Fix test values

* Address various review notes

* Remove now-redundant assertion

* Add an additional test case for set_percentage=0

* Use round() instead of int() for percentage computations; this makes the percentage setting match the setpoints in the UI

* Add additional tests

* Fix pct conversions

* Make conversion tests exhaustive

* Add tests for discovery data templates

* Revert "Add tests for discovery data templates"

This reverts commit 85dcbc0903a1dd95f8e4e5f3c5d29cd7547b667b.

* Improve typing on ConfigurableFanSpeedDataTemplate#resolve_data

* Move config error handling to the discovery data template

* Fix checks for config data

* Revise fallback logic in percentage_to_zwave_speed and ensure that the speed list is non-empty

* Rework error handling

* Fix runtime fan speed updates

* Use warning instead of warn

* Move data validation to get_speed_config; turns out that resolve_data is only called once, at startup.

* Temporarily remove the not-yet-used fixed fan speed template.  Add an additional assertion to ensure speeds are sorted.

* Add a comment about the assertions in discovery_data_template.py

* Update homeassistant/components/zwave_js/discovery_data_template.py

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

* Fix typo in comment

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-24 11:31:59 +01:00
Simone Chemelli
8e6a3b2799 Fix init slow tests for SamsungTV (#60245) 2021-11-24 11:25:25 +01:00
Matthias Alphart
1a5f2c9c32 Disable less popular Fronius entities by default (#60264) 2021-11-24 11:17:38 +01:00
Erik Montnemery
07c90575ac Add comments to entity category constants (#60276) 2021-11-24 10:46:53 +01:00
Franck Nijhof
dee4ce921d Correct entity category on UPS type in NUT (#60277) 2021-11-24 10:46:31 +01:00
epenet
9027ee7828 Revert "Add type hints to SSDP (#59840)" (#60270) 2021-11-24 10:14:48 +01:00
Jan Bouwhuis
d41d223033 Add UNIX timestamp detection to as_datetime template filter (#60126) 2021-11-24 09:51:56 +01:00
Jan Bouwhuis
fa0d3a6c48 Change output template filters timestamp_local and timestamp_utc to isoformat (#60269) 2021-11-24 09:49:03 +01:00
Pascal Vizeli
ed9d40378e Update base image 2021.11.0 (#60227) 2021-11-24 09:48:34 +01:00
epenet
4ffb0b8380 Use UsbServiceInfo in modem_callerid (#60268)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-24 09:40:52 +01:00
Erik Montnemery
c0d2a66609 Add stable ID to entity registry entries (#60218)
* Add UUID to entity registry entries

* Fix test
2021-11-24 09:01:35 +01:00
Felipe Martins Diel
774e1b0022 Decouple BroadlinkDevice.available property (#58853)
* Decouple BroadlinkDevice.available property

* Exclude unreachable line from coverage
2021-11-23 21:59:18 -06:00
J. Nick Koston
be94ce42a5 Prevent get_mac_address from blocking event loop in samsungtv config flow (#60246) 2021-11-24 03:16:09 +01:00
Simone Chemelli
e1de6612be Fix socket usage in Aprs test (#60253) 2021-11-24 03:02:03 +01:00
cvroque
4555f52e50 Add configuration entities to Tuya Vacuum (sd) (#59936) 2021-11-24 02:15:49 +01:00
Franck Nijhof
4c3163196e Temporary disable partial runs in CI (#60258) 2021-11-24 02:13:38 +01:00
Matthias Alphart
3dac661480 Rewrite Fronius integration (#59686)
* Add unique_id and use DataUpdateCoordinator in Fronius (#57879)

* initial refactoring commit - meters

- config_flow (no strings, no tests yet)
- import yaml config
- FroniusSolarNet class for holding Fronius object , coordinators and some common data
- meter descriptions
- update coordinator
- entities (including devices)

* storage controllers

* error handling on init; inverter unique_id

* inverters

* power_flow

* fix VA, var, varh not valid for device_class power/energy

and add custom icons

* add SolarNet device for system wide values

* cleanup

* config_flow strings

* test config_flow

* use pyfronius 0.7.0

* enable strict typing

* remove TODO comments

* fix lint errors; move FroniusSensorEntity to sensor.py

* power_flow as optional coordinator

API V0 doesn't support power_flow endpoint

* show error message in logs

* prevent parallel requests to one host

* logger_info coordinator

* store FroniusSolarNet reference directly in coordinator

* cleanup coordinators when unloading entry

* round floats returned by Fronius API

* default icons for grid im/export tariffs

* small typing fix

* Update homeassistant/components/fronius/sensor.py

Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>

* DC icons

* prepend names with "Fronius" and device type

to get more reasonable default entity_ids (eg. have them next to each other when alphabetically sorted)

* remove config_flow and devices

* rename _FroniusUpdateCoordinator to FroniusCoordinatorBase

and mark ABC

* move SensorEntityDescriptions to sensor.py

* Revert "move SensorEntityDescriptions to sensor.py"

This reverts commit 2e5a726eb65854f236a0c72f3f67f04a6f8a2eff.

* Don't raise ConfigEntryNotReady and use regular refresh method

* move bridge initialization out of helper class

* no coverage tests

* power_flow update interval 10 seconds

* move SensorEntityDescriptions to sensor.py

without introducing a circular dependency

* deprecation warning for CONF_MONITORED_CONDITIONS

* remove extra_state_attributes form meter sensor entities

* readd diagnostic entities

* decouple default entity_id from default name

* use key instead of name for entity_id

and make deprecated config key optional

* adjust tests

* use old entity_ids

these changes are now backwards compatible

* check coverage

* simplify entity description definitions

* restore entity names of previous implementation

Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>

* Add config_flow for Fronius integration (#59677)

* Cleanup Fronius config_flow and tests (#60094)

* Add devices to Fronius integration (#60104)

* New entity names for Fronius entities (#60215)

* Adaptive update interval for Fronius coordinators (#60192)

Co-authored-by: Brett Adams <Bre77@users.noreply.github.com>
2021-11-24 02:04:36 +01:00
Franck Nijhof
314f593066 Add partial codecov flag to CI to trigger carryforward coverage (#60256) 2021-11-24 01:34:03 +01:00
Simone Chemelli
7e9ff26b4c Add slow tests list to VScode task code coverage (#60183) 2021-11-24 01:13:44 +01:00
Franck Nijhof
ec44a55b2c Make partial test suite not waiting for linters (#60254) 2021-11-24 01:09:55 +01:00
Franck Nijhof
6b59e305cb Run partial test suite in CI if core untouched (#60230)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-23 14:57:45 -08:00
Oleksandr Kapshuk
d677baba36 Add hjjcy device category to Tuya integration (#60224) 2021-11-23 23:42:21 +01:00
Kamil Doległo
a7c44d89e1 Fix Tuya integration for climate devices (#60229) 2021-11-23 23:33:36 +01:00
cvroque
28da8c474c Check if Tuya Vacuum (sd) is able to report status directly before using pause switch (#59888) 2021-11-23 23:32:03 +01:00
Maciej Bieniek
ac3dc0b090 Use native datetime value in NAM uptime sensor (#60241) 2021-11-23 23:25:48 +01:00
Michael Chisholm
9fa6daf47a dlna_dmr: Ignore philips tv (#60204) 2021-11-23 23:22:34 +01:00
Maciej Bieniek
4649bc3c11 Add LED brightness for Xiaomi Miio ZA5 fan (#60134) 2021-11-23 23:21:07 +01:00
Erik Montnemery
615198a58f Use pychromecast CastInfo type in cast integration (#60205) 2021-11-23 23:17:58 +01:00
Michael
027577805e Use attribute shortcuts in Samsung TV integration (#60171)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-11-23 23:15:05 +01:00
Andreas Brett
cee5595ba7 Add pi_hole entity "available_updates" (#56181)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-23 23:05:27 +01:00
epenet
44611d7e26 Use dataclass for ZeroconfServiceInfo (#60206)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 22:59:36 +01:00
Michael
2de0a14db0 Use native datetime value in IPP sensors (#60234) 2021-11-23 22:55:32 +01:00
J. Nick Koston
af51aeb6dc Show how user input is malformed in the UI on error (#60057) 2021-11-23 22:50:54 +01:00
Erik Montnemery
135778fe91 Enable basic type checking for awair (#55046) 2021-11-23 22:49:42 +01:00
avee87
9088a6a138 Add device registry entry for MetOffice (#58683) 2021-11-23 22:45:23 +01:00
Marc Mueller
6089aef072 Enable strict typing - wallbox (#59301) 2021-11-23 22:30:22 +01:00
J. Nick Koston
ce369bb336 Reduce flux_led light turn on complexity (#60139) 2021-11-23 22:23:38 +01:00
Erik Montnemery
24779dea3b Bump device registry version to 1.2 (#60199) 2021-11-23 22:22:15 +01:00
Sergiy Maysak
73d4445f80 Bumped version of wirelesstagpy to 0.8.0 (#60125) 2021-11-23 22:21:10 +01:00
Robert Dunmire III
fd8229f4f4 Bump librouteros version to 3.2.0 (#60066) 2021-11-23 22:18:19 +01:00
J. Nick Koston
52e0027fad Limit homekit sources to prevent exceeding 100 limit (#59743) 2021-11-23 22:15:08 +01:00
Franck Nijhof
5c443b626a Use native datetime value in MQTT sensors (#59923) 2021-11-23 22:10:14 +01:00
epenet
4480e1255a Use MqttServiceInfo in tasmota (#60113)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 22:07:10 +01:00
Philip Allgaier
a5dc0e37b8 Consistent capitalization for Synology DSM entity names (#60237) 2021-11-23 22:06:05 +01:00
bashworth
df5d678858 Tado ignore fix (#60011)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-11-23 22:00:42 +01:00
J.P. Krauss
2d29ef9b63 Avoid errors when AirNow API does not return all expected pollutants (#60232)
Co-authored-by: Aaron Bach <bachya1208@gmail.com>
2021-11-23 21:54:53 +01:00
Michael
a3bf56c11d Use native datetime value in Systemmonitor sensors (#60236) 2021-11-23 21:46:31 +01:00
Henrik
0a0928b9f5 Add daikin sensor state class (#60145)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-23 21:46:10 +01:00
Ville Skyttä
7c6a72b086 Remove unneeded pylint disables (#60235) 2021-11-23 21:40:53 +01:00
Michael
6588879b6e Use native datetime value in AVM Fritz!Tools sensors (#60233) 2021-11-23 21:20:51 +01:00
Michael
9a328eae67 Use native datetime value in Synology DSM sensors (#60176) 2021-11-23 20:03:22 +01:00
Maikel Punie
c27948a82a Fully migrate to attribute shorthand in velbus (#59797)
* Move velbus completly to _attr instead of propertys

* Commit all sugestions

* One more sugestion

* Fixed light.py
2021-11-23 12:10:03 -06:00
J. Nick Koston
881d35ab17 Split up yeelight code into multiple files (#59990) 2021-11-23 11:56:07 -06:00
J. Nick Koston
6524cd4eb2 Fix user input malformed with deleted entities in HomeKit exclude flow (#60061) 2021-11-23 11:46:54 -06:00
J. Nick Koston
400aaeaa91 Ensure homekit setup messages run in event loop (#60226) 2021-11-23 11:40:20 -06:00
epenet
9f74ad06d6 Update ZeroconfServiceInfo in tests (t-z) (#60221)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 11:28:50 -06:00
epenet
cbbf22db52 Use dataclass for UsbServiceInfo (#60140)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 10:51:54 -06:00
epenet
77dfeb062f Update ZeroconfServiceInfo in tests (n-t) (#60219)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 10:35:44 -06:00
Franck Nijhof
7a0ff4e2e1 Add button support to Alexa (#60163) 2021-11-23 08:19:13 -08:00
Michael
e3910856ad Use native datetime value in Shelly sensors (#60179)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-11-23 08:18:58 -08:00
Raman Gupta
d249743ccf Bump zwave-js-server-python to 0.33.0 (#60213) 2021-11-23 10:53:46 -05:00
epenet
f6bbdec6cb Use BaseServiceInfo inheritance in MqttServiceInfo (#60207)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 16:52:33 +01:00
epenet
31b033ac25 Update ZeroconfServiceInfo in tests (g-m) (#60217)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 09:42:38 -06:00
Erik Montnemery
7e08238cd8 Bump pychromecast to 10.1.1 (#60214) 2021-11-23 09:38:31 -06:00
Franck Nijhof
e7b05ef452 Adjust CI to split tests into 6 groups (#60198) 2021-11-23 09:34:38 -06:00
epenet
1d3fbc93a0 Update ZeroconfServiceInfo in tests (a-f) (#60212)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 09:32:58 -06:00
micha91
e615e70e49 Add Yamaha MusicCast zone specific devices (#58285) 2021-11-23 16:29:34 +01:00
epenet
560546f65e Use dataclass for DhcpServiceInfo (#60136)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 13:35:53 +01:00
Simone Chemelli
e673d9dbd0 Fix missing mocking (#60181) 2021-11-23 11:56:16 +01:00
Franck Nijhof
83aff48db9 GitHub Actions: Don't run test suite if basic linters fails (#60197) 2021-11-23 11:21:55 +01:00
Franck Nijhof
4aae088512 Add GitHub Actions concurrency limits (#60194) 2021-11-23 10:05:48 +01:00
Ville Skyttä
39691faccc Use DeviceEntryType in non-typechecked code too (#58646) 2021-11-23 10:04:33 +01:00
Erik Montnemery
ca20fc857f Remove via_device links when a device is removed (#60153)
* Remove via_device links when a device is removed

* Update test
2021-11-23 09:36:03 +01:00
dependabot[bot]
8ece8d124d Bump actions/cache from 2.1.6 to 2.1.7 (#60189)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-23 09:29:22 +01:00
epenet
3b0d984959 Use dataclass for MqttServiceInfo (#60191)
* Use dataclass for MqttServiceInfo

* Drop test exception

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-23 09:01:40 +01:00
Franck Nijhof
42ed6ddba3 Add button support to Google Assistant (#60158) 2021-11-22 20:50:21 -08:00
J. Nick Koston
7359083e98 Remove legacy executor usage from HomeKit tests (#60180) 2021-11-22 22:37:28 -06:00
Aaron Bach
0e4de42539 Alter RainMachine to enable/disable program/zones via separate switches (#59617) 2021-11-22 20:47:01 -07:00
Paulus Schoutsen
4ff3b2e9a9 Bump frontend to 20211123.0 (#60184) 2021-11-22 19:07:27 -08:00
J. Nick Koston
4af5cde738 Include model name in flux_led discovery when available (#60105) 2021-11-22 20:21:46 -06:00
J. Nick Koston
cb3b19b000 Add support for adjusting flux_led effects speed (#59679) 2021-11-22 16:52:06 -08:00
Milan Meulemans
5550b5445b Add Button platform to Nanoleaf (#60169)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-11-23 01:26:37 +01:00
GitHub Action
9e606abb0c [ci skip] Translation update 2021-11-23 00:13:54 +00:00
Tim Rightnour
3639481027 Add sensors to venstar integration (#58851) 2021-11-22 18:05:12 -06:00
Franck Nijhof
766c889e70 Add button support to HomeKit (#60165)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-11-23 00:46:51 +01:00
Erik Montnemery
f510534c58 Bump entity registry version to 1.3 (#60164) 2021-11-22 13:38:51 -06:00
Aaron Bach
c87ab574a7 Fix bug with how SimpliSafe lock's respond to websocket events (#60152) 2021-11-22 12:28:22 -07:00
Aaron Bach
93ad486439 Fix missing pending state for SimpliSafe (#60151) 2021-11-22 12:24:51 -07:00
Milan Meulemans
637b6bbb97 Upgrade aionanoleaf to 0.0.4 (#60160) 2021-11-22 19:49:24 +01:00
Erik Montnemery
39d6aba3bc Improve startup of unavailable template entities (#59827) 2021-11-22 09:20:38 -08:00
Ville Skyttä
053c456199 Change device entry type to an StrEnum (#59940)
Co-authored-by: Ville Skyttä <ville.skytta@iki.fi>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-11-22 18:14:15 +01:00
Erik Montnemery
4a5238efa5 Add support for calculating daily and monthly fossil energy consumption (#59588) 2021-11-22 09:10:54 -08:00
Erik Montnemery
49a27e12ad Add support to entity registry for overriding device_class (#59985) 2021-11-22 08:38:06 -08:00
epenet
67e13b35db Revert "Create new usb constants (#60086)" (#60137)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-22 10:28:10 -06:00
Franck Nijhof
69b7495324 Sensor: Handle local->UTC conversion and reject timezoneless timestamps (#59971) 2021-11-22 17:04:06 +01:00
epenet
7e1b00c491 Use ZeroconfServiceInfo in wled (#60130)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-22 08:19:54 -06:00
epenet
c8451001a0 Use ZeroconfServiceInfo in xiaomi_aqara (#60131)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-22 08:19:01 -06:00
epenet
2cd241ff0a Use ZeroconfServiceInfo in xiaomi_miio (#60132)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-22 08:18:22 -06:00
epenet
8b26b69366 Use ServiceInfo in yeelight (#60127)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-22 08:15:14 -06:00
Hans Oischinger
38b976e6d6 Add vicare config flow (#56691)
* Configuration via UI

Config flow / YAML deprecation
- Support discovery via MAC address
- Support import of YAML config
- Switch to ConfigEntry, get rid of platform setup

* Fix review comments

* More tests for vicare yaml import
2021-11-22 15:06:42 +01:00
Cliffano Subagio
a7382c8092 Fix KeyError when Twitter app permission is set to Read (#60018) 2021-11-22 14:38:36 +01:00
h2zero
3b5a7d001f Fix Konnected DS18B20 poll interval (#59954)
* Konnected - Fix DS18B20 poll interval.

The poll interval for the DS18B20 was not being sent to the device.

* Fix tests
2021-11-22 14:01:37 +01:00
jan iversen
5608b4fb18 Update CODEOWNERS for tradfri (#60023)
Co-authored-by: rianadon <ryanadolf123@gmail.com>
2021-11-22 13:43:04 +01:00
Franck Nijhof
d95c615f86 Add binary sensor platform to WLED (#59798) 2021-11-22 13:22:43 +01:00
Glenn Waters
65d1f8183f Fix Environment Canada server loading (#60087)
* Reduce number of requests hitting EC servers.

* Bump lib.
2021-11-22 12:40:25 +01:00
epenet
10d0870198 Use ZeroconfServiceInfo in plugwise (#60050) 2021-11-22 12:35:52 +01:00
G Johansson
29761e6eef Fix logger setting Yale Smart Living (#60033) 2021-11-22 12:17:55 +01:00
Aaron Godfrey
c70a7020f5 Fix todoist due_today attribute for calendar events (#60038)
The attribute was comparing a UTC date to a local date which caused the
attribute to not be true in some cases.
2021-11-22 12:03:56 +01:00
Franck Nijhof
8b30cb509f Cleanup customize API endpoint (#59824) 2021-11-22 12:01:56 +01:00
epenet
39149e19f7 Use ZeroconfServiceInfo in tado (#60111)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-22 11:54:15 +01:00
epenet
eb70d328ca Use DhcpServiceInfo in tplink (#60114)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-22 11:51:47 +01:00
epenet
70f43a1415 Use ZeroconfServiceInfo in tradfri (#60112)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-22 11:49:37 +01:00
epenet
5a40322cda Use ZeroconfServiceInfo in volumio (#60116)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-22 11:48:06 +01:00
epenet
bac3c1fd75 Use DhcpServiceInfo in verisure tests (#60117)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-22 11:47:32 +01:00
Erik Montnemery
0df2904b89 Improve some entity registry tests (#59902) 2021-11-22 10:24:37 +01:00
Aaron Bach
1da251860e Fix bugs causing SimpliSafe entities to incorrectly show unavailable (#59955) 2021-11-21 21:32:03 -07:00
Simone Chemelli
82a422930b Honor "Enable newly added entities" for Fritz (#59948) 2021-11-21 18:51:48 -06:00
RenierM26
02b72d8c23 Bump ezviz api 0.2.0.5 (#60090) 2021-11-21 18:51:22 -06:00
jjlawren
aa5cf175f4 Set Sonos availability based on activity and discovery (#59994) 2021-11-21 18:48:57 -06:00
epenet
263101b2ab Create new usb constants (#60086) 2021-11-21 18:14:42 -06:00
GitHub Action
31d4239b64 [ci skip] Translation update 2021-11-22 00:13:02 +00:00
ollo69
176245e5be Use format_mac for AsusWRT ScannerEntity Mac Address (#54959)
* Use format_mac for AsusWRT ScannerEntity mac

* Fix after rebase

* Change check for duplicated entities
2021-11-21 14:45:40 -08:00
jugla
e4931e242a Allow atome reauthentication on error (#59452)
* allow reauthentification on error

* Allow reauthentification on error

* allow reauthentification on error

* allow reauthentification on error

* Set one fonction for day/month/week/year and allow retry on error

* allow retry and manage return status

* local variable in retrieve_period_usage_with_retry

* Use If statement rather than exception

* remove blank

* code format

* Reduce variable

* remove useless variable

* get method return false and pylint no else-return

* remove blank

* trailing white space
2021-11-21 14:38:37 -08:00
Simone Chemelli
c4128f853d Add climate platform to Shelly (#59712)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-11-21 16:34:00 -06:00
epenet
382efef2e2 Use DhcpServiceInfo in squeezebox (#60100) 2021-11-21 16:33:44 -06:00
epenet
4e1089cedb Use DhcpServiceInfo in somfy_mylink (#60099) 2021-11-21 16:33:34 -06:00
epenet
8f7f32d844 Use DhcpServiceInfo in screenlogic (#60103) 2021-11-21 16:33:26 -06:00
epenet
4555820987 Use ZeroconfServiceInfo in shelly (#60098) 2021-11-21 16:33:20 -06:00
epenet
fa9465d003 Use ZeroconfServiceInfo in system_bridge (#60102) 2021-11-21 16:33:06 -06:00
epenet
a72a5486c2 Use ServiceInfo in samsungtv tests (#60097) 2021-11-21 16:00:59 -06:00
epenet
1c15544d7a Use ZeroconfServiceInfo in smappee (#60096) 2021-11-21 15:50:29 -06:00
epenet
b465131170 Use ZeroconfServiceInfo in sonos (#60095) 2021-11-21 15:49:50 -06:00
epenet
b9cbfbae58 Use ZeroconfServiceInfo in nut (#60047) 2021-11-21 15:49:03 -06:00
epenet
2675c6d408 Use DhcpServiceInfo in axis (#60092)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-21 15:39:37 -06:00
epenet
7560f11680 Use ZeroconfServiceInfo in roku (#60053) 2021-11-21 11:27:35 -06:00
epenet
2270e920c3 Use ZeroconfServiceInfo in modern_forms (#60043) 2021-11-21 17:37:09 +01:00
epenet
95075448bd Use DhcpServiceInfo in nuki (#60046) 2021-11-21 17:35:51 +01:00
epenet
36a67d060b Use ZeroconfServiceInfo in octoprint (#60049) 2021-11-21 17:35:24 +01:00
epenet
c3e9c1a7e8 Use DhcpServiceInfo in powerwall (#60051) 2021-11-21 07:56:22 -06:00
epenet
8ec30aa9ad Use ZeroconfServiceInfo in rachio (#60054) 2021-11-21 07:55:54 -06:00
epenet
435eb97495 Use DhcpServiceInfo in roomba (#60056) 2021-11-21 07:54:39 -06:00
epenet
25e5263954 Use ZeroconfServiceInfo in nanoleaf (#60045) 2021-11-21 07:51:50 -06:00
Dan Klaffenbach
56e93ff0ec Add support for HEOS groups (#32568)
* Add support for grouping HEOS media players

* Update homeassistant/components/heos/media_player.py

Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>

* Update homeassistant/components/heos/media_player.py

Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>

* Update homeassistant/components/heos/media_player.py

Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>

* Update homeassistant/components/heos/media_player.py

Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>

* Update homeassistant/components/heos/media_player.py

Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>

* Update homeassistant/components/heos/media_player.py

Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>

* Handle groups at controller level, refine tests.

Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>

* Fix linting issues

* Update homeassistant/components/heos/media_player.py

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

* Update homeassistant/components/heos/media_player.py

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

* Rename variables and improve resolving of entity_ids

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

* Don't patch internal methods

Use the pytest fixtures which have already been defined for this.

* Fix linting issues

* Remove unused property

* Ignore groups with unknown leader

This makes sure that the group_members attribute won't contain a `None`
value as a leader entity_id.

* Don't call force_update_groups() from tests

* Don't pass `None` player ids to HEOS API

* Use signal for group manager communication

* Use imports for async_dispatcher_send/async_dispatcher_connect

* Raise exception when leader/player could not be resolved

* Disconnect signal handlers, avoid calling async_update_groups too early

* Update homeassistant/components/heos/__init__.py

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

Co-authored-by: Andrew Sayre (he/his/him) <6730289+andrewsayre@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-21 12:57:31 +01:00
G Johansson
0dece582e4 Improve coordinator for yale_smart_alarm (#54091)
* Commit coordinator adjustments

* Review changes
2021-11-21 12:11:36 +01:00
Daniel Perna
9197512ed1 Fix Sensors for HmIP-DLD (#59804) 2021-11-21 12:09:55 +01:00
epenet
ba93a384a7 Use ZeroconfServiceInfo in nam (#60044) 2021-11-21 10:25:34 +01:00
Simone Chemelli
f606ba3b23 Detail reason for ConfigEntryNotReady (#60062) 2021-11-21 10:25:18 +01:00
epenet
3cdca4a657 Use ZeroconfServiceInfo in netatmo tests (#60048) 2021-11-21 08:40:46 +01:00
Allen Porter
7e0ddd1d8c Bump google-nest-sdm to 0.4.0 (#60068)
Full changelog: https://github.com/allenporter/python-google-nest-sdm/compare/0.3.9...0.4.0

All changes are in new code and is expected to be a no-op for the current code.

This release introduces a new API for fetching events for upcoming features in Home Assistant,
namely fetching camera clips for battery cameras. The new API is uniform across old and new
cameras.
2021-11-21 08:10:09 +01:00
epenet
85b37a8532 Use ZeroconfServiceInfo in rainmachine (#60055) 2021-11-21 08:08:45 +01:00
Avi Miller
e056f9aa0f Explicitly cast the SOMA API response to an integer (#60071)
This resolves the `TypeError: unsupported operand type(s) for -: 'int'
and 'str'` error.

Fixes #60070.

Signed-off-by: Avi Miller <me@dje.li>
2021-11-20 22:31:45 -08:00
Simone Chemelli
23f37d0127 Bump aioshelly to 1.0.5 (#60058) 2021-11-20 16:59:45 -08:00
GitHub Action
e98977fb49 [ci skip] Translation update 2021-11-21 00:13:51 +00:00
Marcel van der Veldt
7161a0bf2a Add guard for already migrated Hue entity (#59930)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-11-20 14:46:11 -08:00
Marcel van der Veldt
4820acb897 Fix for deviceless entities in Hue integration (#59820) 2021-11-20 14:45:51 -08:00
Marcel van der Veldt
902da4daf8 Add integration_entities template helper (#59841) 2021-11-20 14:43:31 -08:00
epenet
df3f3321f2 Use ZeroconfServiceInfo in hue (#59980)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-20 14:39:14 -08:00
Paulus Schoutsen
66132e133f Merge remote-tracking branch 'origin/master' into dev 2021-11-20 14:34:43 -08:00
J. Nick Koston
2412afbacd Add configuration_url to lutron_caseta (#60015) 2021-11-20 09:45:25 -06:00
Marvin Wichmann
769661adc3 KNX christmas cleaning #2 - remove old migrations (#60026)
* Remove old migrations from KNX integration

* Remove cover migration
2021-11-20 16:34:59 +01:00
Jared Hobbs
6d4b74f8f2 Add haa vendor extensions (#59750)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-11-20 09:22:10 -06:00
Franck Nijhof
70990ebf81 Add WLED Live Override controls (#59783) 2021-11-20 09:15:47 -06:00
Marvin Wichmann
1d63ae8696 Code quality improvements for KNX integration (#60024) 2021-11-20 16:15:33 +01:00
Franck Nijhof
25f491ad16 Add WLED reverse effect switch (#59778) 2021-11-20 08:57:47 -06:00
J. Nick Koston
bf79db4226 Add harmony configuration url (#60014) 2021-11-20 08:34:09 -06:00
Ville Skyttä
f305d99af9 Add integration filtering and error if core options to helpers.frame.report (#60009)
Reduces some existing and upcoming boilerplate.
2021-11-20 12:53:04 +02:00
Marvin Wichmann
e5c33474e3 Add config and options flow to KNX integration (#59377) 2021-11-20 11:30:41 +01:00
Ullrich Neiss
40104de0bf Address late review of kostal plenticore (#59998) 2021-11-20 11:16:53 +01:00
epenet
d0ff8a9b76 Add id constant for homekit discovery (#59986) 2021-11-20 10:07:59 +00:00
J. Nick Koston
59f10373ad Add configuration url to august (#60013) 2021-11-19 21:55:51 -06:00
Guido Schmitz
02423d6edc Add long-term statistics support for devolo Home Control (#57612)
* Add long-term statistics support

* Fix messed up rebase
2021-11-19 19:52:33 -08:00
Aaron Bach
394ccae8a1 Migrate appropriate Ambient PWS sensors to use datetime state objects (#59942) 2021-11-19 18:06:39 -07:00
Aaron Bach
40570b572d Migrate appropriate ReCollect Waste sensors to use datetime state objects (#59943) 2021-11-19 18:06:23 -07:00
GitHub Action
72b0eb719e [ci skip] Translation update 2021-11-20 00:12:27 +00:00
Diogo Gomes
e8970d6390 Bump roombapy to 1.6.4 (#60008) 2021-11-19 23:46:45 +01:00
Daniel Hjelseth Høyer
5f8646600f Correct supported_features and model for Mill (#59996)
* Correct supported_features and model for Mill

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

* Correct supported_features and model for Mill

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

* revert

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

* Mill

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-11-19 17:19:56 -05:00
Daniel Hjelseth Høyer
4f89ce4fb8 Bump Mill library (#59995)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-11-19 17:18:52 -05:00
Aaron Bach
8f6796f428 Prevent IQVIA from blocking other integrations' startup (#60001) 2021-11-19 14:01:26 -07:00
Aaron Bach
dedc4a8285 Prevent OpenUV from blocking other integrations' startup (#59956)
* Prevent OpenUV from blocking other integrations' startup

* Comment
2021-11-19 13:53:47 -07:00
Paulus Schoutsen
dbae448fe5 Merge pull request #59951 from home-assistant/rc 2021-11-19 12:40:52 -08:00
jjlawren
754fba1fb7 Ignore non-Sonos SSDP devices with Sonos-like identifiers (#59809) 2021-11-19 12:40:35 -08:00
Robert Svensson
6f091d235f Fix late comment correcting kwargs should always be Any in deCONZ covers (#59997)
* Fix late comments correcting kwargs should always be Any
2021-11-19 21:16:21 +01:00
Guido Schmitz
da68cfa821 Bump devolo_plc_api to 0.6.3 (#59991) 2021-11-19 19:31:28 +01:00
epenet
386520b883 Use ZeroconfServiceInfo in ipp (#59983)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 10:16:34 -06:00
epenet
e3ee19d0c4 Use ZeroconfServiceInfo in kodi (#59984)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 10:16:28 -06:00
epenet
8a4d3b2a2e Use ZeroconfServiceInfo in lookin (#59987)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 10:16:07 -06:00
jjlawren
81e02a39df Ignore non-Sonos SSDP devices with Sonos-like identifiers (#59809) 2021-11-19 10:14:12 -06:00
epenet
9aa41be8b7 Use ZeroconfServiceInfo in lutron_caseta (#59988)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 09:36:18 -06:00
starkillerOG
2b7bcd6aeb Yeelight disable polling (#59885)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-11-19 09:02:07 -06:00
epenet
14d4a9a69d Use DhcpServiceInfo in isy994 (#59982)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 08:14:25 -06:00
epenet
982f2065c8 Use ZeroconfServiceInfo in homekit_controller (#59979)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 08:13:56 -06:00
epenet
d6c5aaa0cb Use ServiceInfo in hunterdouglas_powerview (#59981)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 08:12:31 -06:00
Erik Montnemery
c557da028a Bump entity_registry store version to 1.2 (#59912)
* Bump entity_registry store version to 1.2

* Migrate also when importing yaml

* Adjust tests

* Satisfy pylint

* Fix typing
2021-11-19 14:25:34 +01:00
epenet
45d41e584f Use DhcpServiceInfo in dhcp tests (#59962)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 12:49:28 +01:00
epenet
f17d58a049 Use DhcpServiceInfo in emonitor (#59965)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 12:48:51 +01:00
epenet
cb306236f2 Use DhcpServiceInfo in flux_led (#59967)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 12:37:59 +01:00
Franck Nijhof
a51f2a433f Upgrade pyatmo to 6.2.0 (#59975) 2021-11-19 12:36:25 +01:00
epenet
59547289b4 Use DhcpServiceInfo in broadlink (#59961)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 12:29:20 +01:00
epenet
2aa8c2cf74 Use DhcpServiceInfo in gogogate2 (#59968)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 12:19:37 +01:00
epenet
e7013f468c Use DhcpServiceInfo in goalzero tests (#59969)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 12:18:56 +01:00
epenet
01fea8bbdd Use DhcpServiceInfo in guardian tests (#59970)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 12:18:32 +01:00
epenet
e23cc3ecbf Optimise use of ZeroconfServiceInfo (#59966)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-19 12:17:49 +01:00
rianadon
ecf00a1eae Add accumulated precipitation to unit system (#59657)
* Add accumulated precipitation to unit system

* Fix template test

* Fix typo of testing pressure instead of precipitation

* Add extra arguments so unit system test passes
2021-11-19 09:18:44 +01:00
deftdawg
b8ec0825d3 Add energy support to Neurio_Energy (#54445)
* - Patch Neurio_Energy to support new HA energy

Enables the Neurio Energy Meter as a Consumption device for Home Assistant Energy

* Only return last_reset value for DEVICE_CLASS_ENERGY

* Update homeassistant/components/neurio_energy/sensor.py

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

* Update with recommendations from CI/Black

* Support new style typing

* Attempt setting the state_class statically

* Make state class static

* Changing state class to STATE_CLASS_TOTAL_INCREASING and removing last_reset seems to work ok

* Remove unused datetime import that was previously in last_reset

* Apply suggestions from code review

apply emontnemery's recommended changes

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-19 09:16:08 +01:00
J. Nick Koston
2f00f8d3de Prevent executor overload when starting many homekit instances (#59950) 2021-11-18 22:39:49 -08:00
Franck Nijhof
073bf6d6fd Use native datetime value inMobile App sensors (#59945) 2021-11-18 22:36:28 -08:00
Franck Nijhof
f7b7786d0d Use native datetime value in UniFi sensors (#59926) 2021-11-19 07:35:09 +01:00
Paulus Schoutsen
66d91544e8 Fix some tests 2021-11-18 22:33:46 -08:00
Daniel Hjelseth Høyer
a3d5aec778 Mill local access (#59549)
* Mill local

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

* Mill local

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

* Mill local

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

* Update homeassistant/components/mill/config_flow.py

Co-authored-by: Allen Porter <allen@thebends.org>

* Update homeassistant/components/mill/config_flow.py

Co-authored-by: Allen Porter <allen@thebends.org>

* Update homeassistant/components/mill/config_flow.py

Co-authored-by: Allen Porter <allen@thebends.org>

* Fix review comments

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

* coveragerc

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

* Fix review comments

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

* Fix review comments

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

* Fix review comments

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

Co-authored-by: Allen Porter <allen@thebends.org>
2021-11-18 21:44:45 -08:00
Nathan Spencer
406cbcfe2d Use an assumed switch state until refresh callback is complete (#59805) 2021-11-18 21:29:38 -08:00
Aaron Bach
ff21453f58 Migrate appropriate Ridwell sensors to use datetime state objects (#59944)
* Migrate appropriate Ridwell sensors to use datetime state objects

* Linting

* Whoops
2021-11-18 22:24:12 -07:00
Erik Montnemery
04a36e0679 Remove test_check_package_version_does_not_match (#59785) 2021-11-18 20:25:59 -08:00
J. Nick Koston
347c4ea137 Bump zeroconf to 0.37.0 (#59932) 2021-11-18 20:23:20 -08:00
Robin Dupont
4598353315 Add apparent_power for ZHA ElectricalMeasurement (#59857)
* Add apparent_power for ZHA ElectricalMeasurement

* Add apparent_power to REPORT_CONFIG

* update device list with apparent_power attribute

* update test decorators for apparent_power

* remove comments

* Add test for apparent_power in test_sensor
2021-11-18 19:43:08 -05:00
Paulus Schoutsen
090c65488d Bumped version to 2021.11.5 2021-11-18 16:18:05 -08:00
Paulus Schoutsen
ca74d3c79e Store: copy pending data (#59934) 2021-11-18 16:17:41 -08:00
GitHub Action
29dc9de08f [ci skip] Translation update 2021-11-19 00:14:01 +00:00
Franck Nijhof
6bed1a8800 Fix Tuya back scaling in Climate and Humidifer entities (#59909) 2021-11-18 15:56:59 -08:00
PlusPlus-ua
7b6d55bd88 Bugfix in Tuya Number value scaling (#59903) 2021-11-18 15:56:58 -08:00
J. Nick Koston
684efd3fe5 Strip out deleted entities when configuring homekit (#59844) 2021-11-18 15:56:57 -08:00
Philip Allgaier
0d44328f42 Fix invalid string syntax in OwnTracks config flow translations (#59838) 2021-11-18 15:56:57 -08:00
Maikel Punie
845f75868d Bump velbusaio to 2021.11.7 (#59817) 2021-11-18 15:56:56 -08:00
starkillerOG
85abc4034d Fix Netgear init error on orbi models (#59799)
* fix Netgear init error on orbi models

* Update sensor.py
2021-11-18 15:56:55 -08:00
Simone Chemelli
7316e0555b Fix typo in attribute for Fritz (#59791) 2021-11-18 15:56:54 -08:00
Maciej Bieniek
711a00225f Use source list property instead of the attribute in Denon AVR integration (#59768) 2021-11-18 15:56:53 -08:00
Paulus Schoutsen
442597928e Store: copy pending data (#59934) 2021-11-18 15:56:22 -08:00
J. Nick Koston
0fb21af07f Strip out deleted entities when configuring homekit (#59844) 2021-11-18 15:21:51 -08:00
Franck Nijhof
8fb84270d5 Fix Tuya back scaling in Climate and Humidifer entities (#59909) 2021-11-18 15:21:27 -08:00
Paul Frank
a3139595bb Remove zwave_js cover workaround (#59939) 2021-11-18 23:04:21 +01:00
Eduard van Valkenburg
958c199d80 Brunt package update with async, data update coordinator and config flow (#49714)
* implemented config_flow and dataupdatecoordinator

* implemented config flow, dataupdatecoordinator and tests.

* undid extra vscode task

* fixed pylint errors

* updates based on review

* fix mypy in reauth

* fast interval to 5 sec

* fixed test patches and others from review

* added released package

* deleted wrong line from coveragerc

* updates to config and tests

* fixed test patch
2021-11-18 23:00:42 +01:00
starkillerOG
05eb2f3e5c Yeelight add state check to set_mode service (#59884) 2021-11-18 15:52:57 -06:00
Franck Nijhof
1ecd9c9459 Use native datetime value in OctoPrint sensors (#59927) 2021-11-18 22:42:21 +01:00
Franck Nijhof
8a0c5aa50b Use native datetime value in RDW sensors (#59914) 2021-11-18 20:07:38 +01:00
Franck Nijhof
5593dd4006 Use native datetime value in WLED sensors (#59907) 2021-11-18 20:03:40 +01:00
Franck Nijhof
fc29611935 Use native datetime value in Uptime sensors (#59916) 2021-11-18 20:03:30 +01:00
Franck Nijhof
4e4f6ffa07 Use native datetime value in Jewish Calendar sensors (#59917) 2021-11-18 20:03:16 +01:00
Franck Nijhof
3adb9e4143 Use native datetime value in Tasmota sensors (#59915) 2021-11-18 20:03:04 +01:00
Franck Nijhof
fc330f797d Use native datetime value in Forecast Solar sensors (#59913) 2021-11-18 19:58:31 +01:00
epenet
9ccee205ca Use ZeroconfServiceInfo in gogogate2 (#59746)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-18 12:14:00 -06:00
J. Nick Koston
f751d6e064 Add additional bulb ouis to flux_led (#59868) 2021-11-18 11:45:38 -05:00
Franck Nijhof
24f3fd35c9 Fix shorthand native value type in sensor entity component (#59908) 2021-11-18 17:37:52 +01:00
Erik Montnemery
d18c250acf Add minor version support to storage.Store (#59882) 2021-11-18 17:15:40 +01:00
J. Nick Koston
cc3f179796 Ensure powerview setup is retried on 502 error (#59847) 2021-11-18 09:57:31 -06:00
PlusPlus-ua
a211b8ca8f Bugfix in Tuya Number value scaling (#59903) 2021-11-18 16:53:34 +01:00
epenet
329904dfbb Add type hints to SSDP (#59840) 2021-11-18 09:49:36 -06:00
epenet
28ff1b9d9e Use native date value in Renault sensors (#59900)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-18 16:15:54 +01:00
rianadon
7cc7bbb76d Add speed to units system (#58437)
* Use speed units in unit system

* Use more obvious conversion factor for unit system speed test

* Use wind_speed instead of speed, use m/s
2021-11-18 16:08:42 +01:00
Ullrich Neiss
3dc0b9537c Move Kostal Plenticore writable settings from sensor to select widget or switch (#56529)
* Move "Battery:SmartBatteryControl:Enable" from a simple sensor to a switch
Add "Battery:TimeControl:Enable" as a switch

If you want to change charging behavior you need to turn off both switches, before you can enable the function you want. (Same as on Plenticore UI)

* removed:
    @property
    def assumed_state(self) -> bool

was copied from an switchbot integration, does not make sense or does deliver valuable information

Tried to set constant properties in the constructor

* correct typo, add new line at eof

* Initial state of switch was missing after (re)starting HA. Now working.

* Reformatted with black

* correct syntax errors from test run 09.10.2021

* reformat

* update 15.10.2021

* Set select value is working

* update 05.11.2021

* data correctly received

* working completly

* remove old switch definitions, now replaced by select widget

* correct complaints from workflow run on 11/11/2021

* Add explanatory comment for switch and select

* Correct comments

* Removed function async def async_read_data(self, module_id: str, data_id: str)
from class SettingDataUpdateCoordinator

* Add Mixin class for read/write

* try to make select.py less "stale"

* new dev environment 2

* new dev environment 2

* correct syntax

* minor coding standard correction

* Remove BOM

* Remove BOM on select.py

* Updated .coveragerc
2021-11-18 16:06:32 +01:00
Franck Nijhof
5e07bc38c1 Use native date value in Twente Milieu sensors (#59897) 2021-11-18 15:32:50 +01:00
Franck Nijhof
4a83ee5dab Use native datetime value in ESPHome sensors (#59896) 2021-11-18 15:32:39 +01:00
bwduncan
ec6a67d17a Use correct Nissan leaf device_class (#59889) 2021-11-18 15:23:57 +01:00
bwduncan
9ab8622d72 Fix Nissan Leaf default states (#59866)
* Fix default states and add device_class.

Car data is initialised to zero, which means that graphs have an ugly
drop to zero in them when HA is restarted. We should report "None" when
the state is unknown.

We need to use availability to signal whether binary_sensors have
sensible data or not.

We can remove the custom icons and use the defaults provided by using
appropriate device_class.

* Make isort happy.

* Explicitly return None

* Remove feature from bugfix PR.
2021-11-18 15:18:25 +01:00
Erik Montnemery
b13e4e9953 Small tweak of TriggerEntity typing (#59875) 2021-11-18 14:34:07 +01:00
Franck Nijhof
01efe1eba2 Add datetime object as valid StateType (#52671)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-18 14:11:44 +01:00
Thomas Schamm
92ca94e915 Add cover platform to bosch_shc integration (#51443)
Co-authored-by: Artem Draft <Drafteed@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-18 14:00:01 +01:00
Simone Chemelli
a41d336724 Scsgate logging from warn(deprecated) to warning (#59862) 2021-11-18 13:13:45 +01:00
Erik Montnemery
1609c0cc2c Sort some entity_registry code (#59876)
* Sort some entity_registry code

* Sort some more entity_registry code

* Tweak
2021-11-18 11:51:32 +01:00
Franck Nijhof
87f2eb3bd7 Upgrade sentry-sdk to 1.5.0 (#59842) 2021-11-18 11:33:53 +01:00
Erik Montnemery
bfafeb7965 Don't mock all of pychromecast in tests (#59839) 2021-11-18 11:28:35 +01:00
uvjustin
bb731fad5d Bump httpx from 0.19.0 to 0.21.0 (#59723)
* Bump httpx from 0.19.0 to 0.21.0

* Bump respx from 0.17.0 to 0.19.0
2021-11-18 18:11:46 +08:00
Tomas Kislan
cfc02fc9f4 Update minio dependency to 5.0.10 (#59878)
* Update minio dependency to 5.0.10

* Update minio dependency in manifest file
2021-11-18 10:59:04 +01:00
dependabot[bot]
5c01ed7edf Bump actions/setup-python from 2.2.2 to 2.3.0 (#59873)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2.2.2 to 2.3.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v2.2.2...v2.3.0)

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

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-18 10:21:08 +01:00
uvjustin
5f96ed19d9 Remove -bb option from tox and ci (#59846) 2021-11-18 13:23:25 +08:00
Jonathan Keljo
94bfa5272d Remove the need for generics in greeneye_monitor.sensor (#58782)
* Remove the need for generics in greeneye_monitor.sensor

* Remove unused imports

* Store monitor and use a property instead
2021-11-17 20:30:58 -08:00
alim4r
e180f1e302 Add input_number state to prometheus metrics (#56507)
* Add input_number to prometheus metrics

* Add prometheus input_number tests

* Removed unused import from test
2021-11-17 19:35:48 -08:00
René Klomp
5d0c758886 Bump pysma to 0.6.9 (#59848) 2021-11-17 19:56:04 -06:00
Maciej Bieniek
1c11e7061d Bump Nettigo Air Monitor backend library (#59675) 2021-11-17 19:00:19 -06:00
GitHub Action
9a85c8d894 [ci skip] Translation update 2021-11-18 00:12:48 +00:00
Aaron Bach
279ded3562 Ensure last_event_sensor_type in SimpliSafe entities is lowercased (#59864) 2021-11-17 16:37:53 -07:00
Paulus Schoutsen
6175f1b6f3 Bump frontend to 20211117.0 (#59851) 2021-11-17 11:45:08 -08:00
Raman Gupta
edd068d6eb Add explicit unit mapping for zwave_js meters and sensors (#59659)
* Add explicit unit mapping for zwave_js meters and sensors

* review comment

* fix

* alternate approach
2021-11-17 12:26:32 -05:00
Philip Allgaier
5ae311b111 Fix invalid string syntax in OwnTracks config flow translations (#59838) 2021-11-17 16:05:50 +01:00
starkillerOG
cac54d8e39 bump motionblinds to 0.5.8 (#59834) 2021-11-17 15:26:23 +01:00
Robert Svensson
569d596799 Add typing to deCONZ Lock and Logbook platforms (#59605) 2021-11-17 15:22:59 +01:00
Robert Svensson
0339761e72 Add typing to deCONZ Number and Sensor platforms (#59604) 2021-11-17 15:11:51 +01:00
Robert Svensson
29e0ef604e Add typing to deCONZ Climate and Cover platforms (#59610) 2021-11-17 15:08:37 +01:00
Joakim Sørensen
edbe54c346 Prefer YAML config mode in Lovelace system_health (#59835) 2021-11-17 14:47:22 +01:00
Martin Hjelmare
b6dea3c6cb Add more zwave_js binary sensor descriptions (#59474) 2021-11-17 12:53:44 +01:00
Thomas Dietrich
0ab3b10aed Allow selection of statistics state characteristic (#49960)
* Make statistics state characteristic selectable

* Move computation in helper function

* Add relevant config elements for clarity

* Rename variables for better readability

* Avoid reserved prefix ATTR_ for stats

* Fix NoneType base_unit error

* Add testcases for statistics characteristic

* Add testcases for state_class, unitless, and characteristics

* Add testcase coverage for no unit with binary

* Replace error catching by an exception

* Attend to review comments
2021-11-17 12:31:32 +01:00
Raman Gupta
0f64e7036f Bump zwave-js-server-python to 0.32.0 (#59727) 2021-11-17 11:56:48 +01:00
starkillerOG
3a7a4e8ffc Fix Netgear init error on orbi models (#59799)
* fix Netgear init error on orbi models

* Update sensor.py
2021-11-17 11:49:12 +01:00
René Klomp
ac96c7bb1f Move creation of DeviceInfo outside try statement in SMA (#59821) 2021-11-17 11:28:18 +01:00
Franck Nijhof
5133269e2b Upgrade black to 21.11b0 (#59823) 2021-11-17 11:19:09 +01:00
Maikel Punie
7e5316eb86 Bump velbusaio to 2021.11.7 (#59817) 2021-11-17 10:15:19 +01:00
Erik Montnemery
dec54488e8 Enable basic type checking for cloud (#55337)
* Enable basic type checking for cloud

* Update mypy settings

* Address review comment

* Fix rebase mistakes

* Correct decorator order
2021-11-17 09:07:01 +01:00
Erik Montnemery
593bc866f0 Bump pychromecast to 10.1.0 (#59719)
* Prepare for pychromecast 10

* Bump pychromecast to 10.0.0

* Bump pychromecast to 10.1.0

* Update homeassistant/components/cast/discovery.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-17 09:05:25 +01:00
Dermot Duffy
a88469ec74 Bump motioneye-client to v0.3.12 (#59811) 2021-11-17 08:29:59 +01:00
Kilian Lackhove
a4826f4b69 Fix deCONZ climate offset display if offset is zero (#59803) 2021-11-17 07:29:37 +01:00
René Klomp
a68563cefd Add configuration_url to SMA integration (#59638) 2021-11-16 20:10:41 -06:00
epenet
7f07755f5c Use ZeroconfServiceInfo in enphase-envoy (#59738)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-16 17:45:03 -07:00
GitHub Action
b82fac1a73 [ci skip] Translation update 2021-11-17 00:13:20 +00:00
Milan Meulemans
f8501ded0e Add entity_category to Rituals Entities (#59756) 2021-11-16 14:37:28 -06:00
Marcel van der Veldt
e1e6925097 Refactor of Hue integration with full V2 support (#58996)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-11-16 11:59:17 -08:00
Robert Svensson
4642a70651 Add typing to deCONZ Alarm Control Panel and Binary Sensor platforms (#59611)
* Add typing to deCONZ Alarm Control Panel and Binary Sensor platforms

* Address review comments

* Don't use asserts, use # type: ignore[no-any-return]

* Improve lazy typing of dict
2021-11-16 20:01:10 +01:00
Franck Nijhof
9faf3996db Add WLED firmware upgrade button (#59793) 2021-11-16 19:58:04 +01:00
Simone Chemelli
06d35853b6 Fix typo in attribute for Fritz (#59791) 2021-11-16 19:30:50 +01:00
epenet
0dcfd55c84 Adjust async_step_usb signature for strict typing (#59773)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-16 19:03:50 +01:00
Joakim Plate
f0b3fbc5a7 Always fire event for known devices in rfxtrx (#58845) 2021-11-16 19:03:18 +01:00
Robert Svensson
c7c1d6000f Add type hints to Siren and Switch deCONZ platforms (#59602)
* Add typing to Siren and Switch deCONZ platforms

* Update homeassistant/components/deconz/switch.py

Co-authored-by: Matthias Alphart <farmio@alphart.net>

* Update homeassistant/components/deconz/switch.py

Co-authored-by: Matthias Alphart <farmio@alphart.net>

* Update homeassistant/components/deconz/switch.py

Co-authored-by: Matthias Alphart <farmio@alphart.net>

* Update homeassistant/components/deconz/siren.py

Co-authored-by: Matthias Alphart <farmio@alphart.net>

* Update homeassistant/components/deconz/siren.py

Co-authored-by: Matthias Alphart <farmio@alphart.net>

* Add Any import

* Update homeassistant/components/deconz/siren.py

Co-authored-by: Matthias Alphart <farmio@alphart.net>

Co-authored-by: Matthias Alphart <farmio@alphart.net>
2021-11-16 17:25:56 +01:00
Robert Hillis
16027b9f43 Fix mqtt undefined error (#59787) 2021-11-16 17:16:24 +01:00
Erik Montnemery
fa952364cc Remove test_check_package_version_does_not_match (#59785) 2021-11-16 07:54:08 -08:00
Robert Hillis
14adcbc07c Add tests for goalzero (#59446)
* Add tests for goalzero

* tweak

* tweak
2021-11-16 07:18:30 -08:00
Khole
e9c8de25df Add Hive Alarm Support (#59670)
* Add alarm support

* Update code coverage

* Update homeassistant/components/hive/alarm_control_panel.py

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

* Add alarm support

* Update code coverage

* Update homeassistant/components/hive/alarm_control_panel.py

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

* Update icon and device info

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2021-11-16 07:18:09 -08:00
David Beitey
1bcd62cd32 Add topic_template for mqtt.publish (#53743)
Co-authored-by: Erik Montnemery <erik@montnemery.com>

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-16 16:13:54 +01:00
Simone Chemelli
8a02d87a17 Removed deprecated "device_state_attributes" for Amberelectric (#59672)
* Removed deprecated "device_state_attributes"

* Cleanup

* Postpone removal

* log deprecation warning

* Update homeassistant/helpers/entity.py

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

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-16 16:11:46 +01:00
epenet
4387bbfb94 Adjust async_step_mqtt signature for strict typing (#59761)
* Add MqttServiceInfo

* Adjust async_step_mqtt signature

* Adjust async_step_mqtt signature

* Adjust components

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-16 13:30:38 +01:00
Maciej Bieniek
f1d75f0dd7 Use source list property instead of the attribute in Denon AVR integration (#59768) 2021-11-16 12:40:54 +01:00
Robert Svensson
41e341028e Add typing to deCONZ Fan and Light platforms (#59607) 2021-11-16 12:39:51 +01:00
epenet
476a59d248 Adjust async_step_dhcp signature for strict typing (#59751)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-16 12:19:50 +01:00
Aaron Bach
a78176e192 Perform some Ambient PWS code cleanup (#58859)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-11-16 11:56:17 +01:00
epenet
cca3cdb096 Use ZeroconfServiceInfo in bosch_shc (#58957)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-16 11:40:49 +01:00
Erik Montnemery
4f01631bd6 Allow triggering on all state changes, ignoring attributes (#59713)
* Allow triggering on all state changes, ignoring attributes

* Add comment

* Apply suggestions from code review

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

Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-11-16 08:35:52 +01:00
Franck Nijhof
9256a033a6 Upgrade spotipy to 2.19.0 (#59728) 2021-11-16 02:23:59 +01:00
Michael
771922b871 Add support for property attribute shorthand in Fan entity (#59649) 2021-11-16 01:25:22 +01:00
GitHub Action
0228d11546 [ci skip] Translation update 2021-11-16 00:18:33 +00:00
Paulus Schoutsen
6069899179 Merge pull request #59753 from home-assistant/rc 2021-11-15 16:02:30 -08:00
epenet
4d96ca3ddb Adjust async_step_homekit signature for strict typing (#59745)
* Use ZeroconfServiceInfo in async_step_homekit

* Update DiscoveryFlowHandler

* Update components
2021-11-15 17:27:04 -06:00
Matthias Alphart
c0a8cea6fb Fix KNX individual light tests (#59749) 2021-11-16 00:02:39 +01:00
Paulus Schoutsen
0e12bce174 Bumped version to 2021.11.4 2021-11-15 14:37:30 -08:00
Philip Allgaier
ca3c0057d3 Fix invalid string syntax in French OwnTracks config flow (#59752) 2021-11-15 14:37:25 -08:00
J. Nick Koston
6596ebfe43 Bump flux_led to 0.24.24 (#59740) 2021-11-15 14:37:24 -08:00
J. Nick Koston
702c57f389 Bump flux_led to 0.24.21 (#59662) 2021-11-15 14:37:07 -08:00
Clifford Roche
5c0e34db6c Bump greeclimate to 0.12.5 (#59730) 2021-11-15 14:32:53 -08:00
Aaron Bach
6a4274b280 Fix bug in AirVisual re-auth (#59685) 2021-11-15 14:32:52 -08:00
Anton Malko
c2aeeec129 Update aiolookin to 0.0.4 version (#59684) 2021-11-15 14:32:51 -08:00
J. Nick Koston
cb889281a6 Ensure flux_led bulbs turn on even if brightness is 0 (#59661) 2021-11-15 14:32:50 -08:00
Clifford Roche
f0fdd4388c Bump greecliamate to 0.12.4 (#59645) 2021-11-15 14:32:50 -08:00
J. Nick Koston
84358fa770 Bump zeroconf to 0.36.13 (#59644)
- Closes #59415
- Fixes #58453
- Fixes #57678

- Changelog: https://github.com/jstasiak/python-zeroconf/compare/0.36.12...0.36.13
2021-11-15 14:32:49 -08:00
J. Nick Koston
b122774b12 Bump zeroconf to 0.36.12 (#59133)
- Changelog: https://github.com/jstasiak/python-zeroconf/compare/0.36.11...0.36.12

Bugfix: Prevent service lookups from deadlocking if time abruptly moves backwards
2021-11-15 14:32:48 -08:00
Maciej Bieniek
0153580def Fix favorite RPM max value in Xiaomi Miio (#59631) 2021-11-15 14:31:23 -08:00
Michael Kowalchuk
7042fdb145 Always use a step size of 1 for z-wave js fans (#59622) 2021-11-15 14:31:22 -08:00
Simone Chemelli
e7aa90a5b1 Fix firmware status check for Fritz (#59578) 2021-11-15 14:31:21 -08:00
Joakim Sørensen
3c4d5e6c91 Override api url in norway_air (#59573) 2021-11-15 14:31:20 -08:00
jugla
89877a0685 Air visual : robustness at startup when evaluate time interval (#59544) 2021-11-15 14:31:19 -08:00
Philip Allgaier
646c996b42 Fix invalid string syntax in French OwnTracks config flow (#59752) 2021-11-15 14:30:48 -08:00
Aaron Bach
ce3f918c2c Fix bug in AirVisual re-auth (#59685) 2021-11-15 14:30:26 -08:00
epenet
1bd2d3c69e Use ZeroconfServiceInfo in freebox (#59739)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-15 23:13:48 +01:00
J. Nick Koston
7122998307 Bump flux_led to 0.24.24 (#59740) 2021-11-15 23:13:37 +01:00
epenet
0b43cff377 Use ZeroconfServiceInfo in guardian (#59741)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-15 23:13:17 +01:00
epenet
032718abb1 Use ZeroconfServiceInfo in doorbird (#59737)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-15 14:43:52 -06:00
Matthias Alphart
ca3e672b1d Fix KNX rgb(w) color (#51060)
* calculate brightness from color; scale color

* fix merge

* fix sending color only for brightness independent rgb color

* fix tests for rgb and rgbw color

* use public match_max_scale
2021-11-15 20:42:59 +01:00
epenet
4f7e405a2c Use zeroconf attributes in esphome (#58963)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-15 20:26:50 +01:00
epenet
3c42ea1a26 Use zeroconf attributes in forked-daapd (#58966)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-15 20:16:30 +01:00
Erik Montnemery
e88ea2d48c Show cast as playing when an app without media support is active (#59714) 2021-11-15 20:13:43 +01:00
Nathan Spencer
eaaa53d8d5 Add button to litterrobot (#59734) 2021-11-15 20:09:22 +01:00
epenet
ce9385d442 Use zeroconf attributes in elgato (#58958)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-15 20:04:21 +01:00
Daniel Hjelseth Høyer
0040606c65 Bump Tibber library to 0.21.0 (#59732) 2021-11-15 20:03:39 +01:00
Clifford Roche
811b33092b Bump greeclimate to 0.12.5 (#59730) 2021-11-15 19:32:50 +01:00
Austin Mroczek
49c4886f40 Fix totalconnect config flow (#59461)
* update total_connect_client to 2021.10

* update for total_connect_client changes

* remove unused return value

* bump total_connect_client to 2021.11.1

* bump total_connect_client to 2021.11.2

* Move to public ResultCode

* load locations to prevent 'unknown error occurred'

* add test for zero locations

* put error message in strings

* test for abort and message from strings

* handle AuthenticationError in step_user

* update tests with exceptions

* update reauth with exceptions

* use try except else per suggestion

* only create schema if necessary

* catch auth error in async_setup_entry

* one more fix in test_init
2021-11-15 11:32:35 -06:00
Simone Chemelli
5fc51130ea Replace util.get_local_ip in favor of components.network.async_get_source_ip() - part 4 (#58669)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-11-15 09:18:57 -08:00
epenet
b3ffc1e183 Adjust async_step_zeroconf signature for strict typing (#59503)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-15 18:05:45 +01:00
Arto Jantunen
5cc594682f Add unique id's to Vallox entities (#58459)
* Add unique id's to Vallox entities

* Cache uuid properties

Requested in code review.

Caching None isn't a problem as the underlying implementation of get_uuid
in the vallox_websocket_api library can never return None.

* Simplify get_uuid type check

Based on review comments.

* Set _attr_unique_id in init

* Import the library get_uuid under a different name

There are a few options here:

1. Rename the get_uuid method with a synonym
2. Import get_uuid under a different name
3. Convert get_uuid into a property
4. Rename get_uuid in the Vallox library

None of these options is that appealing. I'll start with option two,
anyways.
2021-11-15 10:28:19 -06:00
hesselonline
a4208c0926 Add Reauth flow to Wallbox integration (#58743)
* Add Reauth flow to Wallbox integration

* Review comments processed

* Fixed tests

* Added test for reauth invalid

* Commit to compensate for timedrift, show changes
Compensating for timedrift in my devcontainer,
making a new commit with the right date/time. Requested changes
were done in a previous commit.

* remove reauth schema

* Update homeassistant/components/wallbox/__init__.py

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-11-15 10:25:19 -06:00
hypnosiss
de16ce1857 Fix relative import in MySensors (#59710)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-11-15 16:14:49 +01:00
epenet
1e5c767158 Add button entities to Renault (#59383)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-15 15:50:43 +01:00
Erik Montnemery
81d1899094 Bump pychromecast to 9.4.0 (#59716) 2021-11-15 14:50:40 +01:00
epenet
a3885f4fda Add frequency device class for sensor (#59700)
Co-authored-by: Hedda <rockerc.harley@gmail.com>
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-15 14:33:50 +01:00
József Kertész
1b5d32514f Fix telnet fast state update (#59681) 2021-11-15 13:14:22 +01:00
Erik Montnemery
acf58111c6 Correct initial update of async_track_template_result (#59705) 2021-11-15 13:00:46 +01:00
Aaron Bach
5370dd8122 Bump simplisafe-python to 2021.11.0 (#59692) 2021-11-15 11:23:25 +01:00
J. Nick Koston
96f7b0d910 Use atomicwrites for mission critical core files (#59606) 2021-11-15 11:19:31 +01:00
Giel van Schijndel
04a258bf21 fix(luftdaten): air pressure is reported in pascal instead of hecto pascal (#59687) 2021-11-15 09:51:57 +01:00
Joakim Plate
c2d66956b0 Bump philips js to 2.7.6 (#59690) 2021-11-15 06:58:07 +01:00
Austin Mroczek
4963bb97d0 bump total_connect_client to 2021.11.4 (#59695) 2021-11-15 06:56:49 +01:00
GitHub Action
f0c9f443d1 [ci skip] Translation update 2021-11-15 00:12:46 +00:00
Allen Porter
0991a30125 Pre-factor nest subscriber to library (#59462)
* Pre-factor nest subscriber to library

Move the nest subscriber to a library that can be reused in a future PR:
- From ConfigFlow for creating subscriptions
- On nest removal to delete subscriptions

This is pulled out of PR #59260 to make that easier to review.

* Resolve pylint error in nest api subscriber

* Remove duplicate constants
2021-11-14 16:08:22 -08:00
Ryan Fleming
9c2bff3b3b Use octoprint printer flag status to check if printer is printing (#59663) 2021-11-14 21:06:42 +01:00
Franck Nijhof
9f2ec5c906 Upgrade wled to 0.10.0 (#59669)
* Upgrade wled to 0.10.0

* DeviceInfo expects a string, not a AwesomeVersion object
2021-11-14 21:03:00 +01:00
jjlawren
305d25b510 Set measurement entity_class for darksky temp & humidity (#59512) 2021-11-14 20:41:23 +01:00
Robert Hillis
85aeee7cc7 Add smartthings configuration_url (#58676) 2021-11-14 20:37:40 +01:00
Anton Malko
cd988bded0 Update aiolookin to 0.0.4 version (#59684) 2021-11-14 20:36:14 +01:00
Robert Svensson
c98172f9c1 Add typing to deCONZ Scene platform and deCONZ Services (#59603)
Co-authored-by: Matthias Alphart <farmio@alphart.net>
2021-11-14 19:47:15 +01:00
Aaron Bach
20fbb5b951 Perform some ReCollect Waste code cleanup (#58866) 2021-11-14 19:12:34 +01:00
Allen Porter
dbfe0cad52 Refactor nest test ConfigEntry setup in config flow tests (#59459)
* Refactor nest ConfigEntry creation in tests into a helper

This is pulled out of PR#59260 to make that overall diff smaller.

* Add typing consistently on new functions
2021-11-14 10:12:25 -08:00
Aaron Bach
03176dad7d Perform some IQVIA code cleanup (#58862) 2021-11-14 19:11:36 +01:00
Aaron Bach
24c899cf50 Perform some Flu Near You code cleanup (#58860) 2021-11-14 19:10:05 +01:00
Aaron Bach
595184aa55 Perform some Notion code cleanup (#58863) 2021-11-14 19:08:35 +01:00
Aaron Bach
5694250445 Perform some Guardian code cleanup (#58861) 2021-11-14 19:07:34 +01:00
Aaron Bach
198b18dd00 Perform some OpenUV code cleanup (#58864) 2021-11-14 19:06:27 +01:00
Aaron Bach
568df3d972 Perform some RainMachine code cleanup (#58865) 2021-11-14 19:05:38 +01:00
Peeter N
5b5b79f0e5 Set MaxCube Climate properties using class _attr_ properties (#58910) 2021-11-14 18:52:35 +01:00
flyize
70de7db197 Update surepetcare services.yaml (#58892) 2021-11-14 18:33:34 +01:00
JumpmanJunior
d9f3cff606 Fix IAD and vis for DS2438 1wire sensor (#59126)
* Fix vis and IAD for DS2438

* Fix IAD and vis for DS2438

* Fix IAD and vis for DS2438

* Fix IAD and vis for DS2438

* Fix IAD and vis for DS2438

* Fix IAD and vis for DS2438

* Fix IAD and vis for DS2438

* Fix IAD and vis for DS2438

* Fix IAD and vis for DS2438
2021-11-14 17:30:03 +01:00
Paulus Schoutsen
afa7ca1222 Drop block on local proxies from HA Cloud (#59334) 2021-11-14 08:11:12 -08:00
csgitmeup
26f3d50a32 Bump pykodi to 0.2.7 (#59251) 2021-11-14 17:06:06 +01:00
Michael
d5f85f393d Add entity categorisation to AVM Fritz!Smarthome devices (#59287) 2021-11-14 17:05:18 +01:00
Aidan Timson
5ec4a502b0 Check Honeywell Lyric token is valid before updating data (#59310) 2021-11-14 17:04:04 +01:00
Arthur Zapparoli
46160c2a89 Add Camila, a missing Amazon Polly voice for Brazilian Portuguese (#59346) 2021-11-14 17:00:33 +01:00
tizzen33
8b676f4252 Add Toon Humidity Sensor (#59488)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-11-14 16:59:09 +01:00
Robert Hillis
ee07e9b379 Fix unpatched timeout in gree config flow tests (#59449) 2021-11-14 16:57:50 +01:00
Stefan Agner
ed6c70a026 Pass exit code to s6-init (#59545) 2021-11-14 16:56:09 +01:00
Jesse Hills
e5129042ad Fix ESPHome state watching when new state is None (#59528) 2021-11-14 16:49:45 +01:00
J. Nick Koston
3175bca37d Bump flux_led to 0.24.21 (#59662) 2021-11-14 11:56:06 +01:00
Robert Svensson
2ca874a15c Add configuration_url to deCONZ device when entry source is addon (#59598) 2021-11-14 11:49:02 +01:00
Regev Brody
c6c8c1293f Bump pyezviz to 0.1.9.8 (#58873)
* always create sensors for ezviz

* fix ezviz sensors
2021-11-14 11:20:02 +01:00
Franck Nijhof
458bc92124 Add test coverage to Twente Milieu (#59640) 2021-11-14 11:11:29 +01:00
Sean Dague
da8bfed793 Remove mychevy component (#59629) 2021-11-14 11:09:32 +01:00
Joakim Sørensen
f596cb19fd Handle KeyError in getuser (#59667) 2021-11-14 10:53:19 +01:00
J. Nick Koston
c323815760 Ensure flux_led bulbs turn on even if brightness is 0 (#59661) 2021-11-13 21:55:23 -08:00
ericvb
570f80a73c Check early for empty passages in delijn (#59612)
* Add a check to verify if there is a passage

Late in the evening and at night, there can be no passages anymore, so check it to avoid an unnecessary exception

* One passage is enough! 

Requesting minimum 2 passages was an error due to counting from 1 and not zero

* Invert check and put it out of the try-catch code

Adding also the KeyError in the log message

* Clean up

* Putting comment in the correct python syntax

* Clean up

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-14 03:22:36 +01:00
Andrey Gorbunov
5860932635 Bump pymysensors to 0.22.1 (#59521)
* Bump pymysensors to 0.22.0 (#51265)

* Bump pymysensors to 0.22.1 (#51265)
2021-11-14 03:12:27 +01:00
GitHub Action
fc539da42b [ci skip] Translation update 2021-11-14 00:12:48 +00:00
Raphaël Beamonte
e42bb244b7 Add TP-Link LED control for Kasa plugs and strips (#59621) 2021-11-13 17:50:37 -06:00
Matthias Alphart
2fca5a4b55 Update xknx to 0.18.13 (#59658) 2021-11-14 00:05:32 +01:00
Keilin Bickar
f65af0f9d7 Update sense library version number (#59454) 2021-11-13 15:17:10 -06:00
RenierM26
6749930736 Switchbot "in memory" state for push mode switch (#58750)
* Add in memory state tracking to Switchbot switch.

* Switchbot assumed state

* Add in memory state when Bot is in push mode.

* Cleanup
2021-11-13 18:21:37 +01:00
J. Nick Koston
0ba45e4db4 Bump zeroconf to 0.36.13 (#59644)
- Closes #59415
- Fixes #58453
- Fixes #57678

- Changelog: https://github.com/jstasiak/python-zeroconf/compare/0.36.12...0.36.13
2021-11-13 18:18:54 +01:00
Clifford Roche
48024b6da0 Bump greecliamate to 0.12.4 (#59645) 2021-11-13 18:18:12 +01:00
Franck Nijhof
f3a308458f Upgrade pytest-timeout to 2.0.1 (#59646) 2021-11-13 18:09:10 +01:00
jugla
512bdac724 Air visual : robustness at startup when evaluate time interval (#59544) 2021-11-13 08:44:18 -07:00
Franck Nijhof
28a0ba4df3 Modernize/Simplify Twente Milieu (#59632) 2021-11-13 15:34:09 +01:00
Franck Nijhof
aa89c670eb Upgrade wled to 0.9.0 (#59635) 2021-11-13 15:26:57 +01:00
Yehuda Davis
b5de99ebfc Fix inverted tuya doorcontact_state (#59427) 2021-11-13 14:30:47 +01:00
Aaron Bach
b2f2c76e5a Fix broken Ambient PWS config entry migration (#59618) 2021-11-13 14:20:26 +01:00
Aaron Bach
303b6bc4f1 Add configuration URL for Ambient PWS (#59616) 2021-11-13 14:19:04 +01:00
Franck Nijhof
cce441332f Add button platform to Elgato (#59628)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-13 14:15:14 +01:00
Robert Hillis
68e80f1431 Remove yaml config from modem_callerid (#59526) 2021-11-13 14:14:49 +01:00
Aidan Timson
27b2aa04c9 Add System Bridge keyboard services (#53893)
* Add keyboard services

* Extract to voluptuous validator

* Cleanup

* Lint

* Catch StopIteration

* Match validator

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

* Raise from

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-13 13:45:42 +01:00
Allen Porter
8ce3f18295 Remove unused stream_type attribute (#59625)
Remove this stream type that was previously renamed to frontend_stream_type
2021-11-13 04:45:18 -08:00
Michael Kowalchuk
435e1fb092 Always use a step size of 1 for z-wave js fans (#59622) 2021-11-13 13:00:36 +01:00
Maciej Bieniek
8b6b4d7f8a Fix favorite RPM max value in Xiaomi Miio (#59631) 2021-11-13 12:59:48 +01:00
Franck Nijhof
c70f06be48 Upgrade twentemilieu to 0.4.2 (#59599) 2021-11-13 12:22:07 +01:00
Daniel Hjelseth Høyer
9d674af566 Bump open-garage to 0.2.0 (#59608)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-11-13 11:54:24 +01:00
J. Nick Koston
9769a8c08e Revert "Bump async_timeout to 4.0.1" (#59601) 2021-11-12 23:47:39 -08:00
GitHub Action
f00effaba2 [ci skip] Translation update 2021-11-13 00:11:56 +00:00
Daniel Hjelseth Høyer
49b0457172 Bump pyMetno to 0.9.0 (#59609) 2021-11-12 22:09:07 +01:00
Simone Chemelli
4cfac18e1a Fix firmware status check for Fritz (#59578) 2021-11-12 19:09:03 +01:00
Daniel Hjelseth Høyer
44ae0e214a Bump Adax library (#59592)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-11-12 19:07:35 +01:00
Daniel Hjelseth Høyer
7fff0a9865 Bump Airthings library (#59595)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-11-12 19:06:50 +01:00
Franck Nijhof
2841e402b9 Cleanup extra dict from hass data in Elgato (#59587) 2021-11-12 19:03:57 +02:00
Franck Nijhof
8249959eac Update elgato to 2.2.0 (#59585) 2021-11-12 15:43:19 +01:00
Franck Nijhof
5e6ad8977a Update vehicle to 0.2.0 (#59583) 2021-11-12 15:42:46 +01:00
Erik Montnemery
bcd9f3c05f Correct end time for monthly statistics summary (#59551)
* Correct end time for monthly statistics summary

* Add tests
2021-11-12 15:01:40 +01:00
j-stienstra
0ae5b9e880 Add Jellyfin integration (#44401)
* Initial commit after scaffold setup

* Add initial config flow

* Create initial entity

* Ready for testing

* Can browse, no result yet

* Further improvements. Browsing is working.
Now need to work on proper stream URL

* Two valid URLs. Do not play in HA

* First working version for music

* Add thumbnail

* Includes Artist->Album hierarchy

* Add sorting of artists, albums and tracks

* Remove code for video libraries

* Improved code styling

* Optimize configuration flow

* Fix unit tests for config flow

* Fix import order

* Conform to style requirements

* Use empty string as media type for non playables

* 100% code coverage config_flow

* Type async_get_media_source

* Final docsctring fix after rebase

* Add __init__ and media_source files to .coveragerc

* Fix testing issues after rebase

* Fix string format issues and relative const import

* Remove unused manifest entries

* Raise ConfigEntry exceptions, not log errors

* Upgrade dependency to avoid WARNING on startup

* Change to builtin tuple and list (deprecation)

* Log broad exceptions

* Add strict typing

* Further type fixes after rebase

* Retry when cannot connect, otherwise fail setup

* Remove unused CONFIG_SCHEMA

* Enable strict typing checks

* FlowResultDict -> FlowResult

* Code quality improvements

* Resolve mypy.ini merge conflict

* Use unique userid generated by Jellyfin

* Update homeassistant/components/jellyfin/config_flow.py

Remove connection class from config flow

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

* Minor changes for additional checks after rebase

* Remove title from string and translations

* Changes wrt review

* Fixes based on rebase and review suggestions

* Move client initialization to separate file

* Remove persistent_notification, add test const.py

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
2021-11-12 14:57:40 +01:00
Joakim Sørensen
733193b5ad Bump aiogithubapi from 21.8.0 to 21.11.0 (#59582) 2021-11-12 14:54:15 +01:00
Radu
c2f489266a Add ZigStar Zigbee Coordinator audodiscovery (#59559) 2021-11-12 08:04:22 -05:00
ollo69
21f92f6286 Add Nut device explicitly to the device registry (#59525)
* Add Nut device explicitly to the device registry

* Restore resources in data and remove unused string
2021-11-12 11:10:40 +01:00
Joakim Sørensen
363de37400 Override api url in norway_air (#59573) 2021-11-12 10:26:17 +01:00
Paulus Schoutsen
e30e4d5c6d Block cloud explicitely from trusted networks (#59333)
* Block cloud explicitely from trusted networks

* Lint
2021-11-12 10:25:01 +01:00
Joakim Sørensen
13067003cb Fix issue with ranges in requirements with hassfest (#59470)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-12 09:39:30 +01:00
Paulus Schoutsen
6ef64f6b1c Fix CORS error in emulated_hue (#59570) 2021-11-11 22:11:41 -08:00
J. Nick Koston
8de0c7204a Bump async_timeout to 4.0.1 (#59565) 2021-11-11 21:13:15 -08:00
J. Nick Koston
5d2eb8d3ff Add tilt support to bond covers (#59505) 2021-11-11 19:31:58 -08:00
Franck Nijhof
beb0650a81 Upgrade coverage to 6.1.2 (#59530) 2021-11-12 02:31:00 +01:00
Ricardo Steijn
715aa86a35 Bump crownstone-cloud to v1.4.9 (#59500) 2021-11-12 01:29:00 +01:00
GitHub Action
3f2b1fa952 [ci skip] Translation update 2021-11-12 00:12:35 +00:00
Paulus Schoutsen
6f3f16dbc9 Merge pull request #59555 from home-assistant/rc 2021-11-11 13:48:35 -08:00
Matthias Alphart
00b1c2bb70 Fix KNX climate entities hvac action without controller_mode (#59522)
* fix hvac action for climate entities without controller_mode

* Update homeassistant/components/knx/climate.py

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>
2021-11-11 19:39:57 +01:00
Erik Montnemery
d1ee041997 Test sensor unit conversion (#59546) 2021-11-11 10:36:53 -08:00
Paulus Schoutsen
4cae92a533 Bumped version to 2021.11.3 2021-11-11 10:33:14 -08:00
uvjustin
0f0ca36aa8 Remove incomplete segment on stream restart (#59532) 2021-11-11 10:33:10 -08:00
Sergiy Maysak
04e1dc3a10 Fix wirelesstag switch arm/disarm (#59515) 2021-11-11 10:32:55 -08:00
Diogo Gomes
9cb4a5ca39 Ignore None state in state_change_event (#59485) 2021-11-11 10:31:39 -08:00
J. Nick Koston
c2f227bf16 Fix zeroconf with sonos v1 firmware (#59460) 2021-11-11 10:31:39 -08:00
Bram Kragten
66c5d75fbb Update frontend to 20211109.0 (#59451) 2021-11-11 10:31:38 -08:00
Keilin Bickar
aacc0edde7 Fix state of sense net_production sensor (#59391) 2021-11-11 10:31:37 -08:00
enegaard
5336845452 Fix rpi_camera setup hanging on initialization (#59316) 2021-11-11 10:31:36 -08:00
Pascal Vizeli
6636287c59 Bump cryptography 35.0.0 (#59541) 2021-11-11 18:27:22 +01:00
uvjustin
9ea338c121 Remove incomplete segment on stream restart (#59532) 2021-11-12 00:59:13 +08:00
Thomas Dietrich
90ee1f4783 Add available property to statistics component (#59203)
* Add available property to the statistics component

* Add test for statistics sensor availability

* Clean up availability check

* Improve statistics source sensor tests

* Revert variable rename

* Improve comments
2021-11-11 17:16:59 +01:00
epenet
4ecbfe8646 Drop STEP_ID constants from data_entry_flow (#59497)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-11 16:28:46 +01:00
Maikel Punie
6a21b241c0 Velbus typing part 2 (#59148) 2021-11-11 13:46:35 +01:00
Jonathan Keljo
a079b4fd58 Add tests to bring greeneye_monitor to 99% coverage (#58661)
* Bring greeneye_monitor to 99% coverage.

* Pass monitor into listeners on Monitors

* Updates for changes in `dev`, create mock monitor

* Remove logging left in after debugging

* Remove xfails now that #58764 has merged
2021-11-11 13:20:16 +01:00
Erik Montnemery
a29264518c Don't allow turning on audio only chromecasts (#59495)
* Don't allow turning on audio only chromecasts

* Improve tests

* Adjust tests
2021-11-11 12:33:15 +01:00
Erik Montnemery
85786fd987 Make some device action tests more explicit (#59469)
* Make some device action tests more explicit

* Adjust tests
2021-11-11 12:32:51 +01:00
Erik Montnemery
731bec3145 Improve test coverage (#59531) 2021-11-11 10:25:23 +01:00
Keilin Bickar
7098260dee Fix state of sense net_production sensor (#59391) 2021-11-11 08:49:07 +01:00
Guess
2a99ef2046 Set PARALLEL_UPDATES for ping binary sensor (#59524)
Changing PARALLEL_UPDATES from 0 (unlimited) to 50 as with many sensors (above 500) successful pings weren't being recorded. Resolves https://github.com/home-assistant/core/issues/54860
2021-11-11 08:38:01 +01:00
Erik Montnemery
65b1f0d9eb Minor refactor of energy validator (#58209) 2021-11-10 22:38:15 -08:00
Erik Montnemery
5f8997471d Minor refactor of template sensor (#59466) 2021-11-10 22:34:49 -08:00
Erik Montnemery
a14131a679 Suppress media status when the lovelace cast app is active (#59481)
Co-authored-by: Bram Kragten <mail@bramkragten.nl>
2021-11-10 22:33:07 -08:00
Diogo Gomes
ec9b5df7b3 Ignore None state in state_change_event (#59485) 2021-11-10 22:31:56 -08:00
J. Nick Koston
cab9f821a1 Fix zeroconf with sonos v1 firmware (#59460) 2021-11-10 22:31:08 -08:00
Matthias Alphart
f8f060b72b Make util.color._match_max_scale public (#59207) 2021-11-10 22:29:16 -08:00
Franck Nijhof
61e4ebf155 Add button entity platform (restart button) to WLED (#59086)
Co-authored-by: Tom Brien <TomBrien@users.noreply.github.com>
2021-11-10 22:22:52 -08:00
Franck Nijhof
8447bbf5f0 Add binary sensor platform to RDW Vehicle information (#59253) 2021-11-10 22:22:18 -08:00
Franck Nijhof
fae6c6fda1 Upgrade pyupgrade to v2.29.0 (#59499) 2021-11-10 22:21:43 -08:00
J. Nick Koston
ebb25ab0e6 Make yaml file writes safer (#59384) 2021-11-10 22:19:56 -08:00
J. Nick Koston
751098c220 Bump sqlalchemy to 1.4.26 (#59527) 2021-11-10 20:01:59 -08:00
Sergiy Maysak
6bb816d226 Fix wirelesstag switch arm/disarm (#59515) 2021-11-11 02:21:29 +01:00
GitHub Action
34bc1298aa [ci skip] Translation update 2021-11-11 00:15:23 +00:00
Matthias Alphart
4e1958c1bd Add Button platform to KNX integration (#59082)
* add button platform

* default values for payload and payload_length

* allow `type` configuration for encoded payloads

* add test for type configuration

* move common constants to const.py

- CONF_PAYLOAD
- CONF_PAYLOAD_LENGTH

* validate payload for payload_length or type

* c&p errors

* fix unique_id and pylint

* fix validator
2021-11-10 20:34:35 +01:00
Bram Kragten
47b6755177 Google Cast: Use own media player app (#55524) 2021-11-10 19:40:49 +01:00
Nicolas Mowen
20f0a6730b Gogogate2 Battery Sensor Should Use % Unit For Compatibility (#59434) 2021-11-10 11:58:54 -06:00
epenet
ab1e14204f Rename zeroconf service info (#59467)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-10 15:26:47 +01:00
ollo69
6cba03aa4a Remove resources selection from Nut config flow (#59450)
* Remove resources selection from Nut config flow

* Code clean-up

* Requested changes

* Apply suggestions from code review

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-10 13:49:05 +01:00
Aidan Timson
c03fdd5da6 Add Azure DevOps coordinator and entity description (#54978)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
Co-authored-by: Ludeeus <ludeeus@ludeeus.dev>
2021-11-10 11:49:04 +01:00
Franck Nijhof
1910c0566c Upgrade jinja2 to 3.0.3 (#59468) 2021-11-10 11:04:42 +01:00
Tim Rightnour
93395f9b68 Add support for PRESSURE_CBAR (centibars) (#58762)
* Add support for PRESSURE_CBAR (centibars).  This is the standard UOM for tensiometers.

While the data could be converted into something like MBAR, and displayed
like that, the correct UOM for this type of sensor is CBAR.  Displaying
it as MBAR would be the same as displaying air pressure as feet of Hg, while
technically correct, it's hard to understand when reading.

Adding support for this UOM will fix errors in the UI(statistics) about the unit not
matching a unit of the device_class.

* Add tests for PRESSURE_CBAR
2021-11-10 09:44:05 +01:00
Oliver Gruß
eec84ad71e Mqtt cover toggle add stop function (#59233)
* Change existing toggle to add new function

* Fixed using old property method to using actual protected variable.

* Adding service tests to new cover toggle function

* Working on comments from Pull Request 59233

* Adjust existing tests to fit new fake cover setup

* MockCover is calling state method of MockEntity but should call it from CoverEntity

* using different entity to get back test coverage
2021-11-10 09:03:20 +01:00
Allen Porter
01fe69511f Bump google-nest-sdm to 0.3.9 (#59458) 2021-11-10 08:29:33 +01:00
enegaard
2ae77bd231 Fix rpi_camera setup hanging on initialization (#59316) 2021-11-10 08:14:16 +01:00
Erik Montnemery
e20127d9ff Minor refactor of template binary sensor (#59432)
* Minor refactor of template binary sensor

* pylint

* Tweak
2021-11-10 07:58:22 +01:00
ollo69
cde6e007bf Remove 'UnicodeDecodeError' exception in AsusWrt (#59447) 2021-11-10 07:53:05 +01:00
Ville Skyttä
4273e5b507 Huawei LTE sensor updates (#59374)
* Add human readable name for eNodeB ID

* Mark various config and diagnostic sensors' entity category as such

* Add uptime sensor
2021-11-10 08:49:50 +02:00
kreene1987
1ea092a54f Allow dict as input to zwave_js.set_value service (#59370)
* Original service data as a dict

Fixes per recommendation in #57336.

* Update homeassistant/components/zwave_js/const.py

agree, thanks

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2021-11-10 07:08:43 +01:00
Ryan Fleming
5e2d71dc90 Use unknown state for octoprint temperature sensors with None value (#59130)
* Mark octoprint temperature sensors as unavaible when value is not supplied

* Check for none explictly

* Do not mark the entity as unavailable

* Swap to using er.get_async
2021-11-10 05:52:29 +01:00
GitHub Action
86b12af3dc [ci skip] Translation update 2021-11-10 00:17:39 +00:00
Bram Kragten
4481fe11c4 Update frontend to 20211109.0 (#59451) 2021-11-09 14:40:21 -08:00
Franck Nijhof
dcafee5c97 Upgrade pipdeptree to 2.2.0 (#59438) 2021-11-09 22:05:01 +01:00
Robert Hillis
66f49d1826 Bump goalzero to 0.2.1 (#59437) 2021-11-09 21:46:44 +01:00
Robert Hillis
0c83a3284c Bump pyefergy to 0.1.5 (#59439) 2021-11-09 21:45:14 +01:00
puddly
004d88caad Bump zigpy-znp from 0.5.4 to 0.6.1 (#59442) 2021-11-09 15:12:17 -05:00
Franck Nijhof
11da932455 Upgrade debugpy to 1.5.1 (#59436) 2021-11-09 15:12:04 -05:00
Franck Nijhof
ca2f343c51 Upgrade colorlog to 6.6.0 (#59440) 2021-11-09 21:30:23 +02:00
Bram Kragten
28c07f5c43 Fix CORS (#59360)
* Fix CORS

* rename

* Update view.py
2021-11-09 18:30:51 +01:00
epenet
7e81c6a591 Move onewire device compatibility checks (#59338)
* Move device compatibility checks to onewirehub

* Add test for dtoverlay warning

* Add tests for unknown device warning

* Move dtoverlay error

* Empty commit to retrigger tests

* Update description

* Patch asyncio.sleep to speed up the tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-09 18:30:05 +01:00
Martin Hjelmare
d5fcf0b622 Add zwave_js binary sensor entity category (#58703)
* Add zwave_js binary sensor entity category

* Handle non idle notification state

* Fix door state

* Fix duplicate door state description

* Add tests
2021-11-09 18:26:34 +01:00
Thanasis
4b228e3add Add entity categories to most NUT entities (#58798)
* Add entity cateogories to most NUT entites

* changes to categories
2021-11-09 18:25:19 +01:00
Gábor Kiss
032786fcd8 Improve Shelly color mode switch for dual mode bulbs (#58971)
* Shelly color mode switch for SHCB-1

* Update light.py

* Update light.py

* Update homeassistant/components/shelly/light.py

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

* Update light.py

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2021-11-09 18:24:40 +01:00
Brent Petit
59a0e5a773 Update python-ecobee-api to 0.2.14 (#59381) 2021-11-09 18:23:03 +01:00
Joakim Sørensen
355b3c2c3d Bump pytraccar from 0.9.0 to 0.10.0 (#59429) 2021-11-09 18:20:34 +01:00
Joakim Sørensen
36ebbef243 Bump pytautulli from 21.10.0 to 21.11.0 (#59426) 2021-11-09 18:02:50 +01:00
Bram Kragten
6e7712da3c Add periods to statistics_during_period ws (#59425) 2021-11-09 17:29:39 +01:00
Erik Montnemery
3d909b00d5 Remove unneeded dynamic lookup of domain (#59423) 2021-11-09 07:41:45 -08:00
Joakim Sørensen
d05c80c8e4 Bump pylaunches from 1.0.0 to 1.2.0 (#59420) 2021-11-09 16:22:11 +01:00
jan iversen
ad91e4b417 Simplify setup of tradfri entities (#59343)
* Simplify detection of devices.
2021-11-09 15:18:13 +01:00
Joakim Sørensen
5177fabee0 Bump pyuptimerobot from 21.9.0 to 21.11.0 (#59418) 2021-11-09 14:50:35 +01:00
Joakim Sørensen
56b1f26e7d Bump pycfdns from 1.2.1 to 1.2.2 (#59416) 2021-11-09 14:49:45 +01:00
Ville Skyttä
51510c542a Remove const.HTTP_* status constants (#58380) 2021-11-09 13:01:46 +01:00
jan iversen
06d29040b9 Catch connection errors that makes tradfri hang in startup (#59368) 2021-11-09 13:00:50 +01:00
Tom Brien
fc58df6df9 Change Coinbase account state class to total (#59404) 2021-11-09 13:00:12 +01:00
Duco Sebel
62e7b0b887 Add category diagnostic to Switchbot 'calibrated' binary sensor (#59409) 2021-11-09 12:59:50 +01:00
Erik Montnemery
23fad60769 Don't use template in cover device condition (#59408) 2021-11-09 12:43:21 +01:00
Erik Montnemery
b5ce84cd89 Add MQTT button (#59348) 2021-11-09 12:04:14 +01:00
Robert Hillis
4c2bf428d6 Revert "Add tests for goalzero" (#59407) 2021-11-09 12:01:12 +01:00
Erik Montnemery
ff837c736e Return False from state conditions on missing attributes (#59405) 2021-11-09 11:34:18 +01:00
Chen-IL
2fd6400952 Bump aioasuswrt to 1.4.0 (#59357) 2021-11-09 11:17:48 +01:00
John Howard
7e9863f9c8 Removing trailing \ in tts entity description (#59313) 2021-11-09 10:51:54 +01:00
lambtho
5418e76c84 IOTA removal (#59380) 2021-11-09 10:40:28 +01:00
epenet
d226df2511 Dyson removal (#59401)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-09 10:38:51 +01:00
rianadon
a102c425a9 Add speed conversion function & add speed to units system (#53846)
* Add speed conversion function

* Add test for speed utility functions

* Update unit system tests

* Fix incorrect unit conversions in tests

* Fix some test errors

* Calculate speed units from smaller set of constants

* Fix typo in speed test

* Use pytest.approx for checking floating point values

* Change other instance of speeds needing to be pytest.approx

* Revert changes to unit system

* Fix oopsie in defining in/day and in/hr

* Parametrize test

* Add comments describing calculations & remove duplicate test
2021-11-09 08:12:28 +01:00
Tom Brien
f46ba2b38b Add state class to Coinbase sensors (#59109) 2021-11-09 07:28:39 +01:00
RenierM26
121a0915bc Switchbot bump api version (#59398)
* Bump Switchbot api for reliability improvements.

* Bump api version, update mock test import to reflect api data changes.
2021-11-09 07:01:05 +01:00
RenierM26
012e005e0d Store SB data Class. (#59266) 2021-11-09 07:00:51 +01:00
Aidan Timson
4e59e6c9a7 System Bridge - Handle OSError for switched off devices (#59312) 2021-11-08 21:46:33 -08:00
Paulus Schoutsen
435f278053 Merge pull request #59397 from home-assistant/rc 2021-11-08 21:44:29 -08:00
Robert Hillis
cc872b4618 Add tests for goalzero (#57008)
* Add tests for goalzero

* clean up
2021-11-08 21:29:25 -08:00
Paulus Schoutsen
4d62d41cc1 Bumped version to 2021.11.2 2021-11-08 20:48:00 -08:00
Bram Kragten
a6d795fce1 Update frontend to 20211108.0 (#59364) 2021-11-08 20:47:52 -08:00
Maikel Punie
0f4a35dd28 Bump velbusaio to 2021.11.6 (#59353) 2021-11-08 20:47:51 -08:00
Erik Montnemery
6d3e380f64 Bump paho-mqtt to 1.6.1 (#59339) 2021-11-08 20:47:51 -08:00
Kevin Hellemun
0873c3e92b Support generic xiaomi_miio vacuums (#59317)
* Support generic xiaomi_miio vacuums

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

* Fix lint

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

* Remove warning log

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

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

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

- Fixes #59190

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

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

* update for total_connect_client changes

* remove unused return value

* bump total_connect_client to 2021.11.1

* bump total_connect_client to 2021.11.2

* Move to public ResultCode

* load locations to prevent 'unknown error occurred'

* add test for zero locations

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

This reverts commit 28b8984be5b1c8839fc8077d8d59bdba97eacc38.

* Revert "add test for zero locations"

This reverts commit 77bf7908d508d539d6165fc986930b041b13ca97.
2021-11-08 20:47:39 -08:00
Michael
a22a966fac Increase timeout for fetching camera data on Synology DSM (#59237) 2021-11-08 20:42:20 -08:00
GitHub Action
a989fd2e66 [ci skip] Translation update 2021-11-09 00:15:20 +00:00
epenet
cf22bd8807 Use zeroconf attributes in freebox (#58967)
* Use zeroconf attributes in freebox

* Use zeroconf.HaServiceInfo in tests
2021-11-09 00:27:36 +01:00
Thomas Dietrich
9eaf8bd21b Fix statistics precision handling (#59202)
* Fix statistics precision error when configured 0, fix #42547

* Add tests for statistics precision

* Apply precision=0 logic to float numbers only

* Implement contextlib way of exception handling
2021-11-08 23:26:00 +01:00
Thomas Dietrich
2924f4605b Fix statistics startup error for None value states (#59199)
* Catch statistics startup error for None value states, fix #49254

* Add test for statistics None handling

* Update tests/components/statistics/test_sensor.py

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

* Switch test case logic to remove sensor last

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-08 23:25:19 +01:00
Kevin Hellemun
20b93132dd Support generic xiaomi_miio vacuums (#59317)
* Support generic xiaomi_miio vacuums

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

* Fix lint

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

* Remove warning log

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>
2021-11-08 23:13:00 +01:00
Maikel Punie
bb1203c61d Bump velbusaio to 2021.11.6 (#59353) 2021-11-08 21:56:17 +01:00
Bram Kragten
69da2b29e6 Update frontend to 20211108.0 (#59364) 2021-11-08 12:45:40 -08:00
Shay Levy
adfbcfa704 Add Shelly Gen1 beta_version attribute to firmware update sensor (#59359) 2021-11-08 21:47:01 +02:00
Shay Levy
4ac7dfc983 Cleanup Shelly light - use separate sets for dual mode and effects (#59363) 2021-11-08 21:46:23 +02:00
jan iversen
ac354ecff5 Bump pytradfri to v7.2.0. (#59342) 2021-11-08 20:20:19 +01:00
Piotr Majkrzak
80f1e8770a Add Water Content Measurement clusters (#59300)
* Add Water Content Measurement clusters

* Fix typo

* Add device test

Co-authored-by: Alexei Chetroi <lexoid@gmail.com>
2021-11-08 13:13:35 -05:00
jan iversen
2b68b9292c Set tradfri entities to non-available when hub is not available (#59278)
* Set available when needed.

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-08 18:41:25 +01:00
Erik Montnemery
7b9715bec3 Bump paho-mqtt to 1.6.1 (#59339) 2021-11-08 18:16:44 +01:00
Aidan Timson
875aecd4e2 System Bridge - Add configuration URL (#59320) 2021-11-08 09:09:08 -08:00
Paulus Schoutsen
296f678d52 Add Evil Genius Labs integration (#58720)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-08 08:56:27 -08:00
epenet
089353e949 Use DeviceInfo in velbus (#58622) 2021-11-08 10:26:00 -06:00
Michael
0edb0c9bc9 Correct name of end apc sensor (#59200) 2021-11-08 16:08:07 +01:00
Chris Browet
4224cb043b Allow overriding ensure_ascii in the "to_json" template filter (#54527)
* FIX: "ensureascii" to to_json

* fixup: parameter name
2021-11-08 15:49:10 +01:00
Damien Duboeuf
67c2747027 Add MQTT object_id option (#58728)
* Add MQTT object_id option

* Add MQTT object_id option

* Add MQTT object_id option

* Add MQTT object_id option - Fix light and vacuum

* Add MQTT object_id option - Fix light and vacuum

* Add MQTT object_id option - Fix lock

* Add MQTT object_id option - Fix device

* Add MQTT object_id option - Fix device

* Update tests/components/mqtt/test_discovery.py

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

* Change deprecated method

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-08 14:02:18 +01:00
chriss158
5151c4d99b Add long-term statistics support for homematic sensors (#57396)
* Add long-term statistics support for homematic

* Refactor cast list to SensorEntityDescription dict

Additional:
- Gas power, gas energy counter, air pressure and voltage uses long-term-statistics
- Gas power, gas energy counter uses device class gas
- Voltage uses device class voltage
- air pressure uses device class pressure

* Refactor expensive loop to separate dictionarys

* Use entity description property + fix humidity sensor

* Log missing sensor descriptions

* Use state class measurement for illumination sensors

* Move sensor entity desc missing warning to setup_platform

* Set type for hmdevice and homematic to fix mypy error

* Use EntityDescription instead of SensorEntityDescription

* Update entity.py

* fix type

* Update climate.py

* fix v2

Co-authored-by: Pascal Vizeli <pascal.vizeli@syshack.ch>
2021-11-08 11:40:01 +01:00
Brett Adams
9241d80730 Change zone HVAC mode in Advantage Air (#52816)
* Change "on" HVAC mode to auto fixing #48466

* Use HEAT_COOL instead

* Add missing HVAC_MODE_HEAT_COOL
2021-11-07 19:20:01 -08:00
J. Nick Koston
977b3cbe98 Improve support for flux_led pixel/RBM controllers (#59325)
* Fetch flux_led effects from library

- Each model can have different effects

* Improve support for flux_led pixel/RBM controllers

- RBM effects 1-100 are now available

* empty
2021-11-07 19:13:42 -08:00
Alexei Chetroi
958c588a19 Bump up ZHA dependencies (#59314) 2021-11-07 19:06:22 -08:00
GitHub Action
e35b83081e [ci skip] Translation update 2021-11-08 00:12:31 +00:00
Jim Shank
563eba7684 Clean up transmission empty containers evaluation (#59304) 2021-11-08 01:06:56 +01:00
Aaron Bach
8ebd47b430 Guard against flaky SimpliSafe API calls (#59175) 2021-11-07 15:34:25 -08:00
Austin Mroczek
72aaeda8a0 Bump total_connect_client to 2021.11.2 (#58818)
* update total_connect_client to 2021.10

* update for total_connect_client changes

* remove unused return value

* bump total_connect_client to 2021.11.1

* bump total_connect_client to 2021.11.2

* Move to public ResultCode

* load locations to prevent 'unknown error occurred'

* add test for zero locations

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

This reverts commit 28b8984be5b1c8839fc8077d8d59bdba97eacc38.

* Revert "add test for zero locations"

This reverts commit 77bf7908d508d539d6165fc986930b041b13ca97.
2021-11-07 15:30:34 -08:00
Shay Levy
55cd1ffb7c Revert "Use DeviceInfo in shelly (#58520)" (#59315)
This reverts commit df6351f86b.
2021-11-07 15:29:29 -08:00
Maciej Bieniek
c85db9a39d Remove illuminance sensor (#59305) 2021-11-07 23:17:15 +01:00
Alexei Chetroi
cc82976d15 Add Battery sensor regardless if the battery_percent_remaining attribute is supported or not (#59264) 2021-11-07 12:53:28 -05:00
J. Nick Koston
b75476e844 Add support for matching the zeroconf model property (#58922) 2021-11-07 07:44:15 -08:00
Franck Nijhof
ddf0941275 Upgrade async-upnp-client to 0.22.12 (#59284) 2021-11-07 07:41:26 -08:00
micha91
37259a1448 Fix udp ports (#59293) 2021-11-07 07:38:12 -08:00
Marc Mueller
ae1592b27a Fix typing issues - wallbox.number (#59286) 2021-11-07 15:57:34 +01:00
Simone Chemelli
c6a1fe0a5d Fix condition for fritz integration (#59281) 2021-11-07 15:17:50 +01:00
mezz64
8dd7e4a39b Bump pyEmby to 1.8 (#59267) 2021-11-07 10:35:50 +01:00
GitHub Action
332a571bb4 [ci skip] Translation update 2021-11-07 00:12:38 +00:00
Antoni Różański
9aec8f61d7 Rewrite signal_messenger unittest to pytest (#57777)
* convert signal messenger unittest to pytest

* more fixtures

* more assertions and fixed test attachment sending

* reverted unrelated changes

* fixed flake errors

* Flake8 related issues fixed

* HHTPStatus instead of int
2021-11-06 23:36:59 +01:00
Aaron Bach
3d0d038597 Guard against missing data in ReCollect Waste (#59177) 2021-11-06 21:10:58 +01:00
Marvin Wichmann
c5b5c8c3ce Remove deprecated usages of HomeAssistantType (#59241) 2021-11-06 19:48:02 +01:00
Franck Nijhof
fdf1bfa140 Add RDW Vehicle information integration (#59240) 2021-11-06 19:34:51 +01:00
Matthias Alphart
fc7d4ed118 Add decoded telegram payload to knx_event service (#57621)
* decode knx_event telegram payload with given dpt

* exception handling for invalid payloads

* Update homeassistant/components/knx/__init__.py

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>
2021-11-06 19:31:25 +01:00
Aaron Bach
2e4ee487c1 Address post-merge Ridwell code review (#58857) 2021-11-06 10:11:00 -06:00
Guido Schmitz
7abf79d1f9 Fix typing in devolo Home Network (#59238) 2021-11-06 16:49:51 +01:00
jan iversen
933ad5ae49 Fix tradfri group reachable access (#59217) 2021-11-06 16:46:51 +01:00
Franck Nijhof
af521c0a35 Upgrade numpy to 1.21.4 (#59188)
Co-authored-by: Marvin Wichmann <marvin.wichmann@unic.com>
2021-11-06 16:43:29 +01:00
Michael
6a149706ab add constant CONF_SLEEP_PERIOD (#59195) 2021-11-06 17:32:58 +02:00
J. Nick Koston
a9c5f68d64 Reduce code duplication in gogogate2 (#59165) 2021-11-06 14:13:48 +01:00
Tobias Sauerwein
59ae35892c Bump RMVtransport to v0.3.3 (#59210) 2021-11-06 13:40:45 +01:00
J. Nick Koston
23f0afa789 Bump flux_led to 0.24.17 (#59211)
* Bump flux_led to 0.24.16

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

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

- Fixes #59190

* Bump to .17 to fix typing
2021-11-06 13:34:10 +01:00
Aidan Timson
15636a4fe4 Bump systembridge to v2.2.1 (#59229) 2021-11-06 13:32:20 +01:00
Aidan Timson
66bdbbff45 Bump aiolyric to v1.0.8 (#59228) 2021-11-06 13:31:06 +01:00
Michael
2a05697c91 bump aioshelly to 1.0.4 (#59209) 2021-11-06 12:50:53 +01:00
Robert Hillis
aaaae6abca Bump pyefergy to 0.1.4 (#59219) 2021-11-06 11:53:34 +01:00
uvjustin
3693b9bd04 Adjust frag_duration setting in stream (#59135) 2021-11-05 18:54:51 -07:00
GitHub Action
7b59dea67e [ci skip] Translation update 2021-11-06 00:11:41 +00:00
Marvin Wichmann
8a1d80c609 Fix regression after merging fixtures with old path (#59187)
* Fix regression after merging old fixtures

* Move to symo
2021-11-05 21:10:55 +01:00
Aaron Bach
6145ee97cb Change ReCollect Waste device class to date (#59180) 2021-11-05 20:29:12 +01:00
Matthias Alphart
d2ffecbca4 Tests for the Fronius integration (#57269)
* tests for a Symo inverter system

* update testing requirement

* add tests for energy meter data

* move response JSONs to fixture directory

* add storage system response

* review suggestion
2021-11-05 19:27:17 +01:00
Peter Nijssen
d384feb87f Add configuration URL to Spider (#59171) 2021-11-05 19:11:30 +01:00
J. Nick Koston
2d48f4b65e Bump flux_led to 0.24.15 (#59159)
- Changes: https://github.com/Danielhiversen/flux_led/compare/0.24.14...0.24.15

- Fixes color reporting for addressable devices
2021-11-05 11:27:52 -04:00
Aaron Bach
dd0537054a Bump aioguardian to 2021.11.0 (#59161) 2021-11-05 11:27:35 -04:00
Martin Hjelmare
30cba6ee8b Add zwave_js select entity category (#59157)
* Set zwave_js select entity as category config

* Update tests
2021-11-05 10:31:51 -04:00
Marvin Wichmann
6a0c1a78aa Address venstar review comments (#59151)
* Address venstar review comments

* Apply review suggestions

* Address review suggestions
2021-11-05 10:31:32 -04:00
Martin Hjelmare
c0801c1233 Type vlc_telnet strictly (#59154) 2021-11-05 14:42:08 +01:00
Guido Schmitz
442d65e8da Use entity category in devolo Home Control (#59104)
* Use entity category

* Add tests
2021-11-05 13:11:48 +01:00
Joakim Sørensen
d709fcdd30 Bump pyhaversion from 21.10.0 to 21.11.1 (#59147) 2021-11-05 12:03:00 +01:00
Tim Rightnour
5ac55b3443 Add binary_sensor to venstar to track alerts (#58831)
* Add binary_sensor to venstar to track alerts

* Add binary_sensor.py to coveragerc

* Apply suggestions from code review by alengwenus

Co-authored-by: Andre Lengwenus <alengwenus@gmail.com>

* Fixup black any mypy complaints

* Yank the typing, it makes everything complain

Co-authored-by: Andre Lengwenus <alengwenus@gmail.com>
2021-11-05 12:00:57 +01:00
J. Nick Koston
8b25bd0cea Bump zeroconf to 0.36.12 (#59133)
- Changelog: https://github.com/jstasiak/python-zeroconf/compare/0.36.11...0.36.12

Bugfix: Prevent service lookups from deadlocking if time abruptly moves backwards
2021-11-05 11:22:59 +01:00
Erik Montnemery
e5ee38d3b0 Adjust recorder tests according to #59087 (#59143) 2021-11-05 10:49:58 +01:00
Erik Montnemery
470b01e4ce Move async_migration_in_progress (#59087) 2021-11-05 10:40:56 +01:00
epenet
8cc2f3b7a4 Use zeroconf attributes in enphase-envoy (#58961) 2021-11-05 00:34:10 -05:00
Paulus Schoutsen
2c21f0ad18 Merge pull request #59129 from home-assistant/rc 2021-11-04 21:57:54 -07:00
Erik Montnemery
185f7beafc Improve recorder migration tests (#59075) 2021-11-04 20:21:38 -07:00
Paulus Schoutsen
189677c713 Bumped version to 2021.11.1 2021-11-04 20:14:07 -07:00
J. Nick Koston
039e361bff Bump flux_led to 0.24.14 (#59121) 2021-11-04 20:13:54 -07:00
Erik Montnemery
61918e0e44 Correct rescheduling of ExternalStatisticsTask (#59076) 2021-11-04 20:13:53 -07:00
Erik Montnemery
d9d8b538b0 Change minimum supported SQLite version to 3.31.0 (#59073) 2021-11-04 20:13:52 -07:00
Teemu R
c3882d0782 Remove use_time sensor from mjjsq humidifers (#59066) 2021-11-04 20:13:51 -07:00
Franck Nijhof
c6d651e283 Increase time to authorize OctoPrint (#59051) 2021-11-04 20:13:51 -07:00
Erik Montnemery
543381b6f2 Correct migration to recorder schema 22 (#59048) 2021-11-04 20:13:50 -07:00
Franck Nijhof
433743b0d1 Constrain urllib3 to >=1.26.5 (#59043) 2021-11-04 20:13:49 -07:00
Maikel Punie
58d88c8371 Bump velbus-aio to 2021.11.0 (#59040) 2021-11-04 20:13:49 -07:00
Glenn Waters
6e08cb815b Environment Canada config_flow fix (#59029) 2021-11-04 20:13:48 -07:00
ollo69
b125e2c425 Fix Nut resources option migration (#59020)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-04 20:13:47 -07:00
Teemu R
c4aa6af953 Accept all roborock vacuum models for xiaomi_miio (#59018) 2021-11-04 20:13:46 -07:00
Eugenio Panadero
dcf6004166 Bump aiopvpc to 2.2.1 (#59008)
happening because some config change in the ESIOS API server,
solved with a version patch in aiopvpc
(details in https://github.com/azogue/aiopvpc/pull/28)
2021-11-04 20:13:45 -07:00
Teemu R
af28d927b4 Fix timedelta-based sensors for xiaomi_miio (#58995) 2021-11-04 20:13:44 -07:00
Kevin Hellemun
5e6cac3834 Fix mop attribute for unified mop and water box in Xiaomi Miio (#58990)
Co-authored-by: Teemu R. <tpr@iki.fi>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-04 20:13:43 -07:00
Thomas G
397f303d6d Swap sharkiq vacuum is_docked with is_charging (#58975) 2021-11-04 20:13:43 -07:00
Erik Montnemery
dc1edc98fc Remove unused KeywordStyleAdapter (#59091) 2021-11-04 20:12:21 -07:00
Glenn Waters
ca00551e4f Environment Canada config_flow fix (#59029) 2021-11-04 20:11:22 -07:00
J. Nick Koston
e57c60bb2f Bump flux_led to 0.24.14 (#59121) 2021-11-04 20:10:47 -07:00
GitHub Action
c8d8513a1a [ci skip] Translation update 2021-11-05 00:13:45 +00:00
Allen Porter
fa4e890696 Revamp nest authentication config flows and remove need for redirect urls (#59033)
* Add support for Installed Auth authentication flows.

Add support for additional credential types to make configuration simpler for
end users. The existing Web App auth flow requires users to configure
redirect urls with Google that has a very high security bar: requires ssl,
and a publicly resolvable dns name.

The new Installed App flow requires the user to copy/paste an access code
and is the same flow used by the `google` calendar integration. This also
allows us to let users create one authentication credential to use with
multiple google integrations.

* Remove hard migration for nest config entries, using soft migration

* Add comment explaining soft migration

* Revet changes to common.py made obsolete by removing migration

* Reduce unnecessary diffs in nest common.py

* Update config entries using library method

* Run `python3 -m script.translations develop`

* Revert nest auth domain

* Remove compat function which is no longer needed

* Remove stale nest comment

* Adjust typing for python3.8

* Address PR feedback for nest auth revamp
2021-11-04 15:56:16 -07:00
Marvin Wichmann
54e7ef08e3 Add test for KNX weather entity (#58898) 2021-11-04 22:52:39 +01:00
Marvin Wichmann
56b7f94bbc Add tests for KNX scene (#58900) 2021-11-04 22:51:42 +01:00
Matthias Alphart
4d4d778598 Add tests for KNX light (#58912)
* test lights: simple, brightness, color_temp

* hs, xyy, rgb individual

* test rgb, rgbw
2021-11-04 22:43:38 +01:00
Nathan Spencer
ea4009fd81 Use entity_category in litterrobot (#59074) 2021-11-04 22:34:54 +01:00
Franck Nijhof
38b61f3ff9 Upgrade mitemp_bt to 0.0.5 (#59054)
* Upgrade mitemp_bt to 0.0.4

* Upgrade mitemp_bt to 0.0.5
2021-11-04 20:22:11 +01:00
Erik Montnemery
a62bc6b3b9 Minor tweak of cv.deprecated + cv.removed (#59095)
* Minor tweak of cv.deprecated + cv.removed

* Satisfy pylint
2021-11-04 19:12:21 +01:00
Erik Montnemery
491e62792b Correct rescheduling of ExternalStatisticsTask (#59076) 2021-11-04 18:35:43 +01:00
Jan Bouwhuis
c3fc19915e Mqtt fan fail deprecated options for classic speeds (#58992)
* Fail deprecated options

* new removed validator

* correct module_name - add tests

* Add test cant find module cv.removed

* module name from stack+1

* Remove error from log. Just throw.

* assert on thrown exception text

* cleanup formatting remove KeyStyleAdapter

* format the replacement_key and update test

* deprecated vs removed - add raise_if_present opt

* doc string update

* is deprecated
2021-11-04 17:54:27 +01:00
Kevin Hellemun
7945facf1e Fix mop attribute for unified mop and water box in Xiaomi Miio (#58990)
Co-authored-by: Teemu R. <tpr@iki.fi>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-04 17:00:25 +01:00
Franck Nijhof
d126d88977 Add Button entity component platform (#57642)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-04 16:50:43 +01:00
Erik Montnemery
4c5aca93df Add recorder status WS API (#58989)
* Add recorder status WS API

* Rename recorder/status to recorder/info

* Silence pylint

* Improve tests

* Address review comments

* Tweak

* Try to fix tests

* Try to debug flaky tests

* Try to fix tests

* Revert changes to async_migration_in_progress

* Try to fix tests

* Remove debug prints

* Apply suggestions from code review
2021-11-04 16:46:45 +01:00
Erik Montnemery
be4e9f91b6 Change minimum supported SQLite version to 3.31.0 (#59073) 2021-11-04 16:34:35 +01:00
Guido Schmitz
620db191b1 Use entity category and state class in devolo Home Network (#59071)
* Use entity category and state class

* Add tests
2021-11-04 16:17:20 +01:00
J. Nick Koston
10d6247fee Bump to aiohttp 3.8.0 (#58974) 2021-11-04 10:07:50 -05:00
Franck Nijhof
23cb396aad Upgrade restrictedpython to 5.2a1.dev0 (#59049) 2021-11-04 14:52:57 +01:00
Maikel Punie
a852b6df66 Add typing info to velbus (part 1) (#59041)
* Add typing info to velbus (part 1)

* Fix pylint

* Update homeassistant/components/velbus/cover.py

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

* Update homeassistant/components/velbus/cover.py

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

* Update homeassistant/components/velbus/cover.py

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

* Update homeassistant/components/velbus/cover.py

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

* Update homeassistant/components/velbus/cover.py

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

* Update homeassistant/components/velbus/cover.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-04 14:37:44 +01:00
ollo69
ea6504dfa2 Fix Nut resources option migration (#59020)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-04 14:26:17 +01:00
Teemu R
f578eee81d Remove use_time sensor from mjjsq humidifers (#59066) 2021-11-04 14:25:07 +01:00
Maikel Punie
22248f891d Refactor velbus light code to make it more clear and readable (#58483)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-11-04 14:22:58 +01:00
Teemu R
ea657e6656 Accept all roborock vacuum models for xiaomi_miio (#59018) 2021-11-04 14:14:31 +01:00
Maikel Punie
23a0f0b777 Bump velbus-aio to 2021.11.0 (#59040) 2021-11-04 12:27:41 +01:00
Franck Nijhof
da8b9cbe82 Upgrade isort to 5.10.0 (#59046) 2021-11-04 11:29:01 +01:00
Franck Nijhof
a52466c339 Upgrade yamllint to 1.26.3 (#59047) 2021-11-04 11:27:20 +01:00
Thomas G
74beebc031 Swap sharkiq vacuum is_docked with is_charging (#58975) 2021-11-04 11:21:59 +01:00
Franck Nijhof
32784d1b83 Constrain urllib3 to >=1.26.5 (#59043) 2021-11-04 11:21:30 +01:00
Franck Nijhof
50a1e908c4 Increase time to authorize OctoPrint (#59051) 2021-11-04 11:06:17 +01:00
Erik Montnemery
2f3dea30e2 Correct migration to recorder schema 22 (#59048) 2021-11-04 10:29:10 +01:00
hesselonline
4345432d14 Add state class to wallbox component (#58801) 2021-11-04 09:58:58 +01:00
Eugenio Panadero
a64cec6da1 Bump aiopvpc to 2.2.1 (#59008)
happening because some config change in the ESIOS API server,
solved with a version patch in aiopvpc
(details in https://github.com/azogue/aiopvpc/pull/28)
2021-11-04 05:32:16 +01:00
Dave T
6419950283 Aurora abb improvements (#58504)
* Add type hints.

* Refactor AuroraDevice to AuroraDeviceEntity

* Refactor AuroraDevice to AuroraDeviceEntity

* Connection class is defined in manifest.

* Separate words with underscore in variable names

* Remove duplicated code.

* Remove unused "unknown" string

* Test import yaml when integration already setup

* Remove test already done in config_flow test

* Convert variable names to snake case

* Shorten AuroraDeviceEntity to AuroraEntity

* Add typing

* Remove unnecessary integration setup in test.

* Refactor "already_setup" to "already_configured"

* Use common string

* Reduce the amount of code in the try block.

* Fix merge

* Allow yaml setup to be deferred if no comms

* Properly setup all sensors for defered yaml setup.

* Apply suggestions from code review

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

* Add type hints.

* Refactor AuroraDevice to AuroraDeviceEntity

* Refactor AuroraDevice to AuroraDeviceEntity

* Connection class is defined in manifest.

* Separate words with underscore in variable names

* Remove duplicated code.

* Remove unused "unknown" string

* Test import yaml when integration already setup

* Remove test already done in config_flow test

* Convert variable names to snake case

* Shorten AuroraDeviceEntity to AuroraEntity

* Add typing

* Remove unnecessary integration setup in test.

* Refactor "already_setup" to "already_configured"

* Use common string

* Reduce the amount of code in the try block.

* Allow yaml setup to be deferred if no comms

* Properly setup all sensors for defered yaml setup.

* Code review: move line out of try block.

* Improve test coverage

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-04 04:38:47 +01:00
GitHub Action
c9c95165e4 [ci skip] Translation update 2021-11-04 00:12:21 +00:00
Teemu R
96c03aec06 Fix timedelta-based sensors for xiaomi_miio (#58995) 2021-11-03 17:28:11 +01:00
Franck Nijhof
85a4ee68e3 Merge pull request #58994 from home-assistant/rc 2021-11-03 16:31:23 +01:00
Franck Nijhof
e3c021a910 Bumped version to 2021.11.0 2021-11-03 15:03:43 +01:00
Bram Kragten
5568121251 Update frontend to 20211103.0 (#58988) 2021-11-03 15:02:39 +01:00
Sergio Gutierrez Alvarez
7afb38ff96 Fix battery_is_charging sensor on system bridge (#58980) 2021-11-03 15:02:35 +01:00
Daniel Hjelseth Høyer
1a08da7856 Bump pyMill to 0.7.4 (#58977) 2021-11-03 12:31:22 +01:00
Sergio Gutierrez Alvarez
1af621ef13 Fix battery_is_charging sensor on system bridge (#58980) 2021-11-03 12:28:04 +01:00
Bram Kragten
a7d958ae8a Update frontend to 20211103.0 (#58988) 2021-11-03 11:51:17 +01:00
Hans Oischinger
ded0785700 Fix broken ViCare burner & compressor sensors (#58962) 2021-11-03 10:50:09 +01:00
Robert Hillis
4163ba5dbf Add missing ZMW currency (#58959) 2021-11-03 10:50:06 +01:00
Dave T
dff98b024c Aurora abb defer unique_id assignment during yaml import (#58887)
* Defer unique_id assignment during yaml import if dark

* Back out variable name change to simplify.

* Allow config flow yaml setup deferral.

* Fix deferred yaml import

* Code review: only wrap necessary lines in try blk

* Code review: catch possible duplicate unique_id

* Simplify assignment.

* Code review: use timedelta to retry yaml import

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

* Remove current config entry if duplicate unique_id

* Code review: remove unnecessary line.

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

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

* Remove unnecessary else after raise.

* Increase test coverage.

* Check the number of config entries at each stage

* Raise ConfigEntryNotReady when connection fails.

* Log & return false for error on yaml import
2021-11-03 10:50:01 +01:00
Dave T
0a27b0f353 Aurora abb energy metering (#58454)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-11-03 10:49:58 +01:00
kodsnutten
ae99b678dd Fix unique_id of derived sent-sensors (#58298) 2021-11-03 10:49:54 +01:00
Franck Nijhof
e43cb82f29 Merge branch 'master' into rc 2021-11-03 10:22:39 +01:00
kodsnutten
1548877e36 Fix unique_id of derived sent-sensors (#58298) 2021-11-03 10:21:54 +01:00
Hans Oischinger
a4fc808e49 Fix broken ViCare burner & compressor sensors (#58962) 2021-11-03 08:45:22 +01:00
dependabot[bot]
58bee8a326 Bump actions/checkout from 2.3.5 to 2.4.0 (#58978)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-03 08:27:59 +01:00
Dermot Duffy
8fda2e0a1d Address late review of motionEye media browser (#58925)
* Media-content type fixes post-codereview.

* More f-string.

* Use the 'video' media class not 'movie'.
2021-11-03 06:37:52 +01:00
Robert Hillis
16371e6579 Add missing ZMW currency (#58959) 2021-11-02 20:21:56 -07:00
Dave T
51be7d53d6 Aurora abb defer unique_id assignment during yaml import (#58887)
* Defer unique_id assignment during yaml import if dark

* Back out variable name change to simplify.

* Allow config flow yaml setup deferral.

* Fix deferred yaml import

* Code review: only wrap necessary lines in try blk

* Code review: catch possible duplicate unique_id

* Simplify assignment.

* Code review: use timedelta to retry yaml import

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

* Remove current config entry if duplicate unique_id

* Code review: remove unnecessary line.

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

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

* Remove unnecessary else after raise.

* Increase test coverage.

* Check the number of config entries at each stage

* Raise ConfigEntryNotReady when connection fails.

* Log & return false for error on yaml import
2021-11-03 01:30:29 +01:00
GitHub Action
2f4b7fe809 [ci skip] Translation update 2021-11-03 00:11:55 +00:00
Paulus Schoutsen
608b89a6ad Bumped version to 2021.11.0b5 2021-11-02 11:28:43 -07:00
Ernst Klamer
a897dfa5b7 Add device configuration URL to Solar-Log (#58954) 2021-11-02 11:28:39 -07:00
Franck Nijhof
f8290ed026 Add support for IoT Switches (tdq) in Tuya (#58952) 2021-11-02 11:28:39 -07:00
Franck Nijhof
44334ea4da Extend Tuya Dimmer (tgq) support (#58951) 2021-11-02 11:28:38 -07:00
Erik Montnemery
e4143142bf Revert "Add offset support to time trigger" (#58947) 2021-11-02 11:28:37 -07:00
uvjustin
d4ba9a137c Add libav.mpegts to logging filter (#58937) 2021-11-02 11:28:36 -07:00
J. Nick Koston
6cd256f26b Fix recursive limit in find_next_time_expression_time (#58914)
* Fix recursive limit in find_next_time_expression_time

* Add test case

* Update test_event.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-02 11:28:35 -07:00
Maciej Bieniek
53cc9f35b9 Add configuration_url to Airly integration (#58911) 2021-11-02 11:28:34 -07:00
Tom Harris
26e925d885 Bump pyinsteon to 1.0.13 (#58908) 2021-11-02 11:28:34 -07:00
Kevin Hellemun
5e09685700 Add ROCKROBO_S6_PURE to supported vacuums for xiaomi_miio (#58901) 2021-11-02 11:28:33 -07:00
Franck Nijhof
c97160bf97 Fix incorrect entity category in Advantage Air (#58754) 2021-11-02 11:28:32 -07:00
Peter A. Bigot
34953c4c08 Fix color temp selection when brightness changed in Tuya light (#58341)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-11-02 11:28:31 -07:00
Franck Nijhof
ab20bf4e9a Add support for IoT Switches (tdq) in Tuya (#58952) 2021-11-02 11:27:46 -07:00
Ernst Klamer
5315d7eb0a Add device configuration URL to Solar-Log (#58954) 2021-11-02 11:27:19 -07:00
Franck Nijhof
d1bb580dc3 Extend Tuya Dimmer (tgq) support (#58951) 2021-11-02 11:10:42 -07:00
Peter A. Bigot
4a2fb0e7ab Fix color temp selection when brightness changed in Tuya light (#58341)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-11-02 18:48:29 +01:00
epenet
2b22d635d9 Use zeroconf HaServiceInfo in tests (A-D) (#58836)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-02 12:27:31 -05:00
epenet
e983370c27 Use zeroconf attributes (A-D) (#58835)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-11-02 12:27:06 -05:00
David Langerman | Onyx Zero Software
26055e1f14 Add support for TP-Link KL400L5 (#58944)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-11-02 12:23:30 -05:00
Jan Bouwhuis
0c4863198e Add command_template to MQTT number platform (#58949) 2021-11-02 18:21:49 +01:00
Franck Nijhof
2df52a3bf6 Fix incorrect entity category in Advantage Air (#58754) 2021-11-02 10:21:08 -07:00
Erik Montnemery
30f7bc0f18 Use freezegun in DST tests (#58939) 2021-11-02 18:11:39 +01:00
Chris Browet
2df1ba2346 Add device_class to MQTT switch (#58931) 2021-11-02 17:40:05 +01:00
Jan Bouwhuis
339117aceb Add command_template to mqtt select platform (#58934) 2021-11-02 17:33:23 +01:00
Marius
9307cbf861 Add home/not_home icons to Asuswrt trackers (#58883)
* add home/not_home icons to Asuswrt trackers

like the Nmap trackers have their icons set in 2df13d0118/homeassistant/components/nmap_tracker/device_tracker.py (L186)

* white space
2021-11-02 17:29:28 +01:00
Erik Montnemery
8d910c5079 Revert "Add offset support to time trigger" (#58947) 2021-11-02 16:56:38 +01:00
uvjustin
f73c734fb6 Add libav.mpegts to logging filter (#58937) 2021-11-02 06:32:02 -07:00
Dermot Duffy
4746ff3798 Address late review of motionEye services (#58924) 2021-11-02 13:33:08 +01:00
hesselonline
bfb0d8dd19 Split wallbox sensor type and number type (#58807) 2021-11-02 11:11:46 +01:00
Kevin Hellemun
9d7786f887 Add ROCKROBO_S6_PURE to supported vacuums for xiaomi_miio (#58901) 2021-11-02 09:54:28 +01:00
Maciej Bieniek
c14dcdb077 Add configuration_url to Airly integration (#58911) 2021-11-02 09:39:23 +01:00
Tom Harris
8dcaae69e1 Bump pyinsteon to 1.0.13 (#58908) 2021-11-02 09:31:30 +01:00
Paulus Schoutsen
31153ac155 Move fixtures part 1 (#58902) 2021-11-01 20:47:05 -07:00
GitHub Action
0a94badb72 [ci skip] Translation update 2021-11-02 00:12:41 +00:00
J. Nick Koston
1cd9be7538 Fix recursive limit in find_next_time_expression_time (#58914)
* Fix recursive limit in find_next_time_expression_time

* Add test case

* Update test_event.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-02 00:11:17 +01:00
carstenschroeder
63c9cfdbc8 Add type annotations for MET (#58804)
* Add Typing

* Add missing types

* define w/o Null

* specify # type: ignore
2021-11-01 19:37:03 +01:00
emufan
388cdf4e94 Add classes for new Homematic devicetypes/devices (HmIP-SMI, HmIP-DRSI1) (#57521)
* Update const.py

Add new classes according to pyhomatic 0.1.75

* Update binary_sensor.py
2021-11-01 19:13:30 +01:00
Paulus Schoutsen
632164f283 Bumped version to 2021.11.0b4 2021-11-01 10:56:45 -07:00
Otto Winter
b4021de2b0 Fix find_next_time_expression_time (#58894)
* Better tests

* Fix find_next_time_expression_time

* Add tests for Nov 7th 2021, Chicago transtion

* Update event tests

* Update test_event.py

* small performance improvement

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

* Improve _handle_coordinator_update()

* Fix entity_description define

* Improve sensor & binary_sensor platforms

* Log None value

* Use coordinator variable

* Improve log strings

* Filter attributes with None values

* Add hasattr condition

* Update homeassistant/components/xiaomi_miio/sensor.py

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

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

* Fix find_next_time_expression_time

* Add tests for Nov 7th 2021, Chicago transtion

* Update event tests

* Update test_event.py

* small performance improvement

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

* Fix tests + consider all combinations

* Fix async context
2021-11-01 09:59:18 -07:00
Brandon Rothweiler
fe5b9c75b3 Bump pymazda to 0.2.2 (#58113) 2021-11-01 09:59:17 -07:00
Erik Montnemery
97ba368950 Fix template sensor when name template doesn't render (#58088) 2021-11-01 09:59:17 -07:00
Michael Chisholm
698ceda7c5 Sleep between device requests to detect socket closes (#58087) 2021-11-01 09:59:16 -07:00
micha91
a3c0f7b167 Fix Yamaha MusicCast media_stop (#58024) 2021-11-01 09:59:15 -07:00
Andrey Kupreychik
ae463cb210 Abort keenetic SSDP discovery if the unique id is already setup or ignored (#58009) 2021-11-01 09:59:14 -07:00
starkillerOG
387413b5f5 Fix netgear NoneType and discovery (#57904) 2021-11-01 09:59:13 -07:00
Joakim Sørensen
2de74c86e3 Fix Tuya documentation URL (#57889) 2021-11-01 09:59:13 -07:00
Otto Winter
a9c0f89c09 Fix find_next_time_expression_time (#58894)
* Better tests

* Fix find_next_time_expression_time

* Add tests for Nov 7th 2021, Chicago transtion

* Update event tests

* Update test_event.py

* small performance improvement

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-11-01 17:45:13 +01:00
Maciej Bieniek
43ccf1d967 Handle None values in Xiaomi Miio integration (#58880)
* Initial commit

* Improve _handle_coordinator_update()

* Fix entity_description define

* Improve sensor & binary_sensor platforms

* Log None value

* Use coordinator variable

* Improve log strings

* Filter attributes with None values

* Add hasattr condition

* Update homeassistant/components/xiaomi_miio/sensor.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-01 17:40:15 +01:00
purcell-lab
f7b63e9fd7 Fix renamed solaredge sensor keys (#58875) 2021-11-01 15:37:48 +01:00
Marvin Wichmann
108962b134 Update xknx to 0.18.12 (#58891) 2021-11-01 15:36:30 +01:00
ollo69
20a443ad6c Use entity_registry async_get for AsusWrt (#58885) 2021-11-01 15:18:01 +01:00
Paulus Schoutsen
f51e1fcb67 Check for uncaught service not found exceptions (#58010) 2021-11-01 14:33:09 +01:00
carstenschroeder
0e19278309 Add type annotations to OpenWeatherMap (#58802) 2021-11-01 14:28:30 +01:00
Jonathan Keljo
d125dc7dbf Use _attr_ shorthand in greeneye_monitor sensors (#58784) 2021-11-01 14:25:02 +01:00
Kevin Hellemun
51873573d3 Add ROCKROBO_S4_MAX to supported xiaomi vacuums (#58826) 2021-11-01 13:29:00 +01:00
Marc Hörsken
1aa34b6892 Fix OpenWeatherMap options not being initialized the first time (#58736) 2021-11-01 13:27:58 +01:00
Felipe Martins Diel
93bc88be16 Simplify requests in the Broadlink integration (#58850) 2021-11-01 12:49:00 +01:00
Joakim Sørensen
f0bd6acd48 Set internal quality_scale for the hassio integration (#58881) 2021-11-01 12:33:41 +01:00
Aaron Bach
0cc4b7219f Perform some SimpliSafe code cleanup (#58867) 2021-11-01 09:04:00 +01:00
Aaron Bach
d024c5e698 Perform some Tile code cleanup (#58868) 2021-11-01 09:03:54 +01:00
Aaron Bach
5836a39f14 Perform some WattTime code cleanup (#58869) 2021-11-01 09:03:48 +01:00
Aaron Bach
39054d656b Perform some AirVisual code cleanup (#58858) 2021-11-01 09:03:37 +01:00
Franck Nijhof
f3d5768fb4 Move WLED sensors to entity descriptions (#58839)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-11-01 08:54:05 +01:00
Franck Nijhof
ce2e3438ca Use attr and entity descriptions for Twente Milieu sensors (#58871) 2021-11-01 08:53:27 +01:00
Franck Nijhof
2dca080574 Upgrade black to 21.10b0 (#58870) 2021-11-01 08:51:36 +01:00
Tim Rightnour
0baa6b1827 Add device_class for GEM power and voltage sensors (#58764)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-11-01 08:39:27 +01:00
Franck Nijhof
617144994b Upgrade coverage to 6.1.1 (#58855) 2021-10-31 20:44:01 -07:00
Franck Nijhof
a02055441a Migrate attribution attribute for Zestimate (#58854) 2021-10-31 20:43:42 -07:00
Paulus Schoutsen
5ad1ec611d Bumped version to 2021.11.0b3 2021-10-31 20:24:09 -07:00
Maciej Bieniek
375e9fffd1 Add configuration_url to GIOS integration (#58840) 2021-10-31 20:24:03 -07:00
uvjustin
868fbc063d Improve part metadata in stream (#58822) 2021-10-31 20:24:02 -07:00
Robert Hillis
68b0413c98 Bump pyefergy to 0.1.3 (#58821) 2021-10-31 20:24:01 -07:00
Franck Nijhof
6908fa6127 Fix Plugwise not updating config entry with discovery information (#58819) 2021-10-31 20:24:00 -07:00
Kevin Hellemun
a0fba15267 Add ROCKROBO_E2 to supported vacuums for xiaomi_miio (#58817)
e1adea55f3/miio/vacuum.py (L129)
2021-10-31 20:24:00 -07:00
Michael Chisholm
7fae711e0c dlna_dmr: less eager discovery (#58780) 2021-10-31 20:23:59 -07:00
J. Nick Koston
e031917a30 Workaround brightness transition delay from off in older yeelight models (#58774) 2021-10-31 20:23:58 -07:00
purcell-lab
184342804e Fix solaredge energy sensor names (#58773) 2021-10-31 20:23:58 -07:00
Michael
2cc3290794 Fix channel.send in Discord (#58756) 2021-10-31 20:23:57 -07:00
J. Nick Koston
0f367722ed Bump zeroconf 0.36.11 (#58755) 2021-10-31 20:23:56 -07:00
Franck Nijhof
9b715383c3 Add configuration_url to OctoPrint (#58753)
* Add configuration_url to Octoprint

* fix device_info() return

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

* extend data update coordinator

* improve exception handling during data update

* store coordinator after first refresh

* fix light init
2021-10-31 20:23:51 -07:00
uvjustin
9aaa92f366 Improve part metadata in stream (#58822) 2021-10-31 20:23:01 -07:00
Maciej Bieniek
7126c9b0de Add configuration_url to GIOS integration (#58840) 2021-10-31 20:22:13 -07:00
Paulus Schoutsen
a122cbab61 Mobile app to update entity registry on re-register sensors (#58378)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-31 20:21:46 -07:00
GitHub Action
4e419d8c6f [ci skip] Translation update 2021-11-01 00:13:04 +00:00
Kevin Hellemun
a3332410dc Add ROCKROBO_E2 to supported vacuums for xiaomi_miio (#58817)
e1adea55f3/miio/vacuum.py (L129)
2021-11-01 00:29:57 +01:00
Felipe Martins Diel
3f61ff4f96 Make general code quality improvements in the Broadlink integration (#58848)
* Create DEVICE_TYPES constant

* Rename _auth_fetch_firmware() to _get_firmware_version()

* Rename dev_type to device_type

* Use SOURCE_REAUTH from config_entries namespace

* Fix unidiomatic imports
2021-11-01 00:01:11 +01:00
Tim Rightnour
adfebaf510 Address late review of venstar (#58813)
* Additional fixes from PR #58601

* Suggested fix to reduce attribute access
2021-10-31 23:25:19 +01:00
Franck Nijhof
9daf2ee65d Fix Plugwise not updating config entry with discovery information (#58819) 2021-10-31 12:19:51 -07:00
Michael
ccad6a8f07 Add configuration url to AVM Fritz!Smarthome (#57711)
* add configuration url

* extend data update coordinator

* improve exception handling during data update

* store coordinator after first refresh

* fix light init
2021-10-31 12:12:25 -07:00
Quentame
8f51192cf0 Cleanup old entity.unique_id migration from Synology DSM (#58811)
Created on 2nd of june 2020 from #35565
2021-10-31 19:23:40 +01:00
Marc Mueller
4c68662612 Use assignment expressions 34 (#58823) 2021-10-31 19:01:16 +01:00
Marc Mueller
e0c0d00833 Use assignment expressions 39 (#58829) 2021-10-31 18:56:25 +01:00
Marc Mueller
72801867d6 Use assignment expressions 38 (#58828) 2021-10-31 18:49:18 +01:00
Marc Mueller
b6d9e517c2 Use assignment expressions 37 (#58827) 2021-10-31 18:45:27 +01:00
Robert Hillis
8e03102892 Bump pyefergy to 0.1.3 (#58821) 2021-10-31 18:41:55 +01:00
Marc Mueller
1ce889be60 Use assignment expressions 36 (#58825) 2021-10-31 18:35:27 +01:00
Marc Mueller
3f1b4906bf Use assignment expressions 35 (#58824) 2021-10-31 18:32:17 +01:00
Dermot Duffy
ab7d8db481 Add motionEye media browser (#53436) 2021-10-31 10:59:31 -05:00
Quentame
3c5799e394 Cleanup old config entry migration from Météo-France (#58809) 2021-10-31 16:17:35 +01:00
Michael Chisholm
4f83a251fa Bump async-upnp-client to 0.22.11 (#58803) 2021-10-31 16:16:50 +01:00
epenet
2ae86124c7 Add zeroconf ATTR constants (#58671)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-31 16:13:26 +01:00
purcell-lab
13386fc41b Fix solaredge energy sensor names (#58773) 2021-10-31 16:11:48 +01:00
Michael Chisholm
ce27fb87c6 dlna_dmr: less eager discovery (#58780) 2021-10-31 16:11:20 +01:00
J. Nick Koston
faecc90b38 Workaround brightness transition delay from off in older yeelight models (#58774) 2021-10-31 16:11:07 +01:00
Tobias Sauerwein
f94bbf351d Set Netatmo max default temperature (#58718) 2021-10-31 15:38:01 +01:00
Kevin Hellemun
e38f3e447c Add ROCKROBO_S4 to xiaomi_miio vaccum models (#58682) 2021-10-31 09:36:37 -05:00
J. Nick Koston
89ae88519d Add additional test coverage for RYSE smartbridges with HK (#58746) 2021-10-31 09:19:37 -05:00
Michael
81845bb0b5 Fix channel.send in Discord (#58756) 2021-10-31 13:32:49 +01:00
Matthias Alphart
968e582468 Remove last_knx_update extra_state_attribute from KNX BinarySensor and Sensor (#58786) 2021-10-31 12:58:17 +01:00
Felipe Martins Diel
1e92e35bff Improve code quality of the Broadlink switch platform (#58794) 2021-10-31 11:48:52 +01:00
Felipe Martins Diel
9bc0e8e8ab Improve code quality of the Broadlink light platform (#58790) 2021-10-31 11:48:35 +01:00
Joakim Plate
7047205fb8 Correct fjaraskupan post merge review comments (#58796) 2021-10-31 11:47:25 +01:00
Jonathan Keljo
f561533d2c Fix some typing issues in greeneye_monitor (#58788)
* Improve typing

* Import cast
2021-10-31 09:30:11 +01:00
Franck Nijhof
26b951194c Add configuration_url to OctoPrint (#58753)
* Add configuration_url to Octoprint

* fix device_info() return

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2021-10-31 08:00:31 +01:00
GitHub Action
8da010cacd [ci skip] Translation update 2021-10-31 00:12:41 +00:00
Marc Mueller
733280e169 Use EntityDescription - wallbox (#58690) 2021-10-30 17:33:07 -05:00
Marc Mueller
d6e49bc5bc Fix litterrobot vacuum base class (#58765) 2021-10-30 17:27:12 -05:00
Tim Rightnour
f87f72bb8e Switch to update coordinator, and bump venstarcolortouch to 0.15 (#58601) 2021-10-30 17:23:47 -05:00
Allen Porter
6c426fea9e Serve nest placeholder image from disk rather than generate on the fly (#58663)
* Serve placeholder image from disk rather than generate on the flay

The placeholder image was generated from hoome assistant, saved, flipped, and
crushed a bit. The image is 640x480 and the integration does not support any on the
fly resizing.

* Cache Nest WebRTC placeholder image on camera

Cache Nest WebRTC placeholder image rather than reading from disk every time.
2021-10-30 13:44:28 -07:00
muppet3000
972dbac1f7 Add __init__ for growatt sensor types (#58749) 2021-10-30 22:19:18 +02:00
J. Nick Koston
3374005b33 Bump zeroconf 0.36.11 (#58755) 2021-10-30 19:18:39 +02:00
Kapernicus
5224050df8 Bump nad_receiver to version 0.3.0 (#58751) 2021-10-30 18:11:37 +02:00
Erik Montnemery
56f746fd39 Coerce to tuple before asserting the sequence (#58672) 2021-10-30 16:50:24 +02:00
Bastien Gautier
18ebdbed3e Add AUCTION coin (#58709) 2021-10-30 16:43:22 +02:00
Marc Mueller
84618fa831 Use assignment expressions 30 (#58714) 2021-10-30 16:33:42 +02:00
Marc Mueller
7063c05127 Use assignment expressions 33 (#58717) 2021-10-30 16:32:41 +02:00
Marc Mueller
b1d49b3b66 Use assignment expressions 29 (#58713) 2021-10-30 16:31:43 +02:00
Marc Mueller
887d04be60 Use assignment expressions 32 (#58716) 2021-10-30 16:30:13 +02:00
Marc Mueller
a48ddcadd4 Use assignment expressions 31 (#58715) 2021-10-30 16:29:07 +02:00
Aaron Bach
f7dea3aa1d Add Ridwell integration (#57590) 2021-10-30 08:27:48 -06:00
Nathan Spencer
aacc009cbb Get Litter-Robot to 100% code coverage and minor code cleanup (#58704) 2021-10-30 09:13:03 -05:00
Dermot Duffy
bbbbcfbb93 Add motionEye services (#53411) 2021-10-30 08:48:01 -05:00
Daniel Hjelseth Høyer
855e0fc2eb Update Mill library, add support for generation 3 heaters. #58536 (#58738) 2021-10-30 15:43:05 +02:00
Anders Liljekvist
65b965e84b Fix bluesound player internally used id (#58732) 2021-10-30 14:57:45 +02:00
Anders Liljekvist
a90c8ab558 Add myself as codeowner of bluesound (#58733) 2021-10-30 12:14:19 +02:00
Andre Lengwenus
f4c823f338 Fix lcn in place update of config entry data (#58729)
* Fix in place update of config entry data

* Deep copy of device configs

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

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

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

* Tweak

* Tweak

* Update test

* Tweak test
2021-10-29 22:17:56 -07:00
mezz64
78082afa94 Bump pyhik to 0.3.0 (#58659) 2021-10-29 22:17:56 -07:00
Aaron Bach
c469358e5f Fix bug with volumes in SimpliSafe set_system_properties service (#58721)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-29 22:17:15 -07:00
Jonathan Keljo
687c40a622 Enable strict typing for greeneye_monitor (#58571)
* Enable strict typing for greeneye_monitor

* Fix pylint
2021-10-29 18:54:40 -07:00
J. Nick Koston
061b1abd1b Improve handling of invalid serial numbers in HomeKit Controller (#58723)
Fixes #58719
2021-10-29 17:57:01 -07:00
Marc Mueller
e97133613a Fix round - wallbox (#58689)
* Fix wallbox round

* Add test case
2021-10-29 17:52:23 -07:00
GitHub Action
9fafa57074 [ci skip] Translation update 2021-10-30 00:11:34 +00:00
Matthias Alphart
fa7b72a4ed reload service: remove entities before disconnection (#58712) 2021-10-30 00:04:57 +02:00
Chris Browet
b1b782419b Add REST sensor/binary_sensor/switch templated headers & params (#54426) 2021-10-29 16:36:47 -05:00
Dermot Duffy
944a7c09c4 Add motionEye sensor platform (#53415) 2021-10-29 16:14:26 -05:00
Dermot Duffy
a2102deb64 Support reverse proxying of motionEye streams (#53440) 2021-10-29 15:24:30 -05:00
jjlawren
6e7fe13d51 Disable polling Sonos switches by default (#58705) 2021-10-29 14:43:59 -05:00
Aaron Bach
a4a5a2e782 Bump aioambient to 2021.10.1 (#58708) 2021-10-29 14:43:39 -05:00
J. Nick Koston
d182bae112 Avoid doorbird device probe during discovery for known devices (#58701) 2021-10-29 10:29:02 -07:00
Franck Nijhof
4b64b92dba Fix OctoPrint SSDP URL parsing and discovered values (#58698) 2021-10-29 16:34:27 +02:00
mezz64
520a36aa51 Bump pyhik to 0.3.0 (#58659) 2021-10-29 15:59:32 +02:00
Erik Montnemery
f3bd13d179 Fix regression in MQTT discovery (#58684)
* Fix regression in MQTT discovery

* Update test
2021-10-29 15:59:16 +02:00
Erik Montnemery
72d7817dbf Update light turn_on schema to coerce colors to tuple before asserting sequence type (#58670)
* Make color_name_to_rgb return a tuple

* Tweak

* Tweak

* Update test

* Tweak test
2021-10-29 15:51:14 +02:00
Erik Montnemery
39867c9b83 Convert RGBW and RGBWW colors in light turn_on calls (#58680) 2021-10-29 15:48:11 +02:00
Nathan Spencer
659a0d9a95 Add select platform to Litter-Robot integration (#58323) 2021-10-29 07:47:15 -05:00
Franck Nijhof
a0d0e325e0 Fix OctoPrint config flow schema (#58688) 2021-10-29 14:07:25 +02:00
Franck Nijhof
b3e7eeb020 Fix spelling of OctoPrint (#58686) 2021-10-29 13:21:57 +02:00
Jonathan Keljo
d1474d8e92 Update greeneye_monitor sensor state when first connected to a monitor (#58587) 2021-10-29 12:09:06 +02:00
Martin Hjelmare
3a76d92e0f Add zwave_js binary sensor descriptions (#58641) 2021-10-28 21:28:02 -07:00
J. Nick Koston
7516db3600 Avoid circular import in network integration (#58655) 2021-10-28 21:22:17 -07:00
Paulus Schoutsen
96d145f2f0 Bumped version to 2021.11.0b1 2021-10-28 21:18:17 -07:00
Franck Nijhof
6ca92812ae Fix missing temperature level on Tuya Heater (qn) devices (#58643) 2021-10-28 21:16:47 -07:00
Clifford Roche
26f3c1adea Bump greeclimate to 0.12.3 (#58635) 2021-10-28 21:16:47 -07:00
Aaron Bach
da2addf15a Fix incorrect RainMachine service helper (#58633) 2021-10-28 21:16:46 -07:00
Franck Nijhof
ffe008cbef Migrate Tuya unique IDs for switches & lights (#58631) 2021-10-28 21:16:45 -07:00
Hans Oischinger
6858191ca3 Improve ViCare energy units (#58630) 2021-10-28 21:16:45 -07:00
Bram Kragten
2546efe026 Update frontend to 20211028.0 (#58629) 2021-10-28 21:16:44 -07:00
Aaron Bach
92af39cf89 Fix missing triggered state in SimpliSafe alarm control panel (#58628) 2021-10-28 21:16:44 -07:00
J. Nick Koston
22773d0503 Add package constraint to websockets (#58626) 2021-10-28 21:16:43 -07:00
Chen-IL
23841c4b74 Add entity category for load sensors to AsusWRT (#58625) 2021-10-28 21:16:42 -07:00
J. Nick Koston
cc9b9a8f95 Fix uncaught exception in sense and retry later (#58623) 2021-10-28 21:16:42 -07:00
Robert Hillis
f942131d6a Fix missing config string in sense (#58597) 2021-10-28 21:16:41 -07:00
Guido Schmitz
c513516237 Add configuration_url to devolo Home Control (#58594) 2021-10-28 21:16:40 -07:00
Kevin Hellemun
e729ee24f8 Add ROCKROBO_S5_MAX to xiaomi_miio vacuum models (#58591)
* Add ROCKROBO_S5_MAX to xiaomi_miio vacuum models.

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

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

* disable pylint for todo

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

* Minor refactor

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

* Add test

* Check for None before stringifying and url parsing

* Add type to dict to remove mypy error on assigning None
2021-10-28 21:12:47 -07:00
Quentame
928b8bcdbd Add configuration_url to iCloud integration (#58557) 2021-10-28 21:12:46 -07:00
Quentame
211041eb3a Add configuration_url to Freebox integration (#58555) 2021-10-28 21:12:46 -07:00
Paulus Schoutsen
e1f9ae4b96 Add entity category to ZHA battery (#58553) 2021-10-28 21:12:45 -07:00
Tom Matheussen
c9f4972b59 Add service configuration URL to Doorbird (#58549) 2021-10-28 21:12:44 -07:00
J. Nick Koston
49e0bbe3df Add tplink KP303 to discovery (#58548) 2021-10-28 21:12:44 -07:00
Avi Miller
2cae44c98a Return the real MAC address for LIFX bulbs with newer firmware (#58511) 2021-10-28 21:12:43 -07:00
J. Nick Koston
41007c2864 Reduce rainmachine intervals to avoid device overload (#58319) 2021-10-28 21:12:42 -07:00
Allen Porter
695bc3f23c Add an image placeholder for Nest WebRTC cameras (#58250) 2021-10-28 21:12:42 -07:00
Pieter Mulder
59bee8e830 Allow initialized callback to have arguments (#58129) 2021-10-28 21:12:41 -07:00
Dave Lowper
3650a5e2a4 Fix ZeroDivisionError on freebox/sensor (#57077)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-28 21:12:41 -07:00
Franck Nijhof
c6157d5520 Migrate Tuya unique IDs for switches & lights (#58631) 2021-10-28 21:08:59 -07:00
Allen Porter
9c5a79c641 Add an image placeholder for Nest WebRTC cameras (#58250) 2021-10-28 21:07:29 -07:00
Jesse Hills
6d30105c9f Add configuration_url to ESPHome (#58565) 2021-10-28 21:04:00 -07:00
GitHub Action
7d408e3288 [ci skip] Translation update 2021-10-29 00:30:22 +00:00
John Parchem
1b72536119 Add support for Levoit Core 400S air purifier to VeSync integration (#57126) 2021-10-28 19:03:27 -05:00
Eddy G
4d5705c0fe Add 'delta_values' option to utility_meter (#54964) 2021-10-28 19:00:31 -05:00
epenet
c8cbd0070d Use DeviceInfo in zwave-js (#58649) 2021-10-28 19:00:12 -05:00
schreyack
e10bd39827 Add a Preset mode for Honeywell permanent hold (#58060)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-28 18:59:50 -05:00
Clifford Roche
34a6ce6f2a Bump greeclimate to 0.12.3 (#58635) 2021-10-28 18:58:59 -05:00
epenet
147bbb30a6 Use DeviceInfo in zerproc (#58647) 2021-10-28 18:17:40 -05:00
epenet
991c41532a Use DeviceInfo in youless (#58645) 2021-10-28 17:46:01 -05:00
epenet
16a3a9170e Use DeviceInfo in yale-smart-alarm (#58644) 2021-10-29 00:38:27 +02:00
epenet
335fdf96ba Use DeviceInfo in xiaomi-miio (#58642) 2021-10-29 00:37:55 +02:00
epenet
638bd743a5 Use DeviceInfo in xbox (#58640) 2021-10-29 00:37:20 +02:00
Franck Nijhof
42a2aed8af Fix missing temperature level on Tuya Heater (qn) devices (#58643) 2021-10-29 00:27:22 +02:00
epenet
8925f5cc45 Use DeviceInfo in wiffi (#58639) 2021-10-29 00:19:25 +02:00
epenet
95f7b0c026 Use DeviceInfo in waze-travel-time (#58637) 2021-10-28 23:58:53 +02:00
epenet
107bd11a31 Use DeviceInfo in wemo (#58638) 2021-10-28 23:58:33 +02:00
Dave T
37930aeeb6 Aurora abb energy metering (#58454)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-28 16:47:49 -05:00
Michael Chisholm
6cdc372dcb Add more dlna_dmr media_player services and attributes (#57827) 2021-10-28 16:44:41 -05:00
Hans Oischinger
3f50e444ca Improve ViCare energy units (#58630) 2021-10-28 22:58:28 +02:00
Aaron Bach
806242093d Add missing SimpliSafe config flow test (#58563) 2021-10-28 15:55:14 -05:00
J. Nick Koston
f619a8e4a0 Reduce rainmachine intervals to avoid device overload (#58319) 2021-10-28 22:44:28 +02:00
Guido Schmitz
f1884d34e9 Add devolo home network integration (#45866)
Co-authored-by: Markus Bong <2Fake1987@gmail.com>
Co-authored-by: Markus Bong <Markus.Bong@devolo.de>
2021-10-28 22:42:10 +02:00
Paul Frank
3705f2f7f1 Open and close tilt for Fibaro devices in zwave_js (#58435)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-28 22:30:34 +02:00
Aaron Bach
2b7fe06b16 Fix incorrect RainMachine service helper (#58633) 2021-10-28 22:29:25 +02:00
Hmmbob
37a07acce0 Adding newly supported language codes to Google TTS (#58607) 2021-10-28 22:16:31 +02:00
epenet
1e8ccb47ce Use constants in control4 config flow (#58602)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 22:15:30 +02:00
Pieter Mulder
b368476429 Allow initialized callback to have arguments (#58129) 2021-10-28 22:14:50 +02:00
Aaron Bach
0f25900309 Fix missing triggered state in SimpliSafe alarm control panel (#58628) 2021-10-28 21:52:06 +02:00
Chen-IL
e32fdfec84 Add entity category for load sensors to AsusWRT (#58625) 2021-10-28 21:34:26 +02:00
Guido Schmitz
9f30cd7826 Add configuration_url to devolo Home Control (#58594) 2021-10-28 21:33:06 +02:00
Bram Kragten
808e067c22 Update frontend to 20211028.0 (#58629) 2021-10-28 21:32:38 +02:00
J. Nick Koston
2b175a37a7 Add package constraint to websockets (#58626) 2021-10-28 21:32:22 +02:00
J. Nick Koston
5f36fd2a80 Fix uncaught exception in sense and retry later (#58623) 2021-10-28 21:27:19 +02:00
Kevin Hellemun
05353f8e13 Add ROCKROBO_S5_MAX to xiaomi_miio vacuum models (#58591)
* Add ROCKROBO_S5_MAX to xiaomi_miio vacuum models.

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

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

* disable pylint for todo

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

* Minor refactor

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>
2021-10-28 21:06:04 +02:00
Aaron Bach
669e36caec Add DHCP Discovery for SimpliSafe (#58560)
* Add DHCP Discovery for SimpliSafe

* Fix tests

* Docstring

* Code review
2021-10-28 11:07:58 -06:00
Avi Miller
0c2f126012 Return the real MAC address for LIFX bulbs with newer firmware (#58511) 2021-10-28 18:27:40 +02:00
epenet
d214bfec47 Use DeviceInfo in upb (#58621)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:26:53 +02:00
epenet
6391376d6f Use DeviceInfo in unifi (#58620)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:26:21 +02:00
epenet
1c7fbb7540 Use DeviceInfo in volumio (#58619)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:25:40 +02:00
epenet
8ed4e500d3 Use DeviceInfo in vlc-telnet (#58618)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:25:10 +02:00
epenet
7d235cb9bb Use DeviceInfo in vizio (#58617)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:24:40 +02:00
epenet
7e9a67194a Use DeviceInfo in twinkly (#58609)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:24:20 +02:00
epenet
d065ddc5c1 Use DeviceInfo in twentemilieu (#58608)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:23:41 +02:00
epenet
2dcb429c95 Use DeviceInfo in tplink (#58606)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:23:16 +02:00
epenet
a0b3a58d1c Use DeviceInfo in toon (#58605)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:20:41 +02:00
epenet
e64bc67bec Use DeviceInfo in tado (#58603)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:20:09 +02:00
epenet
6cfa5b2a28 Use DeviceInfo in subaru (#58577)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:19:46 +02:00
J. Nick Koston
11661454ac Add tplink KP303 to discovery (#58548) 2021-10-28 18:13:21 +02:00
epenet
d3bafce157 Use constants in acmeda config flow (#58590)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 18:09:28 +02:00
epenet
d27c91b9fe Use DeviceInfo in tasmota (#58604)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 16:07:37 +02:00
Erik Montnemery
a0a8b9db26 Add entity category 'system' (#58595)
* Add entity category 'hidden'

* Update cloud

* Update Google assistant

* Update Alexa

* Fix tests

* Add ENTITY_CATEGORIES constant

* Rename ENTITY_CATEGORY_HIDDEN to ENTITY_CATEGORY_SYSTEM

* Correct import in motioneye
2021-10-28 14:36:41 +02:00
Tom Matheussen
8c5832ae82 Add service configuration URL to Doorbird (#58549) 2021-10-28 14:32:53 +02:00
Robert Chmielowiec
438d1b2f15 Add configuration_url to Huawei LTE integration (#58584) 2021-10-28 14:32:20 +02:00
epenet
52b0107a77 Use DeviceInfo in system-bridge (#58582)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 14:31:30 +02:00
epenet
d7edb5b11c Use DeviceInfo in syncthru (#58581)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 14:31:11 +02:00
epenet
03100693b0 Use DeviceInfo in syncthing (#58580)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 14:30:02 +02:00
epenet
383a820ae1 Use DeviceInfo in switcher-kis (#58579)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 14:29:37 +02:00
Robert Hillis
f2169ba111 Fix missing config string in sense (#58597) 2021-10-28 14:27:01 +02:00
Erik Montnemery
5851d5246e Bump hatasmota to 0.3.0 (#58592) 2021-10-28 14:23:26 +02:00
Jesse Hills
ea028e38d5 Allow configuration_url to be removed/nullified from device registry (#58564)
* Allow configuration_url to be removed from device registry

* Add test

* Check for None before stringifying and url parsing

* Add type to dict to remove mypy error on assigning None
2021-10-28 12:11:54 +02:00
Paulus Schoutsen
6a3c23d02a Fix default value for host in octoprint config flow (#58568) 2021-10-28 11:20:28 +02:00
Erik Montnemery
7a728997bb Remove incorrect use of iscoroutinefunction from duckdns (#58585) 2021-10-28 11:05:02 +02:00
epenet
e99bef7b6e Use DeviceInfo in songpal (#58574)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 09:41:07 +02:00
epenet
d579d90f10 Use DeviceInfo in switchbot (#58578)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 09:40:35 +02:00
epenet
1a5333f376 Use DeviceInfo in starline (#58576)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 09:40:01 +02:00
epenet
b175f424d6 Use DeviceInfo in spider (#58575)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 09:39:42 +02:00
epenet
3e4d388491 Use DeviceInfo in somfy-mylink (#58573)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 09:39:12 +02:00
epenet
f7797328e6 Use DeviceInfo in soma (#58572)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-28 09:38:53 +02:00
Dave Lowper
892df608e9 Fix ZeroDivisionError on freebox/sensor (#57077)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-28 09:30:06 +02:00
Quentame
f28de7891d Add configuration_url to iCloud integration (#58557) 2021-10-28 09:03:53 +02:00
Quentame
bcd4ffdef3 Add configuration_url to Freebox integration (#58555) 2021-10-28 08:56:38 +02:00
Aaron Bach
feda48f599 Add additional MAC address pattern for Guardian DHCP discovery (#58562) 2021-10-28 08:47:54 +02:00
Erik Montnemery
0456a896e3 Avoid service call in MQTT async_publish function (#58441)
* Avoid service call in MQTT async_publish function

* Tweak

* Fix integrations + tests
2021-10-28 08:13:32 +02:00
GitHub Action
11cb04822e [ci skip] Translation update 2021-10-28 00:11:45 +00:00
Paulus Schoutsen
366a4d24f4 Add entity category to ZHA battery (#58553) 2021-10-27 16:28:10 -07:00
Paulus Schoutsen
e1e864d2b6 Get the registry using the callback method (#58542) 2021-10-27 15:58:14 -07:00
Andre Lengwenus
b34eb53914 Register LCN devices in device registry (#53143) 2021-10-27 14:29:28 -07:00
Franck Nijhof
8d05813c97 Bump version to 2021.12.0dev0 (#58546) 2021-10-27 23:08:34 +02:00
Franck Nijhof
4fffeb1155 Bumped version to 2021.11.0b0 2021-10-27 22:01:47 +02:00
Bram Kragten
f56802f8e9 Update frontend to 20211027.0 (#58545) 2021-10-27 21:55:58 +02:00
Hans Oischinger
066610923e Support ViCare energy units (#58433) 2021-10-27 21:15:54 +02:00
yeahme49
15c4f3906b Blink arm camera (#56474) 2021-10-27 13:24:55 -05:00
hesselonline
6d6cb03848 Add Number platform to Wallbox (#52786)
Co-authored-by: jan iversen <jancasacondor@gmail.com>
2021-10-27 12:53:14 -05:00
Erik Montnemery
abb84d9756 Serialize dates and times to isoformat (#58157) 2021-10-27 10:51:38 -07:00
Marc Mueller
ced89d8f29 Enable strict typing - bmw_connected_drive (#58506) 2021-10-27 12:32:10 -05:00
epenet
b85217c62e Adjust onewire device model (#58516)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-10-27 12:19:55 -05:00
Austin Mroczek
baaaf3d2bc Add multi-partition support for TotalConnect (#55429) 2021-10-27 12:15:13 -05:00
Paulus Schoutsen
6cd83d1f66 Allow storing picture in area registry (#58539) 2021-10-27 10:11:05 -07:00
Erik Montnemery
f228537458 Fix energy cost sensor for MWh + improve tests (#58540) 2021-10-27 19:07:05 +02:00
jan iversen
55534cfedd When tradfri device goes offline set attr_available false (#58487) 2021-10-27 18:27:16 +02:00
Colin Robbins
39998f5387 Add kWh as cost option for gas (#58426)
* Add kWh as cost option for GAS

* Add kWh as cost option for GAS (pylint)

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

* Change GAS_UNITS to VALID_ENERGY_UNITS

* Add test for Gas cost in kWh (2)

* Back off ENERGY_WATT_HOUR - unlikely for gas

* Add MEGA_WATT_HOUR support (2)

* Normalise pricing for MEGA_WATT_HOUR

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

* Allow EXT-X-TARGETDURATION to change

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

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

* Delint

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

Automatic fill of supported fan speed and hvac

* Update manifest of spiderpy to 1.5.0

Update manifest of spiderpy to 1.5.0

* Update spiderpy version to 1.5.0 in requirements files

* Code formatted using Black

* Move support fan and hvac values into a class variable

* Move convert to HA value to hvac_modes method

* Log a warning for any invalid operation mode

* Update homeassistant/components/spider/climate.py

Update as suggested by @mivn23

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

* PR feedback update + dependency update

* Remove logging

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

* Clean up the code, fixed the preset_mode

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

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

* Add to add-ons

* Use homeassistant as the prefix

* Update homeassistant/components/hassio/__init__.py

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

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

* dry

* dry

* fix refactor error

* tweaks

* wip

* tweaks

* tweaks

* fix

* fixes

* coverage

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

* Update tests

* Lint

* Adjust code after rebase

* Separate external statistic_id with :, add name to metadata

* Adjust tests

* Simplify get_metadata_with_session

* Address review comments

* Allow updating external statistics

* Validate input

* Adjust tests after rebase

* Pylint

* Adjust tests

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

* Add _async_add_kraken_sensors

* Add test sensors available after restart

* Add test for config update

* Update tests/components/kraken/test_sensor.py

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

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

* Ensure we're storing data correctly

* Re-add support for realtime websocket in SimpliSafe

* Updates

* Better lock state from websocket

* Unknown states

* Streamline

* Unnecessary assertion

* Remove conditions we can't reach

* Require multiple error states from REST API before reacting

* Only disconnect when needed

* Typing

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

* Update tests

* Explicitly pass entry

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

* Fix tests + consider all combinations

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

* use super call

* add self as codeowner

* Call API update method directly when creating coordinator

* Update homeassistant/components/eight_sleep/__init__.py

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

* Update homeassistant/components/eight_sleep/__init__.py

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

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

* Update fixture for motion

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

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

* Updates for mypy

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

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

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

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

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

* Integrate review comments

* variables cleanup

* Update unique ids

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

* Update homeassistant/components/tradfri/const.py

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

* Feedback

* Updates

* Remove logger

* Fix codestring

* Update homeassistant/components/tradfri/fan.py

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

* Update homeassistant/components/tradfri/fan.py

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

* Update homeassistant/components/tradfri/fan.py

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

* Percent value

* Add tests

* Typo

* Update tests

* Fix util function

* Update homeassistant/components/tradfri/fan.py

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

* Update after review

* Review

* Coverage

* Fix test

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

* Update fragment duration comments in worker

* Update duration test in worker

* Augment test on low latency playlists

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

* Add support for railway routes to yandex_transport component

* Test suburban timetable parsed correctly

* Remove redundant default value

* Make unique_id unique and stable

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

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

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

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

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

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

* Add comment to temp rounding

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

* Update rounding and tests

* Add test for rounding

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

* Bump velbusaio to 2021.10.5

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

* fixed lint

* Use a single update function. Fixed tests

* use constant

* review comments

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

* Move registry checks to init.py

* Run device registry check on disabled devices

* Empty commit for testing

* Register devices during initialisation

* Adjust tests accordingly

* Add via_device to device info

* Adjust access to device registry

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

* Update code and tests

* Tweak implementation

* Update tests

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

* Ensure we're storing data correctly

* Re-organize SimpliSafe device structure

* Constants

* More work

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

* Less meep

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

Fixes #56245

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

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

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

* use percentage_step in tests to test patch

* test with not supported percentage_step

* undo change in test_capabilities

* Use a default precision of one not percentage_step

* typo 2

* Update tests/components/alexa/test_smart_home.py

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

* Update homeassistant/components/alexa/capabilities.py

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

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

* Replace duration with delay for Hue motion sensors
Improve tests

* Bump dependency to v85

* Use constant for entity category

* Use type rather than using __class__

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

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

* Add ATTR_UNIQUE_ID constant

* Add new attribute constants

* Fix missing ATTR_DEFAULT_DISABLED

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

* Update homeassistant/components/mqtt/alarm_control_panel.py

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

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

* Pylint

* Deduplicate code

* Fix issues when no stored traces are available

* Store serialized data for restored traces

* Update WS API

* Update test

* Restore context

* Improve tests

* Add new test files

* Rename restore_traces to async_restore_traces

* Refactor trace.websocket_api

* Defer loading stored traces

* Lint

* Revert refactoring which is no longer needed

* Correct order when restoring traces

* Apply suggestion from code review

* Improve test coverage

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

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

* Remove debug code

* Format code

* Don't use dateutil package

* Remove 2 TODOs

* Remove TODO

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

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

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

* Add sysbus fixtures

* Adjust parameter name

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

* Slim setup and teardown of services

* Minor improvements

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

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

* alphabetize

* tweak

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

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

* Improve UPDATE_INTERVAL const

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

* tweak

* tweak

* tweak

* Call first refresh on coordinator

* don't use dict.get if not needed

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

* Drop state attributes

* Drop ATTR_LAST_UPDATE

* Adjust tests

* Mark new sensors as disabled_default

* Add default_disabled attribute

* Add context managers

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

* Improve test

* Apply suggestions from code review

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

* Update homeassistant/components/mqtt/mixins.py

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

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

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

* push to version 0.4 of micloud

* distinguish between authentication error and socket errors

* raise from error

* Update homeassistant/components/xiaomi_miio/gateway.py

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

* move ConfigEntryNotReady to connect function

* remove unused import

* also add ConfigEntryNotReady for device

* catch exceptions in config flow

* fixes

* bring tests back to 100%

* add missing catch exception

* add test

* fix black

* Update homeassistant/components/xiaomi_miio/device.py

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

* Update homeassistant/components/xiaomi_miio/gateway.py

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

* Update tests/components/xiaomi_miio/test_config_flow.py

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

* fix tests

* define specific exceptions

* fix styling

* fix tests

* use proper DeviceException

* Revert "use proper DeviceException"

This reverts commit 0bd16135387cd6d9e563cd62ac147d0a25c577f3.

* use appropriate side-effect

* remove unused returns

* Update homeassistant/components/xiaomi_miio/const.py

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

* remove unused returns

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

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

* Rename is_config_entity to entity_category

* Add test

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

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

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

* Add nest support for initiating webrtc streams

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

* Rename offer variable to match overriden variable name

* Remove unnecessary checks covered by websocket function

* Update homeassistant/components/camera/__init__.py

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

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

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

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

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

* add tests for availability shortcuts - fix import

* group constants

* simplified loop

* Moving constants to .const

* rename value to topic

* move CONF_TOPIC to .const

* move CONF_AVAILABILITY to .const

* remove check for string

* Silently ignore if no config topic is found.

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

* Still store the abbreviation

* Code review

* Remove unused attribute

* Add ability to re-auth WattTime

* Consolidate logic for entry unique ID

* Fix tests

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

* Add unique_id

* Remove erroneous directory.

* Tests working!!

* Add back setup.

* First cut of import.

* Temp

* Tweak names.

* Import config.yaml.

* Clean up imports.

* Import working! Some refactor to clean it up.

* Add import test.

* Small optimization.

* Fix comments from code review.

* Remove CONF_NAME and config_flow for it.

* Fixup strings to match new config_flow.

* Fixes for comments from last review.

* Update tests to match new import code.

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

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

* Update tests.

* Fix lint error.

* Fix lint error, try 2.

* Revert unique_id to use location as part of ID.

* Fix code review comments.

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

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

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

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

* exception handling

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

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

* Add return typing

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

* Add reason assertion to config_flow test

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

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

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

* add the felaqua sensor

* add felaqua battery test

* fix felaqua product_id

* actually add a felaqua sensor 😅

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

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

* Use function for device_info

Multiple inheritance makes this tricky with a base class

* Device info in sensor

* Device info weather

* parantheses

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

* Code review

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

* Cleanup

* linting

* Code review

* Code review

* Code review

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

* fix name

* attributes

* set fixed attr before init

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

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

* Increase test coverage for webrtc camera stream

* Apply suggestions from code review

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

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

* Apply suggestions from code review

* Test that all transitions are passed correctly

* Fix linting

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

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

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

* Apply suggestions from code review

* Test that all transitions are passed correctly

* Fix linting

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

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

* Use async_write_ha_state within async methods

* Import YAML config from async_setup_platform

* Import flow prompts user when device is uncontactable during migration

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

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

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

* Remove unused imports from tests

* Abort config flow at earliest opportunity

* Return async_abort instead of raising AbortFlow

* Consolidate config entry test cleanup into a single function

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

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

This reverts commit 8220da7263e346a37c3e1a219dc374c4a43c7df5.

* Check resource acquisition/release in specific tests

* fixup! Check resource acquisition/release in specific tests

* Remove unused network dependency from manifest

* _on_event runs in async context

* Call async_write_ha_state directly (not via shedule_update)

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

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

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

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

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

* Use generic sensor for Xiaomi vacuum sensors.

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

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

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

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

* Working vacuum sensors via 1 coordinator.

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

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

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

* Remove vacuum setup method in sensor

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

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

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

* Don't auto register generic sensors.

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

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

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

* Remove converted attributes from xiaomi vacuum.

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

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

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

* Fetch data from vacuum sequentially.

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

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

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

* Refactor vacuum sensors to its own container.

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

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

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

* fixup! fix bad rebase.

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

* Fix sensor naming and default registration.

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

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

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

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

* Make vacuum platform also use coordinator for its data.

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

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

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

* Add binary sensor for vacuum

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

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

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

* Added proper icons to sensors.

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

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

* Refactor sensors to use dataclass.

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

* Make vacuum use coordinator for its data.

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

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

* Apply suggestions from code review

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

* Minor refactoring

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

* Update data from coordinator after running command.

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

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

* Refresh within coroutine is ok.

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

* Move logging to _handle_coordinator_update

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

* Use internal state attribute.

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

* Fix vacuum typing

* Fix tests constants

* Fix vacuum inconsistent return values

* Fix vacuum state update

* Fix vacuum tests

* Remove impossible cases

* Parametrize custom services test

* Move goto test

* Move clean segment test

* Move clean single segment test

* Test service pause

* Include vacuum in coverage

* Delint

* Fix vacuum sensor dict collision.

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

* Use f strings as dict keys

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

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

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

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

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

* Fix notify persistent_notification

* Remove setting up persistent_notification

* Drop more setups

* Empty methods

* Undeprecate sync methods because too big task

* Fix setup clearing notifications

* Fix a bunch of tests

* Fix more tests

* Uno mas

* Test persistent notification events

* Clean up stale comment

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

* fix debug message

* Add orbi models

* check start of model in V2 check

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

* fix debug message

* Add orbi models

* check start of model in V2 check

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

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

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

* Refactor multi-entity matching

Eliminate the notion on primary channel.

* Cleanup climate tests

* Refactor multi-entity match

Remove the "primary channel" in multiple entity matches

* Cleanup

* Add HVAC Action sensor

* Add a "stop_on_match" option for multi entities matches

Nominally working HVAC state sensors

* Add id_suffix for HVAC action sensor

* Fix Zen HVAC action sensor

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

* fix:login error

* update COUNTRY_CODE_CHINA line location

* added one blank line

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

* ci build errors

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

* fix:login error

* update COUNTRY_CODE_CHINA line location

* added one blank line

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

* ci build errors

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

- May improvment Monob model drops seen in #56646

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

* fix comment format issue

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

- May improvment Monob model drops seen in #56646

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

* Add few missing types

* Run hassfest

* Fix mypy errors

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

* Add active_power_max attribute

* Skip unsupported attributes on entity update

* Fix tests

* Create sensor only if the main attribute is supported

* Refactor ElectricalMeasurement sensor to use attr specific divisor and multiplier

* Multiple entities for electrical measurement cluster

* Update discovery tests

* Sensor clean up

* update tests

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

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

* fix comment format issue

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

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

* Only use DECONZ_DOMAIN to decide if service should be setup

* Consolidation of functionality

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

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

* Opengarage bug fix

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

* Deprecated open garage config

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

* Deprecated open garage config

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

* Fix late comments as well

* Improve service tests

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

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

* Opengarage bug fix

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

* Deprecated open garage config

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

* Deprecated open garage config

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

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

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

* fix emulated hold event

* Update homeassistant/components/keyboard_remote/__init__.py

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

* removed event value

* set key_hold to use string constant

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

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

* Update homeassistant/components/speedtestdotnet/const.py

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

* fix native_value, and ping value in test

* use self._state instead of _attr_native_value

* update identifiers and add more tests

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

* Add unload and reload functionality

* Update listener on retry

* Call reload directly and await

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

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

* Use isinstance rather than doing ZHATYPE compare

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

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

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

* Fix tests

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

* Surepetcare, lock name

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

* surepetcare_id

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

* typing

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

* Fix review comment

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

* Fix review comment

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

* Fix review comment

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

* add more tests

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

* Fix review comment

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

* Review comments 1

* Minor corrections

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

* Move custom filters to derived table

* Remove useless derived table

* Filter old states after grouping

* Split query

* Add comments

* Simplify state update period criteria

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

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

* review comment

* review comment

* use constant

* back to enum

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

* Add voltage sensor for Shelly 2/2.5

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

* fix cover grup state

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

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

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

* Add sensor, number and switch platform

* Addionizer switch

* Improve ionizer icon

* Fix parent of XiaomiFanMiot class

* Add another MIOT models

* Fix consts

* Add powersupply attached binary sensor

* Simplify async_create_miio_device_and_coordinator

* Simplify XiaomiGenericFan

* Fix XiaomiFanZA5 parent

* Remove pass

* Remove unused _available variable

* 1C doesn't support direction

* Suggested change

* Use elif

* Clean up oscillation angle

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

* Update .coveragerc file

* Create battery charging sensor only if tracker supports it

* Improve async_setup_entry

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

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

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

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

* Linting

* Fixing some type hinting

* Adding docstrings

* Removing files that shouldn't have been changed

* Splitting out test helpers

* Testing the price sensor

* Testing Controlled load and feed in channels

* Refactoring mocks

* switching state for native_value and unit_of_measurement for native_unit_of_measurement

* Fixing docstrings

* Fixing requiremennts_all.txt

* isort fixes

* Fixing pylint errors

* Omitting __init__.py from test coverage

* Add missing config_flow tests

* Adding more sensor tests

* Applying suggested changes to __init.py__

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

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

* Removing first function

* Refactoring sensor files to use entity descriptions, remove factory

* Rounding renewable percentage, return icons correctly

* Cleaning up translation strings

* Fixing relative path, removing TODO

* Coordintator tests now accept new (more accurate) fixtures

* Using a description placeholder

* Putting missing translations strings back in

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

* Removing DEVICE_CLASS, replacing the units with AUD/kWh

* Settings _attr_unique_id

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

* Apply suggestions from code review

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

* Adding strings.json

* Tighter wrapping for try/except

* Generating translations

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

* Apply suggestions from code review

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

* Fixing tests

* Add missing description placeholder

* Fix warning

* changing name from update to update_data to match async_update_data

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

* Creating too man renewable sensors

* Override update method

* Coordinator tests use _async_update_data

* Using $/kWh as the units

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

* Asserting self._sites in second step

* Linting

* Remove useless tests

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

* Update homeassistant/components/recorder/websocket_api.py

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

* Update homeassistant/components/recorder/websocket_api.py

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

* Fix typo

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

* delay utility_meter state

* check state

* store siblings

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

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

* Adjust tests

* Move clear_statistics WS API to recorder

* Adjust tests after rebase

* Update docstring

* Update homeassistant/components/recorder/websocket_api.py

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

* Adjust tests after rebase

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

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

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

* Fixes from code review

* Fixes from code review

* Import device config in flow if unavailable at hass start

* Support SSDP advertisements

* Ignore bad BOOTID, fix ssdp:byebye handling

* Only listen for events on interface connected to device

* Release all listeners when entities are removed

* Warn about deprecated dlna_dmr configuration

* Use sublogger for dlna_dmr.config_flow for easier filtering

* Tests for dlna_dmr.data module

* Rewrite DMR tests for HA style

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

* Update DMR entity state and device info when changed

* Replace deprecated async_upnp_client State with TransportState

* supported_features are dynamic, based on current device state

* Cleanup fully when subscription fails

* Log warnings when device connection fails unexpectedly

* Set PARALLEL_UPDATES to unlimited

* Fix spelling

* Fixes from code review

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

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

* Test if device is usable

* Handle ssdp:update messages properly

* Fix _remove_ssdp_callbacks being shared by all DlnaDmrEntity instances

* Fix tests for transitioning state

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

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

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

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

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

* Fix DMR string English localization

* Test config flow with UDN from SSDP headers

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

* fix test for remapping

* DMR HA Device connections based on root and embedded UDN

* DmrDevice's UpnpDevice is now named profile_device

* Use device type from SSDP headers, not device description

* Mark dlna_dmr constants as Final

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

* More informative connection error messages

* Also match SSDP messages on NT headers

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

* Bump async-upnp-client==0.22.2

* fix merge

* Bump async-upnp-client==0.22.3

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

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

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

* Apply suggestions from code review

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

* Move MAC to top of config flow form dict.

* Update homeassistant/components/switchbot/config_flow.py

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

* Add Fetch.ai coin to coinbase

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

* use new STATE_CLASS_TOTAL_INCREASING for metered entities

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

* Update homeassistant/components/wiffi/sensor.py

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

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

* remove "out of ten" unit

* change unit on rssi

* remove device class for light

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

* tweak

* remove

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

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

* black

* pylint

* type fix

* Add failure scenario test

* Update homeassistant/components/zwave_js/select.py

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

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

* Add device_class for humidity

* Fix monitored conditions

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

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

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

* tests

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

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

* Remove lambda

* Add assertions to remove type ignores

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

* Use attributes from entity_description

* Improvements

* Adress remarks

* Revert changes to fan

* move method

* Fix tests

* Revert fan/__init__.py

* Revert key change

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

* bump

* recheck

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

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

* Moved the cahce into the storage dir

* Bump version, 2021.9.3 will use pathlib

* Bump version to 2021.9.4

* Clean config path

* Remove leading slash

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

* fix permissions

* tweak

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

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

* Add test

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

* Suggested chancge

* Use Trackables class

* Use try..except for trackable_objects

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

* Use AlexaRangeContoller for speed or default

* Update tests

* no-else-return

* Avoid cases with only one preset_mode

* Only report ghost_mode to Alexa - fix bug

* Add some tests for patched code

* pylint

* pylint and tests with one preset_mode

* correct ghost preset mode check in test

* add tests for RangeController

* ghost preset_mode locale agnostic

* isort

* Update homeassistant/components/alexa/capabilities.py

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

* Update homeassistant/components/alexa/entities.py

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

* Update homeassistant/components/alexa/entities.py

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

* Update homeassistant/components/alexa/entities.py

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

* Update homeassistant/components/alexa/entities.py

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

* Update entities.py

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

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

* Tweak

* Improve tests

* Lint

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

* Fix from Zac

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

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

* Refactor get_attributes() method

Read 5 attributes at the time.

* Add ZCL_INIT_ATTRS attribute to base Zigbee channel

* Update tests and general clusters

* Update channels to use ZCL_INIT_ATTRS

* Update channels to use ZCL_INIT_ATTRS

* Fix tests

* Refactor async_initialize() to be a retryable request

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

* Use existing fixtures and test helpers

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

* Update sensor.py

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

* Remove some more in h.c.auth

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

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

* Review comments from other PR.

* Update homeassistant/components/tradfri/cover.py

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

* Update homeassistant/components/tradfri/cover.py

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

* Update homeassistant/components/tradfri/cover.py

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

* Update homeassistant/components/tradfri/cover.py

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

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

* Fix StatisticsRuns

* Update migration for Oracle Identity columns.

* Update migration logic

Migration to schema version 22 done only for engine dialect oracle

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

* Single input event for Block and RPC

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

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

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

* Surepetcare, strict typing

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

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

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

* Surepetcare, improve set_pet_location

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

* Surepetcare, improve set_pet_location

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

* Surepetcare, improve set_pet_location

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

* Surepetcare, improve set_pet_location

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

* Review comments.

* Review comments.

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

* Working siren platform with 100% test coverage

* Also add test file...

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

* Update homeassistant/components/deconz/siren.py

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

* Address review feedback on tests

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

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

* Surepetcare, add handle_set_pet_location

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

* Surepetcare, add handle_set_pet_location

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

* Review comments.

* Update homeassistant/components/modbus/base_platform.py

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

* Update homeassistant/components/modbus/base_platform.py

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

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

* Update dependencies

* Only send notification for unread messages

* Only inform if callback is not getting used

* Update gateway.py

* Apply PR feedback

* Update homeassistant/components/sms/gateway.py

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

* Apply PR comments

* Make black happy

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

* Allow named attributes in ZHA test attribute reports

* Let attribute write to update cache

* WIP Update tests

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

* style

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

* Add device actions

* Add trigger

* Just make use of standard command

* Generalize code a bit

* Switch tests to currently existing features

* Add tests for capabilities

* Don't check schema asserted value

* Adjust strings somewhat

* Directly expose action subtypes

* Add a status event test

* Switch to modern typing

* Drop chime that is now part of command

* Adjust strings a bit

* Drop ability to set custom value

* Adjust changed base schema

* Validate triggers

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

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

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

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

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

* Tweak

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

* Address pylint issues

* Black

* Apply suggestion from code review

* Apply suggestions from code review

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

* Fix test

* Use MockNetwork

* Tidy

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

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

* More cleanup

* Remove log

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

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

* Use EntityDescription - vicare sensor

* Fix typing

* Remove default values

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

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

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

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

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

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-14 08:50:29 +02:00
Daniel Hjelseth Høyer
dba2998e8c Clean up Surepetcare binary sensor (#56070) 2021-09-14 08:44:20 +02:00
Alexei Chetroi
fe1311ba34 Bump up zha dependencies (#56206) 2021-09-13 21:27:29 -04:00
Robert Hillis
14aa9c91eb Add Config Flow to Modem Caller ID integration (#46677)
* Add phone_modem integration

* Use original domain

* Add init tests for Modem Caller ID

* Clean up tests

* Clean up tests

* apply suggestions

* Fix tests

* Make only one instance possible

* Allow more than 1 device and remove hangup service

* simplify already configured

* Update sensor.py

* Update config_flow.py

* Fix manifest

* More cleanup

* Fix tests

* Ue target

* Clean up sensor.py

* Minor tweaks

* Close modem on restart and unload

* Update requirements

* fix tests

* Bump phone_modem

* rework

* add typing

* use async_setup_platform

* typing

* tweak

* cleanup

* fix init

* preserve original name

* remove callback line

* use list of serial devices on host

* tweak

* rework

* Rework for usb dicsovery

* Update requirements_test_all.txt

* Update config_flow.py

* tweaks

* tweak

* move api out of try statement

* suggested tweaks

* clean up

* typing

* tweak

* tweak

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

* Apply suggestions from code review

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

* Apply suggestions from code review

* Fix lint

* Fix lint and tests

* Apply suggestions from code review

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

* Use dict lookups

* Lint

* Apply code changes from PR review

* Do real integration setup in tests

* Apply suggestions from review & fix test

* Replace get with array operator

* Add suggestions from code review

* Rename test var

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

* Small adjustments

* Add properties and method_version

* fix unknown name

* add consider_home functionality

* fix typo

* fix key

* swao setup order

* use formatted mac

* add tracked_list option

* add options flow

* add config flow

* add config flow

* clean up registries

* only remove if no other integration has that device

* tracked_list formatting

* convert tracked list

* add import

* move imports

* use new tracked list on update

* use update_device instead of remove

* add strings

* initialize already known devices

* Update router.py

* Update router.py

* Update router.py

* small fixes

* styling

* fix typing

* fix spelling

* Update router.py

* get model of router

* add router device info

* fix api

* add listeners

* update router device info

* remove method version option

* Update __init__.py

* fix styling

* ignore typing

* remove typing

* fix mypy config

* Update mypy.ini

* add options flow tests

* Update .coveragerc

* fix styling

* Update homeassistant/components/netgear/__init__.py

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

* Update homeassistant/components/netgear/__init__.py

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

* Update homeassistant/components/netgear/__init__.py

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

* Update homeassistant/components/netgear/config_flow.py

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

* Update homeassistant/components/netgear/router.py

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

* add ConfigEntryNotReady

* Update router.py

* use entry.async_on_unload

* Update homeassistant/components/netgear/device_tracker.py

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

* use cv.ensure_list_csv

* add hostname property

* Update device_tracker.py

* fix typo

* fix isort

* add myself to codeowners

* clean config flow

* further clean config flow

* deprecate old netgear discovery

* split out _async_remove_untracked_registries

* Update homeassistant/components/netgear/config_flow.py

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

* Update homeassistant/components/netgear/config_flow.py

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

* cleanup

* fix rename

* fix typo

* remove URL option

* fixes

* add sensor platform

* fixes

* fix removing multiple entities

* remove extra attributes

* initialize sensors correctly

* extra sensors disabled by default

* fix styling and unused imports

* fix tests

* Update .coveragerc

* fix requirements

* remove tracked list

* remove tracked registry editing

* fix styling

* fix discovery test

* simplify unload

* Update homeassistant/components/netgear/router.py

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

* add typing

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

* add typing

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

* add typing

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

* condense NetgearSensorEntities

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

* Update homeassistant/components/netgear/router.py

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

* Update homeassistant/components/netgear/router.py

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

* Update homeassistant/components/netgear/router.py

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

* Update homeassistant/components/netgear/router.py

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

* add typing

* styling

* add typing

* use ForwardRefrence for typing

* Update homeassistant/components/netgear/device_tracker.py

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

* add typing

* Apply suggestions from code review

Thanks!

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

* process review comments

* fix styling

* fix devicename not available on all models

* ensure DeviceName is not needed

* Update homeassistant/components/netgear/config_flow.py

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

* Update homeassistant/components/netgear/config_flow.py

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

* Update __init__.py

* fix styling

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

* Accidental push over prior commit

* Add test for any case

* Add unavailable attribute and tests for unique_id

* Added tests for attributes

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

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

* Remove redundant None-check

* Move validate_statistics WS API to recorder

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

* Correct typing

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

* Apply review comments

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

* use new release

* Update for sensors

* big update

* pylint fixes, bump dependancy to 2021.8.2

* New version to try to fix the tests

* Fix a lot of errors, bump version

* more work

* Bump version

* Adde dimmer support

* Make sure the counters are useable in the energy dashboard

* bump version

* Fix testcases

* Update after review

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

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

* More comments updated

* Fix lefover index

* Fix unique id to be backwards compatible

* Fix small bug in covers

* Fix testcases

* Changes for theenery dashboard

* Fixed services

* Fix memo text

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

* Fix set_memo_text

* added an async scan task, more comments

* Accidently disabled some paltforms

* More comments, bump version

* Bump version, add extra attributes, enable mypy

* Removed new features

* More comments

* Bump version

* Update homeassistant/components/velbus/__init__.py

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

* Readd the import step

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

* Add coverage for already exists case

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

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

* Remove default values

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

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

* Fix test for environments with multiple sources

* Fix sonos tests

* More fixes/changes

* More fixes

* Use async_upnp_client==0.21.0

* Pylint/test fixes

* More changes after review

* Fix tests

* Improve testing

* Fix mypy

* Fix yamaha_musiccast tests?

* Changes after review

* Pylint

* Reduce calls to combined_headers

* Update to async_upnp_client==0.21.1

* Update to async_upnp_client==0.21.2

* use as_dict

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

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

* Cleanup

* Code review

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

* spacing

* Update homeassistant/components/zwave_js/__init__.py

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

* change variable name and use asyncio.gather

* Centralized where discovered value IDs gets managed

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

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

* Tweak import, add comment

* Tweak import, add comment

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

* Fix bug, adjust tests

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

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

* Review comment

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

* Apply suggestions from code review

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

* style

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

* Add negative assertion check to avoid regression

* Update tests/components/zwave_js/test_api.py

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

* use constant

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

* Pylint

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

* Update dependencies

* Only send notification for unread messages

* Only inform if callback is not getting used

* Update gateway.py

* Apply PR feedback

* Update homeassistant/components/sms/gateway.py

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

* Apply PR comments

* Make black happy

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

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

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

* Use asyncio sleep instead

* Extract sleep to const for testing

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

* Update .coverage.rc to remove Trackr

* Update requirements_all.txt
2021-09-08 05:01:58 +02:00
GitHub Action
f9e6e616f4 [ci skip] Translation update 2021-09-08 00:10:52 +00:00
Paulus Schoutsen
f0649855f9 Merge pull request #55870 from home-assistant/rc 2021-09-06 16:05:08 -07:00
Paulus Schoutsen
823c3735ce Bumped version to 2021.9.4 2021-09-06 13:41:39 -07:00
Diogo Gomes
68131a5c00 Integration Sensor unit of measurement overwrite (#55869) 2021-09-06 13:41:33 -07:00
J. Nick Koston
be0f767c34 Fix exception during rediscovery of ignored zha config entries (#55859)
Fixes #55709
2021-09-06 13:41:33 -07:00
Maciej Bieniek
450652a501 Fix target humidity step for Xiaomi MJJSQ humidifiers (#55858) 2021-09-06 13:41:32 -07:00
Daniel Hjelseth Høyer
8523f569c0 Surepetcare, bug fix (#55842) 2021-09-06 13:41:31 -07:00
mrwhite31
5f289434d3 Fix typo in in rfxtrx Barometer sensor (#55839)
Fix typo in sensor.py to fix barometer unavailability
2021-09-06 13:41:31 -07:00
Maciej Bieniek
3df6dfecab Fix a lazy preset mode update for Xiaomi Miio fans (#55837) 2021-09-06 13:41:30 -07:00
Martin Hjelmare
d6eda65302 Bump zwave-js-server-python to 0.30.0 (#55831) 2021-09-06 13:41:29 -07:00
Brandon Rothweiler
7a5bc2784a Upgrade pymazda to 0.2.1 (#55820) 2021-09-06 13:41:28 -07:00
David Bonnes
00878467cc Fix incomfort min/max temperatures (#55806) 2021-09-06 13:41:28 -07:00
Maciej Bieniek
899d8164b0 Fix xiaomi miio Air Quality Monitor initialization (#55773) 2021-09-06 13:41:27 -07:00
jan iversen
823fd60991 Allow same address different register types in modbus (#55767) 2021-09-06 13:41:26 -07:00
jan iversen
a6bb0eadca Allow same IP if ports are different on modbus (#55766) 2021-09-06 13:41:25 -07:00
Tatham Oddie
eb70354ee7 Fix logbook entity_matches_only query mode (#55761)
The string matching template needs to match the same compact JSON format
as the data is now written in.
2021-09-06 13:41:25 -07:00
Joshi
bd53185bed Fix switch name attribute for thinkingcleaner (#55730) 2021-09-06 13:41:24 -07:00
Paulus Schoutsen
df9a899bbd Merge pull request #55753 from home-assistant/rc 2021-09-04 14:51:15 -07:00
Paulus Schoutsen
37cf295e20 Bumped version to 2021.9.3 2021-09-04 14:13:37 -07:00
Simone Chemelli
04816fe26d Fix SamsungTV sendkey when not connected (#55723) 2021-09-04 14:13:34 -07:00
Anders Melchiorsen
eb48e75fc5 Fix LIFX firmware version information (#55713) 2021-09-04 14:13:33 -07:00
Simone Chemelli
9d5431fba1 Handle Fritz InternalError (#55711) 2021-09-04 14:13:32 -07:00
Erik Montnemery
a4f2c5583d Handle negative numbers in sensor long term statistics (#55708)
* Handle negative numbers in sensor long term statistics

* Use negative states in tests
2021-09-04 14:13:32 -07:00
Paulus Schoutsen
a37c3af2b4 better detect legacy eagly devices (#55706) 2021-09-04 14:13:31 -07:00
Paulus Schoutsen
33047d7260 Merge pull request #55673 from home-assistant/rc 2021-09-03 10:53:16 -07:00
Paulus Schoutsen
e3405d226a Bumped version to 2021.9.2 2021-09-03 10:16:36 -07:00
Paulus Schoutsen
3008ff03b2 Guard for doRollover failing (#55669) 2021-09-03 10:16:31 -07:00
Joakim Sørensen
8592d94a3c Fix hdmi_cec switches (#55666) 2021-09-03 10:16:30 -07:00
Nikolay Vasilchuk
b36e86d95c Fix Starline sensor state AttributeError (#55654)
* Fix starline sensors state

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

* merge

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

* remove operating system test

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-03 10:16:24 -07:00
J. Nick Koston
88ca83a30b Ignore missing devices when in ssdp unsee (#55553) 2021-09-03 10:16:24 -07:00
Paulus Schoutsen
f883fa9eef Merge pull request #55608 from home-assistant/rc 2021-09-02 13:35:47 -07:00
Paulus Schoutsen
5b705dba36 Bumped version to 2021.9.1 2021-09-02 12:50:56 -07:00
Pascal Vizeli
1592408a4b Downgrade sqlite-libs on docker image (#55591) 2021-09-02 12:50:48 -07:00
jan iversen
89b7be52af Correct duplicate address. (#55578) 2021-09-02 12:50:47 -07:00
Alexei Chetroi
8f85472df3 Pick right coordinator (#55555) 2021-09-02 12:50:45 -07:00
Teemu R
6aa771e5e8 xiaomi_miio: bump python-miio dependency (#55549) 2021-09-02 12:50:44 -07:00
Joakim Sørensen
7193e82963 Bump pyuptimerobot to 21.9.0 (#55546) 2021-09-02 12:50:43 -07:00
Paulus Schoutsen
245eec7041 Merge pull request #55532 from home-assistant/rc 2021-09-01 11:28:21 -07:00
Bram Kragten
493309daa7 Bumped version to 2021.9.0 2021-09-01 19:40:48 +02:00
Paulus Schoutsen
af68802c17 Tweaks for the iotawatt integration (#55510) 2021-09-01 19:37:43 +02:00
Brian Egge
576cece7a9 Fix None support_color_modes TypeError (#55497)
* Fix None support_color_modes TypeError 

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

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

* add comment

* update tests
2021-08-31 22:52:02 -07:00
Erik Montnemery
b8770c3958 Make new cycles for sensor sum statistics start with 0 as zero-point (#55473) 2021-08-31 22:52:01 -07:00
Eric Severance
f0c0cfcac0 Wemo Insight devices need polling when off (#55348) 2021-08-31 22:52:00 -07:00
Bram Kragten
4c48ad9108 Bumped version to Bumped version to 2021.9.0b6 2021-08-30 23:35:50 +02:00
Bram Kragten
92b0453749 Update frontend to 20210830.0 (#55472) 2021-08-30 23:33:47 +02:00
Raman Gupta
8ab801a7b4 Fix area_id and area_name template functions (#55470) 2021-08-30 23:33:46 +02:00
Aaron Bach
f92c7b1aea Bump aioambient to 1.3.0 (#55468) 2021-08-30 23:33:45 +02:00
Aaron Bach
0d9fbf864f Bump pyiqvia to 1.1.0 (#55466) 2021-08-30 23:33:44 +02:00
Aaron Bach
275f9c8a28 Bump pyopenuv to 2.2.0 (#55464) 2021-08-30 23:33:43 +02:00
Erik Montnemery
84f3b1514f Fix race in MQTT sensor when last_reset_topic is configured (#55463) 2021-08-30 23:33:43 +02:00
Greg
802f5613c4 Add IoTaWatt integration (#55364)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-08-30 23:33:42 +02:00
Paulus Schoutsen
8be40cbb00 Bumped version to 2021.9.0b5 2021-08-30 09:41:51 -07:00
Raman Gupta
46ce4e92f6 Bump zwave-js-server-python to 0.29.1 (#55460) 2021-08-30 09:41:42 -07:00
J. Nick Koston
39f11bb46d Bump zeroconf to 0.36.2 (#55459)
- Now sends NSEC records when requesting non-existent address types
  Implements RFC6762 sec 6.2 (http://datatracker.ietf.org/doc/html/rfc6762#section-6.2)

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

* Update homeassistant/components/dsmr/sensor.py

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

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

* Improve test coverage
2021-08-30 09:41:38 -07:00
Raman Gupta
b546fc5067 Don't set zwave_js sensor device class to energy when unit is wrong (#55434) 2021-08-30 09:41:37 -07:00
Christopher Kochan
5dcc760755 Add Sense energy sensors (#54833)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-30 09:41:36 -07:00
Paulus Schoutsen
fb06acf39d Bumped version to 2021.9.0b4 2021-08-29 20:45:45 -07:00
Raman Gupta
948f191f16 Make zwave_js discovery log message more descriptive (#55432) 2021-08-29 20:45:33 -07:00
Klaas Schoute
2c0d9105ac Update entity names for P1 Monitor integration (#55430) 2021-08-29 20:45:32 -07:00
J. Nick Koston
10df9f3542 Bump zeroconf to 0.36.1 (#55425)
- Fixes duplicate records in the cache

- Changelog: https://github.com/jstasiak/python-zeroconf/compare/0.36.0...0.36.1
2021-08-29 20:45:32 -07:00
Aaron Bach
6cf799459b Ensure ReCollect Waste shows pickups for midnight on the actual day (#55424) 2021-08-29 20:44:57 -07:00
Marc Mueller
47e2d1caa5 Fix device_class - qnap drive_temp sensor (#55409) 2021-08-29 20:41:25 -07:00
J. Nick Koston
69d8f94e3b Show device_id in HomeKit when the device registry entry is missing a name (#55391)
- Reported at: https://community.home-assistant.io/t/homekit-unknown-error-occurred/333385
2021-08-29 20:41:24 -07:00
Aaron Bach
4b7803ed03 Bump simplisafe-python to 11.0.6 (#55385) 2021-08-29 20:41:24 -07:00
J. Nick Koston
ff6015ff89 Implement import of consider_home in nmap_tracker to avoid breaking change (#55379) 2021-08-29 20:41:23 -07:00
Matt Krasowski
fbd144de46 Handle incorrect values reported by some Shelly devices (#55042) 2021-08-29 20:41:22 -07:00
Paulus Schoutsen
adaebdeea8 Bumped version to 2021.9.0b3 2021-08-28 08:59:25 -07:00
Maciej Bieniek
910cb5865a Address late review for Tractive integration (#55371) 2021-08-28 08:58:38 -07:00
Joakim Sørensen
baf0d9b2d9 Pin regex to 2021.8.28 (#55368) 2021-08-28 08:58:37 -07:00
Jason Hunter
c1bce68549 close connection on connection retry, bump onvif lib (#55363) 2021-08-28 08:58:36 -07:00
Nathan Spencer
bde4c0e46f Bump pylitterbot to 2021.8.1 (#55360) 2021-08-28 08:58:35 -07:00
Paulus Schoutsen
a275e7aa67 Fix wolflink super call (#55359) 2021-08-28 08:58:35 -07:00
Aaron Bach
d96e416d26 Ensure ReCollect Waste starts up even if no future pickup is found (#55349) 2021-08-28 08:58:34 -07:00
Paulus Schoutsen
efc3894303 Convert solarlog to coordinator (#55345) 2021-08-28 08:58:33 -07:00
Daniel Hjelseth Høyer
06b47ee2f5 Tractive name (#55342) 2021-08-28 08:58:33 -07:00
Raman Gupta
08ca43221f Listen to node events in the zwave_js node status sensor (#55341) 2021-08-28 08:58:32 -07:00
J. Nick Koston
8641740ed8 Ensure yeelights resync state if they are busy on first connect (#55333) 2021-08-28 08:58:31 -07:00
Paulus Schoutsen
d0ada6c6e2 Bumped version to 2021.9.0b2 2021-08-27 10:00:20 -07:00
Anders Melchiorsen
76bb036968 Upgrade aiolifx to 0.6.10 (#55344) 2021-08-27 10:00:00 -07:00
J. Nick Koston
d8b64be41c Retrigger config flow when the ssdp location changes for a UDN (#55343)
Fixes #55229
2021-08-27 09:59:59 -07:00
jan iversen
b3e0b7b86e Add modbus name to log_error (#55336) 2021-08-27 09:59:59 -07:00
Chris Talkington
e097e4c1c2 Fix reauth for sonarr (#55329)
* fix reauth for sonarr

* Update config_flow.py

* Update config_flow.py

* Update config_flow.py

* Update test_config_flow.py

* Update config_flow.py

* Update test_config_flow.py

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

* add debug message

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

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

* update tests

* fix test
2021-08-27 09:59:21 -07:00
J. Nick Koston
9f7398e0df Fix yeelight brightness when nightlight switch is disabled (#55278) 2021-08-27 09:57:07 -07:00
J. Nick Koston
7df84dadad Fix some yeelights showing wrong state after on/off (#55279) 2021-08-27 09:56:22 -07:00
Chris
2a1e943b18 Fix unique_id conflict in smarttthings (#55235) 2021-08-27 09:54:26 -07:00
prwood80
e6e72bfa82 Improve performance of ring camera still images (#53803)
Co-authored-by: Pat Wood <prwood80@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-08-27 09:54:25 -07:00
Paulus Schoutsen
219868b308 Bumped version to 2021.9.0b1 2021-08-26 09:37:25 -07:00
Maciej Bieniek
67dd861d8c Fix AttributeError for non-MIOT Xiaomi Miio purifiers (#55271) 2021-08-26 09:37:20 -07:00
Florian Gareis
f2765ba320 Don't create DSL sensor for devices that don't support DSL (#55269) 2021-08-26 09:37:19 -07:00
Erik Montnemery
aefd3df914 Warn if a sensor with state_class_total has a decreasing value twice (#55251) 2021-08-26 09:37:18 -07:00
Franck Nijhof
3658eeb8d1 Fix MQTT add-on discovery to be ignorable (#55250) 2021-08-26 09:37:07 -07:00
Erik Montnemery
080cb6b6e9 Fix double precision float for postgresql (#55249) 2021-08-26 09:37:06 -07:00
Joakim Sørensen
20796303da Only postfix image name for container (#55248) 2021-08-26 09:37:06 -07:00
J. Nick Koston
dff6151ff4 Abort zha usb discovery if deconz is setup (#55245)
* Abort zha usb discovery if deconz is setup

* Update tests/components/zha/test_config_flow.py

* add deconz domain const

* Update homeassistant/components/zha/config_flow.py

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

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

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

* test for None case
2021-08-26 09:37:01 -07:00
Marc Mueller
05df9b4b8b Remove temperature conversion - tado (#55231) 2021-08-26 09:37:01 -07:00
jjlawren
1865a28083 Set up polling task with subscriptions in Sonos (#54355) 2021-08-26 09:37:00 -07:00
Franck Nijhof
f78d57515a Bumped version to 2021.9.0b0 2021-08-25 22:11:21 +02:00
7134 changed files with 237386 additions and 81083 deletions

120
.core_files.yaml Normal file
View File

@@ -0,0 +1,120 @@
# Defines a list of files that are part of main core of Home Assistant.
# Changes to these files/filters define how our CI test suite is ran.
core: &core
- homeassistant/*.py
- homeassistant/auth/**
- homeassistant/helpers/*
- homeassistant/package_constraints.txt
- homeassistant/util/*
- pyproject.yaml
- requirements.txt
- setup.cfg
# Our base platforms, that are used by other integrations
base_platforms: &base_platforms
- homeassistant/components/air_quality/*
- homeassistant/components/alarm_control_panel/*
- homeassistant/components/binary_sensor/*
- homeassistant/components/button/*
- homeassistant/components/calendar/*
- homeassistant/components/camera/*
- homeassistant/components/climate/*
- homeassistant/components/cover/*
- homeassistant/components/device_tracker/*
- homeassistant/components/fan/*
- homeassistant/components/geo_location/*
- homeassistant/components/humidifier/*
- homeassistant/components/image_processing/*
- homeassistant/components/light/*
- homeassistant/components/lock/*
- homeassistant/components/media_player/*
- homeassistant/components/notify/*
- homeassistant/components/number/*
- homeassistant/components/remote/*
- homeassistant/components/scene/*
- homeassistant/components/select/*
- homeassistant/components/sensor/*
- homeassistant/components/siren/*
- homeassistant/components/stt/*
- homeassistant/components/switch/*
- homeassistant/components/tts/*
- homeassistant/components/vacuum/*
- homeassistant/components/water_heater/*
- homeassistant/components/weather/*
# Extra components that trigger the full suite
components: &components
- homeassistant/components/alert/*
- homeassistant/components/alexa/*
- homeassistant/components/auth/*
- homeassistant/components/automation/*
- homeassistant/components/cloud/*
- homeassistant/components/config/*
- homeassistant/components/configurator/*
- homeassistant/components/conversation/*
- homeassistant/components/demo/*
- homeassistant/components/device_automation/*
- homeassistant/components/dhcp/*
- homeassistant/components/discovery/*
- homeassistant/components/energy/*
- homeassistant/components/ffmpeg/*
- homeassistant/components/frontend/*
- homeassistant/components/google_assistant/*
- homeassistant/components/group/*
- homeassistant/components/hassio/*
- homeassistant/components/homeassistant/**
- homeassistant/components/image/*
- homeassistant/components/input_boolean/*
- homeassistant/components/input_datetime/*
- homeassistant/components/input_number/*
- homeassistant/components/input_select/*
- homeassistant/components/input_text/*
- homeassistant/components/logbook/*
- homeassistant/components/logger/*
- homeassistant/components/lovelace/*
- homeassistant/components/media_source/*
- homeassistant/components/mqtt/*
- homeassistant/components/network/*
- homeassistant/components/onboarding/*
- homeassistant/components/otp/*
- homeassistant/components/persistent_notification/*
- homeassistant/components/person/*
- homeassistant/components/recorder/*
- homeassistant/components/safe_mode/*
- homeassistant/components/script/*
- homeassistant/components/shopping_list/*
- homeassistant/components/ssdp/*
- homeassistant/components/stream/*
- homeassistant/components/sun/*
- homeassistant/components/system_health/*
- homeassistant/components/tag/*
- homeassistant/components/template/*
- homeassistant/components/timer/*
- homeassistant/components/usb/*
- homeassistant/components/webhook/*
- homeassistant/components/websocket_api/*
- homeassistant/components/zeroconf/*
- homeassistant/components/zone/*
# Testing related files that affect the whole test/linting suite
tests: &tests
- codecov.yaml
- requirements_test_pre_commit.txt
- requirements_test.txt
- tests/common.py
- tests/conftest.py
- tests/ignore_uncaught_exceptions.py
- tests/mock/*
- tests/test_util/*
- tests/testing_config/**
other: &other
- .github/workflows/*
- homeassistant/scripts/**
any:
- *base_platforms
- *components
- *core
- *other
- *tests

View File

@@ -29,13 +29,13 @@ omit =
homeassistant/components/ads/*
homeassistant/components/aemet/weather_update_coordinator.py
homeassistant/components/aftership/*
homeassistant/components/agent_dvr/__init__.py
homeassistant/components/agent_dvr/alarm_control_panel.py
homeassistant/components/agent_dvr/camera.py
homeassistant/components/agent_dvr/const.py
homeassistant/components/agent_dvr/helpers.py
homeassistant/components/airnow/__init__.py
homeassistant/components/airnow/sensor.py
homeassistant/components/airthings/__init__.py
homeassistant/components/airthings/sensor.py
homeassistant/components/airtouch4/__init__.py
homeassistant/components/airtouch4/climate.py
homeassistant/components/airtouch4/const.py
@@ -49,6 +49,7 @@ omit =
homeassistant/components/alarmdecoder/sensor.py
homeassistant/components/alpha_vantage/sensor.py
homeassistant/components/amazon_polly/*
homeassistant/components/amberelectric/__init__.py
homeassistant/components/ambiclimate/climate.py
homeassistant/components/ambient_station/*
homeassistant/components/amcrest/*
@@ -82,7 +83,6 @@ omit =
homeassistant/components/aurora/binary_sensor.py
homeassistant/components/aurora/const.py
homeassistant/components/aurora/sensor.py
homeassistant/components/aurora_abb_powerone/sensor.py
homeassistant/components/avea/light.py
homeassistant/components/avion/light.py
homeassistant/components/azure_devops/__init__.py
@@ -90,6 +90,8 @@ omit =
homeassistant/components/azure_devops/sensor.py
homeassistant/components/azure_service_bus/*
homeassistant/components/baidu/tts.py
homeassistant/components/balboa/__init__.py
homeassistant/components/balboa/entity.py
homeassistant/components/beewi_smartclim/sensor.py
homeassistant/components/bbb_gpio/*
homeassistant/components/bbox/device_tracker.py
@@ -123,6 +125,7 @@ omit =
homeassistant/components/bosch_shc/__init__.py
homeassistant/components/bosch_shc/binary_sensor.py
homeassistant/components/bosch_shc/const.py
homeassistant/components/bosch_shc/cover.py
homeassistant/components/bosch_shc/entity.py
homeassistant/components/bosch_shc/sensor.py
homeassistant/components/braviatv/__init__.py
@@ -131,12 +134,15 @@ omit =
homeassistant/components/braviatv/remote.py
homeassistant/components/broadlink/__init__.py
homeassistant/components/broadlink/const.py
homeassistant/components/broadlink/light.py
homeassistant/components/broadlink/remote.py
homeassistant/components/broadlink/switch.py
homeassistant/components/broadlink/updater.py
homeassistant/components/brottsplatskartan/sensor.py
homeassistant/components/browser/*
homeassistant/components/brunt/__init__.py
homeassistant/components/brunt/cover.py
homeassistant/components/brunt/const.py
homeassistant/components/bsblan/climate.py
homeassistant/components/bt_home_hub_5/device_tracker.py
homeassistant/components/bt_smarthub/device_tracker.py
@@ -171,6 +177,13 @@ omit =
homeassistant/components/coolmaster/const.py
homeassistant/components/cppm_tracker/device_tracker.py
homeassistant/components/cpuspeed/sensor.py
homeassistant/components/crownstone/__init__.py
homeassistant/components/crownstone/const.py
homeassistant/components/crownstone/listeners.py
homeassistant/components/crownstone/helpers.py
homeassistant/components/crownstone/devices.py
homeassistant/components/crownstone/entry_manager.py
homeassistant/components/crownstone/light.py
homeassistant/components/cups/sensor.py
homeassistant/components/currencylayer/sensor.py
homeassistant/components/daikin/*
@@ -203,7 +216,6 @@ omit =
homeassistant/components/dlib_face_detect/image_processing.py
homeassistant/components/dlib_face_identify/image_processing.py
homeassistant/components/dlink/switch.py
homeassistant/components/dlna_dmr/media_player.py
homeassistant/components/dnsip/sensor.py
homeassistant/components/dominos/*
homeassistant/components/doods/*
@@ -260,7 +272,10 @@ omit =
homeassistant/components/enphase_envoy/__init__.py
homeassistant/components/enphase_envoy/sensor.py
homeassistant/components/entur_public_transport/*
homeassistant/components/environment_canada/*
homeassistant/components/environment_canada/__init__.py
homeassistant/components/environment_canada/camera.py
homeassistant/components/environment_canada/sensor.py
homeassistant/components/environment_canada/weather.py
homeassistant/components/envirophat/sensor.py
homeassistant/components/envisalink/*
homeassistant/components/ephember/climate.py
@@ -271,6 +286,7 @@ omit =
homeassistant/components/eq3btsmart/climate.py
homeassistant/components/esphome/__init__.py
homeassistant/components/esphome/binary_sensor.py
homeassistant/components/esphome/button.py
homeassistant/components/esphome/camera.py
homeassistant/components/esphome/climate.py
homeassistant/components/esphome/cover.py
@@ -281,7 +297,6 @@ omit =
homeassistant/components/esphome/select.py
homeassistant/components/esphome/sensor.py
homeassistant/components/esphome/switch.py
homeassistant/components/essent/sensor.py
homeassistant/components/etherscan/sensor.py
homeassistant/components/eufy/*
homeassistant/components/everlights/light.py
@@ -290,6 +305,7 @@ omit =
homeassistant/components/ezviz/camera.py
homeassistant/components/ezviz/coordinator.py
homeassistant/components/ezviz/const.py
homeassistant/components/ezviz/entity.py
homeassistant/components/ezviz/binary_sensor.py
homeassistant/components/ezviz/sensor.py
homeassistant/components/ezviz/switch.py
@@ -322,6 +338,7 @@ omit =
homeassistant/components/fjaraskupan/const.py
homeassistant/components/fjaraskupan/fan.py
homeassistant/components/fjaraskupan/light.py
homeassistant/components/fjaraskupan/number.py
homeassistant/components/fjaraskupan/sensor.py
homeassistant/components/fleetgo/device_tracker.py
homeassistant/components/flexit/climate.py
@@ -334,7 +351,6 @@ omit =
homeassistant/components/flume/sensor.py
homeassistant/components/flunearyou/__init__.py
homeassistant/components/flunearyou/sensor.py
homeassistant/components/flux_led/light.py
homeassistant/components/folder/sensor.py
homeassistant/components/folder_watcher/*
homeassistant/components/foobot/sensor.py
@@ -359,7 +375,6 @@ omit =
homeassistant/components/fritzbox_callmonitor/const.py
homeassistant/components/fritzbox_callmonitor/base.py
homeassistant/components/fritzbox_callmonitor/sensor.py
homeassistant/components/fronius/sensor.py
homeassistant/components/frontier_silicon/media_player.py
homeassistant/components/futurenow/light.py
homeassistant/components/garadget/cover.py
@@ -368,7 +383,6 @@ omit =
homeassistant/components/garages_amsterdam/sensor.py
homeassistant/components/gc100/*
homeassistant/components/geniushub/*
homeassistant/components/generic_hygrostat/*
homeassistant/components/github/sensor.py
homeassistant/components/gitlab_ci/sensor.py
homeassistant/components/gitter/sensor.py
@@ -377,10 +391,6 @@ omit =
homeassistant/components/glances/sensor.py
homeassistant/components/gntp/notify.py
homeassistant/components/goalfeed/*
homeassistant/components/goalzero/__init__.py
homeassistant/components/goalzero/binary_sensor.py
homeassistant/components/goalzero/sensor.py
homeassistant/components/goalzero/switch.py
homeassistant/components/google/*
homeassistant/components/google_cloud/tts.py
homeassistant/components/google_maps/device_tracker.py
@@ -390,8 +400,6 @@ omit =
homeassistant/components/google_travel_time/sensor.py
homeassistant/components/gpmdp/media_player.py
homeassistant/components/gpsd/sensor.py
homeassistant/components/greeneye_monitor/*
homeassistant/components/greeneye_monitor/sensor.py
homeassistant/components/greenwave/light.py
homeassistant/components/group/notify.py
homeassistant/components/growatt_server/sensor.py
@@ -412,9 +420,6 @@ omit =
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
@@ -424,8 +429,9 @@ omit =
homeassistant/components/hisense_aehw4a1/climate.py
homeassistant/components/hitron_coda/device_tracker.py
homeassistant/components/hive/__init__.py
homeassistant/components/hive/climate.py
homeassistant/components/hive/alarm_control_panel.py
homeassistant/components/hive/binary_sensor.py
homeassistant/components/hive/climate.py
homeassistant/components/hive/light.py
homeassistant/components/hive/sensor.py
homeassistant/components/hive/switch.py
@@ -449,7 +455,6 @@ omit =
homeassistant/components/hp_ilo/sensor.py
homeassistant/components/htu21d/sensor.py
homeassistant/components/huawei_lte/*
homeassistant/components/huawei_router/device_tracker.py
homeassistant/components/hue/light.py
homeassistant/components/hunterdouglas_powerview/__init__.py
homeassistant/components/hunterdouglas_powerview/scene.py
@@ -494,7 +499,6 @@ omit =
homeassistant/components/incomfort/*
homeassistant/components/intesishome/*
homeassistant/components/ios/*
homeassistant/components/iota/*
homeassistant/components/iperf3/*
homeassistant/components/iqvia/*
homeassistant/components/irish_rail_transport/sensor.py
@@ -513,6 +517,8 @@ omit =
homeassistant/components/isy994/switch.py
homeassistant/components/itach/remote.py
homeassistant/components/itunes/media_player.py
homeassistant/components/jellyfin/__init__.py
homeassistant/components/jellyfin/media_source.py
homeassistant/components/joaoapps_join/*
homeassistant/components/juicenet/__init__.py
homeassistant/components/juicenet/const.py
@@ -533,7 +539,14 @@ omit =
homeassistant/components/keyboard_remote/*
homeassistant/components/kira/*
homeassistant/components/kiwi/lock.py
homeassistant/components/knx/*
homeassistant/components/knx/__init__.py
homeassistant/components/knx/climate.py
homeassistant/components/knx/cover.py
homeassistant/components/knx/expose.py
homeassistant/components/knx/knx_entity.py
homeassistant/components/knx/light.py
homeassistant/components/knx/notify.py
homeassistant/components/knx/schema.py
homeassistant/components/kodi/__init__.py
homeassistant/components/kodi/browse_media.py
homeassistant/components/kodi/const.py
@@ -543,7 +556,9 @@ omit =
homeassistant/components/kostal_plenticore/__init__.py
homeassistant/components/kostal_plenticore/const.py
homeassistant/components/kostal_plenticore/helper.py
homeassistant/components/kostal_plenticore/select.py
homeassistant/components/kostal_plenticore/sensor.py
homeassistant/components/kostal_plenticore/switch.py
homeassistant/components/kwb/sensor.py
homeassistant/components/lacrosse/sensor.py
homeassistant/components/lametric/*
@@ -577,7 +592,11 @@ omit =
homeassistant/components/logi_circle/const.py
homeassistant/components/logi_circle/sensor.py
homeassistant/components/london_underground/sensor.py
homeassistant/components/loopenergy/sensor.py
homeassistant/components/lookin/__init__.py
homeassistant/components/lookin/entity.py
homeassistant/components/lookin/models.py
homeassistant/components/lookin/sensor.py
homeassistant/components/lookin/climate.py
homeassistant/components/luci/device_tracker.py
homeassistant/components/luftdaten/__init__.py
homeassistant/components/luftdaten/sensor.py
@@ -591,7 +610,6 @@ omit =
homeassistant/components/lutron_caseta/scene.py
homeassistant/components/lutron_caseta/switch.py
homeassistant/components/lw12wifi/light.py
homeassistant/components/lyft/sensor.py
homeassistant/components/lyric/__init__.py
homeassistant/components/lyric/api.py
homeassistant/components/lyric/climate.py
@@ -628,7 +646,6 @@ omit =
homeassistant/components/miflora/sensor.py
homeassistant/components/mikrotik/hub.py
homeassistant/components/mikrotik/device_tracker.py
homeassistant/components/mill/__init__.py
homeassistant/components/mill/climate.py
homeassistant/components/mill/const.py
homeassistant/components/mill/sensor.py
@@ -641,13 +658,7 @@ omit =
homeassistant/components/mitemp_bt/sensor.py
homeassistant/components/mjpeg/camera.py
homeassistant/components/mochad/*
homeassistant/components/modbus/base_platform.py
homeassistant/components/modbus/binary_sensor.py
homeassistant/components/modbus/cover.py
homeassistant/components/modbus/climate.py
homeassistant/components/modbus/modbus.py
homeassistant/components/modbus/sensor.py
homeassistant/components/modbus/validators.py
homeassistant/components/modem_callerid/sensor.py
homeassistant/components/motion_blinds/__init__.py
homeassistant/components/motion_blinds/const.py
@@ -663,7 +674,6 @@ omit =
homeassistant/components/mutesync/binary_sensor.py
homeassistant/components/nest/const.py
homeassistant/components/mvglive/sensor.py
homeassistant/components/mychevy/*
homeassistant/components/mycroft/*
homeassistant/components/mysensors/__init__.py
homeassistant/components/mysensors/binary_sensor.py
@@ -686,8 +696,9 @@ omit =
homeassistant/components/myq/light.py
homeassistant/components/nad/media_player.py
homeassistant/components/nanoleaf/__init__.py
homeassistant/components/nanoleaf/button.py
homeassistant/components/nanoleaf/entity.py
homeassistant/components/nanoleaf/light.py
homeassistant/components/nanoleaf/util.py
homeassistant/components/neato/__init__.py
homeassistant/components/neato/api.py
homeassistant/components/neato/camera.py
@@ -696,10 +707,12 @@ omit =
homeassistant/components/neato/switch.py
homeassistant/components/neato/vacuum.py
homeassistant/components/nederlandse_spoorwegen/sensor.py
homeassistant/components/nello/lock.py
homeassistant/components/nest/legacy/*
homeassistant/components/netdata/sensor.py
homeassistant/components/netgear/__init__.py
homeassistant/components/netgear/device_tracker.py
homeassistant/components/netgear/router.py
homeassistant/components/netgear/sensor.py
homeassistant/components/netgear_lte/*
homeassistant/components/netio/switch.py
homeassistant/components/neurio_energy/sensor.py
@@ -724,11 +737,10 @@ omit =
homeassistant/components/nuki/const.py
homeassistant/components/nuki/binary_sensor.py
homeassistant/components/nuki/lock.py
homeassistant/components/nut/sensor.py
homeassistant/components/nx584/alarm_control_panel.py
homeassistant/components/nzbget/coordinator.py
homeassistant/components/obihai/*
homeassistant/components/octoprint/*
homeassistant/components/octoprint/__init__.py
homeassistant/components/oem/climate.py
homeassistant/components/oasa_telematics/sensor.py
homeassistant/components/ohmconnect/sensor.py
@@ -754,7 +766,11 @@ omit =
homeassistant/components/opencv/*
homeassistant/components/openevse/sensor.py
homeassistant/components/openexchangerates/sensor.py
homeassistant/components/opengarage/__init__.py
homeassistant/components/opengarage/binary_sensor.py
homeassistant/components/opengarage/cover.py
homeassistant/components/opengarage/entity.py
homeassistant/components/opengarage/sensor.py
homeassistant/components/openhome/__init__.py
homeassistant/components/openhome/media_player.py
homeassistant/components/openhome/const.py
@@ -770,7 +786,6 @@ omit =
homeassistant/components/openweathermap/sensor.py
homeassistant/components/openweathermap/weather.py
homeassistant/components/openweathermap/weather_update_coordinator.py
homeassistant/components/openweathermap/abstract_owm_sensor.py
homeassistant/components/opnsense/*
homeassistant/components/opple/light.py
homeassistant/components/orangepi_gpio/*
@@ -862,11 +877,10 @@ omit =
homeassistant/components/remote_rpi_gpio/*
homeassistant/components/rest/notify.py
homeassistant/components/rest/switch.py
homeassistant/components/ridwell/__init__.py
homeassistant/components/ridwell/sensor.py
homeassistant/components/ring/camera.py
homeassistant/components/ripple/sensor.py
homeassistant/components/rituals_perfume_genie/binary_sensor.py
homeassistant/components/rituals_perfume_genie/number.py
homeassistant/components/rituals_perfume_genie/select.py
homeassistant/components/rocketchat/notify.py
homeassistant/components/roomba/__init__.py
homeassistant/components/roomba/binary_sensor.py
@@ -899,6 +913,8 @@ omit =
homeassistant/components/screenlogic/__init__.py
homeassistant/components/screenlogic/binary_sensor.py
homeassistant/components/screenlogic/climate.py
homeassistant/components/screenlogic/light.py
homeassistant/components/screenlogic/number.py
homeassistant/components/screenlogic/sensor.py
homeassistant/components/screenlogic/services.py
homeassistant/components/screenlogic/switch.py
@@ -919,6 +935,7 @@ omit =
homeassistant/components/shodan/sensor.py
homeassistant/components/shelly/__init__.py
homeassistant/components/shelly/binary_sensor.py
homeassistant/components/shelly/climate.py
homeassistant/components/shelly/entity.py
homeassistant/components/shelly/light.py
homeassistant/components/shelly/sensor.py
@@ -990,23 +1007,31 @@ omit =
homeassistant/components/squeezebox/__init__.py
homeassistant/components/squeezebox/browse_media.py
homeassistant/components/squeezebox/media_player.py
homeassistant/components/ssdp/util.py
homeassistant/components/starline/*
homeassistant/components/starlingbank/sensor.py
homeassistant/components/steam_online/sensor.py
homeassistant/components/stiebel_eltron/*
homeassistant/components/stookalert/*
homeassistant/components/stookalert/__init__.py
homeassistant/components/stookalert/binary_sensor.py
homeassistant/components/stream/*
homeassistant/components/streamlabswater/*
homeassistant/components/suez_water/*
homeassistant/components/supervisord/sensor.py
homeassistant/components/surepetcare/__init__.py
homeassistant/components/surepetcare/entity.py
homeassistant/components/surepetcare/binary_sensor.py
homeassistant/components/surepetcare/sensor.py
homeassistant/components/swiss_hydrological_data/sensor.py
homeassistant/components/swiss_public_transport/sensor.py
homeassistant/components/swisscom/device_tracker.py
homeassistant/components/switchbot/switch.py
homeassistant/components/switchbot/binary_sensor.py
homeassistant/components/switchbot/__init__.py
homeassistant/components/switchbot/const.py
homeassistant/components/switchbot/entity.py
homeassistant/components/switchbot/cover.py
homeassistant/components/switchbot/sensor.py
homeassistant/components/switchbot/coordinator.py
homeassistant/components/switchmate/switch.py
homeassistant/components/syncthing/__init__.py
homeassistant/components/syncthing/sensor.py
@@ -1049,14 +1074,6 @@ omit =
homeassistant/components/telnet/switch.py
homeassistant/components/temper/sensor.py
homeassistant/components/tensorflow/image_processing.py
homeassistant/components/tesla/__init__.py
homeassistant/components/tesla/binary_sensor.py
homeassistant/components/tesla/climate.py
homeassistant/components/tesla/const.py
homeassistant/components/tesla/device_tracker.py
homeassistant/components/tesla/lock.py
homeassistant/components/tesla/sensor.py
homeassistant/components/tesla/switch.py
homeassistant/components/tfiac/climate.py
homeassistant/components/thermoworks_smoke/sensor.py
homeassistant/components/thethingsnetwork/*
@@ -1074,6 +1091,14 @@ omit =
homeassistant/components/todoist/calendar.py
homeassistant/components/todoist/const.py
homeassistant/components/tof/sensor.py
homeassistant/components/tolo/__init__.py
homeassistant/components/tolo/binary_sensor.py
homeassistant/components/tolo/button.py
homeassistant/components/tolo/climate.py
homeassistant/components/tolo/fan.py
homeassistant/components/tolo/light.py
homeassistant/components/tolo/select.py
homeassistant/components/tolo/sensor.py
homeassistant/components/tomato/device_tracker.py
homeassistant/components/toon/__init__.py
homeassistant/components/toon/binary_sensor.py
@@ -1090,18 +1115,25 @@ omit =
homeassistant/components/totalconnect/binary_sensor.py
homeassistant/components/totalconnect/const.py
homeassistant/components/touchline/climate.py
homeassistant/components/tplink/common.py
homeassistant/components/tplink/switch.py
homeassistant/components/tplink_lte/*
homeassistant/components/traccar/device_tracker.py
homeassistant/components/traccar/const.py
homeassistant/components/trackr/device_tracker.py
homeassistant/components/tractive/__init__.py
homeassistant/components/tractive/binary_sensor.py
homeassistant/components/tractive/device_tracker.py
homeassistant/components/tractive/entity.py
homeassistant/components/tractive/sensor.py
homeassistant/components/tradfri/*
homeassistant/components/tractive/switch.py
homeassistant/components/tradfri/__init__.py
homeassistant/components/tradfri/base_class.py
homeassistant/components/tradfri/config_flow.py
homeassistant/components/tradfri/cover.py
homeassistant/components/tradfri/fan.py
homeassistant/components/tradfri/light.py
homeassistant/components/tradfri/sensor.py
homeassistant/components/tradfri/switch.py
homeassistant/components/trafikverket_train/sensor.py
homeassistant/components/trafikverket_weatherstation/__init__.py
homeassistant/components/trafikverket_weatherstation/sensor.py
homeassistant/components/transmission/sensor.py
homeassistant/components/transmission/switch.py
@@ -1109,15 +1141,24 @@ omit =
homeassistant/components/transmission/errors.py
homeassistant/components/travisci/sensor.py
homeassistant/components/tuya/__init__.py
homeassistant/components/tuya/base.py
homeassistant/components/tuya/binary_sensor.py
homeassistant/components/tuya/button.py
homeassistant/components/tuya/camera.py
homeassistant/components/tuya/climate.py
homeassistant/components/tuya/const.py
homeassistant/components/tuya/cover.py
homeassistant/components/tuya/fan.py
homeassistant/components/tuya/humidifier.py
homeassistant/components/tuya/light.py
homeassistant/components/tuya/number.py
homeassistant/components/tuya/scene.py
homeassistant/components/tuya/select.py
homeassistant/components/tuya/sensor.py
homeassistant/components/tuya/siren.py
homeassistant/components/tuya/switch.py
homeassistant/components/twentemilieu/const.py
homeassistant/components/twentemilieu/sensor.py
homeassistant/components/tuya/util.py
homeassistant/components/tuya/vacuum.py
homeassistant/components/twilio_call/notify.py
homeassistant/components/twilio_sms/notify.py
homeassistant/components/twitter/notify.py
@@ -1145,7 +1186,10 @@ omit =
homeassistant/components/velbus/sensor.py
homeassistant/components/velbus/switch.py
homeassistant/components/velux/*
homeassistant/components/venstar/__init__.py
homeassistant/components/venstar/binary_sensor.py
homeassistant/components/venstar/climate.py
homeassistant/components/venstar/sensor.py
homeassistant/components/verisure/__init__.py
homeassistant/components/verisure/alarm_control_panel.py
homeassistant/components/verisure/binary_sensor.py
@@ -1162,12 +1206,18 @@ omit =
homeassistant/components/vesync/light.py
homeassistant/components/vesync/switch.py
homeassistant/components/viaggiatreno/sensor.py
homeassistant/components/vicare/*
homeassistant/components/vicare/binary_sensor.py
homeassistant/components/vicare/climate.py
homeassistant/components/vicare/const.py
homeassistant/components/vicare/__init__.py
homeassistant/components/vicare/sensor.py
homeassistant/components/vicare/water_heater.py
homeassistant/components/vilfo/__init__.py
homeassistant/components/vilfo/sensor.py
homeassistant/components/vilfo/const.py
homeassistant/components/vivotek/camera.py
homeassistant/components/vlc/media_player.py
homeassistant/components/vlc_telnet/__init__.py
homeassistant/components/vlc_telnet/media_player.py
homeassistant/components/volkszaehler/sensor.py
homeassistant/components/volumio/__init__.py
@@ -1179,13 +1229,14 @@ omit =
homeassistant/components/waterfurnace/*
homeassistant/components/watson_iot/*
homeassistant/components/watson_tts/tts.py
homeassistant/components/watttime/__init__.py
homeassistant/components/watttime/sensor.py
homeassistant/components/waze_travel_time/__init__.py
homeassistant/components/waze_travel_time/helpers.py
homeassistant/components/waze_travel_time/sensor.py
homeassistant/components/webostv/*
homeassistant/components/whois/sensor.py
homeassistant/components/wiffi/*
homeassistant/components/wink/*
homeassistant/components/wirelesstag/*
homeassistant/components/wolflink/__init__.py
homeassistant/components/wolflink/sensor.py
@@ -1228,7 +1279,6 @@ omit =
homeassistant/components/xiaomi_miio/select.py
homeassistant/components/xiaomi_miio/sensor.py
homeassistant/components/xiaomi_miio/switch.py
homeassistant/components/xiaomi_miio/vacuum.py
homeassistant/components/xiaomi_tv/media_player.py
homeassistant/components/xmpp/notify.py
homeassistant/components/xs1/*
@@ -1238,6 +1288,7 @@ omit =
homeassistant/components/yale_smart_alarm/coordinator.py
homeassistant/components/yamaha_musiccast/__init__.py
homeassistant/components/yamaha_musiccast/media_player.py
homeassistant/components/yamaha_musiccast/number.py
homeassistant/components/yandex_transport/*
homeassistant/components/yeelightsunflower/light.py
homeassistant/components/yi/camera.py
@@ -1285,5 +1336,6 @@ exclude_lines =
raise AssertionError
raise NotImplementedError
# TYPE_CHECKING block is never executed during pytest run
# TYPE_CHECKING and @overload blocks are never executed during pytest run
if TYPE_CHECKING:
@overload

View File

@@ -15,7 +15,7 @@ body:
attributes:
label: The problem
description: >-
Describe the issue you are experiencing here to communicate to the
Describe the issue you are experiencing here, to communicate to the
maintainers. Tell us what you were trying to do and what happened.
Provide a clear and concise description of what the problem is.
@@ -28,10 +28,12 @@ body:
validations:
required: true
attributes:
label: What is version of Home Assistant Core has the issue?
label: What version of Home Assistant Core has the issue?
placeholder: core-
description: >
Can be found in the Configuration panel -> Info.
Can be found in: [Configuration panel -> Info](https://my.home-assistant.io/redirect/info/).
[![Open your Home Assistant instance and show your Home Assistant version information.](https://my.home-assistant.io/badges/info.svg)](https://my.home-assistant.io/redirect/info/)
- type: input
attributes:
label: What was the last working version of Home Assistant Core?
@@ -44,7 +46,9 @@ body:
attributes:
label: What type of installation are you running?
description: >
If you don't know, you can find it in: Configuration panel -> Info.
Can be found in: [Configuration panel -> Info](https://my.home-assistant.io/redirect/info/).
[![Open your Home Assistant instance and show your Home Assistant version information.](https://my.home-assistant.io/badges/info.svg)](https://my.home-assistant.io/redirect/info/)
options:
- Home Assistant OS
- Home Assistant Container
@@ -55,15 +59,15 @@ body:
attributes:
label: Integration causing the issue
description: >
The name of the integration, for example, Automation or Philips Hue.
The name of the integration. For example: Automation, Philips Hue
- type: input
id: integration_link
attributes:
label: Link to integration documentation on our website
placeholder: "https://www.home-assistant.io/integrations/..."
description: |
Providing a link [to the documentation][docs] help us categorizing the
issue, while providing a useful reference at the same time.
Providing a link [to the documentation][docs] helps us categorize the
issue, while also providing a useful reference for others.
[docs]: https://www.home-assistant.io/integrations
@@ -75,8 +79,8 @@ body:
attributes:
label: Example YAML snippet
description: |
If this issue has an example piece of YAML that can help reproducing this problem, please provide.
This can be an piece of YAML from, e.g., an automation, script, scene or configuration.
If applicable, please provide an example piece of YAML that can help reproduce this problem.
This can be from an automation, script, scene or configuration.
render: yaml
- type: textarea
attributes:
@@ -88,5 +92,3 @@ body:
label: Additional information
description: >
If you have any additional information for us, use the field below.
Please note, you can attach screenshots or screen recordings here, by
dragging and dropping files in the field below.

View File

@@ -23,12 +23,12 @@ jobs:
publish: ${{ steps.version.outputs.publish }}
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
with:
fetch-depth: 0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
uses: actions/setup-python@v2.3.1
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -56,9 +56,7 @@ jobs:
uses: home-assistant/actions/helpers/codenotary@master
with:
source: file://${{ github.workspace }}/OFFICIAL_IMAGE
user: ${{ secrets.VCN_USER }}
password: ${{ secrets.VCN_PASSWORD }}
organisation: home-assistant.io
token: ${{ secrets.CAS_TOKEN }}
build_python:
name: Build PyPi package
@@ -67,10 +65,10 @@ jobs:
if: needs.init.outputs.publish == 'true'
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
uses: actions/setup-python@v2.3.1
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -97,11 +95,11 @@ jobs:
arch: ${{ fromJson(needs.init.outputs.architectures) }}
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
if: needs.init.outputs.channel == 'dev'
uses: actions/setup-python@v2.2.2
uses: actions/setup-python@v2.3.1
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -133,15 +131,15 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build base image
uses: home-assistant/builder@2021.07.0
uses: home-assistant/builder@2021.11.4
with:
args: |
$BUILD_ARGS \
--${{ matrix.arch }} \
--target /data \
--with-codenotary "${{ secrets.VCN_USER }}" "${{ secrets.VCN_PASSWORD }}" "${{ secrets.VCN_ORG }}" \
--validate-from "${{ secrets.VCN_ORG }}" \
--generic ${{ needs.init.outputs.version }}
env:
CAS_API_KEY: ${{ secrets.CAS_TOKEN }}
build_machine:
name: Build ${{ matrix.machine }} machine core image
@@ -170,7 +168,7 @@ jobs:
- tinker
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Login to DockerHub
uses: docker/login-action@v1.10.0
@@ -186,14 +184,14 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build base image
uses: home-assistant/builder@2021.07.0
uses: home-assistant/builder@2021.11.4
with:
args: |
$BUILD_ARGS \
--target /data/machine \
--with-codenotary "${{ secrets.VCN_USER }}" "${{ secrets.VCN_PASSWORD }}" "${{ secrets.VCN_ORG }}" \
--validate-from "${{ secrets.VCN_ORG }}" \
--machine "${{ needs.init.outputs.version }}=${{ matrix.machine }}"
env:
CAS_API_KEY: ${{ secrets.CAS_TOKEN }}
publish_ha:
name: Publish version files
@@ -201,7 +199,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Initialize git
uses: home-assistant/actions/helpers/git-init@master
@@ -233,7 +231,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Login to DockerHub
uses: docker/login-action@v1.10.0
@@ -248,8 +246,8 @@ jobs:
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Install VCN tools
uses: home-assistant/actions/helpers/vcn@master
- name: Install CAS tools
uses: home-assistant/actions/helpers/cas@master
- name: Build Meta Image
shell: bash
@@ -293,8 +291,7 @@ jobs:
function validate_image() {
local image=${1}
state="$(vcn authenticate --org home-assistant.io --output json docker://${image} | jq '.verification.status // 2')"
if [[ "${state}" != "0" ]]; then
if ! cas authenticate --signerID notary@home-assistant.io "docker://${image}"; then
echo "Invalid signature!"
exit 1
fi

View File

@@ -10,12 +10,120 @@ on:
pull_request: ~
env:
CACHE_VERSION: 2
CACHE_VERSION: 3
DEFAULT_PYTHON: 3.8
PRE_COMMIT_CACHE: ~/.cache/pre-commit
SQLALCHEMY_WARN_20: 1
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
changes:
name: Determine what has changed
outputs:
# In case of issues with the partial run, use the following line instead:
# test_full_suite: 'true'
test_full_suite: ${{ steps.info.outputs.test_full_suite }}
core: ${{ steps.core.outputs.changes }}
integrations: ${{ steps.integrations.outputs.changes }}
integrations_glob: ${{ steps.info.outputs.integrations_glob }}
tests: ${{ steps.info.outputs.tests }}
tests_glob: ${{ steps.info.outputs.tests_glob }}
test_groups: ${{ steps.info.outputs.test_groups }}
test_group_count: ${{ steps.info.outputs.test_group_count }}
runs-on: ubuntu-latest
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.4.0
- name: Filter for core changes
uses: dorny/paths-filter@v2.10.2
id: core
with:
filters: .core_files.yaml
- name: Create a list of integrations to filter for changes
run: |
integrations=$(ls -Ad ./homeassistant/components/[!_]* | xargs -n 1 basename)
touch .integration_paths.yaml
for integration in $integrations; do
echo "${integration}: [homeassistant/components/${integration}/*, tests/components/${integration}/*]" \
>> .integration_paths.yaml;
done
echo "Result:"
cat .integration_paths.yaml
- name: Filter for integration changes
uses: dorny/paths-filter@v2.10.2
id: integrations
with:
filters: .integration_paths.yaml
- name: Collect additional information
id: info
run: |
# Defaults
integrations_glob=""
test_full_suite="true"
test_groups="[1, 2, 3, 4, 5, 6]"
test_group_count=6
tests="[]"
tests_glob=""
if [[ "${{ steps.integrations.outputs.changes }}" != "[]" ]];
then
# Create a file glob for the integrations
integrations_glob=$(echo '${{ steps.integrations.outputs.changes }}' | jq -cSr '. | join(",")')
[[ "${integrations_glob}" == *","* ]] && integrations_glob="{${integrations_glob}}"
# Create list of testable integrations
possible_integrations=$(echo '${{ steps.integrations.outputs.changes }}' | jq -cSr '.[]')
tests=$(
for integration in ${possible_integrations};
do
if [[ -d "tests/components/${integration}" ]]; then
echo -n "\"${integration}\",";
fi;
done
)
[[ ! -z "${tests}" ]] && tests="${tests::-1}"
tests="[${tests}]"
test_groups="${tests}"
# Test group count should be 1, we don't split partial tests
test_group_count=1
# Create a file glob for the integrations tests
tests_glob=$(echo "${tests}" | jq -cSr '. | join(",")')
[[ "${tests_glob}" == *","* ]] && tests_glob="{${tests_glob}}"
test_full_suite="false"
fi
# We need to run the full suite on certain branches.
# Or, in case core files are touched, for the full suite as well.
if [[ "${{ github.ref }}" == "refs/heads/dev" ]] \
|| [[ "${{ github.ref }}" == "refs/heads/master" ]] \
|| [[ "${{ github.ref }}" == "refs/heads/rc" ]] \
|| [[ "${{ steps.core.outputs.any }}" == "true" ]];
then
test_groups="[1, 2, 3, 4, 5, 6]"
test_group_count=6
test_full_suite="true"
fi
# Output & sent to GitHub Actions
echo "test_full_suite: ${test_full_suite}"
echo "::set-output name=test_full_suite::${test_full_suite}"
echo "integrations_glob: ${integrations_glob}"
echo "::set-output name=integrations_glob::${integrations_glob}"
echo "test_group_count: ${test_group_count}"
echo "::set-output name=test_group_count::${test_group_count}"
echo "test_groups: ${test_groups}"
echo "::set-output name=test_groups::${test_groups}"
echo "tests: ${tests}"
echo "::set-output name=tests::${tests}"
echo "tests_glob: ${tests_glob}"
echo "::set-output name=tests_glob::${tests_glob}"
# Separate job to pre-populate the base dependency cache
# This prevent upcoming jobs to do the same individually
prepare-base:
@@ -26,10 +134,10 @@ jobs:
pre-commit-key: ${{ steps.generate-pre-commit-key.outputs.key }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v2.2.2
uses: actions/setup-python@v2.3.1
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Generate partial Python venv restore key
@@ -41,7 +149,7 @@ jobs:
hashFiles('homeassistant/package_constraints.txt') }}"
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: venv
key: >-
@@ -65,7 +173,7 @@ jobs:
hashFiles('.pre-commit-config.yaml') }}"
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: ${{ env.PRE_COMMIT_CACHE }}
key: >-
@@ -78,61 +186,23 @@ jobs:
. venv/bin/activate
pre-commit install-hooks
lint-bandit:
name: Check bandit
runs-on: ubuntu-latest
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
with:
path: venv
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: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2.1.6
with:
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 pre-commit environment from cache"
exit 1
- name: Run bandit
run: |
. venv/bin/activate
pre-commit run --hook-stage manual bandit --all-files --show-diff-on-failure
lint-black:
name: Check black
runs-on: ubuntu-latest
needs: prepare-base
needs:
- changes
- prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
uses: actions/setup-python@v2.3.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: venv
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
@@ -144,7 +214,7 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
@@ -153,131 +223,35 @@ jobs:
run: |
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Run black
- name: Run black (fully)
if: needs.changes.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
pre-commit run --hook-stage manual black --all-files --show-diff-on-failure
lint-codespell:
name: Check codespell
runs-on: ubuntu-latest
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
with:
path: venv
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: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2.1.6
with:
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 pre-commit environment from cache"
exit 1
- name: Register codespell problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/codespell.json"
- name: Run codespell
- name: Run black (partially)
if: needs.changes.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
pre-commit run --show-diff-on-failure --hook-stage manual codespell --all-files
lint-dockerfile:
name: Check Dockerfile
runs-on: ubuntu-latest
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
- name: Register hadolint problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/hadolint.json"
- name: Check Dockerfile
uses: docker://hadolint/hadolint:v1.18.2
with:
args: hadolint Dockerfile
- name: Check Dockerfile.dev
uses: docker://hadolint/hadolint:v1.18.2
with:
args: hadolint Dockerfile.dev
lint-executable-shebangs:
name: Check executables
runs-on: ubuntu-latest
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
with:
path: venv
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: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2.1.6
with:
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 pre-commit environment from cache"
exit 1
- name: Register check executables problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/check-executables-have-shebangs.json"
- name: Run executables check
run: |
. venv/bin/activate
pre-commit run --hook-stage manual check-executables-have-shebangs --all-files
pre-commit run --hook-stage manual black --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/* --show-diff-on-failure
lint-flake8:
name: Check flake8
runs-on: ubuntu-latest
needs: prepare-base
needs:
- changes
- prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
uses: actions/setup-python@v2.3.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: venv
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
@@ -289,7 +263,7 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
@@ -301,10 +275,17 @@ jobs:
- name: Register flake8 problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/flake8.json"
- name: Run flake8
- name: Run flake8 (fully)
if: needs.changes.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
pre-commit run --hook-stage manual flake8 --all-files
- name: Run flake8 (partially)
if: needs.changes.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
pre-commit run --hook-stage manual flake8 --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/*
lint-isort:
name: Check isort
@@ -312,15 +293,15 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
uses: actions/setup-python@v2.3.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: venv
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
@@ -332,7 +313,7 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
@@ -346,21 +327,23 @@ jobs:
. venv/bin/activate
pre-commit run --hook-stage manual isort --all-files --show-diff-on-failure
lint-json:
name: Check JSON
lint-other:
name: Check other linters
runs-on: ubuntu-latest
needs: prepare-base
needs:
- changes
- prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
uses: actions/setup-python@v2.3.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: venv
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
@@ -372,7 +355,7 @@ jobs:
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: ${{ env.PRE_COMMIT_CACHE }}
key: ${{ runner.os }}-${{ needs.prepare-base.outputs.pre-commit-key }}
@@ -381,6 +364,27 @@ jobs:
run: |
echo "Failed to restore pre-commit environment from cache"
exit 1
- name: Run pyupgrade (fully)
if: needs.changes.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
pre-commit run --hook-stage manual pyupgrade --all-files --show-diff-on-failure
- name: Run pyupgrade (partially)
if: needs.changes.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
pre-commit run --hook-stage manual pyupgrade --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/* --show-diff-on-failure
- name: Register yamllint problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/yamllint.json"
- name: Run yamllint
run: |
. venv/bin/activate
pre-commit run --hook-stage manual yamllint --all-files --show-diff-on-failure
- name: Register check-json problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/check-json.json"
@@ -389,99 +393,45 @@ jobs:
. venv/bin/activate
pre-commit run --hook-stage manual check-json --all-files
lint-pyupgrade:
name: Check pyupgrade
runs-on: ubuntu-latest
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
with:
path: venv
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'
- name: Register check executables problem matcher
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2.1.6
with:
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 pre-commit environment from cache"
exit 1
- name: Run pyupgrade
echo "::add-matcher::.github/workflows/matchers/check-executables-have-shebangs.json"
- name: Run executables check
run: |
. venv/bin/activate
pre-commit run --hook-stage manual pyupgrade --all-files --show-diff-on-failure
pre-commit run --hook-stage manual check-executables-have-shebangs --all-files
# Disabled until we have the existing issues fixed
# lint-shellcheck:
# name: Check ShellCheck
# runs-on: ubuntu-latest
# needs: prepare-base
# steps:
# - name: Check out code from GitHub
# uses: actions/checkout@v2.3.4
# - name: Run ShellCheck
# uses: ludeeus/action-shellcheck@0.3.0
lint-yaml:
name: Check YAML
runs-on: ubuntu-latest
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
with:
path: venv
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'
- name: Register codespell problem matcher
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v2.1.6
with:
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 pre-commit environment from cache"
exit 1
- name: Register yamllint problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/yamllint.json"
- name: Run yamllint
echo "::add-matcher::.github/workflows/matchers/codespell.json"
- name: Run codespell
run: |
. venv/bin/activate
pre-commit run --hook-stage manual yamllint --all-files --show-diff-on-failure
pre-commit run --show-diff-on-failure --hook-stage manual codespell --all-files
- name: Register hadolint problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/hadolint.json"
- name: Check Dockerfile
uses: docker://hadolint/hadolint:v1.18.2
with:
args: hadolint Dockerfile
- name: Check Dockerfile.dev
uses: docker://hadolint/hadolint:v1.18.2
with:
args: hadolint Dockerfile.dev
- name: Run bandit (fully)
if: needs.changes.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
pre-commit run --hook-stage manual bandit --all-files --show-diff-on-failure
- name: Run bandit (partially)
if: needs.changes.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
pre-commit run --hook-stage manual bandit --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/* --show-diff-on-failure
hassfest:
name: Check hassfest
@@ -493,10 +443,10 @@ jobs:
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: venv
key: ${{ runner.os }}-${{ matrix.python-version }}-${{
@@ -517,15 +467,15 @@ jobs:
needs: prepare-base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
uses: actions/setup-python@v2.3.1
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: venv
key: ${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
@@ -551,7 +501,7 @@ jobs:
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Generate partial Python venv restore key
id: generate-python-key
run: >-
@@ -561,7 +511,7 @@ jobs:
hashFiles('homeassistant/package_constraints.txt') }}"
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: venv
key: >-
@@ -588,17 +538,19 @@ jobs:
pylint:
name: Check pylint
runs-on: ubuntu-latest
needs: prepare-tests
needs:
- changes
- prepare-tests
strategy:
matrix:
python-version: [3.8]
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: venv
key: ${{ runner.os }}-${{ matrix.python-version }}-${{
@@ -611,25 +563,34 @@ jobs:
- name: Register pylint problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/pylint.json"
- name: Run pylint
- name: Run pylint (fully)
if: needs.changes.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
pylint homeassistant
- name: Run pylint (partially)
if: needs.changes.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
pylint homeassistant/components/${{ needs.changes.outputs.integrations_glob }}
mypy:
name: Check mypy
runs-on: ubuntu-latest
needs: prepare-tests
needs:
- changes
- prepare-tests
strategy:
matrix:
python-version: [3.8]
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: venv
key: ${{ runner.os }}-${{ matrix.python-version }}-${{
@@ -642,28 +603,44 @@ jobs:
- name: Register mypy problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/mypy.json"
- name: Run mypy
- name: Run mypy (fully)
if: needs.changes.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
mypy homeassistant
- name: Run mypy (partially)
if: needs.changes.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
mypy homeassistant/components/${{ needs.changes.outputs.integrations_glob }}
pytest:
runs-on: ubuntu-latest
needs: prepare-tests
if: needs.changes.outputs.test_full_suite == 'true' || needs.changes.outputs.tests_glob
needs:
- changes
- gen-requirements-all
- hassfest
- lint-black
- lint-other
- lint-isort
- mypy
- prepare-tests
strategy:
fail-fast: false
matrix:
group: [1, 2, 3, 4]
group: ${{ fromJson(needs.changes.outputs.test_groups) }}
python-version: [3.8, 3.9]
name: >-
Run tests Python ${{ matrix.python-version }} (group ${{ matrix.group }})
Run tests Python ${{ matrix.python-version }} (${{ matrix.group }})
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
uses: actions/cache@v2.1.7
with:
path: venv
key: ${{ runner.os }}-${{ matrix.python-version }}-${{
@@ -682,62 +659,83 @@ jobs:
# Ideally this should be part of our dependencies
# However this plugin is fairly new and doesn't run correctly
# on a non-GitHub environment.
pip install pytest-github-actions-annotate-failures
- name: Run pytest
pip install pytest-github-actions-annotate-failures==0.1.3
- name: Register pytest slow test problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/pytest-slow.json"
- name: Run pytest (fully)
if: needs.changes.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
pytest \
python3 -X dev -m pytest \
-qq \
--timeout=9 \
--durations=10 \
-n auto \
--dist=loadfile \
--test-group-count 4 \
--test-group-count ${{ needs.changes.outputs.test_group_count }} \
--test-group=${{ matrix.group }} \
--cov homeassistant \
--cov-report= \
--cov-report=xml \
-o console_output_style=count \
-p no:sugar \
tests
- name: Run pytest (partially)
if: needs.changes.outputs.test_full_suite == 'false' && matrix.python-version != '3.8'
run: |
. venv/bin/activate
python3 -X dev -m pytest \
-qq \
--timeout=9 \
--durations=10 \
-n auto \
--cov homeassistant.components.${{ matrix.group }} \
--cov-report=xml \
--cov-report=term-missing \
-o console_output_style=count \
--durations=0 \
--durations-min=1 \
-p no:sugar \
tests/components/${{ matrix.group }}
- name: Run pytest (partially); no coverage
if: needs.changes.outputs.test_full_suite == 'false' && matrix.python-version == '3.8'
run: |
. venv/bin/activate
python3 -X dev -m pytest \
-qq \
--timeout=9 \
--durations=10 \
-n auto \
-o console_output_style=count \
--durations=0 \
--durations-min=1 \
-p no:sugar \
tests/components/${{ matrix.group }}
- name: Upload coverage artifact
uses: actions/upload-artifact@v2.2.4
with:
name: coverage-${{ matrix.python-version }}-group${{ matrix.group }}
path: .coverage
name: coverage-${{ matrix.python-version }}-${{ matrix.group }}
path: coverage.xml
- name: Check dirty
run: |
./script/check_dirty
coverage:
name: Process test coverage
name: Upload test coverage to Codecov
runs-on: ubuntu-latest
needs: ["prepare-tests", "pytest"]
strategy:
matrix:
python-version: [3.8]
container: homeassistant/ci-azure:${{ matrix.python-version }}
needs:
- changes
- pytest
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.3.4
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.6
with:
path: venv
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: |
echo "Failed to restore Python virtual environment from cache"
exit 1
uses: actions/checkout@v2.4.0
- name: Download all coverage artifacts
uses: actions/download-artifact@v2
- name: Combine coverage results
run: |
. venv/bin/activate
coverage combine coverage*/.coverage*
coverage report --fail-under=94
coverage xml
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v2.0.3
- name: Upload coverage to Codecov (full coverage)
if: needs.changes.outputs.test_full_suite == 'true'
uses: codecov/codecov-action@v2.1.0
with:
flags: full-suite
- name: Upload coverage to Codecov (partial coverage)
if: needs.changes.outputs.test_full_suite == 'false'
uses: codecov/codecov-action@v2.1.0

View File

@@ -9,12 +9,12 @@ jobs:
lock:
runs-on: ubuntu-latest
steps:
- uses: dessant/lock-threads@v2.1.2
- uses: dessant/lock-threads@v3
with:
github-token: ${{ github.token }}
issue-lock-inactive-days: "30"
issue-exclude-created-before: "2020-10-01T00:00:00Z"
issue-inactive-days: "30"
exclude-issue-created-before: "2020-10-01T00:00:00Z"
issue-lock-reason: ""
pr-lock-inactive-days: "1"
pr-exclude-created-before: "2020-11-01T00:00:00Z"
pr-inactive-days: "1"
exclude-pr-created-before: "2020-11-01T00:00:00Z"
pr-lock-reason: ""

View File

@@ -0,0 +1,18 @@
{
"problemMatcher": [
{
"owner": "python",
"pattern": [
{
"regexp": "^=+ slowest durations =+$"
},
{
"regexp": "^((.*s)\\s(call|setup|teardown)\\s+(.*)::(.*))$",
"message": 1,
"file": 2,
"loop": true
}
]
}
]
}

View File

@@ -20,10 +20,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v2
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
uses: actions/setup-python@v2.3.1
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -39,10 +39,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v2
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.2.2
uses: actions/setup-python@v2.3.1
with:
python-version: ${{ env.DEFAULT_PYTHON }}

View File

@@ -21,7 +21,7 @@ jobs:
architectures: ${{ steps.info.outputs.architectures }}
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Get information
id: info
@@ -68,7 +68,7 @@ jobs:
- "3.9-alpine3.14"
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Download env_file
uses: actions/download-artifact@v2
@@ -89,7 +89,7 @@ jobs:
wheels-key: ${{ secrets.WHEELS_KEY }}
wheels-user: wheels
env-file: true
apk: "build-base;cmake;git;linux-headers;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev"
apk: "build-base;cmake;git;linux-headers;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;cargo"
pip: "Cython;numpy"
skip-binary: aiohttp
constraints: "homeassistant/package_constraints.txt"
@@ -108,7 +108,7 @@ jobs:
- "3.9-alpine3.14"
steps:
- name: Checkout the repository
uses: actions/checkout@v2.3.4
uses: actions/checkout@v2.4.0
- name: Download env_file
uses: actions/download-artifact@v2
@@ -158,7 +158,7 @@ jobs:
wheels-key: ${{ secrets.WHEELS_KEY }}
wheels-user: wheels
env-file: true
apk: "build-base;cmake;git;linux-headers;libexecinfo-dev;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;autoconf;automake;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev"
apk: "build-base;cmake;git;linux-headers;libexecinfo-dev;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;autoconf;automake;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;cargo"
pip: "Cython;numpy;scikit-build"
skip-binary: aiohttp
constraints: "homeassistant/package_constraints.txt"

2
.gitignore vendored
View File

@@ -1,4 +1,4 @@
config/*
/config
config2/*
tests/testing_config/deps

View File

@@ -1,11 +1,11 @@
repos:
- repo: https://github.com/asottile/pyupgrade
rev: v2.23.3
rev: v2.29.0
hooks:
- id: pyupgrade
args: [--py38-plus]
- repo: https://github.com/psf/black
rev: 21.7b0
rev: 21.11b1
hooks:
- id: black
args:
@@ -17,22 +17,22 @@ repos:
hooks:
- id: codespell
args:
- --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,ba
- --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,ba,haa
- --skip="./.*,*.csv,*.json"
- --quiet-level=2
exclude_types: [csv, json]
exclude: ^tests/fixtures/
- repo: https://gitlab.com/pycqa/flake8
rev: 3.9.2
- repo: https://github.com/PyCQA/flake8
rev: 4.0.1
hooks:
- id: flake8
additional_dependencies:
- pycodestyle==2.7.0
- pyflakes==2.3.1
- pycodestyle==2.8.0
- pyflakes==2.4.0
- flake8-docstrings==1.6.0
- pydocstyle==6.0.0
- flake8-comprehensions==3.5.0
- flake8-noqa==1.1.0
- pydocstyle==6.1.1
- flake8-comprehensions==3.7.0
- flake8-noqa==1.2.0
- mccabe==0.6.1
files: ^(homeassistant|script|tests)/.+\.py$
- repo: https://github.com/PyCQA/bandit
@@ -45,7 +45,7 @@ repos:
- --configfile=tests/bandit.yaml
files: ^(homeassistant|script|tests)/.+\.py$
- repo: https://github.com/PyCQA/isort
rev: 5.9.3
rev: 5.10.0
hooks:
- id: isort
- repo: https://github.com/pre-commit/pre-commit-hooks
@@ -61,7 +61,7 @@ repos:
- --branch=master
- --branch=rc
- repo: https://github.com/adrienverge/yamllint.git
rev: v1.26.1
rev: v1.26.3
hooks:
- id: yamllint
- repo: https://github.com/pre-commit/mirrors-prettier

View File

@@ -20,31 +20,42 @@ homeassistant.components.ampio.*
homeassistant.components.automation.*
homeassistant.components.binary_sensor.*
homeassistant.components.bluetooth_tracker.*
homeassistant.components.bmw_connected_drive.*
homeassistant.components.bond.*
homeassistant.components.braviatv.*
homeassistant.components.brother.*
homeassistant.components.button.*
homeassistant.components.calendar.*
homeassistant.components.camera.*
homeassistant.components.canary.*
homeassistant.components.cover.*
homeassistant.components.crownstone.*
homeassistant.components.device_automation.*
homeassistant.components.device_tracker.*
homeassistant.components.devolo_home_control.*
homeassistant.components.devolo_home_network.*
homeassistant.components.dlna_dmr.*
homeassistant.components.dnsip.*
homeassistant.components.dsmr.*
homeassistant.components.dunehd.*
homeassistant.components.efergy.*
homeassistant.components.elgato.*
homeassistant.components.esphome.*
homeassistant.components.energy.*
homeassistant.components.evil_genius_labs.*
homeassistant.components.fastdotcom.*
homeassistant.components.fitbit.*
homeassistant.components.flunearyou.*
homeassistant.components.flux_led.*
homeassistant.components.forecast_solar.*
homeassistant.components.fritzbox.*
homeassistant.components.fronius.*
homeassistant.components.frontend.*
homeassistant.components.fritz.*
homeassistant.components.geo_location.*
homeassistant.components.gios.*
homeassistant.components.goalzero.*
homeassistant.components.greeneye_monitor.*
homeassistant.components.group.*
homeassistant.components.guardian.*
homeassistant.components.history.*
@@ -53,21 +64,31 @@ homeassistant.components.http.*
homeassistant.components.huawei_lte.*
homeassistant.components.hyperion.*
homeassistant.components.image_processing.*
homeassistant.components.input_select.*
homeassistant.components.integration.*
homeassistant.components.iqvia.*
homeassistant.components.jellyfin.*
homeassistant.components.jewish_calendar.*
homeassistant.components.knx.*
homeassistant.components.kraken.*
homeassistant.components.lcn.*
homeassistant.components.light.*
homeassistant.components.local_ip.*
homeassistant.components.lock.*
homeassistant.components.lookin.*
homeassistant.components.mailbox.*
homeassistant.components.media_player.*
homeassistant.components.modbus.*
homeassistant.components.modem_callerid.*
homeassistant.components.media_source.*
homeassistant.components.mysensors.*
homeassistant.components.nam.*
homeassistant.components.nanoleaf.*
homeassistant.components.neato.*
homeassistant.components.nest.*
homeassistant.components.netatmo.*
homeassistant.components.network.*
homeassistant.components.nfandroidtv.*
homeassistant.components.no_ip.*
homeassistant.components.notify.*
homeassistant.components.notion.*
@@ -78,13 +99,17 @@ homeassistant.components.persistent_notification.*
homeassistant.components.pi_hole.*
homeassistant.components.proximity.*
homeassistant.components.rainmachine.*
homeassistant.components.rdw.*
homeassistant.components.recollect_waste.*
homeassistant.components.recorder.purge
homeassistant.components.recorder.repack
homeassistant.components.recorder.statistics
homeassistant.components.remote.*
homeassistant.components.renault.*
homeassistant.components.ridwell.*
homeassistant.components.rituals_perfume_genie.*
homeassistant.components.rpi_power.*
homeassistant.components.samsungtv.*
homeassistant.components.scene.*
homeassistant.components.select.*
homeassistant.components.sensor.*
@@ -93,21 +118,35 @@ homeassistant.components.simplisafe.*
homeassistant.components.slack.*
homeassistant.components.sonos.media_player
homeassistant.components.ssdp.*
homeassistant.components.stookalert.*
homeassistant.components.stream.*
homeassistant.components.sun.*
homeassistant.components.surepetcare.*
homeassistant.components.switch.*
homeassistant.components.switcher_kis.*
homeassistant.components.synology_dsm.*
homeassistant.components.systemmonitor.*
homeassistant.components.tag.*
homeassistant.components.tailscale.*
homeassistant.components.tautulli.*
homeassistant.components.tcp.*
homeassistant.components.tile.*
homeassistant.components.tplink.*
homeassistant.components.tolo.*
homeassistant.components.tractive.*
homeassistant.components.tradfri.*
homeassistant.components.tts.*
homeassistant.components.twentemilieu.*
homeassistant.components.upcloud.*
homeassistant.components.uptime.*
homeassistant.components.uptimerobot.*
homeassistant.components.vacuum.*
homeassistant.components.vallox.*
homeassistant.components.velbus.*
homeassistant.components.vlc_telnet.*
homeassistant.components.wallbox.*
homeassistant.components.water_heater.*
homeassistant.components.watttime.*
homeassistant.components.weather.*
homeassistant.components.websocket_api.*
homeassistant.components.zodiac.*

2
.vscode/tasks.json vendored
View File

@@ -64,7 +64,7 @@
"label": "Code Coverage",
"detail": "Generate code coverage report for a given integration.",
"type": "shell",
"command": "pytest ./tests/components/${input:integrationName}/ --cov=homeassistant.components.${input:integrationName} --cov-report term-missing",
"command": "pytest ./tests/components/${input:integrationName}/ --cov=homeassistant.components.${input:integrationName} --cov-report term-missing --durations-min=1 --durations=0",
"group": {
"kind": "test",
"isDefault": true

View File

@@ -29,6 +29,7 @@ homeassistant/components/aemet/* @noltari
homeassistant/components/agent_dvr/* @ispysoftware
homeassistant/components/airly/* @bieniu
homeassistant/components/airnow/* @asymworks
homeassistant/components/airthings/* @danielhiversen
homeassistant/components/airtouch4/* @LonePurpleWolf
homeassistant/components/airvisual/* @bachya
homeassistant/components/alarmdecoder/* @ajschmidt8
@@ -36,6 +37,7 @@ homeassistant/components/alexa/* @home-assistant/cloud @ochlocracy
homeassistant/components/almond/* @gcampax @balloob
homeassistant/components/alpha_vantage/* @fabaff
homeassistant/components/ambee/* @frenck
homeassistant/components/amberelectric/* @madpilot
homeassistant/components/ambiclimate/* @danielhiversen
homeassistant/components/ambient_station/* @bachya
homeassistant/components/amcrest/* @flacjacket
@@ -65,23 +67,26 @@ homeassistant/components/axis/* @Kane610
homeassistant/components/azure_devops/* @timmo001
homeassistant/components/azure_event_hub/* @eavanvalkenburg
homeassistant/components/azure_service_bus/* @hfurubotten
homeassistant/components/balboa/* @garbled1
homeassistant/components/beewi_smartclim/* @alemuro
homeassistant/components/bitcoin/* @fabaff
homeassistant/components/bizkaibus/* @UgaitzEtxebarria
homeassistant/components/blebox/* @bbx-a @bbx-jp
homeassistant/components/blink/* @fronzbot
homeassistant/components/blueprint/* @home-assistant/core
homeassistant/components/bluesound/* @thrawnarn
homeassistant/components/bmp280/* @belidzs
homeassistant/components/bmw_connected_drive/* @gerard33 @rikroe
homeassistant/components/bond/* @prystupa
homeassistant/components/bond/* @bdraco @prystupa @joshs85
homeassistant/components/bosch_shc/* @tschamm
homeassistant/components/braviatv/* @bieniu @Drafteed
homeassistant/components/broadlink/* @danielhiversen @felipediel
homeassistant/components/broadlink/* @danielhiversen @felipediel @L-I-Am
homeassistant/components/brother/* @bieniu
homeassistant/components/brunt/* @eavanvalkenburg
homeassistant/components/bsblan/* @liudger
homeassistant/components/bt_smarthub/* @jxwolstenholme
homeassistant/components/buienradar/* @mjj4791 @ties @Robbie1221
homeassistant/components/button/* @home-assistant/core
homeassistant/components/cast/* @emontnemery
homeassistant/components/cert_expiry/* @Cereal2nd @jjlawren
homeassistant/components/circuit/* @braam
@@ -104,6 +109,7 @@ homeassistant/components/coronavirus/* @home-assistant/core
homeassistant/components/counter/* @fabaff
homeassistant/components/cover/* @home-assistant/core
homeassistant/components/cpuspeed/* @fabaff
homeassistant/components/crownstone/* @Crownstone @RicArch97
homeassistant/components/cups/* @fabaff
homeassistant/components/daikin/* @fredrike
homeassistant/components/darksky/* @fabaff
@@ -111,15 +117,17 @@ homeassistant/components/debugpy/* @frenck
homeassistant/components/deconz/* @Kane610
homeassistant/components/delijn/* @bollewolle @Emilv2
homeassistant/components/demo/* @home-assistant/core
homeassistant/components/denonavr/* @scarface-4711 @starkillerOG
homeassistant/components/denonavr/* @ol-iver @starkillerOG
homeassistant/components/derivative/* @afaucogney
homeassistant/components/device_automation/* @home-assistant/core
homeassistant/components/devolo_home_control/* @2Fake @Shutgun
homeassistant/components/devolo_home_network/* @2Fake @Shutgun
homeassistant/components/dexcom/* @gagebenne
homeassistant/components/dhcp/* @bdraco
homeassistant/components/dht/* @thegardenmonkey
homeassistant/components/digital_ocean/* @fabaff
homeassistant/components/discogs/* @thibmaek
homeassistant/components/dlna_dmr/* @StevenLooman @chishm
homeassistant/components/doorbird/* @oblogic7 @bdraco
homeassistant/components/dsmr/* @Robbie1221 @frenck
homeassistant/components/dsmr_reader/* @depl0y
@@ -132,8 +140,9 @@ homeassistant/components/ecobee/* @marthoc
homeassistant/components/econet/* @vangorra @w1ll1am23
homeassistant/components/ecovacs/* @OverloadUT
homeassistant/components/edl21/* @mtdcr
homeassistant/components/efergy/* @tkdrob
homeassistant/components/egardia/* @jeroenterheerdt
homeassistant/components/eight_sleep/* @mezz64
homeassistant/components/eight_sleep/* @mezz64 @raman325
homeassistant/components/elgato/* @frenck
homeassistant/components/elkm1/* @gwww @bdraco
homeassistant/components/elv/* @majuss
@@ -146,13 +155,13 @@ homeassistant/components/enigma2/* @fbradyirl
homeassistant/components/enocean/* @bdurrer
homeassistant/components/enphase_envoy/* @gtdiehl
homeassistant/components/entur_public_transport/* @hfurubotten
homeassistant/components/environment_canada/* @michaeldavie
homeassistant/components/environment_canada/* @gwww @michaeldavie
homeassistant/components/ephember/* @ttroy50
homeassistant/components/epson/* @pszafer
homeassistant/components/epsonworkforce/* @ThaStealth
homeassistant/components/eq3btsmart/* @rytilahti
homeassistant/components/esphome/* @OttoWinter @jesserockz
homeassistant/components/essent/* @TheLastProject
homeassistant/components/evil_genius_labs/* @balloob
homeassistant/components/evohome/* @zxdavb
homeassistant/components/ezviz/* @RenierM26 @baqs
homeassistant/components/faa_delays/* @ntilley905
@@ -169,6 +178,7 @@ homeassistant/components/flo/* @dmulcahey
homeassistant/components/flock/* @fabaff
homeassistant/components/flume/* @ChrisMandich @bdraco
homeassistant/components/flunearyou/* @bachya
homeassistant/components/flux_led/* @icemanch
homeassistant/components/forecast_solar/* @klaasnicolaas @frenck
homeassistant/components/forked_daapd/* @uvjustin
homeassistant/components/fortios/* @kimfrellsen
@@ -176,8 +186,8 @@ homeassistant/components/foscam/* @skgsergio
homeassistant/components/freebox/* @hacf-fr @Quentame
homeassistant/components/freedompro/* @stefano055415
homeassistant/components/fritz/* @mammuth @AaronDavidSchneider @chemelli74
homeassistant/components/fritzbox/* @mib1185
homeassistant/components/fronius/* @nielstron
homeassistant/components/fritzbox/* @mib1185 @flabbamann
homeassistant/components/fronius/* @nielstron @farmio
homeassistant/components/frontend/* @home-assistant/frontend
homeassistant/components/garages_amsterdam/* @klaasnicolaas
homeassistant/components/gdacs/* @exxamalte
@@ -222,9 +232,8 @@ homeassistant/components/homematic/* @pvizeli @danielperna84
homeassistant/components/honeywell/* @rdfurman
homeassistant/components/http/* @home-assistant/core
homeassistant/components/huawei_lte/* @scop @fphammerle
homeassistant/components/huawei_router/* @abmantis
homeassistant/components/hue/* @balloob @frenck
homeassistant/components/huisbaasje/* @denniss17
homeassistant/components/hue/* @balloob @marcelveldt
homeassistant/components/huisbaasje/* @dennisschroer
homeassistant/components/humidifier/* @home-assistant/core @Shulyaka
homeassistant/components/hunterdouglas_powerview/* @bdraco
homeassistant/components/hvv_departures/* @vigonotion
@@ -248,7 +257,7 @@ homeassistant/components/integration/* @dgomes
homeassistant/components/intent/* @home-assistant/core
homeassistant/components/intesishome/* @jnimmo
homeassistant/components/ios/* @robbiet480
homeassistant/components/iotawatt/* @gtdiehl
homeassistant/components/iotawatt/* @gtdiehl @jyavenard
homeassistant/components/iperf3/* @rohankapoorcom
homeassistant/components/ipma/* @dgomes @abmantis
homeassistant/components/ipp/* @ctalkington
@@ -257,13 +266,14 @@ homeassistant/components/irish_rail_transport/* @ttroy50
homeassistant/components/islamic_prayer_times/* @engrbm87
homeassistant/components/isy994/* @bdraco @shbatm
homeassistant/components/izone/* @Swamp-Ig
homeassistant/components/jellyfin/* @j-stienstra
homeassistant/components/jewish_calendar/* @tsvi
homeassistant/components/juicenet/* @jesserockz
homeassistant/components/kaiterra/* @Michsior14
homeassistant/components/keba/* @dannerph
homeassistant/components/keenetic_ndms2/* @foxel
homeassistant/components/kef/* @basnijholt
homeassistant/components/keyboard_remote/* @bendavid
homeassistant/components/keyboard_remote/* @bendavid @lanrat
homeassistant/components/kmtronic/* @dgomes
homeassistant/components/knx/* @Julius2342 @farmio @marvin-w
homeassistant/components/kodi/* @OnFreund @cgtobi
@@ -282,7 +292,7 @@ homeassistant/components/litterrobot/* @natekspencer
homeassistant/components/local_ip/* @issacg
homeassistant/components/logger/* @home-assistant/core
homeassistant/components/logi_circle/* @evanjd
homeassistant/components/loopenergy/* @pavoni
homeassistant/components/lookin/* @ANMalko
homeassistant/components/lovelace/* @home-assistant/frontend
homeassistant/components/luci/* @mzdrale
homeassistant/components/luftdaten/* @fabaff
@@ -312,6 +322,7 @@ homeassistant/components/minecraft_server/* @elmurato
homeassistant/components/minio/* @tkislan
homeassistant/components/mobile_app/* @robbiet480
homeassistant/components/modbus/* @adamchengtkc @janiversen @vzahradnik
homeassistant/components/modem_callerid/* @tkdrob
homeassistant/components/modern_forms/* @wonderslug
homeassistant/components/monoprice/* @etsinko @OnFreund
homeassistant/components/moon/* @fabaff
@@ -330,11 +341,11 @@ homeassistant/components/nam/* @bieniu
homeassistant/components/nanoleaf/* @milanmeu
homeassistant/components/neato/* @dshokouhi @Santobert
homeassistant/components/nederlandse_spoorwegen/* @YarmoM
homeassistant/components/nello/* @pschmitt
homeassistant/components/ness_alarm/* @nickw444
homeassistant/components/nest/* @allenporter
homeassistant/components/netatmo/* @cgtobi
homeassistant/components/netdata/* @fabaff
homeassistant/components/netgear/* @hacf-fr @Quentame @starkillerOG
homeassistant/components/nexia/* @bdraco
homeassistant/components/nextbus/* @vividboarder
homeassistant/components/nextcloud/* @meichthys
@@ -354,10 +365,11 @@ homeassistant/components/nsw_rural_fire_service_feed/* @exxamalte
homeassistant/components/nuki/* @pschmitt @pvizeli @pree
homeassistant/components/numato/* @clssn
homeassistant/components/number/* @home-assistant/core @Shulyaka
homeassistant/components/nut/* @bdraco
homeassistant/components/nut/* @bdraco @ollo69
homeassistant/components/nws/* @MatthewFlamm
homeassistant/components/nzbget/* @chriscla
homeassistant/components/obihai/* @dshokouhi
homeassistant/components/octoprint/* @rfleming71
homeassistant/components/ohmconnect/* @robbiet480
homeassistant/components/ombi/* @larssont
homeassistant/components/omnilogic/* @oliver84 @djtimca @gentoosu
@@ -415,12 +427,15 @@ homeassistant/components/raincloud/* @vanstinator
homeassistant/components/rainforest_eagle/* @gtdiehl @jcalbert
homeassistant/components/rainmachine/* @bachya
homeassistant/components/random/* @fabaff
homeassistant/components/rdw/* @frenck
homeassistant/components/recollect_waste/* @bachya
homeassistant/components/recorder/* @home-assistant/core
homeassistant/components/rejseplanen/* @DarkFox
homeassistant/components/renault/* @epenet
homeassistant/components/repetier/* @MTrab
homeassistant/components/rflink/* @javicalle
homeassistant/components/rfxtrx/* @danielhiversen @elupus @RobBie1221
homeassistant/components/ridwell/* @bachya
homeassistant/components/ring/* @balloob
homeassistant/components/risco/* @OnFreund
homeassistant/components/rituals_perfume_genie/* @milanmeu
@@ -490,7 +505,7 @@ homeassistant/components/srp_energy/* @briglx
homeassistant/components/starline/* @anonym-tsk
homeassistant/components/statistics/* @fabaff
homeassistant/components/stiebel_eltron/* @fucm
homeassistant/components/stookalert/* @fwestenberg
homeassistant/components/stookalert/* @fwestenberg @frenck
homeassistant/components/stream/* @hunterjm @uvjustin @allenporter
homeassistant/components/stt/* @pvizeli
homeassistant/components/subaru/* @G-Two
@@ -500,7 +515,7 @@ homeassistant/components/supla/* @mwegrzynek
homeassistant/components/surepetcare/* @benleb @danielhiversen
homeassistant/components/swiss_hydrological_data/* @fabaff
homeassistant/components/swiss_public_transport/* @fabaff
homeassistant/components/switchbot/* @danielhiversen
homeassistant/components/switchbot/* @danielhiversen @RenierM26
homeassistant/components/switcher_kis/* @tomerfi @thecode
homeassistant/components/switchmate/* @danielhiversen
homeassistant/components/syncthing/* @zhulik
@@ -512,13 +527,14 @@ homeassistant/components/system_bridge/* @timmo001
homeassistant/components/tado/* @michaelarnauts @noltari
homeassistant/components/tag/* @balloob @dmulcahey
homeassistant/components/tahoma/* @philklei
homeassistant/components/tailscale/* @frenck
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 @home-assistant/core
homeassistant/components/tesla/* @zabuldon @alandtse
homeassistant/components/tesla_wall_connector/* @einarhauks
homeassistant/components/tfiac/* @fredrike @mellado
homeassistant/components/thethingsnetwork/* @fabaff
homeassistant/components/threshold/* @fabaff
@@ -527,18 +543,17 @@ homeassistant/components/tile/* @bachya
homeassistant/components/time_date/* @fabaff
homeassistant/components/tmb/* @alemuro
homeassistant/components/todoist/* @boralyl
homeassistant/components/toon/* @frenck
homeassistant/components/tolo/* @MatthiasLohr
homeassistant/components/totalconnect/* @austinmroczek
homeassistant/components/tplink/* @rytilahti @thegardenmonkey
homeassistant/components/traccar/* @ludeeus
homeassistant/components/trace/* @home-assistant/core
homeassistant/components/tractive/* @Danielhiversen @zhulik @bieniu
homeassistant/components/tradfri/* @janiversen
homeassistant/components/trafikverket_train/* @endor-force
homeassistant/components/trafikverket_weatherstation/* @endor-force
homeassistant/components/transmission/* @engrbm87 @JPHutchins
homeassistant/components/tts/* @pvizeli
homeassistant/components/tuya/* @ollo69
homeassistant/components/tuya/* @Tuya @zlinoliver @METISU @frenck
homeassistant/components/twentemilieu/* @frenck
homeassistant/components/twinkly/* @dr1rrb
homeassistant/components/ubus/* @noltari
@@ -556,6 +571,7 @@ homeassistant/components/utility_meter/* @dgomes
homeassistant/components/vallox/* @andre-richter
homeassistant/components/velbus/* @Cereal2nd @brefra
homeassistant/components/velux/* @Julius2342
homeassistant/components/venstar/* @garbled1
homeassistant/components/vera/* @pavoni
homeassistant/components/verisure/* @frenck
homeassistant/components/versasense/* @flamm3blemuff1n
@@ -565,17 +581,20 @@ homeassistant/components/vicare/* @oischinger
homeassistant/components/vilfo/* @ManneW
homeassistant/components/vivotek/* @HarlemSquirrel
homeassistant/components/vizio/* @raman325
homeassistant/components/vlc_telnet/* @rodripf @dmcc
homeassistant/components/vlc_telnet/* @rodripf @dmcc @MartinHjelmare
homeassistant/components/volkszaehler/* @fabaff
homeassistant/components/volumio/* @OnFreund
homeassistant/components/volvooncall/* @molobrakos @decompil3d
homeassistant/components/wake_on_lan/* @ntilley905
homeassistant/components/wallbox/* @hesselonline
homeassistant/components/waqi/* @andrey-git
homeassistant/components/watson_tts/* @rutkai
homeassistant/components/watttime/* @bachya
homeassistant/components/weather/* @fabaff
homeassistant/components/webostv/* @bendavid @thecode
homeassistant/components/websocket_api/* @home-assistant/core
homeassistant/components/wemo/* @esev
homeassistant/components/whirlpool/* @abmantis
homeassistant/components/wiffi/* @mampfes
homeassistant/components/wilight/* @leofig-rj
homeassistant/components/wirelesstag/* @sergeymaysak

View File

@@ -7,12 +7,21 @@ ENV \
WORKDIR /usr/src
## Setup Home Assistant
## Setup Home Assistant Core dependencies
COPY requirements.txt homeassistant/
COPY homeassistant/package_constraints.txt homeassistant/homeassistant/
RUN \
pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
-r homeassistant/requirements.txt
COPY requirements_all.txt homeassistant/
RUN \
pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
-r homeassistant/requirements_all.txt
## Setup Home Assistant Core
COPY . homeassistant/
RUN \
pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
-r homeassistant/requirements_all.txt \
&& pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
-e ./homeassistant \
&& python3 -m compileall homeassistant/homeassistant

View File

@@ -30,11 +30,12 @@ RUN git clone --depth 1 https://github.com/home-assistant/hass-release \
WORKDIR /workspaces
# Install Python dependencies from requirements
COPY requirements.txt requirements_test.txt requirements_test_pre_commit.txt ./
COPY requirements.txt ./
COPY homeassistant/package_constraints.txt homeassistant/package_constraints.txt
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/
RUN pip3 install -r requirements.txt
COPY requirements_test.txt requirements_test_pre_commit.txt ./
RUN pip3 install -r requirements_test.txt
RUN rm -rf requirements.txt requirements_test.txt requirements_test_pre_commit.txt homeassistant/
# Set the default shell to bash instead of sh
ENV SHELL /bin/bash

View File

@@ -1,22 +0,0 @@
{
"image": "homeassistant/{arch}-homeassistant",
"shadow_repository": "ghcr.io/home-assistant",
"build_from": {
"aarch64": "ghcr.io/home-assistant/aarch64-homeassistant-base:2021.08.0",
"armhf": "ghcr.io/home-assistant/armhf-homeassistant-base:2021.08.0",
"armv7": "ghcr.io/home-assistant/armv7-homeassistant-base:2021.08.0",
"amd64": "ghcr.io/home-assistant/amd64-homeassistant-base:2021.08.0",
"i386": "ghcr.io/home-assistant/i386-homeassistant-base:2021.08.0"
},
"labels": {
"io.hass.type": "core",
"org.opencontainers.image.title": "Home Assistant",
"org.opencontainers.image.description": "Open-source home automation platform running on Python 3",
"org.opencontainers.image.source": "https://github.com/home-assistant/core",
"org.opencontainers.image.authors": "The Home Assistant Authors",
"org.opencontainers.image.url": "https://www.home-assistant.io/",
"org.opencontainers.image.documentation": "https://www.home-assistant.io/docs/",
"org.opencontainers.image.licenses": "Apache License 2.0"
},
"version_tag": true
}

20
build.yaml Normal file
View File

@@ -0,0 +1,20 @@
image: homeassistant/{arch}-homeassistant
shadow_repository: ghcr.io/home-assistant
build_from:
aarch64: ghcr.io/home-assistant/aarch64-homeassistant-base:2021.09.0
armhf: ghcr.io/home-assistant/armhf-homeassistant-base:2021.09.0
armv7: ghcr.io/home-assistant/armv7-homeassistant-base:2021.09.0
amd64: ghcr.io/home-assistant/amd64-homeassistant-base:2021.09.0
i386: ghcr.io/home-assistant/i386-homeassistant-base:2021.09.0
codenotary:
signer: notary@home-assistant.io
base_image: notary@home-assistant.io
labels:
io.hass.type: core
org.opencontainers.image.title: Home Assistant
org.opencontainers.image.description: Open-source home automation platform running on Python 3
org.opencontainers.image.source: https://github.com/home-assistant/core
org.opencontainers.image.authors: The Home Assistant Authors
org.opencontainers.image.url: https://www.home-assistant.io/
org.opencontainers.image.documentation: https://www.home-assistant.io/docs/
org.opencontainers.image.licenses: Apache License 2.0

View File

@@ -6,4 +6,28 @@ coverage:
default:
target: 90
threshold: 0.09
config-flows:
target: auto
threshold: 0
paths:
- homeassistant/components/*/config_flow.py
patch:
default:
target: auto
config-flows:
target: 100
threshold: 0
paths:
- homeassistant/components/*/config_flow.py
comment: false
# To make partial tests possible,
# we need to carry forward.
flag_management:
default_rules:
carryforward: false
individual_flags:
- name: full-suite
paths:
- ".*"
carryforward: true

View File

@@ -2,6 +2,7 @@
from __future__ import annotations
import argparse
import faulthandler
import os
import platform
import subprocess
@@ -10,6 +11,8 @@ import threading
from homeassistant.const import REQUIRED_PYTHON_VER, RESTART_EXIT_CODE, __version__
FAULT_LOG_FILENAME = "home-assistant.log.fault"
def validate_python() -> None:
"""Validate that the right Python version is running."""
@@ -132,16 +135,14 @@ def get_arguments() -> argparse.Namespace:
def daemonize() -> None:
"""Move current process to daemon process."""
# Create first fork
pid = os.fork()
if pid > 0:
if os.fork() > 0:
sys.exit(0)
# Decouple fork
os.setsid()
# Create second fork
pid = os.fork()
if pid > 0:
if os.fork() > 0:
sys.exit(0)
# redirect standard file descriptors to devnull
@@ -311,7 +312,15 @@ def main() -> int:
open_ui=args.open_ui,
)
exit_code = runner.run(runtime_conf)
fault_file_name = os.path.join(config_dir, FAULT_LOG_FILENAME)
with open(fault_file_name, mode="a", encoding="utf8") as fault_file:
faulthandler.enable(fault_file)
exit_code = runner.run(runtime_conf)
faulthandler.disable()
if os.path.getsize(fault_file_name) == 0:
os.remove(fault_file_name)
if exit_code == RESTART_EXIT_CODE and not args.runner:
try_to_restart()

View File

@@ -0,0 +1,42 @@
"""Provide backwards compat for async_timeout."""
from __future__ import annotations
import asyncio
from typing import Any
import async_timeout
from homeassistant.helpers.frame import report
def timeout(
delay: float | None, loop: asyncio.AbstractEventLoop | None = None
) -> async_timeout.Timeout:
"""Backwards compatible timeout context manager that warns with loop usage."""
if loop is None:
loop = asyncio.get_running_loop()
else:
report(
"called async_timeout.timeout with loop keyword argument. The loop keyword argument is deprecated and calls will fail after Home Assistant 2022.2",
error_if_core=False,
)
if delay is not None:
deadline: float | None = loop.time() + delay
else:
deadline = None
return async_timeout.Timeout(deadline, loop)
def current_task(loop: asyncio.AbstractEventLoop) -> asyncio.Task[Any] | None:
"""Backwards compatible current_task."""
report(
"called async_timeout.current_task. The current_task call is deprecated and calls will fail after Home Assistant 2022.2; use asyncio.current_task instead",
error_if_core=False,
)
return asyncio.current_task()
def enable() -> None:
"""Enable backwards compat transitions."""
async_timeout.timeout = timeout
async_timeout.current_task = current_task # type: ignore[attr-defined]

View File

@@ -9,7 +9,7 @@ from typing import Any, Dict, Mapping, Optional, Tuple, cast
import jwt
from homeassistant import data_entry_flow
from homeassistant.core import HomeAssistant, callback
from homeassistant.core import CALLBACK_TYPE, HomeAssistant, callback
from homeassistant.data_entry_flow import FlowResult
from homeassistant.util import dt as dt_util
@@ -155,6 +155,7 @@ class AuthManager:
self._providers = providers
self._mfa_modules = mfa_modules
self.login_flow = AuthManagerFlowManager(hass, self)
self._revoke_callbacks: dict[str, list[CALLBACK_TYPE]] = {}
@property
def auth_providers(self) -> list[AuthProvider]:
@@ -213,11 +214,19 @@ class AuthManager:
return None
async def async_create_system_user(
self, name: str, group_ids: list[str] | None = None
self,
name: str,
*,
group_ids: list[str] | None = None,
local_only: bool | None = None,
) -> models.User:
"""Create a system user."""
user = await self._store.async_create_user(
name=name, system_generated=True, is_active=True, group_ids=group_ids or []
name=name,
system_generated=True,
is_active=True,
group_ids=group_ids or [],
local_only=local_only,
)
self.hass.bus.async_fire(EVENT_USER_ADDED, {"user_id": user.id})
@@ -225,13 +234,18 @@ class AuthManager:
return user
async def async_create_user(
self, name: str, group_ids: list[str] | None = None
self,
name: str,
*,
group_ids: list[str] | None = None,
local_only: bool | None = None,
) -> models.User:
"""Create a user."""
kwargs: dict[str, Any] = {
"name": name,
"is_active": True,
"group_ids": group_ids or [],
"local_only": local_only,
}
if await self._user_should_be_owner():
@@ -275,6 +289,12 @@ class AuthManager:
self, user: models.User, credentials: models.Credentials
) -> None:
"""Link credentials to an existing user."""
linked_user = await self.async_get_user_by_credentials(credentials)
if linked_user == user:
return
if linked_user is not None:
raise ValueError("Credential is already linked to a user")
await self._store.async_link_user(user, credentials)
async def async_remove_user(self, user: models.User) -> None:
@@ -285,7 +305,7 @@ class AuthManager:
]
if tasks:
await asyncio.wait(tasks)
await asyncio.gather(*tasks)
await self._store.async_remove_user(user)
@@ -297,13 +317,18 @@ class AuthManager:
name: str | None = None,
is_active: bool | None = None,
group_ids: list[str] | None = None,
local_only: bool | None = None,
) -> None:
"""Update a user."""
kwargs: dict[str, Any] = {}
if name is not None:
kwargs["name"] = name
if group_ids is not None:
kwargs["group_ids"] = group_ids
for attr_name, value in (
("name", name),
("group_ids", group_ids),
("local_only", local_only),
):
if value is not None:
kwargs[attr_name] = value
await self._store.async_update_user(user, **kwargs)
if is_active is not None:
@@ -341,8 +366,7 @@ class AuthManager:
"System generated users cannot enable multi-factor auth module."
)
module = self.get_auth_mfa_module(mfa_module_id)
if module is None:
if (module := self.get_auth_mfa_module(mfa_module_id)) is None:
raise ValueError(f"Unable find multi-factor auth module: {mfa_module_id}")
await module.async_setup_user(user.id, data)
@@ -356,8 +380,7 @@ class AuthManager:
"System generated users cannot disable multi-factor auth module."
)
module = self.get_auth_mfa_module(mfa_module_id)
if module is None:
if (module := self.get_auth_mfa_module(mfa_module_id)) is None:
raise ValueError(f"Unable find multi-factor auth module: {mfa_module_id}")
await module.async_depose_user(user.id)
@@ -448,6 +471,28 @@ class AuthManager:
"""Delete a refresh token."""
await self._store.async_remove_refresh_token(refresh_token)
callbacks = self._revoke_callbacks.pop(refresh_token.id, [])
for revoke_callback in callbacks:
revoke_callback()
@callback
def async_register_revoke_token_callback(
self, refresh_token_id: str, revoke_callback: CALLBACK_TYPE
) -> CALLBACK_TYPE:
"""Register a callback to be called when the refresh token id is revoked."""
if refresh_token_id not in self._revoke_callbacks:
self._revoke_callbacks[refresh_token_id] = []
callbacks = self._revoke_callbacks[refresh_token_id]
callbacks.append(revoke_callback)
@callback
def unregister() -> None:
if revoke_callback in callbacks:
callbacks.remove(revoke_callback)
return unregister
@callback
def async_create_access_token(
self, refresh_token: models.RefreshToken, remote_ip: str | None = None
@@ -466,7 +511,7 @@ class AuthManager:
},
refresh_token.jwt_key,
algorithm="HS256",
).decode()
)
@callback
def _async_resolve_provider(
@@ -498,8 +543,7 @@ class AuthManager:
Will raise InvalidAuthError on errors.
"""
provider = self._async_resolve_provider(refresh_token)
if provider:
if provider := self._async_resolve_provider(refresh_token):
provider.async_validate_refresh_token(refresh_token, remote_ip)
async def async_validate_access_token(
@@ -507,7 +551,9 @@ class AuthManager:
) -> models.RefreshToken | None:
"""Return refresh token if an access token is valid."""
try:
unverif_claims = jwt.decode(token, verify=False)
unverif_claims = jwt.decode(
token, algorithms=["HS256"], options={"verify_signature": False}
)
except jwt.InvalidTokenError:
return None

View File

@@ -42,7 +42,7 @@ class AuthStore:
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
STORAGE_VERSION, STORAGE_KEY, private=True, atomic_writes=True
)
self._lock = asyncio.Lock()
@@ -86,6 +86,7 @@ class AuthStore:
system_generated: bool | None = None,
credentials: models.Credentials | None = None,
group_ids: list[str] | None = None,
local_only: bool | None = None,
) -> models.User:
"""Create a new user."""
if self._users is None:
@@ -96,8 +97,7 @@ class AuthStore:
groups = []
for group_id in group_ids or []:
group = self._groups.get(group_id)
if group is None:
if (group := self._groups.get(group_id)) is None:
raise ValueError(f"Invalid group specified {group_id}")
groups.append(group)
@@ -109,14 +109,14 @@ class AuthStore:
"perm_lookup": self._perm_lookup,
}
if is_owner is not None:
kwargs["is_owner"] = is_owner
if is_active is not None:
kwargs["is_active"] = is_active
if system_generated is not None:
kwargs["system_generated"] = system_generated
for attr_name, value in (
("is_owner", is_owner),
("is_active", is_active),
("local_only", local_only),
("system_generated", system_generated),
):
if value is not None:
kwargs[attr_name] = value
new_user = models.User(**kwargs)
@@ -153,6 +153,7 @@ class AuthStore:
name: str | None = None,
is_active: bool | None = None,
group_ids: list[str] | None = None,
local_only: bool | None = None,
) -> None:
"""Update a user."""
assert self._groups is not None
@@ -160,15 +161,18 @@ class AuthStore:
if group_ids is not None:
groups = []
for grid in group_ids:
group = self._groups.get(grid)
if group is None:
if (group := self._groups.get(grid)) is None:
raise ValueError("Invalid group specified.")
groups.append(group)
user.groups = groups
user.invalidate_permission_cache()
for attr_name, value in (("name", name), ("is_active", is_active)):
for attr_name, value in (
("name", name),
("is_active", is_active),
("local_only", local_only),
):
if value is not None:
setattr(user, attr_name, value)
@@ -419,6 +423,8 @@ class AuthStore:
is_active=user_dict["is_active"],
system_generated=user_dict["system_generated"],
perm_lookup=perm_lookup,
# New in 2021.11
local_only=user_dict.get("local_only", False),
)
for cred_dict in data["credentials"]:
@@ -446,16 +452,14 @@ class AuthStore:
)
continue
token_type = rt_dict.get("token_type")
if token_type is None:
if (token_type := rt_dict.get("token_type")) is None:
if rt_dict["client_id"] is None:
token_type = models.TOKEN_TYPE_SYSTEM
else:
token_type = models.TOKEN_TYPE_NORMAL
# old refresh_token don't have last_used_at (pre-0.78)
last_used_at_str = rt_dict.get("last_used_at")
if last_used_at_str:
if last_used_at_str := rt_dict.get("last_used_at"):
last_used_at = dt_util.parse_datetime(last_used_at_str)
else:
last_used_at = None
@@ -506,6 +510,7 @@ class AuthStore:
"is_active": user.is_active,
"name": user.name,
"system_generated": user.system_generated,
"local_only": user.local_only,
}
for user in self._users.values()
]

View File

@@ -38,12 +38,12 @@ class InsecureExampleModule(MultiFactorAuthModule):
@property
def input_schema(self) -> vol.Schema:
"""Validate login flow input data."""
return vol.Schema({"pin": str})
return vol.Schema({vol.Required("pin"): str})
@property
def setup_schema(self) -> vol.Schema:
"""Validate async_setup_user input data."""
return vol.Schema({"pin": str})
return vol.Schema({vol.Required("pin"): str})
async def async_setup_flow(self, user_id: str) -> SetupFlow:
"""Return a data entry flow handler for setup module.

View File

@@ -25,7 +25,7 @@ from . import (
SetupFlow,
)
REQUIREMENTS = ["pyotp==2.3.0"]
REQUIREMENTS = ["pyotp==2.6.0"]
CONF_MESSAGE = "message"
@@ -56,10 +56,10 @@ def _generate_secret() -> str:
def _generate_random() -> int:
"""Generate a 8 digit number."""
"""Generate a 32 digit number."""
import pyotp # pylint: disable=import-outside-toplevel
return int(pyotp.random_base32(length=8, chars=list("1234567890")))
return int(pyotp.random_base32(length=32, chars=list("1234567890")))
def _generate_otp(secret: str, count: int) -> str:
@@ -100,7 +100,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
super().__init__(hass, config)
self._user_settings: _UsersDict | None = None
self._user_store = hass.helpers.storage.Store(
STORAGE_VERSION, STORAGE_KEY, private=True
STORAGE_VERSION, STORAGE_KEY, private=True, atomic_writes=True
)
self._include = config.get(CONF_INCLUDE, [])
self._exclude = config.get(CONF_EXCLUDE, [])
@@ -110,7 +110,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
@property
def input_schema(self) -> vol.Schema:
"""Validate login flow input data."""
return vol.Schema({INPUT_FIELD_CODE: str})
return vol.Schema({vol.Required(INPUT_FIELD_CODE): str})
async def _async_load(self) -> None:
"""Load stored data."""
@@ -118,9 +118,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
if self._user_settings is not None:
return
data = await self._user_store.async_load()
if data is None:
if (data := await self._user_store.async_load()) is None:
data = {STORAGE_USERS: {}}
self._user_settings = {
@@ -207,8 +205,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
await self._async_load()
assert self._user_settings is not None
notify_setting = self._user_settings.get(user_id)
if notify_setting is None:
if (notify_setting := self._user_settings.get(user_id)) is None:
return False
# user_input has been validate in caller
@@ -225,8 +222,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
await self._async_load()
assert self._user_settings is not None
notify_setting = self._user_settings.get(user_id)
if notify_setting is None:
if (notify_setting := self._user_settings.get(user_id)) is None:
raise ValueError("Cannot find user_id")
def generate_secret_and_one_time_password() -> str:
@@ -249,8 +245,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
await self._async_load()
assert self._user_settings is not None
notify_setting = self._user_settings.get(user_id)
if notify_setting is None:
if (notify_setting := self._user_settings.get(user_id)) is None:
_LOGGER.error("Cannot find user %s", user_id)
return

View File

@@ -18,7 +18,7 @@ from . import (
SetupFlow,
)
REQUIREMENTS = ["pyotp==2.3.0", "PyQRCode==1.2.1"]
REQUIREMENTS = ["pyotp==2.6.0", "PyQRCode==1.2.1"]
CONFIG_SCHEMA = MULTI_FACTOR_AUTH_MODULE_SCHEMA.extend({}, extra=vol.PREVENT_EXTRA)
@@ -77,14 +77,14 @@ class TotpAuthModule(MultiFactorAuthModule):
super().__init__(hass, config)
self._users: dict[str, str] | None = None
self._user_store = hass.helpers.storage.Store(
STORAGE_VERSION, STORAGE_KEY, private=True
STORAGE_VERSION, STORAGE_KEY, private=True, atomic_writes=True
)
self._init_lock = asyncio.Lock()
@property
def input_schema(self) -> vol.Schema:
"""Validate login flow input data."""
return vol.Schema({INPUT_FIELD_CODE: str})
return vol.Schema({vol.Required(INPUT_FIELD_CODE): str})
async def _async_load(self) -> None:
"""Load stored data."""
@@ -92,9 +92,7 @@ class TotpAuthModule(MultiFactorAuthModule):
if self._users is not None:
return
data = await self._user_store.async_load()
if data is None:
if (data := await self._user_store.async_load()) is None:
data = {STORAGE_USERS: {}}
self._users = data.get(STORAGE_USERS, {})
@@ -163,8 +161,7 @@ class TotpAuthModule(MultiFactorAuthModule):
"""Validate two factor authentication code."""
import pyotp # pylint: disable=import-outside-toplevel
ota_secret = self._users.get(user_id) # type: ignore
if ota_secret is None:
if (ota_secret := self._users.get(user_id)) is None: # type: ignore
# even we cannot find user, we still do verify
# to make timing the same as if user was found.
pyotp.TOTP(DUMMY_SECRET).verify(code, valid_window=1)
@@ -184,7 +181,7 @@ class TotpSetupFlow(SetupFlow):
# to fix typing complaint
self._auth_module: TotpAuthModule = auth_module
self._user = user
self._ota_secret: str | None = None
self._ota_secret: str = ""
self._url = None # type Optional[str]
self._image = None # type Optional[str]

View File

@@ -39,6 +39,7 @@ class User:
is_owner: bool = attr.ib(default=False)
is_active: bool = attr.ib(default=False)
system_generated: bool = attr.ib(default=False)
local_only: bool = attr.ib(default=False)
groups: list[Group] = attr.ib(factory=list, eq=False, order=False)

View File

@@ -1,8 +1,8 @@
"""Permissions for Home Assistant."""
from __future__ import annotations
import logging
from typing import Any, Callable
from collections.abc import Callable
from typing import Any
import voluptuous as vol
@@ -15,8 +15,6 @@ from .util import test_all
POLICY_SCHEMA = vol.Schema({vol.Optional(CAT_ENTITIES): ENTITY_POLICY_SCHEMA})
_LOGGER = logging.getLogger(__name__)
class AbstractPermissions:
"""Default permissions class."""
@@ -33,9 +31,7 @@ class AbstractPermissions:
def check_entity(self, entity_id: str, key: str) -> bool:
"""Check if we can access entity."""
entity_func = self._cached_entity_func
if entity_func is None:
if (entity_func := self._cached_entity_func) is None:
entity_func = self._cached_entity_func = self._entity_func()
return entity_func(entity_id, key)

View File

@@ -2,7 +2,7 @@
from __future__ import annotations
from collections import OrderedDict
from typing import Callable
from collections.abc import Callable
import voluptuous as vol

View File

@@ -72,8 +72,7 @@ def compile_policy(
def apply_policy_funcs(object_id: str, key: str) -> bool:
"""Apply several policy functions."""
for func in funcs:
result = func(object_id, key)
if result is not None:
if (result := func(object_id, key)) is not None:
return result
return False

View File

@@ -169,9 +169,7 @@ async def load_auth_provider_module(
if hass.config.skip_pip or not hasattr(module, "REQUIREMENTS"):
return module
processed = hass.data.get(DATA_REQS)
if processed is None:
if (processed := hass.data.get(DATA_REQS)) is None:
processed = hass.data[DATA_REQS] = set()
elif provider in processed:
return module

View File

@@ -2,7 +2,6 @@
from __future__ import annotations
import asyncio
import collections
from collections.abc import Mapping
import logging
import os
@@ -148,10 +147,13 @@ class CommandLineLoginFlow(LoginFlow):
user_input.pop("password")
return await self.async_finish(user_input)
schema: dict[str, type] = collections.OrderedDict()
schema["username"] = str
schema["password"] = str
return self.async_show_form(
step_id="init", data_schema=vol.Schema(schema), errors=errors
step_id="init",
data_schema=vol.Schema(
{
vol.Required("username"): str,
vol.Required("password"): str,
}
),
errors=errors,
)

View File

@@ -3,7 +3,6 @@ from __future__ import annotations
import asyncio
import base64
from collections import OrderedDict
from collections.abc import Mapping
import logging
from typing import Any, cast
@@ -64,7 +63,7 @@ class Data:
"""Initialize the user data store."""
self.hass = hass
self._store = hass.helpers.storage.Store(
STORAGE_VERSION, STORAGE_KEY, private=True
STORAGE_VERSION, STORAGE_KEY, private=True, atomic_writes=True
)
self._data: dict[str, Any] | None = None
# Legacy mode will allow usernames to start/end with whitespace
@@ -82,9 +81,7 @@ class Data:
async def async_load(self) -> None:
"""Load stored data."""
data = await self._store.async_load()
if data is None:
if (data := await self._store.async_load()) is None:
data = {"users": []}
seen: set[str] = set()
@@ -93,9 +90,7 @@ class Data:
username = user["username"]
# check if we have duplicates
folded = username.casefold()
if folded in seen:
if (folded := username.casefold()) in seen:
self.is_legacy = True
logging.getLogger(__name__).warning(
@@ -339,10 +334,13 @@ class HassLoginFlow(LoginFlow):
user_input.pop("password")
return await self.async_finish(user_input)
schema: dict[str, type] = OrderedDict()
schema["username"] = str
schema["password"] = str
return self.async_show_form(
step_id="init", data_schema=vol.Schema(schema), errors=errors
step_id="init",
data_schema=vol.Schema(
{
vol.Required("username"): str,
vol.Required("password"): str,
}
),
errors=errors,
)

View File

@@ -1,7 +1,6 @@
"""Example auth provider."""
from __future__ import annotations
from collections import OrderedDict
from collections.abc import Mapping
import hmac
from typing import Any, cast
@@ -103,7 +102,7 @@ class ExampleLoginFlow(LoginFlow):
self, user_input: dict[str, str] | None = None
) -> FlowResult:
"""Handle the step of the form."""
errors = {}
errors = None
if user_input is not None:
try:
@@ -111,16 +110,19 @@ class ExampleLoginFlow(LoginFlow):
user_input["username"], user_input["password"]
)
except InvalidAuthError:
errors["base"] = "invalid_auth"
errors = {"base": "invalid_auth"}
if not errors:
user_input.pop("password")
return await self.async_finish(user_input)
schema: dict[str, type] = OrderedDict()
schema["username"] = str
schema["password"] = str
return self.async_show_form(
step_id="init", data_schema=vol.Schema(schema), errors=errors
step_id="init",
data_schema=vol.Schema(
{
vol.Required("username"): str,
vol.Required("password"): str,
}
),
errors=errors,
)

View File

@@ -102,5 +102,7 @@ class LegacyLoginFlow(LoginFlow):
return await self.async_finish({})
return self.async_show_form(
step_id="init", data_schema=vol.Schema({"password": str}), errors=errors
step_id="init",
data_schema=vol.Schema({vol.Required("password"): str}),
errors=errors,
)

View File

@@ -194,6 +194,12 @@ class TrustedNetworksAuthProvider(AuthProvider):
if any(ip_addr in trusted_proxy for trusted_proxy in self.trusted_proxies):
raise InvalidAuthError("Can't allow access from a proxy server")
if "cloud" in self.hass.config.components:
from hass_nabucasa import remote # pylint: disable=import-outside-toplevel
if remote.is_cloud_request.get():
raise InvalidAuthError("Can't allow access from Home Assistant Cloud")
@callback
def async_validate_refresh_token(
self, refresh_token: RefreshToken, remote_ip: str | None = None
@@ -244,5 +250,7 @@ class TrustedNetworksLoginFlow(LoginFlow):
return self.async_show_form(
step_id="init",
data_schema=vol.Schema({"user": vol.In(self._available_users)}),
data_schema=vol.Schema(
{vol.Required("user"): vol.In(self._available_users)}
),
)

View File

@@ -0,0 +1 @@
"""Backports from newer Python versions."""

View File

@@ -0,0 +1,33 @@
"""Enum backports from standard lib."""
from __future__ import annotations
from enum import Enum
from typing import Any, TypeVar
T = TypeVar("T", bound="StrEnum")
class StrEnum(str, Enum):
"""Partial backport of Python 3.11's StrEnum for our basic use cases."""
def __new__(cls: type[T], value: str, *args: Any, **kwargs: Any) -> T:
"""Create a new StrEnum instance."""
if not isinstance(value, str):
raise TypeError(f"{value!r} is not a string")
return super().__new__(cls, value, *args, **kwargs) # type: ignore[call-overload,no-any-return]
def __str__(self) -> str:
"""Return self.value."""
return str(self.value)
@staticmethod
def _generate_next_value_( # pylint: disable=arguments-differ # https://github.com/PyCQA/pylint/issues/5371
name: str, start: int, count: int, last_values: list[Any]
) -> Any:
"""
Make `auto()` explicitly unsupported.
We may revisit this when it's very clear that Python 3.11's
`StrEnum.auto()` behavior will no longer change.
"""
raise TypeError("auto() is not supported by this implementation")

View File

@@ -17,7 +17,10 @@ import yarl
from homeassistant import config as conf_util, config_entries, core, loader
from homeassistant.components import http
from homeassistant.const import REQUIRED_NEXT_PYTHON_DATE, REQUIRED_NEXT_PYTHON_VER
from homeassistant.const import (
REQUIRED_NEXT_PYTHON_HA_RELEASE,
REQUIRED_NEXT_PYTHON_VER,
)
from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers import area_registry, device_registry, entity_registry
from homeassistant.helpers.dispatcher import async_dispatcher_send
@@ -109,9 +112,8 @@ async def async_setup_hass(
config_dict = None
basic_setup_success = False
safe_mode = runtime_config.safe_mode
if not safe_mode:
if not (safe_mode := runtime_config.safe_mode):
await hass.async_add_executor_job(conf_util.process_ha_config_upgrade, hass)
try:
@@ -241,14 +243,16 @@ async def async_from_config_dict(
stop = monotonic()
_LOGGER.info("Home Assistant initialized in %.2fs", stop - start)
if REQUIRED_NEXT_PYTHON_DATE and sys.version_info[:3] < REQUIRED_NEXT_PYTHON_VER:
if (
REQUIRED_NEXT_PYTHON_HA_RELEASE
and sys.version_info[:3] < REQUIRED_NEXT_PYTHON_VER
):
msg = (
"Support for the running Python version "
f"{'.'.join(str(x) for x in sys.version_info[:3])} is deprecated and will "
f"be removed in the first release after {REQUIRED_NEXT_PYTHON_DATE}. "
f"be removed in Home Assistant {REQUIRED_NEXT_PYTHON_HA_RELEASE}. "
"Please upgrade Python to "
f"{'.'.join(str(x) for x in REQUIRED_NEXT_PYTHON_VER)} or "
"higher."
f"{'.'.join(str(x) for x in REQUIRED_NEXT_PYTHON_VER[:2])}."
)
_LOGGER.warning(msg)
hass.components.persistent_notification.async_create(
@@ -368,8 +372,7 @@ async def async_mount_local_lib_path(config_dir: str) -> str:
This function is a coroutine.
"""
deps_dir = os.path.join(config_dir, "deps")
lib_dir = await async_get_user_site(deps_dir)
if lib_dir not in sys.path:
if (lib_dir := await async_get_user_site(deps_dir)) not in sys.path:
sys.path.insert(0, lib_dir)
return deps_dir
@@ -494,17 +497,13 @@ async def _async_set_up_integrations(
_LOGGER.info("Domains to be set up: %s", domains_to_setup)
logging_domains = domains_to_setup & LOGGING_INTEGRATIONS
# Load logging as soon as possible
if logging_domains:
if logging_domains := domains_to_setup & LOGGING_INTEGRATIONS:
_LOGGER.info("Setting up logging: %s", logging_domains)
await async_setup_multi_components(hass, logging_domains, config)
# Start up debuggers. Start these first in case they want to wait.
debuggers = domains_to_setup & DEBUGGER_INTEGRATIONS
if debuggers:
if debuggers := domains_to_setup & DEBUGGER_INTEGRATIONS:
_LOGGER.debug("Setting up debuggers: %s", debuggers)
await async_setup_multi_components(hass, debuggers, config)
@@ -524,9 +523,7 @@ async def _async_set_up_integrations(
stage_1_domains.add(domain)
dep_itg = integration_cache.get(domain)
if dep_itg is None:
if (dep_itg := integration_cache.get(domain)) is None:
continue
deps_promotion.update(dep_itg.all_dependencies)
@@ -564,6 +561,14 @@ async def _async_set_up_integrations(
except asyncio.TimeoutError:
_LOGGER.warning("Setup timed out for stage 2 - moving forward")
# Wrap up startup
_LOGGER.debug("Waiting for startup to wrap up")
try:
async with hass.timeout.async_timeout(WRAP_UP_TIMEOUT, cool_down=COOLDOWN_TIME):
await hass.async_block_till_done()
except asyncio.TimeoutError:
_LOGGER.warning("Setup timed out for bootstrap - moving forward")
watch_task.cancel()
async_dispatcher_send(hass, SIGNAL_BOOTSTRAP_INTEGRATONS, {})
@@ -576,11 +581,3 @@ async def _async_set_up_integrations(
)
},
)
# Wrap up startup
_LOGGER.debug("Waiting for startup to wrap up")
try:
async with hass.timeout.async_timeout(WRAP_UP_TIMEOUT, cool_down=COOLDOWN_TIME):
await hass.async_block_till_done()
except asyncio.TimeoutError:
_LOGGER.warning("Setup timed out for bootstrap - moving forward")

View File

@@ -16,11 +16,12 @@ from homeassistant.const import (
CONF_PASSWORD,
CONF_USERNAME,
EVENT_HOMEASSISTANT_STOP,
Platform,
)
from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady
from homeassistant.helpers import config_validation as cv
from homeassistant.helpers.dispatcher import dispatcher_send
from homeassistant.helpers.entity import Entity
from homeassistant.helpers.entity import DeviceInfo, Entity
from .const import ATTRIBUTION, DEFAULT_CACHEDB, DOMAIN, LOGGER
@@ -53,14 +54,14 @@ CAPTURE_IMAGE_SCHEMA = vol.Schema({ATTR_ENTITY_ID: cv.entity_ids})
AUTOMATION_SCHEMA = vol.Schema({ATTR_ENTITY_ID: cv.entity_ids})
PLATFORMS = [
"alarm_control_panel",
"binary_sensor",
"lock",
"switch",
"cover",
"camera",
"light",
"sensor",
Platform.ALARM_CONTROL_PANEL,
Platform.BINARY_SENSOR,
Platform.LOCK,
Platform.SWITCH,
Platform.COVER,
Platform.CAMERA,
Platform.LIGHT,
Platform.SENSOR,
]
@@ -322,14 +323,14 @@ class AbodeDevice(AbodeEntity):
}
@property
def device_info(self):
def device_info(self) -> DeviceInfo:
"""Return device registry information for this entity."""
return {
"identifiers": {(DOMAIN, self._device.device_id)},
"manufacturer": "Abode",
"name": self._device.name,
"device_type": self._device.type,
}
return DeviceInfo(
identifiers={(DOMAIN, self._device.device_id)},
manufacturer="Abode",
model=self._device.type,
name=self._device.name,
)
def _update_callback(self, device):
"""Update the device state."""

View File

@@ -1,4 +1,6 @@
"""Config flow for the Abode Security System component."""
from http import HTTPStatus
from abodepy import Abode
from abodepy.exceptions import AbodeAuthenticationException, AbodeException
from abodepy.helpers.errors import MFA_CODE_REQUIRED
@@ -6,7 +8,7 @@ from requests.exceptions import ConnectTimeout, HTTPError
import voluptuous as vol
from homeassistant import config_entries
from homeassistant.const import CONF_PASSWORD, CONF_USERNAME, HTTP_BAD_REQUEST
from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
from .const import DEFAULT_CACHEDB, DOMAIN, LOGGER
@@ -51,7 +53,7 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
LOGGER.error("Unable to connect to Abode: %s", ex)
if ex.errcode == HTTP_BAD_REQUEST:
if ex.errcode == HTTPStatus.BAD_REQUEST:
errors = {"base": "invalid_auth"}
else:

View File

@@ -1,9 +1,19 @@
{
"config": {
"abort": {
"reauth_successful": "\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0442\u043e \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u0432\u0430\u043d\u0435 \u0431\u0435\u0448\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e",
"single_instance_allowed": "\u0420\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0430 \u0435 \u0441\u0430\u043c\u043e \u0435\u0434\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043d\u0430 Abode."
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"
},
"step": {
"reauth_confirm": {
"data": {
"password": "\u041f\u0430\u0440\u043e\u043b\u0430",
"username": "Email"
}
},
"user": {
"data": {
"password": "\u041f\u0430\u0440\u043e\u043b\u0430",

View File

@@ -1,7 +1,7 @@
{
"config": {
"abort": {
"reauth_successful": "Az \u00fajrahiteles\u00edt\u00e9s sikeres volt",
"reauth_successful": "Az \u00fajrahiteles\u00edt\u00e9s sikeres volt.",
"single_instance_allowed": "M\u00e1r konfigur\u00e1lva van. Csak egy konfigur\u00e1ci\u00f3 lehets\u00e9ges."
},
"error": {

View File

@@ -0,0 +1,35 @@
{
"config": {
"abort": {
"reauth_successful": "\u518d\u8a8d\u8a3c\u306b\u6210\u529f\u3057\u307e\u3057\u305f",
"single_instance_allowed": "\u3059\u3067\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059\u3002\u5358\u4e00\u306e\u8a2d\u5b9a\u3057\u304b\u3067\u304d\u307e\u305b\u3093\u3002"
},
"error": {
"cannot_connect": "\u63a5\u7d9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f",
"invalid_auth": "\u7121\u52b9\u306a\u8a8d\u8a3c",
"invalid_mfa_code": "\u7121\u52b9\u306aMFA\u30b3\u30fc\u30c9"
},
"step": {
"mfa": {
"data": {
"mfa_code": "MFA\u30b3\u30fc\u30c9(6\u6841)"
},
"title": "Abode\u306eMFA\u30b3\u30fc\u30c9\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044"
},
"reauth_confirm": {
"data": {
"password": "\u30d1\u30b9\u30ef\u30fc\u30c9",
"username": "E\u30e1\u30fc\u30eb"
},
"title": "Abode\u306e\u30ed\u30b0\u30a4\u30f3\u60c5\u5831\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044"
},
"user": {
"data": {
"password": "\u30d1\u30b9\u30ef\u30fc\u30c9",
"username": "E\u30e1\u30fc\u30eb"
},
"title": "Abode\u306e\u30ed\u30b0\u30a4\u30f3\u60c5\u5831\u3092\u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044"
}
}
}
}

View File

@@ -27,7 +27,8 @@
"data": {
"password": "Parola",
"username": "E-posta"
}
},
"title": "Abode giri\u015f bilgilerinizi doldurun"
}
}
}

View File

@@ -11,7 +11,7 @@ from aiohttp.client_exceptions import ClientConnectorError
from async_timeout import timeout
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_API_KEY
from homeassistant.const import CONF_API_KEY, Platform
from homeassistant.core import HomeAssistant
from homeassistant.helpers.aiohttp_client import async_get_clientsession
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
@@ -20,7 +20,7 @@ from .const import ATTR_FORECAST, CONF_FORECAST, DOMAIN
_LOGGER = logging.getLogger(__name__)
PLATFORMS = ["sensor", "weather"]
PLATFORMS = [Platform.SENSOR, Platform.WEATHER]
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:

View File

@@ -3,7 +3,7 @@ from __future__ import annotations
from typing import Final
from homeassistant.components.sensor import STATE_CLASS_MEASUREMENT
from homeassistant.components.sensor import SensorStateClass
from homeassistant.components.weather import (
ATTR_CONDITION_CLEAR_NIGHT,
ATTR_CONDITION_CLOUDY,
@@ -220,7 +220,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
entity_registry_enabled_default=False,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
AccuWeatherSensorDescription(
key="Ceiling",
@@ -228,7 +228,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
name="Cloud Ceiling",
unit_metric=LENGTH_METERS,
unit_imperial=LENGTH_FEET,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
AccuWeatherSensorDescription(
key="CloudCover",
@@ -237,7 +237,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
unit_metric=PERCENTAGE,
unit_imperial=PERCENTAGE,
entity_registry_enabled_default=False,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
AccuWeatherSensorDescription(
key="DewPoint",
@@ -246,7 +246,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
entity_registry_enabled_default=False,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
AccuWeatherSensorDescription(
key="RealFeelTemperature",
@@ -254,7 +254,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
name="RealFeel Temperature",
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureShade",
@@ -263,7 +263,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
entity_registry_enabled_default=False,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
AccuWeatherSensorDescription(
key="Precipitation",
@@ -271,7 +271,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
name="Precipitation",
unit_metric=LENGTH_MILLIMETERS,
unit_imperial=LENGTH_INCHES,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
AccuWeatherSensorDescription(
key="PressureTendency",
@@ -287,7 +287,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
name="UV Index",
unit_metric=UV_INDEX,
unit_imperial=UV_INDEX,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
AccuWeatherSensorDescription(
key="WetBulbTemperature",
@@ -296,7 +296,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
entity_registry_enabled_default=False,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
AccuWeatherSensorDescription(
key="WindChillTemperature",
@@ -305,7 +305,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
entity_registry_enabled_default=False,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
AccuWeatherSensorDescription(
key="Wind",
@@ -313,7 +313,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
name="Wind",
unit_metric=SPEED_KILOMETERS_PER_HOUR,
unit_imperial=SPEED_MILES_PER_HOUR,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
AccuWeatherSensorDescription(
key="WindGust",
@@ -322,6 +322,6 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
unit_metric=SPEED_KILOMETERS_PER_HOUR,
unit_imperial=SPEED_MILES_PER_HOUR,
entity_registry_enabled_default=False,
state_class=STATE_CLASS_MEASUREMENT,
state_class=SensorStateClass.MEASUREMENT,
),
)

View File

@@ -2,7 +2,7 @@
"domain": "accuweather",
"name": "AccuWeather",
"documentation": "https://www.home-assistant.io/integrations/accuweather/",
"requirements": ["accuweather==0.2.0"],
"requirements": ["accuweather==0.3.0"],
"codeowners": ["@bieniu"],
"config_flow": true,
"quality_scale": "platinum",

View File

@@ -5,8 +5,10 @@ from typing import Any, cast
from homeassistant.components.sensor import SensorEntity
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import ATTR_ATTRIBUTION, CONF_NAME, DEVICE_CLASS_TEMPERATURE
from homeassistant.const import CONF_NAME, DEVICE_CLASS_TEMPERATURE
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.device_registry import DeviceEntryType
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.typing import StateType
from homeassistant.helpers.update_coordinator import CoordinatorEntity
@@ -59,6 +61,7 @@ async def async_setup_entry(
class AccuWeatherSensor(CoordinatorEntity, SensorEntity):
"""Define an AccuWeather entity."""
_attr_attribution = ATTRIBUTION
coordinator: AccuWeatherDataUpdateCoordinator
entity_description: AccuWeatherSensorDescription
@@ -75,7 +78,7 @@ class AccuWeatherSensor(CoordinatorEntity, SensorEntity):
self._sensor_data = _get_sensor_data(
coordinator.data, forecast_day, description.key
)
self._attrs = {ATTR_ATTRIBUTION: ATTRIBUTION}
self._attrs: dict[str, Any] = {}
if forecast_day is not None:
self._attr_name = f"{name} {description.name} {forecast_day}d"
self._attr_unique_id = (
@@ -92,12 +95,12 @@ class AccuWeatherSensor(CoordinatorEntity, SensorEntity):
else:
self._unit_system = API_IMPERIAL
self._attr_native_unit_of_measurement = description.unit_imperial
self._attr_device_info = {
"identifiers": {(DOMAIN, coordinator.location_key)},
"name": NAME,
"manufacturer": MANUFACTURER,
"entry_type": "service",
}
self._attr_device_info = DeviceInfo(
entry_type=DeviceEntryType.SERVICE,
identifiers={(DOMAIN, coordinator.location_key)},
manufacturer=MANUFACTURER,
name=NAME,
)
self.forecast_day = forecast_day
@property

View File

@@ -0,0 +1,22 @@
{
"config": {
"abort": {
"single_instance_allowed": "\u0412\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e. \u0412\u044a\u0437\u043c\u043e\u0436\u043d\u0430 \u0435 \u0441\u0430\u043c\u043e \u0435\u0434\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f."
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435",
"invalid_api_key": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u0435\u043d API \u043a\u043b\u044e\u0447"
},
"step": {
"user": {
"data": {
"api_key": "API \u043a\u043b\u044e\u0447",
"latitude": "\u0413\u0435\u043e\u0433\u0440\u0430\u0444\u0441\u043a\u0430 \u0448\u0438\u0440\u0438\u043d\u0430",
"longitude": "\u0413\u0435\u043e\u0433\u0440\u0430\u0444\u0441\u043a\u0430 \u0434\u044a\u043b\u0436\u0438\u043d\u0430",
"name": "\u0418\u043c\u0435"
},
"title": "AccuWeather"
}
}
}
}

View File

@@ -6,7 +6,7 @@
"error": {
"cannot_connect": "Sikertelen csatlakoz\u00e1s",
"invalid_api_key": "\u00c9rv\u00e9nytelen API kulcs",
"requests_exceeded": "T\u00fall\u00e9pt\u00e9k az Accuweather API-hoz beny\u00fajtott k\u00e9relmek megengedett sz\u00e1m\u00e1t. Meg kell v\u00e1rnia vagy m\u00f3dos\u00edtania kell az API-kulcsot."
"requests_exceeded": "Accuweather API-hoz enged\u00e9lyezett lek\u00e9r\u00e9sek sz\u00e1ma t\u00fal lett l\u00e9pve. Meg kell v\u00e1rnia m\u00edg a tilt\u00e1s lej\u00e1r vagy m\u00f3dos\u00edtania kell az API-kulcsot."
},
"step": {
"user": {

View File

@@ -0,0 +1,41 @@
{
"config": {
"abort": {
"single_instance_allowed": "\u3059\u3067\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059\u3002\u5358\u4e00\u306e\u8a2d\u5b9a\u3057\u304b\u3067\u304d\u307e\u305b\u3093\u3002"
},
"error": {
"cannot_connect": "\u63a5\u7d9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f",
"invalid_api_key": "\u7121\u52b9\u306aAPI\u30ad\u30fc",
"requests_exceeded": "Accuweather API\u3078\u306e\u30ea\u30af\u30a8\u30b9\u30c8\u6570\u304c\u8a31\u53ef\u3055\u308c\u305f\u6570\u3092\u8d85\u3048\u307e\u3057\u305f\u3002\u6642\u9593\u3092\u7f6e\u304f\u304b\u3001API\u30ad\u30fc\u3092\u5909\u66f4\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002"
},
"step": {
"user": {
"data": {
"api_key": "API\u30ad\u30fc",
"latitude": "\u7def\u5ea6",
"longitude": "\u7d4c\u5ea6",
"name": "\u540d\u524d"
},
"description": "\u8a2d\u5b9a\u306b\u3064\u3044\u3066\u30d8\u30eb\u30d7\u304c\u5fc5\u8981\u306a\u5834\u5408\u306f\u3001https://www.home-assistant.io/integrations/accuweather/ \u306b\u30a2\u30af\u30bb\u30b9\u3057\u3066\u304f\u3060\u3055\u3044\n\n\u4e00\u90e8\u306e\u30bb\u30f3\u30b5\u30fc\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u306f\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u307e\u305b\u3093\u3002\u30a4\u30f3\u30c6\u30b0\u30ec\u30fc\u30b7\u30e7\u30f3\u3067\u306e\u8a2d\u5b9a\u5f8c\u306b\u3001\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u30ec\u30b8\u30b9\u30c8\u30ea\u3067\u6709\u52b9\u306b\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\n\u5929\u6c17\u4e88\u5831\u306f\u30c7\u30d5\u30a9\u30eb\u30c8\u3067\u306f\u6709\u52b9\u306b\u306a\u3063\u3066\u3044\u307e\u305b\u3093\u3002\u30a4\u30f3\u30c6\u30b0\u30ec\u30fc\u30b7\u30e7\u30f3\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u6709\u52b9\u306b\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002",
"title": "AccuWeather"
}
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "\u5929\u6c17\u4e88\u5831"
},
"description": "\u5236\u9650\u306b\u3088\u308a\u7121\u6599\u30d0\u30fc\u30b8\u30e7\u30f3\u306eAccuWeather API\u30ad\u30fc\u3067\u306f\u3001\u5929\u6c17\u4e88\u5831\u3092\u6709\u52b9\u306b\u3057\u3066\u3082\u30c7\u30fc\u30bf\u306e\u66f4\u65b0\u306f40\u5206\u3067\u306f\u306a\u304f80\u5206\u3054\u3068\u3067\u3059\u3002",
"title": "AccuWeather\u306e\u30aa\u30d7\u30b7\u30e7\u30f3"
}
}
},
"system_health": {
"info": {
"can_reach_server": "AccuWeather\u30b5\u30fc\u30d0\u30fc\u306b\u5230\u9054",
"remaining_requests": "\u6b8b\u308a\u306e\u8a31\u53ef\u3055\u308c\u305f\u30ea\u30af\u30a8\u30b9\u30c8"
}
}
}

View File

@@ -0,0 +1,9 @@
{
"state": {
"accuweather__pressure_tendency": {
"falling": "\u4e0b\u964d",
"rising": "\u4e0a\u6607",
"steady": "\u5b89\u5b9a"
}
}
}

View File

@@ -0,0 +1,9 @@
{
"state": {
"accuweather__pressure_tendency": {
"falling": "D\u00fc\u015f\u00fcyor",
"rising": "Y\u00fckseliyor",
"steady": "Sabit"
}
}
}

View File

@@ -5,7 +5,8 @@
},
"error": {
"cannot_connect": "Ba\u011flanma hatas\u0131",
"invalid_api_key": "Ge\u00e7ersiz API anahtar\u0131"
"invalid_api_key": "Ge\u00e7ersiz API anahtar\u0131",
"requests_exceeded": "Accuweather API i\u00e7in izin verilen istek say\u0131s\u0131 a\u015f\u0131ld\u0131. API Anahtar\u0131n\u0131 beklemeniz veya de\u011fi\u015ftirmeniz gerekir."
},
"step": {
"user": {
@@ -15,6 +16,7 @@
"longitude": "Boylam",
"name": "Ad"
},
"description": "Yap\u0131land\u0131rmayla ilgili yard\u0131ma ihtiyac\u0131n\u0131z varsa buraya bak\u0131n: https://www.home-assistant.io/integrations/accuweather/ \n\n Baz\u0131 sens\u00f6rler varsay\u0131lan olarak etkin de\u011fildir. Bunlar\u0131, entegrasyon yap\u0131land\u0131rmas\u0131ndan sonra varl\u0131k kay\u0131t defterinde etkinle\u015ftirebilirsiniz.\n Hava tahmini varsay\u0131lan olarak etkin de\u011fildir. Entegrasyon se\u00e7eneklerinde etkinle\u015ftirebilirsiniz.",
"title": "AccuWeather"
}
}
@@ -25,6 +27,7 @@
"data": {
"forecast": "Hava Durumu tahmini"
},
"description": "AccuWeather API anahtar\u0131n\u0131n \u00fccretsiz s\u00fcr\u00fcm\u00fcn\u00fcn s\u0131n\u0131rlamalar\u0131 nedeniyle, hava tahminini etkinle\u015ftirdi\u011finizde, veri g\u00fcncellemeleri her 40 dakikada bir yerine 80 dakikada bir ger\u00e7ekle\u015ftirilir.",
"title": "AccuWeather Se\u00e7enekleri"
}
}

View File

@@ -16,7 +16,7 @@
"longitude": "\u7d93\u5ea6",
"name": "\u540d\u7a31"
},
"description": "\u5047\u5982\u4f60\u9700\u8981\u5354\u52a9\u9032\u884c\u8a2d\u5b9a\uff0c\u8acb\u53c3\u95b1\uff1ahttps://www.home-assistant.io/integrations/accuweather/\n\n\u67d0\u4e9b\u50b3\u611f\u5668\u9810\u8a2d\u70ba\u672a\u555f\u7528\uff0c\u53ef\u4ee5\u65bc\u6574\u5408\u8a2d\u5b9a\u4e2d\u555f\u7528\u9019\u4e9b\u5be6\u9ad4\u3002\u5929\u6c23\u9810\u5831\u9810\u8a2d\u672a\u958b\u555f\u3002\u53ef\u4ee5\u65bc\u6574\u5408\u9078\u9805\u4e2d\u958b\u555f\u3002",
"description": "\u5047\u5982\u4f60\u9700\u8981\u5354\u52a9\u9032\u884c\u8a2d\u5b9a\uff0c\u8acb\u53c3\u95b1\uff1ahttps://www.home-assistant.io/integrations/accuweather/\n\n\u67d0\u4e9b\u611f\u6e2c\u5668\u9810\u8a2d\u70ba\u672a\u555f\u7528\uff0c\u53ef\u4ee5\u65bc\u6574\u5408\u8a2d\u5b9a\u4e2d\u555f\u7528\u9019\u4e9b\u5be6\u9ad4\u3002\u5929\u6c23\u9810\u5831\u9810\u8a2d\u672a\u958b\u555f\u3002\u53ef\u4ee5\u65bc\u6574\u5408\u9078\u9805\u4e2d\u958b\u555f\u3002",
"title": "AccuWeather"
}
}

View File

@@ -19,6 +19,8 @@ from homeassistant.components.weather import (
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_NAME, TEMP_CELSIUS, TEMP_FAHRENHEIT
from homeassistant.core import HomeAssistant
from homeassistant.helpers.device_registry import DeviceEntryType
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from homeassistant.util.dt import utc_from_timestamp
@@ -66,12 +68,18 @@ class AccuWeatherEntity(CoordinatorEntity, WeatherEntity):
TEMP_CELSIUS if coordinator.is_metric else TEMP_FAHRENHEIT
)
self._attr_attribution = ATTRIBUTION
self._attr_device_info = {
"identifiers": {(DOMAIN, coordinator.location_key)},
"name": NAME,
"manufacturer": MANUFACTURER,
"entry_type": "service",
}
self._attr_device_info = DeviceInfo(
entry_type=DeviceEntryType.SERVICE,
identifiers={(DOMAIN, coordinator.location_key)},
manufacturer=MANUFACTURER,
name=NAME,
# You don't need to provide specific details for the URL,
# so passing in _ characters is fine if the location key
# is correct
configuration_url="http://accuweather.com/en/"
f"_/_/{coordinator.location_key}/"
f"weather-forecast/{coordinator.location_key}/",
)
@property
def condition(self) -> str | None:

View File

@@ -111,8 +111,7 @@ class AcerSwitch(SwitchEntity):
"""Write msg, obtain answer and format output."""
# answers are formatted as ***\answer\r***
awns = self._write_read(msg)
match = re.search(r"\r(.+)\r", awns)
if match:
if match := re.search(r"\r(.+)\r", awns):
return match.group(1)
return STATE_UNKNOWN
@@ -129,8 +128,7 @@ class AcerSwitch(SwitchEntity):
self._attr_available = False
for key in self._attributes:
msg = CMD_DICT.get(key)
if msg:
if msg := CMD_DICT.get(key):
awns = self._write_read_format(msg)
self._attributes[key] = awns
self._attr_extra_state_attributes = self._attributes

View File

@@ -1,13 +1,14 @@
"""The Rollease Acmeda Automate integration."""
from homeassistant import config_entries, core
from homeassistant.const import Platform
from .const import DOMAIN
from .hub import PulseHub
CONF_HUBS = "hubs"
PLATFORMS = ["cover", "sensor"]
PLATFORMS = [Platform.COVER, Platform.SENSOR]
async def async_setup_entry(

View File

@@ -77,11 +77,11 @@ class AcmedaBase(entity.Entity):
return self.roller.name
@property
def device_info(self):
def device_info(self) -> entity.DeviceInfo:
"""Return the device info."""
return {
"identifiers": {(DOMAIN, self.unique_id)},
"name": self.roller.name,
"manufacturer": "Rollease Acmeda",
"via_device": (DOMAIN, self.roller.hub.id),
}
return entity.DeviceInfo(
identifiers={(DOMAIN, self.unique_id)},
manufacturer="Rollease Acmeda",
name=self.roller.name,
via_device=(DOMAIN, self.roller.hub.id),
)

View File

@@ -9,6 +9,7 @@ import async_timeout
import voluptuous as vol
from homeassistant import config_entries
from homeassistant.const import CONF_HOST, CONF_ID
from .const import DOMAIN
@@ -27,9 +28,9 @@ class AcmedaFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
if (
user_input is not None
and self.discovered_hubs is not None
and user_input["id"] in self.discovered_hubs
and user_input[CONF_ID] in self.discovered_hubs
):
return await self.async_create(self.discovered_hubs[user_input["id"]])
return await self.async_create(self.discovered_hubs[user_input[CONF_ID]])
# Already configured hosts
already_configured = {
@@ -55,7 +56,7 @@ class AcmedaFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
step_id="user",
data_schema=vol.Schema(
{
vol.Required("id"): vol.In(
vol.Required(CONF_ID): vol.In(
{hub.id: f"{hub.id} {hub.host}" for hub in hubs}
)
}
@@ -65,4 +66,4 @@ class AcmedaFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
async def async_create(self, hub):
"""Create the Acmeda Hub entry."""
await self.async_set_unique_id(hub.id, raise_on_progress=False)
return self.async_create_entry(title=hub.id, data={"host": hub.host})
return self.async_create_entry(title=hub.id, data={CONF_HOST: hub.host})

View File

@@ -3,7 +3,7 @@
"name": "Rollease Acmeda Automate",
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/acmeda",
"requirements": ["aiopulse==0.4.2"],
"requirements": ["aiopulse==0.4.3"],
"codeowners": ["@atmurray"],
"iot_class": "local_push"
}

View File

@@ -0,0 +1,15 @@
{
"config": {
"abort": {
"no_devices_found": "\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u4e0a\u306b\u30c7\u30d0\u30a4\u30b9\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093"
},
"step": {
"user": {
"data": {
"id": "\u30db\u30b9\u30c8ID"
},
"title": "\u8ffd\u52a0\u3059\u308b\u30cf\u30d6\u306e\u9078\u629e"
}
}
}
}

View File

@@ -1,10 +1,14 @@
{
"config": {
"abort": {
"no_devices_found": "A\u011fda cihaz bulunamad\u0131"
},
"step": {
"user": {
"data": {
"id": "Ana bilgisayar kimli\u011fi"
}
},
"title": "Eklemek i\u00e7in bir merkez se\u00e7in"
}
}
}

View File

@@ -71,8 +71,7 @@ class ActiontecDeviceScanner(DeviceScanner):
if not self.success_init:
return False
actiontec_data = self.get_actiontec_data()
if actiontec_data is None:
if (actiontec_data := self.get_actiontec_data()) is None:
return False
self.last_results = [
device for device in actiontec_data if device.timevalid > -60

View File

@@ -2,9 +2,10 @@
from __future__ import annotations
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant
PLATFORMS = ["climate"]
PLATFORMS = [Platform.CLIMATE]
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:

View File

@@ -1,7 +1,6 @@
"""Support for Adax wifi-enabled home heaters."""
from __future__ import annotations
import logging
from typing import Any
from adax import Adax
@@ -21,11 +20,10 @@ from homeassistant.const import (
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.aiohttp_client import async_get_clientsession
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import ACCOUNT_ID
_LOGGER = logging.getLogger(__name__)
from .const import ACCOUNT_ID, DOMAIN
async def async_setup_entry(
@@ -41,8 +39,11 @@ async def async_setup_entry(
)
async_add_entities(
AdaxDevice(room, adax_data_handler)
for room in await adax_data_handler.get_rooms()
(
AdaxDevice(room, adax_data_handler)
for room in await adax_data_handler.get_rooms()
),
True,
)
@@ -58,69 +59,51 @@ class AdaxDevice(ClimateEntity):
def __init__(self, heater_data: dict[str, Any], adax_data_handler: Adax) -> None:
"""Initialize the heater."""
self._heater_data = heater_data
self._device_id = heater_data["id"]
self._adax_data_handler = adax_data_handler
self._attr_unique_id = f"{heater_data['homeId']}_{heater_data['id']}"
@property
def name(self) -> str:
"""Return the name of the device, if any."""
return self._heater_data["name"]
@property
def hvac_mode(self) -> str:
"""Return hvac operation ie. heat, cool mode."""
if self._heater_data["heatingEnabled"]:
return HVAC_MODE_HEAT
return HVAC_MODE_OFF
@property
def icon(self) -> str:
"""Return nice icon for heater."""
if self.hvac_mode == HVAC_MODE_HEAT:
return "mdi:radiator"
return "mdi:radiator-off"
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, heater_data["id"])},
name=self.name,
manufacturer="Adax",
)
async def async_set_hvac_mode(self, hvac_mode: str) -> None:
"""Set hvac mode."""
if hvac_mode == HVAC_MODE_HEAT:
temperature = max(
self.min_temp, self._heater_data.get("targetTemperature", self.min_temp)
)
temperature = max(self.min_temp, self.target_temperature or self.min_temp)
await self._adax_data_handler.set_room_target_temperature(
self._heater_data["id"], temperature, True
self._device_id, temperature, True
)
elif hvac_mode == HVAC_MODE_OFF:
await self._adax_data_handler.set_room_target_temperature(
self._heater_data["id"], self.min_temp, False
self._device_id, self.min_temp, False
)
else:
return
await self._adax_data_handler.update()
@property
def current_temperature(self) -> float | None:
"""Return the current temperature."""
return self._heater_data.get("temperature")
@property
def target_temperature(self) -> int | None:
"""Return the temperature we try to reach."""
return self._heater_data.get("targetTemperature")
async def async_set_temperature(self, **kwargs: Any) -> None:
"""Set new target temperature."""
temperature = kwargs.get(ATTR_TEMPERATURE)
if temperature is None:
if (temperature := kwargs.get(ATTR_TEMPERATURE)) is None:
return
await self._adax_data_handler.set_room_target_temperature(
self._heater_data["id"], temperature, True
self._device_id, temperature, True
)
async def async_update(self) -> None:
"""Get the latest data."""
for room in await self._adax_data_handler.get_rooms():
if room["id"] == self._heater_data["id"]:
self._heater_data = room
return
if room["id"] != self._device_id:
continue
self._attr_name = room["name"]
self._attr_current_temperature = room.get("temperature")
self._attr_target_temperature = room.get("targetTemperature")
if room["heatingEnabled"]:
self._attr_hvac_mode = HVAC_MODE_HEAT
self._attr_icon = "mdi:radiator"
else:
self._attr_hvac_mode = HVAC_MODE_OFF
self._attr_icon = "mdi:radiator-off"
return

View File

@@ -4,7 +4,7 @@
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/adax",
"requirements": [
"adax==0.1.1"
"adax==0.2.0"
],
"codeowners": [
"@danielhiversen"

View File

@@ -0,0 +1,19 @@
{
"config": {
"abort": {
"already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e"
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435",
"invalid_auth": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u0432\u0430\u043d\u0435"
},
"step": {
"user": {
"data": {
"host": "\u0425\u043e\u0441\u0442",
"password": "\u041f\u0430\u0440\u043e\u043b\u0430"
}
}
}
}
}

View File

@@ -1,10 +1,17 @@
{
"config": {
"abort": {
"already_configured": "El dispositivo ya est\u00e1 configurado"
},
"error": {
"cannot_connect": "No se pudo conectar",
"invalid_auth": "Autenticaci\u00f3n no v\u00e1lida"
},
"step": {
"user": {
"data": {
"account_id": "ID de la cuenta",
"host": "Anfitri\u00f3n",
"host": "Host",
"password": "Contrase\u00f1a"
}
}

View File

@@ -11,7 +11,7 @@
"user": {
"data": {
"account_id": "Fi\u00f3k ID",
"host": "Gazdag\u00e9p",
"host": "C\u00edm",
"password": "Jelsz\u00f3"
}
}

View File

@@ -0,0 +1,20 @@
{
"config": {
"abort": {
"already_configured": "Perangkat sudah dikonfigurasi"
},
"error": {
"cannot_connect": "Gagal terhubung",
"invalid_auth": "Autentikasi tidak valid"
},
"step": {
"user": {
"data": {
"account_id": "ID Akun",
"host": "Host",
"password": "Kata Sandi"
}
}
}
}
}

View File

@@ -0,0 +1,20 @@
{
"config": {
"abort": {
"already_configured": "\u30c7\u30d0\u30a4\u30b9\u306f\u3059\u3067\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059"
},
"error": {
"cannot_connect": "\u63a5\u7d9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f",
"invalid_auth": "\u7121\u52b9\u306a\u8a8d\u8a3c"
},
"step": {
"user": {
"data": {
"account_id": "\u30a2\u30ab\u30a6\u30f3\u30c8ID",
"host": "\u30db\u30b9\u30c8",
"password": "\u30d1\u30b9\u30ef\u30fc\u30c9"
}
}
}
}
}

View File

@@ -0,0 +1,20 @@
{
"config": {
"abort": {
"already_configured": "Cihaz zaten yap\u0131land\u0131r\u0131lm\u0131\u015f"
},
"error": {
"cannot_connect": "Ba\u011flanma hatas\u0131",
"invalid_auth": "Ge\u00e7ersiz kimlik do\u011frulama"
},
"step": {
"user": {
"data": {
"account_id": "Hesap Kimli\u011fi",
"host": "Ana bilgisayar",
"password": "Parola"
}
}
}
}
}

View File

@@ -6,7 +6,7 @@ import logging
from adguardhome import AdGuardHome, AdGuardHomeConnectionError, AdGuardHomeError
import voluptuous as vol
from homeassistant.config_entries import ConfigEntry
from homeassistant.config_entries import SOURCE_HASSIO, ConfigEntry
from homeassistant.const import (
CONF_HOST,
CONF_NAME,
@@ -16,11 +16,13 @@ from homeassistant.const import (
CONF_URL,
CONF_USERNAME,
CONF_VERIFY_SSL,
Platform,
)
from homeassistant.core import HomeAssistant
from homeassistant.exceptions import ConfigEntryNotReady
from homeassistant.helpers import config_validation as cv
from homeassistant.helpers.aiohttp_client import async_get_clientsession
from homeassistant.helpers.device_registry import DeviceEntryType
from homeassistant.helpers.entity import DeviceInfo, Entity
from .const import (
@@ -45,7 +47,7 @@ SERVICE_REFRESH_SCHEMA = vol.Schema(
{vol.Optional(CONF_FORCE, default=False): cv.boolean}
)
PLATFORMS = ["sensor", "switch"]
PLATFORMS = [Platform.SENSOR, Platform.SWITCH]
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
@@ -196,14 +198,23 @@ class AdGuardHomeDeviceEntity(AdGuardHomeEntity):
@property
def device_info(self) -> DeviceInfo:
"""Return device information about this AdGuard Home instance."""
return {
"identifiers": {
if self._entry.source == SOURCE_HASSIO:
config_url = "homeassistant://hassio/ingress/a0d7b954_adguard"
else:
if self.adguard.tls:
config_url = f"https://{self.adguard.host}:{self.adguard.port}"
else:
config_url = f"http://{self.adguard.host}:{self.adguard.port}"
return DeviceInfo(
entry_type=DeviceEntryType.SERVICE,
identifiers={
(DOMAIN, self.adguard.host, self.adguard.port, self.adguard.base_path) # type: ignore
},
"name": "AdGuard Home",
"manufacturer": "AdGuard Team",
"sw_version": self.hass.data[DOMAIN][self._entry.entry_id].get(
manufacturer="AdGuard Team",
name="AdGuard Home",
sw_version=self.hass.data[DOMAIN][self._entry.entry_id].get(
DATA_ADGUARD_VERSION
),
"entry_type": "service",
}
configuration_url=config_url,
)

View File

@@ -6,6 +6,7 @@ from typing import Any
from adguardhome import AdGuardHome, AdGuardHomeConnectionError
import voluptuous as vol
from homeassistant.components.hassio import HassioServiceInfo
from homeassistant.config_entries import ConfigFlow
from homeassistant.const import (
CONF_HOST,
@@ -104,14 +105,14 @@ class AdGuardHomeFlowHandler(ConfigFlow, domain=DOMAIN):
},
)
async def async_step_hassio(self, discovery_info: dict[str, Any]) -> FlowResult:
async def async_step_hassio(self, discovery_info: HassioServiceInfo) -> FlowResult:
"""Prepare configuration for a Hass.io AdGuard Home add-on.
This flow is triggered by the discovery component.
"""
await self._async_handle_discovery_without_unique_id()
self._hassio_discovery = discovery_info
self._hassio_discovery = discovery_info.config
return await self.async_step_hassio_confirm()
async def async_step_hassio_confirm(

View File

@@ -3,6 +3,9 @@
"abort": {
"existing_instance_updated": "\u0410\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0430\u0442\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f."
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"
},
"step": {
"hassio_confirm": {
"description": "\u0418\u0441\u043a\u0430\u0442\u0435 \u043b\u0438 \u0434\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u0442\u0435 Home Assistant \u0434\u0430 \u0441\u0435 \u0441\u0432\u044a\u0440\u0437\u0432\u0430 \u0441 AdGuard Home, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u0435\u043d \u043e\u0442 Supervisor \u0434\u043e\u0431\u0430\u0432\u043a\u0430\u0442\u0430: {addon} ?",
@@ -10,7 +13,9 @@
},
"user": {
"data": {
"host": "\u0425\u043e\u0441\u0442",
"password": "\u041f\u0430\u0440\u043e\u043b\u0430",
"port": "\u041f\u043e\u0440\u0442",
"ssl": "AdGuard Home \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 SSL \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442",
"username": "\u041f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0441\u043a\u043e \u0438\u043c\u0435",
"verify_ssl": "AdGuard Home \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 \u043d\u0430\u0434\u0435\u0436\u0434\u0435\u043d \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442"

View File

@@ -7,6 +7,9 @@
"cannot_connect": "\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05db\u05e9\u05dc\u05d4"
},
"step": {
"hassio_confirm": {
"title": "AdGuard Home \u05d1\u05d0\u05de\u05e6\u05e2\u05d5\u05ea \u05d4\u05e8\u05d7\u05d1\u05ea Assistant Assistant"
},
"user": {
"data": {
"host": "\u05de\u05d0\u05e8\u05d7",

View File

@@ -9,12 +9,12 @@
},
"step": {
"hassio_confirm": {
"description": "Be szeretn\u00e9 \u00e1ll\u00edtani a Home Assistant-ot, hogy csatlakozzon az AdGuard Home-hoz, amelyet a kieg\u00e9sz\u00edt\u0151 biztos\u00edt: {addon} ?",
"description": "Szeretn\u00e9 be\u00e1ll\u00edtani Home Assistantot AdGuard Home-hoz val\u00f3 csatlakoz\u00e1shoz, {addon} kieg\u00e9sz\u00edt\u0151 \u00e1ltal?",
"title": "Az AdGuard Home a Home Assistant kieg\u00e9sz\u00edt\u0151 seg\u00edts\u00e9g\u00e9vel"
},
"user": {
"data": {
"host": "Hoszt",
"host": "C\u00edm",
"password": "Jelsz\u00f3",
"port": "Port",
"ssl": "SSL tan\u00fas\u00edtv\u00e1ny haszn\u00e1lata",

View File

@@ -9,7 +9,7 @@
},
"step": {
"hassio_confirm": {
"description": "Ingin mengonfigurasi Home Assistant untuk terhubung ke AdGuard Home yang disediakan oleh add-on Supervisor {addon}?",
"description": "Ingin mengonfigurasi Home Assistant untuk terhubung ke AdGuard Home yang disediakan oleh add-on: {addon}?",
"title": "AdGuard Home melalui add-on Home Assistant"
},
"user": {

View File

@@ -0,0 +1,28 @@
{
"config": {
"abort": {
"already_configured": "\u30b5\u30fc\u30d3\u30b9\u306f\u3059\u3067\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059",
"existing_instance_updated": "\u65e2\u5b58\u306e\u8a2d\u5b9a\u3092\u66f4\u65b0\u3057\u307e\u3057\u305f\u3002"
},
"error": {
"cannot_connect": "\u63a5\u7d9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f"
},
"step": {
"hassio_confirm": {
"description": "\u30a2\u30c9\u30aa\u30f3 {addon} \u304c\u3001\u63d0\u4f9b\u3059\u308bAdGuard Home\u306b\u63a5\u7d9a\u3059\u308b\u3088\u3046\u306bHome Assistant\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u304b\uff1f",
"title": "Home Assistant\u30a2\u30c9\u30aa\u30f3\u7d4c\u7531\u306eAdGuard Home"
},
"user": {
"data": {
"host": "\u30db\u30b9\u30c8",
"password": "\u30d1\u30b9\u30ef\u30fc\u30c9",
"port": "\u30dd\u30fc\u30c8",
"ssl": "SSL\u8a3c\u660e\u66f8\u3092\u4f7f\u7528\u3059\u308b",
"username": "\u30e6\u30fc\u30b6\u30fc\u540d",
"verify_ssl": "SSL\u8a3c\u660e\u66f8\u3092\u78ba\u8a8d\u3059\u308b"
},
"description": "\u76e3\u8996\u3068\u5236\u5fa1\u304c\u3067\u304d\u308b\u3088\u3046\u306b\u3001AdGuardHome\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u306e\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3092\u3057\u307e\u3059\u3002"
}
}
}
}

View File

@@ -1,16 +1,27 @@
{
"config": {
"abort": {
"already_configured": "Hizmet zaten yap\u0131land\u0131r\u0131lm\u0131\u015f",
"existing_instance_updated": "Mevcut yap\u0131land\u0131rma g\u00fcncellendi."
},
"error": {
"cannot_connect": "Ba\u011flanma hatas\u0131"
},
"step": {
"hassio_confirm": {
"description": "{addon} taraf\u0131ndan sa\u011flanan AdGuard Home'a ba\u011flanmak i\u00e7in Home Assistant'\u0131 yap\u0131land\u0131rmak istiyor musunuz?",
"title": "Home Assistant eklentisi arac\u0131l\u0131\u011f\u0131yla AdGuard Home"
},
"user": {
"data": {
"host": "Ana Bilgisayar",
"host": "Ana bilgisayar",
"password": "Parola",
"port": "Port",
"username": "Kullan\u0131c\u0131 Ad\u0131"
}
"ssl": "SSL sertifikas\u0131 kullan\u0131r",
"username": "Kullan\u0131c\u0131 Ad\u0131",
"verify_ssl": "SSL sertifikas\u0131n\u0131 do\u011frulay\u0131n"
},
"description": "AdGuard Home \u00f6rne\u011finizi, izleme ve kontrole izin verecek \u015fekilde ayarlay\u0131n."
}
}
}

View File

@@ -307,7 +307,7 @@ class AdsEntity(Entity):
self._ads_hub.add_device_notification, ads_var, plctype, update
)
try:
with async_timeout.timeout(10):
async with async_timeout.timeout(10):
await self._event.wait()
except asyncio.TimeoutError:
_LOGGER.debug("Variable %s: Timeout during first update", ads_var)

View File

@@ -5,14 +5,21 @@ import logging
from advantage_air import ApiError, advantage_air
from homeassistant.const import CONF_IP_ADDRESS, CONF_PORT
from homeassistant.const import CONF_IP_ADDRESS, CONF_PORT, Platform
from homeassistant.helpers.aiohttp_client import async_get_clientsession
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
from .const import ADVANTAGE_AIR_RETRY, DOMAIN
ADVANTAGE_AIR_SYNC_INTERVAL = 15
PLATFORMS = ["climate", "cover", "binary_sensor", "sensor", "switch"]
PLATFORMS = [
Platform.BINARY_SENSOR,
Platform.CLIMATE,
Platform.COVER,
Platform.SELECT,
Platform.SENSOR,
Platform.SWITCH,
]
_LOGGER = logging.getLogger(__name__)

View File

@@ -5,6 +5,7 @@ from homeassistant.components.binary_sensor import (
DEVICE_CLASS_PROBLEM,
BinarySensorEntity,
)
from homeassistant.const import ENTITY_CATEGORY_DIAGNOSTIC
from .const import DOMAIN as ADVANTAGE_AIR_DOMAIN
from .entity import AdvantageAirEntity
@@ -34,6 +35,7 @@ class AdvantageAirZoneFilter(AdvantageAirEntity, BinarySensorEntity):
"""Advantage Air Filter."""
_attr_device_class = DEVICE_CLASS_PROBLEM
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key):
"""Initialize an Advantage Air Filter."""
@@ -65,13 +67,14 @@ class AdvantageAirZoneMotion(AdvantageAirEntity, BinarySensorEntity):
@property
def is_on(self):
"""Return if motion is detect."""
return self._zone["motion"]
return self._zone["motion"] == 20
class AdvantageAirZoneMyZone(AdvantageAirEntity, BinarySensorEntity):
"""Advantage Air Zone MyZone."""
_attr_entity_registry_enabled_default = False
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key, zone_key):
"""Initialize an Advantage Air Zone MyZone."""

View File

@@ -10,6 +10,7 @@ from homeassistant.components.climate.const import (
HVAC_MODE_DRY,
HVAC_MODE_FAN_ONLY,
HVAC_MODE_HEAT,
HVAC_MODE_HEAT_COOL,
HVAC_MODE_OFF,
SUPPORT_FAN_MODE,
SUPPORT_TARGET_TEMPERATURE,
@@ -53,7 +54,7 @@ HASS_FAN_MODES = {v: k for k, v in ADVANTAGE_AIR_FAN_MODES.items()}
FAN_SPEEDS = {FAN_LOW: 30, FAN_MEDIUM: 60, FAN_HIGH: 100}
ADVANTAGE_AIR_SERVICE_SET_MYZONE = "set_myzone"
ZONE_HVAC_MODES = [HVAC_MODE_OFF, HVAC_MODE_FAN_ONLY]
ZONE_HVAC_MODES = [HVAC_MODE_OFF, HVAC_MODE_HEAT_COOL]
PARALLEL_UPDATES = 0
@@ -169,7 +170,7 @@ class AdvantageAirZone(AdvantageAirClimateEntity):
def hvac_mode(self):
"""Return the current state as HVAC mode."""
if self._zone["state"] == ADVANTAGE_AIR_STATE_OPEN:
return HVAC_MODE_FAN_ONLY
return HVAC_MODE_HEAT_COOL
return HVAC_MODE_OFF
@property

View File

@@ -1,5 +1,6 @@
"""Advantage Air parent entity class."""
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from .const import DOMAIN
@@ -14,13 +15,13 @@ class AdvantageAirEntity(CoordinatorEntity):
self.async_change = instance["async_change"]
self.ac_key = ac_key
self.zone_key = zone_key
self._attr_device_info = {
"identifiers": {(DOMAIN, self.coordinator.data["system"]["rid"])},
"name": self.coordinator.data["system"]["name"],
"manufacturer": "Advantage Air",
"model": self.coordinator.data["system"]["sysType"],
"sw_version": self.coordinator.data["system"]["myAppRev"],
}
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, self.coordinator.data["system"]["rid"])},
manufacturer="Advantage Air",
model=self.coordinator.data["system"]["sysType"],
name=self.coordinator.data["system"]["name"],
sw_version=self.coordinator.data["system"]["myAppRev"],
)
@property
def _ac(self):

View File

@@ -0,0 +1,53 @@
"""Select platform for Advantage Air integration."""
from homeassistant.components.select import SelectEntity
from .const import DOMAIN as ADVANTAGE_AIR_DOMAIN
from .entity import AdvantageAirEntity
ADVANTAGE_AIR_INACTIVE = "Inactive"
async def async_setup_entry(hass, config_entry, async_add_entities):
"""Set up AdvantageAir toggle platform."""
instance = hass.data[ADVANTAGE_AIR_DOMAIN][config_entry.entry_id]
entities = []
for ac_key in instance["coordinator"].data["aircons"]:
entities.append(AdvantageAirMyZone(instance, ac_key))
async_add_entities(entities)
class AdvantageAirMyZone(AdvantageAirEntity, SelectEntity):
"""Representation of Advantage Air MyZone control."""
_attr_icon = "mdi:home-thermometer"
_attr_options = [ADVANTAGE_AIR_INACTIVE]
_number_to_name = {0: ADVANTAGE_AIR_INACTIVE}
_name_to_number = {ADVANTAGE_AIR_INACTIVE: 0}
def __init__(self, instance, ac_key):
"""Initialize an Advantage Air MyZone control."""
super().__init__(instance, ac_key)
self._attr_name = f'{self._ac["name"]} MyZone'
self._attr_unique_id = (
f'{self.coordinator.data["system"]["rid"]}-{ac_key}-myzone'
)
for zone in instance["coordinator"].data["aircons"][ac_key]["zones"].values():
if zone["type"] > 0:
self._name_to_number[zone["name"]] = zone["number"]
self._number_to_name[zone["number"]] = zone["name"]
self._attr_options.append(zone["name"])
@property
def current_option(self):
"""Return the fresh air status."""
return self._number_to_name[self._ac["myZone"]]
async def async_select_option(self, option):
"""Set the MyZone."""
await self.async_change(
{self.ac_key: {"info": {"myZone": self._name_to_number[option]}}}
)

View File

@@ -3,10 +3,10 @@ import voluptuous as vol
from homeassistant.components.sensor import (
DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT,
SensorEntity,
SensorStateClass,
)
from homeassistant.const import PERCENTAGE, TEMP_CELSIUS
from homeassistant.const import ENTITY_CATEGORY_DIAGNOSTIC, PERCENTAGE, TEMP_CELSIUS
from homeassistant.helpers import config_validation as cv, entity_platform
from .const import ADVANTAGE_AIR_STATE_OPEN, DOMAIN as ADVANTAGE_AIR_DOMAIN
@@ -50,6 +50,7 @@ class AdvantageAirTimeTo(AdvantageAirEntity, SensorEntity):
"""Representation of Advantage Air timer control."""
_attr_native_unit_of_measurement = ADVANTAGE_AIR_SET_COUNTDOWN_UNIT
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key, action):
"""Initialize the Advantage Air timer control."""
@@ -83,7 +84,8 @@ class AdvantageAirZoneVent(AdvantageAirEntity, SensorEntity):
"""Representation of Advantage Air Zone Vent Sensor."""
_attr_native_unit_of_measurement = PERCENTAGE
_attr_state_class = STATE_CLASS_MEASUREMENT
_attr_state_class = SensorStateClass.MEASUREMENT
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key, zone_key):
"""Initialize an Advantage Air Zone Vent Sensor."""
@@ -112,7 +114,8 @@ class AdvantageAirZoneSignal(AdvantageAirEntity, SensorEntity):
"""Representation of Advantage Air Zone wireless signal sensor."""
_attr_native_unit_of_measurement = PERCENTAGE
_attr_state_class = STATE_CLASS_MEASUREMENT
_attr_state_class = SensorStateClass.MEASUREMENT
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key, zone_key):
"""Initialize an Advantage Air Zone wireless signal sensor."""
@@ -146,8 +149,9 @@ class AdvantageAirZoneTemp(AdvantageAirEntity, SensorEntity):
_attr_native_unit_of_measurement = TEMP_CELSIUS
_attr_device_class = DEVICE_CLASS_TEMPERATURE
_attr_state_class = STATE_CLASS_MEASUREMENT
_attr_state_class = SensorStateClass.MEASUREMENT
_attr_entity_registry_enabled_default = False
_attr_entity_category = ENTITY_CATEGORY_DIAGNOSTIC
def __init__(self, instance, ac_key, zone_key):
"""Initialize an Advantage Air Zone Temp Sensor."""

View File

@@ -0,0 +1,18 @@
{
"config": {
"abort": {
"already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e"
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"
},
"step": {
"user": {
"data": {
"ip_address": "IP \u0430\u0434\u0440\u0435\u0441",
"port": "\u041f\u043e\u0440\u0442"
}
}
}
}
}

View File

@@ -0,0 +1,20 @@
{
"config": {
"abort": {
"already_configured": "\u30c7\u30d0\u30a4\u30b9\u306f\u3059\u3067\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059"
},
"error": {
"cannot_connect": "\u63a5\u7d9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f"
},
"step": {
"user": {
"data": {
"ip_address": "IP\u30a2\u30c9\u30ec\u30b9",
"port": "\u30dd\u30fc\u30c8"
},
"description": "Advantage Air wall mounted tablet\u306eAPI\u306b\u63a5\u7d9a\u3057\u307e\u3059\u3002",
"title": "\u63a5\u7d9a"
}
}
}
}

View File

@@ -9,9 +9,10 @@
"step": {
"user": {
"data": {
"ip_address": "\u0130p Adresi",
"ip_address": "IP Adresi",
"port": "Port"
},
"description": "Advantage Air duvara monte tabletinizin API'sine ba\u011flan\u0131n.",
"title": "Ba\u011flan"
}
}

View File

@@ -52,7 +52,7 @@ async def async_update_options(hass: HomeAssistant, entry: ConfigEntry) -> None:
await hass.config_entries.async_reload(entry.entry_id)
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry):
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Unload a config entry."""
unload_ok = await hass.config_entries.async_unload_platforms(entry, PLATFORMS)

View File

@@ -1,7 +1,7 @@
"""Constant values for the AEMET OpenData component."""
from __future__ import annotations
from homeassistant.components.sensor import SensorEntityDescription
from homeassistant.components.sensor import SensorEntityDescription, SensorStateClass
from homeassistant.components.weather import (
ATTR_CONDITION_CLEAR_NIGHT,
ATTR_CONDITION_CLOUDY,
@@ -33,11 +33,12 @@ from homeassistant.const import (
PRESSURE_HPA,
SPEED_KILOMETERS_PER_HOUR,
TEMP_CELSIUS,
Platform,
)
ATTRIBUTION = "Powered by AEMET OpenData"
CONF_STATION_UPDATES = "station_updates"
PLATFORMS = ["sensor", "weather"]
PLATFORMS = [Platform.SENSOR, Platform.WEATHER]
DEFAULT_NAME = "AEMET"
DOMAIN = "aemet"
ENTRY_NAME = "name"
@@ -252,12 +253,14 @@ WEATHER_SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
name="Humidity",
native_unit_of_measurement=PERCENTAGE,
device_class=DEVICE_CLASS_HUMIDITY,
state_class=SensorStateClass.MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_PRESSURE,
name="Pressure",
native_unit_of_measurement=PRESSURE_HPA,
device_class=DEVICE_CLASS_PRESSURE,
state_class=SensorStateClass.MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_RAIN,
@@ -268,6 +271,7 @@ WEATHER_SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
key=ATTR_API_RAIN_PROB,
name="Rain probability",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_SNOW,
@@ -278,6 +282,7 @@ WEATHER_SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
key=ATTR_API_SNOW_PROB,
name="Snow probability",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_STATION_ID,
@@ -296,18 +301,21 @@ WEATHER_SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
key=ATTR_API_STORM_PROB,
name="Storm probability",
native_unit_of_measurement=PERCENTAGE,
state_class=SensorStateClass.MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_TEMPERATURE,
name="Temperature",
native_unit_of_measurement=TEMP_CELSIUS,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_TEMPERATURE_FEELING,
name="Temperature feeling",
native_unit_of_measurement=TEMP_CELSIUS,
device_class=DEVICE_CLASS_TEMPERATURE,
state_class=SensorStateClass.MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_TOWN_ID,
@@ -326,6 +334,7 @@ WEATHER_SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
key=ATTR_API_WIND_BEARING,
name="Wind bearing",
native_unit_of_measurement=DEGREE,
state_class=SensorStateClass.MEASUREMENT,
),
SensorEntityDescription(
key=ATTR_API_WIND_MAX_SPEED,
@@ -336,6 +345,7 @@ WEATHER_SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
key=ATTR_API_WIND_SPEED,
name="Wind speed",
native_unit_of_measurement=SPEED_KILOMETERS_PER_HOUR,
state_class=SensorStateClass.MEASUREMENT,
),
)

View File

@@ -0,0 +1,14 @@
{
"config": {
"error": {
"invalid_api_key": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u0435\u043d API \u043a\u043b\u044e\u0447"
},
"step": {
"user": {
"data": {
"api_key": "API \u043a\u043b\u044e\u0447"
}
}
}
}
}

View File

@@ -0,0 +1,31 @@
{
"config": {
"abort": {
"already_configured": "\u30ed\u30b1\u30fc\u30b7\u30e7\u30f3\u306f\u3059\u3067\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059"
},
"error": {
"invalid_api_key": "\u7121\u52b9\u306aAPI\u30ad\u30fc"
},
"step": {
"user": {
"data": {
"api_key": "API\u30ad\u30fc",
"latitude": "\u7def\u5ea6",
"longitude": "\u7d4c\u5ea6",
"name": "\u30a4\u30f3\u30c6\u30b0\u30ec\u30fc\u30b7\u30e7\u30f3\u306e\u540d\u524d"
},
"description": "AEMET OpenData\u30a4\u30f3\u30c6\u30b0\u30ec\u30fc\u30b7\u30e7\u30f3\u3092\u30bb\u30c3\u30c8\u30a2\u30c3\u30d7\u3057\u307e\u3059\u3002 API\u30ad\u30fc\u3092\u751f\u6210\u3059\u308b\u306b\u306f\u3001https://opendata.aemet.es/centrodedescargas/altaUsuario \u306b\u30a2\u30af\u30bb\u30b9\u3057\u3066\u304f\u3060\u3055\u3044",
"title": "AEMET OpenData"
}
}
},
"options": {
"step": {
"init": {
"data": {
"station_updates": "AEMET weather station\u304b\u3089\u30c7\u30fc\u30bf\u3092\u53ce\u96c6\u3059\u308b"
}
}
}
}
}

View File

@@ -14,7 +14,7 @@
"longitude": "\u0414\u043e\u043b\u0433\u043e\u0442\u0430",
"name": "\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435"
},
"description": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u0442\u0435 Home Assistant \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 AEMET OpenData. \u0427\u0442\u043e\u0431\u044b \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043b\u044e\u0447 API, \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 https://opendata.aemet.es/centrodedescargas/altaUsuario.",
"description": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 Home Assistant \u0434\u043b\u044f \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0441 AEMET OpenData. \u0427\u0442\u043e\u0431\u044b \u0441\u0433\u0435\u043d\u0435\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043b\u044e\u0447 API, \u043f\u0435\u0440\u0435\u0439\u0434\u0438\u0442\u0435 \u043d\u0430 https://opendata.aemet.es/centrodedescargas/altaUsuario.",
"title": "AEMET OpenData"
}
}

View File

@@ -0,0 +1,31 @@
{
"config": {
"abort": {
"already_configured": "Konum zaten yap\u0131land\u0131r\u0131lm\u0131\u015f"
},
"error": {
"invalid_api_key": "Ge\u00e7ersiz API anahtar\u0131"
},
"step": {
"user": {
"data": {
"api_key": "API Anahtar\u0131",
"latitude": "Enlem",
"longitude": "Boylam",
"name": "Entegrasyonun ad\u0131"
},
"description": "AEMET OpenData entegrasyonunu ayarlay\u0131n. API anahtar\u0131 olu\u015fturmak i\u00e7in https://opendata.aemet.es/centrodedescargas/altaUsuario adresine gidin.",
"title": "AEMET OpenData"
}
}
},
"options": {
"step": {
"init": {
"data": {
"station_updates": "AEMET hava istasyonlar\u0131ndan veri toplay\u0131n"
}
}
}
}
}

View File

@@ -140,7 +140,7 @@ class WeatherUpdateCoordinator(DataUpdateCoordinator):
async def _async_update_data(self):
data = {}
with async_timeout.timeout(120):
async with async_timeout.timeout(120):
weather_response = await self._get_aemet_weather()
data = self._convert_weather_response(weather_response)
return data
@@ -398,8 +398,7 @@ class WeatherUpdateCoordinator(DataUpdateCoordinator):
return None
def _convert_forecast_day(self, date, day):
condition = self._get_condition_day(day)
if not condition:
if not (condition := self._get_condition_day(day)):
return None
return {
@@ -415,8 +414,7 @@ class WeatherUpdateCoordinator(DataUpdateCoordinator):
}
def _convert_forecast_hour(self, date, day, hour):
condition = self._get_condition(day, hour)
if not condition:
if not (condition := self._get_condition(day, hour)):
return None
forecast_dt = date.replace(hour=hour, minute=0, second=0)
@@ -435,13 +433,8 @@ class WeatherUpdateCoordinator(DataUpdateCoordinator):
def _calc_precipitation(self, day, hour):
"""Calculate the precipitation."""
rain_value = self._get_rain(day, hour)
if not rain_value:
rain_value = 0
snow_value = self._get_snow(day, hour)
if not snow_value:
snow_value = 0
rain_value = self._get_rain(day, hour) or 0
snow_value = self._get_snow(day, hour) or 0
if round(rain_value + snow_value, 1) == 0:
return None
@@ -449,13 +442,8 @@ class WeatherUpdateCoordinator(DataUpdateCoordinator):
def _calc_precipitation_prob(self, day, hour):
"""Calculate the precipitation probability (hour)."""
rain_value = self._get_rain_prob(day, hour)
if not rain_value:
rain_value = 0
snow_value = self._get_snow_prob(day, hour)
if not snow_value:
snow_value = 0
rain_value = self._get_rain_prob(day, hour) or 0
snow_value = self._get_snow_prob(day, hour) or 0
if rain_value == 0 and snow_value == 0:
return None

View File

@@ -1,6 +1,7 @@
"""Support for non-delivered packages recorded in AfterShip."""
from __future__ import annotations
from http import HTTPStatus
import logging
from typing import Any, Final
@@ -11,7 +12,7 @@ from homeassistant.components.sensor import (
PLATFORM_SCHEMA as BASE_PLATFORM_SCHEMA,
SensorEntity,
)
from homeassistant.const import ATTR_ATTRIBUTION, CONF_API_KEY, CONF_NAME, HTTP_OK
from homeassistant.const import CONF_API_KEY, CONF_NAME
from homeassistant.core import HomeAssistant
from homeassistant.helpers.aiohttp_client import async_get_clientsession
import homeassistant.helpers.config_validation as cv
@@ -64,7 +65,7 @@ async def async_setup_platform(
await aftership.get_trackings()
if not aftership.meta or aftership.meta["code"] != HTTP_OK:
if not aftership.meta or aftership.meta["code"] != HTTPStatus.OK:
_LOGGER.error(
"No tracking data found. Check API key is correct: %s", aftership.meta
)
@@ -109,6 +110,7 @@ async def async_setup_platform(
class AfterShipSensor(SensorEntity):
"""Representation of a AfterShip sensor."""
_attr_attribution = ATTRIBUTION
_attr_native_unit_of_measurement: str = "packages"
_attr_icon: str = ICON
@@ -150,7 +152,7 @@ class AfterShipSensor(SensorEntity):
if not self.aftership.meta:
_LOGGER.error("Unknown errors when querying")
return
if self.aftership.meta["code"] != HTTP_OK:
if self.aftership.meta["code"] != HTTPStatus.OK:
_LOGGER.error(
"Errors when querying AfterShip. %s", str(self.aftership.meta)
)
@@ -191,7 +193,6 @@ class AfterShipSensor(SensorEntity):
_LOGGER.debug("Ignoring %s as it has status: %s", name, status)
self._attributes = {
ATTR_ATTRIBUTION: ATTRIBUTION,
**status_counts,
ATTR_TRACKINGS: trackings,
}

Some files were not shown because too many files have changed in this diff Show More