16446 Commits
Author SHA1 Message Date
Brandon Rothweiler 7cf5fd5952 Fix typo in OpenAI prompt (#88137) 2023-02-14 20:33:58 -05:00
J. Nick Koston 0c35c6a313 Fix enum try_parse test for python3.11 (#88131) 2023-02-14 15:29:44 -06:00
J. Nick Koston 44e8e808a1 Fix apprise tests for python 3.11 (#88126) 2023-02-14 15:25:25 -05:00
J. Nick Koston aaeb909148 Fix wemo tests with py3.11 (#88123) 2023-02-14 13:58:57 -06:00
J. Nick Koston 4d90d3cd91 Fix vera tests with python3.11 (#88124) 2023-02-14 13:58:44 -06:00
J. Nick Koston e7d5943c90 Fix zwave_me tests with python 3.11 (#88122) 2023-02-14 13:58:29 -06:00
Aaron Bach 6bb7a7225d Revert "Add a calendar entity to Ridwell (#86117)" (#88106)
This reverts commit 16a5275461.
2023-02-14 10:23:32 -07:00
J. Nick Koston f237bb14ca Add strict typing to yalexs_ble (#88086)
* Add strict typing to yalexs_ble

* Add strict typing to yalexs_ble

* Add strict typing to yalexs_ble
2023-02-14 11:38:51 -05:00
Teemu R 5335dfbc67 Prefer effect over other light settings for tplink (#85642) 2023-02-14 10:29:11 -06:00
J. Nick Koston c54500cb1f Fix invalid spec in mqtt tests for py3.11 (#88092)
Fix invalid spec in mqtt tests

unittest.mock.InvalidSpecError: Cannot spec a Mock object.
2023-02-14 11:28:46 -05:00
Aaron Bach 16a5275461 Add a calendar entity to Ridwell (#86117) 2023-02-14 06:58:41 -07:00
Martin Hjelmare e1a5d5a749 Refactor tradfri sensor tests (#88026) 2023-02-14 13:35:27 +01:00
Matthias Alphart d7861e79c5 Update xknx to 2.5.0 (#88069) 2023-02-14 12:44:43 +01:00
Paulus Schoutsen fa5c60c9ee Handle device reg fields not being valid data in openai conversion (#88047)
Handle device reg fields not being valid data
2023-02-14 11:45:27 +01:00
Paulus Schoutsen d54f59478f Keep task references while running (#87970)
* Keep task references while running

* Update pilight tests pointing at correct logger call

* Fix graphite tests

* Fix profiler tests

* More graphite test fixes

* Remove extra sleep

* Fix tests

* Shutdown background tasks as part of stage 1

* Remove unnecessary sleep in test

* Remove unused method on mock hass

* Skip on cancelled too

* Remove background tasks

* Test trigger variables without actually sleeping

* Fix graphite

* One more graphite grrrrrrr
2023-02-13 23:16:59 -05:00
J. Nick Koston e41af8928b Restore original aiohttp cancelation behavior (#88046) 2023-02-13 22:00:36 -06:00
dcmeglioandJ. Nick Koston 3d9d79684d Add support for telnet connections for Denonavr integration (#85980)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-02-13 18:36:09 -06:00
epenetandJ. Nick Koston efef915fc7 Add mariadb 10.3.32 to database tests (#87741)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-02-13 16:28:39 -06:00
Erik MontnemeryandJ. Nick Koston 4ca0a24f87 Increase test scope of MariaDB + PostgreSQL tests (#87019)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-02-13 15:58:13 -06:00
Martin Hjelmare ab2ab1573e Refactor tradfri diagnostics tests (#88017) 2023-02-13 18:39:48 +01:00
Martin Hjelmare 8993a36e27 Refactor tradfri fan tests (#87999) 2023-02-13 15:40:21 +01:00
J. Nick Koston 03eea7bd3f Avoid subprocess memory copy when c library supports posix_spawn (#87958)
* use posix spawn on alpine

* Avoid subprocess memory copy when c library supports posix_spawn

By default python 3.10 will use the fork() which has to
copy all the memory of the parent process (in our case
this can be huge since Home Assistant core can use
hundreds of megabytes of RAM). By using posix_spawn
this is avoided.

In python 3.11 vfork will also be available
https://github.com/python/cpython/issues/80004#issuecomment-1093810689
https://github.com/python/cpython/pull/11671 but we won't
always be able to use it and posix_spawn is considered safer
https://bugzilla.kernel.org/show_bug.cgi?id=215813#c14

The subprocess library doesn't know about musl though
even though it supports posix_spawn https://git.musl-libc.org/cgit/musl/log/src/process/posix_spawn.c
so we have to teach it since it only has checks for glibc
https://github.com/python/cpython/blob/1b736838e6ae1b4ef42cdd27c2708face908f92c/Lib/subprocess.py#L745

The constant is documented as being able to be flipped here:
https://docs.python.org/3/library/subprocess.html#disabling-use-of-vfork-or-posix-spawn

* Avoid subprocess memory copy when c library supports posix_spawn

By default python 3.10 will use the fork() which has to
copy memory of the parent process (in our case
this can be huge since Home Assistant core can use
hundreds of megabytes of RAM). By using posix_spawn
this is avoided and subprocess creation does not
get discernibly slow the larger the Home Assistant
python process grows.

In python 3.11 vfork will also be available
https://github.com/python/cpython/issues/80004#issuecomment-1093810689
https://github.com/python/cpython/pull/11671 but we won't
always be able to use it and posix_spawn is considered safer
https://bugzilla.kernel.org/show_bug.cgi?id=215813#c14

The subprocess library doesn't know about musl though
even though it supports posix_spawn https://git.musl-libc.org/cgit/musl/log/src/process/posix_spawn.c
so we have to teach it since it only has checks for glibc
https://github.com/python/cpython/blob/1b736838e6ae1b4ef42cdd27c2708face908f92c/Lib/subprocess.py#L745

The constant is documented as being able to be flipped here:
https://docs.python.org/3/library/subprocess.html#disabling-use-of-vfork-or-posix-spawn

* missed some

* adjust more tests

* coverage
2023-02-13 09:02:51 -05:00
epenet ea11a30a35 Add type hints to integration tests (part 13) (#87998) 2023-02-13 14:38:37 +01:00
Paulus Schoutsen c557cd2b1e Make all history stats tests async (#87973) 2023-02-13 14:34:28 +01:00
epenet 1e352b60df Add type hints to integration tests (part 11) (#87996) 2023-02-13 14:22:49 +01:00
Erik Montnemery 8f2a764a43 Adjust suggested_display_precision according to unit conversion (#87614) 2023-02-13 13:55:12 +01:00
epenet ea29cdfe83 Add type hints to integration tests (part 12) (#87997) 2023-02-13 13:03:51 +01:00
G Johansson 896dd1a36b Change name to entity_id Text platform error messages (#87963) 2023-02-13 12:51:38 +01:00
Jan Bouwhuisandepenet 950ee34514 Correct typing on hass_storage fixure (#87986)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-02-13 12:12:34 +01:00
Franck Nijhof f1daeabff0 Add homeassistant.reload_all service (#87769) 2023-02-13 12:09:29 +01:00
epenet 03710e58b5 Add type hints to integration tests (part 9) (#87983) 2023-02-13 12:06:51 +01:00
Franck NijhofandPaulus Schoutsen 6359775cfc Add more entities for Elgato Key Light Mini (#87793)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-02-13 11:54:50 +01:00
epenet 89e4ee5320 Add type hints to integration tests (part 8) (#87982) 2023-02-13 11:13:48 +01:00
epenet 9404a107b2 Add type hints to integration tests (part 10) (#87985) 2023-02-13 10:25:26 +01:00
Erik Montnemery 3f910b49ae Fix sensor unit conversion (#87978) 2023-02-13 10:08:07 +01:00
epenet b68f502769 Add type hints to integration tests (part 7) (#87980) 2023-02-13 09:53:09 +01:00
epenet b9beed4624 Add type hints to integration tests (part 6) (#87979) 2023-02-13 09:45:11 +01:00
Joakim Sørensen e842f90767 Add recorder engine name and version to analytics (#87784)
* Add recorder to analytics

* Add test

* Add recorder to after_dependencies

* Add version

* dialect can not be None
2023-02-13 09:18:12 +01:00
G Johansson 8c00f435a6 Change name to entity_id update platform error messages (#87960) 2023-02-12 22:18:09 +01:00
J. Nick Koston 7b9293941e The recorder/statistic(s)_during_period websocket API now require the statistic_id(s) field (#87937) 2023-02-12 14:51:10 -06:00
rappenze 5f4a2a713c Remove deprecated fibaro yaml config (#87939) 2023-02-12 21:50:50 +01:00
Ernst Klamer 18d3e4dca8 Fix kegtron state class for volume sensors (#87950) 2023-02-12 21:22:21 +01:00
epenet 728f62b1ec Add type hints to integration tests (part 5) (#87850) 2023-02-12 19:39:48 +01:00
Klaas Schoute 60bcbd0473 Bump gridnet to v4.2.0 (#87903) 2023-02-12 18:53:05 +01:00
Allen Porter 4d186366bd Improve Google Calendar config flow error message when API disabled (#87889) 2023-02-12 18:28:44 +01:00
Erik Montnemery 4db40810dd Add support for dormakaba dKey locks (#87501)
* Add support for dormakaba dKey locks

* Pylint

* Address review comments

* Add test for already configured entry

* Add user flow

* Address review comments

* Simplify config flow

* Add tests

* Sort manifest

* Remove useless _abort_if_unique_id_configured

* Remove config entry update listener

* Simplify user flow

* Remove startup event

* Revert "Simplify user flow"

This reverts commit 0ef9d1c6bb452b3a06856bc6bf5e81303a33c6b9.
2023-02-12 13:46:31 +01:00
J. Nick Koston 85649ec589 Reduce overhead to see if an entity is recorded (#87912)
A significant chunk of list_statistic_ids was checking if the entity
was recorded because it had to get the recorder instance over and
over
2023-02-11 23:21:16 -05:00
rappenze e1340e6ed4 Replace fiblary3 with pyfibaro library (#83500)
* Replace fiblary3 with pyfibaro library

* Fix some missing replacements for pyfibaro library

* Remove debug code which was committed accidentially

* Use fibaro_parent_id in another place

* Fix some bugs

* Move more code to the library

* Move has_unit check to correct place
2023-02-11 22:13:12 +01:00
J. Nick Koston 34e2751f14 Retrigger Bluetooth discovery when calling async_rediscover_address (#87884)
* Retrigger Bluetooth discovery when calling async_rediscover_address

* Retrigger Bluetooth discovery when calling async_rediscover_address

* tweak
2023-02-11 16:59:51 +01:00
G Johansson 7aa79415c1 Fix unbound variable in Group sensor (#87878)
* group bound last

* Add test
2023-02-11 16:27:22 +01:00