* Add multi-zone support to Anthem AV receiver and distribution amplifier
* Fix typo in comment
* Convert properties to attribute and add test
* Migrate entity name
* Fix after rebase add strict typing and bump version
* fix typing
* Simplify test
* Small improvement
* remove dispatcher send and use callback
* Implement WS API endpoints for zigpy backups
* Implement backup restoration
* Display error messages caused by invalid backup JSON
* Indicate to the frontend when a backup is incomplete
* Perform a coordinator backup before HA performs a backup
* Fix `backup.async_post_backup` docstring
* Rename `data` to `backup` in restore command
* Add unit tests for new websocket APIs
* Unit test backup platform
* Move code to overwrite EZSP EUI64 into ZHA
* Include the radio type in the network settings API response
* Add new LaCrosse View integration
* Add new LaCrosse View integration
* Add retry logic
* Actually use the start time for the retry logic
* Get new token after 1 hour
* Replace retry logic with more reliable logic
* Improve test coverage
* Add device info and unique id to config entry
* Fix manufacturer name
* Improve token refresh and check sensor permission
* Improve test cover
* Add LaCrosse View to .strict-typing
* Remove empty fields in manifest.json
* Fix mypy
* Add retry logic for get_data
* Add missing break statement in retry decorator
* Fix requirements
* Finish suggestions by Allen Porter
* Suggestions by Allen Porter
* Fix typing issues with calls to get_locations and get_sensors
* Moved color commands to a new ``async_handle_color_commands`` method
* Fixed tests
* Fix brightness jumping around during transitions
* Add config option to disable "Enhanced brightness slider during light transition"
* Set min transition time for Sengled lights in ZHA groups
* Change test to expect correct min transition time for group with Sengled light
* Fix turn_off with transition 0 for Sengled lights
* Fix bluetooth integration with service_data and service_uuids
We would only dispatch a new flow when the address was seen for
the first time or the manufacturer_data appeared in a followup
advertisement. Its also possible for the service_data and
service_uuids to appear in a followup advertisement so we
need to track these as well
* improve logging to avoid overly large messages
* improve logging to avoid overly large messages
* adjust
* adjsut
* split
* coverage
* coverage
* coverage
* coverage
* fix matcher
* more coverage
* more coverage
* more coverage
* revert switchbot changes and move to seperate PR
* Support for encrypted devices
* Sensor should use bindkey if available
* Error message if encryption fails
* Let mypy know this is always set by now
* Towards supporting encryption in step_user
* Add tests for the 4 new happy paths
* Add test coverage for failure cases
* Add strings
* Bump to 0.5.1. Legacy MiBeacon does not use an authentication token, so harder to detect incorrect key
* Add _title() helper
* Fix test after rebase
* Update homeassistant/components/xiaomi_ble/strings.json
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Remove unused lines
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update switchbot to be local push
* fixes
* fixes
* fixes
* fixes
* adjust
* cover is not assumed anymore
* cleanups
* adjust
* adjust
* add missing cover
* import compat
* fixes
* uses lower
* uses lower
* bleak users upper case addresses
* fixes
* bump
* keep conf_mac and deprecated options for rollback
* reuse coordinator
* adjust
* move around
* move around
* move around
* move around
* refactor fixes
* compat with DataUpdateCoordinator
* fix available
* Update homeassistant/components/bluetooth/passive_update_processor.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/bluetooth/passive_update_coordinator.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/bluetooth/update_coordinator.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Split bluetooth coordinator into PassiveBluetoothDataUpdateCoordinator and PassiveBluetoothProcessorCoordinator
The PassiveBluetoothDataUpdateCoordinator is now used to replace instances
of DataUpdateCoordinator where the data is coming from bluetooth
advertisements, and the integration may also mix in active updates
The PassiveBluetoothProcessorCoordinator is used for integrations that
want to process each bluetooth advertisement with multiple processors
which can be dispatched to individual platforms or areas or the integration
as it chooes
* change connections
* reduce code churn to reduce review overhead
* reduce code churn to reduce review overhead
* Update homeassistant/components/bluetooth/passive_update_coordinator.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* add basic test
* add basic test
* complete coverage
* Update homeassistant/components/switchbot/coordinator.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/switchbot/coordinator.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/switchbot/__init__.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/switchbot/__init__.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* lint
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add Govee BLE integration
* add missing files
* remove test file not needed yet
* fix
* add bbq sensors
* fixed lib
* bump again to fix the names
* fix discovery of the newer bbq devices
* fix the test to test the right thing
* verify no outstanding flows
* only accept entities that match the platform
* refactor
* refactor
* refactor
* Refactor PassiveBluetoothDataUpdateCoordinator to support multiple platforms
* cover
* Update for new model
* Update for new model
* Update tests/components/govee_ble/test_sensor.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* purge dead code
* backmerge from integration
* Update docstring
* Update docstring
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Initial xiaomi_ble integration
* black
* Update homeassistant/components/xiaomi_ble/config_flow.py
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Update homeassistant/components/xiaomi_ble/config_flow.py
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Apply suggestions from code review
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Update tests/components/xiaomi_ble/test_config_flow.py
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Update homeassistant/components/xiaomi_ble/sensor.py
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Update tests/components/xiaomi_ble/test_config_flow.py
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
* Remove debug code
* Need 'proper' MAC when running tests on linux
* Need to use proper MAC so validation passes
* Add tests for already_in_progress and already_configured
* copy test, add session fixture
* fix test
Co-authored-by: Ernst Klamer <e.klamer@gmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
* Switchbot add support for hygrometers
* Update CODEOWNERS
* Improve debug
* Remove redundant mention to temp unit
* Adopt FlowResultType
* Modify SwitchBot data within coordinator
* Increase logging for switchbot sensor
* Revert "Increase logging for switchbot sensor"
This reverts commit d8b377429c.
Co-authored-by: J. Nick Koston <nick@koston.org>
* Add ZHA config option for "enhanced light transition from an off-state"
* Default option to disabled
* Always disable "enhanced light transition" for ZHA LightGroups
* Rename _enhanced_light_transition to _zha_config_enhanced_light_transition
* Remove LightGroup check, as config option always disables for groups
* Remove duplicated line
* Remove duplicated line
* Move ZHA config transition line below other config line
* Renamed comments of renamed variable in tests
color_provided_while_off -> new_color_provided_while_off
* Enable "enhanced light transitions" for testing
* use base class attributes
* initial hue and saturation support
* spec is 65536 not 65535
* fixes
* enhanced current hue
* fix comparison
* clean up
* fix channel test
* oops
* report enhanced current hue
* rename variable
* default transition is for color commands not level
* no extra command for groups
* don't transition color change when light off -> on
* clean up
* update condition
* fix condition again...
* simplify
* simplify
* missed one
* rename
* simplify
* rename
* tests
* color_provided_while_off with no changes
* fix missing flag clear
* more tests for transition scenarios
* add to comment
* fix comment
* don't transition when force on is set
* stale comment
* dont transition when colors don't change
* remove extra line
* remove debug print :)
* fix colors
* restore color to 65535 until investigated
* Alexa: Only trigger doorbell event on actual state change to "ON"
* Remove unnecessary check for new_state
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
* First check state is `on` before checking the old state
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
* Bug fix for light platform, when async_turn_on recieves multiple keys.
* Changes according to @MartinHjelmare suggestion.
* Moved effect set call in BleBoxLightEntity.async_turn_on method.
* Added tests for effect in light platform. Added ValueError raise if effect not in effect list.
* Removed duplicated line from test as @MartinHjelmare suggested.
* Add switch platform
* Use lambda to get state
* Use async with timeout
* Add tests
* Use correct type
* Use Generic for coordinator
* Use TCoordinatorData
* Cleanup generic
* Simplify coordinator data update methods
* Use new entity naming style
* Remove unnecessary code
* Only the first word should be capitalised
* Suggested change
* improve typing in tests
* Improve typing intests
* Update tests/components/nextdns/__init__.py
* black
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
* Added tvLiftBox support.
* Changes after @epenet code review.
* After @epenet code review, dictionaries moved to relevant modules.
* Import path changed to full path.
* Removed redundant code in BLEBOX_TO_<platform>_DEVICE_CLASSES for switch and button platforms.
* Post isort on covers.
* Added tests, required version bump. As property was added inside dependency.
* Fix error whith HDD temperature report
There was a non handled error case, documented in issue https://github.com/home-assistant/core/issues/43812 back in 2020 and the fix wasn't applied
* Use get method instead of ignoring the sensor
* Update test values
Add idle state drive with unkown temp
* update Tests for system sensors api
* Fix booleans values
* Fix disk unique_id
There was a typo in the code
* Switch dispatcher to use async_run_hass_job
- Since we already wrap all the callbacks in catch_log_exception
we can use async_run_hass_job here
- The overhead of wrapping the call in a call_soon, queuing it
and running it later usually exceeds the overhead of running
the job itself
* fix size change during iteration
* fix out of order send
* fix missing mocking in unifi test
* Fix Legrand Home+ Control updating entities before the coordinator update had finished
* stray debug
* Changes accordingly to sidenotes given by @MartinHjelmare in pull #73834.
* Mini version bump according to notes in pull #73834.
* Error message fix, test adjustment.
* ESPHome use dhcp responses to update connection host of known devices
* Add test for dhcp
* Add another test to cover when there are no changes required
* Add config flow to AnthemAV integration
* Add importing of existing configuration
* Change setting to optional and add default value
* Use entity attribute
* Reduce changes by removing additional media player properties
* Remove title from translation
* Refactor config flow and fix PR comments
* Fix a failing test because of wrong renaming
* Add typing and use existing class and enum
* Bump dependency to v1.3.1
* Remove unecessary async_reload_entry
* Fix requirements_test_all after rebase
* Add const for timeout and remove async_block in test
* Reapply CodeOwner and configflow after rebase
* Remove name from configflow
* Fix manifest prettier failure
* Simplify code and avoid catching broad exception
* Removed unused strings and translations
* Avoid asserting hass.data
* Convert life360 integration to entity based
* Improve config_flow.py type checking
* Add tests for config flow
Fix form defaults for reauth flow.
* Cover reauth when config entry loaded
* Update per review (except for dataclasses)
* Restore check for missing location information
This is in current code but was accidentally removed in this PR.
* Fix updates from review
* Update tests per review changes
* Change IntegData to a dataclass
* Use dataclasses to represent fetched Life360 data
* Always add extra attributes
* Update per review take 2
* Tweak handling of bad last_seen or location_accuracy
* Fix type of Life360Member.gps_accuracy
* Update per review take 3
* Update .coveragerc
* Parametrize successful reauth flow test
* Fix test coverage failure
* Update per review take 4
* Fix config schema
* Enable Flame/Pilot switch
* Enable Flame/Pilot switch
* Update homeassistant/components/intellifire/switch.py
Co-authored-by: J. Nick Koston <nick@koston.org>
* Update homeassistant/components/intellifire/switch.py
Thats a great fix!
Co-authored-by: J. Nick Koston <nick@koston.org>
* write not update
* fixed forced upates
* removed data field
* Refactor to support update to backing library
* pre-push-ninja-style
* moving over
* fixed coverage
* removed tuple junk
* re-added description
* Update homeassistant/components/intellifire/translations/en.json
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* adressing PR comments
* actually store generated values
* Update homeassistant/components/intellifire/__init__.py
Way better option!
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Add Particulate Matter 2.5 of ZCL concentration clusters to ZHA component
* Fixed black and flake8 test
* New sensors and manufacturer cluster to support IKEA STARKVIND (with quirk)
* Isort and codespell fixes
* Instead using the fan cluster, i've created a Ikea air purifier cluster/channel that supports all sensors and fan modes
* update sensors to support the new ikea_airpurifier channel
* Fix black, flake8, isort
* Mylint/mypy fixes + Use a TypedDict for REPORT_CONFIG in zha #73629
* Last fix for test_fan.py
* fix fan test
Co-authored-by: David F. Mulcahey <david.mulcahey@me.com>
* Make energy value validation a bit less aggressive
Attempt to solve issue 69600 introduced by previous fix for issue
59285.
- Introduce a tolerance factor for energy value validation.
- Only skip update the specific invalid energy entity. An energy entity
with invalid values will now show "State unknown".
* Remove the tolerance factor. Let's just ignore the specific invalid energy entity.
* use new async integration library
* migrate to new async integration library
* updated unit tests
* updated logger
* fix tests and improve test coverage
* fix test
* fix requirements
* time control to fix tests
* Add ability to use user & pw not in stream url
* Increase test coverage to 100%
* Increase test coverage
* Verify that stream source includes user:pass
* Code review: refactor test to use MockConfigEntry
* Code review: Improve test docstring
* Edit comment; retrigger CI.
Co-authored-by: Dave T <davet2001@users.noreply.github.com>