* 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>
* Moved to AIOAladdinConnect API
* Added callback logic for door status
* close unused connections
* Close connection after verification
* Matched to current version
* Matched __init__.py to current release
* Matched cover.py to existing version
* added missing awaits
* Moved callback
* Bumped AIOAladdinConnect to 0.1.3
* Removed await from callback config
* Finished tests
* Added callback test
* Bumped AIOAladdinConnect to 0.1.4
* Finished tests
* Callback correct call to update HA
* Modified calls to state machine
* Modified update path
* Removed unused status
* Bumped AIOAladdinConnect to 0.1.7
* Revised test_cover cover tests and bumped AIOAladdinConnect to 0.1.10
* Bumped AIOAladdinConnect to 0.1.11
* Bumped AIOAladdinConenct to 0.1.12
* Bumped AIOAladdinConnect to 0.1.13
* Bumped AIOAladdinConnect to 0.1.14
* Added ability to handle multiple doors
* Added timout errors to config flow
* asyncio timout error added to setup retry
* Cleanup added to hass proceedure
* Bumped AIOAladdinConnect to 0.1.16
* Bumped AIOAladdinConnect to 0.1.18
* Bumped AIOAladdinConnect to 0.1.19
* Bumped AIOAladdinConnect to 0.1.20
* Addressed recommended changes: SCAN_INTERVAL and spelling
* Moved to async_get_clientsession and bumped AIOAladdinConnect to 0.1.21
* Missing test for new code structure
* removed extra call to write_ha_state, callback decorator, cleaned up tests
* Update tests/components/aladdin_connect/test_init.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Removed extra_attributes.
* Added typing to variable acc
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
List more private and link-local IP networks
The IPv6 link-local network is especially important as without it
local accounts don't work on IPv6-capable networks with no IPv6 DHCP
server.
* Speed up generation of template states
* tweak
* cache
* cache hash
* weaken
* Revert "weaken"
This reverts commit 4856f50080.
* lower cache size as it tends to be the same ones over and over
* lower cache size as it tends to be the same ones over and over
* lower cache size as it tends to be the same ones over and over
* cover
* Update homeassistant/helpers/template.py
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* id reuse is possible
* account for iterting all sensors
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
* Initial orjson support take 2
Still need to work out problem building wheels
--
Redux of #72754 / #32153 Now possible since the following is solved:
ijl/orjson#220 (comment)
This implements orjson where we use our default encoder. This does not implement orjson where `ExtendedJSONEncoder` is used as these areas tend to be called far less frequently. If its desired, this could be done in a followup, but it seemed like a case of diminishing returns (except maybe for large diagnostics files, or traces, but those are not expected to be downloaded frequently).
Areas where this makes a perceptible difference:
- Anything that subscribes to entities (Initial subscribe_entities payload)
- Initial download of registries on first connection / restore
- History queries
- Saving states to the database
- Large logbook queries
- Anything that subscribes to events (appdaemon)
Cavets:
orjson supports serializing dataclasses natively (and much faster) which
eliminates the need to implement `as_dict` in many places
when the data is already in a dataclass. This works
well as long as all the data in the dataclass can also
be serialized. I audited all places where we have an `as_dict`
for a dataclass and found only backups needs to be adjusted (support for `Path` needed to be added for backups). I was a little bit worried about `SensorExtraStoredData` with `Decimal` but it all seems to work out from since it converts it before it gets to the json encoding cc @dgomes
If it turns out to be a problem we can disable this
with option |= [orjson.OPT_PASSTHROUGH_DATACLASS](https://github.com/ijl/orjson#opt_passthrough_dataclass) and it
will fallback to `as_dict`
Its quite impressive for history queries
<img width="1271" alt="Screen_Shot_2022-05-30_at_23_46_30" src="https://user-images.githubusercontent.com/663432/171145699-661ad9db-d91d-4b2d-9c1a-9d7866c03a73.png">
* use for views as well
* handle UnicodeEncodeError
* tweak
* DRY
* DRY
* not needed
* fix tests
* Update tests/components/http/test_view.py
* Update tests/components/http/test_view.py
* black
* templates
* Speed up subscribing to mqtt topics
* update tests
* Remove extra function wrapper
* Recover debug logging for subscriptions
* Small changes and test
* Update homeassistant/components/mqtt/client.py
* Update client.py
Co-authored-by: jbouwh <jan@jbsoft.nl>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Add FanEntity type hint checks to pylint plugin
* Add test
* Add test
* Review comments
* Adjust tests
* Rename variable
* also test keyword_only args
* Use docstrings
* Fix tests
* Better return type
* Add multiple config entry support for Nest
* Set a config entry unique id based on nest project id
* Add missing translations and remove untested committed
* Remove unnecessary translation
* Remove dead code
* Remove old handling to avoid duplicate error logs
* Support multiple config entries at once
* Add test coverage for multiple config entries
* Add support for multiple config entries to google config flow
* Clear hass.data when unloading config entry
* Make google config flow defensive against reuse of the same account
* Assign existing google config entries a unique id
* Migrate entities to new unique id format
* Support muliple accounts per oauth client id
* Fix mypy typing errors
* Hard fail to keep state consistent, removing graceful degredation
* Remove invalid entity regsitry entries
* Ensure config schema validation
* Use correct schema for device_tracker
* Remove schema validation from the platform setup
* Remove loop to build schema
* Update the nest integration to be useable fully from the config flow
* Support discovery in nest config flow
* Remove configuration entries
* Remove unused import
* Remove dead code
* Update homeassistant/components/nest/strings.json
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Remove commented out code
* Use config flow for app auth reauthentication path
* Improves for re-auth for upgrading existing project and creds
* More dead code removal
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Remove outdated code
* Update homeassistant/components/nest/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>