Commit Graph
202 Commits
Author SHA1 Message Date
J. Nick Koston ed0568c655 Ensure config entries are not unloaded while their platforms are setting up (#118767)
* Report non-awaited/non-locked config entry platform forwards

Its currently possible for config entries to be reloaded while their platforms
are being forwarded if platform forwards are not awaited or done after the
config entry is setup since the lock will not be held in this case.

In https://developers.home-assistant.io/blog/2022/07/08/config_entry_forwards
we advised to await platform forwards to ensure this does not happen, however
for sleeping devices and late discovered devices, platform forwards may happen
later.

If config platform forwards are happening during setup, they should be awaited

If config entry platform forwards are not happening during setup, instead
async_late_forward_entry_setups should be used which will hold the lock to
prevent the config entry from being unloaded while its platforms are being
setup

* Report non-awaited/non-locked config entry platform forwards

Its currently possible for config entries to be reloaded while their platforms
are being forwarded if platform forwards are not awaited or done after the
config entry is setup since the lock will not be held in this case.

In https://developers.home-assistant.io/blog/2022/07/08/config_entry_forwards
we advised to await platform forwards to ensure this does not happen, however
for sleeping devices and late discovered devices, platform forwards may happen
later.

If config platform forwards are happening during setup, they should be awaited

If config entry platform forwards are not happening during setup, instead
async_late_forward_entry_setups should be used which will hold the lock to
prevent the config entry from being unloaded while its platforms are being
setup

* run with error on to find them

* cert_exp, hold lock

* cert_exp, hold lock

* shelly async_late_forward_entry_setups

* compact

* compact

* found another

* patch up mobileapp

* patch up hue tests

* patch up smartthings

* fix mqtt

* fix esphome

* zwave_js

* mqtt

* rework

* fixes

* fix mocking

* fix mocking

* do not call async_forward_entry_setup directly

* docstrings

* docstrings

* docstrings

* add comments

* doc strings

* fixed all in core, turn off strict

* coverage

* coverage

* missing

* coverage
2024-06-04 21:34:39 -04:00
SidandJ. Nick Koston ac54cdcdb4 Enable Ruff RUF010 (#115371)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-05-08 23:54:49 +02:00
Jon Deeming 949ef49c09 Add vesync Vital 100S UK & EU Model mappings (#115948)
Add Vital 100S UK & EU Model mappings, fixes devices not being retrieved via VeSync APIs, using existing 100S device
2024-05-02 22:57:28 +02:00
pleum 7bf2baa236 Add additional Vital 100S model to vesync (#113838) 2024-04-09 10:18:37 +01:00
SidandMartin Hjelmare 0d66d298ec Enable Ruff RET504 (#114528)
* Enable Ruff RET504

* fix test

* Use noqa instead of cast

* fix sonos RET504

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-04-06 11:07:37 +02:00
Joost Lekkerkerker 49fc59548a Improve lists in integrations [V-W] (#113252) 2024-03-13 19:38:04 +01:00
Joost Lekkerkerker 90769b460d Remove entity description mixin in VeSync (#112965) 2024-03-11 11:53:18 +01:00
Marc Mueller 2c06d4fcb9 Add empty line after module docstring (2) [components] (#112736) 2024-03-08 19:15:59 +01:00
Marc Mueller 062cc4bfce Add empty line after module docstring [t-v] (#112705) 2024-03-08 10:35:23 -05:00
Joost Lekkerkerker af95d9058f Add icon translations to Vesync (#112344) 2024-03-06 06:30:58 +01:00
Erik Montnemery 9ec9ac4fd4 Migrate integrations u-z to generic flowhandler (#111866) 2024-02-29 20:08:16 +01:00
Jason Kossis a5ab2dfb62 Add Vital 100S & Vital 200S to VeSync sensors (#111017) 2024-02-21 20:39:06 +01:00
Erik MontnemeryandJ. Nick Koston 0c2485bc03 Freeze integration entity descriptions (#105984)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-12-18 16:28:13 -10:00
Jan BouwhuisandRobert Resch e8475b9b33 Add scaling utils for brightness and fanspeed (#104753)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-12-04 12:10:58 +01:00
cdnninja ea732349c9 Vesync constant cleanup (#104842) 2023-11-30 22:19:02 +01:00
cdnninja 9447d954d6 Add codeowner to vesync (#104809) 2023-11-30 18:14:22 +01:00
Aarni KoskelaandFranck Nijhof 706add4a57 Switch formatting from black to ruff-format (#102893)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-11-27 14:38:59 +01:00
Mike 1a9c98e837 Add support for Levoit Vital 100S Purifier (#101273)
Add support for Levoit Vital 100S Purifier.
2023-10-02 17:53:54 +02:00
MikeandThibault Cohen 2a6a2fa842 Update pyvesync to 2.1.10 (#100522)
* Update manifest.json to use pyvesync 2.1.10

* Update Requirements for pyvesync

* Update test_diagnostics.ambr

---------

Co-authored-by: Thibault Cohen <47721+titilambert@users.noreply.github.com>
2023-09-29 09:01:04 +02:00
Mike 15caf2ac03 Add support for Levoit Vital200s purifier (#100613) 2023-09-21 10:53:18 +02:00
Erik Montnemery 045c327928 Move DeviceInfo from entity to device registry (#98149)
* Move DeviceInfo from entity to device registry

* Update integrations
2023-08-10 22:04:26 -04:00
Nick Iacullo 6f8d666b57 Enable the PRESET_MODE FanEntityFeature for VeSync air purifiers (#97657) 2023-08-03 18:30:56 +02:00
c0ffeeca7 ac06905b1c Rename life to lifetime in vesync (#96844) 2023-07-18 20:36:47 +02:00
Joost Lekkerkerker e99b6b2a03 Migrate VeSync to has entity name (#96772)
* Migrate VeSync to has entity name

* Fix tests
2023-07-17 17:52:53 +02:00
Franck Nijhof 4edec69637 Migrate integration services (T-V) to support translations (#96379) 2023-07-12 07:37:13 +02:00
Paulus Schoutsen 62ac7973c2 VeSync: use correct device info keys (#95646) 2023-07-01 06:06:27 -04:00
Chuck Deal 09d0128601 Add diagnostics to VeSync (#86350)
* Add diagnostics to VeSync

* Create unit tests for diagnostics and init

* Improved diagnostic test coverage

* Peer review fixes

* Fixed Peer Review comments

* Updated based on Peer Review

* Additional diagnostic redactions

* Removed account_id from diagnostic output
2023-02-28 22:12:48 -05:00
Erik Montnemery cc564026fa Move EntityCategory to homeassistant.const (#87792)
* Move EntityCategory to homeassistant.const

* Fix more imports
2023-02-09 20:15:37 +01:00
Erik Montnemery 6c2702a7b8 Sort manifests 11 (#87032) 2023-02-08 20:10:18 +01:00
epenet 1b23429f41 Add __init__ return type to integrations (#87637) 2023-02-07 15:55:14 +01:00
Franck NijhofandErik Montnemery 939eef3b28 Remove translations from Core (#87543)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-02-06 15:06:43 +01:00
Franck Nijhof fcb612cd6f Collection of code styling tweaks (#87344) 2023-02-03 23:51:27 +01:00
GitHub Action b3ab0a0199 [ci skip] Translation update 2022-12-29 00:23:20 +00:00
Franck Nijhof 8819634b61 String formatting and max line length - Part 6 (#84525) 2022-12-24 13:19:51 +01:00
epenet ebdf9a8658 Use UnitOfEnergy in integrations (o-z) (#84221) 2022-12-19 10:58:37 +01:00
epenet 0184aadb09 Use UnitOfElectricPotential in integrations (#84044) 2022-12-15 13:59:21 +01:00
epenet 52d4a358a0 Use UnitOfPower in integrations [s-z] (#83826) 2022-12-12 12:20:16 +01:00
Guido Pio Mariotti b4b136b43e Update pyvesync to 2.1.1 (#83146)
Update pyvesync to 2.1.1 to close #70420
2022-12-07 00:42:08 +01:00
GitHub Action 230b50d099 [ci skip] Translation update 2022-11-29 00:26:01 +00:00
GitHub Action 3bea04e387 [ci skip] Translation update 2022-11-21 00:26:41 +00:00
GitHub Action 8d28da83ca [ci skip] Translation update 2022-10-05 00:36:50 +00:00
epenet 050cb275ff Improve entity type hints [v] (#77885) 2022-09-06 13:59:05 +02:00
GitHub Action bec8e544f4 [ci skip] Translation update 2022-08-14 00:25:47 +00:00
epenet 1ba18f8df6 Improve type hints in vesync lights (#75998)
* Improve type hints in vesync lights

* Adjust import
2022-08-03 09:56:13 +02:00
GitHub Action 81e3ef03f7 [ci skip] Translation update 2022-08-02 00:27:42 +00:00
Ethan Madden 1eb0983fba Enable air quality sensor for Core300s (#75695) 2022-08-01 17:06:28 +02:00
epenet 11a19c2612 Improve type hints in light [s-z] (#75946) 2022-07-31 13:50:24 +02:00
GitHub Action a3fd5acf3f [ci skip] Translation update 2022-07-13 00:27:34 +00:00
Ethan Madden 5defe67269 air_quality and filter_life fixes for Pur131S (#74740) 2022-07-09 19:51:47 +02:00
J. Nick Koston cd03c49fc2 Wait for config entry platform forwards (#73806) 2022-07-09 17:27:42 +02:00