Commit Graph

20063 Commits (caaa03536b51101656404e11f944579965793900)

Author SHA1 Message Date
Joost Lekkerkerker d9e9b55a4b
Add icon translations to Trafikverket Ferry (#112321)
* Add icon translations to Trafikverket Ferry

* Add icon translations to Trafikverket Ferry
2024-03-05 12:58:51 +01:00
Joost Lekkerkerker 6e99ca0d8a
Add icon translations to Trafikverket Train (#112322)
* Add icon translations to Trafikverket Train

* Add icon translations to Trafikverket Train
2024-03-05 12:58:19 +01:00
Robert Svensson 4437b3bc97
Fix deCONZ light entity might not report a supported color mode (#112116)
* Handle case where deCONZ light entity might not report a supported color mode

* If in an unknown color mode set ColorMode.UNKNOWN

* Fix comment from external discussion
2024-03-05 11:55:22 +01:00
Joost Lekkerkerker 0b4fafddbc
Add icon translations to Systemmonitor (#112300)
* Add icon translations to Systemmonitor

* Add icon translations to Systemmonitor
2024-03-05 11:52:50 +01:00
Joost Lekkerkerker 0e0c1d337f
Add icon translations to P1 monitor (#111998)
* Add icon translations to P1 monitor

* Add icon translations to P1 monitor
2024-03-05 08:50:46 +01:00
Jan Bouwhuis 0c2cf881ac
Deprecate old config options for MQTT json light (#111676)
* add deprecaction

* Deprecate old config options for mqtt json light

* Do not deprecate brightness flag

* Enable brightness support by default

* Keep `false` as default for brightness flag

* Add warnings and register issue

* log warning and register on use of color_mode flag

* Remove redundant cv.deprecated logging + follow up comments
2024-03-05 08:49:05 +01:00
Joost Lekkerkerker b8be90efa8
Add icon translations to Rituals perfume genie (#112213)
* Add icon translations to Rituals perfume genie

* Add icon translations to Rituals perfume genie
2024-03-05 08:45:47 +01:00
Joost Lekkerkerker a3a758bd17
Add icon translations to Ring (#112212)
* Add icon translations to Ring

* Add icon translations to Ring
2024-03-05 08:45:33 +01:00
Joost Lekkerkerker 926159ab9a
Add icon translations to RDW (#112203)
* Add icon translations to RDW

* Add icon translations to RDW
2024-03-05 08:45:10 +01:00
Robert Svensson ab4750c2ea
Remove unnecessary access to UniFi hub object in tests (#112275)
* Remove unnecessary access to UniFi hub object

* Split strings

* Skip + on concatenating f-strings

* Use single quotes inside double quotes
2024-03-05 08:23:17 +01:00
J. Nick Koston 8b017016b0
Refactor integration platforms to import in the executor (#112168)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-03-04 19:21:18 -10:00
J. Nick Koston 1e173e82d0
Add support for preloading platforms in the loader (#112282)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-03-04 16:33:12 -10:00
J. Nick Koston 2c179dc5fb
Reduce some linear searches to cleanup the device registry (#112277)
Some of the data we had to search for was already available
in a dict or underlying data structure. Make it available
instead of having to build it every time.

There are more places these can be used, but I only did
the device registry cleanup for now
2024-03-04 20:59:12 -05:00
Luke Lashley 59df20f1d4
Bump python_roborock to 0.40.0 (#112238)
* bump to python_roborock 0.40.0

* manifest went away in merge?
2024-03-04 20:28:53 +01:00
Erik Montnemery 7e7f25c859
Add config flow to homeworks (#112042) 2024-03-04 19:09:39 +01:00
Brett Adams b5528de807
Add sensor platform to Teslemetry (#109088)
* Adding Energy

* Adding Energy

* Work in progress

* Add fixtures

* Add product info

* Add sensors

* Add icons

* Update metadata

* Use SensorEntityDescription for Energy

* Use ENERGY_STORAGE

* Add tests

* Fix coverage

* Update wall connector precision and units

* Change devices

* Fix serial number

* Add icons and VIN to wall connector

* Fix serial number again

* Update snapshots

* Use timestamp for minutes to arrival

* Cleanup snapshot

* Improvements

* Update fixture

* Add "code" to translations

* Add "code" to snapshot

* Use async_add_entities once

* Disable a bunch of sensors

* Ruff

* Improve fixture and test coverage

* Regen Snapshots

* Add init to coordinator
2024-03-04 18:42:56 +01:00
Xiretza b195c3fa7b
Fix spaceapi attribute for closed icon (#108596)
spaceapi: fix attribute for closed icon

The JSON field is "state.icon.closed", not "state.icon.close".
2024-03-04 18:22:18 +01:00
hopkins-tk 3d1fbe444e
Fix authentication issues for asekopool (#99495)
* fix: handle authentication issues for asekopool

* fix: handle authentication issues for asekopool

* feat: add config migration

* feat: add re-authentication step

* fix: add reauth message

* fix: add tests for config flow

* fix: tests clean up

* Update homeassistant/components/aseko_pool_live/__init__.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/components/aseko_pool_live/__init__.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* fix: Reformat code

* Fix bad merge

* Really fix bad merge

* Update config_flow.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-03-04 17:20:46 +01:00
Joost Lekkerkerker 91b2dd4b83
Add icon translations to Sensibo (#112222)
* Add icon translations to Sensibo

* Add icon translations to Sensibo

* Add icon translations to Sensibo
2024-03-04 17:20:27 +01:00
belangp 58d0420a6b
Add Hyperion sensor to report active priority on each instance (#102333)
* Implement code review comments

* Update homeassistant/components/hyperion/sensor.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-03-04 17:20:20 +01:00
Joost Lekkerkerker 2db0da3915
Add icon translations to Renault (#112205)
* Add icon translations to Renault

* Add icon translations to Renault
2024-03-04 15:46:14 +01:00
Joost Lekkerkerker d811125eb7
Add icon translations to Rainbird (#112200)
* Add icon translations to Rainbird

* Add icon translations to Rainbird
2024-03-04 15:26:41 +01:00
RoboMagus b381922a20
Issues template function (#95206)
* Add 'issues' template function for listing active issues.

* Add issue template function test

* Add 'issue' template function for getting specific issue by domain and issue_id

* Remove comment

* Fix function description

* Remove reduntant function,
Fix tests

* remove pass_context

* remove issues filter

Co-authored-by: Erik Montnemery <erik@montnemery.com>

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-03-04 14:22:14 +01:00
J. Nick Koston 917f0f849d
Import in the executor by default for core integrations (#112127)
* Import in the executor by default for core integration

* merge correct branch in

* Group loading of platforms in the import executor

* adjust test

* remove other pr

* Fix async_prepare_setup_platform test

The message changed because the order changed but was not caught before
merge because it required the combination of PRs to change
the error message

* fix

* tweak

* fix

* self review

* review

* fix hue mocking

* Update homeassistant/loader.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* lint

* Fix async_get_component loading in the executor when the module is already loaded

The sys.modules check was incorrect (only on dev)

* fix

* Avoid multiple executor jobs with concurrent calls to async_get_component

Return a future that can be awaited if the component is
curently being loaded

* adjust

* coverage

* coverage

* concurrent platforms load test

* doc strings

* coverage

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-03-04 06:29:32 -05:00
Erik Montnemery c58828aac0
Remove unused test helper mock_area_registry (#112172) 2024-03-04 06:09:27 -05:00
Alberto Geniola 86039de3cd
Add local API support to elmax (#94392)
* Add support for local (lan) panel integration

* Fix merge conflicts

* Remove executable flag from non-executable files

* Fix tests

* Update homeassistant/components/elmax/__init__.py

Shorten comment

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Fix typehint

* Rename DummyPanel into DirectPanel

* Update homeassistant/components/elmax/__init__.py

Rewording

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/components/elmax/__init__.py

Rewording

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Refactor option step into menu step

* Change requirement statement

* Refactor dictionary key entries to use existing constants

* Align step names to new constants

* Align step names to new constants amd align tests

* Align step names to new constants amd align tests

* Align step names to new constants

* Simplify logic to handle entire entry instead of a portion of the state

* Simplify working mode checks

* Add data_description dictionary to better explain SSL and FOLLOW_MDSN options

* Add support for local (lan) panel integration

* Fix merge conflicts

* Remove executable flag from non-executable files

* Fix tests

* Update homeassistant/components/elmax/__init__.py

Shorten comment

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Fix typehint

* Rename DummyPanel into DirectPanel

* Update homeassistant/components/elmax/__init__.py

Rewording

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Update homeassistant/components/elmax/__init__.py

Rewording

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Refactor option step into menu step

* Change requirement statement

* Refactor dictionary key entries to use existing constants

* Align step names to new constants

* Align step names to new constants amd align tests

* Align step names to new constants amd align tests

* Align step names to new constants

* Simplify logic to handle entire entry instead of a portion of the state

* Simplify working mode checks

* Add data_description dictionary to better explain SSL and FOLLOW_MDSN options

* Add newline at end of file

* Remove CONF_ELMAX_MODE_DIRECT_FOLLOW_MDNS option

* Fix Ruff pre-check

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-03-04 11:39:13 +01:00
Aidan Timson 4c67670566
Update System Bridge to support version 4.x.x and above (#107957)
* Update System Bridge to support version 4.x.x and above

Update systembridgeconnector to version 4.0.0.dev4

Update system_bridgeconnector version to 4.0.0.dev6

Refactor WebSocket client handling in config_flow.py

Update strings

Update data handling

Add default field values to SystemBridgeCoordinatorData

Add version check and issue creation for unsupported System Bridge versions

Update coordinator.py to set disks and memory to None

Update system bridge coordinator to use token instead of API key

Update systembridgeconnector version to 4.0.0.dev7

Update systembridgeconnector version to 4.0.0.dev8

Update systembridgeconnector version to 4.0.0.dev9

Changes

Update units

Fix GPU memory calculation in sensor.py

Update GPU memory unit of measurement

Add translation keys for binary sensor names

Cleanup

Add async_migrate_entry function for entry migration

Update systembridgeconnector version to 4.0.0.dev10

Update systembridgeconnector version to 4.0.0.dev11

Add version check and authentication handling

Update token description in strings.json

Fix skipping partitions without data in system_bridge sensor

Update systembridgeconnector version to 4.0.0.dev12

Update systembridgeconnector version to 4.0.0

Add check for unsupported version of System Bridge

Update systembridgeconnector version to 4.0.1

Update debug log message in async_setup_entry function

Remove debug log statement

Fixes

Update key to token

Update tests

Update tests

Remove unused import in test_config_flow.py

Remove added missing translations for another PR

Refactor CPU power per CPU calculation

Make one liner into lambda

Refactors

Fix exception type in async_setup_entry function

Move checks to class and set minor version

Remove unnecessary comment in gpu_memory_free function

Remove translation_key for memory_used_percentage sensor

Reverse string change

Update token placeholder in strings.json

Remove suggested_display_precision from sensor descriptions

Remove suggested_display_precision from GPU sensor setup

Refactor sensor code

* Update migrate entry

* Refactor GPU-related functions to use a decorator

* Move per cpu functions to use decorator

* Refactor functions to use decorators for data availability

* Remove CONF_API_KEY from config entry data

* Add test for migration

* Refactor import statement in test_config_flow.py
2024-03-04 11:14:46 +01:00
J. Nick Koston 40c0b4caf0
Import recorder and common recorder platforms before asyncio starts (#112131) 2024-03-03 22:03:30 -10:00
Jan Bouwhuis c13231fc00
Improve mqtt value template error logging (#110492)
* Refactor mqtt value template error logging

* Remove import
2024-03-04 08:49:12 +01:00
J. Nick Koston 5227976aa2
Group loading of platforms in the import executor (#112141)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-03-03 21:32:19 -10:00
J. Nick Koston 943996b60b
Avoid multiple executor jobs with concurrent calls to async_get_component (#112155) 2024-03-03 20:22:31 -10:00
Adam Goode a049d0e846
Add types throughout the prometheus tests (#112156) 2024-03-03 20:13:35 -08:00
J. Nick Koston f4b2c9b569
Fix async_get_component loading in the executor when the module is already loaded (#112153) 2024-03-03 17:56:50 -10:00
J. Nick Koston bef8376f83
Use MockConfigEntry in hue tests (#112149)
needed for https://github.com/home-assistant/core/pull/112141
2024-03-03 21:21:33 -05:00
J. Nick Koston 331989de4c
Migrate condition/state/trigger helper to use async_get_platform (#112144)
Currently these would always load the platform in the loop
if it was not already loaded
2024-03-03 21:20:47 -05:00
J. Nick Koston f1eab3f11f
Preload config flow if it exists when loading a component (#112145)
Since config_entries always requires the config_flow to be loaded
to check for migrations, load it if we know it exists when loading
the underlying integration
2024-03-03 21:16:50 -05:00
J. Nick Koston d50b4ccd62
Split up hassio coordinator and data into new file to allow preload (#112147)
* Split up hassio coordinator and data into new file to allow preload

Since we cannot mark hassio as having a config_flow, it will
not get preloaded and since cloud will almost always load right
after it and block the import executor, we want to preload
the hassio config_flow and platform modules so the other
dependants can continue on while cloud is being imported
to not delay startup

* tweak

* tweak
2024-03-03 21:16:02 -05:00
Robert Svensson ec8d23d0af
Fix places not changed to hub in Axis tests (#112128) 2024-03-03 20:45:06 -05:00
Allen Porter 5cb5a1141f
Limit rainbird aiohttp client session to a single connection (#112146)
Limit rainbird to a single open http connection
2024-03-03 19:54:05 -05:00
David F. Mulcahey f9e00ed45b
Fix ZHA groups page (#112140)
* Fix ZHA groups page

* test
2024-03-03 19:17:02 -05:00
J. Nick Koston 60f81c8340
Fix async_prepare_setup_platform test (#112143) 2024-03-03 14:16:44 -10:00
J. Nick Koston d6cbadba3e
Ensure setup loads top level component before platforms (#112057) 2024-03-03 11:42:16 -10:00
Joost Lekkerkerker 3c960b7d4e
Add icon translations to Melnor (#111906)
* Use default icon for Melnor

* Use default icon for Melnor
2024-03-03 21:33:33 +01:00
J. Nick Koston ec1400d392
Fix flakey tplink test (#112135)
The test here was assuming the first slow was the one it
wanted, but sometimes the other flow wins the race
2024-03-03 21:29:45 +01:00
J. Nick Koston ba9733e90b
Try to preload the config platform when loading a component (#112104) 2024-03-03 10:23:08 -10:00
J. Nick Koston 9af12a0639
Avoid calling async_get_component twice for each component being setup (#112096)
We already have the component so we can pass it to
async_process_component_config to avoid having to
look it up again
2024-03-03 12:48:07 -05:00
Robert Svensson 4eb24b2db7
Clean up setup and teardown of Axis integration (#112120) 2024-03-03 12:42:44 -05:00
Luke Lashley 74f1420410
Add the ability to resume cleaning on start button (#112122) 2024-03-03 12:41:31 -05:00
G Johansson cdd7b94a95
Move all System Monitor updates into single Data Update Coordinator (#112055) 2024-03-03 07:24:04 -10:00
Joakim Plate 13653be09b
Add event platform to rfxtrx (#111526) 2024-03-03 17:15:54 +01:00
Åke Strandberg 073fcfcd6f
Add tests for number of devices created in myuplink (#111816)
* Add tests for number of devices created

* Change default fixture to 2 devices in one system

* Update snapshot

* Change deviuce to test

* Merge tests to one module
2024-03-03 14:27:24 +01:00
Joost Lekkerkerker f02e60533d
Add icon translations to Nexia (#111980)
* Add icon translations to Nexia

* Add icon translations to Nexia
2024-03-03 14:08:33 +01:00
Álvaro Fernández Rojas 25ba046ff1
Fix flakey airzone_cloud tests by avoiding creation of the websocket (#112102) 2024-03-03 00:56:14 -10:00
Jan-Philipp Benecke 25551fa938
Move Ping binary sensor attributes to sensor entities (#112004)
* Move Ping binary sensor attributes to sensor entities

* Process code review

* Update snapshot
2024-03-03 11:08:28 +01:00
J. Nick Koston 6a243d6705
Preload platform integrations to better group executor usage (#112010) 2024-03-02 23:03:35 -10:00
J. Nick Koston c8cb0ff61d
Avoid trying to import platforms that do not exist (#112028)
* Avoid trying to import platforms that do not exist

* adjust

* fixes

* cleanup

* cleanup

* cleanup

* Apply suggestions from code review

* docs

* fixes

* fixes

* comment

* coverage

* coverage

* coverage

* Switch config to use async_get_component

This was another path where integrations that were marked to load in the executor
would be loaded in the loop

* Switch config to use async_get_component/async_get_platform

This was another path where integrations that were marked to load in the executor
would be loaded in the loop

* merge

* refactor

* refactor

* coverage

* preen

* preen
2024-03-02 22:14:28 -05:00
J. Nick Koston 6421a08ba8
Avoid expensive inspect calls in config validators (#112085)
* Avoid expensive inspect calls in config validators

inspect has a performance problem https://github.com/python/cpython/issues/92041

We now avoid calling inspect unless we are going to log

* remove unused

* reduce

* get_integration_logger
2024-03-02 21:50:35 -05:00
J. Nick Koston 3808e8b0bc
Switch config to use async_get_component/async_get_platform (#112071) 2024-03-02 13:56:25 -10:00
J. Nick Koston 08897137ff
Pre-import more frontend deps to avoid importing when the event loop is running (#112031) 2024-03-02 13:44:06 -10:00
elmurato 9e428c6c5f
Fix setup failure due to temporary DNS issue in Minecraft Server (#112068)
Change ConfigEntryError to ConfigEntryNotReady on failed init
2024-03-02 17:28:27 -05:00
J. Nick Koston 546fc1e282
Refactor file_upload to avoid janus dep (#112032) 2024-03-02 10:58:08 -10:00
Álvaro Fernández Rojas 61e28291be
Update aioairzone-cloud to v0.4.5 (#112034)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-03-02 19:14:00 +01:00
Robert Svensson ece5587e1f
Streamline naming in the Axis integration (#112044)
* Rename device.py to hub.py

* Rename AxisNetworkDevice to AxisHub

* Move hub.py into hub package

* Rename get_axis_device to get_axis_api

* Split out get_axis_api to its own module

* Rename device object to hub

* Rename device to api in config flow

* Convenience method to get hub
2024-03-02 11:32:51 -05:00
Jan-Philipp Benecke 196089e8b7
Remove deprecated `hass.components.hassio` usage (#111878) 2024-03-02 15:38:31 +01:00
J. Nick Koston c0f7ade92b
Convert command_line to use asyncio for subprocesses (#111927)
* Convert command_line to use asyncio for subprocesses

* fixes

* fix

* fixes

* more test fixes

* more fixes

* fixes

* preen
2024-03-01 23:15:10 -05:00
Joost Lekkerkerker dd2d7e579d
Add icon translations to Opensky (#111994)
* Add icon translations to Opensky

* Add icon translations to Opensky
2024-03-02 00:56:34 +01:00
Joost Lekkerkerker 2e12e5cda1
Add icon translations to Netgear LTE (#111974)
* Add icon translations to Netgear LTE

* Add icon translations to Netgear LTE

* Update homeassistant/components/netgear_lte/icons.json
2024-03-02 00:35:17 +01:00
Joost Lekkerkerker 4ae7102f63
Add icon translations to Modern Forms (#111933)
* Add icon translations to Modern Forms

* Add icon translations to Modern Forms
2024-03-02 00:20:21 +01:00
Paulus Schoutsen 0628c26ea0
Update reporting for media_source.async_resolve_media (#111969)
* Update reporting for media_source.async_resolve_media

* Don't raise on core

* Fix tests
2024-03-01 16:18:58 -05:00
Marc Mueller 1f173aff17
Fix loader test warning (#111965) 2024-03-01 19:26:44 +01:00
Arie Catsman 99f08fb417
Fix LingeringTask after test completion in enphase_envoy (#111940) 2024-03-01 07:12:08 -10:00
gibwar 52fe0a5e96
Fix utility meter reset without tarrifs (#102884)
* Fix utility meter reset without tarrifs

When using a utility_meter helper set up with a "Meter reset cycle" of
"No cycle" it is impossible to properly reset the meter to 0 and utilize
the "last reset" and "last period" attributes on the helper.

With these changes the service call can now directly reset a meter in
such a configuration and the UI selector has been updated to include
utility meters in the selection list.

Fixes #96920

* Undo UI target selection modes

As requested to not cause confusion by being able to reset individual
meters when using multiple tariffs.

* Adjust logic to only reset standalone sensors

The original logic would allow resetting meters with multiple tariffs
which was an unintended side effect.
2024-03-01 16:44:24 +01:00
Joost Lekkerkerker e43c62af1e
Add icon translations to Litterrobot (#111899) 2024-03-01 13:40:37 +01:00
Joost Lekkerkerker 1f3b0a4371
Add icon translations to Minecraft Server (#111928)
* Add icon translations to Minecraft Server

* Add icon translations to Minecraft Server

* Add icon translations to Minecraft
2024-03-01 07:20:51 -05:00
Erik Montnemery 3a5e0c14bf
Remove config flow specifics from FlowResult (#111932)
* Remove config flow specifics from FlowResult

* Improve docstring

* Update pylint rules
2024-03-01 13:07:13 +01:00
G Johansson 9989a63cdf
Add reconfigure step to config flow (#108794)
* Initial commit reconfigure

* test config config_entries

* Fix reconfigure

* test_config_entries

* review comment

* No reconfigure if reauth ongoing

* Fix tests

* Fix tests

* handle source creating flows

* combine

* No black

* Also check reconfigure in reauth flow

* Fix support

* Add entry id

* reset data entry flow

* Mods

* context data

* reset formatting

* Fix config flow platforms

* Fix tests

* Fix step message

* Handling reconfigure step

* Fix more tests

* Config entries tests

* entry_id always means reconfigure

* Mods

* Remove no longer valid exception

* Fixes

* reset silabs test

* dev reg

* resets

* assist pipeline

* Adjust config_entries

* Fix

* Fixes

* docstrings

* Review comment

* docstring
2024-03-01 12:29:35 +01:00
Joost Lekkerkerker cc2ce4f4a6
Add icon translations to Flipr (#111540) 2024-03-01 12:25:34 +01:00
Jevgeni Kiski ce3d774222
Add Vallox filter replacement date (#111391)
* Vallox: reset filter button

* Better names

* Change from button to date platform

* Review

* Fix

* Drop ValloxDateEntityDescription

* Stale docstrings

* Stale docstring
2024-03-01 10:02:50 +01:00
Michael Hansen 0d0b64d351
Move HassSetPosition to homeassistant domain (#111867)
* Move HassSetPosition to homeassistant domain

* Add test for unsupported domain with HassSetPosition

* Split service intent handler

* cleanup

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-02-29 21:53:52 -05:00
Christopher Bailey 5890a7d38c
Add person tracking for UniFi Protect (#111289) 2024-02-29 16:26:24 -10:00
J. Nick Koston c1750f7c3a
Fix circular imports in core integrations (#111875)
* Fix circular imports in core integrations

* fix circular import

* fix more circular imports

* fix more circular imports

* fix more circular imports

* fix more circular imports

* fix more circular imports

* fix more circular imports

* fix more circular imports

* adjust

* fix

* increase timeout

* remove unused logger

* keep up to date

* make sure its reprod
2024-02-29 21:04:41 -05:00
J. Nick Koston 25510fc13c
Limit executor imports to a single thread (#111898)
* Limit executor imports to a single thread

* test for import executor

* test for import executor

* test for import executor

* fixes

* better fix
2024-02-29 21:02:13 -05:00
J. Nick Koston 3b93c21d9d
Switch influxdb to use a SimpleQueue (#111798) 2024-02-29 12:49:43 -10:00
Robert Svensson b39b2d161c
Deconz fix gradient color mode (#111890)
* Fix deconz gradient colormode

* Fix gradient light not reporting color mode in deCONZ
2024-02-29 22:43:47 +01:00
Erik Montnemery 9ec9ac4fd4
Migrate integrations u-z to generic flowhandler (#111866) 2024-02-29 20:08:16 +01:00
Erik Montnemery 6fe28d3764
Migrate integrations a-d to generic flowhandler (#111861) 2024-02-29 20:07:14 +01:00
J. Nick Koston ba4120d779
Fallback to event loop import on deadlock (#111868) 2024-02-29 09:01:03 -10:00
Michael Hansen f0deae319e
Use correct service name with Wyoming satellite + local wake word detection (#111870)
* Use correct service name with satellite + local wake word detection

* Don't load platforms for satellite services

* Update homeassistant/components/wyoming/data.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* Fix ruff error

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-02-29 13:09:38 -05:00
Joost Lekkerkerker 36a5c71dc7
Add icon translations to Lastfm (#111855)
* Add icon translations to Lastfm

* Add icon translations to Lastfm
2024-02-29 17:01:09 +01:00
Robert Resch bfdc640e04
Remove unused translation key from Ecovacs mower (#111754)
* Remove unused translation key

* Update snapshots
2024-02-29 10:54:02 -05:00
Erik Montnemery a0e558c457
Add generic classes BaseFlowHandler and BaseFlowManager (#111814)
* Add generic classes BaseFlowHandler and BaseFlowManager

* Migrate zwave_js

* Update tests

* Update tests

* Address review comments
2024-02-29 16:52:39 +01:00
David F. Mulcahey 73b6e2bac8
Add support for ZHA entities exposed by Zigpy quirks (#111176)
* Add counter entities to the ZHA coordinator device

* rework to prepare for non coordinator device counters

* Initial scaffolding to support quirks v2 entities

* update for zigpy changes

* add assertion error message

* clean up test

* update group entity discovery kwargs

* constants and clearer names

* apply custom device configuration

* quirks switches

* quirks select entities

* quirks sensor entities

* update discovery

* move call to super

* add complex quirks v2 discovery test

* remove duplicate replaces

* add quirks v2 button entity support

* add quirks v2 binary sensor entity support

* fix exception in counter entitiy discovery

* oops

* update formatting

* support custom on and off values

* logging

* don't filter out entities quirks says should be created

* fix type alias warnings

* sync up with zigpy changes and additions

* add a binary sensor test

* button coverage

* switch coverage

* initial select coverage

* number coverage

* sensor coverage

* update discovery after rebase

* coverage

* single line

* line lengths

* fix double underscore

* review comments

* set category from quirks in base entity

* line lengths

* move comment

* imports

* simplify

* simplify
2024-02-29 10:38:21 -05:00
J. Nick Koston f59268b2ee
Include filename in exception when loading a json file fails (#111802)
* Include filename in exception when loading a json file fails

* fix
2024-02-29 10:30:29 -05:00
Joost Lekkerkerker b70eea7fb2
Add icon translations to IPP (#111846)
* Add icon translations to IPP

* Add icon translations to IPP
2024-02-29 16:09:47 +01:00
J. Nick Koston 63c3d6e113
Fix race in config entry setup again (#111800)
Because the setup again was scheduled as a task, it would
not unset self._async_cancel_retry_setup in time and we would
try to unsub self._async_cancel_retry_setup after it had already
fired. Change it to call a callback that runs right away so it
unsets self._async_cancel_retry_setup as soon as its called
so there is no race

fixes #111796
2024-02-29 15:47:36 +01:00
Jan-Philipp Benecke bc6b4d01c8
Deprecate `hass.components` and log warning if used inside custom component (#111508)
* Deprecate @bind_hass and log error if used inside custom component

* Log also when accessing `hass.components`

* Log warning only when `hass.components` is used

* Change version

* Process code review
2024-02-29 12:25:46 +01:00
Michael Hansen 0985a7ab91
Bump intents and add sentence tests (#111791) 2024-02-28 23:25:33 -05:00
Robert Svensson 458391ee2b
Axis improve coverage binary tests (#111758)
* Parametrize binary sensor tests

* Add test coverage to the different *guard apps

* Add object analytics tests
2024-02-28 23:14:50 -05:00
Álvaro Fernández Rojas 224f6dbdbb
Use proper constant in Airzone Cloud climate tests (#111747)
tests: airzone_cloud: avoid using airzone const

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-02-28 23:14:08 -05:00
Allen Porter 1eac7bcbec
Fix calendar trigger to survive config entry reloads (#111334)
* Fix calendar trigger to survive config entry reloads

* Apply suggestions from code review

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-29 03:45:51 +01:00
J. Nick Koston 59b7f8d103
Fix tplink blocking startup by waiting for discovery (#111788)
* Fix tplink blocking statup by waiting for discovery

* remove started
2024-02-28 21:34:08 -05:00
J. Nick Koston b11e97e132
Fix flux_led blocking startup by waiting for discovery (#111787)
* Avoid blocking startup by waiting for discovery in flux_led

* remove started discovery
2024-02-28 21:16:38 -05:00
J. Nick Koston 3fbeb7e400
Fix time trigger tests with leap year (#111785) 2024-02-28 14:51:27 -10:00
Jan-Philipp Benecke f31244bac4
Add normalized name registry items base class (#111666)
* Add normalized name base registry items class

* Add tests
2024-02-29 01:31:33 +01:00
puddly 016f2c7581
Improve ZHA group color modes (#111669)
* Set the color mode based on supported color modes

* Replace `zha` with `tuya` in unit test
2024-02-28 17:20:19 -05:00
Andy cd5377367a
Add Ecovacs goat switch entities (#111751) 2024-02-28 20:43:53 +01:00
puddly 4ec75d6ca7
Use new zigpy OTA providers for ZHA (#111159)
* Use `None` instead of `"unknown"` when the current version is unknown

* Only use the current file version from the OTA notification

* Use `sw_version`, if available, and update `current_file_version`

* Assume the current version is the latest version

* Fix lint errors

* Use `image` instead of `firmware`

* Include a changelog if updates expose it

* Clear latest firmware only after updating the installed version

* Bump minimum zigpy version to 0.63.0

* Create a data update coordinator to consolidate updates

* Fix overridden `async_update`

* Fix most unit tests

* Simplify `test_devices` to fix current tests

* Use a dict comprehension for creating mocked entities

* Fix unit tests (thanks @dmulcahey!)

* Update the currently installed version on cluster attribute update

* Drop `PARALLEL_UPDATES` now that we use an update coordinator

* Drop `_reset_progress`, it is already handled by the update component

* Do not update the progress if we are not supposed to be updating

* Ignore latest version (e.g. if device attrs changed) if zigpy rejects it

* Clean up handling of command id in `Ota.cluster_command`

* Start progress at 1%: 0 and False are considered equal and are filtered!

Use `ceil` instead of remapping 1-100

* The installed version will be auto-updated when the upgrade succeeds

* Avoid 1 as well, it collides with `True`

* Bump zigpy to (unreleased) 0.63.2

* Fix unit tests

* Fix existing unit tests

Send both event types

Globally enable sending both event types

* Remove unnecessary branches

* Test ignoring invalid progress callbacks

* Test updating a device with a no longer compatible firmware
2024-02-28 14:38:04 -05:00
J. Nick Koston 327796a750
Eagerly unload config entries in tests (#111707)
This is a small latancy reduction to reduce test wall clock time
since it runs every test
2024-02-28 14:03:21 -05:00
Joost Lekkerkerker c957ff49bf
Add icon translations to Huisbaasje (#111726)
* Add icon translations to Huisbaasje

* Add icon translations to Huisbaasje
2024-02-28 16:37:14 +01:00
Andy 69bb827a20
Add ecovacs lawn mover (#111673) 2024-02-28 16:35:29 +01:00
Joost Lekkerkerker 15cd9c011e
Add icon translations to Homekit Controller (#111720)
* Add icon translations to Homekit Controller

* Add icon translations to Homekit Controller
2024-02-28 16:31:09 +01:00
Sebastian Noack df61d0a29d
Add entities for Balboa Spa lights (#111252) 2024-02-28 16:29:40 +01:00
Erik Montnemery b336095239
Allow translating device names (#110711)
* Allow translating device names

* Don't keep a reference to translations in config entry

* Update kitchen_sink tests

* Add tests
2024-02-28 15:59:59 +01:00
J. Nick Koston f71343a3ba
Import tplink in the executor to avoid blocking the event loop (#111691)
* Import tplink in the executor to avoid blocking the event loop

2024-02-27 22:44:19.908 DEBUG (MainThread) [homeassistant.loader] Component tplink import took 1.620 seconds (loaded_executor=False)

* patch out discovery because it happens too fast now
2024-02-28 15:06:33 +01:00
Robert Svensson c478b1416c
Adapt Axis integration to library refactoring (#110898)
* Adapt Axis integration to library refactoring

* Bump axis to v49
2024-02-28 14:36:32 +01:00
Sebastian Noack 5a57816e50
Add entities for Balboa Spa pumps (#111245)
* Add entities for Balboa Spa pumps

* Fix fan tests and move client_update to __init__

* Ruff

---------

Co-authored-by: Jan-Philipp Benecke <github@bnck.me>
2024-02-28 14:19:02 +01:00
Joost Lekkerkerker a8887d59ed
Add icon translations to BMW (#111348)
* Add icon translations to BMW

* Add icon translations to BMW
2024-02-28 13:05:27 +01:00
Joost Lekkerkerker 40431a9f7e
Add icon translations to DROP connect (#111373)
* Add icon translations to DROP connect

* Add icon translations to DROP connect
2024-02-28 12:58:04 +01:00
Joost Lekkerkerker 7ad1d3e891
Add icon translations to DSMR (#111411)
* Add icon translations to DSMR

* Add icon translations to DSMR
2024-02-28 12:55:43 +01:00
Joost Lekkerkerker b117deff58
Add icon translations to Gree (#111662)
* Add icon translations to Gree

* Add icon translations to Gree
2024-02-28 11:38:16 +01:00
Joost Lekkerkerker 38ba966d74
Add icon translations to Devolo home network (#111367) 2024-02-28 11:21:19 +01:00
Jan-Philipp Benecke ebfba7258e
Revert "Drop `@bind_hass` use from hassio component (#111522)" (#111705)
This reverts commit 4e4345f04e.
2024-02-28 10:51:37 +01:00
J. Nick Koston 01a6b85a35
Avoid creating system monitor disk sensors for non-dirs (#111695)
Avoid creating system monitor sensors for non-dirs

Currently we create sensors for /etc/hosts, /etc/asound.conf, since
they are bind mounts in the container. These all have to have
their own coordinator
2024-02-28 09:31:02 +01:00
Joost Lekkerkerker cd9219d4c6
Add icon translations to GDACS (#111611)
* Add icon translations to GDACS

* Add icon translations to GDACS

* Add icon translations to GDACS
2024-02-28 08:49:58 +01:00
Joost Lekkerkerker 3077039470
Add icon translations to Glances (#111615)
* Add icon translations to Glances

* Add icon translations to Glances
2024-02-28 08:49:47 +01:00
J. Nick Koston 78bb6dbe75
Reduce latency in storage by making the tasks eager (#111500)
* Reduce latancy to load storage by making the task eager

This changes the semantics a bit under the hood because it
can raise sooner which means we do not store the task
as _load_task if it raises right away. That means
concurrent calls that result in failure are likely to try
again now which will be a tiny performance hit for this
case.

* fix

* will now finish in time
2024-02-27 23:27:37 -05:00
Jan-Philipp Benecke 4e4345f04e
Drop `@bind_hass` use from hassio component (#111522)
* Drop `@bind_hass` use from hassio component

* Add comment why we import locally

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-28 00:25:46 +01:00
J. Nick Koston 6abb8ae273
Migrate setup to use eager tasks (#111619) 2024-02-27 12:43:32 -10:00
Joost Lekkerkerker 9cf874d4a0
Add icon translations to Energyzero (#111513)
* Add icon translations to Energyzero

* Add icon translations to Energyzero
2024-02-27 23:41:07 +01:00
J. Nick Koston c4d719a7cf
Use eager_start for background service call tasks (#111620) 2024-02-27 12:06:32 -10:00
Jc2k cf849664ba
Cleanup BLE-only controls when migrating HomeKit BLE device to Thread (#110334)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-27 12:02:27 -10:00
Arie Catsman d8d44069b5
Add Grid import export to Enphase Envoy (#110884)
* Add Grid import export to enphase Envoy

* Update snapshot for labels dict element in entity registry

* use identity check for enum

* Revert use of identity check, didn't add entities

* Implement review feedback for tests

* ct phase sensors disabled by default

* import PHASENAMES from pyenphase

* Update tests/components/enphase_envoy/test_sensor.py

* Update tests/components/enphase_envoy/test_sensor.py

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-27 16:43:43 -05:00
Shay Levy 2a8e5ceea9
Fix Switcher test update CI failure (#111667) 2024-02-27 10:32:40 -10:00
J. Nick Koston a6f4f6eae8
Use eager task creation to add entities to entity platform (#111553) 2024-02-27 09:54:51 -10:00
Erik Montnemery fc4b18b907
Return FlowResultType.ABORT when violating single_config_entry (#111637)
* Return FlowResultType.ABORT when violating single_config_entry

* Fix translations

* Fix tests
2024-02-27 18:28:19 +01:00
J. Nick Koston e25b097376
Import bluetooth in the executor to avoid blocking the event loop (#111596) 2024-02-27 07:05:39 -10:00
Joakim Sørensen f622ddef47
Move backup/* WS commands to the backup integration (#111636)
Revert "Revert "Move backup/* WS commands to the backup integration" (#111136)"

This reverts commit 8f83426895.
2024-02-27 11:56:07 -05:00
Michael Hansen 890e651bdd
Avoid race condition with UDP voice server starting in ESPHome (#111644)
* Avoid race condition with UDP server starting

* Fix test
2024-02-27 10:54:56 -06:00
Martin Hjelmare 00d11ff68e
Fix rfxtrx flaky reconnect test (#111635) 2024-02-27 16:13:08 +01:00
Erik Montnemery 6ccf7dea32
Always allow ignore and unignore flows for single config entry integrations (#111631)
* Always allow ignore and unignore flows for single config entry integrations

* Update tests/test_config_entries.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-27 15:47:56 +01:00
Robert Resch d7fb949994
Deprecate mailbox platform (#110930) 2024-02-27 13:50:02 +01:00
Erik Montnemery 8fb542917b
Deprecate the Ambiclimate integration (#111627)
Deprecate Ambiclimate integration
2024-02-27 13:45:12 +01:00
Brenan Kelley 458c5ae657
Add statistics keep_last_sample option (#88655)
* introduce preserve last value option

* improve comments

* add unit test

* skip scheduling purge on a preserved value

* do not schedule sensor update if preserving last value

* fix unit test to use new mock time pattern

pattern introduced in https://github.com/home-assistant/core/pull/93499

* rename preserve_last_val to keep_last_sample

* add keep_last_sample config validation
2024-02-27 13:17:05 +01:00
David F. Mulcahey 5d1b78a29d
Add device list to ZHA config entry diagnostics (#111549)
* Add device list to ZHA  config entry diagnostics

* add logical type
2024-02-27 06:44:26 -05:00
Marc Mueller adbd9c8d40
Update python-slugify to 8.0.4 (#111284) 2024-02-27 12:29:48 +01:00
Erik Montnemery 413b74a2e0
Deprecate Logi Circle integration (#111491)
* Deprecate Logi Circle integration

* Update homeassistant/components/logi_circle/__init__.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2024-02-27 11:36:36 +01:00
J. Nick Koston 044ace0a6a
Make core tests that should run in the event loop coros (#111605) 2024-02-26 23:18:22 -10:00
Robert Resch 3703698f77
Bump deebot-client to 6.0.2 (#111507) 2024-02-27 09:39:49 +01:00
J. Nick Koston d812507aeb
Refactor eafm to avoid creating entities in the coordinator update (#111601) 2024-02-26 21:08:28 -10:00
J. Nick Koston 587854fd59
Remove zeroconf from ssdp after deps (#111326)
* Remove zeroconf from ssdp after deps

This was added in #36277 but is no longer needed since
we setup discovery integrations ahead of time to ensure
their deps are updated before other integrations can load
them

* adjust test
2024-02-26 23:57:41 -05:00