Commit graph

26870 commits

Author SHA1 Message Date
Felipe Martins Diel
2b38df2766
Allow underscores in broadlink hostnames (#35791)
* Allow underscores in hostnames

* Ignore case
2020-05-19 13:46:12 +02:00
Ron Klinkien
12ec476821
Update to garminconnect 0.1.13 (#35750)
* Update to garminconnect 0.1.13

This will fix body composition sensors being unavailable

* Update requirements_all to garminconnect 0.1.13

* Update requirements_test_all.txt
2020-05-19 07:40:31 -04:00
Alexei Chetroi
188255bd81
Bump up ZHA dependencies. (#35797) 2020-05-19 06:50:05 -04:00
Anders Melchiorsen
d6a5cb6083
Upgrade pysonos to 0.0.30 (#35793) 2020-05-19 08:58:51 +02:00
J. Nick Koston
ebed1de581
Avoid creating multiple sqlalchemy sessions in a single history call (#35721)
* Avoid a context switch in the history api

The history api was creating a job to fetch the
states and another job to convert the states to
json. This can be done in a single job which
decreases the overhead of the operation.

* Ensure there is only one sqlalchemy session created per history
query.

Most queries created three sqlalchemy sessions which was
especially slow with sqlite since it opens and closes the
database.

In testing the UI is noticeably faster at generating history
graphs for entites.

* Add additional coverage

* pass hass first to _states_to_json and _get_significant_states
2020-05-19 07:52:38 +02:00
Jason Hunter
aeae4edb74
Fix ONVIF subscription renewal (#35792)
* fix subscription renewal

* catch ValueError for #35762
2020-05-18 23:02:23 -04:00
HomeAssistant Azure
ef6b1f9302 [ci skip] Translation update 2020-05-19 00:04:18 +00:00
gadgetmobile
93fddbed2b
Fix review requests for BleBox support from #35370 (#35786)
* fix review requests from #35370

* fix pylint W0621 (redefined-outer-name)
2020-05-18 22:30:15 +02:00
uvjustin
8258fa515d
Skip forked_daapd ignored entries with empty entry.data (#35772) 2020-05-18 21:40:39 +02:00
Bram Kragten
a8fb627abc
Updated frontend to 20200518.0 (#35785) 2020-05-18 21:38:25 +02:00
Aaron Bach
b464d276e2
Add support for templates in Slack blocks (#34704) 2020-05-18 12:00:23 -06:00
J. Nick Koston
6885d72180
Avoid a context switch in the history api (#35716)
* Avoid a context switch in the history api

The history api was creating a job to fetch the
states and another job to convert the states to
json. This can be done in a single job which
decreases the overhead of the operation.

* Revert to original solution to avoid function redefine each call
2020-05-18 11:57:16 -05:00
MatsNl
aec68a9c2d
Bump Atag dependency to 0.3.1.2 (#35776) 2020-05-18 18:12:00 +02:00
Fredrik Erlandsson
d0e8880e48
Fix daikin discovery flow (#35767) 2020-05-18 16:57:52 +02:00
J. Nick Koston
50105eed74
Handle UPS disconnects in NUT (#35758) 2020-05-18 16:23:05 +02:00
Daniel Høyer Iversen
affd11b372
Update mill manifest to reflect config flow (#35748) 2020-05-18 11:00:44 +02:00
Anders Melchiorsen
796e6141ac
Handle Sonos changing IP address (#35639) 2020-05-17 20:20:10 -05:00
Josef Schlehofer
52a7a7175b
Upgrade sqlalchemy to 1.3.17 (#35745) 2020-05-17 20:07:23 -05:00
HomeAssistant Azure
2e0c0ded51 [ci skip] Translation update 2020-05-18 00:03:08 +00:00
gadgetmobile
312080de08
Cleanup BleBox platforms (#35552) 2020-05-17 18:56:49 -05:00
gadgetmobile
902eb187ef
Add Blebox lights support (#35370)
* add BleBox lights support

* cherry pick refactoring from #35552

* Inherit from LightEntity instead of Light

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

* import LightEntity instead of Light

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-05-17 18:54:32 -05:00
Andrew Fahrenholtz
a03cb93f87
Add ARWN rain total and rain rate sensors (#35751)
* add rain total and rain rate sensors

* linting

* linting
2020-05-17 23:17:08 +02:00
J. Nick Koston
03b14c9aae
Add sw_version and connections to sonos devices (#35743) 2020-05-17 16:16:50 -05:00
J. Nick Koston
f085fb1499
Set lifx device sw_version (#35739)
This change solves an issue where homekit would
think the firmware was out of date on the bulb
because no version was set.
2020-05-17 16:16:09 -05:00
tetienne
3815d7d74f
Add Somfy hub as device (#35209) 2020-05-17 16:14:11 -05:00
J. Nick Koston
8eb7777561
Ensure homekit version strings conform to spec (#35741)
HomeKit requires all version strings to be in the
format MAJOR.MINOR.REVISION
2020-05-17 15:51:51 -05:00
Adam Belebczuk
5104b79b4b
Bump PyWeMo version to 0.4.43 (#35693)
* PyWeMo version bump to 0.4.43

Changes necessary to safely upgrade to pyWeMo 0.4.43. This includes catching ActionExceptions that may be thrown by pyWeMo when it is unable to interact with a physical device.

* Black formatting fix

* Fix isort issues

* Code review changes

* More code review fixes

* Linting fix

* Undo dict.get change

* Change a couple instances of dict[key] to dict.get
2020-05-17 22:13:38 +02:00
springstan
b42a197293
Add and use ELECTRICAL_CURRENT_AMPERE, ELECTRICAL_VOLTAGE_AMPERE constants (#33990)
* Add and use ELECTRICAL_CURRENT_AMPERE constant

* Add and use ELECTRICAL_VOLTAGE_AMPERE constant

* Rename ELECTRICAL_VOLTAGE_AMPERE to ELECTRICAL_VOLT_AMPERE

* Fix imports
2020-05-17 15:58:31 +02:00
Tom Harris
dbd821a564
Change Insteon backend module to pyinsteon from insteonplm (#35198)
* Migrate to pyinsteon from insteonplm

* Rename devices entities

* Print ALDB even if not loaded

* Add relay to name map

* Change insteonplm to pyinsteon

* Update requirements_all correctly

* Code review updates

* async_set_speed receive std speed value

* default speed to std medium value

* Call async methods for fan on/off

* Comment await required in loop

* Remove emtpy and add codeowner

* Make services async and remove async_add_job call

* Remove extra logging

* New device as async task and aldb load in loop

* Place lock in context bloxk

* Limiting lock to min

* Remove .env file
2020-05-17 15:27:38 +02:00
uvjustin
47801e7350
Abort forked-daapd zeroconf flow if version < 27 (#35709)
* Change MediaPlayerDevice to MediaPlayerEntity

* Abort zeroconf if mtd-version < 27.0
2020-05-17 09:23:44 -04:00
Tom Harris
71d41cbb71
Add .env file to .gitignore for vscode environment settings (#35200) 2020-05-17 15:17:05 +02:00
rhadamantys
d98bd418b1
Add restore last state for EnOcean Sensors (#34375) 2020-05-17 15:12:49 +02:00
Xiaonan Shen
06d32baea4
Fix garmin_connect test (#35724) 2020-05-17 14:48:56 +02:00
J. Nick Koston
1297a09344
Avoid locking in the logging queue handler (#35700)
* Avoid locking in the logging queue handler

We do not need a lock here as the underlying queue is already
thread safe.

* Add coverage for logging handle
2020-05-17 14:39:27 +02:00
Alan Murray
65e509ed8f
Add Acmeda integration (#33384)
* First cut of Rollease Acmeda Pulse Hub integration.

* Acmeda integration improvements:
 - Moved common code into a base entity
 - Battery level sensor added
 - Localisation now working

* Added requirement for aiopulse now that it has been uploaded to PyPI.

* Exclude acmeda integration from coverage check as it relies on a hub being present.

* Fix Travis CI build issues.

* Remove unused constants.

* Remove unused group logic from cover.py

* Removed commented code from base.py

* Remove sensors (battery entities) on removal of hub.

* Remove unused groups from sensor.py

* Acmeda device and entity update made fully asynchronous using subscriptions to remove need for config polling.

* Updated aiopulse version dependency.
Removed non-functional battery charging indication.

* Rationalised common code to update entities into helpers.py

* Fix linting issue.

* Correct additional CI pylint errors.

* Index config_entries by entry_id.
Move entity loading and unloading to __init__.py
Add entry_id to dispatcher signal
Removed now unused polling code hub
Added config_flow unit tests

* Tweak to integration config_entry title.

* Bumped aiopulse module to 0.3.2.
Reduced verbosity of aiopulse module.

* Changed to using direct write of device state.
Removed old style async_step_init config_flow step.

* Remove superfluous battery_level and device_state_attributes from battery entity.

* Removal of unused strings.
Removal of unused create_config_flow helper.
Removal of stale comment.

* Remove use of shared container to track existing enities.
Moved removal and deregistration of entities to base class through use of dispatch helper.

* Fixed strings.json

* Fix incorrect use of remove instead of pop on dict.

* Add support for tilting covers, bump aiopulse version number.

* Bump aiopulse version to v0.3.4.
Fixed bug in cover supported_features.

* Bumped aiopulse version to 0.4.0
Update acmeda .coveragerc exclusions

* Removed already configured hub check from __init__.py async_setup_entry
Removed passing in hass reference to base entity class
Renamed entity async_reset to async_will_remove_from_hass
Changed device_info and properties
Migrated to CoveEntity from CoverDevice
Added dispatched_connect cleanup on hub removal
Removed unused entries from manifest
Removed override of battery icon
Renamed translations folder

* Reversed unintended change to .coveragerc

* Fixed config flow for multi-hub discovery.

* Acmeda enhancements as requested by MartinHjelmare

* Force import to connect to hub to retrieve id prior to creating entry

* Remove YAML configuration support.

* Tidied up config_flow and tests:
 - removed unnecessary steps
 - fixed typos

* Removed storage of hub in config_flow.
2020-05-17 12:15:06 +02:00
Raman Gupta
eec1b3e7a7
Reduce Vizio API calls (#35726)
* reduce calls to API

* get apps list every time

* fix typo
2020-05-17 12:13:53 +02:00
Daniel Høyer Iversen
e2551b4e21
Upgrade opengarage lib to 0.1.4 (#35729) 2020-05-17 12:09:16 +02:00
Joakim Plate
62aa16e6e3
Support config entry unload in arcam_fmj (#35656)
* Support entry unload

* Switch to create_task and skip checking for available task
2020-05-17 12:05:21 +02:00
Joao Carreira
df830a50e7
Add support for custom media_type in mediaroom (#34625)
* Add support for custom media_type in mediaroom

* Clean logging

* Fix formatting

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-05-17 10:36:28 +02:00
Steffen Zimmermann
51eebb3906
Add config option to set timeout for wiffi devices (#35694)
* add config option to set timeout for wiffi devices

Wiffi devices allow to configure the update period (=
full_loop_minutes). The integration shall respect the configured update
period and therefore need a configuration for the timeout, too.

* Move timeout from config flow to option flow

* add test for option flow
2020-05-17 10:31:28 +02:00
Carlos Giraldo
d02bb70f0c
deCONZ - Add support for "Window covering controller" (#35294)
* Add support for "Window covering controller" 

Some window cover devices such as Sunricher SR-ZG9080A are identified in deconz as "Window covering controller".
We need to include this device type in const.py to be integrated as type "cover" in home-assistant.

* Added Window covering controller to deconz tests
2020-05-17 09:57:24 +02:00
HomeAssistant Azure
e94f44f294 [ci skip] Translation update 2020-05-17 00:02:56 +00:00
J. Nick Koston
fca96799a0
Prevent updater from delaying startup (#35708)
* Prevent updater from delaying startup

The updater sometimes times out as seen in
#33833 and the linked issues. The issue was
presenting again today as it appears the service
is overloaded again.

* s/hass.loop/asyncio/g
2020-05-16 23:34:34 +02:00
Alexei Chetroi
98523fbb61
Bump up ZHA dependencies (#35706) 2020-05-16 14:30:54 -04:00
Daniel Perna
cd68f7dc14
Update pyhomematic to 0.1.67 (#35637) 2020-05-16 17:56:26 +02:00
Robert Van Gorkom
11b786a4fc
Add config flow to gogogate2 component (#34709)
* Add config flow to gogogate2 component.

* Using a more stable gogogate api.

* Getting config flows working better by using different downstream library.

* Fixing options not getting default values.
Adding availability to cover entity.

* Simplifying return types of function.

* Address PR feedback.

* Making user config flow not abort.

* Using DataUpdateCoordinator.

* Addressing PR feedback.

* Using standard method for using hass.data

* Split auth fail test into separate tests.
2020-05-16 10:53:11 -05:00
gadgetmobile
6e0359efa6
Add Blebox air quality support (#35372)
* support BleBox air-quality

* fixed switch tests via cherry-pick from #35552

* fix test after cherry-picking

* fix flake8 issues
2020-05-16 10:51:37 -05:00
J. Nick Koston
73616520c0
Use built in queue log handlers to avoid formatting logs in the event loop (#35633)
* Use built in queue log handlers to avoid formatting logs in the event loop

Logging is now formatted and written in another thread to
ensure there is minimal impact on the event loop when
a log message is processed.

This change replaces the existing AsyncHandler log handler
as python 3.7+ now offers an off the shelf solution

* add a simple test

* s/async_migrate_log_handlers_to_queue/async_activate_log_queue_handler/g
2020-05-16 09:29:58 -05:00
Franck Nijhof
d3ae8a938c
Fix handling of additional data in core config storage (#35660) 2020-05-16 13:31:15 +02:00
Chris Talkington
aaf515ef67
Prevent discovery of IPP printers lacking identifier (#35630) 2020-05-16 10:48:36 +02:00