* Add pylint plugin to check if coordinator is placed in its own module
* Remove unintended changes
* Remove pylint disable and let CI only fail on W,E,F
* Make check conventional
* Apply review suggestion
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Use option instead
* Remove pylint arguments from pre-commit
* Partially revert "Remove pylint disable and let CI only fail on W,E,F"
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* add phase entities to Enphase Envoy
* Implement review feedback for translation strings
* Enphase Envoy multiphase review changes
Move device name logic to separate function.
Refactor native value for phases
Use dataclasses.replace for phase entities, add on-phase to base class as well, no need for phase entity descriptions anymore
* Enphase Envoy reviewe feedback
Move model determination to library.
Revert states test for future split to sensor test.
* Enphase_Envoy use model description from pyenphase library
* Enphase_Envoy refactor Phase Sensors
* Enphase_Envoy use walrus in phase sensor
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
Remove extra confirmation step in tplink discovery flow
After discovery, and manually entering credentials, we would ask
the user if they still wanted to set up the device. Instead we
now set create the config entry as soon as they enter correct
credentials as its clear that they want to proceed.
* Add clima support to Comelit integration
* address first part of review comments
* applied more review comments
* remove old multiplier
* removed preset modes (not always configured)
* small tweak
* apply StrEnum class
* added device info and unique id
* removed wrong attribute
* added base entity
* rename domain
* added entity.py to coveragerc
* added base entity for sensors and alarm panel
* add generic type translation
* rename functions
* rename device name to device model
* set _attr_name = None
* pass in only the entry_id instead of the full config_entry
* set unique id to device_id or entry id
* use deviceinfo class
* moved _attr_name = None to entities
* Update homeassistant/components/lupusec/alarm_control_panel.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/lupusec/entity.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/lupusec/entity.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* remove DOMAIN from unique id
* removed redundant function
* Update homeassistant/components/lupusec/alarm_control_panel.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Update homeassistant/components/lupusec/entity.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
---------
Co-authored-by: suaveolent <suaveolent@users.noreply.github.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Matter sensors for air quality measurements
Add sensors for CO2, PM1, PM2.5, PM10 and TVOC
* Add initial tests for matter air quality sensor
* Remove VOC data as requires unit extraction from cluster
* Convert referenced registry functions to use cached_property
These already implemented caching, but now that we can use cached_property
because the lock problem is solved, we can make the code simplier and faster
* missed one
* make them the same
* start work on webhooks
* start work on webhooks
* use background task
* websocket improvement
* add test
* add webhook id to mock_config_entry
* some changes
* add webhook to manifest
* fix test
* reset poll timer on webhook update
* reset poll timer on webhook update
* code cleanup
* generate webhook id in config flow
* fix merge
* undo var rename
* remove
* ruff
* ruff
* only delete specific webhook
* clarify warning
* version bump
* minor improvements
* requested changes
* unregister function
* move more of unregistration logic
* test pushed data
* add comment
* Update config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* ruff
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>