Commit Graph
13343 Commits
Author SHA1 Message Date
MatthewFlamm e32c7dbf92 Use built in unit handling for nws weather (#73981)
use built in unit handling for nws
2022-06-27 11:39:02 +02:00
akloeckner aa314a0901 Add this variable to trigger-based templates (#72437)
add this variables to trigger-based templates

follow-up for https://github.com/home-assistant/core/issues/70359
2022-06-27 08:59:29 +02:00
J. Nick Koston 6ec6f0a835 Fix file sensor reading the whole file to get the last line (#73986) 2022-06-25 21:02:50 -05:00
KholeandMartin Hjelmare ce144bf631 Add Hive device configuration to config flow (#73955)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-06-26 00:13:30 +02:00
J. Nick Koston 949922ef2c Fix exception when as_dict is called on a TemplateState (#73984) 2022-06-25 09:19:11 -07:00
J. Nick KostonandPaulus Schoutsen 15ed329108 Add async_remove_config_entry_device support to nexia (#73966)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-06-25 12:02:38 -04:00
Christopher BaileyandJ. Nick Koston e67f8720e8 Refactor UniFi Protect tests (#73971)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-06-25 08:15:38 -07:00
J. Nick KostonandPaulus Schoutsen 32e0d9f47c Speed up generation of template states (#73728)
* Speed up generation of template states

* tweak

* cache

* cache hash

* weaken

* Revert "weaken"

This reverts commit 4856f500807c21aa1c9333d44fd53555bae7bb82.

* lower cache size as it tends to be the same ones over and over

* lower cache size as it tends to be the same ones over and over

* lower cache size as it tends to be the same ones over and over

* cover

* Update homeassistant/helpers/template.py

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

* id reuse is possible

* account for iterting all sensors

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-06-24 17:28:26 -04:00
Paulus Schoutsen 57efa9569c Cache is_supported for Google entities (#73936) 2022-06-24 17:05:36 -04:00
J. Nick Koston 1866a1e925 Handle non-str keys when storing json data (#73958) 2022-06-24 09:59:01 -05:00
J. Nick Koston f29cc33fa0 Fix selecting entity_ids and device_ids in events with MySQL and PostgreSQL with logbook (#73918)
* Fix selecting entity_ids and device_ids in events with MySQL and PostgreSQL

Fixes #73818

* add cover
2022-06-24 15:43:35 +02:00
J. Nick Koston 2f78faa718 Make aiohttp mockers aware of the json loads kwarg (#73939) 2022-06-24 08:44:35 +02:00
Rami MoslehandMartin Hjelmare d1708861db Add config flow for simplepush (#73471)
* Add config flow for `simplepush`

* fix warning message

* fix typos

* Add importing yaml config

* patch integration setup

* Add check for errrors raised by the library

* fix coverage

* Adjust comment and logging message

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-06-24 08:39:48 +02:00
Raman Gupta 768e53ac2d Add zwave_js/get_any_firmware_update_progress WS cmd (#73905) 2022-06-23 20:13:37 -04:00
0bmay 3058a432a5 Bump py-canary to 0.5.3 (#73922) 2022-06-23 23:33:03 +02:00
Erik Montnemery 9b8c3e37bb Improve group tests (#73630) 2022-06-23 21:38:17 +02:00
J. Nick Koston 00a79635c1 Revert "Remove sqlalchemy lambda_stmt usage from history, logbook, and statistics (#73191)" (#73917) 2022-06-23 13:59:55 -05:00
J. Nick Koston fd9fdc6283 Fix error reporting with unserializable json (#73908) 2022-06-23 20:32:45 +02:00
J. Nick Koston edb386c736 Switch frontend to use json helper (#73874) 2022-06-23 20:19:13 +02:00
J. Nick Koston 2742bf86e3 Switch mqtt to use json helper (#73871)
* Switch mqtt to use json helper

* whitespace
2022-06-23 14:29:09 +02:00
Paulus Schoutsen 10b083bbf5 Sync empty entities when Google is disabled in cloud (#72806) 2022-06-23 11:41:34 +02:00
Rami Mosleh 0dd181f922 Remove deprecated YAML for Islamic prayer times (#72483) 2022-06-23 11:35:47 +02:00
epenet f91a222034 Fix compensation (numpy) tests (#73890) 2022-06-23 11:12:22 +02:00
G JohanssonandErik 90e1fb6ce2 Weather unit conversion (#73441)
Co-authored-by: Erik <erik@montnemery.com>
2022-06-23 10:48:30 +02:00
Christian Rodriguez 3ce5b05aa5 Add bypassed custom attribute to NX584ZoneSensor (#71767) 2022-06-23 01:59:59 +02:00
Robert Svensson aef69f87f4 More enums in deCONZ Alarm Control Panel (#73800) 2022-06-22 23:02:34 +02:00
Christopher Bailey 01a9367281 UniFi Protect cleanup and enable unadopted devices (#73860) 2022-06-22 15:57:21 -05:00
Robert Hillis 5c5fd746fd Add digital loggers as a Belkin supported brand (#72515) 2022-06-22 22:38:45 +02:00
Franck Nijhof a8a033681f Automatically onboard DiscoveryFlows (#73841) 2022-06-22 22:37:49 +02:00
Franck Nijhof ec119ae718 Automatically onboard WLED (#73853) 2022-06-22 22:37:36 +02:00
Franck Nijhof 320ef55085 Automatically onboard Elgato (#73847) 2022-06-22 22:37:25 +02:00
J. Nick Koston 8b067e83f7 Initial orjson support take 3 (#73849)
* Initial orjson support take 2

Still need to work out problem building wheels

--

Redux of #72754 / #32153 Now possible since the following is solved:
ijl/orjson#220 (comment)

This implements orjson where we use our default encoder.  This does not implement orjson where `ExtendedJSONEncoder` is used as these areas tend to be called far less frequently.  If its desired, this could be done in a followup, but it seemed like a case of diminishing returns (except maybe for large diagnostics files, or traces, but those are not expected to be downloaded frequently).

Areas where this makes a perceptible difference:
- Anything that subscribes to entities (Initial subscribe_entities payload)
- Initial download of registries on first connection / restore
- History queries
- Saving states to the database
- Large logbook queries
- Anything that subscribes to events (appdaemon)

Cavets:
orjson supports serializing dataclasses natively (and much faster) which
eliminates the need to implement `as_dict` in many places
when the data is already in a dataclass. This works
well as long as all the data in the dataclass can also
be serialized. I audited all places where we have an `as_dict`
for a dataclass and found only backups needs to be adjusted (support for `Path` needed to be added for backups).  I was a little bit worried about `SensorExtraStoredData` with `Decimal` but it all seems to work out from since it converts it before it gets to the json encoding cc @dgomes

If it turns out to be a problem we can disable this
with option |= [orjson.OPT_PASSTHROUGH_DATACLASS](https://github.com/ijl/orjson#opt_passthrough_dataclass) and it
will fallback to `as_dict`

Its quite impressive for history queries
<img width="1271" alt="Screen_Shot_2022-05-30_at_23_46_30" src="https://user-images.githubusercontent.com/663432/171145699-661ad9db-d91d-4b2d-9c1a-9d7866c03a73.png">

* use for views as well

* handle UnicodeEncodeError

* tweak

* DRY

* DRY

* not needed

* fix tests

* Update tests/components/http/test_view.py

* Update tests/components/http/test_view.py

* black

* templates
2022-06-22 21:59:51 +02:00
Franck Nijhof 1ead6d6762 Automatically onboard Yeelight (#73854) 2022-06-22 21:19:34 +02:00
Franck Nijhof 9229d14962 Automatically onboard Wiz (#73851) 2022-06-22 20:17:28 +02:00
G Johansson 532e25d087 Sensibo use switch for Pure boost (#73833)
* Initial commit

* Finalize pure boost switch

* Fix service required
2022-06-22 18:26:25 +02:00
jjlawren 86fde1a644 Handle failures during initial Sonos subscription (#73456) 2022-06-22 10:56:17 -05:00
Christopher Bailey 0461ec1566 Fix auth_sign_path with query params (take 2) (#73829) 2022-06-22 10:09:21 -05:00
19b2b33037 Speed up subscribing to mqtt topics on connect (#73685)
* Speed up subscribing to mqtt topics

* update tests

* Remove extra function wrapper

* Recover debug logging for subscriptions

* Small changes and test

* Update homeassistant/components/mqtt/client.py

* Update client.py

Co-authored-by: jbouwh <jan@jbsoft.nl>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-06-22 16:03:18 +02:00
rikroeandrikroe 54591b8ca1 BMW Connected Drive: Handle HTTP 429 issues better (#73675)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2022-06-22 14:24:16 +02:00
epenet 31af4b709e Add FanEntity type hint checks to pylint plugin (#73801)
* Add FanEntity type hint checks to pylint plugin

* Add test

* Add test

* Review comments

* Adjust tests

* Rename variable

* also test keyword_only args

* Use docstrings

* Fix tests

* Better return type
2022-06-22 12:48:23 +02:00
95eb55dd66 Fix thumbnail issues in Twitch integration (#72564)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-06-22 10:22:09 +02:00
Tom Harris 08b69319ca Insteon bug fixes (#73791) 2022-06-22 10:04:11 +02:00
Franck Nijhof 39a00ffe09 Automatically onboard Cast (#73813) 2022-06-22 09:49:54 +02:00
jjlawren 07a46dee39 Additional surround controls for Sonos (#73805) 2022-06-22 09:08:31 +02:00
J. Nick Koston 1e0a3246f4 Revert "Fix auth_sign_path with query params (#73240)" (#73808) 2022-06-21 22:45:16 -05:00
Erik Montnemery 274f585646 Tweak title of zha config entry created by yellow hw (#73797) 2022-06-21 16:21:31 -04:00
Christopher BaileyandJ. Nick Koston 67618311fa Fix auth_sign_path with query params (#73240)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-06-21 14:21:47 -05:00
J. Nick Koston adf0f62963 Add websocket api to fetch config entries (#73570)
* Add websocket api to fetch config entries

* add coverage for failure case
2022-06-21 20:09:22 +02:00
Christopher Bailey 9940a85e28 Add sensors for read-only devices for UniFi Protect (#73768) 2022-06-21 12:01:06 -05:00
epenet 9fd48da132 Add lock checks to pylint type-hint plugin (#73521)
* Add ability to check kwargs type annotation

* Add checks for lock

* Add tests

* Fix components

* Fix spelling

* Revert "Fix components"

This reverts commit 121ff6dc511d28c17b4fc13185155a2402193405.

* Adjust comment

* Add comments to TypeHintMatch
2022-06-21 18:53:31 +02:00