Commit Graph

20001 Commits (656ef143daf5184a8aa340d320dca7d36473566e)

Author SHA1 Message Date
J. Nick Koston 67e356904b
Add support for eager tasks (#111425)
* Add support for eager tasks

python 3.12 supports eager tasks

reading:
https://docs.python.org/3/library/asyncio-task.html#eager-task-factory
https://github.com/python/cpython/issues/97696

There are lots of places were we are unlikely to suspend, but we might
suspend so creating a task makes sense

* reduce

* revert entity

* revert

* coverage

* coverage

* coverage

* coverage

* fix test
2024-02-26 11:36:46 -05:00
J. Nick Koston 1d4e82bd3d
Fix race in dlna_dmr test (#111428)
The entity was removed before the entity registry could update it

```
Traceback (most recent call last):
  File "/Users/bdraco/home-assistant/homeassistant/helpers/entity.py", line 1482, in _async_process_registry_update_or_remove
    assert registry_entry is not None
AssertionError

```
2024-02-26 17:11:50 +01:00
Sid 174ebe70d7
Add webmin integration (#106976)
* add webmin integration 1

* refactor, add memory sensors

* Fix docstring

* addressed reviews

* address reviews

* address reviews

* use translation strings for sensors

* add async_abort_entries_match

* apply review comments

* address reviews

* add async_set_unique_id

* add identifiers to device_info

* disable all sensors by default

* move icons to icons.json

* show Faults when given from server in config flow

* add test for Fault

* Apply review suggestions

* Create helper functions for webmin instance and sorted mac addresses

* fix tests
2024-02-26 17:10:11 +01:00
Aidan Timson 9f77e275e9
Add title to reauthenticate integration issue (#111275)
* Add title to reauthenticate integration issue

* Fix translation placeholder in test

* Update translation placeholders in test_init.py

* Update integration reauthentication message

* Update string
2024-02-26 08:19:37 -05:00
Erik Montnemery 9b91da23c4
Improve logging of google_assistant messages (#110637)
* Improve logging of google_assistant messages

* Add tests

* Add test
2024-02-26 11:43:31 +01:00
Jan Bouwhuis 1b2e669302
Improve handling mqtt command template exceptions (#110499)
* Improve handling mqtt command template exceptions

* Fix test

* Cleanup stale exception handler

* Throw on topic template exception
2024-02-26 11:04:55 +01:00
Jan Bouwhuis da09b6174d
Add validation to water_heater set_operation mode at entity component (#111168)
* Add validation to water_heater set_operation mode at entity component

* Add final decorator
2024-02-26 11:02:39 +01:00
Christophe Gagnier 0d4728e1c6
Add TechnoVE auto charge switch (#109093)
* Add binary sensors to TechnoVE integration

* Add unit tests for TechnoVE binary sensors

* Implement PR feedback for TechnoVE

* Limit to appropriate sensors in TechnoVE tests

* Removed leftover code

* Implement feedback in TechnoVE PR #108938

* Add auto-charge switch to TechnoVE

* Improve TechnoVE test_switches to be consistent with other platforms

* Regenerate test_switch.ambr snapshot

* Add binary sensors to TechnoVE integration

* Add unit tests for TechnoVE binary sensors

* Implement PR feedback for TechnoVE

* Limit to appropriate sensors in TechnoVE tests

* Implement feedback in TechnoVE PR #108938

* Add auto-charge switch to TechnoVE

* Apply suggestions from code review

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Fix conflict merge issue

* Implement feedback from TechnoVE PR #109093

* Use TechnoVESwitchDescription

* Remove None from is_on in TechnoVE switches

* Update homeassistant/components/technove/strings.json

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>

* Remove unneeded code.

* Update test_switch.ambr

* Update TechnoVE switch test similar to Flexit_bacnet

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-02-26 10:36:40 +01:00
Steve HOLWEG 4a128f1225
Return group unit of measurement when device_class is None (#110973)
* Groups: Return units when device_class is None

* Fixes

* Mods

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2024-02-25 22:44:05 -05:00
dougiteixeira 34e9c29ef2
Esphome text sensor device class (#111057) 2024-02-25 16:56:52 -10:00
Álvaro Fernández Rojas b3e10198dd
Enable CONF_STATION_UPDATES by default on AEMET (#111214)
* aemet: set CONF_STATION_UPDATES default to True

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* tests: aemet: check CONF_STATION_UPDATES default form value

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Revert "tests: aemet: check CONF_STATION_UPDATES default form value"

This reverts commit f0f95da68f.

* tests: aemet: parametriz test_form_options

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-02-25 23:23:18 +02:00
wittypluck 716d8f8a00
Fix Glances translation keys on CPU load, Memory use, Swap use (#111401)
Fix translation keys on CPU load, Memory use, Swap use
2024-02-25 21:25:28 +01:00
Jan-Philipp Benecke 1c5be598f5
Run pylint sorted platform check also when platform has type annotations (#111407) 2024-02-25 21:18:07 +01:00
J. Nick Koston ab68a26000
Fix flakey utility meter test (#111400)
The test tooling would cancel setup at teardown because
it was still setting up

https://github.com/home-assistant/core/actions/runs/8039593463/job/21956908225?pr=111336
2024-02-25 20:21:09 +01:00
Joost Lekkerkerker 9afa154271
Use device class icon in cpu-speed (#111360)
* Use device class icon in cpu-speed

* Use device class icon in cpu-speed
2024-02-25 14:06:54 +01:00
Joost Lekkerkerker 4229f988e2
Add icon translations to aosmith (#111340)
* Add icon translations to aosmith

* Add icon translations to aosmith
2024-02-25 10:42:41 +01:00
MarkGodwin d004011d41
Bump tplink-omada-client to 1.3.11 (#111273)
Bump TP-Link Omada API
2024-02-24 23:33:13 +01:00
G Johansson 5073842514
Fix sql integration no recorder (#111263) 2024-02-24 22:40:49 +01:00
Åke Strandberg cd46cc6e80
Add myuplink number platform (#111154)
* Add number platform

* Use constant for SERVICE_SET_VALUE
2024-02-24 22:39:14 +01:00
J. Nick Koston dd80157dc7
Load translations at setup time if they were not loaded at bootstrap (#110921) 2024-02-24 11:31:25 -10:00
Jan-Philipp Benecke 076ae22fdd
Freeze time in aemet diagnostics test (#111308) 2024-02-24 16:26:16 -05:00
Robert Svensson efc89cd34f
Unifi websocket manager (#111041)
* Move hub into .hub.hub

* Move websocket to own module

* Minor shuffle
2024-02-24 16:20:59 -05:00
Jan-Philipp Benecke d796085923
Bump pydiscovergy to 3.0.0 (#111305) 2024-02-24 22:07:46 +01:00
G Johansson c45cae3665
Remove obsolete entities from System Monitor automatically (#111231)
* Remove obsolete entities from System Monitor automatically

* callback
2024-02-24 20:50:53 +01:00
Minims 597118d584
Add ECO temp to Generic Thermostat (#110471)
feat: add ECO temp to Generic Thermostat.
2024-02-24 20:17:22 +01:00
G Johansson 777428c36d
Add diagnostics to System Monitor (#111291)
* Add diagnostics to System Monitor

* Fix
2024-02-24 20:11:11 +01:00
Álvaro Fernández Rojas 57d169582d
Add diagnostics support for AEMET (#111218)
aemet: add diagnostics support

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-02-24 20:08:50 +01:00
Álvaro Fernández Rojas 766596abdc
Add Airzone Cloud Air Quality zone binary sensors (#106573)
* airzone_cloud: add Air Quality binary sensor

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* airzone_cloud: binary_sensor: rename Air Quality

Add "active" to indicate status.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-02-24 08:41:12 -05:00
Álvaro Fernández Rojas d3d6870c04
Add Airzone Cloud Air Quality zone sensors (#106571)
* airzone-cloud: add Air Quality sensors

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* tests: airzone_cloud: add missing AQI test

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-02-24 08:39:53 -05:00
Joakim Sørensen 79572c0a5d
Subscribe to Traccar Server events (#111262)
* Subscribe to Traccar Server events

* No need to unsubscribe on error

* typo

* rename _attrs

* arg type

* reorder return type

* more spesific

* Update stale docstring
2024-02-24 12:35:32 +01:00
J. Nick Koston 5b8591ec7e
Avoid reschedule churn in Storage.async_delay_save (#111091)
* Avoid circular import in Storage.async_delay_save

We call Storage.async_delay_save for every entity being added or removed
from the registry. The late import took more time than everything else
in the function.

* Avoid reschedule churn in Storage.async_delay_save

When we are adding or removing entities we will call async_delay_save
quite often which has to add and remove a TimerHandle on the event loop
which can add up when there are a lot of registry items changing.

If the timer handle still has 80% of the time remaining on it
we will avoid resceduling and let it fire at the time the
original async_delay_save call was made. This ensures we
do not force the event loop to rebuild its heapq because
too many timer handlers were cancelled at once

* div0

* add coverage for 0 since we had none

* fix bad conflict

* tweaks

* tweaks

* tweaks

* tweaks

* tweaks

* tweaks

* more test fixes

* mqtt tests rely on event loop overhead
2024-02-24 08:46:00 +01:00
J. Nick Koston ff0e0b3e77
Convert debouncer async_shutdown to be a normal function (#111257)
* Convert debouncer async_shutdown to be a normal function

nothing was being awaited here and the shutdown call was only used
in integrations marked internal and other internals. Its possible
that a custom component might have been using the method but it
seemed uncommon enough that it did not warrent marking as a breaking
change. The update coordinator is no longer awaiting anything in
async_shutdown either now but it seemed likely that this use
would get subclassed.

* fix
2024-02-24 08:37:33 +01:00
J. Nick Koston d9addc45f9
Avoid scheduling a task to add each entity when not using update_before_add (#110951)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-02-23 10:49:26 -10:00
J. Nick Koston 3aecec5082
Avoid rechecking for missing platforms in the loader (#111204) 2024-02-23 10:48:47 -10:00
G Johansson 9e46c2e2b3
Isolate systemmonitor from psutil shared state (#111110)
* Isolate systemmonitor from psutil shared state

* Mods

* typing

* Fix tests

* Fix read temp issue

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-23 20:53:48 +01:00
J. Nick Koston b6b5b1f788
Fix race in ESPHome entity test (#111179)
This test relied on the event loop overhead. Change it
to listen for the state to change instead
2024-02-23 13:34:46 -05:00
David F. Mulcahey d485e8967b
Add device counter entities to ZHA (#111175)
* Add counter entities to the ZHA coordinator device

* rework to prepare for non coordinator device counters

* counter entity test

* update log lines

* disable by default
2024-02-23 13:22:47 -05:00
J. Nick Koston 59066c1770
Migrate zha to use Debouncer.async_schedule_call (#111103) 2024-02-23 07:28:23 -10:00
J. Nick Koston 68d1fbaadc
Fix race in openalpr_cloud tests (#111185)
The test would end before setup was finished and the setup
would get cancelled
2024-02-23 09:28:20 +01:00
J. Nick Koston 98a8714705
Improve error reporting in tplink config flow (#111166)
* Improve error reporting in tplink config flow

* coverage, fixes
2024-02-23 02:38:46 +01:00
Christopher Bailey ae60f59bed
Add metadata for UniFi Protect Media Source (#109389) 2024-02-22 14:44:16 -10:00
ollo69 f0f3773858
Add base class AndroidTVEntity to AndroidTV (#105945) 2024-02-22 12:38:38 -10:00
J. Nick Koston 2ef71289b9
Avoid creating tasks for dependencies already being setup (#111034)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-02-22 12:34:46 -10:00
J. Nick Koston 32cd3ad862
Fix lingering timer in enphase_envoy test (#111165) 2024-02-22 12:33:44 -10:00
Maciej Bieniek bccd9bd21f
Bump `brother` library to version 4.0.0 (#111157)
* Bump library

* Update code to the new library version

* Improve diagnostics

* Fix tests

---------

Co-authored-by: Maciej Bieniek <478555+bieniu@users.noreply.github.com>
2024-02-22 23:27:24 +02:00
Joakim Sørensen 8f83426895
Revert "Move backup/* WS commands to the backup integration" (#111136)
Revert "Move backup/* WS commands to the backup integration (#110651)"

This reverts commit ec4e6c3a74.
2024-02-22 16:08:30 +01:00
Malte Franken 5f9d46205c
Bump georss-qld-bushfire-alert-client to 0.7 (#111075)
* bump georss-qld-bushfire-alert-client to 0.7

* fix tests
2024-02-22 12:58:54 +01:00
Álvaro Fernández Rojas b72d64a3dc
Disable AEMET legacy options (#107795)
* aemet: disable legacy options

This enables proper timezone handling:
- Atlantic/Canary for the Canary Islands.
- Europe/Madrid for the Iberian Peninsula.

Also provides daily data for the current day after AEMET stops providing the
full day interval, which is normally after midday (12:00).
This is a breaking change because with the previous behaviour the daily data
for the current day wasn't available after midday and now it will be.
What the integration library does to workaround this is to fallback to the
12-24 interval data if the the 00-24 is no longer provided by the API.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Fix AEMET tests with v0.4.8

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-02-22 12:52:57 +01:00
Thomas55555 85be94e0a9
Add switch platform for husqvarna_automower (#110139)
* Add switch platform for husqvarna_automower

* Use RestrictedReasons const

* Typing

* Add snapshot testing

* Invert switch

* Test sucessfull servie calls

* Assert client mock calls

* Use getattr

* Update snapshot

* Add available property

* Add a new base class for control entities

* Make switch unavailabe if mower in error state

* Sort platforms

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-22 12:34:24 +01:00
Åke Strandberg c167001861
Add myuplink switch platform (#110810)
* Add switch platform

* Add mypulink switch platform

* Update tests according to review

* Address more review comments

* Adjust types

* More typing

* Fix typo

* Use constants in tests

* Revert constants

* Catch aiohttp.ClientError when API call fails

* Add test case for failed async_set_device_points call

* Test api failures for both toggle directions

* Use parametrize for testing switching
2024-02-22 11:27:46 +01:00
Joost Lekkerkerker 92c8c4b1ae
Ignore cloudhook already removed in mobile app (#111122) 2024-02-22 11:19:27 +01:00
Brett Adams 767fcd707f
Add wake up timeout to Teslemetry (#109037) 2024-02-22 10:50:44 +01:00
Michael 9348f99ce8
Bump roombapy to 1.6.12 (#110762)
* bump roombapy to 1.6.11

* Apply suggestions from code review

* "fix" tests (make them pydantic fiendly?)

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-02-22 10:39:53 +01:00
Joakim Sørensen ec4e6c3a74
Move backup/* WS commands to the backup integration (#110651)
* Move backup/* WS commands to the backup integration

* Call correct command

* Use debug for logging

* Remove assertion of hass.data for setup test

* parametrize token fixture
2024-02-22 10:25:38 +01:00
Thomas55555 6e91776d65
Add sensor platform for husqvarna_automower (#110410)
* Add sensor platform for husqvarna_automower

* Adress review comments

* Try to fix test

* Improve sensors

* Address review

* Adapt some values

* Add test

* Add test for cutting blade usage time

* Import TEST_MOWER_ID

* Use a parenthesis around the lambda and indent it so it's easier to distinguish the entity description parameters from the lambda
2024-02-22 09:26:38 +01:00
J. Nick Koston 5267e4f5db
Fix race in otbr config flow (#111044)
* fix otbr

* Update homeassistant/components/otbr/config_flow.py

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

* unique ids should not change

* handle missing unique id

* handle missing unique id

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-02-21 22:02:44 -05:00
Paul Bottein 0eef449526
Add icon translations to Tessie (#111096) 2024-02-21 19:49:04 +01:00
J. Nick Koston d6fac87876
Avoid compressing application (tarfile) downloads from supervisor (#110224) 2024-02-21 12:45:47 -06:00
J. Nick Koston 4bddf32cc4
Avoid the final write of every registry at the end of each test (#111053) 2024-02-21 06:01:19 -06:00
Åke Strandberg 2614d6fece
Add tests to myuplink binary_sensor (#110995) 2024-02-21 12:32:25 +01:00
Jan Rothkegel 05b23c2e7b
Replace Wolflink dependency with wolf_comm to support authentication via OpenID (#110249)
* Add OpenID authentication to wolflink integration

* Update wolf-comm to 0.0.2

* Upgrade wolf_comm to 0.0.3 + fix tests

* Version 0.0.4 of wolf_comm including LICENSE.txt

* Update requirements to wolf_comm 0.0.4

---------

Co-authored-by: Jan Rothkegel <jan.rothkegel@web.de>
2024-02-21 09:37:13 +01:00
J. Nick Koston 776a9b8691
Make device registry cleanup a callback function (#111052)
* Add async_schedule_call to the Debouncer

async_schedule_call allows the Debouncer to schedule a call
from a callback without having to create tasks to run
async_call

* Update homeassistant/helpers/debounce.py

* Make device registry cleanup all callback function

* fix typing, code supported callback functions, but typing did not

* fixes

* fixes

* fix

* we had no coverage for other job types

* we had no coverage for other job types
2024-02-21 09:34:49 +01:00
Jan Bouwhuis c048b840fc
Do not directly call async_setup_entry in MQTT tests (#111010) 2024-02-21 07:47:30 +01:00
J. Nick Koston 490c03d248
Add async_schedule_call to the Debouncer (#111051) 2024-02-21 00:09:45 -06:00
Christopher Bailey 7eb6614818
Guide users to migrate from Ubiquiti Cloud Accounts to local for UniFi Protect (#111018)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-20 23:32:47 -06:00
Christopher Bailey fb04df5392
Improve UniFi Protect re-auth (#110021)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-20 23:31:42 -06:00
J. Nick Koston da9d71cb6b
Fix race in automation test_extraction_functions (#111056) 2024-02-20 23:25:19 -06:00
Josef Zweck db77e73a76
Add calendar platform to La Marzocco (#108237)
* add calendar

* rename function

* remove device from test

* requested changes

* extend range

* fix async_get_events

* catch and test edge cases

* remove commented code

* rebase snapshot
2024-02-20 19:15:47 -08:00
Shay Levy c690a9df83
Fix Shelly RPC RSSI sensor removal (#111035) 2024-02-20 21:05:59 -06:00
J. Nick Koston 9ce1ec414e
Reduce overhead to load multiple languages in translations (#111028)
* Reduce overhead to load multiple languages in translations

Instead of loading in a task, we now group everything
to be loaded into a single executor job

* fixes

* fixes

* fixes

* fixes

* fixes

* update tests

* add missing coverage (was existing)
2024-02-20 21:52:28 -05:00
J. Nick Koston 9c145b5faa
Fix race in removing entities from the registry (#110978) 2024-02-20 20:48:31 -06:00
J. Nick Koston dc4008c518
Avoid creating tasks to shutdown entity platforms (#111026)
* Avoid creating tasks to shutdown entity platforms

Nothing needed to be awaited here

* fix mocking

* missed one test
2024-02-20 21:10:25 -05:00
J. Nick Koston 98d5f2fc01
Reduce registry overhead in tests (#110955)
* Avoid scheduling registry loads as tasks in tests

Since we patch out async_load in Store, these will not yield
to the event loop so it makes sense to await them instead
of creating tasks

This reduced my local test run times ~2.5% on average

* mock out save as well so we do not schedule tasks to save empty data

* tweaks

* fix lingering files

* another one

* too much for one PR, reduce

* fix targets
2024-02-20 21:01:50 -05:00
J. Nick Koston 145c6163a4
Fix race in gardena_bluetooth config flow tests (#111042) 2024-02-20 16:08:06 -06:00
Brett Adams 5b00703ef7
Add presets to Advantage Air (#109485)
* Add presets

* Make hvac_modes dynamic

* Add supported features

* Fix set preset mode

* Add coverage

* Remove unused constants

* Remove the extra newline

* Add snapshot assertion to new test

* Add comments

* Use ServiceValidationError

* Test for ServiceValidationError

* Fix typo

* Refactor to use _handle_coordinator_update

* Remove preset_mode prop

* Apply suggestions from code review

Co-authored-by: J. Nick Koston <nick@koston.org>

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-20 22:00:52 +01:00
Federico D'Amico 93d6f0a780
Bump microBeesPy to 0.2.9 (#111006)
change library
2024-02-20 13:39:14 +01:00
Federico D'Amico ac926f9c64
Introduce actuator base entity to microBees (#111000)
* changed library imports and added sensors to coordinator and new entity

* revert library

* revert library
2024-02-20 11:55:36 +01:00
J. Nick Koston 6ed221de5d
Handle empty name in powerview config flow (#110969)
fixes

```
2024-02-19 13:51:58.128 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved:   File "/Users/bdraco/home-assistant/venv/bin/hass", line 8, in <module>
    sys.exit(main())
  File "/Users/bdraco/home-assistant/homeassistant/__main__.py", line 209, in main
    exit_code = runner.run(runtime_conf)
  File "/Users/bdraco/home-assistant/homeassistant/runner.py", line 188, in run
    return loop.run_until_complete(setup_and_run_hass(runtime_config))
  File "/opt/homebrew/Cellar/python@3.12/3.12.1/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 673, in run_until_complete
    self.run_forever()
  File "/opt/homebrew/Cellar/python@3.12/3.12.1/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 640, in run_forever
    self._run_once()
  File "/opt/homebrew/Cellar/python@3.12/3.12.1/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/base_events.py", line 1965, in _run_once
    handle._run()
  File "/opt/homebrew/Cellar/python@3.12/3.12.1/Frameworks/Python.framework/Versions/3.12/lib/python3.12/asyncio/events.py", line 84, in _run
    self._context.run(self._callback, *self._args)
  File "/Users/bdraco/home-assistant/homeassistant/helpers/entity_platform.py", line 610, in async_add_entities
    await add_func(coros, entities, timeout)
  File "/Users/bdraco/home-assistant/homeassistant/helpers/entity_platform.py", line 561, in _async_add_entities
    await coro
  File "/Users/bdraco/home-assistant/homeassistant/helpers/entity_platform.py", line 652, in _async_add_entity
    entity.add_to_platform_start(
  File "/Users/bdraco/home-assistant/homeassistant/components/device_tracker/config_entry.py", line 356, in add_to_platform_start
    _async_connected_device_registered(
  File "/Users/bdraco/home-assistant/homeassistant/components/device_tracker/config_entry.py", line 94, in _async_connected_device_registered
    async_dispatcher_send(
  File "/Users/bdraco/home-assistant/homeassistant/helpers/dispatcher.py", line 227, in async_dispatcher_send
    hass.async_run_hass_job(job, *args)
  File "/Users/bdraco/home-assistant/homeassistant/core.py", line 701, in async_run_hass_job
    hassjob.target(*args)
  File "/Users/bdraco/home-assistant/homeassistant/util/logging.py", line 133, in _callback_wrapper
    func(*args)
  File "/Users/bdraco/home-assistant/homeassistant/components/dhcp/__init__.py", line 392, in _async_process_device_data
    self.async_process_client(ip_address, hostname, mac_address)
  File "/Users/bdraco/home-assistant/homeassistant/components/dhcp/__init__.py", line 268, in async_process_client
    discovery_flow.async_create_flow(
  File "/Users/bdraco/home-assistant/homeassistant/helpers/discovery_flow.py", line 32, in async_create_flow
    hass.async_create_task(init_coro, f"discovery flow {domain} {context}")
  File "/Users/bdraco/home-assistant/homeassistant/core.py", line 634, in async_create_task
    task = self.loop.create_task(target, name=name)
Traceback (most recent call last):
  File "/Users/bdraco/home-assistant/homeassistant/config_entries.py", line 1017, in async_init
    flow, result = await self._async_init(flow_id, handler, context, data)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/config_entries.py", line 1047, in _async_init
    result = await self._async_handle_step(flow, flow.init_step, data)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/data_entry_flow.py", line 501, in _async_handle_step
    result: FlowResult = await getattr(flow, method)(user_input)
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/components/hunterdouglas_powerview/config_flow.py", line 127, in async_step_dhcp
    return await self.async_step_discovery_confirm()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/bdraco/home-assistant/homeassistant/components/hunterdouglas_powerview/config_flow.py", line 152, in async_step_discovery_confirm
    assert self.discovered_ip and self.discovered_name
AssertionError
```
2024-02-20 10:41:38 +01:00
Robert Svensson 2f026ca963
Unifi rename controller to hub (#110976)
* Rename controller.py to hub.py

* Rename UniFiController to UnifiHub

* Rename controller instances into hub

* Rename controller to hub in tests

* Rename aiounifi Controller references to api

* Update strings

* Rename test_controller test_hub

* Narrow scope of test_remove_sensors
2024-02-20 08:51:22 +01:00
Mr. Bubbles 2b3f5319d6
Bump bring-api to 0.3.1 (#110769)
* bump bring-api

* unpinned dependencies
2024-02-20 08:46:02 +01:00
Michael Hansen ec4bd9a421
Add new intents for cover, valve, vacuum, and media player (#110757)
* Add valve to HassTurnOn/Off

* Add set position for valves

* Add set position to covers

* Add HassTurnOn/Off for vacuums

* Add media player intents

* Split out vacuum intents

* Address comments

* Extra test
2024-02-19 22:28:42 -05:00
J. Nick Koston 015f9cdb35
Fix failing tessie tests (#110980) 2024-02-19 20:45:07 -06:00
Åke Strandberg 230ac417c0
Add check for myuplink startup ClientError (#110926)
* Raise ConfigEntryNotReady if appropriate

* Catchin exceptions during startup

* Change expected_state to SETUP_ERROR
2024-02-20 02:17:35 +01:00
J. Nick Koston ae49b3a274
Add async_schedule_reload helper to the ConfigEntries manager (#110912)
* Add async_schedule_reload helper to the ConfigEntries manager

We have cases where the the setup retry kicks in right before
the reload happens causing the reload to fail with
OperationNotAllowed. The async_schedule_reload will
cancel the setup retry before the async_reload task
is created to avoid this problem.

I updated a few integrations that were most likely
to have this problem. Future PRs will do a more
extensive audit

* coverage

* revert for now since this needs more refactoring in a followup

* cover

* cleanup and fixes
2024-02-20 02:14:45 +01:00
Brett Adams 61766c0e59
Fix set_temperature in Tessie climate platform (#110445)
* HVAC_MODE support for set_temperature

* Fix import
2024-02-19 21:52:59 +01:00
Brett Adams 980413c57f
Add new range sensors to Tessie (#110446)
* Add new sensors

* Fix tests
2024-02-19 21:50:20 +01:00
Jan Bouwhuis f4fd3633b4
Improve timing mqtt integration discovery test (#110960)
* Improve timing mqtt integration discovery test

* Remove condition
2024-02-19 20:16:06 +01:00
Marco Lettieri 3a4c6fc7f3
Add microBees integration (#99573)
* Create a new homeassistan integration for microBees

* black --fast homeassistant tests

* Switch platform

* rename folder

* rename folder

* Update owners

* aiohttp removed in favor of hass

* Update config_flow.py

* Update __init__.py

* Update const.py

* Update manifest.json

* Update string.json

* Update servicesMicrobees.py

* Update switch.py

* Update __init__.py

* Update it.json

* Create a new homeassistan integration for microBees

* black --fast homeassistant tests

* Switch platform

* rename folder

* rename folder

* Update owners

* aiohttp removed in favor of hass

* Update config_flow.py

* Update __init__.py

* Update const.py

* Update manifest.json

* Update string.json

* Update servicesMicrobees.py

* Update switch.py

* Update __init__.py

* Update it.json

* fixes review

* fixes review

* fixes review

* pyproject.toml

* Update package_constraints.txt

* fixes review

* bug fixes

* bug fixes

* delete microbees connector

* add other productID in switch

* added coordinator and enanchments

* added coordinator and enanchments

* fixes from suggestions

* fixes from suggestions

* fixes from suggestions

* fixes from suggestions

* fixes from suggestions

* fixes from suggestions

* fixes from suggestions

* fixes from suggestions

* fixes from suggestions

* fixes from suggestions

* fixes from suggestions

* fixes from suggestions

* add test

* add test

* add test

* add test

* requested commit

* requested commit

* requested commit

* requested commit

* reverting .strict-typing and added microbees to .coveragerc

* remove log

* remove log

* remove log

* remove log

* add test for microbeesExeption and Exeption

* add test for microbeesExeption and Exeption

* add test for microbeesException and Exception

* add test for microbeesException and Exception

* add test for microbeesException and Exception

---------

Co-authored-by: FedDam <noceracity@gmail.com>
Co-authored-by: Federico D'Amico <48856240+FedDam@users.noreply.github.com>
2024-02-19 15:12:03 +01:00
J. Nick Koston b349a466ba
Fix concurrent reloads in yeelight tests (#110911) 2024-02-19 07:37:22 -06:00
Jevgeni Kiski 2250baab21
Update vallox_websocket_api to 5.0.2 (#110752)
Co-authored-by: Sebastian Lövdahl <slovdahl@hibox.fi>
2024-02-19 14:36:51 +01:00
Franck Nijhof e0a9dcd996
Add label registry (#110821) 2024-02-19 11:59:08 +01:00
J. Nick Koston fd1f712d67
Bump esphome dependencies (#110892) 2024-02-19 10:38:28 +01:00
J. Nick Koston 136a31e4bc
Avoid creating tasks to run homekit accessories (#110895) 2024-02-19 10:36:54 +01:00
Marc Mueller a21d65d025
Fix cloud test RuntimeWarning (#110909) 2024-02-19 10:09:59 +01:00
J. Nick Koston 764e628394
Add missing async_block_till_done to github config flow tests (#110913) 2024-02-19 09:58:57 +01:00
J. Nick Koston 6fc764330f
Fix steamist not setting unique id when discovered in user flow (#110915) 2024-02-19 09:58:32 +01:00
J. Nick Koston a2bd59ab3b
Fix switcher_kis tests not holding patch while calling async_block_till_done (#110916) 2024-02-19 09:58:09 +01:00
J. Nick Koston 19cf80d5c5
Fix homekit_controller test race (#110917) 2024-02-19 08:42:17 +00:00
Chris Caron 31ce43212a
Allow loading of more then 1 defined Apprise URL (#110868) 2024-02-19 09:29:26 +01:00
J. Nick Koston 88b92ff2a8
Narrow bosch_shc patch target in config flow tests (#110922) 2024-02-19 09:24:44 +01:00
J. Nick Koston b35d7a348b
Fix mqtt discovery subscribe unsubscribe test with one less task (#110914)
This test currently relies on event loop overhead and since #110899
will remove another task in the config entry init flow, it needs
another async_block_till_done. In the future it should be refactored
to have better synchronization without having to rely on iterations
of the event loop.
2024-02-19 07:36:32 +01:00
Lenn 3275b28e2a
Fix Motionblinds brand name consistency (#110222) 2024-02-19 00:04:57 +01:00
Jan-Philipp Benecke 22e62f42e6
Use entity & device registry fixtures in unifi tests (#110889) 2024-02-18 23:47:10 +01:00
J. Nick Koston 314123e0ab
Avoid creating two tasks to setup components at startup (#110828) 2024-02-18 14:17:41 -06:00
Jan-Philipp Benecke 85587f995b
Use entity registry fixture in octoprint tests (#110887) 2024-02-18 20:55:12 +01:00
J. Nick Koston fdd45189ca
Fix trigger attachment race in conversation tests (#110869) 2024-02-18 20:13:41 +01:00
On Freund e879ab0eef
Show WebRTC cameras that also support HLS in the media browser (#108796)
* Show WebRTC cameras in the media browser

* Only show webrtc cameras with source in the browser

* Address code review

* Refactor BrowseMediaSource creation

* Refactor

* Address code review
2024-02-18 10:12:08 -08:00
Jc2k 8fa347fb4c
Add Identify device class to homekit_controller (#110878) 2024-02-18 12:05:19 -06:00
J. Nick Koston bd4f8e0cc0
Fix races in ESPHome manager tests (#110867) 2024-02-18 17:06:57 +01:00
Jan Bouwhuis addc02fa86
Revert "Set up smtp integration via the UI" (#110862)
Revert "Set up smtp integration via the UI (#110817)"

This reverts commit 66a31407f9.
2024-02-18 16:21:27 +01:00
Franck Nijhof 67ac60d042
Add hex color validator (#110846) 2024-02-18 16:03:21 +01:00
Jan Bouwhuis 66a31407f9
Set up smtp integration via the UI (#110817)
* Set up smtp integration via the UI

* Update homeassistant/components/smtp/config_flow.py

Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>

* Update homeassistant/components/smtp/notify.py

Co-authored-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* Update homeassistant/components/smtp/notify.py

Co-authored-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* Update homeassistant/components/smtp/notify.py

Co-authored-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* Update homeassistant/components/smtp/notify.py

Co-authored-by: Jan-Philipp Benecke <jan-philipp@bnck.me>

* ruff

---------

Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
Co-authored-by: Jan-Philipp Benecke <jan-philipp@bnck.me>
2024-02-18 13:20:45 +01:00
Allen Porter babb436512
Fix local todo list persistence for due dates (#110830)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-18 12:59:50 +01:00
J. Nick Koston 16653ff5d0
Group loading of translations for integrations to reduce executor jobs at startup (#110674) 2024-02-17 21:08:55 -06:00
J. Nick Koston def6c5c21c
Refactor integration startup time tracking to reduce overhead (#110136)
* Refactor integration startup time tracking to reduce overhead

- Use monotonic time for watching integration startup time as it avoids incorrect values if time moves backwards because of ntp during startup and reduces many time conversions since we want durations in seconds and not local time

- Use loop scheduling instead of a task

- Moves all the dispatcher logic into the new _WatchPendingSetups

* websocket as well

* tweaks

* simplify logic

* preserve logic

* preserve logic

* lint

* adjust
2024-02-17 21:47:55 -05:00
J. Nick Koston 9bc130c131
Ensure translations for other integrations can be loaded if one integration fails (#110748)
* load failure

* merge
2024-02-17 21:01:36 -05:00
J. Nick Koston 0a01161cdd
Cache JSON representation of ConfigEntry objects (#110823)
* Cache JSON representation of ConfigEntry objects

* fix recursive set

* tweak

* adjust

* order
2024-02-17 20:52:39 -05:00
J. Nick Koston 0d4c82b54d
Convert Integration platforms processors where nothing is awaited to callbacks (#110825)
Convert Integration platforms processors where nothing is awaited callbacks
2024-02-17 20:49:47 -05:00
Aarni Koskela 5d23a1f84f
Enable augmented-assignment operations in scripts (#108081) 2024-02-17 20:32:23 -05:00
J. Nick Koston 33ff6b5b6e
Avoid creating tasks for checking integrations platforms (#110795)
* Avoid creating tasks for checking integrations platforms

This is a followup to #110743 to avoid creating a task to check
if the integration platform exists. We created tasks because
we needed to await async_get_integrations but since its always
called from EVENT_COMPONENT_LOADED firing, we can use the
async_get_loaded_integration version which does not need
to be awaited. This eliminates one task for every loaded
component

* there is no more race risk

* reduce

* coro or callback

* reduce

* tweak

* race safe

* fix type

* fixes

* use built-in helper to make it smaller

* use built-in helper to make it smaller

* use built-in helper to make it smaller

* add coverage to ensure exceptions are logged

* improve readability a bit

* platforms
2024-02-18 01:07:18 +01:00
Cody C a656e14b20
Fix Local Calendar changing user-specified capitalisation of calendar names (#108454)
When you create a Local Calendar, say, "Home Maintenance", the integration overrides this to instead be "Home maintenance".
2024-02-17 16:03:13 -08:00
Allen Porter bf1b5252c0
Bump ical to 7.0.0 (#110811) 2024-02-17 22:58:59 +01:00
Joost Lekkerkerker 1417428880
Remove unneeded mock from Epion (#110815) 2024-02-17 22:53:38 +01:00
Franck Nijhof 4570eed6f6
Add floor registry (#110741)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-17 21:21:15 +01:00
Claudio Ruggeri - CR-Tech 1ded412061
Add modbus option to manage different setPoint registers (#107600)
Co-authored-by: jan iversen <jancasacondor@gmail.com>
2024-02-17 19:48:42 +01:00
J. Nick Koston 53944235d2
Improve performance of async_get_integration_with_requirements (#110770)
* Improve performance of async_get_integration_with_requirements

- Migrate to the future pattern instead of using asyncio.Event
- Use sets in a few places to avoid linear searching
- Check the cache when processing deps so we do not
  create tasks to process requirements for deps that
  have already been processed

* name

* add concurrency test

* Update homeassistant/requirements.py

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

* Update homeassistant/requirements.py

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

* Update homeassistant/requirements.py

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

* Update homeassistant/requirements.py

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

* reset_mock

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-17 19:26:41 +01:00
Franck Nijhof aa8d8402b4
Cleanups in entity registry tests (#110788)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-17 19:07:46 +01:00
Arie Catsman a4150fe8b2
Enable Enphase Envoy authentication credentials update (#110474) 2024-02-17 09:58:25 -06:00
Franck Nijhof 0fbadc274a
Cleanups in device registry tests (#110786) 2024-02-17 14:06:53 +01:00
Franck Nijhof df3556f0d8
Cleanups in area registry tests (#110785)
* Cleanups in area registry tests

* Adjust typing
2024-02-17 13:20:33 +01:00
J. Nick Koston 0bf95df4d6
Avoid creating tasks to setup ignored and disabled config entries (#110756)
* Avoid creating tasks to setup ignored and disabled config entries

* lint
2024-02-17 10:34:03 +01:00
Åke Strandberg f5dad1d312
Add myuplink reauth flow (#110587)
* WIP test

* WIP

* WIP Reauth flow. Test fail otherways OK.

* Minor adjustments to tests

* Merge

* Merge

* Next level...

* Cleanup according to review

* It works!

* Simplify setup

* Remove default

* Remove files from PR

* Add back test_init

* Add back test_sensor

* Adjust error message

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-17 10:18:53 +01:00
J. Nick Koston d99a7e2825
Fix race in wyoming test (#110766)
reverts #110751 and replaces it with a change to wait for the
assist_pipeline.async_pipeline_from_audio_stream to be called
which will actually solve the problem and unblock #110743
2024-02-17 08:24:21 +01:00
J. Nick Koston 50770ce436
Refactor config integration to use normal functions for setup (#110750)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-16 18:12:33 -06:00
Malte Franken d7f650ed7c
Bump georss-ign-sismologia-client to 0.8 (#110501)
* bump georss-ign-sismologia-client to 0.8

* fixed tests
2024-02-17 00:52:58 +02:00
J. Nick Koston 5adb9240c5
Wait for client to be created in wyoming tests (#110751)
* Add missing async_block_till_done in wyoming tests

* better fix

* better fix

* better fix

* better fix
2024-02-16 22:48:47 +01:00
Michael 58a6f26f66
Fix scene activation with climate entities with `None` attribute values (#110684)
don't call service with attribute None
2024-02-16 22:27:55 +01:00
J. Nick Koston 2cb0249f0a
Add filter to translation event listeners to avoid creating tasks (#110732) 2024-02-16 12:13:23 -06:00
J. Nick Koston d449eadac3
Guard ConfigEntry from being mutated externally without using the built-in interfaces (#110023)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-16 10:15:05 -06:00
Erik Montnemery a0ead2b861
Remove hourly weather entity from met.no (#97023) 2024-02-16 16:46:37 +01:00
Artur Pragacz 3392660537
Add toggle service to climate (#100418)
* Add toggle service to climate

* Fix mqtt test

* Add comments

* Fix rebase

* Remove not needed properties

* Fix toggle service

* Fix test

* Test

* Mod mqtt test

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2024-02-16 15:53:48 +01:00
Joakim Sørensen 23e81a45c8
Use snapshots in analytics tests (#110704) 2024-02-16 15:47:41 +01:00
Denis Shulyaka 2d74dafd3f
Generic Hygrostat: Do not log warning if the hygrostat is already not active (#102662)
* Generic Hygrostat: Do not log warning if the hygrostat is already not active

* add test
2024-02-16 15:29:14 +01:00
J. Nick Koston f9dc92a9a0
Fix recorder ws_info blocking the event loop (#110657)
* Fix recorder ws_info blocking the event loop

Fixes
```
2024-02-15 06:37:55.423 WARNING (MainThread) [asyncio] Executing <Task pending name=websocket_api.async:ws_info coro=<_handle_async_response() running at /usr/src/homeassistant/homeassistant/components/websocket_api/decorators.py:26> wait_for=<_GatheringFuture pending cb=[Task.task_wakeup()] created at /usr/local/lib/python3.12/asyncio/tasks.py:712> cb=[set.remove()] created at /usr/src/homeassistant/homeassistant/core.py:653> took 0.332 seconds
```

* no instance did not actually work
2024-02-16 15:11:09 +01:00
IceBotYT 35149a46fc
Bump linear-garage-door to 0.2.9 (#110298) 2024-02-16 13:56:25 +01:00
dupondje 0aaa517217
add missing state class to dsmr sensors (#110712)
current_average_demand and maximum_demand_current_month are missing a state class, which gives errors in the statistics tab in HA.
So adding them to the sensor.
2024-02-16 12:08:09 +01:00
Robert Resch bcce32e2de
Bump deebot-client to 5.2.1 (#110683)
* Bump deebot-client to 5.2.0

* Bumb again

* Fix tests
2024-02-16 11:47:36 +01:00
Jan-Philipp Benecke 613b183898
Avoid calling internals when adding mock config entry in Nightscout (#110600) 2024-02-16 10:00:52 +01:00
Matthew FitzGerald-Chamberlain ce8cf314f9
Add Aprilaire integration (#95093)
* Add Aprilaire integration

* Fix test errors

* Update constants

* Code review cleanup

* Reuse coordinator from config flow

* Code review fixes

* Remove unneeded tests

* Improve translation

* Code review fixes

* Remove unneeded fixture

* Code review fixes

* Code review updates

* Use base data coordinator

* Deduplicate based on MAC

* Fix tests

* Check mac address on init

* Fix mypy error

* Use config entry ID for entity unique ID

* Fix tests

* Code review updates

* Fix mypy errors

* Code review updates

* Add data_description

* Update homeassistant/components/aprilaire/coordinator.py

Co-authored-by: Jon Oberheide <506986+jonoberheide@users.noreply.github.com>

* Update .coveragerc

* Update homeassistant/components/aprilaire/coordinator.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Jon Oberheide <506986+jonoberheide@users.noreply.github.com>
2024-02-16 08:30:51 +01:00
J. Nick Koston 37897ee384
Move late import of config flows in loader to load time (#110688)
* Move late import of config flows in loader to load time

There does not seem to be any reason to import the
generated flows late. Import them at load time
with the rest of the generated files

* tests
2024-02-16 07:55:12 +01:00
Erik Montnemery ae39945a85
Correct config entry setup in fritz tests (#110669) 2024-02-15 20:52:40 +01:00
Erik Montnemery 06a21d4ed9
Bump pychromecast to 14.0.0 (#108374)
* Pass unregister callback to cast HomeAssisstantController

* Update tests

* Bump pychromecast to 14.0.0

* Fix lint warning, adjust tests

* Improve test coverage
2024-02-15 20:14:01 +01:00
Erik Montnemery 3526fd66df
Add option to block remote enabling of HA Cloud remote (#109700)
* Allow blocking remote enabling of HA Cloud remote

* Fix test
2024-02-15 17:26:06 +01:00
Livio Avalle c4247205ed
Add state_class to ring battery sensor for LTS (#109872)
* Add state_class to ring battery sensor for LTS

* Add test, in test_sensor.py, for state_class for battery entity; in response to comment in PR
2024-02-15 09:52:11 -06:00
J. Nick Koston d49bccf123
Ensure lamarzocco tests add config entry before updating it (#110423) 2024-02-15 09:09:47 -06:00
kingy444 3529eb6044
Powerview Gen 3 functionality (#110158)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-02-15 08:27:11 -06:00
Stackie Jia 636c7ce350
Enable strict type checking on apple_tv integration (#101688)
* Enable strict type checking on apple_tv integration

* move some instance variables to class variables

* fix type of attr_value

* fix tests for description_placeholders assertion

* nits

* Apply suggestions from code review

* Update remote.py

* Apply suggestions from code review

* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update config_flow.py

* Improve test coverage

* Update test_config_flow.py

* Update __init__.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-02-15 15:17:00 +01:00
Javier Fernández d555f91702
Update wallbox to 0.6.0 (#110636)
* Update wallbox plugin version

Closes #110566

* Fix unit tests failing

* Fix import order

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-15 15:04:32 +01:00
Åke Strandberg fd0f093299
Add some myuplink tests (#110521)
* Add some myuplink tests

* Update fixtures for api endpoints

* Adjust according to review

* Update snapshot file

* Remove unneded fixtures and improve typing

* More cleanup

* One last session scope removed

* Fix typing

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-15 13:44:45 +01:00
Joakim Sørensen 57d3f3f9f7
Split pre/post backup actions into dedicated methods (#110632)
* Split pre/post backup actions into dedicated methods

* Update homeassistant/components/backup/manager.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-02-15 12:38:36 +01:00
Aurélien Grenotton b9a8b992d7
Fix freebox pairing in bridge mode (#106131) 2024-02-15 12:34:29 +01:00
J. Nick Koston 8da07f1bf2
Fix formatting of mac addresses from dhcp discovery mocking in axis (#110560)
dhcp returns addresses in lowercase without :
2024-02-14 20:37:31 -05:00
J. Nick Koston d48a45fee7
Fix formatting of mac addresses from dhcp discovery mocking in config_entries test (#110617) 2024-02-14 16:32:02 -06:00
J. Nick Koston 499c42364e
Fix formatting of mac addresses from dhcp discovery mocking in broadlink (#110558)
* Fix formatting of mac addresses from dhcp discovery mocking in broadlink

dhcp returns addresses in lowercase without :

* fix missed ones

* broadlink has same format
2024-02-14 17:26:14 -05:00
J. Nick Koston 78bc561700
Fix formatting of mac addresses from dhcp discovery mocking in nest (#110584)
dhcp returns addresses in lowercase without :
2024-02-14 17:25:52 -05:00
J. Nick Koston 7b4c5a112c
Fix formatting of mac addresses from dhcp discovery mocking in radiotherm (#110593)
dhcp returns addresses in lowercase without :
2024-02-14 23:25:33 +01:00
J. Nick Koston 1f67e4fed1
Fix formatting of mac addresses from dhcp discovery mocking in ruuvi_gateway (#110597)
dhcp returns addresses in lowercase without :
2024-02-14 17:25:22 -05:00
J. Nick Koston 28afe9ff9e
Correct misaligned formatting of mac addresses in samsungtv (#110599)
* Correct misaligned formatting of mac addresses in samsungtv

dhcp returns addresses in lowercase without : and there were places
were it was not passed through format_mac which resulted in the wrong
format being saved in the config entry

* safer
2024-02-14 17:25:08 -05:00
J. Nick Koston 0ea524659c
Fix formatting of mac addresses from dhcp discovery mocking in roomba (#110596)
dhcp returns addresses in lowercase without :
2024-02-14 23:24:34 +01:00
J. Nick Koston 20d1cd1246
Fix formatting of mac addresses from dhcp discovery mocking in qnap_qsw (#110592)
dhcp returns addresses in lowercase without :
2024-02-14 23:23:43 +01:00
J. Nick Koston c7e2f24303
Fix formatting of mac addresses from dhcp discovery mocking in lametric (#110580) 2024-02-14 23:23:22 +01:00
J. Nick Koston b87e34ec67
Fix formatting of mac addresses from dhcp discovery mocking in screenlogic (#110602)
dhcp returns addresses in lowercase without :
2024-02-14 17:23:13 -05:00
J. Nick Koston 9105dd16e3
Fix formatting of mac addresses from dhcp discovery mocking in somfy_mylink (#110603)
dhcp returns addresses in lowercase without :
2024-02-14 17:23:02 -05:00
J. Nick Koston 35bcf2e9e4
Fix formatting of mac addresses from dhcp discovery mocking in squeezebox (#110604)
dhcp returns addresses in lowercase without :
2024-02-14 17:22:51 -05:00
J. Nick Koston d4562f4674
Fix formatting of mac addresses from dhcp discovery mocking in steamist (#110605)
dhcp returns addresses in lowercase without :
2024-02-14 17:22:38 -05:00
J. Nick Koston 48cd973c62
Fix formatting of mac addresses from dhcp discovery mocking in tailwind (#110606)
dhcp returns addresses in lowercase without :
2024-02-14 17:22:24 -05:00
J. Nick Koston 334c177e67
Fix formatting of mac addresses from dhcp discovery mocking in tesla_wall_connector (#110607)
* Fix formatting of mac addresses from dhcp discovery mocking in tesla_wall_connector

dhcp returns addresses in lowercase without :

* Fix formatting of mac addresses from dhcp discovery mocking in tesla_wall_connector

dhcp returns addresses in lowercase without :
2024-02-14 17:22:09 -05:00
J. Nick Koston cefaf0e065
Fix formatting of mac addresses from dhcp discovery mocking in tolo (#110608)
dhcp returns addresses in lowercase without :
2024-02-14 17:21:56 -05:00
J. Nick Koston 77a44c54dd
Fix formatting of mac addresses from dhcp discovery mocking in twinkly (#110609)
dhcp returns addresses in lowercase without :
2024-02-14 17:21:33 -05:00
J. Nick Koston 2fe246441f
Fix formatting of mac addresses from dhcp discovery mocking in unifiprotect (#110610)
dhcp returns addresses in lowercase without :
2024-02-14 17:21:19 -05:00
J. Nick Koston 2a04eabe18
Fix formatting of mac addresses from dhcp discovery mocking in verisure (#110611)
dhcp returns addresses in lowercase without :
2024-02-14 17:21:04 -05:00
J. Nick Koston e6ac4c5f1f
Fix formatting of mac addresses from dhcp discovery mocking in vicare (#110613)
dhcp returns addresses in lowercase without :
2024-02-14 17:20:47 -05:00
J. Nick Koston fa026b7e12
Fix formatting of mac addresses from dhcp discovery mocking in wiz (#110615)
dhcp returns addresses in lowercase without :
wiz discovery returns addresses in lowercase without :
2024-02-14 17:20:32 -05:00
J. Nick Koston 79b2e465de
Fix formatting of mac addresses from dhcp discovery mocking in yeelight (#110616)
dhcp returns addresses in lowercase without :
2024-02-14 17:20:15 -05:00
J. Nick Koston c20d2d44ed
Fix formatting of mac addresses from dhcp discovery mocking in fronius (#110572)
Co-authored-by: Matthias Alphart <farmio@alphart.net>
2024-02-14 16:18:19 -06:00
J. Nick Koston dcfff6c138
Fix formatting of mac addresses from dhcp discovery mocking in powerwall (#110591)
dhcp returns addresses in lowercase without :
2024-02-14 23:11:25 +01:00
J. Nick Koston cc3783f999
Fix misaligned mac formatting in goalzero (#110574)
The DHCP mac address was being set as aabbcceeddff but the user step
was setting it as aa:bb:cc:dd:ee:ff
2024-02-14 23:10:07 +01:00
J. Nick Koston 5988db1670
Fix formatting of mac addresses from dhcp discovery mocking in dlink (#110562)
* Fix formatting of mac addresses from dhcp discovery mocking in dlink

dhcp returns addresses in lowercase without :

* fix tests
2024-02-14 23:07:45 +01:00
J. Nick Koston cd1c633ff9
Fix tplink not updating IP from DHCP discovery and discovering twice (#110557)
We only called format_mac on the mac address if we connected
to the device during entry creation. Since the format of the
mac address from DHCP discovery did not match the format saved
in the unique id, the IP would not get updated and a second
discovery would appear

Thankfully the creation path does format the mac so we did not
create any entries with an inconsistantly formatted unique id

fixes #110460
2024-02-14 23:03:30 +01:00
J. Nick Koston c045e23000
Fix formatting of mac addresses from dhcp discovery mocking in overkiz (#110590) 2024-02-14 16:01:15 -06:00
Jan-Philipp Benecke 5da31a3f1d
Avoid calling internals when adding mock config entry in Squeezebox (#110601) 2024-02-14 22:59:49 +01:00
J. Nick Koston 4627e8b1fc
Fix formatting of mac addresses from dhcp discovery mocking in reolink (#110594)
dhcp returns addresses in lowercase without :
2024-02-14 21:39:30 +01:00
J. Nick Koston 0bbe46d236
Fix formatting of mac addresses from dhcp discovery mocking in airzone (#110559)
dhcp returns addresses in lowercase without :
2024-02-14 20:59:16 +01:00
J. Nick Koston 16d2482fe6
Fix formatting of mac addresses from dhcp discovery mocking in elkm1 (#110564)
dhcp returns addresses in lowercase without :
2024-02-14 20:58:40 +01:00
J. Nick Koston 5ce39f2177
Fix formatting of mac addresses from dhcp discovery mocking in emonitor (#110565)
dhcp returns addresses in lowercase without :
2024-02-14 20:58:07 +01:00
J. Nick Koston 730e8ab5f3
Fix formatting of mac addresses from dhcp discovery mocking in esphome (#110567)
dhcp returns addresses in lowercase without :
2024-02-14 20:57:37 +01:00
J. Nick Koston 08f97d66ff
Fix formatting of mac addresses from dhcp discovery mocking in flux_led (#110568)
dhcp returns addresses in lowercase without :
2024-02-14 20:56:00 +01:00
J. Nick Koston a87960a323
Fix formatting of mac addresses from dhcp discovery mocking in onvif (#110589)
dhcp returns addresses in lowercase without :
2024-02-14 20:55:14 +01:00
J. Nick Koston 52e8f7f865
Fix formatting of mac addresses from dhcp discovery mocking in fully_kiosk (#110573)
dhcp returns addresses in lowercase without :
2024-02-14 20:54:44 +01:00
J. Nick Koston efbfec0ece
Fix formatting of mac addresses from dhcp discovery mocking in guardian (#110575)
dhcp returns addresses in lowercase without :
2024-02-14 20:54:16 +01:00
J. Nick Koston cd0ce7d9f6
Fix formatting of mac addresses from dhcp discovery mocking in intellifire (#110579)
dhcp returns addresses in lowercase without :
2024-02-14 20:53:50 +01:00
J. Nick Koston 98263d7d76
Fix formatting of mac addresses from dhcp discovery mocking in lifx (#110581)
dhcp returns addresses in lowercase without :
2024-02-14 20:53:26 +01:00
J. Nick Koston 815232069a
Fix formatting of mac addresses from dhcp discovery mocking in motion_blinds (#110583)
dhcp returns addresses in lowercase without :
2024-02-14 20:52:32 +01:00
J. Nick Koston b0e87c0941
Fix formatting of mac addresses from dhcp discovery mocking in nuki (#110585)
dhcp returns addresses in lowercase without :
2024-02-14 20:51:44 +01:00
J. Nick Koston 4eca0371d5
Fix formatting of mac addresses from dhcp discovery mocking in obihai (#110586)
dhcp returns addresses in lowercase without :
2024-02-14 20:51:06 +01:00
J. Nick Koston 88fce6a76d
Fix formatting of mac addresses from dhcp discovery mocking in insteon (#110578)
dhcp returns addresses in lowercase without :
2024-02-14 20:49:32 +01:00
J. Nick Koston bba19a5bab
Fix formatting of mac addresses from dhcp discovery mocking in hunterdouglas_powerview (#110577)
dhcp returns addresses in lowercase without :
2024-02-14 20:48:53 +01:00
Joost Lekkerkerker f72efa9618
Add entity translations to OralB (#97402)
* Make bluetooth use the translation from the entity description

* Add entity translations to OralB

* Remove links to other platforms

* Remove links to other platforms

* Remove links to other platforms

* Add test

* Use is

* Fix tests

* Update homeassistant/components/oralb/strings.json
2024-02-14 17:21:47 +01:00
J. Nick Koston 3a053afac6
Create backups files without having to copy inner tarballs (#110267) 2024-02-14 10:08:22 -06:00
Joost Lekkerkerker 0e833c5fe3
Migrate Twinkly to has entity naming (#97206)
* Migrate Twinkly to has entity naming

* Update the device name after sync

* Fix tests

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-02-14 16:43:29 +01:00
Simone Chemelli 538ef7764e
Move Shelly thermostat check to status endpoint (#110543)
* Move Shelly thermostat check to status endpoint

* fix key path
2024-02-14 16:36:42 +01:00
DeerMaximum d16d9d72c3
Add config flow to Velux (#89155)
* Add config_flow

* Add old config import

* Change from platform setup to entry setup

* Improve yaml config import

* Allow multiple hosts

* Apply recommendations

* Add DeerMaximum as codeowner

* Apply recommendations

* Fix config schema

* Fix hass data

* Remove DeerMaximum from CODEOWNERS

* Try to fix tests in ci

* Try to fix tests in ci 2

* Try to fix tests in ci 3

* Revert: Try to fix tests in ci 3

* Add end-to-end flow to connection error test

* Fix rebase

* Add required changes

* Change deprecation date

* Import only valid config entries

* Improve issue creation

* Fix error type

* Add missing test

* Optimize issue creation

* Optimize tests

* Add check for duplicate entries

* Add already_configured message

* Create issue for duplicate entries
2024-02-13 21:31:56 +01:00
DustyArmstrong 3bf6d525fb
Bump datapoint to 0.9.9 + re-enable Met Office Integration (#110206) 2024-02-13 17:24:08 +01:00
Jonas Fors Lellky f7c43710dc
Refactor flexit_bacnet to use icon translations (#110479) 2024-02-13 16:09:18 +01:00
Jonas Fors Lellky 6091ae55dc
Add setpoints for fans to flexit_bacnet (#110262)
* Adds setpoints for fans to flexit_bacnet

* Add snapshot test for flexit_bacnet number

* Add test for flexit_bacnet number implementation

* Refactor set_native_value_fn

* Refactor names of number entities

Also refactor keys, translation keys
Order alphabetically
Update test snapshot

* Add icons to flexit_bacnet number entities

* Refactor to use icon translations, add unit of measurement

* Remove redundant assert
2024-02-13 14:55:02 +01:00
Michael 602380e111
Detect reached API rate limit in Tankerkoenig (#110432) 2024-02-13 14:34:01 +01:00
Cyrill Raccaud 6812596cd7
Switch to new Bring! lib (#110355)
* switch to new bring lib

* rename lib again
2024-02-13 13:25:32 +01:00
Martin Hjelmare f140c1a46d
Deprecate cloud tts platform config (#110461)
* Deprecate cloud tts platform config

* Add test
2024-02-13 13:00:42 +01:00
Jan Bouwhuis 09f1ec78a5
Handle template errors on MQTT payload handling (#110180)
* Handle template errors on MQTT payload handling (alt)

* Handle mqtt event en image template errors correctly
2024-02-13 10:59:55 +01:00
Josef Zweck ee25f6b960
Add additonal number entities to La Marzocco (#108258) 2024-02-13 09:47:39 +01:00
J. Nick Koston 77f416fa04
Ensure cast tests add config entry before updating it (#110441)
* Ensure cast tests add config entry before updating it

* time to walk away for a bit

* missed two
2024-02-13 05:01:37 +01:00
J. Nick Koston 0e1cdc1f79
Ensure github tests add config entry before updating it (#110430) 2024-02-13 05:00:44 +01:00
J. Nick Koston 704ad67917
Ensure hue tests add config entry before updating it (#110428) 2024-02-13 04:59:26 +01:00
Aaron Bach e3c838d512
Update Notion auth to store refresh tokens instead of account passwords (#109670) 2024-02-12 20:35:06 -07:00
Raman Gupta c1d61b9748
Improve climate turn_on/turn_off services for zwave_js (#109187)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-02-12 19:06:23 -05:00
Maciej Bieniek b60f931e6d
Improve tests for Shelly WallDisplay (#110435)
Co-authored-by: Maciej Bieniek <478555+bieniu@users.noreply.github.com>
2024-02-12 16:51:34 -06:00
J. Nick Koston da50e459bf
Ensure knx tests add config entry before updating it (#110425) 2024-02-12 23:13:10 +01:00
J. Nick Koston 92842c28d2
Ensure cast tests add config entry before updating it (#110416) 2024-02-12 23:06:13 +01:00
J. Nick Koston 067645520a
Ensure dlna_dmr tests add config entry before updating it (#110418) 2024-02-12 22:59:44 +01:00
J. Nick Koston e605b96d84
Ensure config entry oauth2 tests add config entry before updating it (#110421) 2024-02-12 22:59:17 +01:00
J. Nick Koston d9c581e2c8
Ensure homematicip_cloud tests add config entry before updating it (#110429) 2024-02-12 23:57:48 +02:00
J. Nick Koston 4e76e6b2b0
Ensure gdacs tests add config entry before updating it (#110431) 2024-02-12 23:56:48 +02:00
J. Nick Koston b3d9e15fb4
Ensure blink tests add config entry before updating it (#110415) 2024-02-12 22:56:22 +01:00
J. Nick Koston a3a1f8216c
Migrate luftdaten to use async_update_entry to alter config entries (#110424) 2024-02-12 22:55:34 +01:00
J. Nick Koston ddab106391
Migrate twentemilieu to use async_update_entry to alter config entries (#110419) 2024-02-12 22:55:05 +01:00
J. Nick Koston bb9ffa758d
Ensure sonarr tests add config entry before updating it (#110422) 2024-02-12 15:30:01 -06:00
J. Nick Koston 8282018260
Migrate onewire to use async_update_entry to alter config entries (#110413) 2024-02-12 15:29:50 -06:00
J. Nick Koston 61610a5ef9
Ensure deconz tests add config entry before updating it (#110417) 2024-02-12 15:29:33 -06:00
J. Nick Koston bc0a78d069
Migrate tplink to use async_update_entry to alter config entries (#110406) 2024-02-12 21:39:37 +01:00
J. Nick Koston 45f23f4458
Migrate trend to use async_update_entry to alter config entries (#110408) 2024-02-12 14:38:56 -06:00
J. Nick Koston 5c60ff19e9
Migrate plex to use async_update_entry to alter config entries (#110405) 2024-02-12 21:38:38 +01:00
J. Nick Koston 15e8d66fea
Migrate unifiprotect to use async_update_entry to alter config entries (#110409) 2024-02-12 21:38:25 +01:00
J. Nick Koston 04dccc7ec6
Migrate mqtt to use async_update_entry to alter config entries (#110407) 2024-02-12 21:38:13 +01:00
J. Nick Koston 4a98f3f223
Migrate ping to use async_update_entry to alter config entries (#110404) 2024-02-12 21:25:17 +01:00
J. Nick Koston 7dcf2e94b4
Migrate zha to use async_update_entry to alter config entries (#110402) 2024-02-12 21:24:56 +01:00
J. Nick Koston c3d9192384
Migrate smartthings to use async_update_entry to alter config entries (#110403) 2024-02-12 21:24:45 +01:00
J. Nick Koston cc13d7eec7
Migrate hue to use async_update_entry to alter config entries (#110310) 2024-02-12 20:20:10 +01:00
J. Nick Koston 5c7d3035ca
Migrate ipp to use async_update_entry to alter config entries (#110311) 2024-02-12 20:19:48 +01:00
Maciej Bieniek 2bd64dba6b
Add `removal_condition` for Shelly analog input sensors (#110331)
* Add remove condition for analog input sensors

* xpercent key is not present in the payload if it has not been configured

---------

Co-authored-by: Maciej Bieniek <478555+bieniu@users.noreply.github.com>
2024-02-12 20:13:11 +01:00
J. Nick Koston 32e3f6c5a7
Migrate roku to use async_update_entry to alter config entries (#110363) 2024-02-12 20:10:06 +01:00