* Disable specific updates for an appliance when is done repeatedly
* Fix deprecation issues fix tests
* Fix message
* Avoid fetching appliance info also
* Apply suggestions
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Create specific RepairFlow for enabling appliance's updates
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Abort reauth flows on config entry reload
* Don't cancel reauth when reload is triggered by a reauth flow
* Revert "Don't cancel reauth when reload is triggered by a reauth flow"
This reverts commit f37c75621e.
* Don't fail in FlowManager._async_handle_step when the flow was aborted
* Update tplink config flow
* Add tests
* Don't allow create_entry from an aborted flow
* Add comment
* Adjust after merge with dev
* Initial commit prototype with empty inverters
* Use modern methods and global variable for character strings
* Platform that get the value of the meter in an entity
* Add check if inverter already configured
* Add tests for config_flow
* Update "imeon_inverter_api" in manifest.json
* Update "imeon_inverter_api" in requirements_all.txt
* Remove async_setup, clean comments, use of const PLATFORM
* Use of global variable and remove configuration of device name
* Use of entry.data instead of user_input variable
* Remove services.yaml
* No quality scale
* Use of common string
* Add sensors, use of EntityDescription and '_attr_device_info'
* Remove name from config_flow tests
* Use sentence case and change integration from hub to device
* Check connection before add platform in config_flow
* Use of _async_setup and minor changes
* Improve sensor description
* Add quality_scale.yaml
* Update the quality_scale.json
* Add tests for host invalid, route invalid, exception and invalid auth
* Type more precisely 'DataUpdateCoordinator'
* Don't use 'self.data' directly in coordinator and minor corrections
* Complete full quality_scale.yaml
* Use of fixtures in the tests
* Add snapshot tests for sensors
* Refactor the try except and use serial as unique id
* Change API version
* Add test for sensor
* Mock the api to generate the snapshot
* New type for async_add_entries
* Except timeout error for get_serial
* Add test for get_serial timeout error
* Move store data out of the try
* Use sentence case
* Use of fixtures
* Use separates fixtures
* Mock the api
* Put sensors fake data in json fixture file
* Use of a const interval, remove except timeout, enhance lisibility
* Try to use same fixture in test_config_flow
* Try use same fixture for all mock of inverter
* Modify the fixture in the context manager, correct the tests
* Fixture return mock.__aenter__ directly
* Adjust code clarity
* Bring all tests to either ABORT or CREATE_ENTRY
* Make the try except more concise
* Synthetize exception tests into one
* Add code clarity
* Nitpick with the tests
* Use unique id sensor
* Log an error on unknown error
* Remove useless comments, disable always_update and better use of timeout
* Adjust units, set the model and software version
* Set full name for Battery SOC and use ip instead of url
* Use of host instead of IP
* Fix the unit of economy factor
* Reduce mornitoring data display precision and update snapshots
* Remove unused variable HUBs
* Fix device info
* Set address label 'Host or IP'
* Fix the config_flow tests
* Re evaluate the quality_scale
* Use of 'host' instead of 'address'
* Make inverter discoverable by ssdp
* Add test ssdp configuration already exist
* Add exemption in quality scale
* Test abort ssdp if serial is unknown
* Handle update error
* Raise other exceptions
* Handle ClientError and ValueError from the api
* Update homeassistant/components/imeon_inverter/quality_scale.yaml
---------
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Josef Zweck <josef@zweck.dev>
* Add support for air purifier type in HomeKit.
Any fan and PM2.5 in the same device will be treated as an air purifier.
type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.
* Refactor to make AirPurifier class extend Fan.
* Ensure all chars are added before creating service
* Add support for switching automatic mode.
* Add test for auto/manual switch
* Add support for air purifier type in HomeKit.
Any fan and PM2.5 in the same device will be treated as an air purifier.
type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.
* Add support for air purifier type in HomeKit.
Any fan and PM2.5 in the same device will be treated as an air purifier.
type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.
* Refactor to make AirPurifier class extend Fan.
* Ensure all chars are added before creating service
* Add support for switching automatic mode.
* Add test for auto/manual switch
* Add support for air purifier type in HomeKit.
Any fan and PM2.5 in the same device will be treated as an air purifier.
type_air_purifiers.py heavily based on type_fans.py -
I tried extending type_fans.py but this looked better to me.
* Improve fan config: allow setting fan type (fan or air purifier)
Be more explicit than assuming a fan is an air purifier if it has a PM2.5 sensor. Set defaults based on the presence of sensors.
* Fix return type annotation for fan/air purifier create_services
* Allow linking air purifier filter level/change indicator
* Remove no longer needed if statement in fan init
* Fix up types and clean up code
* Update homekit tests to account for air purifiers
* Fix pylint errors
* Fix mypy errors
* Improve type annotations
* Improve readability of auto preset mode discovery
* Test air purifier with 'Auto' preset mode
* Handle case with a single preset mode
* Test air purifier edge cases: state updates to same value, and removed linked entities
* Don't create 'auto mode' switch for air purifiers
This is already exposed as a target mode on the air purifier service itself
* Handle unavailable states in air purifier
Also don't remove device class when updating state in test
* Reduce branching in air purifier test
* Split up air purifier tests for with and without auto presets, to reduce branching
* Handle unavailable states in air purifier more explicitly
* Use constant for ignored state values
* Use a set for ignored_states
* Update tests/components/homekit/test_type_air_purifiers.py
---------
Co-authored-by: Andrew Kurowski <62596884+ak6i@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick+github@koston.org>
Co-authored-by: J. Nick Koston <nick@koston.org>
* Abort if a flow is removed during a step
* Reorganize code
* Only call _set_pending_import_done if an entry is created
* Try a new approach
* Add tests
* Update tests
* Move inkbird coordinator logic into coordinator.py
Not a functional change, one to one relocation
* Move inkbird coordinator logic into coordinator.py
Not a functional change, one to one copy
* Move inkbird coordinator logic into coordinator.py
Not a functional change, one to one copy
* add sensor platform to bosch_alarm
* add icon translations for sensors
* translate entity names
* translate entity names
* translate entity names
* update snapshots
* translate ready to arm sensor
* translate ready to arm sensor
* update tests
* update translations
* remove history sensor, we will replace it with an events sensor later
* fix tests
* fix tests
* fix tests
* update tests
* fix sensor links
* only call async_add_entities once
* convert area alarms to sensors based on type
* add sensor for alarms
* add icons
* cleanup area sensor
* add available
* loop over dict
* use entity description
* use entity description
* clean up entity descriptions
* observe_alarms and observe_ready
* refactor alarm_control_panel to use base entity
* remove more old sensors
* add unit of measurement
* update test snapshots
* use correct observer
* Add entity tests
* Add __init__ tests
* Cleanup
* Rename mock_motionmount_config_flow to mock_motionmount
* Remove unneeded PropertyMock
* Set defaults on mock_motionmount
* Test proper device is created
* Check whether proper device is created from test_init.py, also without mac
* Find callback and use that to update name
* Add fan platform to eheimdigital
* Fix pylint
* Convert fan to sensor platform
* Remove unnecessary changes
* Add state update test
* Review
* Review
* Review
* Add DHCP discovery support to Bond
* fixes
* unique ids are always upper
* raise_on_progress=False for user
* Update tests/components/bond/test_config_flow.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* assert unique id
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Ensure a flux_led user flow can replace an ignored entry
Allow ignored devices to be selected in the user step and replace the ignored entry.
Same as #137056 and #137052 but for flux_led
* works as-is was a problem with core.config_entries
* Do not fetch disconnected Home Connect appliances
* Apply suggestions
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update docstring
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Hide bad ZBT-1 config entries on the hardware page
* Set up the bad config entry in the unit test
* Roll into a list comprehension
* Remove constant changes
* Fix condition in unit test
Replacing an ignored config entry with one from the user
flow should not generate a warning. We should only warn
if we are replacing a usable config entry.
Followup to adjust the warning added in #130567
cc @epenet
* Deprecate effect none instead of breaking it for Hue
* add guard for unknown effect value
* revert guard
* Fix
* Add test
* Add test
* Add test
---------
Co-authored-by: Joostlek <joostlek@outlook.com>
* now the price will return even if it is exactly 0
* now the price will return even if it is exactly 0
* now the price will return even if it is exactly 0
* clean code
* clean code
* update testing code coverage
* change zero testing to SE4
* remove row duplicate
* fix date comments
* improve testing
* simplify if-return-0
* remove unnecessary tests
* order testing rows
* restore test_sensor_no_next_price
* remove_average_price_test
* fix test name
* Move Z-Wave JS smoke, CO, CO2, Heat, Water problem entities to diagnostic
* Update link + states
* Specify problem class explicitly instead of catch-all
* Heat alarm test is not a problem
* Also split out smoke alarm
* Document mapping rule
* add tests
* format
* update test
* review comments
* remove idle state from doc as it is ignored
---------
Co-authored-by: Petar Petrov <MindFreeze@users.noreply.github.com>
* check for empty or missing values when processing state messages for MQTT light entities using 'template' schema
* normalise warning logs
* add tests (one is still failing and I can't work out why)
* fix test
* improve test coverage after PR review
* improve test coverage after PR review
* Reload the config entry when the ZBT-1 is unplugged
* Register the USB event handler globally to react better to re-plugs
* Fix existing unit tests
* Add an empty `CONFIG_SCHEMA`
* Add a unit test
* Fix unit tests
* Fix unit tests for Linux
* Address most review comments
* Address remaining review comments
* Remove unnecessary imports of http integration
* Check reason for test failures
* Revert "Check reason for test failures"
This reverts commit 5ccf356ab0.
* Update tests
* add cover unit tests
* Add unit test for SwitchBot cover
* fix: use mock_restore_cache to mock the last state
* modify unit tests
* modify scripts as suggest
* improve readability
* adjust patch target per review comments
* adjust patch target per review comments
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
* Add authentication support for Model Context Protocol (mcp) integration
* Update homeassistant/components/mcp/application_credentials.py
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Handle MCP servers with ports
---------
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Set and check unique id in config
* Update homeassistant/components/nut/config_flow.py
Set unique ID and abort only if value is defined
Co-authored-by: J. Nick Koston <nick+github@koston.org>
* Add duplicate ID test case for multiple devices
* Add unique ID check to config flow step for UPS
* Update homeassistant/components/nut/__init__.py
Fix to only set config_entries unique ID if not None
Co-authored-by: J. Nick Koston <nick+github@koston.org>
* Remove duplicate config flow call
---------
Co-authored-by: J. Nick Koston <nick+github@koston.org>
Co-authored-by: J. Nick Koston <nick@koston.org>
* fix: two minor LLM changes to speed up prefill
- moved the current date/time to the end of the prompt
- started sorting all entities by last_changed
* addressed PR comments
* fixed tests
* reduced scope of try/catch in LLM prompt
* addressed more PR comments
* fixed Anthropic test
* addressed another PR comment
* fixed remainder of tests
* Don't turn on thermostat if temp is equal to target temp.
* Update strings to reflect logic change.
* Fix logic and add zero tolerance tests.
* Include tests for cool mode
* Removed unnecessary async_block_till_done calls
* Fix order of palettes, presets and playlists in WLED integration
* fix tests: update palette items order
---------
Co-authored-by: Franck Nijhof <git@frenck.dev>
* Move roborock unique id to be based on roborock userid instead of email
* Remove unnecessary data update
* Update tests
* Add tests coverage for removal of config entry
* Use config entry migration
* Remove unused fixtues
* Remove unnecessary logging
* Fix ESPHome update entities being loaded before device_info is available
Since we load platforms when restoring config, the update
platform could be loaded before the connection to the
device was finished which meant device_info could still
be empty. Wait until device_info is available to
load the update platform.
fixes#135906
* Apply suggestions from code review
* move comment
* Update entry_data.py
Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>
---------
Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>
* Fix old ESPHome entities not being removed when configuration changes
fixes#140756
* make sure all callbacks fire
* make sure all callbacks fire
* make sure all callbacks fire
* make sure all callbacks fire
* revert
* cover
* Dynamically add Home Connect event sensors to HA
* Add and remove listeners on paired and depaired events
* Apply suggestion
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update test
* Adjust English
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Increase websocket_api allowed peak time to 10s
fixes#141624
During integration reload or startup, we can end up sending a message for
each entity being created for integrations that create them from an external
source (ie MQTT) because the messages come in one at a time. This can overload
the loop and/or client for more than 5s. While we have done significant work
to optimize for this path, we are at the limit at what we can expect clients
to be able to process in the time window, so increase the time window.
* adjust test
* Add the Yellow and ZBT-1 to the device registry
* Unload platforms
* Fix unit tests
* Rename the Yellow update entity to `Radio firmware`
* Rename `EmberZNet` to `EmberZNet Zigbee`
* Prefix the `sw_version` with the firmware type and clean up
* Fix unit tests
* Remove unnecessary `always_update=False` from data update coordinator
* Fix misleading friendly names of `rainforest_raven` sensors
The three sensors
- power_demand
- total_energy_delivered
- total_energy_received
currently add "meter" in their friendly names.
This does not provide any useful information and is rather irritating instead – it sounds like these are the power demands or consumption of the meter itself. But they are the measured values.
This commit removes "meter" from the names making them simpler and more precise, too.
In addition the sentence-casing of "MAC addresses" is fixed.
* Update test_sensor.ambr
* Update test_sensor.ambr (2)
* Also remove "meter" from Signal strength
* Update test_sensor.ambr (3)
* Change `meter_price` to `energy_price` in strings.json
* Change `meter_price` to `energy_price` in test_sensor.ambr
* Change `meter_price` to `energy_price` in sensor.py
* Respect the min 2 constraint for the switch MultiPressMax attribute
* Update test_event.py
* Update generic_switch_multi.json
* Fix issue and update tests
* Add media_channel property to cambridge audio
* Return channel instead of artist when playing internet radio to mimick behaviour of CXN100 and StreamMagic app
* Add test for media_artist attribute
* Add test that media_artist is not set in certain cases
* Update homeassistant/components/cambridge_audio/media_player.py
Co-authored-by: Noah Husby <32528627+noahhusby@users.noreply.github.com>
---------
Co-authored-by: Noah Husby <32528627+noahhusby@users.noreply.github.com>
* Add possibility to get area by alias
* Add ability to get floor by alias
* Moved alias lookup to separate function, adjusted templates.
* Changed registry to return all areas/floors with given alias
* Use normalize_name from normalized_name_base_registry
* Move alarm clock entity from time platform to number platform
* Deprecate alarm clock time entity
* Don't update unique id
* Fix tests
* Fixable issues
* improvement
* Make the issues persistent
* Add language scores websocket command
* Don't store language scores in snapshot
* Add language/country args for preferred lang
* Bump intents to 2025.3.24 for dash lang code
* Add service for counting the omer
* Add description and strings. Expect string from user
* Fix constraints on nusach and language + Make independent of config_entry
* Provide config schema
* Fix services.yaml and strings.json to match updated service.py
* Use LanguageSelector and some constants
* Action description -> third-person singular
* Use built-in language selector in yaml
* Fix schema
* Show the hebrew date in the correct language in the response
* Revert "Show the hebrew date in the correct language in the response"
This reverts commit 59442d16c5.
Requires a bugfix in the original library
* Don't return the hebrew date as it doesn't return correctly
* Add sensor as entity platform on MQTT subentries
* Fix typo
* Improve device class data description
* Tweak
* Rework reconfig calculation
* Filter out last_reset_value_template if state class is not total
* Collapse expire after as advanced setting
* Update suggested_display_precision translation strings
* Make options and last_reset_template conditional, use sections for advanced settings
* Ensure options are removed properly
* Improve sensor options label, ensure UOM is set when device class has units
* Use helper to apply suggested values from component config
* Rename to `Add option`
* Fix schema builder not hiding empty sections and removing fields excluded from reconfig
* Do not hide advanced settings if values are available or are defaults
* Improve spelling and Learn more links
* Improve unit of measurement validation
* Fix UOM selector and translation strings
* Address comments from code review
* Remove stale comment
* Rename selector constant, split validator
* Simplify config validator
* Return tuple with config and errors for config validation
* Add circular mean statistics
* fixes
* Add has_circular_mean and fix tests
* Fix mypy
* Rename to MEASUREMENT_ANGLE
* Fix kitchen_sink tests
* Fix sensor tests
* for testing only
* Revert ws command change
* Apply suggestions
* test only
* add custom handling for postgres
* fix recursion limit
* Check if column is already available
* Set default false and not nullable for has_circular_mean
* Proper fix to be backwards compatible
* Fix value is None
* Align with schema
* Remove has_circular_mean from test schemas as it's not required anymore
* fix wrong column type
* Use correct variable to reduce stats
* Add guard that the uom is matching a valid one from the state class
* Add some tests
* Fix tests again
* Use mean_type in StatisticsMetato difference between different mean type algorithms
* Fix leftovers
* Fix kitchen_sink tests
* Fix postgres
* Add circular mean test
* Add mean_type_changed stats issue
* Align the attributes with unit_changed
* Fix mean_type_change stats issue
* Add missing sensor recorder tests
* Add test_statistic_during_period_circular_mean
* Add mean_weight
* Add test_statistic_during_period_hole_circular_mean
* Use seperate migration step to null has_mean
* Typo ARITHMETIC
* Implement requested changes
* Implement requested changes
* Split into #141444
* Add StatisticMeanType.NONE and forbid that mean_type can be None
* Fix mean_type
* Implement requested changes
* Small leftover of latest StatisticMeanType changes
* Add sensors for second radio
* Add test for zigbee2 sensor
* Update homeassistant/components/smlight/sensor.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* drop useless replace
* Fix test failure
* Fix code coverage in config flow
* Update homeassistant/components/smlight/sensor.py
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* fix conversion of iterator to list
* Remove assert on radios
* simplify handling of radios further
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
* raise BackupAgentUnreachableError when NAS is unavailable
* also raise BackupAgentUnreachableError during upload when nas unavailable
* Revert "also raise BackupAgentUnreachableError during upload when nas unavailable"
This reverts commit 38877d8540.
* Revert "raise BackupAgentUnreachableError when NAS is unavailable"
This reverts commit 4d8cfae396.
* check last_update_success of coordinator_central to get backup agents
* consider last_update_success before notify backup listeners
* add test
* use walrus := :)
* Add climate platform
* Add unit tests for climate platform
* Use setup_integration fixture
* Apply new import order
* Undo import order
* Code review
* Throw an exception on invalid preset mode
* Let device response determine state
* Remove hvac mode OFF
* Remove hvac mode OFF
* Setup debouncer when being added to hass
* Fix typo
* Add Pterodactyl integration
* Remove translation for unavailable platform sensor, use constant for host
* Improve data descriptions
* Replace index based handling of data (list) with dict[str, PterodactylData]
* Replace CONF_HOST with CONF_URL
* Parse URL with YARL
* Set proper availability in binary sensor
* Remove storage of data within api.py
* Fix some review findings
* Use better unique ID for binary_sensor
* Fix more review findings
* Fix remaining review findings
* Add wrapper for server and util API, use underscore in unique ID
* Reuse result in config flow tests
* Patch async_setup_entry in config_flow tests
* Move patching of library APIs to the fixture mock_pterodactyl
* Add EventEntity for Auto Shut Off events in Watergate integration
* Split events into two: volume and duration
* Add icons to json. Extract some common translation keys. Simplify tests
* Apply suggestions from code review
* Fix
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Add cover support to PG LAB Electronics integration
* check shutter none state in is_closing and is_opening
* adding a loop instead of test test single cover individually
* Jellyfin: Properly display album primary art instead of artist backdrop when playing music
* add test for album art urls, fix existing tests that broke because they have extraneous "album*" fields for non-album items.
* fix snapshot test
* Do not return router as source_type
* Add test
* Update stale docstring
---------
Co-authored-by: Andrew Sayre <6730289+andrewsayre@users.noreply.github.com>
* Bump PyTado 0.19.0
* Initial setup
* Current state
* Update to PyTado 0.18.8
* First concept for review
* Fix
* Fix
* Fix
* First concept for review
* Bump PyTado to 0.18.9
* Remove redundant part
* Initial test setup
* Authentication exceptions
* Fix
* Fix
* Fix
* Update version to 2
* All migration code
* Small tuning
* Add reauth unique ID check
* Add reauth test
* 100% on config flow
* Making tests working on new device flow
* Fix
* Fix
* Fix
* Update homeassistant/components/tado/strings.json
* Update homeassistant/components/tado/strings.json
---------
Co-authored-by: Joostlek <joostlek@outlook.com>
Co-authored-by: Josef Zweck <josef@zweck.dev>
* add sensor platform to backup integration
* adjust namings, remove system integration flag
* add first simple test
* apply review comments
* fix test
* add sensor tests
* adjustements to use backup helper
* remove obsolet async_get_manager from init
* unsubscribe from events on entry unload
* add configuration_url
* fix doc string
* fix sensor tests
* mark async_unsubscribe as callback
* set integration_type service
* extend sensor test
* set integration_type on correct integration :)
* fix after online conflict resolution
* add sensor update tests
* simplify the sensor update tests
* avoid io during tests
* Add comment
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Support for hierarchy of individual energy devices
* update DeviceConsumption dict
* change name parent to 'included_in'
* Break comment
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Use correct unit symbol "min" for minutes in `systemmonitor` integration
* Update test_sensor.ambr
* Remove accidentially added, excessive space character
* Add gemini token status to the conversation trace
* Add OpenAI Token Stats
* Revert input_tokens_details since its not in the openai version yet
* Fix ruff lint errors
* Fixes to user-facing strings of `azure_devops` integration
- capitalize abbreviations "ID" and "URL"
- sentence-case "project"
- consistently capitalize "Personal Access Token" as a name
* Update test_sensor.ambr
* Add discovery to Roborock
* Update homeassistant/components/roborock/config_flow.py
Co-authored-by: Allen Porter <allen.porter@gmail.com>
* MR comments
* go back to removing the ":"
* change method of getting devices
---------
Co-authored-by: Allen Porter <allen.porter@gmail.com>
* Add metered PDU dynamic outlet sensors
* Make deep copy and improve efficiency of loops
* Improve performance by creating new dict
Co-authored-by: J. Nick Koston <nick+github@koston.org>
* Remove unused import copy
* Use outlet name (if available) in friendly name and remove as separate sensor
---------
Co-authored-by: J. Nick Koston <nick+github@koston.org>
* Changed where the script events are collected to remove any device communication from async_setup_entry
* Implemented improvements and added a test to test whats happends when script_getcode fails
* Renamed script_events to rpc_script_event to make clear this is only for RPC devices
Co-authored-by: Shay Levy <levyshay1@gmail.com>
---------
Co-authored-by: Shay Levy <levyshay1@gmail.com>
* Initial commit
* Refactor
* Call async_add_entities() once
* Type
* Cleaning
* `supported` is not needed here
* Add error handling
* Add test
* Fix name
* Change class name
* Change method name
* Move BLU_TRV_TIMEOUT
* Fix BLU_TRV_TIMEOUT import
* Coverage
* Use test snapshots
* Support error translations
* Fix tests
* Introduce ShellyBaseButton class
* Rename press_method to _press_method
* Improve exception strings
* Log a warning for modules that log too often
* Improve var naming
* Increase time window; improve log info
* Fix zha type
* Fix typo
* Ignore debug logs
* Use timer to avoid now() calls
* Switch to async_track_time_interval
* Allow using base QueueLister
* Add test for counters reset
* Make var names consistent; reduce message/time ratio
* Use log times instead of timer
* Simplify reset test
* Warn only once per module
* Remove uneeded counter reset
* Add missing Heatpump parameters and units
* Fix merge issue
* Fix snapshot
* Removing bundle_id as extra state attribute till functionality is needed and updating api translation with missing phrase
* Fix translations for listparameters
* Fix translations for listparameters
* Capitalize "PIN to Drive" as feature name in `teslemetry`
Fixes the spelling of "PIN" for consistency and turns "PIN to Drive" into the feature name that Tesla uses (in English).
* Update test_binary_sensor.ambr
* Add password length restriction
* Bump reolink-aio to 0.12.3
* Add repair issue for too long password
* finish password too long repair issue
* add test
* Refactor zwave_js config entry setup
* Fix blocking update test
* Address timeout comment
* Remove platform tasks
* Replace deprecated async_add_job
* Use ConfigEntry.async_on_state_change
* Use modern config entry methods
* Clarify exception message
* Test listen error after config entry setup
* Test listen failure during setup after forward entry
* Test not reloading when hass is stopping
* Test client disconnect is called on entry unload
* Fix and test client not connected during driver setup
* Fix and test driver ready timeout
* Stringify listen task exception when logging
* Use identity compare
* Guard for closed connection
* Consolidate listen task checking and tests
* Fix initial fetch of appliance data to handle API rate limit errors
* Apply comments
* Delete stale function
* Handle api rate limit error at options fetching
* Update appliances after stream non-breaking error
* Always initialize coordinator data
* Improve device update
* Update test description
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>