* Extract coordinator to separate module in Nanoleaf
* Extract coordinator to separate module in Nanoleaf
* Extract coordinator to separate module in Nanoleaf
* Add number input for apsystems
* Exclude number from apsystems from coverage
* Remove unnecessary int-float conversion in apsystems number
* Remove unnecessary int-float conversion in apsystems number and redundant and single use variables
* Add translation for apsystems number
* 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
* Prelimenary tests for incomfort integration
* Use snapshot_platform
* Use helper
* Ensure the device name is set in device info
* Move snapshot tests to platform test modules
* Move unused snapshot file
* Naming and docstr
* update snapshots
* cleanup snapshots
* Add water heater tests
* Add ista EcoTrend integration
* move code out of try
* Use account owners name as entry title
* update config flow tests
* add tests for init
* Add reauth flow
* Add tests for sensors
* add translations for reauth
* trigger statistics import on first refresh
* Move statistics and reauth flow to other PR
* Fix tests
* some changes
* draft_final_final
* remove unnecessary icons
* changed tests
* move device_registry test to init
* add text selectors
* Add config flow
* Make sure the device is polled - refactor
* Fix
* Add tests config flow
* Update test requirements
* Ensure dispatcher has a unique signal per heater
* Followup on review
* Follow up comments
* One more docstr
* Make specific try blocks and refactoring
* Handle import exceptions
* Restore removed lines
* Move initial heater update in try block
* Raise issue failed import
* Update test codeowners
* Remove entity device info
* Remove entity device info
* Appy suggestions from code review
* Remove broad exception handling from entry setup
* Test coverage
* Add BaseEntity for apsystems integration
* Exclude entity.py from apsystems from coverage
* Remove api from BaseEntity from apsystems as it is not yet used
* Split BaseEntity and BaseCoordinatorEntity in apsystems integration
* Clean up of asserting unique_id everywhere in apsystems integration
* Remove BaseCoordinatorEntity from apsystems
* Remove double type declaration originating from merge in apsystems
* Add DSMR Reader sensor tests
* Change to paramatization
* Removing patch
* Emulate the test
* Go for 100% test coverage
* Adding defintions.py
* Add myself as code owner to keep improving
* Update AlarmDecoder component to newer model
This commit makes AlarmDecoder operate as a proper device entity following the new model introduced a few years ago.
Code also has an internal dependency on a newer version of adext (>= 0.4.3) which has been updated correspondingly.
* Created AlarmDecoder entity
Added an alarmdecoder entity so the device_info can be re-used across the integration
* Move _attr_has_entity_name to base entity
As per code review suggestion, clean up the object model.
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
* Missed one suggestion with the prior commit
Moves _attr_has_entity_name to base entity
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
* Address some ruff issues
* Apply additional ruff cleanups
Ran ruff again to clean up a few files tat weren't picked up last time
* Apply suggestions from code review
Some additional cleanup of style & removal of unnecessary code
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
* Properly generated the integration file
generation had to happen twice for this to work. Now that it's generated, I'm including the missing update.
* Apply suggestions from code review
Use local client variable instead of self._client
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
* Sort the manifest
documentation was added, but it wasn't sorted properly in the key/value pairs
* Add alarmdecoder entity file to coverage ignore file
Added the alarmdecoder entity file so it is ignored for coverage
---------
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>