Compare commits

...
Sign in to create a new pull request.

2780 commits

Author SHA1 Message Date
Josef Zweck
1ce8bfdaa4
Use test helpers for acaia buttons (#130626) 2024-11-14 16:34:17 +01:00
Robert Resch
cd12720085
Add Python version to issue ID (#130611) 2024-11-14 16:31:33 +01:00
epenet
c7ee7dc880
Refactor translation checks (#130585)
* Refactor translation checks

* Adjust

* Improve

* Restore await

* Delay pytest.fail until the end of the test
2024-11-14 16:26:05 +01:00
epenet
472414a8d6
Add missing translation string to smarty (#130624) 2024-11-14 16:17:08 +01:00
Lennard Beers
0c44c632d4
Add number platform to eq3btsmart (#130429) 2024-11-14 15:38:38 +01:00
Álvaro Fernández Rojas
61d0de3042
Bump aioairzone to 0.9.6 (#130559)
* Update aioairzone to v0.9.6

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

* Remove _async_migrator_mac_empty and improve tests

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

* Remove WebServer empty mac fixes as requested by @epenet

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

---------

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-11-14 15:27:10 +01:00
Thibaut
01332a542c
Removing myself from template codeowners (#130617)
* Removing myself as codeowners

* Fix

---------

Co-authored-by: Joostlek <joostlek@outlook.com>
2024-11-14 15:23:55 +01:00
Andre Lengwenus
3d84e35268
Move lcn non-config_entry related code to async_setup (#130603)
* Move non-config_entry related code to async_setup

* Remove action unload
2024-11-14 14:27:19 +01:00
Josef Zweck
eea782bbfe
Add acaia integration (#130059)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-11-14 13:28:38 +01:00
Lennard Beers
a949d18c30
Bump eq3btsmart to 1.4.1 (#130426) 2024-11-14 13:04:22 +01:00
Marc Mueller
a748897bd2
Update hassfest image to Python 3.13 (#130607) 2024-11-14 12:44:06 +01:00
Robert Resch
3201142fd8
Fix hassfest by adding go2rtc reqs (#130602) 2024-11-14 11:01:26 +01:00
starkillerOG
d0a58b68e8
Bump reolink-aio to 0.11.1 (#130600) 2024-11-14 10:48:25 +01:00
Simone Chemelli
93f79be2f4
Update uptime deviation for Vodafone Station (#130571)
Update sensor.py
2024-11-14 10:35:03 +01:00
Robert Resch
46cfe6aa32
Refactor camera WebRTC tests (#130581) 2024-11-14 10:28:04 +01:00
Robert Resch
301043ec38
Add require_webrtc_support decorator (#130519) 2024-11-14 10:27:45 +01:00
puddly
245fc246d8
Ensure ZHA setup works with container installs (#130470) 2024-11-14 10:13:29 +01:00
Noah Husby
58fd917cb7
Disable brightness from devices with no display in Cambridge Audio (#130369) 2024-11-14 10:11:44 +01:00
Steven B.
2c1d1f5777
Do not trigger events for updated ring events (#130430) 2024-11-14 10:09:58 +01:00
Luke Lashley
938b1eca22
Fix when the Roborock map is being provisioned (#130574) 2024-11-14 09:52:28 +01:00
Brett Adams
2fda4c82de
Force login prompt in Tesla Fleet (#130576) 2024-11-14 09:46:24 +01:00
J. Nick Koston
4200913d03
Fix non-thread-safe operation in powerview number (#130557) 2024-11-14 09:45:08 +01:00
Tony
4aad614497
Bump aioruckus to 0.42 (#130487) 2024-11-14 09:43:59 +01:00
epenet
6a3b4a6a23
Adjust minimum scapy version to 2.6.1 (#130565) 2024-11-13 17:49:39 -06:00
Michael Hansen
51c6ee97b1
Upgrade to hassil 2.0 (#130544)
* Working on hassil 2.0

* Bump to hassil 2.0

* Update snapshots

* Remove debug logging
2024-11-13 16:50:08 -05:00
Simon Lamon
4002bc3c25
Downgrade devcontainer to Python 3.12 again (#130562) 2024-11-13 22:03:34 +01:00
J. Nick Koston
c35ef6bda3
Bump aiohttp to 3.11.0 (#130542) 2024-11-13 19:32:14 +01:00
Marc Mueller
ed5560aec2
Update base image to Python 3.13 and deprecated 3.12 (#130425) 2024-11-13 19:28:53 +01:00
Sheldon Ip
0a5a2de78e
Fix translations in subaru (#130486) 2024-11-13 18:46:52 +01:00
Brig Lamoreaux
7fd337d67f
fix translation in srp_energy (#130540) 2024-11-13 18:42:26 +01:00
Marc Mueller
5f68d405b2
Update huum to 0.7.12 (#130527) 2024-11-13 17:26:27 +01:00
Erik Montnemery
093b16c723
Make WS command backup/generate send events (#130524)
* Make WS command backup/generate send events

* Update backup.create service
2024-11-13 16:16:49 +01:00
Steven B.
ac4cb52dbb
Bump ring-doorbell to 0.9.12 (#130419) 2024-11-13 08:04:23 -06:00
dunnmj
72b976f832
Add Sky remote integration (#124507)
Co-authored-by: Kyle Cooke <saty9@users.noreply.github.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-11-13 14:29:04 +01:00
Daniel Hjelseth Høyer
f6bc5f050e
Bump millheater to 0.12.2 (#130454) 2024-11-13 14:28:19 +01:00
epenet
8300afc00d
Improve type hints in fritz config flow (#130511)
* Improve type hints in fritz config flow

* Improve coverage

* Apply suggestions from code review

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>

---------

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2024-11-13 13:45:52 +01:00
epenet
ab11b84678
Improve type hints in fritzbox config flow (#130509) 2024-11-13 13:01:54 +01:00
Joost Lekkerkerker
b78453b85b
Bump aiowithings to 3.1.3 (#130504) 2024-11-13 12:21:15 +01:00
Joost Lekkerkerker
b270e4556c
Avoid core manifest to have an issue tracker (#130514) 2024-11-13 12:16:07 +01:00
Joost Lekkerkerker
e90893e2bc
Fix Music Assistant manifest (#130515) 2024-11-13 11:43:31 +01:00
dependabot[bot]
a06e7e31b9
Bump github/codeql-action from 3.27.1 to 3.27.3 (#130489)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.27.1 to 3.27.3.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v3.27.1...v3.27.3)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-13 11:06:38 +01:00
Robert Resch
2eaaadd736
Add go2rtc recommended version (#130508) 2024-11-13 11:01:05 +01:00
G Johansson
0ac00ef092
Fix legacy _attr_state handling in AlarmControlPanel (#130479) 2024-11-13 10:55:28 +01:00
Robert Resch
3092297979
Bump go2rtc-client to 0.1.1 (#130498) 2024-11-13 09:55:52 +01:00
Thomas55555
827875473b
Fix RecursionError in Husqvarna Automower coordinator (#123085)
* reach maximum recursion depth exceeded in tests

* second background task

* Update homeassistant/components/husqvarna_automower/coordinator.py

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

* Update homeassistant/components/husqvarna_automower/coordinator.py

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

* test

* modify test

* tests

* use correct exception

* reset mock

* use recursion_limit

* remove unneeded ticks

* test TimeoutException

* set lower recursionlimit

* remove not that important comment and move the other

* test that we connect and listen successfully

* Simulate hass shutting down

* skip testing against the recursion limit

* Update homeassistant/components/husqvarna_automower/coordinator.py

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

* mock

* Remove comment

* Revert "mock"

This reverts commit e8ddaea3d7.

* Move patch to decorator

* Make execution of patched methods predictable

* Parametrize test, make mocked start_listening block

* Apply suggestions from code review

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Erik <erik@montnemery.com>
2024-11-13 09:54:37 +01:00
Joost Lekkerkerker
5cce369ce8
Bump aiowithings to 3.1.2 (#130469) 2024-11-13 07:55:33 +01:00
Joost Lekkerkerker
fdb773c921
Add title to water heater component (#130446) 2024-11-13 07:55:13 +01:00
starkillerOG
8b505a2273
Bump reolink_aio to 0.11.0 (#130481) 2024-11-13 07:35:51 +01:00
Charles Garwood
a9f468509b
Bump zwave-js-server-python to 0.59.1 (#130468) 2024-11-13 07:14:39 +01:00
J. Nick Koston
4ff8b8015c
Bump aiohttp to 3.11.0rc2 (#130484) 2024-11-12 22:07:26 -06:00
mrspouse
5c52e865a0
Correct spelling of BloodGlucoseConcentrationConverter (#130449)
* Correct spelling of BloodGlucoseConcentrationConverter

* Correct spelling of BloodGlucoseConcentrationConverter
2024-11-12 21:48:42 +01:00
Kelvin Dekker
6bfc0cbb0c
Fix typo in file strings (#130465) 2024-11-12 21:33:52 +01:00
G Johansson
388473ecd7
Add diagnostics to Nord Pool (#130461) 2024-11-12 19:55:27 +01:00
G Johansson
285468d85f
Fix translation in statistics (#130455)
* Fix translation in statistics

* Update homeassistant/components/statistics/strings.json
2024-11-12 18:44:32 +01:00
epenet
167025a18c
Simplify modern_forms config flow (#130441)
* Simplify modern_forms config flow

* Rename variable

* Drop CONF_NAME
2024-11-12 18:03:37 +01:00
Joakim Sørensen
ac0c75a598
Add upload capability to the backup integration (#128546)
* Add upload capability to the backup integration

* Limit context switch

* rename

* coverage for http

* Test receiving a backup file

* Update test_manager.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-11-12 15:27:53 +01:00
Robert Resch
cb9cc0f801
Go2rtc bump and set ffmpeg logs to debug (#130371) 2024-11-12 11:53:14 +01:00
Lennard Beers
7758d8ba48
Add switch platform to eq3btsmart (#130363) 2024-11-12 11:42:25 +01:00
epenet
7045b776b6
Use report_usage in helpers (#130365) 2024-11-12 09:25:13 +01:00
J. Nick Koston
22aed92461
Bump aiohttp to 3.11.0rc1 (#130320) 2024-11-12 08:29:01 +01:00
LG-ThinQ-Integration
60bf0f6b06
Fix fan's warning TURN_ON, TURN_OFF (#130327)
Co-authored-by: yunseon.park <yunseon.park@lge.com>
2024-11-12 08:26:28 +01:00
G Johansson
3eab72b2aa
Improve exception handling in Nord Pool (#130386)
* Improve exception handling in Nord Pool

* Improve auth string

* Remove auth
2024-11-11 23:02:48 +01:00
Daniel Hjelseth Høyer
d1c3e1caa9
Bump Tibber 0.30.8 (#130388) 2024-11-11 21:05:52 +01:00
Sid
8b547551e2
Bump ruff to 0.7.3 (#130390) 2024-11-11 21:05:41 +01:00
epenet
f1ce7ee8ce
Adjust logging for OptionsFlow deprecation (#130360) 2024-11-11 21:02:09 +01:00
J. Nick Koston
e388e9f396
Fix missing title placeholders in powerwall reauth (#130389) 2024-11-11 20:48:49 +01:00
Markus Lanthaler
96c12fdd10
Update tuya-device-sharing-sdk to version 0.2.1 (#130333) 2024-11-11 20:40:37 +01:00
Noah Husby
e97a5f927c
Bump aiorussound to 4.1.0 (#130382) 2024-11-11 20:26:45 +01:00
epenet
313309a7e0
Remove deprecated YAML loaders (#130364) 2024-11-11 20:24:51 +01:00
Barry vd. Heuvel
ebe62501d6
Bump Weheat wh-python to 2024.11.02 (#130337) 2024-11-11 20:14:12 +01:00
Robert Resch
c54369fe93
Add go2rtc to devcontainer (#130380) 2024-11-11 20:13:20 +01:00
Marc Mueller
c89bf6a9aa
Update pillow to 11.0.0 (#130194) 2024-11-11 20:12:32 +01:00
epenet
906bdda6fa
Use report_usage in integrations (#130366) 2024-11-11 20:09:26 +01:00
Andre Lengwenus
f3708549f0
Code cleanup for LCN integration (#130385) 2024-11-11 20:08:38 +01:00
Andre Lengwenus
3f34ddd74f
Bump lcn-frontend to 0.2.2 (#130383) 2024-11-11 20:07:12 +01:00
Marc Mueller
b19c44b4a5
Update pydantic to 1.10.19 (#130373) 2024-11-11 12:01:47 -06:00
Erik Montnemery
0cc50bc7bc
Fix copy-paste error in STATISTIC_UNIT_TO_UNIT_CONVERTER (#130375) 2024-11-11 11:09:06 -06:00
Joost Lekkerkerker
e56dec2c8e
Bump spotifyaio to 0.8.8 (#130372) 2024-11-11 17:35:54 +01:00
Olivier Corradi
e797149a16
Rename "CO2 Signal" display name to Electricity Maps for consistency (#130242)
* Update strings.json for Electricity Maps

* Update strings.json

* Update config_flow.py

* Update test_config_flow.py

* Fix test
2024-11-11 17:34:29 +01:00
Simon Lamon
c96f1c87a6
Bump python-linkplay to 0.0.20 (#130348) 2024-11-11 17:30:27 +01:00
Erik Elkins
388c5807ea
Add Switchbot Hub 2, Switchbot Meter Pro and Switchbot Meter Pro (CO2) devices to Switchbot Cloud integration. (#130295) 2024-11-11 16:10:52 +01:00
Robert Resch
41c6eeedca
Bump deebot-client to 8.4.1 (#130357) 2024-11-11 15:41:18 +01:00
Lennard Beers
829632b0af
Add binary sensor platform to eq3btsmart (#130352) 2024-11-11 14:27:52 +01:00
Erik Montnemery
5293fc73d8
Sort some code in cloud preferences (#130345)
Sort some code in cloud prefs
2024-11-11 13:21:16 +01:00
Simon Lamon
870bf388e0
Add seek support to LinkPlay (#130349) 2024-11-11 12:49:56 +01:00
Simon Lamon
7a4dac1eb1
Add Spotify and Tidal to playingmode mapping (#130351) 2024-11-11 12:46:02 +01:00
Erik Montnemery
88480d154a
Fix typo in BaseBackupManager.async_restore_backup (#130329) 2024-11-11 12:10:49 +01:00
Lennard Beers
5497c440d9
Prepare eq3btsmart base entity for additional platforms (#130340) 2024-11-11 11:46:11 +01:00
Lennard Beers
1e26cf13d6
Use runtime data for eq3btsmart (#130334) 2024-11-11 10:59:50 +01:00
Nerdix
0dd208a4b9
Add alarm count sensor for Kostal Inverters (#130324) 2024-11-11 09:07:47 +01:00
dependabot[bot]
c3492bc0ed
Bump github/codeql-action from 3.27.0 to 3.27.1 (#130323) 2024-11-11 08:14:42 +01:00
G Johansson
85bf8d1374
Fix Homekit error handling alarm state unknown or unavailable (#130311) 2024-11-10 22:40:23 +00:00
Jan Bouwhuis
e040eb0ff2
Remove extra state attributes from some QNAP sensors (#130310) 2024-11-10 22:26:00 +01:00
Max Shcherbina
d7f41ff8a9
Update generic thermostat strings for clarity and accuracy (#130243) 2024-11-10 22:13:38 +01:00
Jan Bouwhuis
de5437f61e
Remove YAML warning for thethingsnetwork after warning for 6 months (#130307) 2024-11-10 22:12:31 +01:00
Jan Bouwhuis
c52a893e21
Remove YAML import from lcl integration after 6 months deprecation (#130305) 2024-11-10 21:10:18 +01:00
Joost Lekkerkerker
f7f1830b7e
Add support for binary sensor states in Google Assistant (#127652) 2024-11-10 20:34:24 +01:00
Simon Lamon
784ad20fb6
Add diagnostics to LinkPlay (#126768) 2024-11-10 20:31:40 +01:00
Richard Cox
0468e7e7a3
Update Sonarr config flow to standardize ports (#127625)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-11-10 20:23:23 +01:00
dotvav
88c227681d
Bump pypalazzetti to 0.1.11 (#130293) 2024-11-10 20:13:31 +01:00
Lennard Beers
3a37ff13a6
Bump eq3btsmart to 1.2.1 (#130297) 2024-11-10 20:12:46 +01:00
Simone Chemelli
73929e6791
Avoid Shelly data update during shutdown (#130301) 2024-11-10 20:11:42 +01:00
Manu
980b0fa5e6
Deprecate api_call action in Habitica integration (#128119) 2024-11-10 19:37:41 +01:00
Tsvi Mostovicz
fbc4a87166
Remove Jewish Calendar config flow upgrade (#129612) 2024-11-10 19:35:01 +01:00
Allen Porter
7f9ec2a79e
Ignore WebRTC candidates for nest cameras (#130294) 2024-11-10 19:27:40 +01:00
Jan Bouwhuis
d8b55d39e4
Remove tibber legacy notify service after 6 months of deprecation (#130292) 2024-11-10 19:27:11 +01:00
Jan Bouwhuis
ee41725b53
Remove jewish_calendar yaml support after 6 months of deprecation (#130291) 2024-11-10 16:51:08 +01:00
J. Diego Rodríguez Royo
ae1203336d
Add links to deprecation issue message for Home Connect Binary door (#129779) 2024-11-10 16:37:53 +01:00
Michael
f10063c9be
Fix translation key for done response in conversation (#130247) 2024-11-10 16:28:58 +01:00
Åke Strandberg
1da4579a09
Add more f-series models to myuplink (#130283) 2024-11-10 15:46:50 +01:00
Jan Bouwhuis
7fd9339ad8
Remove unused file CONFIG_SCHEMA (#130287) 2024-11-10 15:34:08 +01:00
Jan Bouwhuis
de391fa98b
Remove geniushub yaml support after 6 months of deprecation (#130285)
* Remove geniushub YAML import after 6 moths of deprecation

* Update homeassistant/components/geniushub/__init__.py

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-11-10 14:58:44 +01:00
J. Nick Koston
70211ab78e
Bump aiohttp to 3.11.0rc0 (#130284) 2024-11-10 13:45:46 +00:00
Nicholas Romyn
a1a08f7755
Ecobee aux cutover threshold (#129474)
* removing extra blank space

* Adding EcobeeAuxCutoverThreshold

First pass.

* minor reorg and changes; testing local check-in

* Adding entity, setting device class and name

* Bumping max value slightly to hopefully accomodate celsius, setting numberMode=box

* fixing the entity name for aux cutover threshold

* Combined async_add_entities

* Using a list comprehension

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

* fixing stuff with listcomprehension

* exchanging call to list.append() to extend with list comprehension

* Updating the class name and the entity name to match the device UI.
Removing abbreviations from entity names

* Fixing tests to match new entity names

* respecting 88 column limit

* Formatting

* Adding test coverage for update/set compressorMinTemp values

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-11-10 14:13:01 +01:00
G Johansson
433321136d
Remove incorrect mark fixture in nordpool (#130278) 2024-11-10 12:28:18 +01:00
Manu
0677bba5bd
Add actions for scoring habits and rewards in Habitica (#129605) 2024-11-10 12:26:07 +01:00
G Johansson
d0ad834d93
Move manual trigger entity tests (#130134) 2024-11-10 12:14:13 +01:00
Simon Lamon
7d2d6a82b0
Allow dynamic max preset in linkplay play preset (#130160) 2024-11-10 12:02:55 +01:00
Allen Porter
e8dc62411a
Improve nest camera stream expiration to be defensive against errors (#130265) 2024-11-10 12:01:59 +01:00
G Johansson
7925007ab4
Bump psutil to 6.1.0 (#130254) 2024-11-10 12:00:45 +01:00
dotvav
7515deddab
Palazzetti DHCP Discovery (#129731)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-11-10 11:48:52 +01:00
Marc Mueller
e382f924e6
Add support for Python 3.13 (#129442) 2024-11-10 11:38:56 +01:00
Max Shcherbina
7fdcb98518
Update description for generic hygrostat description (#130244) 2024-11-10 11:25:32 +01:00
Noah Husby
d0dbca41f7
Support additional media player states for Russound RIO (#130261) 2024-11-10 11:20:55 +01:00
G Johansson
f3229c723c
Bump pynordpool to 0.2.2 (#130257) 2024-11-10 11:19:10 +01:00
J. Nick Koston
cafa598fd6
Bump aiohttp to 3.11.0b5 (#130264) 2024-11-10 11:18:12 +01:00
Allen Porter
73a62a09b0
Update nest tests to unload config entries to perform clean teardown (#130266) 2024-11-10 09:54:52 +01:00
Lothar Bach
ecd8dde347
Fix path to tesla fleet key file in config folder (#130124)
* Tesla Fleet load key file from config folder

* Fix test

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2024-11-09 23:21:29 +01:00
Marc Mueller
31a2bb1b98
Fix flaky modbus tests (#130252) 2024-11-09 22:58:16 +01:00
Max Shcherbina
0fc019305e
Fix typo in reminder date language string in Todoist integration (#130241) 2024-11-09 21:38:29 +01:00
Marc Mueller
adb1c59859
Update grpcio to 1.67.1 (#130240) 2024-11-09 21:37:56 +01:00
Manu
5d0277a0d1
Add actions for quest handling to Habitica (#129650) 2024-11-09 19:34:25 +01:00
Allen Porter
21d81d5a5c
Bump google-nest-sdm to 6.1.5 (#130229) 2024-11-09 19:02:15 +01:00
DeerMaximum
0de4bfcc2c
Add missing translation string for NINA (#129826) 2024-11-09 18:33:28 +01:00
jjlawren
2cc5486794
Bump SoCo to 0.30.6 (#130223) 2024-11-09 17:14:40 +01:00
Noah Husby
e3315383ab
Improve entity test coverage for Russound RIO (#129828) 2024-11-09 17:13:57 +01:00
Markus Jacobsen
31b505828b
Simplify Bang & Olufsen source determination (#130072) 2024-11-09 17:13:07 +01:00
Daniel Oltmanns
b61580a937
Add fan preset mode icons and strings to vesync (#129584) 2024-11-09 16:48:00 +01:00
Markus Jacobsen
928e5348e4
Add custom integration action sections support to hassfest (#130148) 2024-11-09 16:47:02 +01:00
Josef Zweck
622682eb43
Change update after button press for lamarzocco (#129616) 2024-11-09 16:42:10 +01:00
Simon Lamon
97fa568876
No longer thrown an error when device is offline in linkplay (#130161) 2024-11-09 16:11:34 +01:00
Manu
c10f078f2a
Add sensors for attribute points (str, int, per, con) to Habitica (#130186) 2024-11-09 16:04:10 +01:00
Simone Chemelli
e6d16f06fc
Fix uptime sensor for Vodafone Station (#130215) 2024-11-09 15:55:39 +01:00
Daniel Hjelseth Høyer
c89ab7a142
Bump pyTibber (#130216) 2024-11-09 15:54:58 +01:00
Jan Bouwhuis
6837ea947c
Cleanup yaml import and legacy file notify service (#130219) 2024-11-09 15:54:18 +01:00
Marco
5f0f29704b
Add smarty reset filters timer button (#129637) 2024-11-09 13:32:00 +01:00
Manu
1f43dc6676
Fix cast skill test in Habitica (#130213) 2024-11-09 13:12:04 +01:00
Marc Mueller
4d7405de2c
Install zlib-dev for pillow wheel build (#130211) 2024-11-09 13:03:26 +01:00
Max Shcherbina
4adffdd1a6
Fix wording in Google Calendar create_event strings for consistency (#130183) 2024-11-09 13:01:59 +01:00
Manu
4e2f5bdb7d
Add tests for cast skill action in Habitica (#129596) 2024-11-09 12:45:50 +01:00
starkillerOG
03bc711c51
Add Reolink chime vehicle tone (#129835) 2024-11-09 12:25:06 +01:00
Marc Mueller
8b8e949bdf
Update wheel builder to 2024.11.0 (#130209) 2024-11-09 12:07:20 +01:00
Erik Montnemery
69ba0d3a50
Report update_percentage in ezviz update entity (#129377) 2024-11-09 11:35:18 +01:00
epenet
25fb70f281
Add blood glucose concentration device class (#129340) 2024-11-09 11:29:24 +01:00
Tom Gamull
0304588bb8
Fix missing unit of measurement for blink wifi strength (#128409) 2024-11-09 11:19:36 +01:00
Josef Zweck
08f5081197
Rename lamarzocco library (#130204) 2024-11-09 11:03:48 +01:00
jb101010-2
701f35488c
Add water price sensor to suez water (#130141)
* Suez water: add water price sensor

* sensor description

* clean up
2024-11-09 10:57:22 +01:00
G Johansson
d11012b2b7
Move check thresholds valid to platform schema in threshold (#129540) 2024-11-09 10:50:11 +01:00
Josef Zweck
8384100e1b
Rename tedee library (#130203) 2024-11-09 10:46:38 +01:00
Tristan Bastian
cd0349ee4d
Bump tplink-omada-client to 1.4.3 (#130184) 2024-11-09 10:41:08 +01:00
Marc Mueller
b413e481cb
Update numpy to 2.1.3 (#130191) 2024-11-09 10:12:52 +01:00
Diogo Gomes
9f7e6048f8
Code quality improvements on utility_meter (#129918)
* clean

* update snapshot

* move name, native_value and native_unit_of_measurement to _attr's

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-09 00:17:43 +01:00
IceBotYT
2802b77f21
Bump nice-go to 0.3.10 (#130173)
Bump Nice G.O. to 0.3.10
2024-11-09 00:12:14 +01:00
J. Nick Koston
964ad43a27
Bump orjson to 3.10.11 (#130182) 2024-11-09 00:07:05 +01:00
TheJulianJES
182be6e0ea
Fix failing UniFi Protect tests on some systems (#129516) 2024-11-08 23:10:29 +01:00
Jakob Schlyter
cd11f01ace
Add support for MW/GW/TW and GWh/TWh (#130089) 2024-11-08 22:12:16 +01:00
G Johansson
742eca5927
Use TemplateStateFromEntityId in Template trigger entity (#130136) 2024-11-08 22:09:43 +01:00
murfy76
48e7fed901
Add voc and formaldehyde to Tuya CO2 Detector (#130119) 2024-11-08 22:03:01 +01:00
Marc Mueller
0a4c0fe7cc
Add option to specify additional markers for wheel build requirements (#129949) 2024-11-08 21:09:53 +01:00
Jan Bouwhuis
9037cb8a7d
Fix typo in go2rtc (#130165)
Fix typo in original
2024-11-08 20:38:38 +01:00
Jan Bouwhuis
c97cc34879
Use f-strings in go2rtc code and test and do not use abbreviation (#130158) 2024-11-08 20:16:46 +01:00
Sheldon Ip
1ac9217630
Fix translations in ollama (#130164) 2024-11-08 20:15:17 +01:00
Simon Lamon
e4036a2f14
Bump python-linkplay to v0.0.18 (#130159) 2024-11-08 20:14:33 +01:00
G Johansson
da9c73a767
Add reconfigure flow to Nord Pool (#130151) 2024-11-08 19:53:52 +01:00
Diogo Gomes
e4aaaf10c3
Fix utility_meter on DST changes (#129862)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-08 18:44:15 +01:00
Louis Christ
a7be76ba0a
Fix volume_up not working in some cases in bluesound integration (#130146) 2024-11-08 18:40:43 +01:00
Allen Porter
f7cc91903c
Fix bugs in nest stream expiration handling (#130150) 2024-11-08 18:37:00 +01:00
Jan Bouwhuis
4a8a674bd3
Refrase imap fetch service description string (#130152) 2024-11-08 18:36:19 +01:00
Robert Resch
a8db25fbd8
Split test doesn't need to be executed per Python version (#130147) 2024-11-08 18:05:05 +01:00
Klaas Schoute
2dc81ed866
Force int value on port in P1Monitor (#130084) 2024-11-08 16:15:57 +01:00
Shai Ungar
c4762f3ff4
Fix issue when timestamp is None (#130133)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-08 16:15:28 +01:00
Martin Hjelmare
14285973b8
Bump ha-ffmpeg to 3.2.2 (#130142) 2024-11-08 16:00:24 +01:00
epenet
353ccf3ea7
Only apply OptionsFlowWithConfigEntry deprecation to core (#130054)
* Only apply OptionsFlowWithConfigEntry deprecation to core

* Fix match string in pytest.raises

* Improve coverage
2024-11-08 15:55:19 +01:00
Lektri.co
6b90d8ff1a
Add binary sensor platform to the Lektrico integration (#129872) 2024-11-08 15:54:46 +01:00
Robert Resch
51e691f832
Add go2rtc workaround for HA managed one until upstream fixes it (#130139) 2024-11-08 15:54:14 +01:00
Joost Lekkerkerker
6c7ac7a6ef
Bump spotifyaio to 0.8.7 (#130140) 2024-11-08 15:53:26 +01:00
Bram Kragten
52ed1bf44a
Update frontend to 20241106.2 (#130128) 2024-11-08 15:13:05 +01:00
Petar Petrov
3eab0b704e
Get/Set custom config parameter for zwave_js node (#129332)
* Get/Set custom config parameter for zwave_js node

* add tests

* handle errors on set

* test FailedCommand
2024-11-08 15:12:18 +01:00
G Johansson
1f32e02ba2
Add Nord Pool integration (#129983) 2024-11-08 15:10:51 +01:00
epenet
074418f8f7
Drop OptionsFlowWithConfigEntry usage in homeassistant_hardware (#130078)
* Drop OptionsFlowWithConfigEntry usage in homeassistant_hardware

* Add homeassistant_hardware as other components rely on it

* Maybe core_files not needed after all
2024-11-08 14:53:46 +01:00
Martin Hjelmare
b711b17193
Remove Z-Wave incorrect lock service descriptions (#130034) 2024-11-08 14:50:41 +01:00
Steven B.
03c3d09583
Enable overriding connection port for tplink devices (#129619)
Enable setting a port override during manual config entry setup.

The feature will be undocumented as it's quite a specialized use case generally used for testing purposes.
2024-11-08 14:41:00 +01:00
Robert Resch
f49547d598
Bump uv to 0.5.0 (#130127) 2024-11-08 14:19:46 +01:00
jb101010-2
7678be8e2b
Suez water: simplify config flow (#130083)
Simplify config flow for suez water. Counter_id can now be automatically be fetched by the integration.
The value is provided only in the source code of suez website and therefore not easily accessible to user not familiar with devlopment.
Still possible to explicitly set the value for user with multiple value or value defined elsewhere.
2024-11-08 14:01:36 +01:00
epenet
7672215095
Trigger full CI run on homeassistant_hardware integration changes (#130129)
Add components/homeassistant_hardware to core files
2024-11-08 13:46:40 +01:00
epenet
18cf96b92b
Bring emoncms coverage to 100% (#130092)
Remove mock_setup_entry from emoncms OptionsFlow test
2024-11-08 13:42:19 +01:00
epenet
94d597fd41
Add checks for flow title/description placeholders (#129140)
* Add checks for title placeholders

* Check both title and description

* Improve comment
2024-11-08 13:33:19 +01:00
Alexandre CUER
24b47b50ea
Migrate from entry unique id to emoncms unique id (#129133)
* Migrate from entry unique id to emoncms unique id

* Use a placeholder for the documentation URL

* Use async_set_unique_id in config_flow

* use _abort_if_unique_id_configured in config_flow

* Avoid single-use variable

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Add async_migrate_entry

* Remove commented code

* Downgrade version if user add server without uuid

* Improve code quality

* Move code migrating HA to emoncms uuid to init

* Fit doc url in less than 88 chars

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Improve code quality

* Only update unique_id with async_update_entry

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Make emoncms_client compulsory to get_feed_list

* Improve readability with unique id functions

* Rmv test to give more sense to _migrate_unique_id

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-08 13:29:10 +01:00
Markus Jacobsen
e3dfa84d65
Bang & Olufsen add beolink grouping (#113438)
* Add Beolink custom services
Add support for media player grouping via beolink
Give media player entity name

* Fix progress not being set to None as Beolink listener
Revert naming changes

* Update API
simplify Beolink attributes

* Improve beolink custom services

* Fix Beolink expandable source check
Add unexpand return value
Set entity name on initialization

* Handle entity naming as intended

* Fix "null" Beolink self friendly name

* Add regex service input validation
Add all_discovered to beolink_expand service
Improve beolink_expand response

* Add service icons

* Fix merge
Remove unnecessary assignment

* Remove invalid typing
Update response typing for updated API

* Revert to old typed response dict method
Remove mypy ignore line
Fix jid possibly used before assignment

* Re add debugging logging

* Fix coroutine
Fix formatting

* Remove unnecessary update control

* Make tests pass
Fix remote leader media position bug
Improve remote leader BangOlufsenSource comparison

* Fix naming and add callback decorators

* Move regex service check to variable
Suppress KeyError
Update tests

* Re-add hass running check

* Improve comments, naming and type hinting

* Remove old temporary fix

* Convert logged warning to raised exception for invalid media_player
Simplify code using walrus operator

* Fix test for invalid media_player grouping

* Improve method naming

* Improve _beolink_sources explanation

* Improve _beolink_sources explanation

* Fix tests

* Remove service responses
Fix and add tests

* Change service to action where applicable

* Show playback progress for listeners

* Fix testing

* Remove useless initialization

* Fix allstandby name

* Fix various casts with assertions
Fix comment placement
Fix group leader group_members rebase error
Replace entity_id method call with attribute

* Add syrupy snapshots for Beolink tests, checking entity states
Use test JIDs 3 and 4 instead of 2 and 3 to avoid invalid attributes in testing

* Add sections for fields using Beolink JIDs directly

* Fix typo

* FIx rebase mistake

* Sort actions alphabetically
2024-11-08 12:06:29 +01:00
nasWebio
ed1366f463
Add NASweb integration (#98118)
* Add NASweb integration

* Fix DeviceInfo import

* Remove commented out code

* Change class name for uniquness

* Drop CoordinatorEntity inheritance

* Rename class Output to more descriptive: RelaySwitch

* Update required webio-api version

* Implement on-the-fly addition/removal of entities

* Set coordinator name matching device name

* Set entities with too old status as unavailable

* Drop Optional in favor of modern typing

* Fix spelling of a variable

* Rename commons to more fitting name: helper

* Remove redundant code

* Let unload fail when there is no coordinator

* Fix bad docstring

* Rename cord to coordinator for clarity

* Remove default value for pop and let it raise exception

* Drop workaround and use get_url from helper.network

* Use webhook to send data from device

* Deinitialize coordinator when no longer needed

* Use Python formattable string

* Use dataclass to store integration data in hass.data

* Raise ConfigEntryNotReady when appropriate

* Refactor NASwebData class

* Move RelaySwitch to switch.py

* Fix ConfigFlow tests

* Create issues when entry fails to load

* Respond when correctly received status update

* Depend on webhook instead of http

* Create issue when status is not received during entry set up

* Make issue_id unique across integration entries

* Remove unnecessary initializations

* Inherit CoordinatorEntity to avoid code duplication

* Optimize property access via assignment in __init__

* Use preexisting mechanism to fill schema with user input

* Fix translation strings

* Handle unavailable or unreachable internal url

* Implement custom coordinator for push driven data updates

* Move module-specific constants to respective modules

* Fix requirements_all.txt

* Fix CODEOWNERS file

* Raise ConfigEntryError instead of issue creation

* Fix entity registry import

* Use HassKey as key in hass.data

* Use typed ConfigEntry

* Store runtime data in config entry

* Rewrite to be more Pythonic

* Move add/remove of switch entities to switch.py

* Skip unnecessary check

* Remove unnecessary type hints

* Remove unnecessary nonlocal

* Use a more descriptive docstring

* Add docstrings to NASwebCoordinator

* Fix formatting

* Use correct return type

* Fix tests to align with changed code

* Remove commented code

* Use serial number as config entry id

* Catch AbortFlow exception

* Update tests to check ConfigEntry Unique ID

* Remove unnecessary form abort
2024-11-08 12:03:32 +01:00
Josef Zweck
5d5908a03f
Add missing string to tedee plus test (#130081) 2024-11-08 08:47:28 +01:00
Kelvin Dekker
3062bad19e
Fix typo in insteon strings (#130085) 2024-11-08 08:47:02 +01:00
Bram Kragten
28832cbd3e
Update frontend to 20241106.1 (#130086) 2024-11-08 08:46:48 +01:00
Luke Lashley
ce94073321
Bump python-roborock to 2.7.2 (#130100) 2024-11-08 08:39:41 +01:00
J. Nick Koston
fa61e02207
Bump aiohttp to 3.11.0b4 (#130097) 2024-11-08 08:36:30 +01:00
Robert Resch
d1dab83f10
Merge both stun server into one as it's the same server only on a different port (#130019)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-08 08:22:47 +01:00
Erik Montnemery
2b7d593ebe
Avoid collision when replacing existing config entry with same unique id (#130062) 2024-11-08 07:45:16 +01:00
Allen Porter
e407b4730d
Fix KeyError in nest integration when the old key format does not exist (#130057)
* Fix bug in nest setup when the old key format does not exist

* Further simplify the entry.data check

* Update homeassistant/components/nest/api.py

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-11-07 20:03:07 -08:00
YogevBokobza
0d19e85a0d
Align Switcher cover platform with changes from light platform (#130094)
Switcher small fix for cover
2024-11-08 02:59:30 +02:00
YogevBokobza
dac6271e01
Add Switcher Lights support (#129494)
* switcher lights integration

* fix based on requested changes

* Update light.py

* switcher fix based on requested changes

* fix linting

* fix linting

* Update light.py

* Update light.py

* Update homeassistant/components/switcher_kis/light.py

* Update light.py

---------

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2024-11-07 22:06:34 +02:00
Marc Mueller
8cae8edc55
Remove temporary pint constraint (#130070) 2024-11-07 19:10:24 +01:00
epenet
a3b0909e3f
Add new frame helper to better distinguish custom and core integrations (#130025)
* Add new frame helper to clarify options available

* Adjust

* Improve

* Use report_usage in core

* Add tests

* Use is/is not

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

* Use enum.auto()

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-11-07 18:23:35 +01:00
Markus
ee30520b57
Fix esphome mqtt discovery by handling case where payload is a empty string (#129969)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-11-07 11:16:01 -06:00
Erik Montnemery
536e686892
Don't create repairs asking user to remove duplicate flipr config entries (#130058)
* Don't create repairs asking user to remove duplicate flipr config entries

* Improve comments
2024-11-07 17:38:10 +01:00
epenet
ef767c2b9f
Improve tests for frame helper (#130046)
* Improve tests for frame helper

* Improve comments

* Add ids

* Apply suggestions from code review
2024-11-07 17:35:58 +01:00
Frank Wickström
c1ecc13cb3
Bump huum to 0.7.11 (#130047)
* Update huum dependency 0.7.10 -> 0.7.11

This change includes an explicit MIT license for the package.

* Remove huum from license exceptions list
2024-11-07 17:18:36 +01:00
Erik Montnemery
c5e3ba536c
Don't create repairs asking user to remove duplicate ignored config entries (#130056) 2024-11-07 17:07:23 +01:00
jb101010-2
0e324c074a
Bump PySuez to 1.3.1 (#129825) 2024-11-07 14:25:38 +01:00
epenet
a3ba7803db
Add checks for translation placeholders (#129963)
* Add checks for translation placeholders

* Remove async

* Apply suggestions from code review

* Apply suggestions from code review

* Apply suggestions from code review
2024-11-07 13:12:00 +01:00
Marc Mueller
49bf5db5ff
Update pytest warnings filter (#130027) 2024-11-07 12:55:54 +01:00
Franck Nijhof
50981c26ad
Merge branch 'master' into dev 2024-11-07 10:58:42 +01:00
Allen Porter
2adbf7c933
Bump google-nest-sdm to 6.1.4 (#130005)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-07 10:50:40 +01:00
Brett Adams
838ef0bb9f
Fix Trunks in Teslemetry and Tesla Fleet (#129986) 2024-11-07 10:36:43 +01:00
sean t
43c2658962
Bump agent-py to 0.0.24 (#130018)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-07 10:34:54 +01:00
epenet
bbefa971d8
Add missing placeholder description to twitch (#130013) 2024-11-07 10:32:23 +01:00
Petar Petrov
cb97f2f13c
Bump zwave-js-server-python to 0.59.0 (#129482) 2024-11-07 10:06:28 +01:00
epenet
a657b9bb84
Add temporary package constraint on flexparser and pint to fix CI (#130016)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2024-11-07 09:57:14 +01:00
Erik Montnemery
2d2f55a4df
Report update_percentage in shelly update entity (#129382)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2024-11-07 08:52:20 +01:00
Michael Hansen
df16e6d022
Bump intents to 2024.11.6 (#129982) 2024-11-07 08:29:44 +01:00
Marc Mueller
56212c6fa5
Update numpy to 2.1.2 and pandas to 2.2.3 (#129958) 2024-11-07 08:24:47 +01:00
Keilin Bickar
bc964ce7f0
Update sense energy library to 0.13.3 (#129998) 2024-11-07 08:14:54 +01:00
Mike Degatano
ed4f55406c
Replace Supervisor resolution API calls with aiohasupervisor (#129599)
* Replace Supervisor resolution API calls with aiohasupervisor

* Use consistent types to avoid uuid issues

* Fix mocking in http test

* Changes from feedback

* Put hass first

* Fix typo

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-11-07 01:33:51 +01:00
epenet
03d5b18974
Remove options property from OptionFlow (#129890)
* Remove options property from OptionFlow

* Update test_config_entries.py

* Partial revert of "Remove deprecated property setters in option flows (#129773)"

* Partial revert "Use new helper properties in crownstone options flow (#129774)"

* Restore onewire init

* Restore onvif

* Restore roborock

* Use deepcopy in onewire

* Restore steam_online

* Restore initial options property in OptionsFlowWithConfigEntry

* re-add options property in SchemaOptionsFlowHandler

* Restore test

* Cleanup
2024-11-06 23:28:01 +01:00
J. Nick Koston
53c486ccd1
Bump aiohttp to 3.11.0b3 (#129363) 2024-11-06 15:59:31 -06:00
Steven B.
9a2a177b28
Bump ring library ring-doorbell to 0.9.9 (#129966) 2024-11-06 15:46:08 -06:00
Franck Nijhof
18e12740d9
2024.11.0 (#129970) 2024-11-06 20:10:51 +01:00
Franck Nijhof
5a24b670a2
Ran ruff 2024-11-06 19:32:23 +01:00
Franck Nijhof
94c5c8f42e
Bump version to 2024.11.0 2024-11-06 19:29:07 +01:00
Manu
e84d5fba11
Add state invitation to list access sensor in Bring integration (#129960) 2024-11-06 19:28:54 +01:00
Manu
b808c0c5eb
Add state invitation to list access sensor in Bring integration (#129960) 2024-11-06 19:15:25 +01:00
Franck Nijhof
782417528c
Bump version to 2024.11.0b9 2024-11-06 18:25:29 +01:00
Robert Resch
7757423d18
Bump go2rtc-client to 0.1.0 (#129965) 2024-11-06 18:24:12 +01:00
Joost Lekkerkerker
e5a28f4f25
Remove deprecation issues for LCN once entities removed (#129955) 2024-11-06 18:21:32 +01:00
Erik Montnemery
c18d50910f
Call async_refresh_providers when camera entity feature changes (#129941) 2024-11-06 18:21:28 +01:00
Robert Resch
d4adb1f298
Bump go2rtc-client to 0.1.0 (#129965) 2024-11-06 17:59:04 +01:00
Erik Montnemery
fe0a822721
Call async_refresh_providers when camera entity feature changes (#129941) 2024-11-06 17:37:23 +01:00
Joost Lekkerkerker
9f427893b1
Remove deprecation issues for LCN once entities removed (#129955) 2024-11-06 17:00:20 +01:00
Franck Nijhof
3b840c684b
Bump version to 2024.11.0b8 2024-11-06 15:44:10 +01:00
Bram Kragten
bc84fdc64a
Update frontend to 20241106.0 (#129953) 2024-11-06 15:43:33 +01:00
Robert Resch
401262c23d
Bump go2rtc-client to 0.0.1b5 (#129952) 2024-11-06 15:42:22 +01:00
Manu
795384ca2d
Improve error messages in Habitica (#129948)
Improve error messages
2024-11-06 15:41:44 +01:00
J. Diego Rodríguez Royo
dfc3423c83
Delete binary door deprecation issue on unload at Home Connect (#129947) 2024-11-06 15:41:39 +01:00
Robert Resch
22b5071c26
Bump go2rtc-client to 0.0.1b4 (#129942) 2024-11-06 15:40:30 +01:00
Joost Lekkerkerker
4b9524c5c1
Write squeezebox player state after query (#129939) 2024-11-06 15:39:07 +01:00
Joost Lekkerkerker
9cd46c7f03
Bump spotifyaio to 0.8.5 (#129938) 2024-11-06 15:39:03 +01:00
Robert Resch
232a6868ff
Fix native sync WebRTC offer (#129931) 2024-11-06 15:39:00 +01:00
Kunal Aggarwal
361e0d4fc7
Adding "peaceful" status as on value to Tuya Presence Sensor (#129925) 2024-11-06 15:38:57 +01:00
Paulus Schoutsen
26d8d5343a
Ensure all template names are strings (#129921) 2024-11-06 15:38:53 +01:00
starkillerOG
995aab8347
Bump reolink_aio to 0.10.4 (#129914) 2024-11-06 15:38:50 +01:00
Robert Resch
399011552b
Disable uv cache (#129912) 2024-11-06 15:38:46 +01:00
Markus Jacobsen
0c9f30364c
Update Bang & Olufsen source list as availability changes (#129910) 2024-11-06 15:38:43 +01:00
Louis Christ
bdc17621ee
Map "stop" to MediaPlayerState.IDLE in bluesound integration (#129904)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-11-06 15:38:40 +01:00
Joost Lekkerkerker
399c53a57e
Bump spotifyaio to 0.8.4 (#129899) 2024-11-06 15:38:36 +01:00
Daniel Hjelseth Høyer
f55e13bde4
Bump pyTibber to 0.30.4 (#129844) 2024-11-06 15:38:32 +01:00
epenet
dea31e5744
Ensure that all files in a folder are in the same test bucket (#129946) 2024-11-06 15:38:24 +01:00
Michael Hansen
48d9df89ac
Bump intents and add HassRespond test (#129830) 2024-11-06 15:36:46 +01:00
kingal123
adf836d9ac
Update pylutron to 0.2.16 (#129653)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-06 15:33:16 +01:00
epenet
51d6948848
Use read-only options in google cloud options flow (#129927) 2024-11-06 15:15:35 +01:00
epenet
7ce74cb5ec
Use read-only options in onkyo options flow (#129929) 2024-11-06 15:14:59 +01:00
Bram Kragten
29ba140816
Update frontend to 20241106.0 (#129953) 2024-11-06 14:53:59 +01:00
Robert Resch
0ca4f3e1ba
Bump go2rtc-client to 0.0.1b5 (#129952) 2024-11-06 14:52:21 +01:00
J. Diego Rodríguez Royo
0430e6794e
Delete binary door deprecation issue on unload at Home Connect (#129947) 2024-11-06 14:44:17 +01:00
Marc Mueller
29fa7f827a
Fix audit-licenses check for multiple Python versions [ci] (#129951) 2024-11-06 14:20:14 +01:00
Tsvi Mostovicz
57d1001603
Move Jewish Calendar to runtime data (#129609) 2024-11-06 14:19:58 +01:00
Brett Adams
96de4b3828
Improve history coordinator in Teslemetry (#128235) 2024-11-06 13:40:37 +01:00
Teemu R.
c6cb2884f4
Add motion sensor setting to tplink (#129393) 2024-11-06 13:40:17 +01:00
Manu
27e81fe0ed
Improve error messages in Habitica (#129948)
Improve error messages
2024-11-06 13:23:43 +01:00
Louis Christ
2c1db10986
Map "stop" to MediaPlayerState.IDLE in bluesound integration (#129904)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-11-06 13:10:23 +01:00
epenet
a7ba4bd086
Use read-only options in emoncms options flow (#129926)
* Use read-only options in emoncms options flow

* Don't store URL and API_KEY in entry options
2024-11-06 13:09:05 +01:00
Robert Resch
25449b424f
Bump go2rtc-client to 0.0.1b4 (#129942) 2024-11-06 12:05:23 +01:00
Markus Jacobsen
f6f89bd807
Update Bang & Olufsen source list as availability changes (#129910) 2024-11-06 11:52:00 +01:00
Daniel Hjelseth Høyer
370d7d6bdf
Bump pyTibber to 0.30.4 (#129844) 2024-11-06 11:44:54 +01:00
Kunal Aggarwal
4dbf3359c1
Adding "peaceful" status as on value to Tuya Presence Sensor (#129925) 2024-11-06 11:43:41 +01:00
Joost Lekkerkerker
25eb7173bf
Write squeezebox player state after query (#129939) 2024-11-06 11:32:59 +01:00
Joost Lekkerkerker
648c3d500b
Bump spotifyaio to 0.8.5 (#129938) 2024-11-06 11:32:35 +01:00
epenet
33016c2977
Use new helper properties in netatmo options flow (#129781)
* Use new helper properties in netatmo options flow

* Update homeassistant/components/netatmo/config_flow.py

* Apply suggestions from code review

* Improve

* Keep options

* Simplify
2024-11-06 10:37:55 +01:00
Robert Resch
5679b061d2
Fix native sync WebRTC offer (#129931) 2024-11-06 10:07:10 +01:00
Nicholas Romyn
2eb2bdd615
Consolidating async_add_entities into one call in Ecobee (#129917)
* Consolidating async_add_entities into one call.

* changing to comprehension.
2024-11-06 08:25:18 +01:00
epenet
184cbfea23
Use read-only options in lastfm options flow (#129928)
Use read-only options in lstfm options flow
2024-11-06 08:14:54 +01:00
dependabot[bot]
f88bc008e5
Bump actions/attest-build-provenance from 1.4.3 to 1.4.4 (#129924) 2024-11-06 08:13:41 +01:00
Paulus Schoutsen
a927312fb5
Ensure all template names are strings (#129921) 2024-11-05 22:36:26 -05:00
starkillerOG
5f13db2356
Bump reolink_aio to 0.10.4 (#129914) 2024-11-06 00:05:05 +01:00
kingal123
64e84e2aa0
Update pylutron to 0.2.16 (#129653)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-05 22:23:14 +01:00
Michael Hansen
901457e7aa
Bump intents and add HassRespond test (#129830) 2024-11-05 22:22:49 +01:00
Robert Resch
89a9c2ec24
Disable uv cache (#129912) 2024-11-05 22:18:41 +01:00
Joost Lekkerkerker
9e04457472
Bump spotifyaio to 0.8.4 (#129899) 2024-11-05 21:04:58 +01:00
Ville Skyttä
6ecdbb677f
Bump huawei-lte-api to 1.10.0 (#129911) 2024-11-05 21:03:26 +01:00
Franck Nijhof
211ce43127
Bump version to 2024.11.0b7 2024-11-05 20:33:48 +01:00
G Johansson
f5555df990
Bump holidays to 0.60 (#129909) 2024-11-05 20:33:39 +01:00
Paul Bottein
82c2422990
Update frontend to 20241105.0 (#129906) 2024-11-05 20:33:36 +01:00
Erik Montnemery
734ebc1adb
Improve improv BLE error handling (#129902) 2024-11-05 20:33:33 +01:00
Paulus Schoutsen
eb3371beef
Change Ollama default to llama3.2 (#129901) 2024-11-05 20:33:30 +01:00
Manu
e1ef1063fe
Prevent update entity becoming unavailable on device disconnect in IronOS (#129840)
* Don't render update entity unavailable when Pinecil device disconnects

* fixes
2024-11-05 20:33:27 +01:00
Diogo Gomes
c355a53485
Set friendly name of utility meter select entity when configured through YAML (#128267)
* set select friendly name in YAML

* backward compatibility added

* clean

* cleaner backward compatibility approach

* don't introduce default unique_id

* split test according to review
2024-11-05 20:33:23 +01:00
G Johansson
79de1d9ed4
Bump holidays to 0.60 (#129909) 2024-11-05 20:26:22 +01:00
Paul Bottein
7fefa5c235
Update frontend to 20241105.0 (#129906) 2024-11-05 20:25:15 +01:00
Brett Adams
94db78a0be
Add signing support to Tesla Fleet (#128407)
* Add command signing

* wip

* Update tests

* requirements

* Add test
2024-11-05 20:04:55 +01:00
Diogo Gomes
83a1b06b56
Set friendly name of utility meter select entity when configured through YAML (#128267)
* set select friendly name in YAML

* backward compatibility added

* clean

* cleaner backward compatibility approach

* don't introduce default unique_id

* split test according to review
2024-11-05 19:59:43 +01:00
epenet
1e42a38473
Remove usage of options property in OptionsFlow (part 2) (#129897) 2024-11-05 19:53:05 +01:00
epenet
c54ed53a81
Remove usage of options property in OptionsFlow (part 1) (#129895)
* Remove usage of options property in OptionsFlow

* Improve
2024-11-05 19:51:20 +01:00
Manu
611a952232
Prevent update entity becoming unavailable on device disconnect in IronOS (#129840)
* Don't render update entity unavailable when Pinecil device disconnects

* fixes
2024-11-05 18:39:10 +01:00
Erik Montnemery
05e76105ad
Improve improv BLE error handling (#129902) 2024-11-05 11:12:05 -05:00
Paulus Schoutsen
ed56e5d631
Change Ollama default to llama3.2 (#129901) 2024-11-05 17:02:44 +01:00
Manu
9253fa4471
Add binary sensor platform to Habitica integration (#129613)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-11-05 17:01:38 +01:00
Franck Nijhof
c85eb6bf8e
Bump version to 2024.11.0b6 2024-11-05 16:51:05 +01:00
Joost Lekkerkerker
cc30d34e87
Remove timers from LG ThinQ (#129898) 2024-11-05 16:50:41 +01:00
Erik Montnemery
14875a1101
Map go2rtc log levels to Python log levels (#129894) 2024-11-05 16:50:38 +01:00
Joost Lekkerkerker
030aebb97f
Use default package for yt-dlp (#129886) 2024-11-05 16:50:35 +01:00
Erik Montnemery
6e2f36b6d4
Log go2rtc output with warning level on error (#129882) 2024-11-05 16:50:32 +01:00
Robert Resch
25a05eb156
Append a 1 to all go2rtc ports to avoid port conflicts (#129881) 2024-11-05 16:50:29 +01:00
J. Diego Rodríguez Royo
b71c4377f6
Removed stale translation and improved set_setting translation at Home Connect (#129878) 2024-11-05 16:50:25 +01:00
Michael Arthur
d671341864
Update snapshot for lg thinq (#129856)
update snapshot for lg thinq

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-05 16:39:02 +01:00
Mike Degatano
383f712d43
Add repair for add-on boot fail (#129847) 2024-11-05 16:38:59 +01:00
Alex Bush
8a20cd77a0
Bump pyfibaro to 0.8.0 (#129846) 2024-11-05 16:38:56 +01:00
Richard Kroegel
14023644ef
Bump bimmer_connected to 0.16.4 (#129838) 2024-11-05 16:38:53 +01:00
dotvav
496fc42b94
Bump pypalazzetti to 0.1.10 (#129832) 2024-11-05 16:38:50 +01:00
Erik Montnemery
da0688ce8e
Validate go2rtc server version (#129810) 2024-11-05 16:38:47 +01:00
Robert Resch
89d3707cb7
Skip adding providers if the camera has native WebRTC (#129808)
* Skip adding providers if the camera has native WebRTC

* Update homeassistant/components/camera/__init__.py

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

* Implement suggestion

* Add tests

* Shorten test name

* Fix test

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-11-05 16:38:44 +01:00
Kunal Aggarwal
3f5e395e2f
Adding new on values for Tuya Presence Detection Sensor (#129801) 2024-11-05 16:38:41 +01:00
Joost Lekkerkerker
00ea1cab9f
Add basic testing framework to LG ThinQ (#127785)
Co-authored-by: jangwon.lee <jangwon.lee@lge.com>
Co-authored-by: Joostlek <joostlek@outlook.com>
Co-authored-by: YunseonPark-LGE <34848373+YunseonPark-LGE@users.noreply.github.com>
Co-authored-by: LG-ThinQ-Integration <LG-ThinQ-Integration@lge.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-11-05 16:38:37 +01:00
Joost Lekkerkerker
5f36062ef3
Remove timers from LG ThinQ (#129898) 2024-11-05 16:32:05 +01:00
Erik Montnemery
e562b6f42b
Map go2rtc log levels to Python log levels (#129894) 2024-11-05 15:57:33 +01:00
dotvav
b76a94bd42
Bump pypalazzetti to 0.1.10 (#129832) 2024-11-05 15:34:25 +01:00
Joost Lekkerkerker
4e11ff05de
Use default package for yt-dlp (#129886) 2024-11-05 15:23:41 +01:00
J. Diego Rodríguez Royo
080e3d7a42
Removed stale translation and improved set_setting translation at Home Connect (#129878) 2024-11-05 15:17:03 +01:00
Michael Hansen
69e3348cd7
Use different VAD thresholds for before and during voice command (#129848)
* Use two VAD thresholds

* Fix VoiceActivityTimeout class

* Update homeassistant/components/assist_pipeline/audio_enhancer.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-11-05 08:01:45 -06:00
Alexandre CUER
6caa4baa00
Fix missing translation string in emoncms (#129859) 2024-11-05 14:58:25 +01:00
Robert Resch
4729b19dc6
Skip adding providers if the camera has native WebRTC (#129808)
* Skip adding providers if the camera has native WebRTC

* Update homeassistant/components/camera/__init__.py

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

* Implement suggestion

* Add tests

* Shorten test name

* Fix test

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-11-05 14:44:37 +01:00
Richard Kroegel
8abbc4abbc
Bump bimmer_connected to 0.16.4 (#129838) 2024-11-05 14:13:48 +01:00
Erik Montnemery
3a667bce8c
Log go2rtc output with warning level on error (#129882) 2024-11-05 14:05:04 +01:00
starkillerOG
4c86102daf
Add Reolink PTZ tilt position sensor (#129837) 2024-11-05 13:39:45 +01:00
Karl Beecken
15bf652f37
Bump python-tado to 0.17.7 (#129842) 2024-11-05 12:30:48 +01:00
Robert Resch
eafed2b86c
Append a 1 to all go2rtc ports to avoid port conflicts (#129881) 2024-11-05 12:29:51 +01:00
epenet
79901cede9
Drop initialize_options helper from OptionsFlow (#129870) 2024-11-05 12:02:33 +01:00
tdfountain
27dc82d7d0
Add device model ID if provided by NUT (#124189)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-11-05 11:57:00 +01:00
Mike Degatano
ae37c8cc7a
Add repair for add-on boot fail (#129847) 2024-11-05 11:53:01 +01:00
Kunal Aggarwal
5eadfcc524
Adding new on values for Tuya Presence Detection Sensor (#129801) 2024-11-05 11:52:38 +01:00
Manu
5fd1e23255
Bump pynecil to 0.2.1 (#129843) 2024-11-05 11:52:11 +01:00
Teemu R.
72bcc6702f
Add child lock for tplink thermostats (#129649) 2024-11-05 11:14:53 +01:00
Erik Montnemery
8889464e04
Validate go2rtc server version (#129810) 2024-11-05 11:09:10 +01:00
G Johansson
af58b0c3b7
Add reconfigure flow to yale_smart_alarm (#129536) 2024-11-05 11:05:20 +01:00
epenet
e9e20229a3
Drop use of initialize_options in androidtv_remote (#129855) 2024-11-05 10:57:03 +01:00
Alex Bush
80ff6dc618
Bump pyfibaro to 0.8.0 (#129846) 2024-11-05 10:56:34 +01:00
epenet
fa30100160
Fix flaky tests in device_sun_light_trigger (#129871) 2024-11-05 10:55:40 +01:00
epenet
e6c20333b3
Remove dead code in translation checks (#129875) 2024-11-05 10:47:37 +01:00
Joakim Sørensen
3858400a6f
Bump hass-nabucasa from 0.83.0 to 0.84.0 (#129873) 2024-11-05 10:10:23 +01:00
epenet
95eefbac20
Drop use of initialize_options in androidtv (#129854)
* Drop use of initialize_options in androidtv

* Initialize instance attribute in init method

* Adjust
2024-11-05 09:01:29 +01:00
epenet
e1e731eb48
Drop use of initialize_options in onkyo (#129869)
* Drop use of initialize_options in onkyo

* Apply suggestions from code review

Co-authored-by: Artur Pragacz <49985303+arturpragacz@users.noreply.github.com>

---------

Co-authored-by: Artur Pragacz <49985303+arturpragacz@users.noreply.github.com>
2024-11-05 08:56:58 +01:00
Michael Arthur
f7ce4ff25c
Update snapshot for lg thinq (#129856)
update snapshot for lg thinq

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-05 08:15:42 +01:00
Paulus Schoutsen
c7b2ffbc8e Bump version to 2024.11.0b5 2024-11-05 03:00:18 +00:00
J. Nick Koston
3a1502e2bb Disable SRTP for unifiprotect RTSPS stream (#129852) 2024-11-05 02:59:23 +00:00
J. Nick Koston
b830f83a34 Bump uiprotect to 6.4.0 (#129851) 2024-11-05 02:59:23 +00:00
J. Nick Koston
2982e733bc Fix unifiprotect supported features being set too late (#129850) 2024-11-05 02:59:22 +00:00
starkillerOG
e89ce215c6 Bump reolink-aio to 0.10.3 (#129841) 2024-11-05 02:59:21 +00:00
G Johansson
b6345f8d07 Fix translations in hydrawise (#129834) 2024-11-05 02:59:20 +00:00
G Johansson
9d261bab48 Fix translation in ovo energy (#129833) 2024-11-05 02:59:19 +00:00
Michael Hansen
b6f875134e Add HassRespond intent (#129755)
* Add HassHello intent

* Rename to HassRespond

* LLM's ignore HassRespond intent
2024-11-05 02:59:18 +00:00
Artur Pragacz
90ceebdf91 Fix source mapping in Onkyo (#129716)
* Fix source mapping

* Fix copy paste
2024-11-05 02:59:18 +00:00
Artur Pragacz
617e87e02c
Fix source mapping in Onkyo (#129716)
* Fix source mapping

* Fix copy paste
2024-11-04 21:56:47 -05:00
starkillerOG
dafd54ba2b
Bump reolink-aio to 0.10.3 (#129841) 2024-11-04 21:34:40 -05:00
J. Nick Koston
e8c3539709
Disable SRTP for unifiprotect RTSPS stream (#129852) 2024-11-04 16:13:52 -06:00
J. Nick Koston
e5263dc0c8
Bump uiprotect to 6.4.0 (#129851) 2024-11-04 15:43:22 -06:00
J. Nick Koston
3584c710b9
Fix unifiprotect supported features being set too late (#129850) 2024-11-04 15:13:56 -06:00
G Johansson
0b56ef5699
Fix translation in ovo energy (#129833) 2024-11-04 19:57:49 +01:00
G Johansson
90bd9bb626
Fix translations in hydrawise (#129834) 2024-11-04 19:57:00 +01:00
Paulus Schoutsen
03e6a13896 Bump version to 2024.11.0b4 2024-11-04 18:48:58 +00:00
G Johansson
9fb3261f02 Fix translations in landisgyr (#129831) 2024-11-04 18:48:37 +00:00
Bram Kragten
0bc6b8b0d4 Update frontend to 20241104.0 (#129829) 2024-11-04 18:48:36 +00:00
G Johansson
18d2ced045 Fix translations in homeworks (#129824) 2024-11-04 18:48:35 +00:00
Robert Resch
6c75e0bee1 Remove all ice_servers on native sync WebRTC cameras (#129819) 2024-11-04 18:48:35 +00:00
Steven B.
0b981f42bb Bump python-kasa to 0.7.7 (#129817)
Bump tplink dependency python-kasa to 0.7.7
2024-11-04 18:48:34 +00:00
Paulus Schoutsen
82868a8588 Fix ESPHome dashboard check (#129812) 2024-11-04 18:48:33 +00:00
Erik Montnemery
6e93777f54 Fix create flow logic for single config entry integrations (#129807)
* Fix create flow logic for single config entry integrations

* Adjust MQTT test
2024-11-04 18:47:41 +00:00
Erik Montnemery
9349292464 Fix aborting flows for single config entry integrations (#129805) 2024-11-04 18:43:56 +00:00
Robert Resch
7084b3b52c Update go2rtc stream if stream_source is not matching (#129804) 2024-11-04 18:43:55 +00:00
epenet
0f0f5fd0ab Fix incorrect description placeholders in azure event hub (#129803) 2024-11-04 18:43:54 +00:00
Joost Lekkerkerker
cb0b942db3 Improve error handling in Spotify (#129799) 2024-11-04 18:43:53 +00:00
Erik Montnemery
b1c9f83952 Fix stringification of discovered hassio uuid (#129797) 2024-11-04 18:43:52 +00:00
Joost Lekkerkerker
1ff0efc97b Bump yt-dlp to 2024.11.04 (#129794) 2024-11-04 18:43:51 +00:00
Robert Resch
a4da2a9eb5 Use RTCIceCandidate instead of str for candidate (#129793) 2024-11-04 18:43:51 +00:00
Antoine Reversat
ba3cfb5f87 Bump ayla-iot-unofficial to 1.4.3 (#129743)
Upgrade to ayla-iot-unofficial v1.4.3
2024-11-04 18:43:50 +00:00
Luca Angemi
bf196935f6 Add state class to precipitation_intensity in Aemet (#129670)
Update sensor.py
2024-11-04 18:43:49 +00:00
Joost Lekkerkerker
6e98343706 Update Spotify state after mutation (#129607) 2024-11-04 18:43:48 +00:00
Erik Montnemery
de453ab5c1 Add watchdog to monitor and respawn go2rtc server (#129497) 2024-11-04 18:43:47 +00:00
Andre Lengwenus
f408de4fc3 Bump lcn-frontend to 0.2.1 (#129457) 2024-11-04 18:43:47 +00:00
Bram Kragten
7863927c3a
Update frontend to 20241104.0 (#129829) 2024-11-04 19:39:46 +01:00
G Johansson
9fcf757021
Fix translations in landisgyr (#129831) 2024-11-04 19:35:35 +01:00
epenet
fc0547ccdf
Pass the config entry explicitly in aemet coordinator (#128097) 2024-11-04 19:23:48 +01:00
Joost Lekkerkerker
22f8f117fb
Add basic testing framework to LG ThinQ (#127785)
Co-authored-by: jangwon.lee <jangwon.lee@lge.com>
Co-authored-by: Joostlek <joostlek@outlook.com>
Co-authored-by: YunseonPark-LGE <34848373+YunseonPark-LGE@users.noreply.github.com>
Co-authored-by: LG-ThinQ-Integration <LG-ThinQ-Integration@lge.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-11-04 19:22:12 +01:00
epenet
2052579efc
Set config_entry explicitly in todoist coordinator (#129421) 2024-11-04 19:18:36 +01:00
epenet
b8f2583bc3
Set config_entry explicitly in caldav coordinator (#129424) 2024-11-04 19:17:53 +01:00
epenet
6323a078e1
Set config_entry explicitly in wled coordinator (#129425) 2024-11-04 19:17:07 +01:00
G Johansson
ca0be3ec8a
Use coordinator async_setup in vizio (#129450) 2024-11-04 19:16:22 +01:00
epenet
91157c21ef
Reapply "Fix unused snapshots not triggering failure in CI" (#129311) 2024-11-04 18:59:27 +01:00
epenet
cc4fae10f5
Cleanup deprecated OptionsFlowWithConfigEntry (part 2) (#129754) 2024-11-04 18:55:49 +01:00
epenet
d180ff417d
Cleanup deprecated OptionsFlowWithConfigEntry (part 3) (#129756) 2024-11-04 18:55:01 +01:00
epenet
8870b657d1
Use new helper properties in hyperion options flow (#129777) 2024-11-04 18:54:22 +01:00
epenet
81735b7b47
Use new helper properties in konnected options flow (#129778) 2024-11-04 18:50:00 +01:00
Marc Mueller
7fd261347b
Update charset-normalizer to 3.4.0 (#129821) 2024-11-04 18:49:19 +01:00
Robert Resch
df796d432e
Remove all ice_servers on native sync WebRTC cameras (#129819) 2024-11-04 18:41:37 +01:00
Steven B.
f6e36615d6
Bump python-kasa to 0.7.7 (#129817)
Bump tplink dependency python-kasa to 0.7.7
2024-11-04 18:39:39 +01:00
Noah Husby
0278735dbf
Use translated errors in Russound RIO (#129820) 2024-11-04 18:07:11 +01:00
tdfountain
9c8d8fef16
Suggest area for NUT based on device location (#129770) 2024-11-04 18:06:45 +01:00
G Johansson
6897b24c10
Fix translations in homeworks (#129824) 2024-11-04 18:03:37 +01:00
G Johansson
a2a3f59e65
Fix missing translation in jewish_calendar (#129822) 2024-11-04 18:01:39 +01:00
G Johansson
2626a74840
Fix translations in honeywell (#129823) 2024-11-04 18:00:31 +01:00
Paulus Schoutsen
689260f581
Fix ESPHome dashboard check (#129812) 2024-11-04 17:37:14 +01:00
G Johansson
f1a2c8be4b
Stop recording of non-changing attributes in threshold (#129541) 2024-11-04 17:36:25 +01:00
epenet
0579d565dd
Fix incorrect description placeholders in azure event hub (#129803) 2024-11-04 17:35:47 +01:00
Max Muth
f141f5f908
Update codeowners of Fritz integration (#129595)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-04 17:26:12 +01:00
Antoine Reversat
0c25252d9f
Bump ayla-iot-unofficial to 1.4.3 (#129743)
Upgrade to ayla-iot-unofficial v1.4.3
2024-11-04 17:20:15 +01:00
Jake Martin
400b377aa8
Bump monzopy to 1.4.2 (#129726)
* Bump monzopy to 1.4.0

* Bump to 1.4.2

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-04 16:55:02 +01:00
Manu
a5f3c434e0
Improve exceptions in habitica cast skill action (#129603)
* Raise a different exception when entry not loaded

* adjust type hints

* move `get_config_entry` to services module
2024-11-04 16:46:38 +01:00
epenet
365f8046ac
Use new helper properties in yeelight options flow (#129791) 2024-11-04 16:09:50 +01:00
Erik Montnemery
4ac35d40cd
Fix create flow logic for single config entry integrations (#129807)
* Fix create flow logic for single config entry integrations

* Adjust MQTT test
2024-11-04 15:45:29 +01:00
J. Nick Koston
7691991a93
Small cleanups to the websocket command phase (#129712)
* Small cleanups to the websocket command phase

- Remove unused argument
- Avoid multiple NamedTuple property lookups

* Update homeassistant/components/websocket_api/http.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Apply suggestions from code review

* touch ups

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-11-04 15:33:15 +01:00
Willem-Jan van Rootselaar
d0c45b1857
Bump python-bsblan to 1.2.1 (#129635)
* Bump python-bsblan dependency to version 1.1.0

* Bump python-bsblan dependency to version 1.2.0

* Bump python-bsblan dependency to version 1.2.1

* Update test diagnostics snapshots to use numeric values and add error handling
2024-11-04 15:31:44 +01:00
Joost Lekkerkerker
02750452df
Update Spotify state after mutation (#129607) 2024-11-04 15:01:37 +01:00
Marc Mueller
41a81cbf15
Switch back to av 13.1.0 (#129699) 2024-11-04 14:48:28 +01:00
Andre Lengwenus
ff621d5bf3
Bump lcn-frontend to 0.2.1 (#129457) 2024-11-04 14:45:20 +01:00
epenet
6d561a9796
Remove deprecated property setters in option flows (#129773) 2024-11-04 14:21:26 +01:00
Erik Montnemery
4784199038
Fix aborting flows for single config entry integrations (#129805) 2024-11-04 13:59:10 +01:00
Robert Resch
df35c8e707
Update go2rtc stream if stream_source is not matching (#129804) 2024-11-04 13:58:12 +01:00
Erik Montnemery
57eeaf1f75
Add watchdog to monitor and respawn go2rtc server (#129497) 2024-11-04 13:42:42 +01:00
Joakim Sørensen
3cadc1796f
Use JSON as format for .HA_RESTORE (#129792)
* Use JSON as format for .HA_RESTORE

* Adjust bakup manager test
2024-11-04 13:07:11 +01:00
Joost Lekkerkerker
ae06f734ce
Improve error handling in Spotify (#129799) 2024-11-04 12:34:00 +01:00
Erik Montnemery
08a53362a7
Fix stringification of discovered hassio uuid (#129797) 2024-11-04 12:26:34 +01:00
jb101010-2
274c928ec0
Add coordinator to suez_water (#129242)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-11-04 12:18:12 +01:00
Robert Resch
d75dda0c05
Use RTCIceCandidate instead of str for candidate (#129793) 2024-11-04 10:38:27 +01:00
Joost Lekkerkerker
0c40fcdaeb
Bump yt-dlp to 2024.11.04 (#129794) 2024-11-04 10:33:08 +01:00
G Johansson
0a1ba8a4a3
Small code quality improvement/cleanup in random (#129542) 2024-11-04 09:52:35 +01:00
epenet
018acc0a3c
Use new helper properties in crownstone options flow (#129774) 2024-11-04 09:43:25 +01:00
epenet
3a293c6bc4
Use new helper properties in dsmr options flow (#129775) 2024-11-04 09:43:10 +01:00
epenet
9155d56190
Use new helper properties in flux_led options flow (#129776) 2024-11-04 09:42:58 +01:00
epenet
461dc13da9
Use new helper properties in motioneye options flow (#129780) 2024-11-04 09:40:13 +01:00
epenet
b48e2127b8
Use new helper properties in plaato options flow (#129782) 2024-11-04 09:39:56 +01:00
epenet
11ab992dbb
Use new helper properties in recollect_waste options flow (#129783) 2024-11-04 09:39:41 +01:00
epenet
4be2cdf90a
Use new helper properties in steam_online options flow (#129785) 2024-11-04 09:39:27 +01:00
epenet
cdd5cb2876
Use new helper properties in tomorrowio options flow (#129787) 2024-11-04 09:39:13 +01:00
epenet
cdc67aa891
Use new helper properties in verisure options flow (#129788) 2024-11-04 09:38:41 +01:00
epenet
6a22a2b867
Use new helper properties in watttime options flow (#129789) 2024-11-04 09:38:24 +01:00
epenet
0883b23d0c
Use new helper properties in yalexs_ble options flow (#129790) 2024-11-04 09:38:11 +01:00
epenet
595459bfda
Use new helper properties in rfxtrx options flow (#129784) 2024-11-04 09:34:20 +01:00
Bram Kragten
5141a4d292 Bump version to 2024.11.0b3 2024-11-04 09:32:53 +01:00
LG-ThinQ-Integration
cf8b7607ae Bump thinqconnect to 1.0.0 (#129769)
Co-authored-by: yunseon.park <yunseon.park@lge.com>
2024-11-04 09:31:43 +01:00
Joost Lekkerkerker
b38fe00387 Bump spotifyaio to 0.8.3 (#129729) 2024-11-04 09:31:42 +01:00
J. Nick Koston
5d446f0e14 Bump HAP-python to 4.9.2 (#129715) 2024-11-04 09:31:41 +01:00
Josef Zweck
a592ece9c8 Add missing translation string to lamarzocco (#129713)
* add missing translation string

* Update strings.json

* import pytest again
2024-11-04 09:31:40 +01:00
Allen Porter
9cb60c61d1 Fix nest streams broken due to CameraCapabilities change (#129711)
* Fix nest streams broken due to CameraCapabilities change

* Fix stream cleanup

* Apply suggestions from code review

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Update homeassistant/components/nest/camera.py

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2024-11-04 09:31:39 +01:00
J. Nick Koston
90ed06c354 Bump DoorBirdPy to 3.0.8 (#129709) 2024-11-04 09:31:39 +01:00
Manu
22d64cb8f4 Bump bring-api to 0.9.1 (#129702) 2024-11-04 09:31:38 +01:00
Nathan Spencer
453039e860 Change alexa arm handler to allow switching arm states unless in armed_away mode (#129701)
* Change alexa arm handler to allow switching arm states unless in armed_away mode

* Address PR comments
2024-11-04 09:31:37 +01:00
Simon Lamon
e727162225 Bump python-linkplay to 0.0.17 (#129683) 2024-11-04 09:31:36 +01:00
Ståle Storø Hauknes
a898a5996e Bump Airthings BLE to 0.9.2 (#129659)
Bump airthings ble
2024-11-04 09:31:35 +01:00
Jesse Hills
d501bb8d52 Only set ESPHome configuration url to addon if there is an existing configuration for the device (#129356)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-11-04 09:31:34 +01:00
Ståle Storø Hauknes
7ab8ff56b3
Bump Airthings BLE to 0.9.2 (#129659)
Bump airthings ble
2024-11-04 08:11:18 +01:00
Nathan Spencer
eda36512ec
Change alexa arm handler to allow switching arm states unless in armed_away mode (#129701)
* Change alexa arm handler to allow switching arm states unless in armed_away mode

* Address PR comments
2024-11-04 07:49:48 +01:00
LG-ThinQ-Integration
04aee812f8
Bump thinqconnect to 1.0.0 (#129769)
Co-authored-by: yunseon.park <yunseon.park@lge.com>
2024-11-04 07:17:50 +01:00
Allen Porter
6718cce203
Fix nest streams broken due to CameraCapabilities change (#129711)
* Fix nest streams broken due to CameraCapabilities change

* Fix stream cleanup

* Apply suggestions from code review

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Update homeassistant/components/nest/camera.py

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2024-11-03 20:45:09 -08:00
Bouwe Westerdijk
49f0bb6990
Bump plugwise to v1.5.0 (#129668)
* Bump plugwise to v1.5.0

* And adapt
2024-11-03 23:30:21 -05:00
Simon Lamon
38afcbb21f
Bump python-linkplay to 0.0.17 (#129683) 2024-11-03 22:56:45 -05:00
Jesse Hills
87ab2beddf
Only set ESPHome configuration url to addon if there is an existing configuration for the device (#129356)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-11-03 18:16:49 -06:00
tdfountain
a05a34239d
Show NUT device serial number if provided in Device Info (#124168) 2024-11-03 17:27:27 -06:00
epenet
f11aba9648
Fix flaky tests in advantage_air (#129758) 2024-11-03 17:25:37 -06:00
Michael Hansen
c2ef119e50
Add HassRespond intent (#129755)
* Add HassHello intent

* Rename to HassRespond

* LLM's ignore HassRespond intent
2024-11-03 16:38:52 -06:00
epenet
8b6c99776e
Cleanup unnecessary OptionsFlowWithConfigEntry (part 1) (#129752)
* Cleanup unnecessary OptionsFlowWithConfigEntry

* Fix emoncms

* Fix imap

* Fix met

* Fix workday
2024-11-03 22:57:18 +01:00
Joost Lekkerkerker
463bffaeb6
Bump spotifyaio to 0.8.3 (#129729) 2024-11-03 21:55:12 +01:00
hahn-th
0cfd8032c0
Add Measurement StateClass to HomematicIP Cloud Wind and Rain Sensor (#129724)
Add Meassurement StateClass to Wind and Rain Sensor
2024-11-03 21:07:59 +01:00
Luca Angemi
144d5ff0cc
Add state class to precipitation_intensity in Aemet (#129670)
Update sensor.py
2024-11-03 21:06:46 +01:00
G Johansson
ab5c65b08c
Improve code quality in yale_smart_alarm options flow (#129531)
* Improve code quality in yale_smart_alarm options flow

* mods

* Fix
2024-11-03 21:04:53 +01:00
Josef Zweck
6b33bf3961
Add missing translation string to lamarzocco (#129713)
* add missing translation string

* Update strings.json

* import pytest again
2024-11-03 20:56:08 +01:00
epenet
89eb395e2d
Add OptionsFlow helper for a mutable copy of the config entry options (#129718)
* Add OptionsFlow helper for a mutable copy of the config entry options

* Add tests

* Improve coverage

* error_if_core=False

* Adjust report

* Avoid mutli-line ternary
2024-11-03 20:37:58 +01:00
G Johansson
d671d48869
Small cleanup mold_indicator (#129736) 2024-11-03 19:17:37 +01:00
J. Nick Koston
ed582fae91
Bump HAP-python to 4.9.2 (#129715) 2024-11-03 11:27:57 -06:00
Manu
4d5c3ee0aa
Bump bring-api to 0.9.1 (#129702) 2024-11-03 10:46:16 -06:00
epenet
02046fcdb4
Fix advantage_air CI failure (#129735) 2024-11-03 17:29:33 +01:00
Josef Zweck
fbe27749a0
Correct length of the serials in lamarzocco tests (#129725) 2024-11-03 13:35:42 +01:00
Josef Zweck
eddab96a69
Add DHCP discovery to lamarzocco (#129675)
* Add DHCP discovery to lamarzocco

* ensure serial is upper

* shorten pattern

* parametrize across models
2024-11-03 09:44:35 +01:00
J. Nick Koston
ed3376352d
Bump DoorBirdPy to 3.0.8 (#129709) 2024-11-02 22:43:21 -05:00
J. Nick Koston
dfbb763031
Disable cleanup_closed on python 3.12.7+ and 3.13.1+ (#129645) 2024-11-02 22:15:56 -05:00
Marc Mueller
5cf13d9273
Additional stream typing improvements (#129695) 2024-11-02 22:22:31 +01:00
Bram Kragten
5ef45fd12e Bump version to 2024.11.0b2 2024-11-02 20:42:48 +01:00
Klaas Schoute
8a293a41f5 Bump autarco lib to v3.1.0 (#129684)
Bump autarco to v3.1.0
2024-11-02 20:42:44 +01:00
J. Nick Koston
931820a170 Bump sensorpush-ble to 1.7.1 (#129657) 2024-11-02 20:42:44 +01:00
J. Nick Koston
e9944b964a Bump aioesphomeapi to 27.0.1 (#129643) 2024-11-02 20:42:43 +01:00
J. Nick Koston
dbae1d2f8b Bump aiohomekit to 3.2.6 (#129640) 2024-11-02 20:42:42 +01:00
Joost Lekkerkerker
0dc8feba05 Bump spotifyaio to 0.8.2 (#129639) 2024-11-02 20:42:41 +01:00
Robert Resch
5c7c2347f7 Bump webrtc-models to 0.2.0 (#129627) 2024-11-02 20:42:40 +01:00
J. Nick Koston
d069907948 Pin async-timeout to 4.0.3 (#129592) 2024-11-02 20:42:39 +01:00
Erik Montnemery
725ab477a8 Revert "Create a script service schema based on fields" (#129591) 2024-11-02 20:42:38 +01:00
Robert Resch
d05ee9ff60 Add go2rtc debug_ui yaml key to enable go2rtc ui (#129587)
* Add go2rtc debug_ui yaml key to enable go2rtc ui

* Apply suggestions from code review

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

* Order imports

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-11-02 20:42:36 +01:00
Joost Lekkerkerker
3c1f6d97cc Bump aiowithings to 3.1.1 (#129586) 2024-11-02 20:42:33 +01:00
epenet
5fe827f6c4 Fix flaky camera test (#129576) 2024-11-02 20:42:31 +01:00
Erik Montnemery
76f9a93ed7 Bump aiohasupervisor to version 0.2.1 (#129574) 2024-11-02 20:42:30 +01:00
Joost Lekkerkerker
df2506bfbb Bump spotifyaio to 0.8.1 (#129573) 2024-11-02 20:42:29 +01:00
Joost Lekkerkerker
b25ab04d2c Fix Geniushub setup (#129569) 2024-11-02 20:42:28 +01:00
Steven B.
6f094e8a54 Check for async web offer overrides in camera capabilities (#129519) 2024-11-02 20:42:27 +01:00
Erik Montnemery
e18ffc53f2
Revert "Create a script service schema based on fields" (#129591) 2024-11-02 20:39:17 +01:00
Marc Mueller
0eea3176d6
Minor stream typing improvements (#129691) 2024-11-02 19:29:09 +01:00
Marc Mueller
4f20977a8e
Update mypy-dev to 1.14.0a2 (#129625) 2024-11-02 19:15:50 +01:00
Marc Mueller
5bd63bb56b
Replace AVError with FFmpegError (#129689) 2024-11-02 19:14:59 +01:00
Marc Mueller
f7103da818
Refactor av.open calls to support type annotations (#129688) 2024-11-02 19:03:32 +01:00
Klaas Schoute
bf4922a7ef
Bump autarco lib to v3.1.0 (#129684)
Bump autarco to v3.1.0
2024-11-02 18:42:56 +01:00
J. Nick Koston
6f7eac5c6d
Bump sensorpush-ble to 1.7.1 (#129657) 2024-11-02 12:26:31 -05:00
epenet
d6e73a89f3
Cleanup unnecessary __init__ method in OptionsFlow (#129651)
* Cleanup unnecessary init step in OptionsFlow

* Increase coverage
2024-11-02 18:15:41 +01:00
Sid
269aefd405
Bump ruff to 0.7.2 (#129669) 2024-11-02 11:29:08 +01:00
J. Nick Koston
a6865f1639
Bump aiohomekit to 3.2.6 (#129640) 2024-11-01 14:01:33 -05:00
J. Nick Koston
f55aa0b86e
Bump aioesphomeapi to 27.0.1 (#129643) 2024-11-01 13:16:15 -05:00
Joost Lekkerkerker
02b34f05aa
Bump spotifyaio to 0.8.2 (#129639) 2024-11-01 18:25:26 +01:00
Joost Lekkerkerker
37f42707e5
Fix Geniushub setup (#129569) 2024-11-01 17:33:39 +01:00
Robert Resch
17f3ba1434
Bump webrtc-models to 0.2.0 (#129627) 2024-11-01 17:24:44 +01:00
Joakim Sørensen
31dcc25ba5
Add handler to restore a backup file with the backup integration (#128365)
* Early pushout of restore handling for core/container

* Adjust after rebase

* Move logging definition, we should only do this if we go ahead with the restore

* First round

* More paths

* Add async_restore_backup to base class

* Block restore of new backup files

* manager tests

* Add websocket test

* Add testing to main

* Add coverage for missing backup file

* Catch FileNotFoundError instead

* Patch Path.read_text instead

* Remove HA_RESTORE from keep

* Use secure paths

* Fix restart test

* extend coverage

* Mock argv

* Adjustments
2024-11-01 16:25:22 +01:00
Joost Lekkerkerker
4da93f6a5e
Bump spotifyaio to 0.8.1 (#129573) 2024-11-01 15:12:15 +01:00
Marc Mueller
5ed7d32749
Remove unnecessary asyncio EventLoopPolicy init_watcher backport (#129628) 2024-11-01 13:44:49 +01:00
epenet
ab5b9dbdc9
Add OptionsFlow helpers to get the current config entry (#129562)
* Add OptionsFlow helpers to get the current config entry

* Add tests

* Improve

* Add ValueError to indicate that the config entry is not available in `__init__` method

* Use a property

* Update config_entries.py

* Update config_entries.py

* Update config_entries.py

* Add a property setter for compatibility

* Add report

* Update config_flow.py

* Add tests

* Update test_config_entries.py
2024-11-01 12:54:35 +01:00
Marco
3b28bf07d1
Add boost switch to Smarty (#129466) 2024-11-01 11:08:55 +01:00
epenet
b626c9b450
Ensure entry_id is set on reauth/reconfigure flows (#129319)
* Ensure entry_id is set on reauth/reconfigure flows

* Improve

* Improve

* Use report helper

* Adjust deprecation date

* Update config_entries.py

* Improve message and adjust tests

* Apply suggestions from code review

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

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2024-11-01 10:29:58 +01:00
Willem-Jan van Rootselaar
5430eca93e
Bump python-bsblan to 1.0.0 (#129617) 2024-11-01 10:23:30 +01:00
epenet
b41c477f44
Fix flaky camera test (#129576) 2024-11-01 10:15:20 +01:00
Robert Resch
5900413c08
Add zwave_js node_capabilities and invoke_cc_api websocket commands (#125327)
* Add zwave_js node_capabilities and invoke_cc_api websocket commands

* Map isSecure to is_secure

* Add tests

* Add error handling

* fix

* Use to_dict function

* Make response compatible with current expectations

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-11-01 00:32:01 +01:00
Marc Mueller
c2ceab741f
Remove unnecessary husqvarna_automower_ble test fixture (#129577) 2024-11-01 00:00:52 +01:00
J. Nick Koston
45ff4940eb
Pin async-timeout to 4.0.3 (#129592) 2024-10-31 16:18:31 -05:00
Robert Resch
9c8a15cb64
Add go2rtc debug_ui yaml key to enable go2rtc ui (#129587)
* Add go2rtc debug_ui yaml key to enable go2rtc ui

* Apply suggestions from code review

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

* Order imports

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-31 20:56:53 +01:00
Erik Montnemery
b09e54c961
Bump aiohasupervisor to version 0.2.1 (#129574) 2024-10-31 19:37:31 +01:00
Steven B.
f44b7e202a
Check for async web offer overrides in camera capabilities (#129519) 2024-10-31 18:57:40 +01:00
Joost Lekkerkerker
0f535e979f
Bump aiowithings to 3.1.1 (#129586) 2024-10-31 18:28:53 +01:00
G Johansson
4c2c01b4f6
Use shorthand attribute for native_value in mold_indicator (#129538) 2024-10-31 17:40:14 +01:00
G Johansson
b1d48fe9a2
Use class attributes in Times of Day (#129543)
* mypy ignore assignment in Times of Day so we can drop all type checking

* class attributes
2024-10-31 17:37:33 +01:00
Bram Kragten
41590f91ac Bump version to 2024.11.0b1 2024-10-31 16:38:09 +01:00
Paul Bottein
e9d1f4f46e Update frontend to 20241031.0 (#129583) 2024-10-31 16:36:58 +01:00
epenet
7f287412ba Log type as well as value for unique_id checks (#129575) 2024-10-31 16:36:57 +01:00
Erik Montnemery
2df094de2b Stringify discovered hassio uuid (#129572)
* Stringify discovered hassio uuid

* Correct DiscoveryKey

* Adjust tests
2024-10-31 16:36:56 +01:00
starkillerOG
964ab5b351 Log Reolink select value KeyError only once (#129559) 2024-10-31 16:36:55 +01:00
Brett Adams
3f6e9a54fe Fix "home" route in Tesla Fleet & Teslemetry (#129546)
* translate Home to home

* refactor for mypy

* Fix home state

* Revert key change

* Add testing
2024-10-31 16:36:55 +01:00
J. Nick Koston
4ec5d5ae1e Bump yarl to 1.17.1 (#129539)
changelog: https://github.com/aio-libs/yarl/compare/v1.17.0...v1.17.1
2024-10-31 16:36:54 +01:00
Erik Montnemery
c49b155c29 Allow importing homeassistant.core.Config until 2025.11 (#129537) 2024-10-31 16:36:53 +01:00
Luca Angemi
fc602b1888 Fix bthome UnitOfConductivity (#129535)
Fix unit
2024-10-31 16:36:52 +01:00
G Johansson
81421992a2 Missing config_flow in manifest for local_file (#129529) 2024-10-31 16:36:51 +01:00
starkillerOG
4ef31f9331 Bump reolink_aio to 0.10.2 (#129528) 2024-10-31 16:36:50 +01:00
G Johansson
d7e304badf Fix async_config_entry_first_refresh used after config entry is loaded in speedtestdotcom (#129527)
* Fix async_config_entry_first_refresh used after config entry is loaded in speedtestdotcom

* is
2024-10-31 16:36:49 +01:00
cryptk
bf3f1b4b49 Bump uiprotect to 6.3.2 (#129513) 2024-10-31 16:36:49 +01:00
Jan Bouwhuis
2ac0ff03fc Fix current temperature calculation for incomfort boiler (#129496) 2024-10-31 16:36:48 +01:00
Aurore
d10553d624 Fix timeout issue on Roomba integration when adding a new device (#129230)
* Update const.py

DEFAULT_DELAY = 1 to DEFAULT_DELAY = 100 to fix timeout when adding a new device

* Update config_flow.py

continuous=False to continuous=True to fix timeout when adding a new device

* Update homeassistant/components/roomba/const.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Update test_config_flow.py

Change CONF_DELAY to match DEFAULT_DELAY (30 sec instead of 1)

* Update tests/components/roomba/test_config_flow.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Use constant for DEFAULT_DELAY in tests

---------

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
Co-authored-by: jbouwh <jan@jbsoft.nl>
2024-10-31 16:36:47 +01:00
Paul Bottein
b1dfc3cd23
Update frontend to 20241031.0 (#129583) 2024-10-31 16:35:36 +01:00
epenet
696efe349e
Log type as well as value for unique_id checks (#129575) 2024-10-31 15:10:27 +01:00
Jan Bouwhuis
6a32722acc
Fix current temperature calculation for incomfort boiler (#129496) 2024-10-31 14:57:09 +01:00
Erik Montnemery
8eaec56c6b
Stringify discovered hassio uuid (#129572)
* Stringify discovered hassio uuid

* Correct DiscoveryKey

* Adjust tests
2024-10-31 13:54:27 +01:00
Thomas55555
60d3c9342d
Fix flakey test in Husqvarna Automower (#129571) 2024-10-31 13:20:59 +01:00
Marcel van der Veldt
4dc2433e8b
Revert "Add musicassistant integration (#128919)" (#129565)
This reverts commit 568bdef61f.
2024-10-31 12:18:10 +01:00
TheJulianJES
2bd5039f28
Fix capitalization in Philips Hue strings (#129552) 2024-10-31 10:04:51 +01:00
G Johansson
8b1b14a704
Missing config_flow in manifest for local_file (#129529) 2024-10-31 09:50:32 +01:00
starkillerOG
5e674ce1d0
Log Reolink select value KeyError only once (#129559) 2024-10-31 09:49:27 +01:00
Brett Adams
3656bcf752
Fix "home" route in Tesla Fleet & Teslemetry (#129546)
* translate Home to home

* refactor for mypy

* Fix home state

* Revert key change

* Add testing
2024-10-31 08:56:03 +01:00
J. Nick Koston
39093fc2bc
Bump yarl to 1.17.1 (#129539)
changelog: https://github.com/aio-libs/yarl/compare/v1.17.0...v1.17.1
2024-10-30 23:56:29 +01:00
Teemu R.
efa5838be4
Add last alert timestamp for tplink waterleak (#128644)
* Add last alert timestamp for tplink waterleak

* Fix snapshot
2024-10-30 23:25:30 +01:00
Erik Montnemery
1c6ad2fa66
Allow importing homeassistant.core.Config until 2025.11 (#129537) 2024-10-30 22:56:59 +01:00
starkillerOG
af144e1b77
Bump reolink_aio to 0.10.2 (#129528) 2024-10-30 23:24:07 +02:00
Luca Angemi
b451bfed81
Fix bthome UnitOfConductivity (#129535)
Fix unit
2024-10-30 23:22:17 +02:00
G Johansson
3e32c50936
Fix async_config_entry_first_refresh used after config entry is loaded in speedtestdotcom (#129527)
* Fix async_config_entry_first_refresh used after config entry is loaded in speedtestdotcom

* is
2024-10-30 21:17:03 +01:00
Bram Kragten
208b15637a
Bump version to 2024.12 (#129525) 2024-10-30 20:59:56 +01:00
Marcel van der Veldt
c958cce769
Bump Music Assistant Client library to 1.0.5 (#129518) 2024-10-30 19:34:43 +01:00
epenet
602ec54579
Set config_entry explicitly to None in relevant components (#129427)
Set config_entry explicitly to None in components
2024-10-30 19:32:10 +01:00
cryptk
fa2bfc5d9d
Bump uiprotect to 6.3.2 (#129513) 2024-10-30 18:43:34 +01:00
Aurore
94f906b34c
Fix timeout issue on Roomba integration when adding a new device (#129230)
* Update const.py

DEFAULT_DELAY = 1 to DEFAULT_DELAY = 100 to fix timeout when adding a new device

* Update config_flow.py

continuous=False to continuous=True to fix timeout when adding a new device

* Update homeassistant/components/roomba/const.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Update test_config_flow.py

Change CONF_DELAY to match DEFAULT_DELAY (30 sec instead of 1)

* Update tests/components/roomba/test_config_flow.py

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>

* Use constant for DEFAULT_DELAY in tests

---------

Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
Co-authored-by: jbouwh <jan@jbsoft.nl>
2024-10-30 18:41:10 +01:00
Bram Kragten
60c93456c0 Merge branch 'dev' into rc 2024-10-30 18:33:24 +01:00
G Johansson
a4f210379d
Raise on non-string unique id for config entry (#125950)
* Raise on non-string unique id for config entry

* Add test update entry

* Fix breaking

* Add check get_entry_by_domain_and_unique_id

* Naming

* Add test

* Fix logic

* No unique id

* Fix tests

* Fixes

* Fix gardena

* Not related to this PR

* Update docstring and comment

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-30 18:09:50 +01:00
Bram Kragten
27e6205a37 Merge branch 'dev' into rc 2024-10-30 17:41:05 +01:00
G Johansson
3db6d82904
Add name to description placeholders automatically for reauth flows (#129232)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-30 17:38:59 +01:00
puddly
b8ddfd642e
Bump ZHA dependencies (#129510) 2024-10-30 17:38:24 +01:00
Bram Kragten
c98acd42db Bump version to 2024.11.0b0 2024-10-30 17:34:45 +01:00
Paul Bottein
39f418f2d2
Update frontend to 20241030.0 (#129508) 2024-10-30 17:31:41 +01:00
Jan Bouwhuis
9fbd484dfe
Add progress support to MQTT update platform (#129468)
* Add progress support to MQTT update platform and add validation on state updates

* Clean up cast to type class

* Add support for display_precision attribute
2024-10-30 17:22:55 +01:00
Jan Bouwhuis
1773f2aadc
Allow MQTT device based auto discovery (#118757)
* Allow MQTT device based auto discovery

* Fix merge error

* Remove unused import

* Fix discovery device based topics

* Fix cannot delete twice

* Improve cleanup test

* Follow up comment

* Typo

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

* Explain more

* Use tuple

* Default a device payload to have priority over a platform based payload

* Add unique_id to sensor test data

* Set migration flag to mark a discovery topic for migration

* Correct type hint

* Make unique_id required for components in device based discovery payload

* Remove CONF_MIGRATE_DISCOVERY from platform schema

* Unload discovered MQTT item to allow migration

* Follow up comments from code review

* ruff

* Subscribe to platform discovery wildcards first

* Use normal dict

* Use dict to persist wildcard subscription order

* Remove missed unused parameter

* Add a comment to explain we use a dict  to preserve the subscription order

* Add wildcard subscription order test

* Remove discovery flag from test

* Improve discovery migration origin logging

* Assert initial  wildcard discovery topics subscription order and after reconnect

* Improve log messages

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-10-30 17:10:15 +01:00
Michael Hansen
cb1b72d6ba
Bump intents to 2024.10.30 (#129505) 2024-10-30 16:20:59 +01:00
Manu
f5a2ec961d
Remove unused snapshots from Habitica (#129499) 2024-10-30 15:44:21 +01:00
Krisjanis Lejejs
bf40e77d65
Add Stun server with port 3478 (#129501) 2024-10-30 15:40:23 +01:00
Jozef Kruszynski
568bdef61f
Add musicassistant integration (#128919)
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
2024-10-30 14:57:01 +01:00
Manu
2303521778
Use common translation strings for Habitica (#129498) 2024-10-30 14:56:47 +01:00
Josef Zweck
3bf2946d13
Change type of the config_entry in coordinator in tedee (#129502) 2024-10-30 14:53:11 +01:00
Josef Zweck
484e5cb3e8
Explicitly pass config_entry to coordinator in lamarzocco (#129434)
* Update __init__.py

* Update coordinator.py

* Update coordinator.py

* ruff

* Update coordinator.py

* move type to coordinator
2024-10-30 14:43:41 +01:00
Josef Zweck
fbe8b6c34d
Pass config_entry explicitly to coordinator in tedee (#129432)
* pass entry

* pass entry

* Update coordinator.py

* move type definition
2024-10-30 14:42:19 +01:00
Jan Bouwhuis
4e7397dc9d
Test discovery subscriptions not done when discovery is disabled (#129458)
Test discovery subscriptions not performend when discovery is disabled
2024-10-30 14:38:44 +01:00
starkillerOG
a6189106e1
Reolink add TCP push event connection as primary method (#129490) 2024-10-30 14:34:32 +01:00
Artur Pragacz
ed6123a3e6
Add reconfigure step to Onkyo config flow (#129088) 2024-10-30 14:31:43 +01:00
Noah Husby
0cd5deaa3f
Add audio output select to Cambridge Audio (#129366) 2024-10-30 14:28:01 +01:00
Allen Porter
6c047e2678
Refresh Nest WebRTC streams before expiration (#129478) 2024-10-30 14:25:43 +01:00
Martin Hjelmare
405a480cae
Create repair issue for legacy webrtc provider (#129334)
* Add repair issue

* Add tests

* Add option to not use builtin go2rtc provider

* Add test

* Add domain to new providers

* Add learn more url

* Update placeholder

* Promote the builtin provider

* Refactor provider storage

* Move check for legacy provider conflict to refresh

* Test provider registration race

* Add test for registering the same legacy provider twice

* Test test_get_not_supported_legacy_provider

* Remove blank line between bullets

* Call it built-in

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

* Revert "Add option to not use builtin go2rtc provider"

This reverts commit 4e31bad6c0c23d5a1c0935c985351808a46163d6.

* Revert "Add test"

This reverts commit ddf85fd4db2c78b15c1cdc716804b965f3a1f4e3.

* Update issue description

* async_close_session is optional

* Clean up after rebase

* Add required domain property to provider tests

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-30 14:11:17 +01:00
Erik Montnemery
b4e69bab71
Improve shutdown of esphome ffmpeg proxy (#129326)
* Improve shutdown of esphome ffmpeg proxy

* Add test
2024-10-30 13:46:05 +01:00
Erik Montnemery
db81edfb2b
Add config entry to go2rtc (#129436)
* Add config entry to go2rtc

* Address review comments

* Remove config entry if go2rtc is not configured

* Allow importing default_config

* Address review comment
2024-10-30 13:39:54 +01:00
Martin Hjelmare
24829bc44f
Fix webrtc provider interface and tests (#129488)
* Fix webrtc provider tests

* Remove future code

* Add a test of the optional provider interface
2024-10-30 13:24:23 +01:00
starkillerOG
c8594045df
Bump reolink_aio to 0.10.1 (#129493) 2024-10-30 13:19:45 +01:00
YogevBokobza
ea3f9b971f
Bump aioswitcher to 4.4.0 (#129489) 2024-10-30 12:50:38 +01:00
Robert Resch
380974eed4
Remove hassio from ALLOWED_USED_COMPONENTS and move some functions to helper (#127228)
* Remove hassio from ALLOWED_USED_COMPONENTS

* Move HassioServiceInfo to helpers.service_info

* Deprecate moved functions

* Add note about deprecation

* Fix tests

* Implement suggestion

* Typo

* Update pyproject.toml

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-10-30 12:43:41 +01:00
Alistair Francis
8151403bf6
Bump automower-ble to 0.2.0 (#129473) 2024-10-30 12:31:11 +01:00
Christopher Fenner
16f5e76f00
Update PyViCare dependency to 2.35.0 (#129038) 2024-10-30 12:21:54 +01:00
J. Nick Koston
b6b178cac0
Fix nexia emergency heat migration (#129365) 2024-10-30 12:20:19 +01:00
Robert Resch
0f020366e3
Bump go2rtc-client to 0.0.1b3 (#129486) 2024-10-30 12:13:03 +01:00
LG-ThinQ-Integration
27a19be369
Add translation_key in LG ThinQ (#129476)
Co-authored-by: yunseon.park <yunseon.park@lge.com>
2024-10-30 11:28:28 +01:00
Blake Bryant
0c166eb307
Bump pydeako to 0.5.4 (#129475) 2024-10-30 11:25:11 +01:00
Erik Montnemery
79d73c28a7
Deduplicate wav creation in esphome ffmpeg_proxy tests (#129484) 2024-10-30 10:35:19 +01:00
LG-ThinQ-Integration
2aed01b530
Add entity_category to avoid header_toggle for switch (#129477)
add entity_category to avoid header_toggle

Co-authored-by: yunseon.park <yunseon.park@lge.com>
2024-10-30 10:34:04 +01:00
Erik Montnemery
3fb0d61271
Remove useless code from esphome ffmpeg_proxy tests (#129481) 2024-10-30 09:56:12 +01:00
Erik Montnemery
599acaf514
Improve demo integration's update entity (#129401)
* Improve demo integration's update entity

* Improve tests
2024-10-30 08:06:22 +01:00
TimL
5f4103a4a7
Allow smlight device to reboot before updating firmware data coordinator (#127442)
* Add delay before updating firmware coordinator

* fix update tests

* change sleep to 1s

* Timeout incase reboot fails

* update test

* test reboot timeout

* log hostname in warning
2024-10-30 08:02:30 +01:00
Kayden van Rijn
c7c72231c7
Bump opower to 0.8.6 (#129454)
* Bump opower to 0.8.6

* Bump opower to 0.8.6
2024-10-29 22:44:06 -07:00
Manu
6887a4419e
Add calendar platform to Habitica integration (#128248)
* Add calendar platform

* Add tests

* add missing reminders filter by date

* Add +1 day to todo end

* add 1 day to dailies, remove unused line of code

* Removing reminders calendar to a separate PR

* fix upcoming event for dailies

* util function for rrule string

* Add test for get_recurrence_rule

* use habitica daystart and account for isDue flag

* yesterdaily is still an active event

* Fix yesterdailies and add attribute

* Update snapshot

* Use iter, return attribute with None value

* various changes

* update snapshot

* fix merge error

* update snapshot

* change date range filtering for todos

* use datetimes instead of date in async_get_events

* Sort events

* Update snapshot

* add method for todos

* filter for upcoming events

* dailies

* refactor todos

* update dailies logic

* dedent loops
2024-10-29 20:53:49 -07:00
Erik Montnemery
db5cb6233c
Correct condition signalling non-live DB migration is in progress (#129464) 2024-10-29 12:26:52 -10:00
Robert Resch
963829712d
Add CameraCapabilities (#128455) 2024-10-29 21:36:30 +01:00
Steven B.
46ceccfbb3
Use new try_connect_all discover command in tplink config flow (#128994)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-10-29 10:26:34 -10:00
J. Nick Koston
aaf3039967
Bump DoorBirdPy to 3.0.7 (#129114) 2024-10-29 10:06:24 -10:00
Shay Levy
2509f18def
Bump aioshelly to 12.0.1 (#129453) 2024-10-29 22:01:38 +02:00
Krisjanis Lejejs
a1e2d79613
Add cloud ICE server registration (#128942)
* Add cloud ICE server registration

* Add ice_servers to prefs, fix registration flow

* Add support for list of ICE servers

* Add ICE server cleanup on cloud logout, create tests

* Fix RTCIceServer types

* Update homeassistant/components/cloud/client.py

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

* Improve tests based on PR reviews

* Improve tests

* Use set_cloud_prefs fixture

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Robert Resch <robert@resch.dev>
2024-10-29 20:35:52 +01:00
Andre Lengwenus
96ba5c3983
Remove LCN translation placeholder key (#129452) 2024-10-29 20:27:13 +01:00
ollo69
041282190a
Allow set ScreenCap interval as option for AndroidTV (#124470)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-10-29 20:24:20 +01:00
functionpointer
8cdd5de75c
Change Tibber get_prices action to return datetimes as str (#123901) 2024-10-29 20:15:08 +01:00
Michael
a95c232f11
Add addon support to Home Assistant Analytics Insights (#128806) 2024-10-29 20:13:56 +01:00
Andre Lengwenus
c9aba288b4
Add switch entities for LCN key-locks and regulator-locks (#127731)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-29 20:08:30 +01:00
G Johansson
35a9d502af
Use coordinator async_setup in dwd weather (#129448) 2024-10-29 20:07:37 +01:00
G Johansson
409c8783fe
Use coordinator async_setup in iotty (#129449) 2024-10-29 20:07:13 +01:00
Keilin Bickar
3adc3d7732
Add sensors for energy trends for devices (#129439)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-29 20:02:08 +01:00
Steven B.
ec19712388
Bump tplink python-kasa dependency to 0.7.6 (#129444) 2024-10-29 09:00:43 -10:00
Åke Strandberg
2c89e89c84
Improve mapping of myuplink entities (#129137) 2024-10-29 19:59:04 +01:00
Manu
e602a464db
Add tests for buttons in Habitica integration (#128194)
* Add tests for button platform

* update tests

* Add skill buttons

* Assert state, add fixtures/parametrization

* entity as list
2024-10-29 19:03:41 +01:00
Erik Montnemery
ffc0651d89
Report update_percentage in zwave_js update entity (#129386) 2024-10-29 13:31:34 -04:00
Erik Montnemery
7162efd836
Remove duplicated entity_picture config from MQTT update entity (#129390) 2024-10-29 18:22:06 +01:00
epenet
8e7d782102
Move validation routine out of wallbox coordinator (#129415) 2024-10-29 18:13:11 +01:00
Marc Mueller
dc2028f99c
Fix devolo_home_network DataCoordinator arguments (#129441) 2024-10-29 18:06:42 +01:00
Adam Goode
f12ba5f7a9
Unexport unavailable metrics in Prometheus (#125492) 2024-10-29 17:56:54 +01:00
Erik Montnemery
45fb21e32d
Suppress update entity's update_percentage when update not in progress (#129397) 2024-10-29 17:56:09 +01:00
Erik Montnemery
ecbb417736
Report update_percentage in esphome update entity (#129376) 2024-10-29 17:51:54 +01:00
Erik Montnemery
3a59a862d5
Report update_percentage in smlight update entity (#129383) 2024-10-29 17:50:43 +01:00
Erik Montnemery
e34fab0045
Report update_percentage in tessie update entity (#129385) 2024-10-29 17:48:29 +01:00
Erik Montnemery
7254ebe0e3
Report update_percentage in teslemetry update entity (#129384) 2024-10-29 17:48:03 +01:00
Keilin Bickar
b43bc3f32d
Add Sense Devices for entities (#129182) 2024-10-29 17:44:19 +01:00
Erik Montnemery
ca3d13b5cc
Sort some code in core_config (#129388) 2024-10-29 17:26:08 +01:00
Robert Resch
c8818bcce3
Bump go2rtc to 1.9.6 (#129430) 2024-10-29 16:46:58 +01:00
Guido Schmitz
b234b5937a
Disable pylint for DevoloScannerEntity (#129429) 2024-10-29 16:40:38 +01:00
Krisjanis Lejejs
1bdef0f2f7
Bump hass-nabucasa to 0.83.0 (#129422) 2024-10-29 16:34:02 +01:00
Erik Montnemery
56fb61bd6f
Refactor esphome ffmpeg proxy (#129330) 2024-10-29 16:26:32 +01:00
epenet
2c7d0b8909
Initialise coordinator with config_entry in components (part 1) (#128080) 2024-10-29 16:18:04 +01:00
Marcel van der Veldt
cbb8d76da7
Add support for vacuum cleaners to the Matter integration (#129420) 2024-10-29 16:17:40 +01:00
Erik Montnemery
cce925c06c
Fix bad falsy-check in homeassistant.set_location service (#129389) 2024-10-29 16:11:48 +01:00
Marco
505a4bfc34
Add Smarty versions to device (#129418) 2024-10-29 16:06:15 +01:00
Robert Resch
58e151966c
Fix go2rtc no audio issue (#129428) 2024-10-29 16:01:51 +01:00
Michael
8a6c9b7afc
Remove Mobile App config entries, when the related user gets removed (#129268)
* remove config entries, when related user gets removed

* add test
2024-10-29 15:53:00 +01:00
Jirka
e72e2071b0
Fix typo in nest string (#129423)
Update strings.json

Fixed typos
2024-10-29 15:38:55 +01:00
epenet
5d3af27928
Set config_entry explicitly in history stats coordinator (#129417)
Set config_entry explicitely in history stats coordinator
2024-10-29 15:32:56 +01:00
Petar Petrov
5dc0bedbc4
Allow fetching HA url to display it in the network settings (#128432)
* Allow fetching HA url to display it in the network settings

* add tests

* use a constant for the url types

* just return all url types

* Prefer callback without await

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-29 15:28:54 +01:00
epenet
8f7ae2665c
Set config_entry explicitly in switcher kis coordinator (#129419) 2024-10-29 16:14:36 +02:00
epenet
10fdf819d3
Set config_entry explicitely in scrape coordinator (#129416) 2024-10-29 14:54:24 +01:00
LG-ThinQ-Integration
02928601ef
Add min, max for WATER_HEATER device (#129414)
Co-authored-by: jangwon.lee <jangwon.lee@lge.com>
2024-10-29 14:52:26 +01:00
LG-ThinQ-Integration
c227f6dc2c
Add timer sensor entity which has rw hour and read-only minute (#129413)
Co-authored-by: jangwon.lee <jangwon.lee@lge.com>
2024-10-29 14:44:06 +01:00
Mike Degatano
673f0224c9
Continue migration of methods from handler to aiohasupervisor (#129183) 2024-10-29 14:33:21 +01:00
Manu
79c602f59c
Fix available conditions for chilling frost and stealth in Habitica (#129234)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-10-29 14:24:23 +01:00
Raj Laud
07c070e253
Refactor squeezebox integration media_player to use coordinator (#127695) 2024-10-29 14:21:28 +01:00
Vendetta01
9bda3bd477
Fix bosch shc multi controller support (#127844)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-29 14:19:33 +01:00
Marc Hörsken
2c9ad9562e
Fix visualization by inverting open/closed state of patio awnings (#128079) 2024-10-29 14:09:49 +01:00
Manu
c264ee22e7
Add tests for switch platform of Habitica integration (#128204) 2024-10-29 14:08:05 +01:00
J. Diego Rodríguez Royo
f194a689cc
Fetch power off state for Home Connect appliances' power switch (#129289) 2024-10-29 13:56:45 +01:00
David Bonnes
a36b350954
Fix evohome HVAC modes for VisionPro Wifi systems (#129161)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-29 13:37:35 +01:00
Josef Zweck
db4278fb9d
Cleanup select mappings in lamarzocco (#129407) 2024-10-29 13:32:14 +01:00
David Bonnes
39ba4cff2f
Refactor evohome tests as per best practice (#129229)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-29 13:29:10 +01:00
Christopher Fenner
d68da74790
Add number entities to set target temp for cooling programs in ViCare (#127267)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-29 13:28:12 +01:00
Tomer Shemesh
5fc45cd736
Add support for Lutron HWQS Proc discovery (#129274) 2024-10-29 13:27:44 +01:00
Guido Schmitz
5ae2f3d081
Add own coordinator to devolo_home_network (#128159) 2024-10-29 13:23:28 +01:00
Josef Zweck
478bf643bf
Add smart standby functionality to lamarzocco (#129333)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-29 13:22:37 +01:00
Daniel Hjelseth Høyer
7929895b11
Change Tibber request spread (#129276) 2024-10-29 13:12:07 +01:00
Erik Montnemery
da11a72b4c
Create repair asking user to remove duplicate config entries (#127948)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-10-29 13:10:56 +01:00
Mike Degatano
1649368cee
Bump aiohasupervisor to 0.2.0 (#129348) 2024-10-29 13:07:59 +01:00
dontinelli
a528d62c16
Add test for extended data in setup for solarlog (#129345) 2024-10-29 13:07:48 +01:00
Guido Schmitz
bd13dbdad0
Use new generic notation in devolo_home_network (#129080) 2024-10-29 13:07:13 +01:00
Allen Porter
8e7ffd9e16
Update Nest configuration flow to handle upcoming changes to Pub/Sub provisioning (#128909)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-29 12:58:36 +01:00
Manu
f0bff09b5e
Bump habitipy to 0.3.3 (#129322) 2024-10-29 12:48:20 +01:00
J. Diego Rodríguez Royo
0e959b3019
Added deprecation to binary door sensor at Home Connect (#129245)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-10-29 12:46:39 +01:00
Thomas55555
983cd9c3fc
Add and remove entities during runtime in Husqvarna Automower (#127878) 2024-10-29 12:46:04 +01:00
Erik Montnemery
2236ca3e12
Fix typo in cv.url_no_path (#129402) 2024-10-29 12:06:59 +01:00
Robert Resch
f3afa6a7d9
Fix hassfest docker image by pinning Python 3.12 (#129403) 2024-10-29 11:57:20 +01:00
Brett Adams
ce7e2e3243
Clean up SensorRestore in Tesla Fleet (#129116)
* Remove, fix, and test restore

* slightly better comment

* use restore instead

* parametrize test

* Apply suggestions from code review

* revert change to Teslemetry

* revert change to Teslemetry

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2024-10-29 11:41:35 +01:00
Robert Resch
13416825b1
Go2rtc server start is waiting until we got the api listen stdout line (#129391) 2024-10-29 11:28:40 +01:00
J. Nick Koston
6c664e7ba9
Bump protobuf to 5.28.3 (#129370) 2024-10-29 11:22:31 +01:00
LG-ThinQ-Integration
34359617b5
Bump thinqconnect to 0.9.9 (#129394) 2024-10-29 11:16:19 +01:00
Erik Montnemery
9e2696b9bc
Report update_percentage in matter update entity (#129380) 2024-10-29 10:57:52 +01:00
Paul Bottein
bf840e8bfa
Use device name for matter entities (#127798) 2024-10-29 10:54:25 +01:00
Robert Resch
1f03c140f5
Bump go2rtc-client to 0.0.1b2 (#129395) 2024-10-29 10:45:00 +01:00
Marc Mueller
2de161ce0e
Fix mariadb recorder tests for Python 3.13 (#129303) 2024-10-29 09:17:47 +01:00
Marc Mueller
1171106afb
Run postgres job on ubuntu 24.04 [ci] (#129381) 2024-10-29 09:15:04 +01:00
Robert Resch
f57ae73071
Bump webrtc-models to 0.1.0 (#129373) 2024-10-29 08:33:54 +01:00
Robert Resch
59872b5698
Enable strict typing for go2rtc (#129374) 2024-10-29 08:25:49 +01:00
Robert Resch
7cd8ea00d1
Bump uv to 0.4.28 (#129372) 2024-10-28 21:20:59 -10:00
Robert Resch
4b2f38926a
Bump go2rtc binary to 1.9.5 (#129371) 2024-10-29 08:01:59 +01:00
Allen Porter
537c95cf29
Update nest to use the async WebRTC APIs (#129369)
* Update nest to use the new `async_handle_webrtc_offer` APIs.

* Close sessions when sessions end

* Switch to the correct close API
2024-10-29 07:18:59 +01:00
epenet
81a5722708
Fix flaky DHCP tests in CI (#129327) 2024-10-28 13:41:50 -10:00
Jan Bouwhuis
c150b913ac
Use URL validation schema for mqtt update entity_picture and remove custom implementation (#129360) 2024-10-28 23:36:17 +01:00
J. Nick Koston
3e4b67db6c
Bump yarl to 1.17.0 (#129358) 2024-10-28 23:11:14 +01:00
G Johansson
d727f8ff50
Clarify event tracking in docstrings for track_state_change/report (#129338)
* Clarify event tracking in docstrings for track_state_change/report

* Fixes

* Update homeassistant/helpers/event.py

* Update homeassistant/helpers/event.py

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

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-10-28 23:05:06 +01:00
G Johansson
9546bf1dee
Use shorthand attribute for native value in statistics (#129355) 2024-10-28 22:43:09 +01:00
Michael Hansen
dd9ce34d18
Allow a fixed number of ffmpeg proxy conversions per device (#129246)
Allow a fixed number of conversions per device
2024-10-28 13:26:43 -07:00
G Johansson
73f2d972e4
Use shorthand attribute for available in statistics (#129354) 2024-10-28 21:01:34 +01:00
G Johansson
7d699c6c35
Fix calculation of attributes in statistics (#128475)
* Fix calculation of attributes in statistics

* Cleanup

* Mods

* Fix device class

* Typing

* Mod uom calc

* Fix UoM

* Fix docstrings

* state class docstring
2024-10-28 19:45:47 +01:00
dontinelli
21f23f67f4
Fix spelling mistake in notify (#129349) 2024-10-28 18:39:36 +01:00
Joost Lekkerkerker
8874ba2779
Add LG ThinQ to LG brand (#129346) 2024-10-28 18:24:24 +01:00
LG-ThinQ-Integration
420538e6e7
Add LG ThinQ integration (#129299)
Co-authored-by: jangwon.lee <jangwon.lee@lge.com>
2024-10-28 17:22:24 +01:00
dotvav
8eb68b54d9
Palazzetti integration (#128259)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-10-28 17:19:05 +01:00
Robert Resch
80202f33cb
Fix go2rtc tests (#129342) 2024-10-28 17:12:28 +01:00
YogevBokobza
c24579bfb2
Add switcher s12 support (#127277)
Co-authored-by: Joostlek <joostlek@outlook.com>
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2024-10-28 16:57:24 +01:00
Noah Husby
21256c4529
Remove media player shuffle check from Cambridge Audio (#129235)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-28 16:57:09 +01:00
J. Diego Rodríguez Royo
668626b920
Add ServiceValidationError to Home Connect (#129309)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-28 16:48:56 +01:00
Wendelin
cbfa3bb56d
Hassio logs boots (#129151)
* Add hassio logs/boots proxy settings

* Add hassio http tests
2024-10-28 16:41:14 +01:00
Robert Resch
536fcf02d7
Fix CI by running gen_requirements_all.py (#129339) 2024-10-28 16:39:49 +01:00
Erik Montnemery
a8ac3acbbe
Bump pychromecast to 14.0.5 (#129251) 2024-10-28 16:07:23 +01:00
TheJulianJES
7980155375
Bump ZHA to 0.0.36 (#129247) 2024-10-28 16:07:04 +01:00
Robert Resch
aa855e31c8
Convert async_get_webrtc_client_configuration to a callback (#129329) 2024-10-28 15:47:22 +01:00
Robert Resch
675ee8e813
Add async webrtc offer support (#127981)
* Add async webrtc offer support

* Create dataclass for messages

* Send session ID over websocket

* Fixes

* Rename

* Implement some review findings

* Add WebRTCError and small renames

* Use dedicated function instead of inspec

* Update go2rtc-client to 0.0.1b1

* Improve checking for sync offer

* Revert change as not needed anymore

* Typo

* Fix tests

* Add missing go2rtc tests

* Move webrtc offer tests to test_webrtc file

* Add ws camera/webrtc/candidate tests

* Add missing tests

* Implement suggestions

* Implement review changes

* rename

* Revert test to use ws endpoints

* Change doc string

* Don't import from submodule

* Get type form class name

* Update homeassistant/components/camera/__init__.py

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

* Adopt tests

* Apply suggestions from code review

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

* Fix tests

---------

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Erik <erik@montnemery.com>
2024-10-28 15:46:15 +01:00
unfug-at-github
50ccce7387
React to state report events to increase sample size of statistics (#129211)
* react to state reported events to increase sample size

* added test case for timinig and minor corrections
2024-10-28 14:41:48 +01:00
Markus Jacobsen
40b561ea69
Add shuffle media controls to Bang & Olufsen (#129325) 2024-10-28 13:39:49 +01:00
G Johansson
a0f73bd30f
Add reconfigure flow to Sensibo (#129280) 2024-10-28 12:29:06 +01:00
Tsvi Mostovicz
1b7fcce42d
Assert keys exist in Jewish calendar tests (#129295) 2024-10-28 12:23:45 +01:00
J. Nick Koston
4749af6e90
Convert WebSocket messages to bytes before passing them to send_message (#129300) 2024-10-28 12:21:12 +01:00
Maikel Punie
f7ad40263b
Bump velbusaio to 2024.10.0 (#129305) 2024-10-28 12:19:08 +01:00
epenet
e5b25bfa58
Use reauth_confirm in ovo_energy (#129306) 2024-10-28 11:52:38 +01:00
epenet
1d23adcda3
Use start_reauth_flow in system_bridge tests (#129318) 2024-10-28 11:52:13 +01:00
epenet
0216d36ab7
Use start_reauth_flow in permobil tests (#129314) 2024-10-28 11:51:16 +01:00
epenet
2bec20ad76
Ensure config entry is added to hass in reauth/reconfigure tests (#129315) 2024-10-28 11:03:42 +01:00
G Johansson
93c1245b0f
Use start_reauth_flow in apple_tv test (#129313)
* Use start_reauth_flow in apple_tv test

* Fix
2024-10-28 10:42:19 +01:00
epenet
72504d7619
Use async_start_reauth helper in broadlink (#129308) 2024-10-28 09:00:11 +01:00
G Johansson
320aa34d39
Use async_start_reauth in xiaomi_miio (#129282)
* Use async_start_reauth in xiaomi_miio

* Apply suggestions from code review

Co-authored-by: Teemu R. <tpr@iki.fi>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Teemu R. <tpr@iki.fi>
2024-10-28 08:37:38 +01:00
G Johansson
87f2a4242e
Use async_start_reauth in blink (#129281) 2024-10-28 07:57:18 +01:00
Joel Hawksley
9bf0cbd659
Omit declined Google Calendar events (#128900)
* Omit decline Google Calendar events

* move comment to top of function and update

* Apply suggestions from code review

* import ResponseStatus
2024-10-27 21:54:09 -07:00
Franck Nijhof
b1470fd9b8
Merge branch 'master' into dev 2024-10-28 02:46:15 +01:00
Nicolás Alonso
08016dc3b6
Lazy discover for dmaker.fan.1c (#129297) 2024-10-28 02:09:08 +01:00
G Johansson
7a448f5528
Add battery binary sensor to Yale Smart Alarm (#129277)
* Add battery binary sensor to Yale Smart Alarm

* Fix docstrings
2024-10-27 20:57:10 +01:00
Michael
4ac23bf14c
Add diagnostics platform to PEGELONLINE (#129279)
add diagnostics platform
2024-10-27 20:36:56 +01:00
Michael
bc708dee30
Mark PEGELONLINE entries as service (#129278)
set entry_type service
2024-10-27 20:35:19 +01:00
Erik Montnemery
2888e5748e
Fix ESPHome media proxy exit criteria (#129267) 2024-10-27 12:39:49 -05:00
Simone Chemelli
88f0a33e69
Update uptime deviation interval for Vodafone Station (#129257)
update uptime deviation interval
2024-10-27 15:40:58 +01:00
Michael
3165f92b6b
Fix conntected_to attribute of device tracker entities in a AVM Fritz mesh setup (#129259)
ignore orphan node links
2024-10-27 14:42:43 +01:00
Marc Mueller
3bd0fca633
Properly validate License-Expression data for licenses check (#129216) 2024-10-27 10:43:21 +01:00
tleydxdy
cdff10d281
Add new ZHA Inovelli blue switch strings (#127124)
ref: https://github.com/zigpy/zha/pull/203
2024-10-27 05:33:06 +01:00
Álvaro Fernández Rojas
e425741c34
Update aioairzone-cloud to v0.6.10 (#129227) 2024-10-26 13:19:34 -10:00
Marc Mueller
20a367b243
Fix zha tests for Python 3.13 (#129241) 2024-10-27 00:18:21 +02:00
Manu
fdded9e7ee
Add tests for todo platform of Habitica integration (#128199)
* Add tests for todo platform

* refactor mock_called_with

* update tests
2024-10-26 10:48:07 -07:00
Galorhallen
7d29bff136
Update govee-local-api to 1.5.3 (#129226) 2024-10-26 18:28:22 +02:00
G Johansson
0abfbeed3c
Fix flaky gardena_ble test (#129225) 2024-10-26 17:57:00 +02:00
Franck Nijhof
35b7c3038a
Revert "Fix unused snapshots not triggering failure in CI" (#129223)
Revert "Fix unused snapshots not triggering failure in CI (#128162)"

This reverts commit e888a95bd1.
2024-10-26 16:12:47 +02:00
boergegrunicke
46dd96a4b7
Add dishwasher salt and rinse aid nearly empty sensors (#127762)
Co-authored-by: Robert Contreras <beastie29a@users.noreply.github.com>
2024-10-26 16:09:11 +02:00
dontinelli
788232ca35
Add and remove plants (i.e. devices) dynamically in fyta (#129221) 2024-10-26 15:35:43 +02:00
J. Nick Koston
3b458738e0
Fix setting brightness to 0 in HomeKit when the On characteristic is not sent (#129201) 2024-10-26 15:29:15 +02:00
David Bonnes
2c8fc67ab1
Fix evohome failing to start with 'NoneType' object has no attribute 'get' (#129222) 2024-10-26 15:24:41 +02:00
David Bonnes
9b3ed3ed72
Add tests of evohome integration-specific services (#129206)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-26 14:44:46 +02:00
Joost Lekkerkerker
c59197e87a
Add more spotify sensors (#129215) 2024-10-26 14:43:32 +02:00
Álvaro Fernández Rojas
03e3c88d8b
Update aioairzone-cloud to v0.6.9 (#129217) 2024-10-26 14:37:58 +02:00
Joost Lekkerkerker
39693786ef
Remove remnants of removed list_events action (#129210) 2024-10-26 14:37:05 +02:00
dontinelli
357c324df1
Add logger for fyta library in manifest.json (#129218) 2024-10-26 14:36:07 +02:00
dontinelli
650482208c
Bump fyta_cli to 0.6.10 (#129220) 2024-10-26 14:34:45 +02:00
J. Diego Rodríguez Royo
2acad4a78c
Home connect number platform with temperature set points entities (#126145) 2024-10-26 14:04:52 +02:00
jb101010-2
65ee4e1916
Bump pysuezV2 to 0.2.2 (#129205)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-10-26 11:44:02 +02:00
J. Diego Rodríguez Royo
275bbc81f0
Add Time platform with alarm clock to Home Connect (#126155)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-26 11:42:51 +02:00
Marc Mueller
beafcf74ab
Update zeroconf to 0.136.0 (#129204) 2024-10-26 11:35:00 +02:00
Marc Mueller
e47909bb3e
Update gardena-bluetooth to 1.4.4 (#129202) 2024-10-26 11:34:32 +02:00
David Bonnes
0b3b9c2257
Make minor fixes / doc tweaks to evohome's WaterHeater tests (#129138) 2024-10-26 10:52:32 +02:00
Marc Mueller
8fb7a7e4cd
Refactor licenses check (#129194) 2024-10-26 10:30:10 +02:00
unfug-at-github
c5ed148c52
Fix race condition in statistics that created spikes (#129066)
* fixed race condition and added test case for updates before db load

* removed duplicated code

* improved comments, removed superfluous errors / assertions

* allow both possible outcomes of race condition

* use approx for float comparison

* Update tests/components/statistics/test_sensor.py

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

* force new state before database load in race condition test

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-10-26 09:23:47 +02:00
IceBotYT
e774c710a8
Bump lacrosse_view to 1.0.3 (#129174)
Add Pydantic v2 support to LaCrosse View
2024-10-26 08:59:08 +02:00
Jan Bouwhuis
d237180a98
Allow re-discovery of mqtt integration config payloads (#127362) 2024-10-26 07:21:52 +02:00
Erik Montnemery
d8b618f7c3
Remove support for live recorder data migration of context ids (#125309) 2024-10-26 07:19:03 +02:00
epenet
e888a95bd1
Fix unused snapshots not triggering failure in CI (#128162) 2024-10-26 07:15:51 +02:00
Joost Lekkerkerker
36c2404a46
Add base entity to Spotify (#128847)
Co-authored-by: Christopher Fenner <9592452+CFenner@users.noreply.github.com>
2024-10-26 07:09:18 +02:00
J. Nick Koston
ba673beb82
Bump anyio to 4.6.2.post1 (#129199) 2024-10-26 07:06:27 +02:00
Erik Montnemery
4b56701152
Move core config class to core_config.py (#129163) 2024-10-26 07:00:31 +02:00
J. Nick Koston
59227116f3
Ensure go2rtc server starts using posix_spawn/vfork (#129196) 2024-10-26 06:51:29 +02:00
J. Nick Koston
9b0975b2ac
Fix rainmachine update entities missing display_precision (#129195) 2024-10-26 06:29:39 +02:00
epenet
3a39a5caa3
Move brunt coordinator to separate module (#129090) 2024-10-26 02:30:59 +02:00
epenet
93e270f379
Use runtime_data in aranet (#129155) 2024-10-26 02:30:48 +02:00
epenet
98c81fa2af
Move airthings coordinator to separate module (#129158) 2024-10-26 02:29:57 +02:00
Joost Lekkerkerker
1bb32a05a9
Migrate Smarty to has entity name (#129145) 2024-10-26 02:28:26 +02:00
Sid
5dd4b77270
Add JSON schema for manifest.json (#128560) 2024-10-26 02:10:58 +02:00
Andre Lengwenus
737d1aac7c
Bump lcn-frontend to 0.2.0 (#129061) 2024-10-26 01:57:56 +02:00
Maciej Bieniek
886feae4ca
Add support for Xiaomi Miio Standing Fan 2 (dmaker.fan.p18) (#129160) 2024-10-26 01:52:18 +02:00
Marc Mueller
1dfe26f14f
Update apple_weatherkit to 1.1.3 (#129193) 2024-10-26 01:51:28 +02:00
Marc Mueller
d66fcd23df
Update radios to 0.3.2 and pycountry to 24.6.1 (#129186) 2024-10-26 01:49:26 +02:00
Marc Mueller
bdfb47e999
Fix AsyncMock imports (#129192) 2024-10-26 01:47:27 +02:00
Paulus Schoutsen
10300cc478
Create a script service schema based on fields (#128622) 2024-10-26 01:05:00 +02:00
Marc Mueller
ababa639b3
Fix cambridge_audio RuntimeWarning during tests (#129191) 2024-10-26 01:03:52 +02:00
Bouwe Westerdijk
9f6569d658
Bump plugwise to v1.4.4 (#129170) 2024-10-25 23:55:28 +02:00
J. Nick Koston
24c22ebdc7
Fix powerview entity unique id migration when the config entry unique id is missing (#129188)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-25 11:41:07 -10:00
Markus Jacobsen
6c365fffde
Add media seek for sources other than Deezer for Bang & Olufsen (#128661)
* Add seeking for sources other than Deezer

* Add is_seekable attribute to fallback sources and BangOlufsenSource
Add testing

* Update comment

* Use support flags instead of raising errors when seeking on incompatible source
2024-10-25 23:34:39 +02:00
Marc Mueller
dbb80dd6c0
Update krakenex to 2.2.2 (#129185) 2024-10-25 22:38:02 +02:00
Artur Pragacz
624834de9c
Fix service target devices by label (#127229)
* Fix service target devices by label

* More explicit test
2024-10-25 21:30:04 +02:00
Franck Nijhof
d31995f878
2024.10.4 (#129181) 2024-10-25 21:27:01 +02:00
Marc Mueller
017b1cae26
Update aiooui to 0.1.7 (#129179) 2024-10-25 21:24:43 +02:00
Franck Nijhof
c09f15b0e9
Bump version to 2024.10.4 2024-10-25 20:49:36 +02:00
Keilin Bickar
68284bed74
Add coordinators to Sense (#129171) 2024-10-25 20:45:55 +02:00
Joost Lekkerkerker
9a44d668d6
Bump nyt_games to 0.4.4 (#129152) 2024-10-25 20:43:16 +02:00
Joost Lekkerkerker
67e0197a7a
Fix NYT Games connection max streak (#129149) 2024-10-25 20:43:09 +02:00
Guido Schmitz
a5a8cfa17d
Fix adding multiple devices simultaneously to devolo Home Network's device tracker (#129082) 2024-10-25 20:43:02 +02:00
tronikos
60c3e701e9
Partially revert "LLM Tool parameters check (#123621)" (#129064) 2024-10-25 20:42:55 +02:00
Bram Kragten
b9b129dcf5
Update frontend to 20241002.4 (#129049) 2024-10-25 20:42:48 +02:00
Daniel Albers
d882ab236a
Remove DHCP match from awair (#129047)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-10-25 20:42:40 +02:00
Joost Lekkerkerker
140cc0e486
Bump yt-dlp to 2024.10.22 (#129034) 2024-10-25 20:42:17 +02:00
Guido Schmitz
6ac7c0f893
Fix devolo_home_network devices not reporting a MAC address (#129021) 2024-10-25 20:42:11 +02:00
J. Nick Koston
096d50617f
Fix cancellation leaking upward from the timeout util (#129003) 2024-10-25 20:42:04 +02:00
Simone Chemelli
9dd8c0cc4f
Fix uptime floating values for Vodafone Station (#128974) 2024-10-25 20:41:57 +02:00
Maikel Punie
de0fab86ec
Bump pyduotecno to 2024.10.1 (#128968) 2024-10-25 20:39:38 +02:00
Noah Husby
bb36dd3893
Use translated exceptions for Cambridge Audio (#129177) 2024-10-25 20:30:49 +02:00
Simone Chemelli
ada837ee95
Add diagnostics to Vodafone Station (#128923)
* Add diagnostics to Vodafone Station

* cleanup and exclude props based on date
2024-10-25 20:22:47 +02:00
Daniel Hjelseth Høyer
67e73173f6
Bump pyTibber to 0.30.3 (#128860) 2024-10-25 20:22:40 +02:00
Jan Bouwhuis
4b63829eef
Allow to set entity picture on mqtt entity platforms (#128404) 2024-10-25 20:16:11 +02:00
Simone Chemelli
029411d3fa
Add diagnostics to Comelit SimpleHome (#128794)
* Add diagnostics to Comelit SimpleHome

* add test

* add missing tests

* introduce SnapshotAssertion

* cleanup

* exclude date based props
2024-10-25 20:12:54 +02:00
Steven B.
6ba033f934
Bump ring-doorbell library to 0.9.8 (#128662) 2024-10-25 20:12:48 +02:00
Simon Lamon
3734fa948f
LinkPlay multiroom support (#127862) 2024-10-25 20:12:42 +02:00
Steven B.
336742e335
Bump ring-doorbell to 0.9.7 (#127554) 2024-10-25 20:12:41 +02:00
Markus Jacobsen
66ca424d3a
Add repeat media controls to Bang & Olufsen (#128170)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-25 20:10:08 +02:00
Heiko Carrasco
2da0a91a36
Add lock to switchbot_cloud (#115128)
Co-authored-by: Ravaka Razafimanantsoa <3774520+SeraphicRav@users.noreply.github.com>
Co-authored-by: Robert Resch <robert@resch.dev>
2024-10-25 20:09:14 +02:00
J. Diego Rodríguez Royo
fee1bde231
Fix program switches unique ID at Home Connect (#128397) 2024-10-25 20:05:29 +02:00
mkmer
4a94430bf0
Handle temprorary hold in Honeywell (#128460) 2024-10-25 20:05:14 +02:00
David Bonnes
cc337f7b1e
Fix evohome regression preventing helpful messages when setup fails (#126441)
Co-authored-by: Robert Resch <robert@resch.dev>
2024-10-25 20:05:05 +02:00
J. Diego Rodríguez Royo
d8a06777fe
Fix coffee maker device type name at applicances with programs list at Home Connect (#128538) 2024-10-25 20:04:53 +02:00
Marc Mueller
9207eedbfb
Update heatmiserV3 to 2.0.3 (#129175) 2024-10-25 20:04:37 +02:00
bru73f0rc3
c97b832648
Add more Vesync IDs for the Vital200S (#127616) 2024-10-25 18:58:54 +02:00
alorente
4ef629f79d
Remove check for obsolete "rain_product_available" in meteo_france (#128533)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-25 18:58:34 +02:00
Michael Hansen
0b4e3c3db5
Remove category from Assist satellite entities (#129172) 2024-10-25 18:43:42 +02:00
Noah Husby
f12cc523b4
Enforce strict typing for Cambridge Audio (#129004) 2024-10-25 18:41:33 +02:00
Marc Mueller
5c3c9d2ed1
Update goslide-api to 0.7.0 (#129168) 2024-10-25 18:33:37 +02:00
Russell Cloran
3ac3673326
Improve prometheus metric name sanitization (#126967) 2024-10-25 18:33:16 +02:00
cdheiser
1a3940575e
Use TAP to activate Lutron scenes (#127899) 2024-10-25 18:30:19 +02:00
Noah Husby
16c8b1efab
Add all models to diagnostics for Cambridge Audio (#129157) 2024-10-25 18:20:54 +02:00
Marc Hörsken
0e789be09f
Add light support to WMS WebControl pro (#128308)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-25 18:20:40 +02:00
J. Diego Rodríguez Royo
a948c7d69d
Door entity as enum sensor at Home Connect (#126158) 2024-10-25 18:18:21 +02:00
Marc Mueller
d8ec0103a9
Update zeversolar to 0.3.2 (#129167) 2024-10-25 18:14:04 +02:00
Isaac
50161670ce
Add "Albums" sensor to Lidarr (#125631)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-25 18:13:03 +02:00
Noah Husby
c1f612dce1
Bump aiostreammagic to 2.8.4 (#129166) 2024-10-25 18:10:38 +02:00
J. Diego Rodríguez Royo
6fb74482d7
Add Diegorro98 as Home Connect code owner (#129169) 2024-10-25 18:06:22 +02:00
dontinelli
4b680ffa5f
Dynamic add/remove devices for solarlog (#128668)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-25 18:02:14 +02:00
Marc Mueller
c71c8d56ce
Update pyxeoma to 1.4.2 (#129164) 2024-10-25 18:01:21 +02:00
IceBotYT
295ae7b4bc
Add support for Mighty Mule MMS100 to Nice G.O. (#127765) 2024-10-25 17:49:32 +02:00
Marc Mueller
839c884cef
Update aioopenexchangerates to 0.6.8 (#129162) 2024-10-25 17:40:02 +02:00
Jeef
13ffe7acfb
Add Intellifire cloud/local connectivity sensors (#127122) 2024-10-25 17:23:51 +02:00
Manu
39a0c0d96e
Add List access sensor to Bring integration (#126844) 2024-10-25 17:20:31 +02:00
Keilin Bickar
a95a542148
Update sense-energy to 0.13.2 (#128670) 2024-10-25 16:59:39 +02:00
Alistair Francis
b3cb2ac3ee
Add husqvarna automower ble integration (#108326)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-10-25 16:54:02 +02:00
Andre Lengwenus
759fe54132
Fix transition config storage in LCN light and scene platform (#127847) 2024-10-25 16:25:41 +02:00
Noah Husby
519a888e82
Bump aiostreammagic to 2.8.3 (#129113) 2024-10-25 16:21:08 +02:00
Erik Montnemery
4f1e4e7471
Include go2rtc in default_config (#129144)
* Include go2rtc in default_config

* Fail if binary not found in docker environment
2024-10-25 16:10:14 +02:00
epenet
7b8a32f630
Cleanup hass.data default in airtouch5 (#129156) 2024-10-25 15:37:07 +02:00
ashionky
92d91a65bb
Add refoss em16 device model (#126798) 2024-10-25 15:22:24 +02:00
rappenze
dab5289177
Add opening closing state to fibaro cover (#126958) 2024-10-25 15:10:20 +02:00
J. Diego Rodríguez Royo
a77cb1e579
Home connect light generalization and RGB support (#126144) 2024-10-25 15:08:50 +02:00
Joost Lekkerkerker
01bdda0ae6
Bump nyt_games to 0.4.4 (#129152) 2024-10-25 14:46:43 +02:00
Joost Lekkerkerker
fbe35e6e6b
Fix NYT Games connection max streak (#129149) 2024-10-25 14:19:46 +02:00
Alexandre CUER
a3cd74e30b
Bump pymoncms library to version 0.1.1 (#129135) 2024-10-25 14:15:35 +02:00
YogevBokobza
dbd4781de1
Bump aioswitcher to 4.2.0 (#129118)
* bump aioswitcher to 4.2.0

* Update cover.py

* switcher fix based on requested changes
2024-10-25 14:41:49 +03:00
Anton Tolchanov
6d48316436
Avoid creating Prometheus metrics for non-numeric states (#127262) 2024-10-25 13:31:30 +02:00
David Bonnes
cca6965cd1
Fix evohome regression preventing helpful messages when setup fails (#126441)
Co-authored-by: Robert Resch <robert@resch.dev>
2024-10-25 13:23:17 +02:00
Simone Chemelli
dd63ed7e69
Vodafone Station typing (#129143) 2024-10-25 12:57:52 +02:00
Joost Lekkerkerker
61e2283146
Add base class to Smarty (#129112) 2024-10-25 12:46:46 +02:00
Joost Lekkerkerker
97eb768748
Add entity descriptions to Smarty sensor (#129111) 2024-10-25 12:46:05 +02:00
Marc Mueller
be8b5a8aeb
Add option to extract licenses [ci] (#129095) 2024-10-25 12:41:05 +02:00
Erik Montnemery
99ed39b26c
Fix go2rtc config schema (#129141) 2024-10-25 12:32:43 +02:00
G Johansson
48a0eb90a7
Migrate config entry in anova to remove devices from entry data (#128934) 2024-10-25 12:03:39 +02:00
Jan-Philipp Benecke
3c342077d6
Remove deprecated retries and lazy_error_count yaml option (#128932) 2024-10-25 12:02:47 +02:00
Claudio Ruggeri - CR-Tech
f1bef1e7e6
Remove string literals from modbus component tests (#128899) 2024-10-25 12:01:42 +02:00
Brett Adams
da9749ecce
Add data streaming to Teslemetry (#127559) 2024-10-25 11:50:37 +02:00
Christopher Fenner
fa7be597d2
Add energy consumption sensors for cooling in ViCare integration (#127274) 2024-10-25 11:40:25 +02:00
Jan-Philipp Benecke
53da418d68
Use NumberSelector in p1_monitor config flow (#128939) 2024-10-25 11:39:45 +02:00
Jan-Philipp Benecke
897ed7e381
Use ConfigEntry.runtime_data in govee_light_local (#128998) 2024-10-25 11:29:06 +02:00
epenet
daf0939f09
Move bluesound service registration to separate module (#129086) 2024-10-25 11:27:25 +02:00
Simone Chemelli
7b1d6ddcf6
Fix uptime floating values for Vodafone Station (#128974) 2024-10-25 11:25:27 +02:00
tronikos
267e1dd0f8
Partially revert "LLM Tool parameters check (#123621)" (#129064) 2024-10-25 11:23:34 +02:00
Noah Husby
c9d0bfce54
Add switch entity to Cambridge Audio (#128530) 2024-10-25 11:22:50 +02:00
Jacob Feisley
7f9e5e29a8
Add support for Faucet services in HomeKit Controller (#129094) 2024-10-25 11:15:13 +02:00
epenet
d0f685183d
Add comment to Rflink battery sensor definition (#129131) 2024-10-25 11:14:26 +02:00
Erik Montnemery
bed77bd356
Remove go2rtc config flow (#129020)
* Remove go2rtc config flow

* Address review comments

* Update manifest

* Always validate go2rtc server URL

* Remove extra client

* Update homeassistant/components/go2rtc/__init__.py

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

* Improve test coverage

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-25 11:13:43 +02:00
Noah Husby
bc0e3b254b
Add additional tests to Cambridge Audio (#128213) 2024-10-25 11:13:27 +02:00
Petar Petrov
47bf0ebb47
Resume adding Z-Wave device if the page is refreshed (#129081)
* ZwaveJS: Resume adding a device if the page is refreshed

* add test

* address PR comments
2024-10-25 11:08:07 +02:00
Marc Hörsken
0acb95bbd5
Prevent duplicate WMS WebControl pro config entry creation (#128315) 2024-10-25 11:02:13 +02:00
Manu
8665f4a251
Refactor services setup in Habitica integration (#128186) 2024-10-25 11:00:58 +02:00
Manu
3adacb8799
Add entity picture for healing potion in Habitica (#129107) 2024-10-25 10:59:37 +02:00
David Bonnes
76aa69b9ac
Switch to using a fixture for evohome Climate tests (of zones) (#129100) 2024-10-25 10:57:37 +02:00
Manu
78116f1596
Set up single coordinator for all config entries in IronOS (#129108) 2024-10-25 10:51:23 +02:00
dependabot[bot]
36693b7d9d
Bump actions/setup-python from 5.2.0 to 5.3.0 (#129121)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 5.2.0 to 5.3.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/v5.2.0...v5.3.0)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-25 10:45:14 +02:00
Keilin Bickar
8ce68f93ea
Add typing for sense component (#129119)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-25 10:31:33 +02:00
Robert Resch
3512cb9599
Use webrtc-models package (#129032) 2024-10-25 10:18:55 +02:00
dontinelli
ea164a2030
Add missing state_class to sensors in solarlog (#128296)
* Add missing state_class

* Update snapshot
2024-10-25 09:32:56 +02:00
Joost Lekkerkerker
929ba70ef8
Add entity descriptions to Smarty Binary sensor (#129110) 2024-10-25 08:47:29 +02:00
Mike Degatano
5b2113c43d
Fix null hass error in supervisor update entities (#129030)
* Fix null hass error in supervisor update entities

* Share the supervisor client with coordinator

* Remove unnecessary patch of helper

* Attribute not property
2024-10-24 22:45:35 +02:00
Joost Lekkerkerker
6df2c0bab5
Add coordinator to Smarty (#129083)
* Add coordinator to Smarty

* Add coordinator to Smarty

* Fix
2024-10-24 22:41:21 +02:00
Thomas55555
1c5193aa4d
Bump aioautomower to 2024.10.3 (#128788) 2024-10-24 09:56:38 -10:00
Erik Montnemery
bd55fe868d
Allow update entities to report progress as a float (#128930)
* Allow update entities to report progress as a float

* Add test

* Update snapshots

* Update recorder test

* Use _attr_* in MockUpdateEntity
2024-10-24 21:20:18 +02:00
Sid
87a2465a25
Bump ruff to 0.7.1 (#129102) 2024-10-24 21:03:48 +02:00
Noah Husby
5f839ad3ee
Add play media capability to Cambridge Audio (#129002) 2024-10-24 20:33:53 +02:00
Sid
1663d8dfa9
Simplify webmin tests to use snapshot_platform (#127754) 2024-10-24 20:10:53 +02:00
Guido Schmitz
08eafc54e6
Fix adding multiple devices simultaneously to devolo Home Network's device tracker (#129082) 2024-10-24 20:10:06 +02:00
mkmer
fe1d8b137e
Handle temprorary hold in Honeywell (#128460) 2024-10-24 20:07:20 +02:00
Manu
39c0826f3c
Add buttons to cast skills in Habitica integration (#126350) 2024-10-24 19:54:59 +02:00
Jason Parker
bf63b0993d
Reduce the number of API calls in Twitch integration (#128996) 2024-10-24 19:51:19 +02:00
epenet
f91a1363cb
Use runtime_data in bsblan (#129089) 2024-10-24 17:53:06 +02:00
J. Nick Koston
a2c9aa7662
Add Meter Pro support to SwitchBot (#128991) 2024-10-24 17:49:40 +02:00
Noah Husby
d135da6c1d
Fix update callback in Cambridge Audio test (#129092) 2024-10-24 17:27:05 +02:00
Daniel Albers
d27051f04d
Remove DHCP match from awair (#129047)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-10-24 16:53:55 +02:00
epenet
b28fa2a1ad
Use shorthand attribute in template binary sensor (#128966) 2024-10-24 16:16:46 +02:00
David Bonnes
77a91f5a8f
Switch to using a fixture for evohome WaterHeater tests (#127701)
Co-authored-by: Christopher Fenner <9592452+CFenner@users.noreply.github.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: thecem <46648579+thecem@users.noreply.github.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Jan-Philipp Benecke <github@bnck.me>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-10-24 16:01:29 +02:00
Marc Mueller
dcc7ee98b3
Update pytest warnings filter (#129075) 2024-10-24 15:59:25 +02:00
epenet
30edb2a44f
Use runtime_data in buienradar (#129087) 2024-10-24 15:58:33 +02:00
epenet
f63332a7aa
Use runtime_data in blue_current (#129084) 2024-10-24 15:46:31 +02:00
epenet
86c37ce192
Use runtime_data in bluemaestro (#129085) 2024-10-24 15:45:46 +02:00
Louis Christ
93e6c9e5a0
Add tests for media_player to bluesound integration (#125864) 2024-10-24 15:42:25 +02:00
Joost Lekkerkerker
92e1fa4d3a
Add unique id and tests for Smarty (#129078) 2024-10-24 14:54:19 +02:00
epenet
bf7d292884
Use runtime_data in blink (#129072) 2024-10-24 14:32:48 +02:00
epenet
add8db0186
Use runtime_data in blebox (#129070) 2024-10-24 14:32:20 +02:00
Erik Montnemery
3e62c6ae2f
Move core config functionality to its own module (#129065)
* Move core config functionality to its own module

* Adjust test
2024-10-24 13:34:51 +02:00
Joost Lekkerkerker
cd4aa8ccd6
Add config flow to Smarty (#127540)
Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
2024-10-24 13:32:27 +02:00
Nebula83
937dbdc71f
Add config flow to Onkyo (#117319)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Artur Pragacz <49985303+arturpragacz@users.noreply.github.com>
Co-authored-by: Artur Pragacz <artur@pragacz.com>
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-10-24 12:45:25 +02:00
jb101010-2
66a7b508b2
Switch from pysuez to pysuezV2 in Suez Water (#127113) 2024-10-24 12:36:36 +02:00
epenet
a5493f7947
Remove bloomsky integration (#129073)
* Small refactor to bloomsky

* Remove bloomsky integration

* Update integrations.json
2024-10-24 11:52:00 +02:00
Bram Kragten
979c4907da
Update frontend to 20241002.4 (#129049) 2024-10-24 11:25:11 +02:00
Joshua Shaffer
b8f6fdeb2b
Use fan mode when heat/cool is idle in homekit_controller (#128618) 2024-10-24 09:25:40 +01:00
dependabot[bot]
067376cb3b
Bump actions/checkout from 4.2.1 to 4.2.2 (#129063) 2024-10-24 10:04:21 +02:00
Max R
bdbe9255a6
Add 'select' to configure Schlage locks "Auto Lock Time" (#123758) 2024-10-24 09:26:43 +02:00
J. Nick Koston
c460e1bbbe
Fix cancellation leaking upward from the timeout util (#129003) 2024-10-23 12:00:01 -10:00
Thomas55555
7e2b72fa5e
Fix get_time_zone annotations in dt_util (#129050) 2024-10-23 10:34:53 -10:00
G Johansson
6ee6a8a74f
Fix calculation of attributes in group sensor (#128601)
* Fix calculation of attributes in group sensor

* Fixes

* Fixes

* Make module level function
2024-10-23 20:51:18 +02:00
J. Nick Koston
80984c94a1
Bump sensorpush-ble to 1.7.0 (#128951)
changelog: https://github.com/Bluetooth-Devices/sensorpush-ble/compare/v1.6.2...v1.7.0
2024-10-23 19:25:20 +02:00
Joost Lekkerkerker
1757b66467
Bump yt-dlp to 2024.10.22 (#129034) 2024-10-23 19:18:57 +02:00
Keilin Bickar
8aa25af014
Create tests for sense integration (#128418)
* Create tests for sense integration

* Rearrange files

* Update to use snapshots

* Update tests/components/sense/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/sense/__init__.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/sense/test_binary_sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Update tests/components/sense/test_sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Add missing imports

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-10-23 18:22:21 +02:00
epenet
5a0e47be48
Use runtime_data in bang_olufsen (#129037) 2024-10-23 18:21:25 +02:00
Jonas Bergler
756a866ffd
Add completed to the wait variable when using triggers (wait_for_trigger) (#123427)
* Add support for the wait.completed variable when using wait with triggers

* Remove junk comment

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-10-23 17:19:07 +02:00
epenet
29305be23b
Use runtime_data in balboa (#129035) 2024-10-23 16:41:45 +02:00
Jason Parker
8253cfd21d
Remove deprecated channel views attribute from Twitch (#129008) 2024-10-23 16:27:19 +02:00
dependabot[bot]
165a00896e
Bump actions/cache from 4.1.1 to 4.1.2 (#129018)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-23 16:23:07 +02:00
Guido Schmitz
2149ea1306
Fix devolo_home_network devices not reporting a MAC address (#129021) 2024-10-23 16:22:08 +02:00
Lektri.co
90547da007
Add switch platform to the Lektrico integration (#126721) 2024-10-23 16:20:08 +02:00
unfug-at-github
9ec4881d8d
Have statistics functions return a meaningful, non-none result even if only one value is available (#127305)
* have statistics functions return a meaningful, non-none result even if only one value is available

* improved code coverage
2024-10-23 16:02:46 +02:00
Erik Montnemery
487593af38
Allow configuring WebRTC stun and turn servers (#128984)
* Allow configuring WebRTC stun and turn servers

* Add tests

* Remove class WebRTCCoreConfiguration
2024-10-23 14:41:45 +02:00
Willem-Jan van Rootselaar
4e8f878d83
Bump python bsblan version 0.6.4 (#128999) 2024-10-23 14:16:34 +02:00
Maikel Punie
af6544c64d
Bump pyduotecno to 2024.10.1 (#128968) 2024-10-23 14:15:33 +02:00
kingy444
09e1f53b3e
Powerview migrate scene to string unique_id (#128131) 2024-10-23 14:04:07 +02:00
dependabot[bot]
1c4f191f42
Bump github/codeql-action from 3.26.13 to 3.27.0 (#129019)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.26.13 to 3.27.0.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v3.26.13...v3.27.0)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-23 12:14:08 +02:00
Robert Resch
a37bd824d5
Add go2rtc binary config to expose api only on localhost (#129025) 2024-10-23 11:53:50 +02:00
Erik Montnemery
2c79173d20
Refactor camera.webrtc.register_ice_server (#129024)
* Refactor camera.webrtc.register_ice_server

* Apply suggestions from code review

Co-authored-by: Robert Resch <robert@resch.dev>

* Add missing import

---------

Co-authored-by: Robert Resch <robert@resch.dev>
2024-10-23 11:49:39 +02:00
Josef Zweck
eb45b89557
Remove battery device class from bmw secondary sensor (#128970)
Remove battery device class
2024-10-23 11:19:22 +02:00
Claudio Ruggeri - CR-Tech
bf8c345341
Adjust logging level in ModBus (#128980)
Fix issue 127570 in ModBus Component
2024-10-23 11:16:01 +02:00
J. Nick Koston
ef46280716
Bump orjson to 3.10.10 (#129015)
changelog: https://github.com/ijl/orjson/compare/3.10.9...3.10.10
2024-10-23 10:58:15 +02:00
Wendelin
2453e1284f
Add Hassio HTTP logs/follow to allowed paths (#126606)
* Add logs/follow to admin paths in hassio.http

* Add tests for logs/follow admin paths in hassio.http

* Add tests for logs/follow admin paths in hassio.http

* Add compress and timeout exclusions for hassio http api

* Fix should_compress usage in hassio/ingress

* Add missing follow exceptions for hassio/http

* Add hassio range header forward for logs endpoints

* Fix test syntax hassio/http
2024-10-23 09:57:14 +02:00
Pascal Vizeli
95bcb272e0
Fix FUNDING.yml to OHF (#129013) 2024-10-23 08:48:41 +02:00
Denis Shulyaka
e0e61b5262
Expose scripts with no fields as entities (#123061) 2024-10-22 23:14:07 -07:00
G Johansson
3ddef56167
Fix step in presets for generic thermostat (#128922) 2024-10-23 08:13:42 +02:00
epenet
f8e6fb81d6
Improve template docstring (#128967) 2024-10-22 19:15:27 -10:00
Jan-Philipp Benecke
683ec87adf
Use ConfigEntry.runtime_data in gardena_bluetooth (#129000) 2024-10-22 17:45:58 -10:00
Lektri.co
23edbe5ce7
Bump lektricowifi to 0.0.43 (#128979) 2024-10-22 17:41:43 -10:00
Luke Lashley
6ff32a51e3
Bump python-roborock to 2.6.1 (#128804) 2024-10-22 17:39:19 -10:00
Peter
4cbac3a864
Bump axis to v63 (#129005) 2024-10-22 23:16:52 +02:00
Álvaro Fernández Rojas
94a99b5bec
Update aioairzone-cloud to v0.6.8 (#128992) 2024-10-22 10:35:47 -10:00
Petro31
810bf06e16
Add limited template to at field for time triggers (#126584)
* Add limited template to at field for time triggers

* fix mypy

* Fix comments

* fix-tests

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-10-22 21:06:19 +02:00
J. Nick Koston
1254667b2c
Bump PySwitchBot to 0.51.0 (#128990) 2024-10-22 08:01:06 -10:00
Simone Chemelli
053eb8a0fd
Bump aiovodafone to 0.6.1 (#128976)
* Bump aiovodafone to 0.6.1

* remove exception
2024-10-22 18:28:00 +02:00
Simone Chemelli
82ef380256
Bump aiocomelit to 0.9.1 (#128977)
* Bump aiocomelit to 0.9.1

* remove exception
2024-10-22 18:25:33 +02:00
Marc Mueller
44449d8e72
Fix zha test RuntimeWarnings (#128975) 2024-10-22 18:05:40 +02:00
J. Nick Koston
6c3a0890c7
Add support for fetching bindkey from Mi cloud (#128394) 2024-10-22 05:53:02 -10:00
Allen Porter
8c0def7c79
Fix google tasks todo docstrings (#128978) 2024-10-22 07:17:48 -07:00
Krisjanis Lejejs
de77751779
Change Stun server port to 80 (#128879) 2024-10-22 14:23:29 +02:00
osohotwateriot
cdf809926b
Add OSO Energy services (#118770)
* Add OSO Energy services

* Fixes after review

* Add tests for OSO Energy water heater

* Fixes after review

* Revert changes for service schema in OSO Energy

* Improve osoenergy unit tests
2024-10-22 12:22:46 +02:00
Nicolas Mowen
d40341f1ad
Add snapshot service to image entity (#110057)
* Add service definition for saving snapshot of image entity

* Add service to image

* Add tests for image entity service

* Fix tests

* Formatting

* Add service icon

* Formatting

* Formatting

* Raise home assistant error instead of single log error

* Correctly pass entity id

* Raise exception from existing exception

* Expect home assistant error

* Fix services example

* Add test for templated snapshot

* Correct icon service config

* Set correct type for service template

* Remove unneeded

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

* remove template

* fix imports

* Update homeassistant/components/image/__init__.py

* Apply suggestions from code review

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-10-22 10:20:41 +02:00
J. Nick Koston
4a94fb91d7
Bump pySwitchbot to 0.50.1 (#128953)
changelog: https://github.com/Danielhiversen/pySwitchbot/compare/0.49.0...0.50.1
2024-10-22 07:47:36 +02:00
J. Nick Koston
24ea9ca947
Bump orjson to 3.10.9 (#128952) 2024-10-22 07:06:51 +02:00
Allen Porter
98eb9bf2bd
Bump gcal_sync to 6.2.0 (#128949) 2024-10-21 22:00:50 -07:00
J. Nick Koston
1eb30cf3ab
Bump yarl to 1.16.0 (#128941) 2024-10-21 17:29:03 -10:00
Marc Mueller
6fd7c0ff8e
Update astroid to 3.3.5 (#128948) 2024-10-22 02:23:53 +02:00
J. Nick Koston
263e81cb2c
Bump xiaomi-ble to 0.33.0 (#128946) 2024-10-21 12:22:24 -10:00
J. Nick Koston
92ebf37d86
Bump PySwitchbot to 0.49.0 (#128945) 2024-10-21 12:18:26 -10:00
G Johansson
a10e406131
Fix flaky update coordinator test (#128943) 2024-10-21 11:52:28 -10:00
Teemu R.
21095e80a7
Expose tplink temperature sensor as measurement (#128640)
Add state_class=measurement to the temperature sensor, making it available for long-term statistics.
2024-10-21 23:39:56 +02:00
Teemu R.
55ae43ed03
Add motion detected binary_sensor for tplink (#127883)
* Add motion binary_sensor for tplink

* Remove strings definition as we have device class that handles this

* Simplify instructions

* Remove mentions about fixture creation and snapshot updates as requested

* re-add newline
2024-10-21 23:39:23 +02:00
rappenze
9cc934a972
Fix description placeholder in transmission reauth (#128938) 2024-10-21 23:05:24 +02:00
G Johansson
cdfec7ebb4
Implement new state property for alarm_control_panel which is using an enum (#126283)
* Alarm state from enum

* Fixes

* Set final

* Fix rebase

* Test const

* Fix breaking version

* Fix other for alarm_control_panel

* Fix integrations

* More

* More

* More

* More

* Fix zha

* Replace _attr_state

* Fix alarm_control_panel

* Fix tests

* Fixes

* Mods

* Change some

* More

* More

* More

* Tests

* Last tests

* Return enum

* Fix zha

* Remove not needed check

* Fix wording

* Fix homekit

* Mod prometheus

* Fix mypy

* Fix homekit

* Fix ifttt
2024-10-21 22:54:27 +02:00
rappenze
59ad69b637
Fix description placeholder in imap reauth (#128940) 2024-10-21 22:29:24 +02:00
epenet
ca6b759607
Use new reauth helpers in unifi (#128837)
* Use new reauth helpers in unifi

* Apply suggestions from code review

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

* Update config_flow.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-21 22:25:10 +02:00
G Johansson
f9d857211f
Drop not needed reauth strings in tplink (#128937) 2024-10-21 22:13:54 +02:00
rahulsamant37
01ad8661d6
Add missing strings for mold indicator (#128205)
* Add missing localization keys for random component configuration

* Add missing localization keys for mold_indicator component configuration

* one_integration_at_a_time

* Fix localization strings for mold_indicator: use direct values instead of non-existing keys

* Fix localization strings for mold_indicator: use direct values instead of non-existing key

* Add missing translations for Mold Indicator helper

* correcting it for hassfest

* Fixes

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2024-10-21 22:01:23 +02:00
Jason Parker
d21b8166f0
Add subscription tier attribute to Twitch integration. (#128870)
* Add subscription tier to Twitch integration.

* Add test for Twitch tiers.  Tests do not currently pass, so this is only theoretical.

* Fix variable type

* Show tier levels as 1,2,3 instead of the raw API values of 1000,2000,3000.

* Make Twitch subscription tier fixtures strings.

* Use proper assertion value for subscription tier test.

Edited on a bus on my phone. 😎

* Update homeassistant/components/twitch/coordinator.py

* Update tests/components/twitch/test_sensor.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-21 21:54:10 +02:00
rappenze
63582bb489
Fix description placeholder in brunt reauth (#128933)
* Fix description placeholder in brunt reauth

* Update homeassistant/components/brunt/config_flow.py

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

* Update homeassistant/components/brunt/config_flow.py

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

---------

Co-authored-by: Jan-Philipp Benecke <github@bnck.me>
2024-10-21 21:02:22 +02:00
G Johansson
c19f2de3a8
Allow Timer title to be translated (#128927) 2024-10-21 20:42:18 +02:00
Erik Montnemery
d2e7b61eb2
Remove explicit templating of logbook service data (#128902) 2024-10-21 20:21:05 +02:00
Erik Montnemery
13a448ebfe
Remove explicit templating of velbus service data (#128904) 2024-10-21 20:20:54 +02:00
Erik Montnemery
bad2e1f9c4
Remove explicit templating of minio service data (#128905) 2024-10-21 20:20:44 +02:00
Erik Montnemery
8edac51401
Remove explicit templating of telegram_bot service data (#128906) 2024-10-21 20:20:29 +02:00
G Johansson
f34ba9bf96
Bump holidays to 0.59 (#128924) 2024-10-21 20:19:56 +02:00
G Johansson
82aea946a2
Allow Random title to be translated (#128928) 2024-10-21 20:19:43 +02:00
G Johansson
a0665dc431
Fix description placeholder in fibaro reauth (#128925) 2024-10-21 20:16:05 +02:00
G Johansson
e32d6cdecd
Allow Trend title to be translated (#128926) 2024-10-21 20:10:54 +02:00
Erik Montnemery
23b43319a8
Add update_percentage property to update entity (#128908) 2024-10-21 19:49:50 +02:00
Simone Chemelli
e7a7a18c43
Add diagnostics to Vodafone Station (#128923)
* Add diagnostics to Vodafone Station

* cleanup and exclude props based on date
2024-10-21 19:47:12 +02:00
Erik Montnemery
8e5abcf5c2
Deprecate entity_id template variable in camera services (#128592)
* Deprecate entity_id template variable in camera services

* Update snapshots

* Tiny lang tweak

* Fix translation

---------

Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-10-21 19:38:02 +02:00
Simone Chemelli
e08e8641cb
Add diagnostics to Comelit SimpleHome (#128794)
* Add diagnostics to Comelit SimpleHome

* add test

* add missing tests

* introduce SnapshotAssertion

* cleanup

* exclude date based props
2024-10-21 19:33:32 +02:00
Manu
3e8f3cfb49
Add firmware update entity to IronOS integration (#123031) 2024-10-21 19:20:23 +02:00
G Johansson
1eaaa5c6d3
Add config flow to local_file (#125835)
* Add config flow to local_file

* Small mods

* Add/fix tests

* Fix

* slug

* Fix strings

* Mod strings
2024-10-21 19:04:43 +02:00
Manu
1cc776d332
Add fan set_speed support for Xiaomi Mi Air Purifier 3C (#126870) 2024-10-21 18:16:12 +02:00
Barry vd. Heuvel
4009ae7d77
Add floor heating device valve positions in Homematic IP Cloud (#122759)
* Update sensor.py for new FALMOT Sensors

First Integration attemp to support ValvePosition as Sensor for HmIP-FALMOT-C12

* Update sensor.py

* Update sensor.py

* Add Valve Position to FALMOT-C12

* modified: devcontainer

* Service für minimum vale postion hinzugefügt.

* update to services

* Service call optimized

* Add valvePosition to HomematicIP Cloud for Falmot-C12 and show only channels that are connected with an motorized actuator

* Fix some tests

* Add icon for service

* Fix tests, add check for ValveState in icon

* Remove minimum valve service

* REmove minimum valve

* Use list comprehension for devices, support other terminal blocks

* Remove unused constant

* Check correct channel

---------

Co-authored-by: thecem <46648579+thecem@users.noreply.github.com>
2024-10-21 17:54:31 +02:00
DurandAN
07506faa3a
Add SIA alarm code (#127467) 2024-10-21 17:38:33 +02:00
Álvaro Fernández Rojas
4d787ec93c
Add Airzone Cloud switch entities to zones (#125917)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-21 17:03:48 +02:00
Álvaro Fernández Rojas
188413a531
Add Airzone Cloud main zone mode select (#125918)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-21 16:50:44 +02:00
Mike Degatano
ad55c9cc19
Remaining addon management to aiohasupervisor (#128484)
* Move set addon options to aiohasupervisor

* addon stats to aiohasupervisor and test fixes

* addon changelogs to aiohasupervisor

* Raise correct error for library in tests

* Cache client in instance property

* Use singleton method rather then HassIO instance method

* Mock supervisor client in more tests
2024-10-21 16:41:00 +02:00
Erik Montnemery
9b3ac49298
Remove explicit templating of persistent_notification service data (#128903) 2024-10-21 16:34:36 +02:00
Álvaro Fernández Rojas
4306b0caba
Add new QNAP QSW uptime timestamp sensor (#122589)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-21 16:33:41 +02:00
Álvaro Fernández Rojas
ebd1baa42c
Add Airzone switch entities to zones (#124562) 2024-10-21 16:33:22 +02:00
myztillx
6861bbed79
Add ecobee set_sensors_used_in_climate service (#102871)
* Add set_active_sensors Service

* Remove version bump from service addition commit

* Reviewer suggested changes

* Changed naming to be more clear of functionality

* Adjusted additional naming to follow new convention

* Updated to pass failing CI tests

* Fix typo

* Fix to pass CI

* Changed argument from climate_name to preset_mode and changed service error

* Made loop more clear and changed raised error to log msg

* Fix typo

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

* Removed code that was accidentally added back in and fixed mypy errors

* Add icon for service

* Added sensors as attributes and updated tests

* Revert changes made in #126587

* Added tests for remote_sensors and set_sensors_used_in_climate

* Changed back to load multiplatforms (#126587)

* Check for empty sensor list and negative tests for errors raised

* Added tests and fixed errors

* Add hass to class init to allow for device_registry lookup at startup and check for name changed by user

* Added tests to test the new functions

* Simplified code and fixed testing error for simplification

* Added freeze in test

* Fixed device filtering

* Simplified code section

* Maintains the ability to call `set_sensors_used_in_climate` function even is the user changes the device name from the ecobee app or thermostat without needing to reload home assistant.

* Update tests with new functionality. Changed thermostat identifier to a string, since that is what is provided via the ecobee api

* Changed function parameter

* Search for specific ecobee identifier

* Moved errors to strings.json

* Added test for sensor not on thermostat

* Improved tests and updated device check

* Added attributes to _unrecoreded_attributes

* Changed name to be more clear

* Improve error message and add test for added property

* Renamed variables for clarity

* Added device_id to available_sensors to make it easier on user to find it

---------

Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-10-21 16:21:56 +02:00
Andrew
25f66e6ac0
Bump pyopenweathermap to v0.2.1 (#128892) 2024-10-21 16:20:39 +02:00
epenet
838519e89f
Use STATE_ON/STATE_OFF constants in template test (#128883) 2024-10-21 16:19:44 +02:00
epenet
be4641b8f3
Push real binary sensor states to state machine in tests (#128894) 2024-10-21 16:19:25 +02:00
Erik Montnemery
e861cab727
Add update_percentage state attribute to update entity (#128877)
* Add update_percentage state attribute to update entity

* Update tests

* Update tests
2024-10-21 15:31:48 +02:00
Steven B.
f8f87ec091
Add reconfigure flow to ring integration (#128357)
Co-authored-by: Christopher Fenner <9592452+CFenner@users.noreply.github.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-21 15:30:05 +02:00
Erik Montnemery
c0f1996478
Remove dead code from concord232 (#128907) 2024-10-21 15:23:43 +02:00
Petar Petrov
106746ce58
Include Z-Wave JS lowSecurityReason in node added websocket message (#128896)
* Propagate lowSecurityReason to FE when adding a zwavejs device insecurely

* update tests
2024-10-21 14:27:04 +02:00
Cyrill Raccaud
62773fa88a
Simplify Swiss public transport coordinator (#128891) 2024-10-21 14:15:18 +02:00
Paul Bottein
28a8ed62f3
Add translations for Netatmo thermostat preset modes (#128890) 2024-10-21 13:00:23 +02:00
Cyrill Raccaud
110751e992
Use runtime_data for Swiss Public Transport (#128369)
* use runtime_data instead of hass.data[<key>]

* fix service response export type

* reduce runtime_data to be just the coordinator

* fix rebase

* fix ruff

* address reviews

* address reviews

* no general core import

* no general config_entries import

* fix also for services

* remove untyped config entry

* remove unneeded cast
2024-10-21 11:50:22 +02:00
Erik Montnemery
0d447c9d50
Improve entity cached attributes (#128876) 2024-10-21 10:29:01 +02:00
Joost Lekkerkerker
827d6d1d2d
Add audio feature sensors to Spotify (#128785) 2024-10-21 09:46:38 +02:00
J. Nick Koston
a64972fe38
Bump habluetooth to 3.6.0 (#128815) 2024-10-21 09:45:24 +02:00
Xitee
09bdc81aeb
Remove myself from roomba codeowners (#128858) 2024-10-21 09:10:07 +02:00
Daniel Hjelseth Høyer
c057de3a3c
Bump pyTibber to 0.30.3 (#128860) 2024-10-21 09:09:29 +02:00
Allen Porter
1c4aff3ee1
Bump google-nest-sdm to 6.1.3 (#128871) 2024-10-21 09:05:37 +02:00
epenet
6bfed5c98c
Use new reauth helpers in yale_smart_alarm (#128836) 2024-10-20 23:52:37 +02:00
Alexander Knöbel
f01231277b
Add humidity to KNX climate (#128844) 2024-10-20 22:17:00 +02:00
Oliver Woodings
94534f714c
Reduce the size of the Nest event media storage cache (#128855)
Reduce max media items per nest device
2024-10-20 10:58:27 -07:00
Christopher Fenner
1f9c06e606
Align consumption sensor names in ViCare integration (#127888) 2024-10-20 17:17:46 +02:00
LunaBytesBack
711c448242
Add Twitch stream viewer as readable data for integration (#128787) 2024-10-20 16:07:43 +02:00
peteS-UK
0c6a640e50
Add New Music Category for Media Browser (#128147) 2024-10-20 16:00:55 +02:00
epenet
11d9a71e5d
Use new reauth helpers in withings (#128826) 2024-10-20 15:54:04 +02:00
epenet
eed842fff1
Use new reauth helpers in yalexs_ble (#128831) 2024-10-20 15:53:46 +02:00
Joost Lekkerkerker
49fafcc68a
Add Spotify to strict typing (#128846) 2024-10-20 15:51:06 +02:00
Marc Mueller
c46cccc3cd
Update attrs to 24.2.0 (#126656) 2024-10-20 15:48:42 +02:00
epenet
dd714cc95e
Use new reauth helpers in yolink (#128834) 2024-10-20 15:36:13 +02:00
epenet
f9ce8fa368
Use new reauth helpers in youtube (#128835) 2024-10-20 15:34:37 +02:00
epenet
4fc872a4cb
Use new reauth helpers in weheat (#128824) 2024-10-20 15:30:49 +02:00
Bouwe Westerdijk
c8556f69e7
Bump plugwise to v1.4.3 (#128773) 2024-10-20 15:25:13 +02:00
Franck Nijhof
0b3f660626
Auto lower case username for Schlage auth flows (#128730) 2024-10-20 12:48:18 +02:00
epenet
7fa359764d
Use new reauth helpers in vicare (#128779) 2024-10-20 10:07:42 +02:00
Marc Mueller
2bc642ae6f
Update zhong-hong-hvac to 1.0.13 (#128822) 2024-10-20 10:07:14 +02:00
epenet
5228aa5e5c
Use new reauth helpers in yale (#128828) 2024-10-20 10:01:53 +02:00
epenet
d9c61a37bb
Use new reauth helpers in xiaomi_ble (#128827) 2024-10-20 10:01:18 +02:00
tronikos
5f662988ff
Handle invalid zeroconf messages in Android TV Remote (#128819) 2024-10-20 09:56:30 +02:00
epenet
87c9c0c3b1
Use new reauth helpers in whirlpool (#128825) 2024-10-20 09:55:16 +02:00
epenet
0ede15dcbf
Use new reauth helpers in webostv (#128823) 2024-10-20 09:54:23 +02:00
Joost Lekkerkerker
8ceecec5b8
Bump spotifyaio to 0.7.1 (#128807) 2024-10-20 09:49:23 +02:00
Paulus Schoutsen
28ff138370
Simplify custom component loading (#128813) 2024-10-20 09:47:27 +02:00
epenet
e8acb48b1e
Use new reauth helpers in wallbox (#128820) 2024-10-20 09:45:55 +02:00
epenet
b588bd6e4f
Use new reauth helpers in weatherflow_cloud (#128821) 2024-10-20 09:43:55 +02:00
Allen Porter
d9fd2c28b0
Bump google-nest-sdm to 6.1.0 (#128812) 2024-10-20 09:42:14 +02:00
Marc Mueller
0a02ed2a39
Update eq3btsmart to 1.2.0 (#128808) 2024-10-20 09:37:11 +02:00
epenet
b13e1b3d44
Use new reauth helpers in teslemetry (#128759) 2024-10-19 22:05:13 +02:00
epenet
98732cb033
Use new reauth helpers in tessie (#128760) 2024-10-19 22:04:52 +02:00
J. Diego Rodríguez Royo
eaa4a43458
Remove erroneous switch entity description at Home Connect (#128576) 2024-10-19 19:30:00 +02:00
epenet
6af6b73c89
Use new reauth helpers in volvooncall (#128782) 2024-10-19 19:22:20 +02:00
epenet
990987ac92
Use new reauth helpers in verisure (#128778) 2024-10-19 19:21:43 +02:00
epenet
fd8f5b9ff0
Use new reauth helpers in unifiprotect (#128775) 2024-10-19 19:21:09 +02:00
Raj Laud
062b61affb
Bump pysqueezebox to v0.10.0 (#128774) 2024-10-19 19:17:43 +02:00
Luke Lashley
311aa74dd3
Fix device data roborock (#128792) 2024-10-19 13:10:23 -04:00
epenet
0704c3ccb9
Use new reauth_helpers in nest (#128699)
Use reauth_confirm in nest
2024-10-19 09:57:18 -07:00
epenet
d375dca1f1
Use new reauth helpers in smarttub (#128743) 2024-10-19 17:12:48 +02:00
epenet
5f04a6239e
Use new reauth helpers in vodafone_station (#128781) 2024-10-19 16:42:01 +02:00
epenet
6f9c99ac6c
Use new reauth helpers in vlc_telnet (#128780) 2024-10-19 16:03:45 +02:00
epenet
3c50b00a9a
Use new reauth helpers in tankerkoenig (#128756) 2024-10-19 16:00:05 +02:00
epenet
ce8893ef6b
Use new reauth helpers in switcher_kis (#128750) 2024-10-19 16:26:55 +03:00
epenet
5fb7bb50e0
Use new reauth helpers in tautulli (#128758) 2024-10-19 14:58:46 +02:00
epenet
15bd5bf6f6
Use new reauth helpers in sunweg (#128747) 2024-10-19 14:57:32 +02:00
epenet
b35c1d852e
Use new reauth helpers in steam_online (#128746) 2024-10-19 14:56:47 +02:00
epenet
93ec127245
Use new reauth helpers in sonarr (#128745) 2024-10-19 14:56:13 +02:00
epenet
42613dbcf8
Use new reauth helpers in smlight (#128744) 2024-10-19 14:54:52 +02:00
epenet
a9ec5f5c38
Use new reauth helpers in sleepiq (#128742) 2024-10-19 14:54:00 +02:00
epenet
10b04f41df
Use new reauth helpers in skybell (#128741) 2024-10-19 14:44:06 +02:00
epenet
8a16504988
Use new reauth helpers in tailwind (#128755) 2024-10-19 14:43:31 +02:00
epenet
703e51d500
Use new reauth helpers in sensibo (#128738) 2024-10-19 14:43:14 +02:00
epenet
f97d6b552b
Use new reauth helpers in tailscale (#128752) 2024-10-19 14:43:08 +02:00
epenet
f592c64c6a
Use new reauth helpers in thethingsnetwork (#128761) 2024-10-19 14:42:31 +02:00
epenet
5d5355bc41
Use new reauth helpers in tplink_omada (#128762) 2024-10-19 14:42:03 +02:00
Marc Mueller
f02c14d327
Update ha-ffmpeg to 3.2.1 (#128769) 2024-10-19 14:41:16 +02:00
Álvaro Fernández Rojas
ca4f971eb4
Fix Airzone Cloud climate temperature range (#128740) 2024-10-19 14:38:15 +02:00
epenet
e43bf3b05a
Use new reauth helpers in sfr_box (#128739) 2024-10-19 14:37:40 +02:00
Ville Skyttä
38e7dcfd12
Bump upcloud-api to 2.6.0 (#128734) 2024-10-19 14:35:57 +02:00
epenet
6ccb4b726a
Use new reauth helpers in schlage (#128736) 2024-10-19 14:34:44 +02:00
Joost Lekkerkerker
ecf167e889
Bump spotifyaio to 0.7.0 (#128751) 2024-10-19 14:34:01 +02:00
epenet
dce819f57b
Use new reauth helpers in trafikverket_ferry (#128763) 2024-10-19 14:33:47 +02:00
epenet
fe7328b92e
Use new reauth helpers in trafikverket_train (#128764) 2024-10-19 14:33:10 +02:00
epenet
46fa9e6b82
Use new reauth helpers in transmission (#128765) 2024-10-19 14:32:26 +02:00
Álvaro Fernández Rojas
76712439ee
Fix Airzone climate temperature range (#128737) 2024-10-19 14:31:52 +02:00
epenet
5a2830a654
Use new reauth helpers in tuya (#128766) 2024-10-19 14:27:11 +02:00
epenet
b34ca9a521
Use new reauth helpers in twitch (#128767) 2024-10-19 14:26:49 +02:00
epenet
7fc4a65868
Use new reauth helpers in tplink (#128768) 2024-10-19 14:25:53 +02:00
epenet
85899a59c0
Use new reauth helpers in surepetcare (#128748) 2024-10-19 13:41:45 +02:00
Ville Skyttä
73214be565
Bump huawei-lte-api to 1.9.3 (#128731) 2024-10-19 11:09:18 +00:00
starkillerOG
175a87f948
Catch Reolink LoginFirmwareError (#128590) 2024-10-19 13:02:29 +02:00
Kuba Kaflik
201aab9f73
Allow SSL security_protocol configuration property in apache_kafka component (#128651) 2024-10-19 12:05:37 +02:00
epenet
0581d614f6
Use new reauth helpers in rympro (#128728) 2024-10-19 11:34:11 +02:00
epenet
9622a11b2e
Use new reauth helpers in pvpc_hourly_pricing (#128721) 2024-10-19 11:25:00 +02:00
epenet
f17c5bc334
Use new reauth helpers in samsungtv (#128729) 2024-10-19 11:24:41 +02:00
epenet
ed9f40fc4c
Use new reauth helpers in roborock (#128726) 2024-10-19 11:15:58 +02:00
epenet
31a58a21c6
Use new reauth helpers in ruckus_unleashed (#128727) 2024-10-19 11:01:17 +02:00
Joost Lekkerkerker
061ece55f3
Add coordinator to Twitch (#127724) 2024-10-19 10:59:37 +02:00
epenet
391f278ee5
Use new reauth helpers in radarr (#128725) 2024-10-19 10:54:34 +02:00
epenet
004b323fd4
Use new reauth helpers in purpleair (#128719) 2024-10-19 10:37:01 +02:00
epenet
088cfed794
Use new reauth helpers in prosegur (#128718) 2024-10-19 10:36:27 +02:00
epenet
908f649ea7
Use new reauth helpers in powerwall (#128717) 2024-10-19 10:36:01 +02:00
epenet
c214adcdf0
Use new reauth helpers in point (#128716) 2024-10-19 10:35:32 +02:00
epenet
097ba07f20
Use new reauth helpers in pi_hole (#128715) 2024-10-19 10:34:40 +02:00
epenet
0c04373b79
Use new reauth helpers in philips_js (#128714) 2024-10-19 10:15:59 +02:00
epenet
dd8f1800df
Use new reauth_helpers in nextcloud (#128700) 2024-10-19 10:15:29 +02:00
epenet
81b918c392
Use new reauth_helpers in motioneye (#128695) 2024-10-19 10:14:36 +02:00
epenet
43038564fe
Use new reauth_helpers in monzo (#128694) 2024-10-19 10:13:48 +02:00
epenet
bcd77de328
Use new reauth helpers in pvoutput (#128720) 2024-10-19 10:12:22 +02:00
epenet
0d90d6586e
Use new reauth_helpers in openexchangerates (#128706)
Use reauth_confirm in openexchangerates
2024-10-19 10:10:08 +02:00
epenet
2324bccbe7
Use new reauth_helpers in nextdns (#128701) 2024-10-19 10:07:55 +02:00
epenet
0cb07f511a
Use new reauth_helpers in mikrotik (#128693) 2024-10-19 10:07:41 +02:00
Franck Nijhof
e22fb444d3
Merge branch 'master' into dev 2024-10-19 09:59:09 +02:00
epenet
9a09c1b027
Use new reauth_helpers in nice_go (#128702) 2024-10-19 09:56:36 +02:00
epenet
a94968b6bb
Use reauth helpers in google (#128580) 2024-10-19 09:55:39 +02:00
epenet
3ac05f1fa9
Use new reauth_helpers in microbees (#128692) 2024-10-19 09:54:29 +02:00
epenet
ad3effa7d1
Use new reauth_helpers in notion (#128703) 2024-10-19 09:51:31 +02:00
epenet
d094c0d2b3
Use new reauth_helpers in oncue (#128704) 2024-10-19 09:50:58 +02:00
epenet
157e7f9f78
Use new reauth_helpers in onvif (#128705) 2024-10-19 09:50:05 +02:00
Allen Porter
5816342bed
Remove dead code and increase test coverage for google config flow (#128690) 2024-10-19 09:48:36 +02:00
epenet
22491afa58
Use reauth_confirm in mqtt (#128696) 2024-10-19 09:30:57 +02:00
epenet
a023b71ce0
Use reauth_confirm in opower (#128707) 2024-10-19 00:20:27 -07:00
epenet
392848c885
Use reauth_confirm in myuplink (#128697) 2024-10-19 09:16:06 +02:00
Hans Kröner
a815661de1
Add lighting effects to Hue lights managed by deCONZ (#128292)
* Add more effects for Philips Hue lights

* Update tests for light effects
2024-10-19 09:09:01 +02:00
epenet
ff6261ccc8
Use reauth_confirm in nanoleaf (#128698) 2024-10-19 08:54:29 +02:00
J. Nick Koston
7e68368d0a
Bump yarl to 1.15.5 (#128681)
changelog: https://github.com/aio-libs/yarl/compare/v1.15.4...v1.15.5
2024-10-18 22:17:48 -04:00
Michael Hansen
f21c8d895f
Block until config is retrieved when adding satellite entity to HA (#128685)
Block until config is retrieved
2024-10-18 16:01:18 -04:00
epenet
120e17fa1e
Improve logic for detecting unused ignore translations (#128441) 2024-10-18 17:59:06 +02:00
epenet
42e6ac4f6d
Use reauth helpers in ista_ecotrend (#128647) 2024-10-18 17:28:01 +02:00
epenet
7a77a3d7ce
Use reauth helpers in jellyfin (#128648) 2024-10-18 17:24:26 +02:00
epenet
bf9b35d670
Use reauth helpers in intellifire (#128646) 2024-10-18 17:23:47 +02:00
epenet
e0a14cdeea
Use reauth helpers in lametric (#128656) 2024-10-18 17:23:11 +02:00
epenet
099a3f4f90
Use reauth helpers in lidarr (#128657) 2024-10-18 17:22:14 +02:00
epenet
4d41f82794
Use reauth helpers in litterrobot (#128659) 2024-10-18 17:21:29 +02:00
Steven B.
1d24bfb99d
Bump ring-doorbell library to 0.9.8 (#128662) 2024-10-18 17:20:33 +02:00
epenet
47b809c7b7
Use reauth helpers in linear_garage_door (#128658) 2024-10-18 17:17:31 +02:00
epenet
f3f6cb03e6
Use reauth helpers in lacrosse_view (#128655) 2024-10-18 17:16:38 +02:00
Franck Nijhof
a301d51fb2
2024.10.3 (#128654) 2024-10-18 17:06:51 +02:00
epenet
d6703b20d3
Use new reauth helpers in overkiz (#128666)
* Use reauth_confirm in overkiz

* Just use new helpers
2024-10-18 16:32:37 +02:00
epenet
8c4b076746
Refactor rainforest_raven coordinator tests (#128591)
* Refactor rainforest_raven tests

* Remove assert

* Cleanup freezer

* Drop un-needed coordinator properties

* Cleanup remaining coordinator tests

* Improve

* Revert _DEVICE_TIMEOUT

* Ensure 100% coverage

* Use async_fire_time_changed
2024-10-18 16:00:42 +02:00
epenet
356e09091d
Add model_id to rainforest_raven device info (#128652)
* Remove single-use rainforest properties

* Add model_id
2024-10-18 15:50:34 +02:00
epenet
d4c9841e44
Use reauth helpers in ring (#128663) 2024-10-18 15:18:41 +02:00
epenet
bea13d039f
Use reauth_confirm in osoenergy (#128665) 2024-10-18 15:17:39 +02:00
Duco Sebel
1f8fd52103
Fix reload not triggered on DisabledError in HomeWizard (#128636)
* Fix reload not triggered on DisabledError in HomeWizard

* Update homeassistant/components/homewizard/coordinator.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Use helper and fix merge issue

* Add test to detect reload on DisabledError

* Wait until next update instead of a direct call to update

* Add doc why we reload

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-10-18 14:48:41 +02:00
epenet
94506c3c90
Use reauth helpers in imap (#128645) 2024-10-18 14:27:21 +02:00
Franck Nijhof
515771553f
Bump version to 2024.10.3 2024-10-18 13:22:48 +02:00
mvn23
e204812d2b
Bump pyotgw to 2.2.2 (#128594) 2024-10-18 13:22:22 +02:00
Petar Petrov
ca703cb858
Increase Z-Wave fallback thermostat range to 0-50 C (#128543)
* Z-Wave JS: Increase fallback thermostat range to 0-50 C

* update test
2024-10-18 13:21:49 +02:00
Louis Christ
b018d4a97d
Bump pyblu to 1.0.4 (#128482) 2024-10-18 13:21:46 +02:00
dontinelli
146768ff8a
Bump solarlog_cli to 0.3.2 (#128293) 2024-10-18 13:21:43 +02:00
Allen Porter
ea7473ed67
Bump gcal_sync to 6.1.6 (#128270) 2024-10-18 13:21:40 +02:00
Álvaro Fernández Rojas
0e8393766f
Update aioairzone to v0.9.5 (#128265)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-10-18 13:21:36 +02:00
Álvaro Fernández Rojas
7d2536c503
Update aioairzone to v0.9.4 (#127792) 2024-10-18 13:21:31 +02:00
Simon Lamon
f9cbf1b30c
Keep the provided name when creating a tag (#128240)
* Keep the name

* Add patch

* Update homeassistant/components/tag/__init__.py

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

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2024-10-18 13:20:21 +02:00
Adam Petrovic
d66d87d271
Fix daikin entities not refreshing quickly (#128230)
* Fix daikin entities not refreshing quickly

* Update homeassistant/components/daikin/switch.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-18 13:20:18 +02:00
Joost Lekkerkerker
5a8fa6cf38
Bump yt-dlp to 2024.10.07 (#128182) 2024-10-18 13:20:15 +02:00
Chris Talkington
76340035db
Fix playing media via roku (#128133)
* re-support playing media via roku

* fixes

* test fixes

* Update test_media_player.py

* always send media type

* add description to options flow
2024-10-18 13:20:12 +02:00
puddly
0a26e68d0c
Use the same ZHA database path during startup and when loading device triggers (#128130)
Use the same zigpy database path source as in the radio manager
2024-10-18 13:20:09 +02:00
Marc Hörsken
14127b910f
Improve discovery of WMS WebControl pro by updating IP address (#128007) 2024-10-18 13:20:06 +02:00
Michael
ba4d081021
Fix printer uptime fluctuations in IPP (#127725)
* decrease uptime accuracy from seconds to minutes

* adjust tests

* calc uptime timestamp in coordinator

* bump pyipp to 0.17.0

* revert changes, just use the new printer.booted_at property

---------

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2024-10-18 13:19:43 +02:00
Marc Mueller
18d65d513e
Update home-assistant-bluetooth to 1.13.0 (#127691) 2024-10-18 13:18:52 +02:00
epenet
3cf9e2d9f6
Use reauth helpers in justnimbus (#128649) 2024-10-18 13:12:39 +02:00
epenet
080842e44c
Use reauth helpers in jvc_projector (#128650) 2024-10-18 13:12:01 +02:00
Claudio Ruggeri - CR-Tech
49d534e779
Add list as possible values for State On/Off ModBus Switch (#127444)
* add possibility to set multiple val on state

* Add support for list also in state_off
2024-10-18 10:10:47 +02:00
epenet
5a0ef149a5
Use reauth helpers in google_sheets (#128587) 2024-10-18 10:04:03 +02:00
epenet
d2eb0e1fde
Use reauth helpers in glances (#128579) 2024-10-18 10:01:20 +02:00
starkillerOG
2d90ffcbf0
Update Reolink config entry port info if needed (#128589) 2024-10-18 10:00:28 +02:00
epenet
5580c3fda0
Use snapshot assertion in rainforest_raven diagnostic tests (#128602) 2024-10-18 09:57:38 +02:00
epenet
10d26bf734
Use snapshot assertion in rainforest_raven sensor tests (#128604) 2024-10-18 09:50:04 +02:00
MarkGodwin
57ef175050
Add sensors to Omada (#127767)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-10-18 09:48:06 +02:00
epenet
275c86a0a9
Use reauth helpers in fibaro (#128567) 2024-10-18 09:36:57 +02:00
epenet
5fa6202111
Use reauth helpers in frontier_silicon (#128569) 2024-10-18 09:35:21 +02:00
Jordan Zucker
1e001469f6
Add asdf tools dot file to gitignore (#128608) 2024-10-18 09:34:22 +02:00
Duco Sebel
4251389c12
Remove ExternalDevice 'invalid ID' migration in HomeWizard (#128634) 2024-10-18 09:33:53 +02:00
G Johansson
6ff2ce1895
Use shorthand attribute in derivative sensor (#128610) 2024-10-18 09:33:02 +02:00
starkillerOG
1abc953cad
Bump reolink_aio to 0.10.0 (#128578) 2024-10-18 09:28:31 +02:00
epenet
c696a3b789
Use reauth helpers in homewizard (#128628) 2024-10-18 09:22:31 +02:00
G Johansson
5986646af4
Use shorthand attribute in trend binary sensor (#128614)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-10-18 09:21:07 +02:00
epenet
5674c1d82f
Use reauth helpers in google_mail (#128584) 2024-10-18 09:04:55 +02:00
epenet
c1c0a281cf
Use reauth helpers in google_tasks (#128586) 2024-10-18 09:04:01 +02:00
epenet
84d4a1ce34
Use reauth helpers in google_photos (#128585) 2024-10-18 09:02:44 +02:00
epenet
8a4d72e3b1
Refactor duplicate host check in homeworks config flow (#128627) 2024-10-18 08:49:06 +02:00
epenet
a7b5e4323e
Use reauth helpers in honeywell (#128629) 2024-10-18 08:46:49 +02:00
epenet
409f1bb644
Use reauth helpers in huawei_lte (#128630) 2024-10-18 08:46:21 +02:00
epenet
1d5821abca
Use reauth helpers in husqvarna_automower (#128631) 2024-10-18 08:45:51 +02:00
epenet
b3eca73e48
Use reauth helpers in hydrawise (#128632) 2024-10-18 08:44:25 +02:00
Sid
7694326a4e
Bump ruff to 0.7.0 (#128626) 2024-10-18 08:42:22 +02:00
Noah Husby
9c026bc442
Bump aiostreammagic to 2.8.1 (#128542) 2024-10-18 08:23:40 +02:00
G Johansson
b812306bd7
Use shorthand attribute in threshold binary sensor (#128612)
Small refactor threshold
2024-10-18 08:01:32 +02:00
epenet
0e667dfe36
Use reauth helpers in co2signal (#128566)
Do not cache reauth entry in co2signal
2024-10-17 22:10:57 -04:00
Markus Jacobsen
9037421a85
Bump mozart-api to 4.1.1.116.0 (#128573)
Bump API
Fix testing
2024-10-17 22:05:28 -04:00
Michael Hansen
1a9c6deb0d
Remove metadata and cover art using ffmpeg proxy conversion (#128603)
Remove metadata and cover art
2024-10-17 16:41:44 -04:00
epenet
f08d2716ae
Use reauth helpers in fitbit (#128568) 2024-10-17 22:04:34 +02:00
epenet
f37c0e0548
Use reauth helpers in fyta (#128571) 2024-10-17 22:03:19 +02:00
puddly
be2c3217dc
Rename the SkyConnect integration to Connect ZBT-1 (#128599) 2024-10-17 21:59:10 +02:00
epenet
937d15d7e1
Use reauth helpers in fujitsu_fglair (#128570) 2024-10-17 21:53:09 +02:00
Jan Morawiec
35ff3afa12
Refactor unittest tests to use pytest (#127770)
* Refactor unittest tests to use pytest

* Add type annotations

* Use caplog to assert logs

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-17 21:28:14 +02:00
epenet
536d702d96
Use reauth helpers in google_generative_ai_conversation (#128583) 2024-10-17 10:19:24 -07:00
epenet
420070a1ee
Use reauth helpers in google_assistant_sdk (#128582) 2024-10-17 10:18:18 -07:00
mvn23
cd4a13ca55
Bump pyotgw to 2.2.2 (#128594) 2024-10-17 18:57:22 +02:00
Erik Montnemery
9d0701a62b
Improve camera tests (#128545) 2024-10-17 16:36:42 +02:00
puddly
7c9a198c6d
Use the same ZHA database path during startup and when loading device triggers (#128130)
Use the same zigpy database path source as in the radio manager
2024-10-17 07:17:20 -04:00
David F. Mulcahey
065577c9ca
Keep ZHA entity enabled setting in sync with lib (#125472)
* Add ability to enable / disable entities in the ZHA lib

* disable entities at startup that are not enabled in HA

* fix IEEE lookup

* wrap in async_on_unload

* add test and correct lookup
2024-10-17 07:16:48 -04:00
Petar Petrov
8533f853c8
Increase Z-Wave fallback thermostat range to 0-50 C (#128543)
* Z-Wave JS: Increase fallback thermostat range to 0-50 C

* update test
2024-10-17 12:41:23 +02:00
Sid
2f60395ba9
Fix schema violations in manifest.json files (#128561) 2024-10-17 12:29:16 +02:00
epenet
906cecf087
Cleanup unused snapshots (#128549)
* Cleanup unused snapshots

* Cleanup a few more

* Cleanup systemmonitor

* Cleanup voip
2024-10-17 10:41:57 +02:00
Marc Mueller
cb1b917aa6
Update mypy-dev to 1.13.0a1 (#128548) 2024-10-17 10:30:42 +02:00
J. Nick Koston
006d511d47
Bump yarl to 1.15.4 (#128536)
changelog: https://github.com/aio-libs/yarl/compare/v1.15.3...v1.15.4
2024-10-16 22:15:16 -04:00
puddly
f6270d9cfc
Bump ZHA dependencies (#128539)
* Bump ZHA dependencies

* Remove unused ZHA color modes

* Rename `cluster` to `ota_cluster` in update tests to unshadow `cluster` in `endpoint_reply`

---------

Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>
2024-10-16 22:15:00 -04:00
Julian
72f1c358d9
Fix translation string in guardian (#128535) 2024-10-16 22:09:15 +02:00
karwosts
3cbadb1bd2
Add a missing translation for energy error (#128413)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-16 22:04:59 +02:00
Brett Adams
5d058c29a2
Add missing description placeholder in Tessie (#128481) 2024-10-16 21:56:51 +02:00
Jan-Philipp Benecke
4964470e9c
Remove deprecated panel_iframe integration (#128532) 2024-10-16 21:34:43 +02:00
Julian
f4dfe7868b
Fix translation string in hyperion (#128384) 2024-10-16 21:28:17 +02:00
Jan-Philipp Benecke
82e9792b4d
Remove deprecated map integration (#128529) 2024-10-16 20:46:00 +02:00
Noah Husby
af41a41046
Add select entity to Cambridge Audio (#128527)
* Add select entity to Cambridge Audio

* Add select entity to Cambridge Audio

* Update test name
2024-10-16 19:57:10 +02:00
Steven B.
59e5eb9a1c
Always use uv from virtual environment at runtime (#128371) 2024-10-16 19:42:25 +02:00
Klaas Schoute
a0637a6ff8
Add port to config flow of P1 Monitor integration (#128324) 2024-10-16 19:40:20 +02:00
Joost Lekkerkerker
5497697cf2
Add diagnostics to Spotify (#128521) 2024-10-16 19:33:28 +02:00
Olaf van Zandwijk
b07682e43c Update terminology for built-in blueprints (#128383) 2024-10-16 19:14:09 +02:00
epenet
0bc572787a
Add check for valid error code in translation checks in flows (#128445) 2024-10-16 19:03:24 +02:00
Noah Husby
15fc4a8ae4
Bump aiostreammagic to 2.7.0 (#128525) 2024-10-16 19:00:19 +02:00
Louis Christ
8bf7243549
Bump pyblu to 1.0.4 (#128482) 2024-10-16 18:59:03 +02:00
epenet
66395d5fe5
Use runtime_data in rainforest_raven (#128517) 2024-10-16 18:24:35 +02:00
Robert Resch
f9509d2b38
Bump uv to 0.4.22 (#128518) 2024-10-16 18:23:24 +02:00
Álvaro Fernández Rojas
7c50b8185d
Update aioairzone-cloud to v0.6.7 (#128231) 2024-10-16 18:11:02 +02:00
epenet
350a27575f
Prevent leak of current_entry context variable (#128145) 2024-10-16 18:02:37 +02:00
Joost Lekkerkerker
494511e099
Migrate spotify to aiospotify (#127728) 2024-10-16 17:04:05 +02:00
Michael Hansen
11ac8f8006
Add conversation agent to Wyoming (#124373)
* Add conversation agent to Wyoming

* Remove error

* Remove conversation platform from satellite list

* Clean up

* Update homeassistant/components/wyoming/conversation.py

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

* Remove unnecessary attribute

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-10-16 09:07:56 -05:00
Michael Hansen
bcac851677
Migrate Wyoming satellite to Assist satellite entity (#128488)
* Migrate Wyoming satellite to Assist satellite entity

* Fix tests

* Update homeassistant/components/wyoming/assist_satellite.py

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

* Update homeassistant/components/wyoming/assist_satellite.py

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

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-10-16 08:59:44 -05:00
Noah Husby
c294130080
Bump aiostreammagic to 2.6.0 (#128498) 2024-10-16 15:08:40 +02:00
Joost Lekkerkerker
c0f19dd963
Reorder Google Assistant Traits (#127646) 2024-10-16 15:04:46 +02:00
epenet
e5a07da0c9
Add checks for config entry state in async_config_entry_first_refresh (#128148) 2024-10-16 14:06:25 +02:00
Marc Mueller
1ad3a96643
Update build-system (#128256) 2024-10-16 14:05:18 +02:00
Jan Bouwhuis
ac6d893758
Correct type hints on MQTT tests (#128299) 2024-10-16 13:49:18 +02:00
epenet
9f2bdca9ad
Use unique_id_mismatch in aseko_pool_live reauth (#128339) 2024-10-16 13:47:33 +02:00
epenet
c5046f7809
Add check for valid abort reason translation in option flows (#128444) 2024-10-16 13:41:15 +02:00
epenet
f7897bbd64
Fix incorrect error strings in weatherflow (#128447) 2024-10-16 13:40:31 +02:00
epenet
6442625a9d
Fix incorrect error strings in webmin (#128448) 2024-10-16 13:39:46 +02:00
epenet
5d079aacd6
Fix incorrect error strings in triggercmd (#128450) 2024-10-16 13:38:15 +02:00
epenet
0e7297873c
Add SOURCE_HASSIO to DISCOVERY_SOURCES (#128454) 2024-10-16 13:34:28 +02:00
Robert Resch
dfb94d8917
Rename host to url in go2rtc config flow (#128508) 2024-10-16 13:33:47 +02:00
Joost Lekkerkerker
ed445d0ab8
Add even more tests to Spotify (#128298) 2024-10-16 13:20:57 +02:00
Barry vd. Heuvel
dddc1906c2
Add missing Weheat temperature sensors (#128452)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-16 11:53:39 +02:00
Christopher Fenner
144454b8c3
Remove duplicate oauth2 token validity check (#128419)
* remove duplicate validity check

* Apply suggestions from code review

* add leftover

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-16 11:42:44 +02:00
epenet
8ae8fa7ec9
Add SOURCE_SYSTEM to DISCOVERY_SOURCES (#128457) 2024-10-16 11:27:48 +02:00
Petar Petrov
1ff1b82fc7
Mark custom components that overwrite core (#127937) 2024-10-16 09:28:19 +02:00
J. Nick Koston
5d590bc2cf
Bump yarl to 1.15.3 (#128499)
changelog: https://github.com/aio-libs/yarl/compare/v1.15.2...v1.15.3
2024-10-16 08:46:19 +02:00
Artur Pragacz
866f1e70a4
Fix default conversation agent tests (#128490) 2024-10-15 22:21:18 -05:00
Julian
e273148a89
Fix translation string in lyric (#128386)
* Fix translation string in lyric

* Remove ignore_translations from lyric config_flow test
2024-10-15 22:10:56 +02:00
Michael Schäfer
c5f8d823ce
Add missing translation string in unifi (#128062)
Add missing translation string in unigi
2024-10-15 20:23:26 +02:00
Joakim Sørensen
25e887b457
Move backup plaform loading to the base class (#128449) 2024-10-15 12:44:13 -04:00
DJ
aac5ac6057
Replace webexteamssdk with webexpythonsdk (#127928) 2024-10-15 17:54:59 +02:00
Michael Hansen
36a1eaedcf
Trim the text of todo and shopping list items in intents (#128456) 2024-10-15 11:44:32 -04:00
Artur Pragacz
bb9f534259
Improve intent recognition in default conversation agent (#124282)
Use the same logic for custom sentences.
Prefer higher quality (longer) names.
2024-10-15 09:14:31 -05:00
hahn-th
cf9e5ae5a0
Add support HmIP-BSL after firmware update to 2.0 to homematicip_cloud (#117657)
* Rebase

* Fix number of loaded entities

* Reduce redundant code

* Remove unneccessary import in test_light
2024-10-15 15:26:33 +02:00
Jordan Zucker
d2db25c7dd
Refactor prometheus integration tests (#113849)
* Starting with a simple change

* And trying again but actually adding the new area to this

* And that's getting interesting

* Wanted to add some small things to gitignore too

* More metrics clean up

* The linter is harsh

* Need to adjust a ton of tests

* I was finally able to commit

* Trying to abstract metrics into a helper class

* Fixed some tests at least

* Making progress on tests

* Getting really close now

* Only 1 or 2 tests left to fix

* Only 1.5 tests left

* That's more than enough for tonight

* Got all the tests passing!

* Another pass at test clean up

* Fixed up all the tests, again

* More clean up needed

* Got device_class working just need to fix one test I broke

* Got all the existing tests working!

* Refactored helpers into a separate file

* I added some new tests! For the helpers, ironically

* Don't touch those files

* Don't include that either

* Added my first real test

* Rolling back some logic changes to focus solely on tests

* Curious what happens when I run the tests now

* Getting closer to making things pass

* Getting closer to a working pr now

* Keeping up with test fixes

* Getting much closer to something useful

* Saving piecemeal

* Getting closer to a final working version

* Now that's an improvement

* And moving a little forward

* And now I'm really inching closer

* Saving more complex test case fix

* And now only 3 tests left

* Getting close and only a few tests left

* I think I'm close with only 1 test left

* Does this mean the tests actually work now

* Was not using the helper classes anymore

* Now I'm really curious

* Need to rename the recently renamed class

* Was it really that easy? (No, it wasn't)

* Is this finally enough

* Also added another full percentage point of tests

* Trying to clean things up a bit more

* Now how does this look?

* Just a little more clean up

* Added a few more tests for the new helper functions

* Last pass on much better tests for this

* Oops, forgot to remove redundant tests

* Fix the fixtures

* Getting closer to something decent, I hope

* Another pass on the formatting of the number 1

* And yet another pass on these tests

* Tests cleaned up a bit more

* Minor updates as suggested

* Another pass on assert with metrics helper

* Now this is fully tested
2024-10-15 14:22:36 +02:00
epenet
2542ddd30a
Improve check for user-visible flows when checking translations in tests (#128434)
* Improve check for user-visible flows when checking translations in tests

* Fix nest (from DHCP)

* Ignore homeassistant_hardware

* Improve logic
2024-10-15 14:09:53 +02:00
Julian
260d919f80
Fix translation string in spotify (#128440)
* Fix translation string in spotify

* Remove ignore_translations from spotify config_flow test

* Fix formatting in config flow test for spotify
2024-10-15 14:00:34 +02:00
dependabot[bot]
fa8284d360
Bump github/codeql-action from 3.26.12 to 3.26.13 (#128420)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-15 13:52:46 +02:00
Joakim Sørensen
fb7bed2ea0
Add WS endpoint to fetch the details of a backup (#128430)
* Add WS endpoint to fetch the details of a backup

* Shorten

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Adjust

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-10-15 13:00:34 +02:00
epenet
84b2c74057
Fail on unused ignore_translations fixture (#128422)
* Fail on unused ignore_translations fixture

* Cleanup melcloud

* Use pytest.fail

* Cleanup tplink

* Cleanup matter
2024-10-15 12:40:47 +02:00
Joakim Sørensen
a14cb13194
Add BaseBackupManager as a common interface for backup managers (#126611)
* Add BaseBackupManager as a common interface for backup managers

* Document the key

* Update homeassistant/components/backup/manager.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-15 12:31:12 +02:00
Marc Mueller
78fce90178
Fix pytest workflow for testing multiple Python versions [ci] (#128412) 2024-10-15 12:28:52 +02:00
Julian
a158e893e0
Fix translation string in matter (#128364)
* Fix translation string in matter

* Reorder strings.json for matter component
2024-10-15 11:56:56 +02:00
epenet
117bc67a4c
Adjust homewizard translation strings (#128423)
* Add missing translation for homewizard

* Adjust
2024-10-15 11:34:20 +02:00
epenet
9930473390
Add missing translation for youtube (#128431) 2024-10-15 11:29:17 +02:00
Julian
b41ef73ecb
Fix translation string in iotty (#128385) 2024-10-15 10:59:25 +02:00
Julian
52b6574240
Fix translation string in rova (#128402) 2024-10-15 10:53:58 +02:00
Brett Adams
0d857d3e6a
Fix reauth strings in Teslemetry (#128426)
* config strings

* remove entry_data
2024-10-15 10:47:26 +02:00
epenet
3ba3fbf4a5
Add tests/components/conftest.py to core files (#128425) 2024-10-15 10:34:54 +02:00
Cyrill Raccaud
c3e7fcc153
Response type should not contain datetime for Swiss Public Transport (#128391)
* response type should not contain datetime

* use isoformat
2024-10-15 07:35:05 +02:00
Marc Mueller
2c00cd489e
Fix go2rtc test RuntimeWarnings (#128411) 2024-10-15 01:11:01 +02:00
Oliver
df52f3f0e1
Fix initialization of some denonavr receivers when telnet API is enabled (#127882)
Suppress `denonavr.exceptions.AvrProcessingError` when connecting to telnet API
2024-10-14 23:23:44 +02:00
Thomas55555
11e8e56e05
Improve internal naming (#128390)
* Improve internal naming

* revert select
2024-10-14 23:15:02 +02:00
Julian
a5ecbd547c
Fix translation string in gardena_bluetooth (#128387) 2024-10-14 21:53:36 +02:00
Simon Lamon
866912d3f7
Keep the provided name when creating a tag (#128240)
* Keep the name

* Add patch

* Update homeassistant/components/tag/__init__.py

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

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2024-10-14 21:22:12 +02:00
Julian
56e550f136
Fix translation string in eq3btsmart (#128319) 2024-10-14 18:46:38 +02:00
Julian
1e179adcf2
Fix translation string in lifx (#128362) 2024-10-14 18:45:42 +02:00
Julian
c5fe7ea0ea
Fix translation string in weatherflow (#128321) 2024-10-14 18:15:40 +02:00
epenet
fdda0cc9cc
Use reauth/reconfigure helpers in tedee config flow (#128025)
* Use reauth/reconfigure helpers in tedee config flow

* Also cleanup unnecessary reconfigure_confirm
2024-10-14 18:01:47 +02:00
epenet
f9dfc64c6f
Use long option for pytest numprocesses (#128354) 2024-10-14 17:20:58 +02:00
epenet
f41494b7cc
Ensure config_flow abort reasons have translations (#128140)
* Ensure config_flow abort reasons have translations

* Ignore fake_integration in application_credentials

* Mark gardena_bluetooth as needs fixing

* Mark google as needs fixing

* Mark google_assistant_sdk as needs fixing

* Mark homewizard as needs fixing

* Mark homeworks as needs fixing

* Mark honeywell as needs fixing

* Mark jewish_calendar as needs fixing

* Mark lg_netcast as needs fixing

* Mark lifx as needs fixing

* Mark lyric as needs fixing

* Mark madvr as needs fixing

* Mark matter as needs fixing

* Mark melcloud as needs fixing

* Mark motioneye as needs fixing

* Mark ollama as needs fixing

* Mark philips_js as needs fixing

* Mark spotify as needs fixing

* Mark srp_energy as needs fixing

* Mark subaru as needs fixing

* Mark tplink as needs fixing

* Mark yolink as needs fixing

* Mark youtube as needs fixing

* Fix incorrect comment
2024-10-14 16:39:10 +02:00
Julian
821d9abc56
Fix translation string in melcloud (#128363)
* Fix translation strings in melcloud

* Fix wrong key reference for "invalid_auth"
2024-10-14 16:03:53 +02:00
Robert Resch
f5b55d5eb3
Rewrite go2rtc binary handling to be async (#128078) 2024-10-14 15:32:00 +02:00
Josef Zweck
cdb1b1df15
Add model_id to tedee (#128356) 2024-10-14 14:56:27 +02:00
Julian
8e6b41e637
Fix translation string in yolink (#128353) 2024-10-14 14:45:14 +02:00
Julian
1f7cc5f5ec
Fix translation string in tplink (#128352) 2024-10-14 14:01:27 +02:00
epenet
1a0c3a49b9
Use async_update_reload_and_abort in awair (#128345) 2024-10-14 13:27:04 +02:00
epenet
c4e2e9c4f0
Use reauth_confirm in azure_devops (#128349) 2024-10-14 13:24:08 +02:00
Andrew Jackson
7df973648c
Strip path from Mastodon base url (#127994) 2024-10-14 13:20:25 +02:00
epenet
25aea140be
Cleanup unnecessary reconfigure_confirm from config flows (#128086) 2024-10-14 12:57:15 +02:00
Julian
8d2cf0cf38
Fix translation string in tankerkoenig (#128320) 2024-10-14 12:33:13 +02:00
epenet
d2bbfe1282
Refactor abode config flow tests (#128334)
* Refactor abode config flow tests

* Cleanup
2024-10-14 12:13:47 +02:00
epenet
6d72391ee1
Use reauth helpers in airvisual (#128335)
* Use reauth helpers in airvisual

* Cleanup unused code in tests
2024-10-14 11:46:14 +02:00
tronikos
a53e02b51b
Bump opower to 0.8.4 (#128338) 2024-10-14 11:45:38 +02:00
epenet
401e334c28
Remove single-use variable in aussie-broadband (#128340) 2024-10-14 11:45:12 +02:00
Josef Zweck
4c10ce6f40
Add model_id to lamarzocco (#128344) 2024-10-14 11:45:02 +02:00
J. Nick Koston
fed6a4689f
Bump yarl to 1.15.2 (#128309)
changelog: https://github.com/aio-libs/yarl/compare/v1.15.1...v1.15.2
2024-10-14 08:14:38 +02:00
Julian
6dc5a9efde
Fix translation string in knocki (#128318)
* Fix translation string in knocki

* Update homeassistant/components/knocki/strings.json

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-13 22:18:08 +02:00
Chris Talkington
cb1e5a2412
Fix playing media via roku (#128133)
* re-support playing media via roku

* fixes

* test fixes

* Update test_media_player.py

* always send media type

* add description to options flow
2024-10-13 12:41:51 -05:00
Hans Kröner
f47a012c62
Bump pydeconz to v118 (#128289) 2024-10-13 19:37:02 +02:00
Elias Wernicke
e6e22dc0bf
Refactor todo tests (#128251)
refactor todo tests
2024-10-13 08:17:15 -07:00
G Johansson
d8589113c3
Fix state for litterrobot (#128297) 2024-10-13 16:31:53 +02:00
dontinelli
188e503070
Bump solarlog_cli to 0.3.2 (#128293) 2024-10-13 16:04:58 +02:00
Simone Chemelli
e4f7ac6236
Add switch entity for Shelly scripts (#108171)
* introduce script switch only

* chore: add script switch test

* chore: apply review comments

* chore: fix tests

* chore: apply review comments
2024-10-13 15:11:40 +02:00
G Johansson
7178943223
Add translatable title to statistics (#128286) 2024-10-13 14:37:57 +02:00
G Johansson
27c76e746a
Add translatable title to history_stats (#128287) 2024-10-13 14:33:12 +02:00
epenet
de47776ea5
Do not use async_config_entry_first_refresh in fastdotcom (#128152)
Do not use async_config_entry_first_refresh in fastdocom
2024-10-13 14:17:11 +02:00
epenet
7e56b595a0
Do not link nextbus coordinator to config entry (#128151)
* Do not link nextbus coordinator to config entry

* Refactor tests and add specific failure test

* Use ConfigEntryNotReady

* Cleanup coordinator
2024-10-13 14:13:37 +02:00
Adam Petrovic
d15a9a4359
Fix daikin entities not refreshing quickly (#128230)
* Fix daikin entities not refreshing quickly

* Update homeassistant/components/daikin/switch.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-13 13:20:16 +02:00
Sid
c4ff3f731b
Use entry.runtime_data for caldav (#128278) 2024-10-13 13:09:20 +02:00
Allen Porter
886399284b
Bump gcal_sync to 6.1.6 (#128270) 2024-10-13 12:47:27 +02:00
J. Nick Koston
bf73e09918
Bump yarl to 1.15.1 (#128268)
changelog: https://github.com/aio-libs/yarl/compare/v1.15.0...v1.15.1
2024-10-13 12:47:00 +02:00
Álvaro Fernández Rojas
fef36e677d
Update aioairzone to v0.9.5 (#128265)
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-10-13 12:45:53 +02:00
Julian
441fdc35b2
Fix translation string in google (#128237) 2024-10-12 18:40:35 -07:00
Maciej Bieniek
801c73ef94
Bump gios to version 5.0.0 (#128257) 2024-10-13 01:01:58 +03:00
epenet
3e56185a39
Use reconfigure helpers in axis config flow (#127976)
* Use reconfigure helpers in axis config flow

* Add string

* Update strings.json
2024-10-12 23:31:12 +02:00
Michael
caf85fe61d
Fix printer uptime fluctuations in IPP (#127725)
* decrease uptime accuracy from seconds to minutes

* adjust tests

* calc uptime timestamp in coordinator

* bump pyipp to 0.17.0

* revert changes, just use the new printer.booted_at property

---------

Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2024-10-12 13:22:03 -05:00
Jan Bouwhuis
3112682923
Mark mqtt as integration with single config entry (#128202) 2024-10-12 19:55:39 +02:00
Jan Bouwhuis
edb30af441
Fix hassio data fetching over list[Repository] (#128206)
* Fix hassio data fetching over list[Repository]

* Parameterize store mock and add store data to sensor tests
2024-10-12 14:44:26 +02:00
J. Diego Rodríguez Royo
b5a6bb74ce
Fix binary sensor at Home Connect (#128234) 2024-10-12 11:30:38 +02:00
Michael
8236a9529f
Mark integrations as single_config_entry in manifest [k-r] (#128191)
* mark integrations as single_config_entry in manifest

* fix owntracks test
2024-10-12 09:03:17 +02:00
Michael
c50d0646ab
Mark integrations as single_config_entry in manifest [a-i] (#128189)
* mark integrations as single_config_entry in manifest

* fix ecobee tests

* fix iaqualink test
2024-10-12 08:59:57 +02:00
J. Nick Koston
1484a9c0ee
Bump yarl to 1.15.0 (#128215)
changelog: https://github.com/aio-libs/yarl/compare/v1.14.0...v1.15.0
2024-10-12 08:52:12 +02:00
epenet
abe02c3843
Cleanup unnecessary reconfigure_confirm in fritzbox config flow (#128087) 2024-10-12 08:42:59 +02:00
Michael
8e9e738bb8
Fix ci (dhcp tests) (#128207)
remove unused import
2024-10-12 02:20:54 +02:00
__JosephAbbey
bd97a0dfe3
Add to-do list response target for ListAddItemIntent (#121970)
* Add todo list response target for ListAddItemIntent

* Delete .vscode/settings.json

* Fix imports

* Add test

* Formatting

* Fix test

---------

Co-authored-by: Tom Harris <tomharris@harrisnj.net>
Co-authored-by: Michael Hansen <mike@rhasspy.org>
2024-10-11 17:23:20 -05:00
Michael
9a59cba7f3
Mark integrations as single_config_entry in manifest [system integrations] (#128201)
mark integrations as single_config_entry in manifest
2024-10-11 23:50:44 +02:00
Michael
07021dbd65
Use single_instance_allowed in hassio (#128060)
* use single_instance_allowed

* mark hassio as `single_config_entry`
2024-10-11 23:37:14 +02:00
Michael Hansen
8ee8421af7
Use device area/floor in HassGetState intent (#128197)
Use preferred area/floor in HassGetState intent
2024-10-11 16:08:43 -05:00
G Johansson
f983446355
Remove not used issue strings in tessie (#128178) 2024-10-11 22:12:23 +02:00
Marc Hörsken
6650d32055
Improve discovery of WMS WebControl pro by updating IP address (#128007) 2024-10-11 20:40:03 +02:00
Jan-Philipp Benecke
0badff98c6
Remove deprecated yaml support from lg_netcast (#128114) 2024-10-11 20:36:37 +02:00
Jan-Philipp Benecke
1630bf5de7
Remove legacy notify service from ecobee (#128115) 2024-10-11 20:26:13 +02:00
G Johansson
2b2820018c
Remove legacy knx notify service (#128185) 2024-10-11 20:19:15 +02:00
Manu
8540343d7f
Add tests for Habitica integration (#126445)
* Add tests for sensor platform

* Add tests for switch platform

* Add tests for button platform

* Add tests for todo platform

* Add tests for todo platform

* Load json data fixtures

* Update snapshot

* Add fixtures

* test move todo

* parametrize todo tests, test drop notification

* test todo exceptions

* some minor improvements

* test setup retry

* Test update failed

* Test coordinator rate limit

* Test date utils

* Reduce scope of PR

* remove unused assert_mock_called_with  function

* update snapshot

* Update tests/components/habitica/test_init.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-11 20:03:23 +02:00
Joost Lekkerkerker
e52b347b18
Bump yt-dlp to 2024.10.07 (#128182) 2024-10-11 19:54:10 +02:00
Michael Hansen
67e0ccf677
Use exposed error messages in Assist (#127503)
* Use exposed error messages

* Report expose errors

* Remove comment

* Relative import

* Rework expose check logic

* Delay creation of all names list, and skip config/hidden entities

* Clean up commented code and type issue

* Fix test

* Move assistant check
2024-10-11 13:06:03 -04:00
Mike Degatano
ba6bcf86ca
Bump aiohasupervisor to 0.2.0b0 (#128173) 2024-10-11 19:03:32 +02:00
Franck Nijhof
6952d2420f
2024.10.2 (#128176) 2024-10-11 18:25:02 +02:00
G Johansson
a85d7af9e7
Remove deprecated notify service in ecobee (#128177) 2024-10-11 18:21:28 +02:00
G Johansson
39e63aee0c
Remove config entry import from lg_netcast (#128179) 2024-10-11 18:20:50 +02:00
Franck Nijhof
9176994947
Bump version to 2024.10.2 2024-10-11 17:54:37 +02:00
Thomas55555
d389b55f40
Fix model in Husqvarna Automower (#128168) 2024-10-11 17:54:24 +02:00
Christopher Fenner
0ccff9fc54
Fix preset handling issue in ViCare (#128167)
* add test case

* fix test case

* fix issue

* change order
2024-10-11 17:54:21 +02:00
tronikos
a8836ca7b6
Remove some redundant code in Opower's coordinator from the fix in #128141 (#128150) 2024-10-11 17:54:17 +02:00
tronikos
f5d04a970f
Bump opower to 0.8.3 (#128144) 2024-10-11 17:54:14 +02:00
tronikos
7aec98dafd
Fix regression in Opower that was introduced in 2024.10.0 (#128141)
* Avoid KeyError when statistics have gaps

* fix break

* Remove unnecessary check
2024-10-11 17:54:10 +02:00
Marc Mueller
773564d4f5
Fix license script for ftfy (#128138) 2024-10-11 17:54:04 +02:00
Thomas55555
3e2edc1a2d
Bump aioautomower to 2024.10.0 (#128137)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2024-10-11 17:53:59 +02:00
J. Diego Rodríguez Royo
6a12a24d73
Migrate device models to entity descriptions and add localization & icons at Home Connect (#127870)
* Delete device models and use entity descriptions

* Home Connect localization & icons

* Update homeassistant/components/home_connect/strings.json

* Update homeassistant/components/home_connect/icons.json

* Fix tests

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-11 17:52:06 +02:00
Bram Kragten
9cfc9b9baf
Update frontend to 20241002.3 (#128106) 2024-10-11 17:52:03 +02:00
Marc Jay
1739647768
Fix grammar in Template Helper creation dialog (#128174) 2024-10-11 17:51:47 +02:00
David Knowles
92b67ead83
Increase Hydrawise polling interval to 60 seconds (#128090) 2024-10-11 17:50:35 +02:00
Steven B
ee9525cc00
Fix ring realtime events (#128083) 2024-10-11 17:49:38 +02:00
kingy444
571bfaf5d7
Fix casing on Powerview Gen3 zeroconf discovery (#128076) 2024-10-11 17:37:31 +02:00
Matthias Alphart
a3475607b2
Update xknxproject to 3.8.1 (#128057) 2024-10-11 17:37:28 +02:00
Michael
f0a653d010
Add missing translation string for re-auth flows (#128055) 2024-10-11 17:37:23 +02:00
Steven B.
eecdf66013
Fix missing reauth name translation placeholder in ring integration (#128048) 2024-10-11 17:37:19 +02:00
dontinelli
f99db05a4a
Add missing translation string in solarlog (#128015) 2024-10-11 17:37:16 +02:00
Teemu R.
635731421f
Increase tplink climate precision (#127996) 2024-10-11 17:37:13 +02:00
Maikel Punie
44743df7d6
Bump pyduotecno to 2024.10.0 (#127979) 2024-10-11 17:37:09 +02:00
epenet
33617694cc
Fix firmware version parsing in venstar (#127974) 2024-10-11 17:37:06 +02:00
Raman Gupta
ed445d20b9
Fix zwave_js config validation for values (#127972) 2024-10-11 17:37:02 +02:00
Lenn
66c2fe091b
Bump motionblindsble to 0.1.2 (#127954) 2024-10-11 17:36:59 +02:00
Antoine Reversat
8c80f47a35
Fix europe authentication in Fujitsu FGLair (#127947) 2024-10-11 17:36:53 +02:00
Marc Hörsken
e37025c1c7
Update pywmspro to 0.2.1 to fix handling of unknown products (#127942) 2024-10-11 17:36:50 +02:00
Marc Hörsken
0aabde081b
Fix discovery of WMS WebControl pro by using IP address (#127939) 2024-10-11 17:36:46 +02:00
Steven B.
a1c9d53474
Bump python-kasa to 0.7.5 (#127934) 2024-10-11 17:36:43 +02:00
Maciej Bieniek
094996ad0c
Bump imgw_pib library to version 1.0.6 (#127925)
Bump `imgw_pib`
2024-10-11 17:36:40 +02:00
Manu
ce359a7689
Add support of due date calculation for grey dailies in Habitica integration (#127923)
Fix grey dailies due date calculation
2024-10-11 17:36:36 +02:00
epenet
ee599160b3
Add missing translation string in yamaha_musiccast (#127912) 2024-10-11 17:36:32 +02:00
epenet
dd076f7a13
Add missing translation string in otbr (#127909) 2024-10-11 17:36:29 +02:00
dcmeglio
3021d38b6f
Bump pyeconet to 0.1.23 (#127896) 2024-10-11 17:36:25 +02:00
G Johansson
bfcabeaf26
Bump holidays library to 0.58 (#127876) 2024-10-11 17:36:22 +02:00
G Johansson
c31e0336dc
Don't error with missing information in systemmonitor diagnostics (#127868) 2024-10-11 17:36:14 +02:00
G Johansson
a1e42cac7a
Fix merge_response template not mutate original object (#127865)
* Fix merge_response template not mutate original object

* Add comment
2024-10-11 17:36:11 +02:00
Michael
14a3e5b771
Add missing translation string in AVM Fritz!Smarthome (#127864) 2024-10-11 17:36:07 +02:00
azerty9971
5901c543da
Fix wrong DPTypes returned by Tuya's cloud (#127860)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-10-11 17:36:04 +02:00
Jon Seager
456b80e6ae
Bump pytouchlinesl to 0.1.8 (#127859) 2024-10-11 17:36:00 +02:00
dontinelli
e5644ae011
Reverse unintended change of unique_id for solarlog (#127845) 2024-10-11 17:35:57 +02:00
epenet
41c794c733
Add missing and fix incorrect translation string in duotecno (#127834) 2024-10-11 17:35:53 +02:00
epenet
a481448d46
Fix incorrect translation string in bryant_evolution (#127830) 2024-10-11 17:35:49 +02:00
epenet
2bd7ce618a
Add missing translation string in blebox (#127827) 2024-10-11 17:35:45 +02:00
Erik Montnemery
da1ac4f1e9
Correct cleanup of sensor statistics repairs (#127826) 2024-10-11 17:35:42 +02:00
epenet
f0cb638106
Fix incorrect translation string in azure event hub (#127820) 2024-10-11 17:35:38 +02:00
epenet
dad2396d01
Add missing and fix incorrect translation string in aurora (#127818) 2024-10-11 17:35:34 +02:00
epenet
91e4d8b663
Fix incorrect translation string in analytics_insights (#127815) 2024-10-11 17:35:31 +02:00
epenet
e35496133e
Add missing and fix incorrect translation string in alarmdecoder (#127814) 2024-10-11 17:35:28 +02:00
epenet
3be808ae1e
Fix incorrect string in amberlectric (#127807) 2024-10-11 17:35:23 +02:00
TimL
c5772916a1
Bump pysmlight to v0.1.3 (#127804)
Bump pysmlight v0.1.3

Co-authored-by: Tim Lunn <tim@feathertop.org>
2024-10-11 17:35:18 +02:00
Álvaro Fernández Rojas
8cd63b80b1
Update aioairzone-cloud to v0.6.6 (#127789) 2024-10-11 17:35:14 +02:00
Johan Gustafsson
c087654386
Fix aurora alert sensor always Off (#127780) 2024-10-11 17:35:11 +02:00
Erik Montnemery
60b9e65c78
Bump pychromecast to 14.0.3 (#127778) 2024-10-11 17:35:08 +02:00
J. Nick Koston
79b304a5d2
Bump DoorBirdPy to 3.0.4 (#127760)
changelog: https://gitlab.com/klikini/doorbirdpy/-/compare/3.0.3...eea287316c6fd84b63cc67fd743cc1128ea14568?from_project_id=7409088&straight=false

fixes #126598
2024-10-11 17:35:00 +02:00
Franck Nijhof
bb9fd126e5
Update DoorBirdPy to 3.0.3 (#126949) 2024-10-11 17:34:40 +02:00
dontinelli
bff2d5c26c
Bump solarlog_cli to 0.3.1 (#127753) 2024-10-11 17:31:18 +02:00
Ricardo Marques
46d9ac8380
Fix custom account config flow setup (#127750) 2024-10-11 17:31:15 +02:00
Simon Lamon
5da3ca4bb1
Bump python-linkplay to 0.0.15 (#127748) 2024-10-11 17:31:12 +02:00
Johan Gustafsson
2c99fdc092
Fix Aurora integration casts longitude and latitude to integer (#127740)
Fix Aurora integration casts longitude and latitude to integer (#100817)
2024-10-11 17:31:07 +02:00
Raj Laud
31a075fb13
Remove stale references in squeezebox services.yaml (#127739) 2024-10-11 17:31:04 +02:00
René Klomp
1d132d7a1e
Migrate SMA unique id to str (#127732) 2024-10-11 17:31:01 +02:00
Michael
3b6f88cfa7
Increase connection timeout in CalDAV (#127727) 2024-10-11 17:30:57 +02:00
Joost Lekkerkerker
b927763d8d
Add translation string for Withings wrong account (#127719) 2024-10-11 17:30:54 +02:00
Joost Lekkerkerker
d00e1cb6a5
Bump airgradient to 0.9.1 (#127718) 2024-10-11 17:30:50 +02:00
Joost Lekkerkerker
adf7474edb
Bump NYT Games to 0.4.3 (#127717) 2024-10-11 17:30:46 +02:00
Joost Lekkerkerker
041d663cb8
Fix Withings log message (#127716) 2024-10-11 17:30:42 +02:00
Joost Lekkerkerker
37f611a8d3
Fix typo in HDMI CEC (#127714) 2024-10-11 17:30:39 +02:00
David Knowles
be99329efa
Fix problems with automatic management of Schlage locks (#127689)
Use the correct identifiers for existing lock devices
2024-10-11 17:30:35 +02:00
Marc Mueller
327cb70bb8
Revert "Fix enum lookup (#125220)" (#127680)
This reverts commit 1bc63a61be.
2024-10-11 17:30:32 +02:00
dontinelli
be2b5a4c3a
Bump fyta_cli to 0.6.7 (#127650) 2024-10-11 17:30:29 +02:00
Richard Cox
d1eda9dd73
Update Radarr config flow to standardize ports (#127620) 2024-10-11 17:30:25 +02:00
Brett Adams
b902cb5a13
Fix wake up in Tesla Fleet (#127615) 2024-10-11 17:30:21 +02:00
tronikos
1184ee4a59
Bump opower to 0.8.2 (#127598)
* Bump opower to 0.8.1 to fix enmax

* Update manifest.json

* Update requirements_all.txt

* Update requirements_test_all.txt
2024-10-11 17:30:18 +02:00
Noah Husby
2cf898afcc
Bump aiostreammagic to 2.5.0 (#127595) 2024-10-11 17:30:13 +02:00
Manu
38fc0bd889
Add x-client headers to Habitica API calls (#127952)
Add x-client headers
2024-10-11 17:28:22 +02:00
Louis Christ
df53e19eda
Bump pyblu to 1.0.3 (#127571) 2024-10-11 17:28:18 +02:00
Brett Adams
7f79b26341
Fix Island status in Teslemetry (#127504) 2024-10-11 17:28:13 +02:00
epenet
63391717e7
Replace ValueError with deprecation in data update coordinator (#128082)
* Replace ValueError with deprecation in data update coordinator

* Rephrase
2024-10-11 17:24:47 +02:00
Steven B.
554629f37a
Fix ring realtime events (#128083) 2024-10-11 17:17:32 +02:00
Christopher Fenner
791c3cd955
Fix preset handling issue in ViCare (#128167)
* add test case

* fix test case

* fix issue

* change order
2024-10-11 17:15:16 +02:00
Thomas55555
6e53c93271
Fix model in Husqvarna Automower (#128168) 2024-10-11 17:05:13 +02:00
epenet
7097315079
Cleanup unnecessary reconfigure_confirm in fritz config flow (#128089) 2024-10-11 15:54:28 +02:00
Joost Lekkerkerker
d50758197e
Add test for Spotify select source (#128160) 2024-10-11 14:33:34 +02:00
Erik Montnemery
9ff35d5a5a
Minor improvement of entity platform tests (#128158)
* Minor improvement of entity platform tests

* Fix snapshot
2024-10-11 14:14:29 +02:00
Joost Lekkerkerker
00f7bdbfaa
Add more Spotify tests for the media player (#127999)
* Add more Spotify tests for the media player

* Fix comments

* Rename test
2024-10-11 14:06:52 +02:00
Erik Montnemery
e682d3461f
Remove parameter add_config_entry from DeviceRegistry.async_update_device (#128139) 2024-10-11 14:01:14 +02:00
Joost Lekkerkerker
71898d0c8c
Add snapshot testing to Spotify (#128032)
* Add snapshot testing to Spotify

* Fix
2024-10-11 13:58:04 +02:00
Erik Montnemery
416ead5311
Improve docstring of EntityComponent and EntityPlatform (#128135) 2024-10-11 13:43:20 +02:00
Raj Laud
c7882450ac
Remove stale references in squeezebox services.yaml (#127739) 2024-10-11 13:39:33 +02:00
Teemu R.
1eea5b8a58
Increase tplink climate precision (#127996) 2024-10-11 13:15:30 +02:00
Antoine Reversat
7341337b5f
Fix europe authentication in Fujitsu FGLair (#127947) 2024-10-11 13:14:47 +02:00
Matthias Alphart
964d87ae10
Update xknxproject to 3.8.1 (#128057) 2024-10-11 12:50:15 +02:00
epenet
cb02c723e0
Do not use async_config_entry_first_refresh in fronius (#128153) 2024-10-11 12:49:01 +02:00
Álvaro Fernández Rojas
4c1b7add39
Update aioairzone to v0.9.4 (#127792) 2024-10-11 12:39:39 +02:00
tronikos
252aa1410b
Remove some redundant code in Opower's coordinator from the fix in #128141 (#128150) 2024-10-11 12:37:23 +02:00
Teemu R.
64693eaca2
Add reboot button for tplink (#127935)
* Add reboot button for tplink

* Add device_class, remove unnecessary translation and update fixtures

* update snapshot
2024-10-11 12:21:36 +02:00
tronikos
c39a1596d5
Log exceptions in the config flow of Opower (#128146)
log exceptions
2024-10-11 12:19:34 +02:00
tronikos
46184188e4
Fix regression in Opower that was introduced in 2024.10.0 (#128141)
* Avoid KeyError when statistics have gaps

* fix break

* Remove unnecessary check
2024-10-11 12:10:07 +02:00
tronikos
d9f4f424fd
Bump opower to 0.8.3 (#128144) 2024-10-11 12:02:11 +02:00
Thomas55555
6b3f18cb5d
Bump aioautomower to 2024.10.0 (#128137)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2024-10-11 10:43:01 +02:00
J. Nick Koston
75c22b6a6f
Bump aiohttp to 3.10.10 (#128128)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2024-10-11 10:33:14 +02:00
Marc Mueller
19e7fdfdb0
Fix license script for ftfy (#128138) 2024-10-11 09:59:43 +02:00
Erik Montnemery
8ba14ef113
Minor improvement of device_registry (#128075)
* Minor improvement of device_registry

* Remove uncovered line
2024-10-10 22:41:44 +02:00
kevdliu
50025971d8
Support open next and close next actions for shades (#125097)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-10-10 15:09:52 -05:00
BlueMöhre
bcbba04f27
Add deCONZ IKEA RODRET device trigger (#128121)
add config for RODRET
2024-10-10 21:49:55 +02:00
Erik Montnemery
74ba8877d4
Improve entity registry test coverage (#128073) 2024-10-10 21:16:39 +02:00
Bram Kragten
ec91d74456
Update frontend to 20241002.3 (#128106) 2024-10-10 13:14:20 -04:00
Brett Adams
cb014cf255
Bump tesla-fleet-api to 0.8.4 (#127995)
Bump tesla-fleet-api
2024-10-10 18:43:37 +02:00
BlueMöhre
af08b73280
Add deconz IKEA SOMRIG device trigger (#127464)
add config for SOMRIG
2024-10-10 18:24:23 +02:00
Michael
e86d568536
Add missing already_configured strings (#128058)
* add missing already_configured string

* revert hassio
2024-10-10 17:52:00 +02:00
Jan-Philipp Benecke
9f7eb36a1f
Remove deprecated speed limit lock entity from tessie (#128043)
Remove deprecated speedlimit lock entity from tessie
2024-10-10 17:51:10 +02:00
Phill (pssc)
0fcbfa996f
Add squeezebox API failure test (#128066)
* add api failure test

* Update tests/components/squeezebox/test_init.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-10 17:38:14 +02:00
G Johansson
2ab5e5d267
Remove deprecated restart service in modbus (#128059) 2024-10-10 17:30:50 +02:00
Erik Montnemery
5b7bd6a52f
Minor improvement of device registry tests (#128095) 2024-10-10 17:28:57 +02:00
David Knowles
ebb8ec954d
Increase Hydrawise polling interval to 60 seconds (#128090) 2024-10-10 16:35:33 +02:00
Robert Resch
dd856a9116
Use custom function instead mashumaro in WebRTC dataclasses (#128099) 2024-10-10 16:15:09 +02:00
Marc Hörsken
5e38bb7a32
Add scene support to WMS WebControl pro (#126081)
* Add scene support to WMS WebControl pro

* Update homeassistant/components/wmspro/scene.py

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

* Create a device per room instead of scene

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-10 15:44:18 +02:00
AlCalzone
f446e42317
Support non-dimmable color lights in Z-Wave JS (#127808)
* Z-Wave JS: support non-dimmable color lights

* remove black_is_off light, support on/off/color

* fix: tests for on/off light

* fix: typo

* remove commented out old test code

* add test for off and on

* support colored lights without separate brightness control

* add test for color-only light

* refactor: extract color only light

* fix: preserve color when changing brightness

* extend tests

* refactor again

* refactor scale check

* refactor: remove impossible check

* review feedback

* review feedback

* fix discovery to handle all 3 switch CCs, limit search to same endpoint

* Update homeassistant/components/zwave_js/discovery.py

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

* Update homeassistant/components/zwave_js/discovery.py

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

* add test for Smart Switch 7 state

* Add type annotations

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-10 14:36:37 +02:00
kingy444
67f67a02f8
Fix casing on Powerview Gen3 zeroconf discovery (#128076) 2024-10-10 07:22:14 -05:00
Mike Degatano
a9aa5ad229
Use aiohasupervisor for store APIs (#126780)
* Use aiohasupervosor for store addon info

* Use aiohasupervisor install addon

* Use aiohasupervisor for store info API

* Fix onboarding test

* Changes from feedback

* Move get_supervisor_client out of constructor

* Mock supervisor_client in tests

* Make property private
2024-10-10 10:27:20 +02:00
epenet
f504c27972
Add ability to pass the config entry explicitly in data update coordinators (#127980)
* Add ability to pass the config entry explicitely in data update coordinators

* Implement in accuweather

* Raise if config entry not set

* Move accuweather models

* Fix gogogate2

* Fix rainforest_raven
2024-10-10 10:20:15 +02:00
dependabot[bot]
9b3f92e265
Bump actions/upload-artifact from 4.4.2 to 4.4.3 (#128074)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-10 10:07:44 +02:00
Ian Hattendorf
4efb747389
Add Jellyfin remote entity (#126461)
* jellyfin: Add remote entity

This allows sending general commands via the
"Sessions/{sessionId}/Command" endpoint

* jellyfin: Add remote entity tests
2024-10-10 09:30:05 +02:00
Michael
347440019e
Use snapshot platform test helper in IPP (#127734)
* use snapshot_platform

* we don't need to check for amount of entities anymore
2024-10-09 19:28:22 -05:00
epenet
39891ffe60
Drop reconfigure_confirm step in trafikverket_camera (#128031)
* Drop reconfigure_confirm step in trafikverket_camera

* Update strings.json
2024-10-09 22:14:34 +02:00
G Johansson
9bbbb2cd3c
End deprecation for config entry import for folder watcher (#128056) 2024-10-09 21:25:55 +02:00
Michael
2a171fb08c
Add missing translation string in enphase envoy (#128053) 2024-10-09 21:24:31 +02:00
Steven B.
9f6412a976
Fix missing reauth name translation placeholder in ring integration (#128048) 2024-10-09 21:23:23 +02:00
Michael
8a6a13db0e
Add missing translation string for re-auth flows (#128055) 2024-10-09 21:12:00 +02:00
epenet
fbec61662b
Use reauth/reconfigure helpers in shelly config flow (#128019) 2024-10-09 22:05:45 +03:00
G Johansson
9d7f0e77f1
Add missing translations strings in trafikverket_camera (#128037) 2024-10-09 21:02:43 +02:00
Owen Voke
983607e683
Add state class to qBittorrent UL / DL speed (#127988) 2024-10-09 19:30:53 +01:00
Marc Mueller
c3cbdd0eb9
Update RestrictedPython to 7.4 (#128039) 2024-10-09 14:17:44 -04:00
Jan-Philipp Benecke
b56fa7b406
Extend deprecation period for hass.helpers by 6 months (#128038) 2024-10-09 14:16:56 -04:00
Marc Mueller
dabc38dbff
Fix StateType imports (#128042) 2024-10-09 20:16:14 +02:00
Marc Mueller
e6bba49bcd
Add strict typing for govee_ble (#128044) 2024-10-09 19:29:42 +02:00
Steven B.
23a1046a8f
Allow single use of device class translations in tplink snapshot tests (#128022) 2024-10-09 18:12:21 +02:00
epenet
7c6b517672
Use reconfigure helpers in fronius config flow (#128001)
* Use reconfigure helpers in fronius

* Drop _async_abort_entries_match
2024-10-09 17:52:30 +02:00
epenet
f6188949f3
Use reconfigure helpers in enphase envoy config flow (#127977) 2024-10-09 17:33:34 +02:00
epenet
ff1ea46c46
Do not cache the reconfigure entry in feedreader config flow (#127989) 2024-10-09 17:32:08 +02:00
epenet
e8bc07d40f
Use reauth/reconfigure helpers in fritzbox config flow (#127993) 2024-10-09 17:31:49 +02:00
epenet
fa717699f5
Use reconfigure helpers in mealie config flow (#128013) 2024-10-09 17:29:01 +02:00
epenet
8dfb8ebe5c
Use reauth/reconfigure helpers in reolink config flow (#128018) 2024-10-09 17:26:08 +02:00
epenet
7b6cac558d
Use reconfigure helpers in melcloud config flow (#128014) 2024-10-09 17:25:13 +02:00
epenet
f13f4a4851
Do not cache reauth/reconfigure entry in solarlog config flow (#128023) 2024-10-09 17:24:19 +02:00
epenet
11245dbb82
Do not cache the entry in lamarzocco config flow (#128010) 2024-10-09 17:22:53 +02:00
Marc Hörsken
805bed092e
Fix discovery of WMS WebControl pro by using IP address (#127939) 2024-10-09 17:18:58 +02:00
epenet
b38694fbcd
Do not cache the reconfigure entry in here travel time config flow (#128003) 2024-10-09 17:12:46 +02:00
epenet
ac7dc03603
Do not cache the reconfigure entry in holiday config flow (#128005) 2024-10-09 17:09:24 +02:00
epenet
253a5e3e4b
Use reauth/reconfigure helpers in fritz config flow (#127990) 2024-10-09 17:07:49 +02:00
dontinelli
b8131cee2e
Add missing translation string in solarlog (#128015) 2024-10-09 16:58:16 +02:00
epenet
c8178ab915
Do not cache reconfigure entry in vallox config flow (#128029) 2024-10-09 16:50:17 +02:00
epenet
577ae6923a
Do not cache reconfigure entry in waze_travel_time config flow (#128030) 2024-10-09 16:31:11 +02:00
epenet
fcaec2c3f4
Use reconfigure helpers in lcn config flow (#128011) 2024-10-09 16:21:36 +02:00
epenet
78f4b28697
Use reauth/reconfigure helpers in trafikverket_weatherstation config flow (#128028) 2024-10-09 16:14:56 +02:00
epenet
acd32b500c
Use reauth/reconfigure helpers in trafikverket_camera config flow (#128026) 2024-10-09 16:08:45 +02:00
epenet
168d0f11ab
Do not cache the reconfigure entry in homeworks config flow (#128006) 2024-10-09 16:07:47 +02:00
epenet
6da8b69ff8
Do not cache reconfigure entry in smhi config flow (#128021) 2024-10-09 16:06:59 +02:00
epenet
3fa460a42a
Use reconfigure helpers in madvr config flow (#128012) 2024-10-09 16:05:14 +02:00
epenet
021e7ce49b
Do not cache reauth/reconfigure entry in pyload config flow (#128017) 2024-10-09 16:03:19 +02:00
Marc Mueller
2d093e9692
Enable strict typing for switch_as_x (#127998) 2024-10-09 16:00:45 +02:00
epenet
30a244de7a
Do not cache reconfigure entry in tado config flow (#128024) 2024-10-09 15:56:07 +02:00
epenet
195398713b
Use reconfigure helpers in nam config flow (#128016) 2024-10-09 15:40:47 +02:00
epenet
3d1e57766a
Simplify jewish_calendar reconfigure flow (#128008)
* Simplify jewish_calendar reconfigure flow

* Adjust
2024-10-09 15:34:11 +02:00
epenet
dd08381167
Do not cache the reconfigure entry in google travel time config flow (#128002) 2024-10-09 15:07:48 +02:00
Joost Lekkerkerker
c096cc23df
Add tests for the Spotify media browser (#127857)
* Add tests for the Spotify media browser

* Add tests for the Spotify media browser

* Fix

* Fix comment

* Revert "Add tests for the Spotify media browser"

This reverts commit 59de6725d2.

* Add comment

* Add comment
2024-10-09 13:39:03 +02:00
azerty9971
d8d000f279
Fix wrong DPTypes returned by Tuya's cloud (#127860)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-10-09 12:24:09 +02:00
Maikel Punie
5dd91db5c0
Bump pyduotecno to 2024.10.0 (#127979) 2024-10-09 12:20:27 +02:00
Joost Lekkerkerker
c97be4d0d1
Add Spotify media player tests (#127839)
* Improve Spotify mock

* Add Spotify media player tests

* Remove extra changes

* Remove available markets

* Remove available markets

* Fix tests
2024-10-09 12:09:42 +02:00
Manu
fa53ec40d6
Remove deprecated yaml import from Habitica (#127946) 2024-10-09 11:17:19 +02:00
epenet
413a4cd7bd
Use reconfigure helpers in brother config flow (#127975)
* Use reconfigure helpers in brother config flow

* Don't abort on unique_id mismatch
2024-10-09 11:17:08 +02:00
Erik Montnemery
c22bbc5b91
Improve IssueRegistryItemSnapshot (#127949) 2024-10-09 10:57:04 +02:00
G Johansson
6f45e376da
Don't error with missing information in systemmonitor diagnostics (#127868) 2024-10-09 10:44:54 +02:00
Lenn
5e6a38769d
Bump motionblindsble to 0.1.2 (#127954) 2024-10-09 10:33:29 +02:00
Marc Hörsken
f5797e3799
Update pywmspro to 0.2.1 to fix handling of unknown products (#127942) 2024-10-09 10:31:44 +02:00
Johan Gustafsson
bbbbd0810a
Bump auroranoaa to 0.0.5 (#127965) 2024-10-09 10:30:19 +02:00
epenet
053e2a52b8
Fix firmware version parsing in venstar (#127974) 2024-10-09 09:56:53 +02:00
epenet
99eb466223
Add updates argument to update_reload_and_abort helper (#127781)
* Add updates argument to update_reload_and_abort helper

* Also apply to airvisual_pro

* Rename argument

* docstring

* Use modern syntax

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

* Apply suggestion

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

* Apply suggestion

* Docstring

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-10-09 07:47:18 +02:00
Raman Gupta
2dec36f210
Fix zwave_js config validation for values (#127972) 2024-10-09 07:35:41 +02:00
dependabot[bot]
8b46c8bf20
Bump actions/upload-artifact from 4.4.1 to 4.4.2 (#127962) 2024-10-08 23:54:44 +02:00
dependabot[bot]
77d83bffee
Bump actions/cache from 4.1.0 to 4.1.1 (#127961) 2024-10-08 23:53:33 +02:00
G Johansson
666e8e133e
Cover state is enum (#127144)
* Change light state to use enum

* Adjust cover tests

* Update cover

* Fix covers

* Some tests

* More tests

* Fix tests

* Fix
2024-10-08 18:39:04 +02:00
G Johansson
959898e0fc
Fix merge_response template not mutate original object (#127865)
* Fix merge_response template not mutate original object

* Add comment
2024-10-08 18:35:06 +02:00
Ricardo Marques
d41b9beb71
Fix custom account config flow setup (#127750) 2024-10-08 17:44:59 +02:00
Joost Lekkerkerker
00a037c786
Snapshot more platforms for Matter (#127541)
* Snapshot more platforms for Matter

* Fix

* Fix

* Fix

* Fix tests
2024-10-08 16:17:21 +02:00
epenet
d8b51b4f2c
Avoid unknown error translation strings in anthropic (#127823) 2024-10-08 15:59:45 +02:00
Steven B.
4d003f51c3
Bump python-kasa to 0.7.5 (#127934) 2024-10-08 15:47:12 +02:00
Erik Montnemery
e01512e469
Update integrations to use new UnitOfConductivity enums (#127932) 2024-10-08 15:20:26 +02:00
epenet
5836a85340
Prevent async_create_entry from reauth/reconfigure flows (#127527)
* Prevent `async_create_entry` from reauth/reconfigure flows

* Adjust message

* Don't raise just yet

* Adjust message

* Fix string

* Remove invalid comment

* Add parameter

* Use count parameter

* Remove another branching
2024-10-08 15:19:58 +02:00
epenet
4e15556eeb
Cleanup unused variable in tests (#127930) 2024-10-08 15:14:23 +02:00
Erik Montnemery
0956dbb578
Rename UnitOfConductivity enum members (#127919)
* Rename UnitOfConductivity enum members

* Update test snapshots
2024-10-08 14:44:01 +02:00
Erik Montnemery
0c0ff855b1
Warn when async_update_entry creates a unique_id collision (#127929) 2024-10-08 14:42:41 +02:00
Andre Lengwenus
017ba509a6
Add device_class for LCN sensors (#127921)
* Add device_class for lcn sensor

* Rename device_class mapping dictionary
2024-10-08 14:24:48 +02:00
Joost Lekkerkerker
9d9b5af97f
Deprecate hassio service to update addon (#127927)
* Deprecate hassio service to update addon

* Update homeassistant/components/hassio/strings.json

Co-authored-by: Stefan Agner <stefan@agner.ch>

* service -> action

* service -> action; in the title as well

---------

Co-authored-by: Stefan Agner <stefan@agner.ch>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2024-10-08 14:23:29 +02:00
Manu
dd5e5323f1
Add support of due date calculation for grey dailies in Habitica integration (#127923)
Fix grey dailies due date calculation
2024-10-08 14:08:16 +02:00
Erik Montnemery
cee7017d20
Reinitialize hassio discovery flow on config entry removal (#127088)
* Reinitialize hassio discovery flow on config entry removal

* Address review comments
2024-10-08 14:07:05 +02:00
J. Nick Koston
c9311ea3c9
Bump yarl to 1.14.0 (#127924) 2024-10-08 14:01:37 +02:00
Maciej Bieniek
92f08be416
Bump imgw_pib library to version 1.0.6 (#127925)
Bump `imgw_pib`
2024-10-08 13:58:03 +02:00
epenet
4478f64002
Remove dead reconfigure code (#127398)
* Remove dead reconfigure code

* Adjust

* Start cleaning up test

* Prevent duplicate flows

* Add missing string

* Adjust two more tests

* Only filter out reauth flows

* Update strings.json

* Update config_entries.py

* Adjust tests

* Remove all checks - but add comment in tests

* Simplify PR
2024-10-08 13:35:04 +02:00
Robert Resch
b56e22d4ee
Use homeassistant STUN server (#127922) 2024-10-08 12:25:20 +02:00
Erik Montnemery
d6ee10a543
Make FlowHandler.context a typed dict (#126291)
* Make FlowHandler.context a typed dict

* Adjust typing

* Adjust typing

* Avoid calling ConfigFlowContext constructor in hot path
2024-10-08 12:18:45 +02:00
Johan Gustafsson
217165208b
Fix aurora alert sensor always Off (#127780) 2024-10-08 11:31:59 +02:00
epenet
2c664efb3c
Add new helper for matching reauth/reconfigure config flows (#127565) 2024-10-08 10:07:36 +02:00
epenet
15a1a83729
Add missing translation string in tesla_fleet (#127915) 2024-10-08 09:48:06 +02:00
Erik Montnemery
c87415023c
Correct cleanup of sensor statistics repairs (#127826) 2024-10-08 09:39:21 +02:00
Simone Rescio
86fddf2ec1
Fix devContainer startup (#127042) 2024-10-08 09:32:26 +02:00
epenet
1eb8d0fa1c
Don't abort on unknown error in nina config flow (#127908) 2024-10-08 09:10:26 +02:00
dependabot[bot]
6df77ef94b
Bump actions/upload-artifact from 4.4.0 to 4.4.1 (#127905)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-08 09:05:12 +02:00
G Johansson
bff66dbbd3
Use separate constants in slide cover (#127852) 2024-10-08 09:03:43 +02:00
epenet
646f457637
Add missing translation string in otbr (#127909) 2024-10-08 09:00:45 +02:00
dependabot[bot]
b37d9179e6
Bump github/codeql-action from 3.26.11 to 3.26.12 (#127904)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-08 08:59:48 +02:00
dependabot[bot]
eff9d568a2
Bump actions/checkout from 4.2.0 to 4.2.1 (#127903)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-08 08:59:34 +02:00
epenet
11793f04c1
Add missing translation string in cloudflare (#127906) 2024-10-08 08:57:21 +02:00
epenet
79e8a694ad
Don't cache reauth entry in aseko_pool_live config flow (#127902) 2024-10-08 08:56:30 +02:00
epenet
4a202eca59
Add missing and fix incorrect translation string in permobil (#127910) 2024-10-08 08:54:53 +02:00
epenet
70fcca824b
Add missing translation string in tile (#127911) 2024-10-08 08:53:41 +02:00
epenet
f2e0190b68
Add missing translation string in yamaha_musiccast (#127912) 2024-10-08 08:52:54 +02:00
epenet
20205d7ff4
Fix incorrect translation key in crownstone (#127913) 2024-10-08 08:51:53 +02:00
epenet
3b195f61da
Fix incorrect translation string in fivem (#127907) 2024-10-08 08:51:11 +02:00
dontinelli
99a40ae49f
Reverse unintended change of unique_id for solarlog (#127845) 2024-10-08 08:46:49 +02:00
epenet
ba4ed5a1bb
Fix incorrect translation string in analytics_insights (#127815) 2024-10-08 08:45:41 +02:00
Michael
ac42ff5d73
Fix translation strings in geonetnz_volcano (#127872) 2024-10-08 08:44:46 +02:00
epenet
4bb3d69631
Fix incorrect translation string in azure event hub (#127820) 2024-10-08 08:44:23 +02:00
epenet
e6aac6a77f
Add missing and fix incorrect translation string in alarmdecoder (#127814) 2024-10-08 08:43:40 +02:00
epenet
bb4e8e5717
Fix incorrect translation string in bryant_evolution (#127830) 2024-10-08 08:42:34 +02:00
Michael
c963e280ca
Add missing translation string in AVM Fritz!Smarthome (#127864) 2024-10-08 08:40:58 +02:00
epenet
ea1ce6a263
Don't cache reauth entry in androidtv_remote config flow (#127900)
Don't cache reauth entry in androidtv_remote
2024-10-07 23:22:55 -07:00
Marc Mueller
412acf943d
Enable strict typing for panel_custom (#127855) 2024-10-08 08:16:58 +02:00
epenet
1984989564
Add missing and fix incorrect translation string in duotecno (#127834) 2024-10-08 08:16:43 +02:00
epenet
e1988cd6fc
Add missing and fix incorrect translation string in aurora (#127818) 2024-10-08 08:15:46 +02:00
J. Nick Koston
6269ce36b3
Bump propcache to 0.2.0 (#127816) 2024-10-08 08:14:37 +02:00
epenet
9ab81eb444
Add missing translation string in deluge (#127831) 2024-10-08 08:13:54 +02:00
epenet
b75ed5b8f1
Add missing translation string in blebox (#127827) 2024-10-08 08:13:16 +02:00
Erik Montnemery
fbd9502474
Use SensorDeviceClass.CONDUCTIVITY for xiaomi_ble conductivity sensors (#127880) 2024-10-08 08:12:39 +02:00
epenet
b32c4a8fbb
Add missing translation string in kitchen_sink (#127838) 2024-10-08 08:12:21 +02:00
dcmeglio
3755f598a2
Bump pyeconet to 0.1.23 (#127896) 2024-10-08 08:11:25 +02:00
epenet
af7a9ff591
Add missing translation string in broadlink (#127829) 2024-10-08 08:10:25 +02:00
epenet
55376ea7f0
Add missing translation string in awair (#127819) 2024-10-08 08:10:01 +02:00
G Johansson
3a2843b9fa
Bump holidays library to 0.58 (#127876) 2024-10-08 08:09:03 +02:00
Jon Seager
6dbfce0095
Bump pytouchlinesl to 0.1.8 (#127859) 2024-10-08 08:07:45 +02:00
G Johansson
1613b3c0df
Use separate constants in template cover (#127853) 2024-10-08 08:06:44 +02:00
Marc Mueller
00ee2b4478
Enable strict typing for openai_conversation (#127854) 2024-10-08 08:06:05 +02:00
functionpointer
9a0cb59830
Clean up Tibber service tests (#127334)
* Tibber: cleanup tests

* Tibber: cleanup tests
2024-10-08 07:56:21 +02:00
Richard Kroegel
54c4fb5f56
BMW: Add reconfiguration flow (#127726)
* BMW: Add reconfiguration flow

* Implement requested changes

--------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Abort if unique_id changes, small adjustments

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-10-08 07:42:10 +02:00
Marc Mueller
c3bf1dde7e
Enable strict typing for shell_command (#127856) 2024-10-08 02:05:41 +03:00
Shay Levy
963bba63d0
Bump aioshelly to 12.0.0 (#127884) 2024-10-08 02:05:23 +03:00
JEMcats
eac930ad7f
Add Tesla Fleet grid status (#126438)
* Make Changes.

* Change to match suggested changes.

* add Possible States to island status

* remove storm watch active sensor.

* Update the test_*.ambr files

* Update *.ambr files

* Add more infromation to Grid Status

* Remove storm mode strings and icons
2024-10-07 22:18:40 +02:00
epenet
4c175a3ed9
Add missing translation string in dnsip (#127833) 2024-10-07 21:03:52 +02:00
Michael
ec39ec69bb
Add missing translation string in AVM Fritz!Tools (#127863)
add missing translation string
2024-10-07 20:49:30 +02:00
Marc Mueller
3107785947
Update fritzconnection to 1.14.0 (#127793)
* Update fritzconnection to 1.14.0

* fix fritz image tests

---------

Co-authored-by: mib1185 <mail@mib85.de>
2024-10-07 20:00:24 +02:00
Joost Lekkerkerker
fe130b62c8
Replace Spotify fixtures (#127850)
Replace fixtures with real life ones
2024-10-07 18:00:54 +02:00
Joost Lekkerkerker
f0363ac221
Improve Spotify mock (#127825)
* Improve Spotify mock

* Fix comments

* Fix comments

* Fix comments

* Fix comments

* Fix comments

* Fix comments

* Fix comments

* Fix comments
2024-10-07 17:36:39 +02:00
epenet
75936fcb9c
Add missing translation string in axis (#127822) 2024-10-07 16:12:09 +02:00
epenet
ffbb894dd6
Fix incorrect translation string in airvisual (#127813) 2024-10-07 08:03:00 -06:00
epenet
7271a64ac2
Add missing translation string in electric_kiwi (#127835) 2024-10-07 15:48:57 +02:00
epenet
ee65f60222
Fix incorrect translation string in blink (#127828) 2024-10-07 15:48:33 +02:00
epenet
c41e3cbf93
Fix incorrect translation string in august (#127817) 2024-10-07 15:27:23 +02:00
epenet
599076d6f4
Add missing patch in dnsip test (#127802) 2024-10-07 14:24:51 +02:00
TimL
06170592bd
Bump pysmlight to v0.1.3 (#127804)
Bump pysmlight v0.1.3

Co-authored-by: Tim Lunn <tim@feathertop.org>
2024-10-07 14:24:26 +02:00
epenet
14111188c0
Fix incorrect string in amberlectric (#127807) 2024-10-07 14:15:23 +02:00
Marc Mueller
d185f230b9
Enable strict typing for workday (#127797) 2024-10-07 12:48:12 +02:00
Marc Mueller
079ba2a529
Add strict typing to radio_browser (#127799) 2024-10-07 12:47:08 +02:00
epenet
d99429463b
Use reauth helpers in permobil config flow (#127530) 2024-10-07 11:37:28 +02:00
Erik Montnemery
563de82707
Bump pychromecast to 14.0.4 (#127791) 2024-10-07 11:34:39 +02:00
epenet
8c0e96e6e6
Extend update_entry_and_reload tests (#127776) 2024-10-07 11:23:48 +02:00
Álvaro Fernández Rojas
550858092c
Update aioairzone-cloud to v0.6.6 (#127789) 2024-10-07 11:19:34 +02:00
Brett Adams
ae6add1e77
Fix Island status in Teslemetry (#127504) 2024-10-07 10:15:25 +02:00
Arie Catsman
927943e07a
Add option to disable keep-alive for Enphase Envoy connections (#127603) 2024-10-07 10:13:23 +02:00
Marc Mueller
4cfb1c573e
Update pre-commit to 4.0.0 (#127782) 2024-10-07 10:07:26 +02:00
Erik Montnemery
a36b516070
Bump pychromecast to 14.0.3 (#127778) 2024-10-07 10:04:54 +02:00
Marc Mueller
cb0ae29308
Update types packages (#127783) 2024-10-07 10:04:02 +02:00
AJ Jordan
6ee452aef3
Disable SELinux enforcement on dev containers (#127774) 2024-10-07 09:27:48 +02:00
Marc Mueller
bce274155c
Update ephem to 4.1.6 (#127761) 2024-10-07 09:22:21 +02:00
dontinelli
019aff88ca
Bump solarlog_cli to 0.3.1 (#127753) 2024-10-07 09:21:25 +02:00
epenet
c87a2ca335
Add default reconfigure reason in update_reload_and_abort (#127756)
* Add default reconfigure reason in async_update_reload_and_abort

* Simplify

* Fix test

* Add sample usage

* Remove multi-line ternary
2024-10-07 09:02:58 +02:00
Michael
4e650ec1ba
Increase connection timeout in CalDAV (#127727) 2024-10-07 08:43:32 +02:00
Erik Montnemery
7ec911c4df
Correct typing in rediscovery tests (#127777) 2024-10-07 08:42:04 +02:00
René Klomp
605aaf955c
Migrate SMA unique id to str (#127732) 2024-10-07 08:19:55 +02:00
Joost Lekkerkerker
e78a3f7939
Add translation string for Withings wrong account (#127719) 2024-10-07 08:14:19 +02:00
Simon Lamon
54401bc0a5
Bump python-linkplay to 0.0.15 (#127748) 2024-10-07 08:10:48 +02:00
AJ Jordan
a02ef0dbc8
Fix typo (#127775) 2024-10-07 08:08:53 +02:00
J. Nick Koston
34c464e8d0
Bump DoorBirdPy to 3.0.4 (#127760)
changelog: https://gitlab.com/klikini/doorbirdpy/-/compare/3.0.3...eea287316c6fd84b63cc67fd743cc1128ea14568?from_project_id=7409088&straight=false

fixes #126598
2024-10-06 17:07:27 -05:00
Joost Lekkerkerker
32570c59c8
Bump NYT Games to 0.4.3 (#127717) 2024-10-06 22:45:13 +02:00
Joost Lekkerkerker
4721f8ef5f
Bump airgradient to 0.9.1 (#127718) 2024-10-06 19:21:48 +02:00
Joost Lekkerkerker
3c458353f0
Fix typo in HDMI CEC (#127714) 2024-10-06 19:21:19 +02:00
Joost Lekkerkerker
59e3c4874d
Fix Withings log message (#127716) 2024-10-06 19:21:07 +02:00
Johan Gustafsson
4693f436a5
Fix Aurora integration casts longitude and latitude to integer (#127740)
Fix Aurora integration casts longitude and latitude to integer (#100817)
2024-10-06 17:33:54 +02:00
Brandon Rothweiler
b4dfd08bc4
Update A. O. Smith integration to reflect upstream API changes (#127678) 2024-10-06 17:16:29 +02:00
Thomas55555
3cda93d001
Add work area sensors to Husqvarna Automower (#126931)
* Add work area sensors to Husqvarna Automower

* add exists function

* fix tests

* add icons

* docstring

* Update homeassistant/components/husqvarna_automower/sensor.py

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-06 16:10:26 +02:00
epenet
e705ca83b2
Use reconfigure helpers in config tests (#127534)
Use async_update_reload_and_abort in config test
2024-10-06 16:06:55 +02:00
Joost Lekkerkerker
f90ed9e9db
Remove expected lingering test fixture from Matter (#127713) 2024-10-06 16:00:40 +02:00
Michael
808d93d767
Remove obsolete entity count safeguards when using snapshot_platform test helper (#127736)
remove obsolete safeguards
2024-10-06 15:50:16 +02:00
J. Diego Rodríguez Royo
0d795aad16
Use BSH keys as unique ID's suffix at Home Connect (#126143)
* Use BSH keys as as unique id suffix instead of the simple description

* Update tests/components/home_connect/test_init.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-06 12:40:13 +02:00
Manu
3e8bc98f23
Add cast skill action to Habitica integration (#127000)
* Add cast skill action for task skills

* exceptions

* task not found exception

* request refresh to update mana/xp sensors

* Changes

* remove service_call prefix

* fixes
2024-10-06 10:33:32 +02:00
dontinelli
546d0b25b0
Bump fyta_cli to 0.6.7 (#127650) 2024-10-06 10:03:16 +02:00
J. Nick Koston
1f04723d8d
Bump uiprotect to 6.3.1 (#127702)
* Bump uiprotect to 6.3.0

changelog: https://github.com/uilibs/uiprotect/compare/v6.2.0...v6.3.0

* Apply suggestions from code review
2024-10-06 10:02:34 +02:00
Joost Lekkerkerker
cd78e2fc43
Bump syrupy to 4.7.2 (#127710) 2024-10-06 09:59:13 +02:00
David Knowles
f6850c36fc
Fix problems with automatic management of Schlage locks (#127689)
Use the correct identifiers for existing lock devices
2024-10-06 07:42:39 +02:00
J. Nick Koston
8f96256e86
Bump cached-ipaddress to 0.8.0 (#127703)
changelog: https://github.com/bdraco/cached-ipaddress/compare/v0.7.0...v0.8.0
2024-10-06 07:28:48 +02:00
J. Nick Koston
4404fb72bd
Bump yalexs to 8.10.0 (#127704)
* Bump yalexs to 8.10.0

changelog: https://github.com/bdraco/yalexs/compare/v8.9.0...v8.10.0

* Update homeassistant/components/august/manifest.json
2024-10-06 07:28:23 +02:00
Marc Mueller
8ae3b430c8
Update yalexs-ble to 2.5.0 (#127696) 2024-10-05 21:06:43 -05:00
Marc Mueller
e6bc1f0730
Update bleak-esphome to 1.1.0 (#127692) 2024-10-06 03:20:04 +02:00
Marc Mueller
747f7a1b04
Update habluetooth to 3.5.0 (#127690) 2024-10-06 02:28:06 +02:00
Marc Mueller
01e7c45664
Update home-assistant-bluetooth to 1.13.0 (#127691) 2024-10-06 02:15:05 +02:00
Marc Mueller
65c0d49c3b
Update bleak to 0.22.3 (#127688) 2024-10-06 01:51:53 +02:00
Marc Mueller
cba9e5845d
Update bleak-retry-connector to 3.6.0 (#127686) 2024-10-06 01:21:39 +02:00
Marc Mueller
c6e5011a98
Update bluetooth-adapters to 0.20.0 (#127684) 2024-10-06 00:54:23 +02:00
Marc Mueller
229ad8be83
Revert "Fix enum lookup (#125220)" (#127680)
This reverts commit 1bc63a61be.
2024-10-06 00:46:50 +02:00
Marc Mueller
d58b2d1b32
Update dbus-fast to 2.24.3 (#127683) 2024-10-06 00:22:42 +02:00
David Bonnes
b69f2856bf
Add tests for evohome water_heater entities (#127611)
* initial commit

* move get_entity* helper to test

* parameterize with TEST_INSTALLS_WITH_DHW

* remove if from tests
2024-10-05 22:34:06 +01:00
David Bonnes
76a59338eb
Add tests for evohome climate entities (#127612)
* initial commit

* rename symbol (zon -> zone)

* move get_entity* helper function to test

* update snapshot
2024-10-05 22:32:12 +01:00
Brian Rogers
4003e93999
Replace Rachio warning with debug logging (#127673) 2024-10-05 15:40:42 -05:00
Manu
fe9ae0d8bd
Add sensors for gems and mystic hourglasses to Habitica integration (#127651)
Add sensors for gems and mystic hourglasses
2024-10-05 21:27:42 +02:00
J. Nick Koston
0326e58c8a
Remove automatic linkage of doorbells to HomeKit accessories via device class occupancy (#127668) 2024-10-05 14:24:58 -05:00
Michael
c043142b86
Improve handling of call deflection switches in AVM Fritz!Tools (#127592)
improve handling of call_deflection switches
2024-10-05 19:16:34 +02:00
Louis Christ
c28edb1117
Bump pyblu to 1.0.3 (#127571) 2024-10-05 19:14:57 +02:00
Thomas55555
204bea8947
Return an error if no error key is provided in Husqvarna Automower (#127584)
return error
2024-10-05 19:13:21 +02:00
Steven Looman
39e65c8586
Bump async-upnp-client to 0.41.0 (#127642) 2024-10-05 09:07:10 -05:00
Jan Bouwhuis
e54031e318
Improve mqtt sensor options validion logging (#127631)
* Improve mqtt sensor options validion logging

* Fix test
2024-10-05 13:31:42 +02:00
J. Nick Koston
24fbc366a6
Restore __slots__ to registry entries (#127481) 2024-10-05 12:16:52 +02:00
Erik Montnemery
c104e66964
Fix snooz tests (#127468) 2024-10-05 12:13:52 +02:00
Marc Mueller
00df42ba39
Fix grpcio wheel build (#127533) 2024-10-05 12:13:09 +02:00
epenet
c4fb4eb61b
Use common reconfigure string in bryant_evolution (#127561) 2024-10-05 12:12:14 +02:00
Thomas55555
a9495aceb4
Fix Husqvarna Automower reauth title (#127583) 2024-10-05 12:11:40 +02:00
Joost Lekkerkerker
0999297e58
Introduce Jellyfin client/server base entities (#127572) 2024-10-05 12:06:54 +02:00
Richard Cox
62ae2a3bd5
Update Radarr config flow to standardize ports (#127620) 2024-10-05 12:05:11 +02:00
Brett Adams
213cc14494
Fix wake up in Tesla Fleet (#127615) 2024-10-05 12:04:10 +02:00
dependabot[bot]
59ebb94d24
Bump actions/cache from 4.0.2 to 4.1.0 (#127627)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-05 11:58:55 +02:00
dependabot[bot]
a11b32dae5
Bump sigstore/cosign-installer from 3.6.0 to 3.7.0 (#127628)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-05 11:48:17 +02:00
J. Nick Koston
0177facbf0
Fix blocking stat call in local media_source (#127587) 2024-10-05 03:17:07 -05:00
Franck Nijhof
b8d252273d
Merge branch 'master' into dev 2024-10-05 10:07:24 +02:00
Sid
b942569ce0
Remove enigma2 yaml import (#127597) 2024-10-05 10:00:23 +02:00
Noah Husby
275b9ce718
Bump aiostreammagic to 2.5.0 (#127595) 2024-10-05 08:19:22 +02:00
J. Nick Koston
58d0dbb542
Bump aiohttp to 3.10.9 (#127594)
https://github.com/aio-libs/aiohttp/releases/tag/v3.10.9

changelog: https://github.com/aio-libs/aiohttp/compare/v3.10.8...v3.10.9

This is a technically breaking change, the default connect timeout is now 30s to
fix a bug where the next ip would not be tried within the default timeout
period of 150s. I expect this will not be a problem but I wanted to
point it out.
2024-10-05 07:48:13 +02:00
tronikos
f84a01d840
Bump opower to 0.8.2 (#127598)
* Bump opower to 0.8.1 to fix enmax

* Update manifest.json

* Update requirements_all.txt

* Update requirements_test_all.txt
2024-10-04 22:07:51 -07:00
TimL
6ee03460d6
Disable by default smlight auto zigbee update switch (#126707)
disable by default auto zigbee update switch

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2024-10-05 00:56:11 +03:00
Sid
d01fb914a9
Bump ruff to 0.6.9 (#127596) 2024-10-04 15:42:02 -05:00
Franck Nijhof
2182bc3af2
2024.10.1 (#127566) 2024-10-04 19:33:37 +02:00
Tudor Sandu
d9b077154e
Blueprints for template entities (#126971)
* Template domain blueprints

* Default blueprint for templates

* Some linting

* Template entity updates

* Load and use blueprints in config

* Added missing mapping methods for templates

* Linting

* Added tests

* Wrong schema type

* Hassfest errors

* More linting issues

* Refactor based on desired schema

In the [architecture discussion](https://github.com/home-assistant/architecture/discussions/1027), the template blueprint instance did not specify the platform (e.g. `binary_sensor`), but the initial implementation assumed that schema.

* Create default template blueprints on first run

* Moved TemplateConfig definition

This is to avoid circular references

* Corrected methods to find templates based on blueprints

* Corrected missing entity config information

* Added tests

* Don't use hass.data

Address comments https://github.com/home-assistant/core/pull/126971/#discussion_r1780097187

* Prevent creating blueprints during testing

* Combine 2 ifs

Address comment https://github.com/home-assistant/core/pull/126971/#discussion_r1780160870

* Improve test coverage

* Prevent template component from dirtying test env

* Remove useless hard-coded validation

* Improve code coverage to 100%

* Address review comments

* Moved helpers in helpers.py

As per comment https://github.com/home-assistant/core/pull/126971#discussion_r1786539889

* Fix blueprint source URL

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-10-04 16:47:29 +02:00
epenet
7e6c106869
Use HassKey in auth (#127573) 2024-10-04 16:34:04 +02:00
Raj Laud
c3e37ef9a0
Add codeowners for Squeezebox (#127564)
* Add codeowners for Squeezebox

* Update CODEOWNERS
2024-10-04 16:31:55 +02:00
epenet
8bbbaae290
Use HassKey in backup (#127546)
* Use HassKey in backup

* Use DATA_MANAGER
2024-10-04 16:01:50 +02:00
Joost Lekkerkerker
79de27544c
Simplify Jellyfin (#127353)
* Simplify Jellyfin

* Fix comment
2024-10-04 15:59:11 +02:00
Franck Nijhof
2cbf53ad7b
Bump version to 2024.10.1 2024-10-04 14:57:14 +02:00
Joost Lekkerkerker
c52607b465
Revert "Bump pychromecast to 14.0.2 (#127333)" (#127555)
This reverts commit 2ab66f62fa.
2024-10-04 14:57:01 +02:00
Joost Lekkerkerker
087566072d
Strip the NYT Games token (#127548) 2024-10-04 14:56:58 +02:00
Joost Lekkerkerker
6b814afd39
Create new clientsession for NYT Games (#127547) 2024-10-04 14:56:54 +02:00
Franck Nijhof
ea8aa6b07d
Adjust polling rate of Rituals Perfume Genie (#127544) 2024-10-04 14:56:51 +02:00
Paarth Shah
1b0f731e30
Bump matrix-nio to 0.25.2 (#127535) 2024-10-04 14:56:48 +02:00
robinostlund
1ebde4a880
Fix int value in unique_id for Tellduslive (#127526)
Fix int in unique_id
2024-10-04 14:56:45 +02:00
Andrew Jackson
e53bd477b4
Bump aiomealie to 0.9.3 (#127454) 2024-10-04 14:56:41 +02:00
Brett Adams
3f9287c36b
Add missing number platform to init of Tesla Fleet (#127406)
Add number platform to init
2024-10-04 14:56:38 +02:00
Erik Montnemery
b2b940fc32
Remove assumption in ConfigEntryItems about unique unique_id (#127399) 2024-10-04 14:56:35 +02:00
TimL
7d9e170512
Bump pysmlight 0.1.2 (#127376)
Co-authored-by: Tim Lunn <tim@feathertop.org>
2024-10-04 14:56:29 +02:00
Paul Bottein
6ab92abe80
Fix device id support for alarm control panel template (#127340) 2024-10-04 14:47:25 +02:00
Steven B.
e30db943db
Bump ring-doorbell to 0.9.7 (#127554) 2024-10-04 13:43:54 +02:00
Joost Lekkerkerker
e2b4a24a35
Revert "Bump pychromecast to 14.0.2 (#127333)" (#127555)
This reverts commit 2ab66f62fa.
2024-10-04 13:42:35 +02:00
Franck Nijhof
20e3291eb9
Revert Alexa Media Player block (#127553) 2024-10-04 13:13:18 +02:00
Joost Lekkerkerker
ebfa2fb1d0
Strip the NYT Games token (#127548) 2024-10-04 12:53:35 +02:00
Joost Lekkerkerker
ae8219dc97
Create new clientsession for NYT Games (#127547) 2024-10-04 12:04:33 +02:00
robinostlund
64ea02983b
Fix int value in unique_id for Tellduslive (#127526)
Fix int in unique_id
2024-10-04 12:02:33 +02:00
Franck Nijhof
f1b6ae8784
Adjust polling rate of Rituals Perfume Genie (#127544) 2024-10-04 11:21:22 +02:00
epenet
8b9b65d3f1
Use reauth helpers in spotify config flow (#127532)
Use async_update_reload_and_abort in spotify
2024-10-04 11:13:03 +02:00
Klaas Schoute
e82368ec85
Add entity icons for Autarco integration (#127505) 2024-10-04 11:12:24 +02:00
Paarth Shah
d1bee8fe61
Bump matrix-nio to 0.25.2 (#127535) 2024-10-04 11:11:39 +02:00
Joost Lekkerkerker
07704b8511
Add more fixtures to the matter fixture (#126761)
* Add more fixtures to the matter fixture

* Add Valve
2024-10-04 09:24:06 +02:00
epenet
6a44d66fed
Fix reolink tests (#127525) 2024-10-04 09:16:49 +02:00
dependabot[bot]
10895514c6
Bump github/codeql-action from 3.26.10 to 3.26.11 (#127524)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-04 09:07:41 +02:00
Maciej Bieniek
1290f18ed4
Add support for Shelly CCT light (#126989)
* Initial support for cct lights

* Move properties to the RpcShellyCctLight class

* Fix entity names

* Add async_remove_orphaned_entities() function

* Do not return

* Fix tests

* Combine async_remove_orphaned_virtual_entities and async_remove_orphaned_entities

* Remove SHELLY_PLUS_RGBW_CHANNELS from const

* Add tests

* Use _attr*

* Check ColorMode.COLOR_TEMP

* Add sensors for CCT light

* Remove removal condition

* Remove orphaned sensors

* Cleaning

* Add device temperature sensor for CCT light

* Simplify async_remove_orphaned_entities()

* Comment

* Add COMPONENT_ID_PATTERN const

* Call async_add_entities once

* Suggested change

* Better type for keys

* Do not call keys()
2024-10-04 08:49:35 +02:00
David Bonnes
49e634a62f
Convert evohome's test factory into an async generator (#126925) 2024-10-04 08:29:36 +02:00
Erik Montnemery
8754b54d81
Fix config entry unique_id collision in tplink tests (#127522) 2024-10-04 08:24:56 +02:00
epenet
c191a7cfdb
Fix lingering tasks in snooz tests (#127523) 2024-10-04 08:24:01 +02:00
J. Nick Koston
6eb49991a4
Add pylint rule for cached_property (#127482) 2024-10-03 17:53:55 -05:00
Michael
1dd59375f6
Add re-authemtication flow to AVM FRITZ!Box Call Monitor (#127497) 2024-10-03 22:36:41 +02:00
J. Nick Koston
c3f0f30910
Prepare websocket writer for aiohttp 3.11 (#127043) 2024-10-03 22:29:29 +02:00
J. Nick Koston
10c033e580
Migrate config_entries to use propcache cached_property (#127495) 2024-10-03 22:28:00 +02:00
Erik Montnemery
48a07d531c
Remove assumption in ConfigEntryItems about unique unique_id (#127399) 2024-10-03 22:27:15 +02:00
G Johansson
80582a128a
Fix preview available in statistics (#127349) 2024-10-03 22:27:01 +02:00
J. Nick Koston
db494de809
Restore __slots__ to core objects (#127441) 2024-10-03 22:23:47 +02:00
epenet
68d58212a9
Adjust type hints in hyperion config_flow (#127273) 2024-10-03 22:20:20 +02:00
Joost Lekkerkerker
48a6dabc5b
Remove Spider integration (#127346) 2024-10-03 21:44:30 +02:00
Erik Montnemery
0ae0047246
Fix config entry unique_id collision in lamarzocco tests (#127484) 2024-10-03 21:39:39 +02:00
epenet
49dec1577e
Use reauth helpers in elmax config flow (#127417) 2024-10-03 21:38:04 +02:00
J. Nick Koston
4e30bf705c
Bump uiprotect to 6.2.0 (#127477) 2024-10-03 13:12:04 -05:00
J. Nick Koston
4e9a91d03f
Bump yalexs to 8.9.0 (#127474) 2024-10-03 13:11:50 -05:00
J. Nick Koston
2f8c9d4f93
Bump cached-ipaddress to 0.7.0 (#127475) 2024-10-03 13:11:35 -05:00
J. Nick Koston
0f29fd3e10
Switch to using fast cached_property implementation in propcache (#127339) 2024-10-03 13:11:02 -05:00
epenet
58f786f6d0
Use _get_reauth_entry in cloudflare config flow (#127385) 2024-10-03 19:56:54 +02:00
J. Nick Koston
e2b1ef053f
Cache serialization of config entry storage (#127435) 2024-10-03 19:51:09 +02:00
epenet
0bbca596a9
Use reauth helpers in braviatv config flow (#127437) 2024-10-03 19:49:28 +02:00
epenet
09014e3390
Use reauth helpers in brunt config flow (#127438) 2024-10-03 19:48:47 +02:00
epenet
c634f6067a
Use reauth helpers in caldav config flow (#127440) 2024-10-03 19:48:09 +02:00
epenet
255cf6b305
Use reauth helpers in deluge config flow (#127445) 2024-10-03 19:45:09 +02:00
epenet
07bc9f6477
Use reauth helpers in dormakaba_dkey config flow (#127446) 2024-10-03 19:44:44 +02:00
Klaas Schoute
464da23d4e
Bump p1monitor to 3.1.0 (#127459) 2024-10-03 19:44:11 +02:00
Erik Montnemery
a2c85a0ac2
Remove test workaround from snooz (#127465) 2024-10-03 18:18:08 +02:00
epenet
f837369ef0
Use reauth helpers in electric_kiwi config flow (#127414)
* Mark electric_kiwi as single_config_entry

* Adjust

* Use reauth helpers in electric_kiwi config flow
2024-10-03 18:02:55 +02:00
epenet
153b3fbfc8
Use reauth helpers in comelit config flow (#127443)
* Use reauth helpers in comelit config flow

* Fix
2024-10-03 17:56:00 +02:00
epenet
c7739a7760
Align async_step_reconfigure type hints (#127450) 2024-10-03 17:54:51 +02:00
J. Nick Koston
41fcf58b80
Fix bluetooth tests to not create the same config entry twice (#127461) 2024-10-03 10:37:34 -05:00
Andrew Jackson
13e7af7762
Bump aiomealie to 0.9.3 (#127454) 2024-10-03 17:35:46 +02:00
Allen Porter
c38f23400c
Don't add the same config entry id twice in google tests (#127457)
Don't add the same config entry id twice in the test
2024-10-03 17:23:58 +02:00
Erik Montnemery
62b449e52c
Fix config entry unique_id collision in proximity (#127456) 2024-10-03 17:22:40 +02:00
starkillerOG
85ae66d276
Reolink auto add new cameras/chimes (#126268) 2024-10-03 16:51:27 +02:00
Stefan Agner
e15ae6bea3
Cancel listen task when setting the Matter fabric label fails (#127423)
When setting the Matter fabric label fails, the listen task should be
cancelled to prevent the task from running indefinitely.

Follow up for #127252.
2024-10-03 15:37:29 +02:00
epenet
bbf8a49ac8
Use reauth helpers in efergy config flow (#127447) 2024-10-03 15:31:16 +02:00
epenet
b95fc7e782
Use reauth helpers in ezviz config flow (#127448) 2024-10-03 15:29:18 +02:00
J. Nick Koston
7cd4f78767
Make go2rtc supported streams a frozenset (#127439)
Avoids the linear search of the tuple
2024-10-03 15:08:17 +02:00
epenet
49882112ac
Use async_update_reload_and_abort in bosch_shc config flow (#127436) 2024-10-03 14:41:07 +02:00
epenet
c957c7a515
Use reauth helpers in blue_current config flow (#127434)
* Use async_update_reload_and_abort in blue_current config flow

* Adjust
2024-10-03 14:40:12 +02:00
epenet
045d96cdd1
Use async_update_reload_and_abort in aseko_pool_live config flow (#127433)
* Use async_update_reload_and_abort in aseko_pool_live config flow

* block_till_done
2024-10-03 14:39:17 +02:00
epenet
a218f4adc3
Use reauth helpers in esphome config flow (#127419)
Use _get_reauth_entry in esphome config flow
2024-10-03 14:38:14 +02:00
epenet
9ba58233ec
Use reauth helpers in aosmith config flow (#127432)
Use async_update_reload_and_abort in aosmith config flow
2024-10-03 14:34:42 +02:00
Joost Lekkerkerker
4aedf662e9
Fix AMP block (#127424)
Fix Alexa block
2024-10-03 14:15:27 +02:00
epenet
59e486848c
Use async_update_reload_and_abort in airvisual (#127429)
Use async_update_reload_and_abort in arivisual
2024-10-03 14:14:48 +02:00
epenet
4cef435089
Use async_update_reload_and_abort in airvisual_pro (#127430) 2024-10-03 14:14:36 +02:00
epenet
d128ba544f
Use async_update_reload_and_abort in abode (#127426) 2024-10-03 14:14:17 +02:00
epenet
372a827ecd
Use _get_reauth_entry in devolo_home_network config flow (#127389) 2024-10-03 14:03:47 +02:00
Joost Lekkerkerker
0eec6447e4
Block Alexa Media Player v4.13.3 (#127412) 2024-10-03 13:43:48 +02:00
myztillx
13d72ac833
Bump python-ecobee-api to 0.2.20 (#127351)
Bump version of python-ecobee-api to support new features

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-03 12:50:12 +02:00
Stefan Agner
abf3da2fa1
Set default Matter fabric label (#127252) 2024-10-03 12:36:24 +02:00
G Johansson
df8269e772
Use async_update_reload_and_abort in Trafikverket Weather reauth flow (#127341) 2024-10-03 12:31:21 +02:00
Glenn Waters
19535b48ab
Bump elkm1_lib to 2.2.10 (#127344)
* Bump elk-lib to 2.2.9

* Bump elkm1_lib to 2.2.10

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-10-03 12:31:04 +02:00
TimL
da68c48723
Bump pysmlight 0.1.2 (#127376)
Co-authored-by: Tim Lunn <tim@feathertop.org>
2024-10-03 12:30:13 +02:00
epenet
44523168d7
Use _get_reauth_entry in caldav config flow (#127384) 2024-10-03 12:27:39 +02:00
Erik Montnemery
2b50f65c49
Store generic camera flow data in flow handler attributes (#127405) 2024-10-03 12:23:40 +02:00
epenet
14c2778558
Use _get_reauth_entry in devolo_home_control config flow (#127387)
Use _get_reauth_entry in devolo_home_network config flow
2024-10-03 12:21:42 +02:00
epenet
7878d2804f
Use _get_reauth_entry in discovergy config flow (#127390) 2024-10-03 12:21:17 +02:00
epenet
cef56bd7ef
Use _get_reauth_entry in doorbird config flow (#127391) 2024-10-03 12:20:59 +02:00
epenet
c02a3371d0
Use _get_reauth_entry in dormakaba_dkey config flow (#127392)
* Use _get_reauth_entry in dormakaba_dkey config flow

* Adjust
2024-10-03 12:18:15 +02:00
Brett Adams
c2c48bbc9c
Add missing number platform to init of Tesla Fleet (#127406)
Add number platform to init
2024-10-03 12:10:03 +02:00
raphaeleduardo42
131fdf6898
Add MOES Matter Light 1.0 to the blocklist for Matter transitions (#127345)
Update light.py

Fix MOES Matter Light 1.0 following #113775
2024-10-03 10:22:11 +02:00
epenet
a2e4de2d0d
Adjust type hints in androidtv_remote config_flow (#127162) 2024-10-03 10:21:53 +02:00
epenet
7d3d693fe8
Align config flow reconfigure step test helper with frontend (#127329)
* Align config flow reconfigure step with frontend

* Update common.py

* Update common.py

* Adjust

* Adjust

* Fix test

* Adjust
2024-10-03 10:21:23 +02:00
epenet
94df3e931a
Use _get_reauth_entry in bmw_connected_drive config flow (#127327) 2024-10-03 10:18:32 +02:00
epenet
2e225dfc3a
Use _get_reauth/reconfigure_entry in pyload (#127304) 2024-10-03 10:18:10 +02:00
epenet
409d7b3652
Use _get_reauth_entry in braviatv config flow (#127326) 2024-10-03 10:16:06 +02:00
epenet
c658dc0ffc
Correct reconfigure flows to get data from config entry (#127393)
Fetch entry data in async_step_reconfigure
2024-10-03 09:46:41 +02:00
Joost Lekkerkerker
13e4cd4a49
Remove unused translation keys from Tami4 (#127342) 2024-10-03 09:43:11 +02:00
epenet
609d410e6a
Use _get_reauth_entry in comelit config flow (#127386) 2024-10-03 09:31:44 +02:00
Robert Resch
04860ae1d2
Add go2rtc and extend camera integration for better WebRTC support (#124410) 2024-10-03 09:20:03 +02:00
Erik Montnemery
a0a90f03a8
Improve generic camera preview tests (#127382) 2024-10-03 09:13:54 +02:00
Erik Montnemery
be3a883c51
Store awair flow data in flow handler attributes (#127381) 2024-10-03 09:13:41 +02:00
G Johansson
0fde5c21b7
Add reconfigure flow to trafikverket_camera (#127355) 2024-10-03 01:25:47 +02:00
polgarc
c4cc9f8489
Add line numbers to swiss-public-transport (#127332)
* add line numbers

* keep only one line sensor

* fix unt tests
2024-10-03 01:25:17 +02:00
J. Nick Koston
ff7bc13058
Make numeric device classes a constant (#127354)
noticed this shows up on the profile every time the UI loads
2024-10-02 22:00:49 +02:00
epenet
ddea61148f
Use _get_reconfigure_entry in brother (#127279) 2024-10-02 21:56:26 +02:00
Stefan Agner
88ad7e98e0
Store instance name in Thread router discovery (#127253)
* Store instance name in Thread router discovery

Store the DNS-SD instance name in the Thread router discovery message.
The instance name is the actual name given to a Thread border router,
e.g. when configuring the name of a Thread border router in Apple Home
the name appears as the DNS-SD instance name. This will allow to make
the Thread border router list more user friendly.

* Use instance_name_from_service_info to get instance name
2024-10-02 21:41:55 +02:00
skynet01
a83d38a5fe
Add turn on and off function to lg_soundbar (#127022)
* Update media_player.py

Added support to toggle soundbars on and off

* Update homeassistant/components/lg_soundbar/media_player.py

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

* Fix complexity

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-10-02 21:04:14 +02:00
G Johansson
a3b1a30d06
Add reconfigure step to trafikverket weather (#127140)
* Add reconfigure step to trafikverket weather

* Use helper

* Fix

* Fix review comments
2024-10-02 21:04:00 +02:00
Steven Looman
f8b192bd94
Handle the correct exception type when subscribing to the router service returns an error in the upnp component (#127006)
* Catch the right exception when handling subscription errors

* Assert device is forced to poll
2024-10-02 20:55:25 +02:00
Erik Montnemery
4c6ab3921a
Store modern_forms flow data in flow handler attributes (#127175) 2024-10-02 19:59:44 +02:00
Erik Montnemery
1dc1fd421b
Use ConfigFlow.has_matching_flow to deduplicate tplink flows (#127164) 2024-10-02 19:59:24 +02:00
Erik Montnemery
fed953023d
Ensure homekit_controller config flow title_placeholders items are [str, str] (#127198) 2024-10-02 19:58:47 +02:00
epenet
5a4cdaf348
Use _get_reauth/reconfigure_entry in melcloud (#127302) 2024-10-02 19:50:00 +02:00
epenet
4d49cb2d18
Use _get_reconfigure_entry in waze_travel_time (#127314) 2024-10-02 19:49:38 +02:00
epenet
5759539e08
Use _get_reauth/reconfigure_entry in solarlog (#127310) 2024-10-02 19:49:15 +02:00
epenet
74441d2771
Use _get_reauth_entry in blue_current config flow (#127328) 2024-10-02 19:48:57 +02:00
epenet
da0ebbe57c
Use _get_reauth_entry in bthome config flow (#127323) 2024-10-02 19:44:54 +02:00
epenet
d8d392990d
Use _get_reauth_entry in brunt config flow (#127324) 2024-10-02 19:44:35 +02:00
Franck Nijhof
5db4a73d8e
2024.10.0 (#126782) 2024-10-02 19:41:46 +02:00
epenet
829af75416
Use _get_reauth_entry in bring config flow (#127325) 2024-10-02 19:36:32 +02:00
Franck Nijhof
acb0aeaa9a
Bump version to 2024.10.0 2024-10-02 19:17:08 +02:00
Michael Hansen
dc7c909316
Bump intents to 2024.10.2 (#127338) 2024-10-02 19:14:50 +02:00
Erik Montnemery
a052e15319
Bump pychromecast to 14.0.2 (#127333) 2024-10-02 19:12:56 +02:00
Paul Bottein
c306ebed49
Fix device id support for alarm control panel template (#127340) 2024-10-02 19:04:36 +02:00
Michael Hansen
301701176a
Bump intents to 2024.10.2 (#127338) 2024-10-02 18:58:31 +02:00
Erik Montnemery
2ab66f62fa
Bump pychromecast to 14.0.2 (#127333) 2024-10-02 17:18:59 +02:00
Franck Nijhof
a50b299a82
Bump version to 2024.10.0b12 2024-10-02 17:18:01 +02:00
Bram Kragten
a6808a8fda
Update frontend to 20241002.2 (#127331) 2024-10-02 17:16:58 +02:00
Bram Kragten
f5bd81e0d9
Update frontend to 20241002.2 (#127331) 2024-10-02 17:11:51 +02:00
Mark Grandi
c265c91ef2
Add protocol upload / download sensors to Deluge (#119203)
* Add Protocol Upload/Download for Deluge

* add unit test and fix typo in sensor.py

* remove unneeded import

* rename/unify the translation keys and entries in const.py

* split out const.py items into DelugeSensorType to avoid confusion with DelugeGetSessionStatusKeys

* change DelugeGetSessionStatusKeys to be a regular enum to satisfy mypy
2024-10-02 16:44:56 +02:00
starkillerOG
3184951625
Add sensor for total installations and integrations to Analytics Insights (#127248)
* Add sensor for total installations and integrations

* Fix tests

* Use pytest fixture
2024-10-02 16:25:27 +02:00
epenet
c6fa160c02
Use _get_reauth/reconfigure_entry in nam (#127303) 2024-10-02 16:13:24 +02:00
epenet
e2eb986c7c
Adjust reauth checks in august (#127320) 2024-10-02 16:13:02 +02:00
epenet
9219339762
Use _get_reauth/reconfigure_entry in shelly (#127308) 2024-10-02 16:12:45 +02:00
epenet
fac3d575c9
Use _get_reauth/reconfigure_entry in tedee (#127312) 2024-10-02 16:12:31 +02:00
epenet
db9257f9fa
Use _get_reauth_entry in airvisual_pro (#127318) 2024-10-02 16:03:45 +02:00
epenet
bb21c87852
Use _get_reauth_entry in aseko_pool_live (#127319) 2024-10-02 16:03:31 +02:00
epenet
f0df25f824
Use _get_reauth_entry in azure_devops config flow (#127321) 2024-10-02 16:03:18 +02:00
Franck Nijhof
7ac944c537
Bump version to 2024.10.0b11 2024-10-02 16:01:13 +02:00
Bram Kragten
7d3dd2dd6b
Update frontend to 20241002.1 (#127292) 2024-10-02 16:00:43 +02:00
Christopher Fenner
48538ef5d5
Fix climate entity in ViCare integration (#127128)
do not reset _attributes
2024-10-02 16:00:38 +02:00
Cyrill Raccaud
acd3710469
Bump swiss-public-transport requirement python-opendata-transport to 0.5.0 (#127306) 2024-10-02 15:42:04 +02:00
epenet
56e79de707
Use _get_reauth_entry in trafikverket_weatherstation (#127316) 2024-10-02 15:35:34 +02:00
epenet
781c3eed2f
Use _get_reconfigure_entry in vallox (#127313) 2024-10-02 15:29:42 +02:00
epenet
d0d8de94dc
Use _get_reconfigure_entry in tado (#127311) 2024-10-02 15:28:11 +02:00
epenet
4974202bb4
Use _get_reconfigure_entry in smhi (#127309) 2024-10-02 15:17:45 +02:00
epenet
2dce115732
Use _get_reconfigure_entry in lcn (#127299) 2024-10-02 15:03:32 +02:00
epenet
ce1d4282db
Use _get_reconfigure_entry in madvr (#127300) 2024-10-02 15:03:18 +02:00
epenet
befc730769
Use _get_reauth/reconfigure_entry in mealie (#127301)
Use _get_reconfigure_entry in mealie
2024-10-02 14:53:48 +02:00
epenet
3f7c6055d4
Use _get_reauth/reconfigure_entry in lamarzocco (#127298) 2024-10-02 14:33:29 +02:00
epenet
5ed7efb01d
Use _get_reconfigure_entry in here_travel_time (#127294) 2024-10-02 14:31:45 +02:00
epenet
f0f924a0a2
Use _get_reconfigure_entry in holiday (#127295) 2024-10-02 14:31:19 +02:00
epenet
a19a069b21
Use _get_reconfigure_entry in jewish_calendar (#127297) 2024-10-02 14:30:55 +02:00
epenet
a43bfdef1d
Use _get_reconfigure_entry in homeworks (#127296) 2024-10-02 14:30:17 +02:00
epenet
7994729742
Adjust type hints in goalzero config_flow (#127270) 2024-10-02 14:26:26 +02:00
epenet
f24523e93b
Adjust type hints in konnected config_flow (#127276) 2024-10-02 14:25:09 +02:00
hopkins-tk
98a8430f26
Add electrolyzer data to Aseko Pool Live (#127249) 2024-10-02 14:24:39 +02:00
epenet
273795b025
Use _get_reconfigure_entry in feedreader (#127282) 2024-10-02 14:23:42 +02:00
epenet
f6c7ade579
Use _get_reauth/reconfigure_entry in fritzbox (#127284) 2024-10-02 14:23:24 +02:00
epenet
84a4fe7b03
Use _get_reconfigure_entry in google_travel_time (#127285) 2024-10-02 14:22:40 +02:00
epenet
583ce7dc46
Use _get_reauth/reconfigure_entry in enphase_envoy (#127281)
* Use _get_reauth/reconfigure_entry in enphase_envoy

* Adjust
2024-10-02 14:22:16 +02:00
Erik Montnemery
81d7d2a70a
Ensure braviatv config flow title_placeholders items are [str, str] (#127287) 2024-10-02 14:20:55 +02:00
Erik Montnemery
689372b572
Ensure keenetic_ndms2 config flow title_placeholders items are [str, str] (#127289) 2024-10-02 14:20:39 +02:00
Erik Montnemery
083be5d0a5
Ensure songpal config flow title_placeholders items are [str, str] (#127290) 2024-10-02 14:20:16 +02:00
Erik Montnemery
4726dc96d4
Ensure directv config flow title_placeholders items are [str, str] (#127288) 2024-10-02 14:19:23 +02:00
Bram Kragten
3308de95f0
Update frontend to 20241002.1 (#127292) 2024-10-02 14:18:28 +02:00
Marc Mueller
ea115e0481
Fix telegram_bot tests for Python 3.13 (#127293) 2024-10-02 14:15:01 +02:00
Erik Montnemery
2fdde24024
Remove the Google Domains integration (#127278) 2024-10-02 13:58:19 +02:00
epenet
d21d6c2e4a
Use _get_reauth/reconfigure_entry in fritz (#127283) 2024-10-02 13:21:21 +02:00
Erik Montnemery
4c1863d318
Ensure lookin config flow title_placeholders items are [str, str] (#127200) 2024-10-02 13:05:08 +02:00
Erik Montnemery
b8a00bfbfb
Ensure motionblinds_ble config flow title_placeholders items are [str, str] (#127201)
* Ensure motionblinds_ble config flow title_placeholders items are [str, str]

* Tweak
2024-10-02 13:04:52 +02:00
Marc Mueller
4cd6813d16
Update mypy-dev to 1.12.0a5 (#127181)
* Update mypy-dev to 1.12.0a5

* Fix enable_incomplete_feature

* Fix vlc_telnet

* Fix deconz
2024-10-02 12:00:59 +02:00
epenet
21266e1c68
Add config_flow helper to get reauth/reconfigure config entry (#127115)
* Add config_flow helper to get config entry from context

* Simplify

* Apply to aussie_broadband

* Another example

* Rename and adjust docstring

* Simplify

* Add test

* Refactor to hide context

* Raise

* Improve coverage

* Use AttributeError

* Use ValueError

* Raise UnknownEntry
2024-10-02 12:00:07 +02:00
starkillerOG
201b8d9ebf
Bump python-homeassistant-analytics to 0.8.0 (#127271) 2024-10-02 11:29:54 +02:00
Erik Montnemery
2440023dd7
Ensure dlna_dms config flow title_placeholders items are [str, str] (#127192) 2024-10-02 11:28:21 +02:00
Christopher Fenner
5f3e70f915
Fix climate entity in ViCare integration (#127128)
do not reset _attributes
2024-10-02 11:25:04 +02:00
Franck Nijhof
5365439fd4
Bump version to 2024.10.0b10 2024-10-02 10:52:33 +02:00
Erik Montnemery
9c28a4e8a0
Make recorder WS command recorder/clear_statistics wait (#127120) 2024-10-02 10:51:30 +02:00
Bram Kragten
565203047c
Update frontend to 20241002.0 (#127264) 2024-10-02 10:50:39 +02:00
Erik Montnemery
b9795a2ae7
Make recorder WS command recorder/update_statistics_metadata wait (#127179) 2024-10-02 10:50:35 +02:00
Erik Montnemery
3f1acdc9ec
Make recorder WS command recorder/clear_statistics wait (#127120) 2024-10-02 10:43:40 +02:00
Bram Kragten
f053e5ca38
Update frontend to 20241002.0 (#127264) 2024-10-02 10:43:01 +02:00
epenet
9873371413
Use start_reconfigure_flow in config flow tests (#127191)
* Use start_reconfigure_flow in config flow tests

* Adjust fritz
2024-10-02 10:01:15 +02:00
Erik Montnemery
2a2af01d12
Make recorder WS command recorder/update_statistics_metadata wait (#127179) 2024-10-02 09:56:36 +02:00
Franck Nijhof
4e4f8ee3a4
Bump version to 2024.10.0b9 2024-10-02 09:26:37 +02:00
Martin Hjelmare
b8fd921c81
Revert "Support Z-Wave JS dimming lights using color intensity (#122639)" (#127256)
This reverts commit c7cfd56b72.
2024-10-02 09:26:28 +02:00
Teemu R.
fcf91954ff
Remove codefences from issue titles (#127254) 2024-10-02 09:26:25 +02:00
Michael Hansen
49708196ac
Run unsubscribe callbacks when Assist satellite entity is removed from HA (#127234)
* Unsubscribe when removed from HA

* Use builtin async_on_remove
2024-10-02 09:26:22 +02:00
functionpointer
8c8a2eef21
Fix Tibber get_prices when called with aware datetime (#123289)
* Tibber: Add extra test to expose aware/naive datetime issue

* Tibber: Fix get_prices action not working with aware datetimes

* Tibber: Simplify comparison

* Tibber: Combine timezone tests into single parametrized one

* Tibber: Split test again to prevent if statement
2024-10-02 09:26:15 +02:00
dependabot[bot]
7790bb528c
Bump codecov/codecov-action from 4.5.0 to 4.6.0 (#127259)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-02 09:17:21 +02:00
functionpointer
5bd2d27488
Fix Tibber get_prices when called with aware datetime (#123289)
* Tibber: Add extra test to expose aware/naive datetime issue

* Tibber: Fix get_prices action not working with aware datetimes

* Tibber: Simplify comparison

* Tibber: Combine timezone tests into single parametrized one

* Tibber: Split test again to prevent if statement
2024-10-02 08:43:31 +02:00
Teemu R.
cd090ff000
Remove codefences from issue titles (#127254) 2024-10-02 08:27:52 +02:00
Erik Montnemery
47985a589e
Ensure frontier_silicon config flow title_placeholders items are [str, str] (#127197) 2024-10-02 08:26:51 +02:00
Erik Montnemery
375d47ee3a
Use ConfigFlow.has_matching_flow to deduplicate yeelight flows (#127165) 2024-10-02 08:25:46 +02:00
Martin Hjelmare
e3e68dad36
Revert "Support Z-Wave JS dimming lights using color intensity (#122639)" (#127256)
This reverts commit c7cfd56b72.
2024-10-02 06:48:47 +02:00
Michael Hansen
40dbfab671
Run unsubscribe callbacks when Assist satellite entity is removed from HA (#127234)
* Unsubscribe when removed from HA

* Use builtin async_on_remove
2024-10-01 23:58:47 +02:00
epenet
46405d7738
Improve type hints in config_flow reconfigure step (#127224) 2024-10-01 22:21:54 +02:00
Erik Montnemery
905ac20205
Ensure flux_led config flow title_placeholders items are [str, str] (#127196) 2024-10-01 22:21:12 +02:00
Franck Nijhof
749a5b37c9
Bump version to 2024.10.0b8 2024-10-01 22:14:57 +02:00
epenet
60079a14e7
Update log error message for Samsung TV (#127231) 2024-10-01 22:14:50 +02:00
Erik Montnemery
df6edd09c0
Don't create statistics issues when sensor is unavailable or unknown (#127226) 2024-10-01 22:14:47 +02:00
epenet
88ff94dd69
Use reconfigure_confirm in bryant_evolution config flow (#127222) 2024-10-01 22:14:44 +02:00
epenet
067b81a60b
Use reconfigure_confirm in enphase_envoy config flow (#127221) 2024-10-01 22:14:40 +02:00
epenet
03553b8bb9
Use reconfigure_confirm in homeworks config flow (#127218)
* Use reconfigure_confirm in homeworks config flow

* Fix tests
2024-10-01 22:14:37 +02:00
Franck Nijhof
bce7552d4d
Update gotailwind to 0.2.4 (#127129) 2024-10-01 22:14:34 +02:00
Russell Cloran
53a2777831
Update prometheus-client to 0.21.0 (#126965) 2024-10-01 22:14:31 +02:00
Bill Flood
507492947a
Fix Tailwind cover exception when door is already in the requested state (#124543) 2024-10-01 22:14:27 +02:00
Erik Montnemery
6d65d6bcf6
Don't create statistics issues when sensor is unavailable or unknown (#127226) 2024-10-01 22:08:48 +02:00
epenet
f4ab741445
Use reconfigure_confirm in bryant_evolution config flow (#127222) 2024-10-01 22:08:14 +02:00
epenet
c1fa3d99f3
Update log error message for Samsung TV (#127231) 2024-10-01 22:06:56 +02:00
Erik Montnemery
fcc0eba7fb
Ensure enphase_envoy config flow title_placeholders items are [str, str] (#127193) 2024-10-01 22:04:46 +02:00
Erik Montnemery
d7da3de096
Store openhome flow data in flow handler attributes (#127176) 2024-10-01 22:04:28 +02:00
Bouwe Westerdijk
0616bc7fec
Improve / clean up Plugwise config_flow code (#127238) 2024-10-01 21:52:16 +02:00
Bill Flood
dd478fe681
Fix Tailwind cover exception when door is already in the requested state (#124543) 2024-10-01 20:51:12 +02:00
Artur Pragacz
c175a68a26
Skip unnecessary checks for entities with unique_id (#125051) 2024-10-01 11:27:14 -05:00
Artur Pragacz
98a86c7636
Improve code of normalized name registry (#125282) 2024-10-01 11:20:52 -05:00
Erik Montnemery
4060705d87
Use ConfigFlow.has_matching_flow to deduplicate samsungtv flows (#127235) 2024-10-01 17:56:38 +02:00
Erik Montnemery
1c11229510
Ensure overkiz config flow title_placeholders items are [str, str] (#127203) 2024-10-01 16:21:56 +02:00
Erik Montnemery
7129868a56
Remove custom flow deduplication logic from guardian (#127159) 2024-10-01 16:20:47 +02:00
epenet
4a6e3e0f5a
Simplify reconfigure step in axis config flow (#127225) 2024-10-01 15:57:50 +02:00
Robert Resch
b6a0a36d4e
Bump uv to 0.4.17 (#127223) 2024-10-01 15:56:18 +02:00
epenet
3b7ae1639c
Use reconfigure_confirm in homeworks config flow (#127218)
* Use reconfigure_confirm in homeworks config flow

* Fix tests
2024-10-01 15:17:50 +02:00
epenet
3fb7547d4d
Use reconfigure_confirm in enphase_envoy config flow (#127221) 2024-10-01 15:11:37 +02:00
Franck Nijhof
41b3eb9f79
Bump version to 2024.10.0b7 2024-10-01 14:54:05 +02:00
epenet
f2c746122e
Use reconfigure_confirm in google_travel_time config flow (#127220) 2024-10-01 14:53:39 +02:00
epenet
e25a54aef4
Use reconfigure_confirm in lcn config flow (#127217) 2024-10-01 14:53:36 +02:00
epenet
5c42e45048
Fix reconfigure_confirm logic in madvr config flow (#127216) 2024-10-01 14:53:32 +02:00
epenet
c8b92bc858
Use reconfigure_confirm in solarlog config flow (#127215)
* Use reconfigure_confirm in solarlog config flow

* Fix test
2024-10-01 14:53:29 +02:00
epenet
9d059fcfaa
Use reconfigure_confirm in vallox config flow (#127214) 2024-10-01 14:53:26 +02:00
Martin Hjelmare
ce5f193219
Fix Z-Wave rediscovery (#127213) 2024-10-01 14:53:22 +02:00
Erik Montnemery
92023ecbe6
Update assist_satellite connection test sound (#127183) 2024-10-01 14:53:19 +02:00
cdnninja
1e0164a96a
Allows unload when unsupported devices vesync (#127153)
Allows unload when unsupported devices
2024-10-01 14:53:15 +02:00
Russell Cloran
10c0633af9
Update prometheus-client to 0.21.0 (#126965) 2024-10-01 14:52:54 +02:00
G Johansson
6f5eac3143
Add config flow validation that calibration factor is not zero (#127136)
* Add config flow validation that calibration factor is not zero

* Add test
2024-10-01 14:50:10 +02:00
Nerdix
60dfccb747
Roborock fix "selected map" when first map in list is selected (#127126)
* avoid None when current_map = 0

* combine statements
2024-10-01 14:46:41 +02:00
Erik Montnemery
3460f460d1
Ensure octoprint config flow title_placeholders items are [str, str] (#127202) 2024-10-01 14:42:54 +02:00
Martin Hjelmare
bb70a0feb2
Fix Z-Wave rediscovery (#127213) 2024-10-01 14:42:31 +02:00
epenet
44eb4e0c9e
Use reconfigure_confirm in google_travel_time config flow (#127220) 2024-10-01 14:41:15 +02:00
Erik Montnemery
97bbad7471
Ensure ezviz config flow title_placeholders items are [str, str] (#127194) 2024-10-01 14:40:12 +02:00
Erik Montnemery
df6370dd61
Ensure ovo_energy config flow title_placeholders items are [str, str] (#127204) 2024-10-01 14:33:40 +02:00
Erik Montnemery
ee8f4a5367
Ensure powerwall config flow title_placeholders items are [str, str] (#127205) 2024-10-01 14:33:05 +02:00
Erik Montnemery
a5135cf2c3
Ensure radiotherm config flow title_placeholders items are [str, str] (#127206) 2024-10-01 14:32:52 +02:00
Erik Montnemery
41932b4501
Ensure soundtouch config flow title_placeholders items are [str, str] (#127207) 2024-10-01 14:32:40 +02:00
Erik Montnemery
028d1c6148
Ensure tesla_wall_connector config flow title_placeholders items are [str, str] (#127208) 2024-10-01 14:32:18 +02:00
Erik Montnemery
1efe418e05
Avoid mutating title_placeholders in reolink (#127209) 2024-10-01 14:32:02 +02:00
Erik Montnemery
4251ee1229
Remove unused title_placeholders from plugwise (#127211) 2024-10-01 14:31:49 +02:00
Erik Montnemery
95a79130a2
Add missing None-check in roomba config flow (#127212) 2024-10-01 14:31:35 +02:00
Erik Montnemery
e2518ab4d7
Avoid mutating title_placeholders in synology_dsm (#127210) 2024-10-01 14:31:13 +02:00
epenet
9d557f47b7
Use reconfigure_confirm in lcn config flow (#127217) 2024-10-01 14:29:31 +02:00
epenet
c654d3283e
Use reconfigure_confirm in vallox config flow (#127214) 2024-10-01 14:25:32 +02:00
epenet
8e6b6269a7
Fix reconfigure_confirm logic in madvr config flow (#127216) 2024-10-01 14:25:14 +02:00
epenet
a2404e7fb8
Use reconfigure_confirm in solarlog config flow (#127215)
* Use reconfigure_confirm in solarlog config flow

* Fix test
2024-10-01 14:24:44 +02:00
epenet
6321978f75
Adjust type hints in devialet config_flow (#127185) 2024-10-01 12:49:52 +02:00
Erik Montnemery
448dd61684
Ensure dlna_dmr config flow title_placeholders items are [str, str] (#127189) 2024-10-01 12:49:31 +02:00
Erik Montnemery
a3513b24ec
Avoid mutating title_placeholders in devolo_home_network (#127188) 2024-10-01 12:48:41 +02:00
epenet
57905efcd3
Adjust type hints in ezviz config_flow (#127186) 2024-10-01 12:26:59 +02:00
Erik Montnemery
3052eca564
Remove unused custom flow context key 'name' from wyoming (#127182) 2024-10-01 12:25:39 +02:00
Erik Montnemery
120f4adf35
Update assist_satellite connection test sound (#127183) 2024-10-01 12:25:06 +02:00
epenet
b95dfe2b00
Add test helper for starting reconfiguration flow (#127154) 2024-10-01 12:18:07 +02:00
cdnninja
f02f0eae59
Allows unload when unsupported devices vesync (#127153)
Allows unload when unsupported devices
2024-10-01 12:16:06 +02:00
Allen Porter
c5ebd53079
Add a working location google calendar entity (#127016) 2024-10-01 12:14:23 +02:00
Nerdix
963b9d9a83
Roborock fix "selected map" when first map in list is selected (#127126)
* avoid None when current_map = 0

* combine statements
2024-10-01 12:13:11 +02:00
Christopher Fenner
5bf5545394
Change ViCare dependency back to original one (#127168)
switch dependency back
2024-10-01 11:21:50 +02:00
epenet
2659097010
Adjust type hints in aosmith config_flow (#127160) 2024-10-01 11:21:22 +02:00
epenet
5f1470af9f
Adjust type hints in alarmdecoder config_flow (#127161) 2024-10-01 11:21:10 +02:00
Erik Montnemery
4ceff8cabf
Use ConfigFlow.has_matching_flow to deduplicate lifx flows (#127163) 2024-10-01 11:20:50 +02:00
Erik Montnemery
b12f3e5aff
Store huawei_lte flow data in flow handler attributes (#127173) 2024-10-01 11:18:57 +02:00
Erik Montnemery
f0b57e2873
Store smappee flow data in flow handler attributes (#127178) 2024-10-01 11:17:20 +02:00
Erik Montnemery
f71baf3c73
Store keenetic_ndms2 flow data in flow handler attributes (#127174) 2024-10-01 11:16:40 +02:00
Erik Montnemery
d9bba25f67
Store toon flow data in flow handler attributes (#127180) 2024-10-01 11:15:54 +02:00
Erik Montnemery
eb1fe93a59
Store devolo_home_network flow data in flow handler attributes (#127169) 2024-10-01 11:15:34 +02:00
Erik Montnemery
825bce32b5
Store fully_kiosk flow data in flow handler attributes (#127172) 2024-10-01 11:11:48 +02:00
Erik Montnemery
36df9e0464
Store ezviz flow data in flow handler attributes (#127171) 2024-10-01 11:11:21 +02:00
Erik Montnemery
46480c5624
Store esphome flow data in flow handler attributes (#127170) 2024-10-01 11:10:38 +02:00
Erik Montnemery
73fad671ed
Store arcam_fmj flow data in flow handler attributes (#127166) 2024-10-01 11:09:29 +02:00
epenet
0d9f2aee70
Fix incorrect type hint in zwave_js config flow (#127158) 2024-10-01 10:20:01 +02:00
dependabot[bot]
805c717013
Bump github/codeql-action from 3.26.9 to 3.26.10 (#127157) 2024-10-01 09:15:47 +02:00
dependabot[bot]
9fcb1da06b
Bump docker/build-push-action from 6.8.0 to 6.9.0 (#127156) 2024-10-01 09:15:26 +02:00
epenet
dcb6c9a133
Adjust type hints in zwave_js config flow (#127104) 2024-09-30 21:42:16 +02:00
G Johansson
edcb4eca22
Use async_update_reload_and_abort in Trafikverket Camera (#127137) 2024-09-30 21:30:53 +02:00
G Johansson
de6ca56504
Add config flow validation that calibration factor is not zero (#127136)
* Add config flow validation that calibration factor is not zero

* Add test
2024-09-30 21:30:28 +02:00
G Johansson
fdd9fca5b3
Fix naming and docstring in yale_smart_alarm select (#127141) 2024-09-30 21:22:55 +02:00
Joost Lekkerkerker
10805805fe
Add devices to Withings (#126853) 2024-09-30 21:06:51 +02:00
Franck Nijhof
e9dc09755e
Bump version to 2024.10.0b6 2024-09-30 20:51:44 +02:00
G Johansson
1ce2b18aaf
Allow negative calibration factor in mold_indicator (#127133) 2024-09-30 20:51:34 +02:00
Franck Nijhof
abd351e326
Update RestrictedPython to 7.3 (#127130) 2024-09-30 20:51:31 +02:00
starkillerOG
d3e6069095
Mark Reolink camera entities as unavailable when camera is offline (#127127)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2024-09-30 20:51:28 +02:00
Bram Kragten
f0c3900842
Update frontend to 20240930.0 (#127125) 2024-09-30 20:51:25 +02:00
Martin Hjelmare
25247de6a6
Bump zwave-js-server-python to 0.58.1 (#127114)
* Bump zwave-js-server-python to 0.58.1

* Update tests
2024-09-30 20:51:21 +02:00
G Johansson
05288dad51
Allow negative calibration factor in mold_indicator (#127133) 2024-09-30 20:50:32 +02:00
Franck Nijhof
053ff33ef9
Update RestrictedPython to 7.3 (#127130) 2024-09-30 19:53:38 +02:00
Franck Nijhof
c97f1baa2b
Update gotailwind to 0.2.4 (#127129) 2024-09-30 19:52:11 +02:00
starkillerOG
0f4c50e83c
Mark Reolink camera entities as unavailable when camera is offline (#127127)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2024-09-30 19:00:37 +02:00
Martin Hjelmare
0a99c1c633
Bump zwave-js-server-python to 0.58.1 (#127114)
* Bump zwave-js-server-python to 0.58.1

* Update tests
2024-09-30 18:35:14 +02:00
Bram Kragten
d6ae47a0de
Update frontend to 20240930.0 (#127125) 2024-09-30 18:28:03 +02:00
Darren Griffin
b258e6464d
Add Open Home Foundation logo to README (#127111)
* Added Open Home Foundation logo to README

* Remove legacy reference to OHF website

* Add alt text to OHF logo
2024-09-30 16:49:30 +02:00
epenet
86a95013b6
Use start_reauth_flow helper in ezviz and netatmo tests (#127100)
* Use start_reauth_flow helper in netatmo tests

* Use start_reauth_flow helper in ezviz tests
2024-09-30 16:38:34 +02:00
Christopher Fenner
636cba5d6b
Add hotwater storage sensors to ViCare integration (#126570)
add sensors for hotwater storage
2024-09-30 16:37:50 +02:00
Sven Sager
74931071de
Use scheduled current preset (if set), when setting HVAC mode in AVM Fritz!Smarthome (#126044)
* Use temperature of current preset when set fritz HVAC mode to HEAT

If the HVAC mode of the Fritzbox thermostats changes from `HVACMode.OFF`
to `HVAMode.HEAT`, the current preset (COMFORT / ECO) should be
observed. Depending on the status of the current preset, the set
temperature of comfort / eco is set as the new temperature.

* fixup do not use value_scheduled_preset

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>

* Add current_preset value to test_set_hvac_mode

The current_preset parameter allows the mock to be set to an active
preset. When setting HVACMode.HEAT, the respective temperature of the
ECO/COMFORT preset should be set.

* fixup Use the updated value_scheduled_preset function

To distinguish which temperature should be used when setting the
`HVAMode.HEAT`, `value_schedules_preset` is now used again, which has
been updated since the first commit. If no schedule is active, the
comfort_temperature is used. Otherwise, the respective temperature of
the current preset.

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>

---------

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2024-09-30 16:29:39 +02:00
epenet
c92169cb20
Use a generic string as default description placeholder in workday config_flow (#127112) 2024-09-30 15:57:37 +02:00
IceBotYT
927813ab3b
Raise HomeAssistantError in entity action calls in Nice G.O. (#126439) 2024-09-30 15:36:10 +02:00
epenet
060268747c
Add default description placeholder in workday config_flow (#127110) 2024-09-30 15:35:01 +02:00
epenet
47c953209d
Adjust type hints in insteon config_flow (#127108) 2024-09-30 15:32:37 +02:00
epenet
16df3eb995
Adjust type hints in wilight config_flow (#127107) 2024-09-30 15:29:52 +02:00
epenet
454fb30759
Adjust type hints in enphase_envoy config_flow (#127106) 2024-09-30 15:29:25 +02:00
epenet
4e157c2999
Adjust type hints in zha config flow (#127105) 2024-09-30 15:20:20 +02:00
epenet
d96fd518e7
Use HassKey in azure_data_explorer (#127087)
* Use HassKey in azure_data_explorer

* Adjust tests

* Adjust

* Remove test
2024-09-30 14:45:37 +02:00
epenet
07fa1fa771
Move monzo test (#127101)
* Move monzo test

* Update tests/components/monzo/test_init.py
2024-09-30 14:43:23 +02:00
Christopher Fenner
404b3fcd03
Add support for room sensors in ViCare integration (#125243)
* Add room sensors

* set humidity device class

* add labels

* Create RoomSensor2.json

* Create RoomSensor1.json

* Update conftest.py

* Create test_sensor.py

* enable E3_RoomSensor

* use setup_integration

* fix ruff findings

* add test case

* fix entity id

* Apply suggestions from code review

* update

* fix findings

* reuse labels

* Apply suggestions from code review

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

* Apply suggestions from code review

* fix test snapshot

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-30 14:32:04 +02:00
epenet
e1db5f3cac
Use start_reauth_flow helper in switcher_kis tests (#127098) 2024-09-30 15:28:33 +03:00
epenet
4bb768f39c
Add test for start_reauth_flow test helper (#127093)
* Improve docstring in start_reauth_flow

* Add test

* Make private

* Make fully private until actually needed
2024-09-30 14:28:13 +02:00
Franck Nijhof
f3a72dda7b
Bump version to 2024.10.0b5 2024-09-30 14:14:01 +02:00
Joost Lekkerkerker
b6af6ddea2
Bump yt-dlp to 2024.09.27 (#127096) 2024-09-30 14:05:12 +02:00
Joost Lekkerkerker
a2cd17ef0a
Make Laundrify unique id a string (#127092) 2024-09-30 14:05:08 +02:00
Simon Goodall
b8ed449944
Check "status" is present before access during device update (#127091) 2024-09-30 14:05:05 +02:00
Matthias Alphart
dc79299301
Update xknxproject to 3.8.0 (#127072) 2024-09-30 14:05:02 +02:00
Luca Dibattista
fa295b93a7
Fix Roomba help URL (#127065)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-09-30 14:04:58 +02:00
J. Nick Koston
725c361e9c
Add missing OUI to august (#127064) 2024-09-30 14:04:55 +02:00
Jon Caruana
a8f25b1b93
Bump pylitejet to 0.6.3 (#127063) 2024-09-30 14:04:51 +02:00
Kevin Stillhammer
3ee85b3356
Clarify excl/incl filter functionality for waze_travel_time (#127056) 2024-09-30 14:04:48 +02:00
J. Nick Koston
22c85bf5f7
Fix removing nulls when encoding events for PostgreSQL (#127053) 2024-09-30 14:04:45 +02:00
Shai Ungar
0a18838fb0
Fix timestamp isoformat in seventeentrack (#127052)
fix timestamp isoformat
2024-09-30 14:04:41 +02:00
Shai Ungar
62629a0b34
Fix repair when integration does not exist (#127050) 2024-09-30 14:04:38 +02:00
Allen Porter
b42848fd7a
Bump gcal_sync to 6.1.5 (#127049) 2024-09-30 14:04:34 +02:00
Franck Nijhof
9070806172
Update ical to 8.2.0 (#126954) 2024-09-30 14:04:31 +02:00
Allen Porter
4e11797d72
Update local_calendar/todo to avoid blocking in the event loop (#127048) 2024-09-30 14:01:12 +02:00
Michael
8f47b63762
Bump py-synologydsm-api to 2.5.3 (#127035) 2024-09-30 14:01:08 +02:00
Jan Bouwhuis
daa13235e6
Allow null / None value for non numeric mqtt sensor without warnings (#127032)
Allow `null` / `None` value for mqtt sensor without warnings
2024-09-30 14:01:04 +02:00
J. Nick Koston
084c2d976e
Bump anyio to 4.6.0 (#127013) 2024-09-30 14:01:00 +02:00
Michael Hansen
75363b609b
Don't log voice assistant config timeout error (#127010)
Don't log config timeout error
2024-09-30 14:00:56 +02:00
J. Nick Koston
8d09982f3b
Bump aiohttp to 3.10.8 (#127009)
changelog: https://github.com/aio-libs/aiohttp/compare/v3.10.7...v3.10.8

Fixes a long standing cancellation leak on timeout
2024-09-30 14:00:51 +02:00
Paulus Schoutsen
aa5e8eaf19
Exclude Text-to-Speech cache from backups (#127001)
Text-to-speech cache doesn't need to be included in backups.
2024-09-30 14:00:43 +02:00
G Johansson
fc97eb8151
Workday raise issues only to next year (#126997)
* Workday - raise issues only for current and next year

* variable
2024-09-30 14:00:24 +02:00
G Johansson
a68d7c9b9d
Add unique id to mold_indicator (#126990) 2024-09-30 13:59:18 +02:00
Joost Lekkerkerker
730012edfd
Bump yt-dlp to 2024.09.27 (#127096) 2024-09-30 13:25:17 +02:00
Joost Lekkerkerker
352987db7e
Make Laundrify unique id a string (#127092) 2024-09-30 13:21:20 +02:00
G Johansson
92a6f231a9
Workday raise issues only to next year (#126997)
* Workday - raise issues only for current and next year

* variable
2024-09-30 13:08:58 +02:00
G Johansson
a44bf164e5
Add select volume to yale_smart_alarm (#127005) 2024-09-30 12:55:09 +02:00
Allen Porter
5cc8cfb209
Update local_calendar/todo to avoid blocking in the event loop (#127048) 2024-09-30 12:51:41 +02:00
Jan Bouwhuis
f99b7d8b78
Start mqtt integration discovery config flow only once if config has not changed (#126966)
* Start mqtt integration config flow only once

* Remember last config message

* Filter out instead of unsubscribing the intehration discovery topic

* Follow up comments from code review
2024-09-30 12:44:40 +02:00
Erik Montnemery
e8fd97e355
Fix stale docstring in loader.USBMatcher (#127094) 2024-09-30 12:42:04 +02:00
Simon Goodall
5e64caa225
Check "status" is present before access during device update (#127091) 2024-09-30 12:06:48 +02:00
rappenze
0672e1a1ea
Add power sensor detection in fibaro integration (#126964)
* Add power sensor detection in fibaro integration

* Better solution plus test

* Update homeassistant/components/fibaro/sensor.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-30 12:01:27 +02:00
epenet
2deab9e0c2
Do not store apache kafka in hass.data (#127090) 2024-09-30 12:01:13 +02:00
Jan Schneider
ebe4ed99b5
Add is_opening and is_closing properties to VeluxCover (#127038) 2024-09-30 11:46:47 +02:00
Shai Ungar
dce51b02c8
Fix timestamp isoformat in seventeentrack (#127052)
fix timestamp isoformat
2024-09-30 11:45:54 +02:00
epenet
70d4ee93f5
Use HassKey in azure_event_hub (#127086) 2024-09-30 11:45:02 +02:00
epenet
34a4372190
Use HassKey in analytics (#127089) 2024-09-30 11:44:27 +02:00
epenet
301543d3d0
Use config entry runtime_data in atag (#127084) 2024-09-30 11:06:07 +02:00
epenet
c3c2bc51c5
Use config entry runtime_data in aussie broadband (#127083) 2024-09-30 11:04:08 +02:00
epenet
40f808e9be
Use config entry runtime_data in azure event hub (#127082) 2024-09-30 10:22:12 +02:00
epenet
3caf6c0e31
Move atag coordinator to separate class (#127071) 2024-09-30 10:21:04 +02:00
Matthias Alphart
36a0c1b514
Update xknxproject to 3.8.0 (#127072) 2024-09-30 10:18:46 +02:00
epenet
e128751e64
Use config entry runtime_data in aurora_abb_powerone (#127075) 2024-09-30 10:15:18 +02:00
epenet
fae1efc237
Move aussie broadband coordinator to separate class (#127081) 2024-09-30 10:14:04 +02:00
epenet
dec03d4d25
Use config entry runtime_data in awair (#127073) 2024-09-30 10:11:21 +02:00
epenet
064bbab3f5
Use config entry runtime_data in aseko_pool_live (#127077) 2024-09-30 10:10:34 +02:00
epenet
f03e81544e
Use config entry runtime_data in aprilaire (#127079) 2024-09-30 10:09:21 +02:00
epenet
4c8027aefa
Use config entry runtime_data in android ip webcam (#127080) 2024-09-30 10:08:04 +02:00
epenet
dbecd7a99c
Use config entry runtime_data in arve (#127078) 2024-09-30 10:06:16 +02:00
dependabot[bot]
b035649c75
Bump docker/build-push-action from 6.7.0 to 6.8.0 (#127070)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-30 09:25:28 +02:00
Shai Ungar
97ab595e20
Fix repair when integration does not exist (#127050) 2024-09-30 09:17:44 +02:00
epenet
20d4031ed4
Use HassKey in application_credentials (#127069)
Use HassKey in application_credentials
2024-09-30 09:17:33 +02:00
Allen Porter
812be801ce
Bump gcal_sync to 6.1.5 (#127049) 2024-09-30 09:11:31 +02:00
Luca Dibattista
672a7ca740
Fix Roomba help URL (#127065)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-09-30 09:10:54 +02:00
G Johansson
0b3d69aa8e
Add unique id to mold_indicator setup from yaml (#126992) 2024-09-30 09:02:43 +02:00
J. Nick Koston
e87542e091
Fix removing nulls when encoding events for PostgreSQL (#127053) 2024-09-30 09:01:41 +02:00
MarkGodwin
e9bbf773d6
Switch oamda to use a strongly typed config entry (#127044) 2024-09-30 08:58:19 +02:00
Kevin Stillhammer
68e8c968a8
Clarify excl/incl filter functionality for waze_travel_time (#127056) 2024-09-30 08:57:06 +02:00
Jon Caruana
a3f12329b3
Bump pylitejet to 0.6.3 (#127063) 2024-09-30 08:36:30 +02:00
J. Nick Koston
f5ef213842
Add missing OUI to august (#127064) 2024-09-30 08:34:41 +02:00
Jan Bouwhuis
b573e5a2b3
Allow null / None value for non numeric mqtt sensor without warnings (#127032)
Allow `null` / `None` value for mqtt sensor without warnings
2024-09-30 07:05:12 +02:00
Marc Mueller
17c3e7b238
Update grpcio constraints to 1.66.2 (#127026) 2024-09-30 07:02:00 +02:00
Michael
9921a67a05
Bump py-synologydsm-api to 2.5.3 (#127035) 2024-09-29 10:12:27 -05:00
J. Nick Koston
ad09197c00
Bump anyio to 4.6.0 (#127013) 2024-09-29 15:13:10 +02:00
YogevBokobza
be11d1cabf
Add Light support for Switcher Runner S11 (#126402)
* switcher add s11 light support

* switcher fix linting

* switcher fix linting

* switcher fix linting

* switcher fix linting

* Update homeassistant/components/switcher_kis/light.py

Co-authored-by: Shay Levy <levyshay1@gmail.com>

* Update homeassistant/components/switcher_kis/light.py

Co-authored-by: Shay Levy <levyshay1@gmail.com>

* Switcher fix based on requested changes

* switcher fix light tests

* Add translations

* Remove obsolete default

* Remove obsolete default

* Update tests/components/switcher_kis/test_light.py

Co-authored-by: Shay Levy <levyshay1@gmail.com>

* switcher fix based on requested changes

---------

Co-authored-by: Shay Levy <levyshay1@gmail.com>
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-09-29 13:20:21 +03:00
Raul Camacho
5399e2b648
Add Local Calendar ics events import on calendar creation (#117955)
* add optional config_flow step of uploading .ics file to import local calendar events

* feat: add unit test for import_ics step

* fix: remove unneeded test patch

* feat: add helper for moving ics to storage location

* move helper to config_flow

* ruff

* fix tests; add test for invalid ics content

* Update homeassistant/components/local_calendar/config_flow.py

* Update import flow with radio button and improved text

Signed-off-by: Allen Porter <allen.porter@gmail.com>

* Remove commented out code

* Update with lint fixes

* Apply suggestions from code review

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

---------

Signed-off-by: Allen Porter <allen.porter@gmail.com>
Co-authored-by: Allen Porter <allen.porter@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2024-09-28 22:15:24 -07:00
J. Nick Koston
a8d72cfdcf
Bump aiohttp to 3.10.8 (#127009)
changelog: https://github.com/aio-libs/aiohttp/compare/v3.10.7...v3.10.8

Fixes a long standing cancellation leak on timeout
2024-09-28 21:53:54 -04:00
Michael Hansen
fbeee11fd7
Don't log voice assistant config timeout error (#127010)
Don't log config timeout error
2024-09-28 18:46:01 -04:00
Andre Lengwenus
545dae2e7f
Bump pypck to 0.7.24 (#126995) 2024-09-28 21:39:48 +02:00
Paulus Schoutsen
86891351f6
Exclude Text-to-Speech cache from backups (#127001)
Text-to-speech cache doesn't need to be included in backups.
2024-09-28 18:22:57 +02:00
G Johansson
ddfe790995
Bump smhi-pkg to 1.0.18 (#126999) 2024-09-28 17:17:57 +02:00
G Johansson
85a9a8eca1
Add unique id to mold_indicator (#126990) 2024-09-28 14:53:40 +02:00
Tsvi Mostovicz
52c358e120
Add reconfigure flow for Jewish Calendar (#126773)
* Add reconfigure flow for Jewish Calendar

* Use async_update_reload_and_abort
2024-09-28 13:59:11 +02:00
Franck Nijhof
3bb13f76fa
Bump version to 2024.10.0b4 2024-09-28 11:00:20 +02:00
J. Nick Koston
f57ce96ff0
Bump aiohttp to 3.10.7 (#126970) 2024-09-28 11:00:10 +02:00
J. Nick Koston
105d7952fc
Bump yarl to 1.13.1 (#126962) 2024-09-28 11:00:07 +02:00
Steven B.
6f4a488308
Bump python-kasa library to 0.7.4 (#126944) 2024-09-28 11:00:03 +02:00
ozadr1an
23a11dddb3
Bump nessclient to 1.1.2 (#125604)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-09-28 10:59:59 +02:00
Sid
f516e538a8
Include requirements_test_pre_commit.txt in pre-commit hassfest (#125388) 2024-09-28 10:48:08 +02:00
J. Nick Koston
4c28c1f556
Bump aiohttp to 3.10.7 (#126970) 2024-09-28 10:47:05 +02:00
Aindriú Mac Giolla Eoin
b996bd3e65
Updated languages.py to add Irish lang code (manually) (#126689)
* Updated languages.py to add Irish lang code (manually)

Added Irish language code manually without running the command 'python3 -m script.languages ga'.  Due to the size of the repository, I was unable to clone and run the generation script for updating languages.py

* Update homeassistant/generated/languages.py

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>

---------

Co-authored-by: Simon Lamon <32477463+silamon@users.noreply.github.com>
2024-09-27 23:49:31 +02:00
Erik Montnemery
6c1167df4a
Use ConfigFlow.has_matching_flow to deduplicate webostv flows (#126898) 2024-09-28 00:11:15 +03:00
J. Nick Koston
1044345587
Bump yarl to 1.13.1 (#126962) 2024-09-27 23:10:01 +02:00
Josef Zweck
d9eb419ecc
Add translation for tedee exceptions (#126963) 2024-09-27 22:21:01 +02:00
Josef Zweck
8a266aac34
Add translation_domain to lamarzocco exceptions (#126959) 2024-09-27 22:01:46 +02:00
Franck Nijhof
f6ac5dab74
Update apprise to 1.9.0 (#126952) 2024-09-27 21:58:03 +02:00
Franck Nijhof
d34ba16a30
Update pyvera to 0.3.15 (#126956) 2024-09-27 21:25:27 +02:00
Franck Nijhof
5638e937b0
Update vsure to 2.6.7 (#126950) 2024-09-27 21:25:13 +02:00
G Johansson
2ff88e7baf
Add preview to statistics (#122590) 2024-09-27 21:09:42 +02:00
Josef Zweck
2e1732fadf
Add proper exception handling to lamarzocco (#125913) 2024-09-27 21:04:01 +02:00
G Johansson
57e041171b
Add preview to mold_indicator (#125530) 2024-09-27 20:56:02 +02:00
Marc Mueller
317b73ffaf
Allow passing filename to licenses script [ci] (#126951) 2024-09-27 20:52:01 +02:00
ozadr1an
39a9634a5c
Bump nessclient to 1.1.2 (#125604)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-09-27 20:49:34 +02:00
Franck Nijhof
22ebc654a7
Update ollama to 0.3.3 (#126953) 2024-09-27 20:45:10 +02:00
Marc Mueller
20c3b9b6f9
Update grpcio constraints to 1.66.1 (#126947) 2024-09-27 13:44:31 -05:00
Franck Nijhof
7588d83c6c
Update DoorBirdPy to 3.0.3 (#126949) 2024-09-27 20:29:46 +02:00
Franck Nijhof
efbb5bf9af
Update debugpy to 1.8.6 (#126945) 2024-09-27 20:29:32 +02:00
Steven B.
dac69fafb8
Bump python-kasa library to 0.7.4 (#126944) 2024-09-27 13:29:28 -05:00
Franck Nijhof
8d98085873
Update ical to 8.2.0 (#126954) 2024-09-27 20:29:18 +02:00
J. Nick Koston
8950e817e0
Bump protobuf to 5.28.2 (#124936)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2024-09-27 19:39:25 +02:00
Franck Nijhof
28aff1a90a
Bump version to 2024.10.0b3 2024-09-27 19:39:22 +02:00
Jan Rieger
9a56381e28
Add missing icons to unifi (#126934) 2024-09-27 19:39:06 +02:00
Bram Kragten
2d1708e5e8
Update frontend to 20240927.0 (#126933) 2024-09-27 19:39:03 +02:00
Raj Laud
73deb076fe
Squeezebox - bump pysqueezebox dependency to 0.9.3 to restore favorites support (#126929) 2024-09-27 19:38:59 +02:00
Michael Hansen
c4f189863c
Adjust "Assist in progress" sensor in ESPHome (#126928)
Adjust sensor
2024-09-27 19:38:56 +02:00
Michael Hansen
02e15a4ce7
Change Assist satellite state names (#126926)
* Change state names

* Update homeassistant/components/assist_satellite/strings.json

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-27 19:38:52 +02:00
Jon Seager
ba8e9bc168
Bump pytouchlinesl to 0.1.7 (#126923) 2024-09-27 19:38:49 +02:00
mvn23
46d3bda80a
Bump pyotgw to 2.2.1 (#126918) 2024-09-27 19:38:46 +02:00
Jon Seager
222006d106
Update pytouchlinesl to 0.1.6 (#126912) 2024-09-27 19:38:43 +02:00
Joost Lekkerkerker
7925aee91f
Migrate Nexia unique id to str (#126911) 2024-09-27 19:38:40 +02:00
Joost Lekkerkerker
4e3b012f3e
Fix Tado unloading (#126910) 2024-09-27 19:38:36 +02:00
Jan Bouwhuis
b606b50cec
Do not unsubscribe mqtt integration discovery if entry is already configured (#126907)
* Do not unsubscribe mqtt integration discovery if entry is already configured

* Test cases without unsubscribe
2024-09-27 19:38:33 +02:00
Jan Rieger
57028a0807
Use icon translations in unifi (#126903)
* Use icon translations in unifi

* Update snapshots

* Add state icons

* Address feedback

* Update snapshot
2024-09-27 19:38:30 +02:00
Joost Lekkerkerker
840cc483b0
Update airgradient device sw_version when changed (#126902) 2024-09-27 19:38:27 +02:00
Manu
8d1f944096
Revert "Add support for Xiaomi airpurifier and humidifier (#117791)" (#126873) 2024-09-27 19:38:24 +02:00
Manu
a45c4ec8e9
Fix blocking call in Xiaomi Miio integration (#126871) 2024-09-27 19:38:21 +02:00
Manu
0f3f50e817
Add support for variant of Xiaomi Mi Air Purifier 3C (zhimi.airp.mb4a) (#126867)
Add model id zhimi.airp.mb4a
2024-09-27 19:38:17 +02:00
Erik Montnemery
a4ff292231
Improve statistics issue title (#126851) 2024-09-27 19:38:14 +02:00
Simon Lamon
e8636670d4
Bump python-linkplay to 0.0.12 (#126850)
Bump dependency
2024-09-27 19:38:11 +02:00
Simon
bae6d679aa
Use hass httpx client for ElevenLabs component (#126793) 2024-09-27 19:38:07 +02:00
Erwin Douna
6fb1b53039
Set DSMR Reader quality scale to Gold (#121466) 2024-09-27 19:26:51 +02:00
Joakim Plate
c81a4f8633
Translate exception from fjäråskupan (#126673) 2024-09-27 19:23:24 +02:00
Erik Montnemery
4599d1650b
Use ConfigFlow.has_matching_flow to deduplicate flux_led flows (#126888) 2024-09-27 19:22:00 +02:00
Simon Lamon
4edc3872ce
Add support for stop command in LinkPlay (#126941)
Add support for stop command
2024-09-27 19:13:26 +02:00
Josef Zweck
8999e9f116
Use _async_setup in tedee coordinator (#126812) 2024-09-27 19:10:52 +02:00
Erik Montnemery
c5b4892596
Adjust BaseEditConfigView.__init__ (#126729) 2024-09-27 19:08:12 +02:00
Erik Montnemery
46812777e2
Use ConfigFlow.has_matching_flow to deduplicate yalexs_ble flows (#126899) 2024-09-27 19:07:23 +02:00
Simon
616c0ebaa4
Use hass httpx client for ElevenLabs component (#126793) 2024-09-27 19:04:31 +02:00
Steven B.
33d0343089
Extend dhcp discovery flow for ring integration (#126661) 2024-09-27 19:03:43 +02:00
Raj Laud
e6af8f63f3
Squeezebox - bump pysqueezebox dependency to 0.9.3 to restore favorites support (#126929) 2024-09-27 18:50:30 +02:00
Jan Rieger
cda62a4ff3
Add missing icons to unifi (#126934) 2024-09-27 18:50:00 +02:00
Marc Mueller
f359d619cb
Modify pytest workflow to support testing multiple Python versions [ci] (#126936) 2024-09-27 18:49:20 +02:00
Erik Montnemery
495faf5033
Improve statistics issue title (#126851) 2024-09-27 18:32:20 +02:00
Bram Kragten
cba2daf314
Update frontend to 20240927.0 (#126933) 2024-09-27 18:10:39 +02:00
Jan Rieger
2d68f9a986
Use icon translations in unifi (#126903)
* Use icon translations in unifi

* Update snapshots

* Add state icons

* Address feedback

* Update snapshot
2024-09-27 17:43:25 +02:00
Jan Bouwhuis
7fde2e2fe0
Do not unsubscribe mqtt integration discovery if entry is already configured (#126907)
* Do not unsubscribe mqtt integration discovery if entry is already configured

* Test cases without unsubscribe
2024-09-27 17:28:51 +02:00
Michael Hansen
bd4f3b0553
Change Assist satellite state names (#126926)
* Change state names

* Update homeassistant/components/assist_satellite/strings.json

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-27 11:11:23 -04:00
Michael Hansen
6373347d65
Adjust "Assist in progress" sensor in ESPHome (#126928)
Adjust sensor
2024-09-27 11:10:50 -04:00
Jon Seager
b458b204f0
Bump pytouchlinesl to 0.1.7 (#126923) 2024-09-27 16:01:59 +02:00
mvn23
dd3a3f821c
Bump pyotgw to 2.2.1 (#126918) 2024-09-27 15:43:10 +02:00
Jan Bouwhuis
60e3a1fc5f
Fix ruff import validation (#126917) 2024-09-27 15:17:54 +02:00
Manu
706a5680e1
Change Turkey to Türkiye per 2022 UN resolution on official name (#126779) 2024-09-27 15:11:05 +02:00
Brett Adams
cad87f51a3
Code quality improvements for Teslemetry (#123444) 2024-09-27 15:06:09 +02:00
Erik Montnemery
66ab90b518
Add EntityIDPostMigration data migrator class (#125307) 2024-09-27 14:58:34 +02:00
Jon Seager
8bdd81ff24
Update pytouchlinesl to 0.1.6 (#126912) 2024-09-27 14:56:37 +02:00
Joost Lekkerkerker
f64e542879
Fix Evohome snapshots (#126915) 2024-09-27 14:55:44 +02:00
Joost Lekkerkerker
7c58476af9
Add unique id migration to Geniushub (#122330) 2024-09-27 14:54:47 +02:00
epenet
1f3b06a9bd
Refactor Trace to avoid self import (#125822) 2024-09-27 14:52:13 +02:00
epenet
e1314b6cda
Use shorthand attributes in vodafone_station device tracker (#126747) 2024-09-27 14:48:30 +02:00
epenet
a6b629c392
Use shorthand attributes in traccar device tracker (#126733) 2024-09-27 14:45:41 +02:00
epenet
f9f51e2381
Use shorthand attributes in gpslogger device tracker (#126739) 2024-09-27 14:44:56 +02:00
epenet
ee75cba008
Remove unused properties in tado device tracker (#126737) 2024-09-27 14:41:47 +02:00
Manu
c768f03f71
Revert "Add support for Xiaomi airpurifier and humidifier (#117791)" (#126873) 2024-09-27 14:41:20 +02:00
Joost Lekkerkerker
20a57d6381
Fix Tado unloading (#126910) 2024-09-27 14:36:29 +02:00
Joost Lekkerkerker
308f25fe4c
Migrate Nexia unique id to str (#126911) 2024-09-27 14:35:08 +02:00
Erik Montnemery
9f2ba6bc2c
Use ConfigFlow.has_matching_flow to deduplicate plugwise flows (#126896) 2024-09-27 14:32:36 +02:00
rubenbe
b3b5d9602a
Add RSS description to Feedreader event (#126681) 2024-09-27 13:46:48 +02:00
David Bonnes
2d16732972
Set the default time zone for evohome tests (#126679) 2024-09-27 13:44:47 +02:00
epenet
94efd3e230
Cleanup sensor tests (#126881) 2024-09-27 13:43:24 +02:00
Erik Montnemery
59a690f214
Use ConfigFlow.has_matching_flow to deduplicate homekit_controller flows (#126894) 2024-09-27 13:41:55 +02:00
Marc Mueller
6f70a52880
Update grpcio constraints to 1.62.3 (#126908) 2024-09-27 13:35:20 +02:00
Erik Montnemery
85ebe5e01a
Use ConfigFlow.has_matching_flow to deduplicate hunterdouglas flows (#126895) 2024-09-27 13:22:16 +02:00
Joost Lekkerkerker
a3ec4db9cc
Update airgradient device sw_version when changed (#126902) 2024-09-27 13:21:35 +02:00
Michael
ffa6b5fcb2
Use two words for Nautical miles unit (#126905) 2024-09-27 13:16:13 +02:00
Manu
b78a1f7b61
Fix blocking call in Xiaomi Miio integration (#126871) 2024-09-27 13:11:28 +02:00
epenet
1d49c5056c
Use shorthand attributes in tile device tracker (#126735) 2024-09-27 13:04:19 +02:00
Erik Montnemery
83ebd601a9
Use ConfigFlow.has_matching_flow to deduplicate steamist flows (#126897) 2024-09-27 13:01:29 +02:00
Simon Lamon
a972e295ea
Bump python-linkplay to 0.0.12 (#126850)
Bump dependency
2024-09-27 12:21:58 +02:00
Manu
7a0b4fc62c
Add support for variant of Xiaomi Mi Air Purifier 3C (zhimi.airp.mb4a) (#126867)
Add model id zhimi.airp.mb4a
2024-09-27 12:00:19 +02:00
Franck Nijhof
a3e3edb9a2
Bump version to 2024.10.0b2 2024-09-27 11:53:10 +02:00
J. Nick Koston
e66dd63516
Fix getting the current host for IPv6 urls (#126889) 2024-09-27 11:53:02 +02:00
Joost Lekkerkerker
ec66c7e534
Add diagnostics platform to airgradient (#126886) 2024-09-27 11:52:58 +02:00
Franck Nijhof
2749b1f057
Mark custom panel integration as system type (#126883) 2024-09-27 11:52:55 +02:00
J. Nick Koston
b079a94bef
Fix getting the host for the current request (#126882) 2024-09-27 11:52:52 +02:00
J. Nick Koston
3d1bd626b0
Bump yarl to 1.13.0 (#126872) 2024-09-27 11:52:49 +02:00
Joost Lekkerkerker
60641d5a4e
Fix restoring state class in mobile app (#126868) 2024-09-27 11:52:45 +02:00
EnjoyingM
28d491e997
Bump wolf-comm to 0.0.15 (#126857) 2024-09-27 11:52:42 +02:00
Jeef
bb73529770
Monarch Money cashflow sensor bugfix (#125774)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2024-09-27 11:52:36 +02:00
Kareem ElFaramawi
ebfd442b51
Fix Abode integration needing to reauthenticate after core update (#123035)
* bump jaraco.abode to 6.2.1

* update abode user_data path to HA config

* Move abode config call out of try block

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-27 11:52:33 +02:00
Alexey ALERT Rubashёff
fdd8c0969b
Update overkiz Atlantic Water Heater away mode switching (#121801) 2024-09-27 11:52:29 +02:00
Joost Lekkerkerker
d78fcd2a29
Introduce base entity in Switcher (#126822) 2024-09-27 11:47:47 +02:00
Erik Montnemery
2b2f5c9353
Use ConfigFlow.has_matching_flow to deduplicate elkm1 flows (#126887) 2024-09-27 11:46:26 +02:00
Erik Montnemery
fcbb9dd8d8
Use ConfigFlow.has_matching_flow to deduplicate fritz flows (#126890) 2024-09-27 11:45:57 +02:00
Erik Montnemery
b34f3ad5c5
Use ConfigFlow.has_matching_flow to deduplicate gogogate2 flows (#126892) 2024-09-27 11:45:17 +02:00
Erik Montnemery
8bdd909351
Use ConfigFlow.has_matching_flow to deduplicate fritzbox flows (#126891) 2024-09-27 11:44:59 +02:00
Kareem ElFaramawi
d7fe7f35ad
Fix Abode integration needing to reauthenticate after core update (#123035)
* bump jaraco.abode to 6.2.1

* update abode user_data path to HA config

* Move abode config call out of try block

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-27 11:43:29 +02:00
Joost Lekkerkerker
1ebcc34e66
Fix restoring state class in mobile app (#126868) 2024-09-27 11:37:28 +02:00
J. Nick Koston
40e83dd9e0
Bump yarl to 1.13.0 (#126872) 2024-09-27 11:35:57 +02:00
Joost Lekkerkerker
18fd00d0c2
Add diagnostics platform to airgradient (#126886) 2024-09-27 11:35:35 +02:00
J. Nick Koston
9ec26a9be5
Fix getting the current host for IPv6 urls (#126889) 2024-09-27 11:26:35 +02:00
Erik Montnemery
3c0be47d3c
Add FlowManager.async_has_matching_flow (#126804)
* Add FlowManager.async_flow_has_matching_flow

* Revert changes from the future

* Apply suggested changes to apple_tv config flow

* Rename methods after discussion

* Update homeassistant/data_entry_flow.py

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

* Move deduplication functions to config_entries, add tests

* Adjust tests

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-09-27 10:51:36 +02:00
Michael
26b5dab12b
Add nmi (nautical miles) as valid distance unit (#124723) 2024-09-27 10:40:59 +02:00
J. Nick Koston
75ae6a8087
Fix getting the host for the current request (#126882) 2024-09-27 03:36:05 -05:00
Franck Nijhof
fb0e102d74
Mark custom panel integration as system type (#126883) 2024-09-27 10:26:19 +02:00
EnjoyingM
d777ec3267
Bump wolf-comm to 0.0.15 (#126857) 2024-09-27 09:56:33 +02:00
David Bonnes
cff9e9abab
Refactor evohome test fixtures for improved testing (#126781) 2024-09-27 09:40:52 +02:00
Marc Mueller
0b19831a7a
Update pytest warnings filter (#126858) 2024-09-27 09:32:50 +02:00
Alexey ALERT Rubashёff
27f3715780
Update overkiz Atlantic Water Heater away mode switching (#121801) 2024-09-27 09:30:40 +02:00
Jeef
76858f0534
Monarch Money cashflow sensor bugfix (#125774)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2024-09-27 09:18:37 +02:00
Joost Lekkerkerker
bcfdfe93f9
Fix small typo in mobile_app docstring (#126863) 2024-09-27 00:01:11 +02:00
Joost Lekkerkerker
7c6cc16ef1
Bump aiowithings to 3.1.0 (#126854) 2024-09-26 22:36:01 +02:00
Franck Nijhof
bdc548b464
Bump version to 2024.10.0b1 2024-09-26 20:46:24 +02:00
Paulus Schoutsen
b60e6082f7
Update the Selected Pipeline entity name (#126845) 2024-09-26 20:46:08 +02:00
Bram Kragten
9a7254e4ee
Update frontend to 20240926.0 (#126843) 2024-09-26 20:46:05 +02:00
Mike Degatano
73e56e292a
Bump aiohasupervisor to 0.1.0 (#126841) 2024-09-26 20:46:02 +02:00
Joost Lekkerkerker
42a4a89793
Fix Withings reauth title (#126838) 2024-09-26 20:45:59 +02:00
Joost Lekkerkerker
bb7803b020
Fix last played icon in NYT Games (#126837) 2024-09-26 20:45:55 +02:00
Joost Lekkerkerker
dd0fc0688d
Bump nyt_games to 0.4.2 (#126834)
* Bump nyt_games to 0.4.1

* Bump nyt_games to 0.4.1

* Bump nyt_games to 0.4.2
2024-09-26 20:45:52 +02:00
Joost Lekkerkerker
1380ed7328
Add logging to NYT Games setup failures (#126832) 2024-09-26 20:45:49 +02:00
Joost Lekkerkerker
9d6569d515
Bump knocki to 0.3.5 (#126826) 2024-09-26 20:45:45 +02:00
Manu
20be8fd2d3
Fix typo in Mealie integration (#126824) 2024-09-26 20:45:42 +02:00
Joost Lekkerkerker
9d48c77861
Bump jaraco.abode to 6.2.1 (#126823) 2024-09-26 20:45:39 +02:00
Steven B.
7ab93a70dc
Bump ring-doorbell to 0.9.6 (#126817) 2024-09-26 20:45:36 +02:00
Martin Hjelmare
a435095e76
Fix missing template alarm control panel menu string (#126791) 2024-09-26 20:45:32 +02:00
starkillerOG
eb763563f2
Bump reolink-aio to 0.9.11 (#126778) 2024-09-26 20:45:29 +02:00
Noah Husby
9bf0b5bff1
Bump aiorussound to 4.0.5 (#126774)
* Bump aiorussound to 4.0.4

* Remove unnecessary exception

* Bump aiorussound to 4.0.5

* Fixes

* Update homeassistant/components/russound_rio/media_player.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-26 20:45:26 +02:00
starkillerOG
638dd37545
Remove Reolink Home Hub main level switches (#126697)
Co-authored-by: Robert Resch <robert@resch.dev>
2024-09-26 20:45:23 +02:00
G Johansson
11cc718273
Change Climate set temp action for incorrect feature will raise (#126692)
* Change Climate set temp action for incorrect feature will raise

* Fix some tests

* Fix review comments

* Fix tesla_fleet

* Fix tests

* Fix review comment
2024-09-26 20:45:19 +02:00
Steven B.
cf6b07630b
Deprecate tplink alarm button entities (#126349)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-09-26 20:45:14 +02:00
Michael Hansen
17e0db9da3
Fix ESPHome and VoIP Assist satellite entity names (#126229)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-09-26 20:45:09 +02:00
Paulus Schoutsen
471c68f653
Update the Selected Pipeline entity name (#126845) 2024-09-26 20:38:51 +02:00
Joost Lekkerkerker
ae102f1318
Add logging to NYT Games setup failures (#126832) 2024-09-26 20:33:24 +02:00
Joost Lekkerkerker
2a0ad20188
Fix last played icon in NYT Games (#126837) 2024-09-26 20:23:24 +02:00
Michael Hansen
9db5b481be
Fix ESPHome and VoIP Assist satellite entity names (#126229)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-09-26 20:22:09 +02:00
Joost Lekkerkerker
185d00c86c
Fix Withings reauth title (#126838) 2024-09-26 20:19:40 +02:00
Bram Kragten
e72ec07683
Update frontend to 20240926.0 (#126843) 2024-09-26 19:48:27 +02:00
Joost Lekkerkerker
6e12726b11
Use Parametrizing in Matter tests (#126759)
* Overhaul matter tests

* Overhaul

* Remove matter_client where obsolete

* Move snapshots to the top

* Use usefixtures

* Add Valve
2024-09-26 19:40:20 +02:00
epenet
6c539cd2d8
Improve type hints in template config_flow tests (#126803)
Improve type hints in template tests
2024-09-26 19:25:33 +02:00
Sid
77642b9e3d
Bump ruff to 0.6.8 (#126842) 2024-09-26 19:13:08 +02:00
Mike Degatano
86dc7111cb
Bump aiohasupervisor to 0.1.0 (#126841) 2024-09-26 18:34:30 +02:00
Joost Lekkerkerker
8d428acbbb
Bump nyt_games to 0.4.2 (#126834)
* Bump nyt_games to 0.4.1

* Bump nyt_games to 0.4.1

* Bump nyt_games to 0.4.2
2024-09-26 18:03:11 +02:00
Joost Lekkerkerker
1c13851858
Bump jaraco.abode to 6.2.1 (#126823) 2024-09-26 17:31:09 +02:00
Joost Lekkerkerker
a75ebc27c4
Bump knocki to 0.3.5 (#126826) 2024-09-26 15:45:20 +02:00
epenet
45f92dd981
Improve type hints in template (#126802) 2024-09-26 15:05:46 +02:00
Steven B.
5a6ce86476
Bump ring-doorbell to 0.9.6 (#126817) 2024-09-26 15:00:31 +02:00
Noah Husby
7afad1dde9
Bump aiorussound to 4.0.5 (#126774)
* Bump aiorussound to 4.0.4

* Remove unnecessary exception

* Bump aiorussound to 4.0.5

* Fixes

* Update homeassistant/components/russound_rio/media_player.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-26 14:38:36 +02:00
Manu
b766d91f49
Fix typo in Mealie integration (#126824) 2024-09-26 14:28:57 +02:00
Marc Mueller
22dac266c4
Update pydantic to 1.10.18 (#126821) 2024-09-26 14:17:46 +02:00
epenet
5fb9537d6d
Use pytest.mark.usefixtures for start_ha in template tests (#126805) 2024-09-26 14:00:52 +02:00
Marc Mueller
c1b24e6ba2
Small typing improvements (#126818)
* Add from __future__ import annotations

* Use PEP 695 type aliases

* Fix generator typing
2024-09-26 13:51:27 +02:00
dependabot[bot]
cf803507d6
Bump actions/checkout from 4.1.7 to 4.2.0 (#126801)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-26 13:49:48 +02:00
Josef Zweck
16e5271cac
Switch coordinator setup to _async_setup (#126810) 2024-09-26 13:08:02 +02:00
Martin Hjelmare
d5ad35630f
Fix missing template alarm control panel menu string (#126791) 2024-09-26 07:37:49 +02:00
starkillerOG
1395baef01
Remove Reolink Home Hub main level switches (#126697)
Co-authored-by: Robert Resch <robert@resch.dev>
2024-09-25 21:52:26 +02:00
David Bonnes
90dcb02429
Remove unnecessary patch from evohome tests (#126760) 2024-09-25 21:52:03 +02:00
Steven B.
4f0211cdd8
Deprecate tplink alarm button entities (#126349)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-09-25 14:47:40 -05:00
epenet
a1e6d4b693
Use shorthand attributes in geofency device tracker (#126741) 2024-09-25 21:47:13 +02:00
starkillerOG
77db88ad28
Bump reolink-aio to 0.9.11 (#126778) 2024-09-25 21:43:20 +02:00
G Johansson
c6a1b9fc39
Change Climate set temp action for incorrect feature will raise (#126692)
* Change Climate set temp action for incorrect feature will raise

* Fix some tests

* Fix review comments

* Fix tesla_fleet

* Fix tests

* Fix review comment
2024-09-25 21:16:14 +02:00
Franck Nijhof
9afd270111
Bump version to 2024.11.0dev0 (#126776) 2024-09-25 21:08:07 +02:00
Franck Nijhof
53cf8628fa
Bump version to 2024.10.0b0 2024-09-25 20:34:22 +02:00
Erik Montnemery
7d61cb1ef5
Remove unignore flow (#126765) 2024-09-25 20:29:14 +02:00
Thomas55555
f53411b95a
Bump aioautomower to 2024.9.3 (#126769)
* Bump aioautomower to 2024.9.3

* tests
2024-09-25 20:28:22 +02:00
Ludovic BOUÉ
6d1e5886ec
Add Valve platform to Matter integration (#123311)
* Create water_valve.py

* Update water_valve.py

ValveEntity

* Update water_valve.py

ValveDeviceClass

* Update water_valve.py

* Update water_valve.py

OperationalStatus

* Update water_valve.py

* Update water_valve.py

Commands

* Update water_valve.py

Platform.VALVE

* Update water_valve.py

* Update water_valve.py

operational_status

* Update water_valve.py

current_valve_position

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

attributes

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Open command

* Match Valve entity methods

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* ruff-format

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

Attributes.CurrentLevel

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

async_set_valve_position

* Update water_valve.py

* Update water_valve.py

Bitmaps

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update homeassistant/components/matter/water_valve.py

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>

* Update homeassistant/components/matter/water_valve.py

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update discovery.py to add WaterValve

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update discovery.py

* Update discovery.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Update water_valve.py

* Rename water_valve.py to valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* Create test_valve.py

* Update test_valve.py

* Update test_valve.py

* Update test_valve.py

* Update test_valve.py

* Update test_valve.py

* Update test_valve.py

* Update test_valve.py

* Update test_valve.py

* Update test_valve.py

* Create valve.json

* Update air-purifier.json

* Revert "Update air-purifier.json"

This reverts commit b68dce0ccc81bc6fb1db36191de1c296ce54cac3.

* Update valve.json

* Update valve.json

* Update valve.json

* Update test_valve.py

* Update valve.json

* Update test_valve.py

* Update valve.json

* Update valve.json

* Update valve.json

* Update test_valve.py

* Update valve.py

* Update valve.py

* Update valve.py

* add tests

* cleanup

* Clean up variable

* Format

* add tests for state updates

* adjust

* add tests for position

---------

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-09-25 20:19:10 +02:00
puddly
0a44c9456c
Bump ZHA to 0.0.34 (#126766) 2024-09-25 18:44:51 +02:00
epenet
fbf5d3966d
Use shorthand attributes in locative device tracker (#126740) 2024-09-25 18:27:18 +02:00
Markus Jacobsen
0fa1478f90
Remove unnecessary dict .keys() calls from Bang & Olufsen (#126762)
Remove useless .keys() calls
2024-09-25 18:19:41 +02:00
Euan de Kock
d7ac53ae93
Update const.py to add new Australian Server URL (#126714)
Growatt is now redirecting Australian users to a new server. This adds support for this server.
2024-09-25 18:04:03 +02:00
Bram Kragten
e7e86d7a32
Update frontend to 20240925.0 (#126763) 2024-09-25 17:36:45 +02:00
Joost Lekkerkerker
3810c3cbaf
Improve trigger schema validation to ask for trigger instead of platform (#126750)
* Add check for missing trigger

* Fix

* Fix

* Escape
2024-09-25 16:44:14 +02:00
J. Nick Koston
f4c339db8c
Fix license check for new aiocache (#126753) 2024-09-25 09:00:04 -05:00
Markus Jacobsen
bb29c7a02f
Add sound modes to Bang & Olufsen devices (#121209)
* Add sound mode functionality

* Fix naming

* Change unique sound mode symbol

* Add testing for sound modes

* Add test typing

* Use constants for service call parameters

* Add state assertions

* Remove invalid decorator

* Add valid sound mode check

* Add test for invalid sound mode
2024-09-25 15:58:24 +02:00
epenet
2699eb62bd
Rename DOMAIN_DATA HassKey constants to DATA_COMPONENT (#126746)
* Rename DOMAIN_DATA HassKey constant to DATA

* DATA -> DATA_COMPONENT
2024-09-25 15:53:58 +02:00
c0ffeeca7
866ffcf639
Use bold to markup UI strings (#126748)
* Use bold to markup UI strings

* Use bold to markup UI strings
2024-09-25 15:33:23 +02:00
Joost Lekkerkerker
33d83e43de
Update trigger validation message (#126749) 2024-09-25 15:33:03 +02:00
Joost Lekkerkerker
662a704165
Use snake case in matter fixture nodes (#126743) 2024-09-25 15:29:17 +02:00
epenet
083b586d19
Add pylint checks for fixture scope (#126723)
* Prevent session scope fixtures in component tests

* Link message to the decorator - not the function

* Add checks for package also

* Add check for session scope autouse

* Rename variable

* Adjust message

* Ignore fancy autouse

* Simplify
2024-09-25 15:27:57 +02:00
epenet
fb91377139
Use shorthand attributes in mysensors device tracker (#126738) 2024-09-25 15:21:50 +02:00
Joost Lekkerkerker
6e4e5ba8c5
Make Matter snapshot logic a shared function (#126744) 2024-09-25 15:12:48 +02:00
epenet
10b9e3b29c
Use shorthand attributes in tesla_fleet device tracker (#126736) 2024-09-25 14:21:36 +02:00
Joost Lekkerkerker
a1906b434f
Change trigger platform key to trigger (#124357)
* fix

* Fix

* Fix

* Update homeassistant/helpers/config_validation.py

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

* Fix

* Fix

* Fix

* Fix

* Add more tests

* Fix

* Fix tests

* Add tests

* Let's see what the CI does

* It fails on the code that tested the thing ofc

* It fails on the code that tested the thing ofc

* Revert test thingy

* Now the test works again, lovely

* Another one

* Fix websocket thingy

* Only copy when needed

* Improve comment

* Remove test

* Fix docstring

* I think this now also work since this transforms trigger to platform

* Add comment

* Update homeassistant/helpers/config_validation.py

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

* Update homeassistant/helpers/config_validation.py

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

* Update homeassistant/helpers/config_validation.py

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

* Check for mapping

* Add test

* Update homeassistant/helpers/config_validation.py

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

* Update test to also test for trigger keys

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-09-25 14:19:58 +02:00
Marc Mueller
9d29307532
Update lxml to 5.3.0 (#126725) 2024-09-25 13:44:05 +02:00
Erik Montnemery
c638537731
Use 'select' instead of 'click' or 'press' when guiding users in flows (#126731) 2024-09-25 13:37:43 +02:00
Marc Mueller
6bf8ec2df0
Update isal to 1.7.1 (#126742) 2024-09-25 13:37:20 +02:00
Marcel van der Veldt
18766905f4
Don't crash entire Matter integration setup when one node is failing (#126491)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-09-25 12:45:24 +02:00
Paul Bottein
a5b556b21b
Use entity selector in Homekit bridge config flow (#126340)
Use entity selector in homekit bridge config flow
2024-09-25 12:11:55 +02:00
epenet
49efa4d47b
Add specific EntityDescription to describe calendar entities (#126726) 2024-09-25 11:57:11 +02:00
Joost Lekkerkerker
bebd1dc235
Enable Zwave notification sensors by default (#125326)
* Enable Zwave notification sensors by default

* Enable Zwave notification sensors by default

* Enable Zwave notification sensors by default

* Enable Zwave notification sensors by default

* Enable Zwave notification sensors by default

* Enable Zwave notification sensors by default

* Enable Zwave notification sensors by default

* Enable Zwave notification sensors by default

* Fix the check to (dis)allow discovering a value multiple times

* Prevent discovery of duplicate Notification CC sensors

* alarm sensors disabled by default

* one more fix

* Update diagnostics tests

---------

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-09-25 11:53:42 +02:00
Erik Montnemery
771575cfc5
Make statistics validation create issue registry issues (#122595)
* Make statistics validation create issue registry issues

* Disable creating issue about outdated MariaDB version in tests

* Use call_soon_threadsafe instead of run_callback_threadsafe

* Update tests

* Fix flapping test

* Disable creating issue about outdated SQLite version in tests

* Implement agreed changes

* Add translation strings for issue titles

* Update test
2024-09-25 11:11:11 +02:00
Allen Porter
d6e34e0984
Add an entity description for Google Calendar (#125469) 2024-09-25 10:40:59 +02:00
Joost Lekkerkerker
31d722f1ef
Introduce snapshot testing to matter (#126693)
* Introduce snapshot testing to matter

* Introduce snapshot testing to matter
2024-09-25 09:46:32 +02:00
epenet
dff0e2cc9f
Move pylint decorator plugin and add tests (#126719) 2024-09-25 09:41:23 +02:00
elmurato
65abe1c875
Add workaround to avoid blocking imports by dnspython (#121702) 2024-09-25 09:36:27 +02:00
Marc Mueller
2339211403
Fix pytest-asyncio DeprecationWarning (#126718) 2024-09-25 09:30:57 +02:00
Brett Adams
eccb7bb55f
Add Storm watch active to Tesla integrations (#126704) 2024-09-25 09:05:33 +02:00
J. Nick Koston
a5a54ab870
Bump zeroconf to 0.135.0 (#126706) 2024-09-25 09:02:00 +02:00
dependabot[bot]
c021074db4
Bump github/codeql-action from 3.26.8 to 3.26.9 (#126715)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-25 08:59:56 +02:00
Oliver
1c33561fbf
Update denonavr to v1.0.0 (#126703) 2024-09-25 08:59:42 +02:00
epenet
b48c439bff
Remove redundant source_type property from ScannerEntities (#126716) 2024-09-25 08:58:54 +02:00
epenet
a3c2a7e1e0
Remove redundant source_type property from TrackerEntities (#126717) 2024-09-25 08:56:42 +02:00
Tal Atlas
7e41b40441
Update Tuya integration with target distance (#126700)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2024-09-25 08:47:53 +02:00
Allen Porter
e351f8ba07
Bump python-google-photos-library-api to 0.12.1 (#126709) 2024-09-25 08:45:58 +02:00
epenet
1adaaf49cc
Add specific EntityDescription to describe device tracker entities (#126586)
* Add TrackerEntityDescription to describe tracker entities

* Improve

* Adjust components

* Add ScannerEntityDescription

* Simplify

* Revert

* Set TrackerEntity default source type to SourceType.GPS

* Fix rebase

* Adjust default

* Remove source_type from EntityDescription

* Fix rebase

* Docstring

* Remove BaseTrackerEntityDescription
2024-09-25 07:28:29 +02:00
Manu
e10d731049
Update snapshot for Bring tests (#126699) 2024-09-24 19:27:20 -07:00
J. Nick Koston
242a3c6616
Bump google-generativeai to 0.8.2 (#126696)
changelog: https://github.com/google-gemini/generative-ai-python/compare/v0.7.2...v0.8.2
2024-09-24 15:13:12 -07:00
Joost Lekkerkerker
636ea82bf1
Add Aqara brand (#126658) 2024-09-24 23:19:06 +02:00
Joost Lekkerkerker
c5d562a56f
Add Spelling Bee and connections support to NYT Games (#126567) 2024-09-24 23:09:58 +02:00
epenet
2a0c779a02
Avoid raw string in device_tracker source_type (#126601) 2024-09-24 23:01:47 +02:00
Manu
3d4ac7ca63
Add diagnostics platform to Bring integration (#126695) 2024-09-24 23:00:43 +02:00
Erik Montnemery
161f37bb98
Add tests which directly test the recorder job wrappers (#125338) 2024-09-24 23:00:00 +02:00
Manu
20030ab604
Add sensor platform to Bring integration (#126642)
* Add sensor platform to Bring integration

* Add more tests

* unignore typedef check

* Update language sensor

* update snapshot

* changes

* add entities

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

* add units

* lowercase

* snapshot

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-24 22:55:48 +02:00
starkillerOG
c66e2dc076
Remove leftover wrong icon from Reolink (#126698)
Remove wrong icon
2024-09-24 22:51:16 +02:00
Allen Porter
8d0e9eb8ac
Improve Roborock error handling (#124267) 2024-09-24 22:38:40 +02:00
J. Nick Koston
2dcd5e55e2
Bump aiohttp to 3.10.6 (#126690) 2024-09-24 22:38:24 +02:00
G Johansson
ab8e2d92c8
Add diagnostics to Workday (#126691) 2024-09-24 22:37:54 +02:00
Joost Lekkerkerker
03968b44bd
Improve typing in Yamaha (#123982)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2024-09-24 22:25:54 +02:00
Joost Lekkerkerker
686d591f4f
Add coordinator to Spotify (#123548) 2024-09-24 22:24:40 +02:00
civita
c53a760ba3
Update strings in tailscale (#124143) 2024-09-24 22:12:24 +02:00
jvmahon
5e2955845a
Add button platform to Matter integration (#123665)
* Add files via upload

* add test

* add discovery schemas for operational state commands

* tests

* add filter resets

* add filter reset buttons

* Apply suggestions from code review

* tweak test

---------

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-24 22:07:29 +02:00
starkillerOG
9a4a66b33f
Use insecure SSL cipher for Reolink aiohttp clientsession (#126687) 2024-09-24 21:50:45 +02:00
Doron Somech
d2d3ab2d98
Add fan support for KNX climate entities (#126368)
* Add fan mode support to knx climate

* fix linting errors

* remove unneeded None protection from CONF_FAN_PERCENTAGES_MODES

* Update homeassistant/components/knx/climate.py

Co-authored-by: Matthias Alphart <farmio@alphart.net>

* Update homeassistant/components/knx/climate.py

Co-authored-by: Matthias Alphart <farmio@alphart.net>

* Update homeassistant/components/knx/climate.py

Co-authored-by: Matthias Alphart <farmio@alphart.net>

* Update homeassistant/components/knx/schema.py

Co-authored-by: Matthias Alphart <farmio@alphart.net>

* find closest percentage when not in fan modes

* new field for fan speed mode, max steps apply to both step and percentage

* not picking FAN_OFF when the percentage is closest to zero

* add fan zero mode to support auto mode

* use StrEnum for FanZeroMode

* change default to 'percent'

* fix mypy errors

---------

Co-authored-by: Matthias Alphart <farmio@alphart.net>
2024-09-24 21:38:09 +02:00
starkillerOG
69ecdda5f5
Add SSL Cipher option to aiohttp async_get_clientsession (#126317)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-09-24 21:31:52 +02:00
Ludovic BOUÉ
b370893e58
Add support for OperationalState Attribute from Matter OperationalState cluster (#125627) 2024-09-24 21:30:30 +02:00
Michael Hansen
86f8901c96
Fix pipeline restart in VoIP (#126668) 2024-09-24 21:24:42 +02:00
Noah Husby
739165585a
Bump aiorussound to 3.1.5 (#126664) 2024-09-24 21:10:01 +02:00
David Bonnes
e3e7aec73c
Rename an evohome test fixture (#126680) 2024-09-24 21:07:22 +02:00
epenet
3995d001ec
Set default source_type on TrackerEntity and ScannerEntity (#126648)
* Set default source_type on TrackerEntity and ScannerEntity

* Add samples

* Two more

* Adjust tests
2024-09-24 20:56:01 +02:00
Franck Nijhof
9dfabc3fb7
Adjust automation to plural triggers/conditions/actions keys (#123823)
* Adjust automation to plural triggers/conditions/actions keys

* Fix some tests

* Adjust websocket tests

* Fix search tests

* Convert blueprint and blueprint inputs to modern schema

* Pass schema when creating Blueprint object

* Update tests

* Adjust websocket api

---------

Co-authored-by: Joostlek <joostlek@outlook.com>
Co-authored-by: Erik <erik@montnemery.com>
2024-09-24 20:03:23 +02:00
Marc Mueller
08bdf797f0
Update RestrictedPython to 7.2 (#126662) 2024-09-24 19:48:44 +02:00
Marcel van der Veldt
5e7d5c6312
Prevent KeyError when Matter device has invalid value for ModeSelect (#126672) 2024-09-24 19:36:09 +02:00
Marcel van der Veldt
354ee35ee4
Extend the lists of Matter climate devices that need special treatment (#126644) 2024-09-24 19:34:34 +02:00
epenet
c099f4f50f
Use vol.Coerce for SourceType in mqtt device_tracker (#126594) 2024-09-24 19:09:19 +02:00
Thomas55555
dc77b2d583
Add work area switch for Husqvarna Automower (#126376)
* Add work area switch for Husqvarna Automower

* move work area deletion test to separate file

* stale doctsrings

* don't use custom test file

* use _attr_name

* ruff

* add available property

* hassfest

* fix tests

* Apply suggestions from code review

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

* constants

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-24 18:57:47 +02:00
Thomas55555
c9351fdeeb
Simplify cleanup in Husqvarna Automower (#126666)
Simplify cleanup in Hsuqvarna Automower
2024-09-24 18:54:06 +02:00
Joost Lekkerkerker
c1781cd793
Only raise missing integration issue for config entry integrations (#126654) 2024-09-24 18:26:01 +02:00
Marcel van der Veldt
ffa76dfd24
Add discovery schemas for Matter Smoke and CO Alarm Cluster (#126622)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-09-24 18:23:45 +02:00
Marc Mueller
c8964a1c80
Update numpy to 1.26.4 (#126660) 2024-09-24 18:23:20 +02:00
Manu
60807e5d4d
Bump bring-api to 0.9.0 (#126650) 2024-09-24 18:23:08 +02:00
Indrajit Raychaudhuri
0bf90d18ef
Ensure that HomeKit names start and end with alphanumeric character (#126413) 2024-09-24 18:18:17 +02:00
Thomas55555
d81e836b37
Bump aioautomower to 2024.9.2 (#126659) 2024-09-24 18:18:02 +02:00
Bouwe Westerdijk
962b9915f0
Plugwise test maintenance (#126421) 2024-09-24 18:11:17 +02:00
Ludovic BOUÉ
31a1ad8409
Add Pressure and Altitude discovery schemas for Matter Eve Weather device (#125690)
* Update number.py to add EveWeatherAltitude attribute

* Update sensor.py to add EveCluster Pressure Attribute

* Update strings.json

* Create eve-weather-sensor.json

* Update test_sensor.py

* Update eve-weather-sensor.json

* Update test_sensor.py

Pressure
AttributeId: 319422484 (0x00130a0014) - Value type: float32

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update manifest.json

Bump to python-matter-server==6.5.0

* Update requirements_all.txt

Bump requirements to python-matter-server 6.5.0

* Update requirements_test_all.txt

Bump requirements to python-matter-server 6.5.0

* Update test_sensor.py

* Update test_sensor.py

* Update sensor.py

* Update sensor.py

* Update test_sensor.py

* Update sensor.py

* Update test_sensor.py

* Update test_sensor.py

* Update test_sensor.py

* fix test fixture

* Update requirements_all.txt

* Update requirements_test_all.txt

* Update manifest.json

* fix tests

* Update test_sensor.py

* add device class

---------

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
2024-09-24 17:59:58 +02:00
Marc Mueller
a66e287903
Update pyoverkiz to 1.14.1 (#126657) 2024-09-24 17:50:10 +02:00
Erik Montnemery
2ee93d974d
Reinitialize ssdp discovery flow on unignore (#126557) 2024-09-24 10:38:33 -05:00
epenet
4e465a2066
Remove unused string in dlna_dmr (#126652) 2024-09-24 17:27:39 +02:00
Allen Porter
412489c102
Require Google Photos uploads to target an album (#126651)
* Require uploads to target an album

* Remove edge case where albums are not loaded on startup which no longer happens

* Update homeassistant/components/google_photos/strings.json

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-24 17:26:33 +02:00
Allen Porter
437bbe5c6e
Limit Google Photos media source to Home Assistant created albums (#126653) 2024-09-24 17:22:24 +02:00
Erik Montnemery
264927926e
Remove unignore flow from homekit controller (#126637) 2024-09-24 16:43:12 +02:00
Erik Montnemery
2ded9d551a
Remove unignore flow from dlna_dmr (#126647) 2024-09-24 16:42:01 +02:00
Marc Mueller
fc37218311
Update httpx to 0.27.2 (#126630) 2024-09-24 16:41:35 +02:00
Allen Porter
27bed0cdcb
Update Google Photos to have a DataUpdateCoordinator for loading albums (#126443)
* Update Google Photos to have a data update coordiantor for loading albums

* Remove album from services

* Remove action string changes

* Revert services.yaml change

* Simplify integration by blocking startup on album loading

* Update homeassistant/components/google_photos/coordinator.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-24 07:34:40 -07:00
Ludovic BOUÉ
741b025751
Add EveCluster ValvePosition Attribute (#125809) 2024-09-24 16:33:19 +02:00
Marc Mueller
d661eee93d
Update types packages (#126632) 2024-09-24 16:04:11 +02:00
G Johansson
03bba6d0c3
Climate check target min lower than target high (#124488)
* Guard target high_temp higher than low_temp in ClimateEntity

* Fixes

* Update string

* Forgot to fix tests
2024-09-24 15:56:30 +02:00
Mike Degatano
7517948900
Replace more addon management with aiohasupervisor (#126236)
* Replace start_addon with library call

* restart_addon to library and error issues in tests

* stop_addon to library

* uninstall_addon to library

* Add output typing

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-09-24 15:47:29 +02:00
Joost Lekkerkerker
2fa7113787
Raise issue if SSL is set but no external URL configured (#121768)
* Raise issue if SSL is set but no external URL configured

* Add cloud

* Add cloud

* Fix strings

* Attempt

* Fix

* Fix

* Move strings

* Fixes

* fix

* Fix

* Fix

* Fix

* Break tests

* Fix tests
2024-09-24 15:35:10 +02:00
Marcel van der Veldt
c289248ac5
Bump Python Matter Server to 6.5.2 (#126636) 2024-09-24 15:33:08 +02:00
Joost Lekkerkerker
adcdb7a900
Map unknown air quality to None in Matter (#126639)
Map unknown to None in Matter
2024-09-24 15:30:01 +02:00
epenet
9dc84bfdca
Add shorthand attributes to device_tracker entities (#126599)
* Add shorthand attributes to device_tracker entities

* Simplify

* Update config_entry.py

* Update config_entry.py

* Update device_tracker.py

* Update device_tracker.py
2024-09-24 15:21:33 +02:00
Joost Lekkerkerker
622f4975ef
Use icon translations in Matter (#126634) 2024-09-24 15:12:04 +02:00
Lenn
ade4ee810b
Fix motionblinds_ble sensor tests (#126635) 2024-09-24 15:05:00 +02:00
Marc Mueller
81d5c22800
Update bcrypt to 4.2.0 (#126629) 2024-09-24 15:00:06 +02:00
Marc Mueller
f699a69e83
Update cryptography to 43.0.1 (#126628) 2024-09-24 14:59:41 +02:00
Marc Mueller
9daf1b062f
Update uv to 0.4.15 (#126627)
* Update uv to 0.4.15

* Fix
2024-09-24 14:59:11 +02:00
Marc Mueller
f78b4a0feb
Update pip-licenses to 5.0.0 (#126620) 2024-09-24 14:58:45 +02:00
Marc Mueller
03d43cf50d
Update tqdm to 4.66.5 (#126626) 2024-09-24 14:58:25 +02:00
G Johansson
d06d0a8f83
Fix tesla_fleet climate temp high/low test (#126631) 2024-09-24 14:56:46 +02:00
Joost Lekkerkerker
e15be0433e
Remove unnecessary lambda in Matter (#126633) 2024-09-24 14:54:52 +02:00
Erik Montnemery
972dc89c0f
Reinitialize dhcp discovery flow on config entry removal (#126556)
* Reinitialize dhcp discovery flow on unignore

* Tweak

* Rediscover on any removed config entry

* Adjust log message
2024-09-24 14:43:05 +02:00
Erik Montnemery
b6fe3a3022
Reinitialize bluetooth discovery flow on config entry removal (#126555)
* Reinitialize bluetooth discovery flow on unignore

* Update homeassistant/components/bluetooth/manager.py

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

* Update tests

* Rediscover on any removed config entry

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-09-24 14:42:46 +02:00
Marc Mueller
b9c28bed19
Update pylint to 3.3.1 (#126614)
* Update astroid to 3.3.4

* Update pylint to 3.3.1
2024-09-24 14:26:52 +02:00
Marc Mueller
09ae0946b7
Update syrupy to 4.7.1 (#126625) 2024-09-24 14:10:43 +02:00
Marc Mueller
e3c438ff47
Update pytest to 8.3.3 (#126623) 2024-09-24 14:10:09 +02:00
Marc Mueller
ca0f1ef8da
Update pytest-asyncio to 0.24.0 (#126621) 2024-09-24 14:07:52 +02:00
Marc Mueller
b856f54333
Update pipdeptree to 2.23.4 (#126619)
* Update pipdeptree to 2.23.4

* Update Dockerfile
2024-09-24 14:07:25 +02:00
Erik Montnemery
ba5f1ac2a9
Bump version of recorder context ID data migrators (#125293) 2024-09-24 13:45:37 +02:00
Joost Lekkerkerker
d3889cab9e
Make Matter select entity values translatable (#126608)
* Make Matter select entity values lowercase

* Make Matter select entity values lowercase
2024-09-24 13:40:38 +02:00
Marc Mueller
9e703b8224
Update coverage to 7.6.1 (#126615) 2024-09-24 13:40:01 +02:00
Marc Mueller
c9d3c3d369
Update pre-commit to 3.8.0 (#126617) 2024-09-24 13:39:09 +02:00
Joost Lekkerkerker
77029b0197
Make NYT Games a service (#126613) 2024-09-24 13:38:07 +02:00
Erik Montnemery
589910b49b
Reinitialize zeroconf discovery flow on config entry removal (#126595) 2024-09-24 13:37:28 +02:00
Marc Mueller
004941cc57
Fix lamarzocco ParamSpec typing (#126616) 2024-09-24 13:13:04 +02:00
G Johansson
ef88425d25
Start deprecation vacuum constants for feature flags (#126354) 2024-09-24 12:53:42 +02:00
G Johansson
283033f902
Start deprecation for media_player constants (#126351)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-09-24 12:33:55 +02:00
G Johansson
93aade6e8e
Change lock state to an enum (#126379)
* Add new LockState enum for lock states

* Add rest

* Fix insteon tests

* Fix mqtt tests

* Fix tesla_fleet

* Revert back ST_STATE_LOCKED

* Add back constant
2024-09-24 12:30:50 +02:00
Franck Nijhof
9297011731
Merge branch 'master' into dev 2024-09-24 12:24:54 +02:00
epenet
acebf1fb48
Adjust _ENTITY_COMPONENTS in hass-enforce-class-module (#126603) 2024-09-24 12:19:39 +02:00
G Johansson
711e0ee503
Change camera state to an enum (#126558)
* Change camera state to an enum

* copy/paste mistake

* Add test deprecated constants
2024-09-24 12:12:01 +02:00
Lektri.co
4ac9b339a1
Add select platform to the Lektrico integration (#126490)
* Add select for Lektrico integration.

* Rename lb_mode to load_balancing_mode.

* Update homeassistant/components/lektrico/strings.json

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-24 12:08:28 +02:00
Marcel van der Veldt
f2092ef083
Prevent KeyError in Matter select entity (#126605) 2024-09-24 12:02:01 +02:00
Erik Montnemery
c96d4991b9
Add issue asking users to disable VoIP call_in_progress binary sensor (#126504)
* Add issue asking users to disable VoIP call_in_progress binary sensor

* Add tests

* Add files

* Update homeassistant/components/voip/binary_sensor.py

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

* Fix test

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-24 11:46:43 +02:00
Erik Montnemery
58eccc1ed6
Bump deprecation of ESPHome assist in progress binary sensor (#126604) 2024-09-24 11:29:19 +02:00
Steven B.
010a5d2829
Add snapshots to all ring platform tests (#126560)
Add test snapshots to all ring platform tests
2024-09-24 10:53:19 +02:00
Brett Adams
5186605cec
Add energy history coordinator and sensors to Teslemetry (#126166)
* start

* More

* fix init

* Update requirements_all.txt

* Update requirements_test_all.txt

* Add Tests

* Add missing fixture

* first refresh history

* Fix mock_energy_history

* Remove failures prop

* Update test_init.py

* Actually add the sensors

* Add more icons

* suggested_display_precision

* Fix updated_once

* Fix fixture

* Review changes

* Apply suggestions from code review

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

* Remove init data

* Update homeassistant/components/teslemetry/coordinator.py

* ruff

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-24 10:32:38 +02:00
tronikos
4c0fb04f61
Make tts options of type list (such as profiles in google_cloud) work (#121582)
* Allow tts options of type list such as profiles in google_cloud

* Update tests/components/tts/test_media_source.py

* Don't mix engine specific options with other options

* Fix test

* Update assist_pipeline snapshots

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-09-24 00:07:12 -07:00
Franck Nijhof
06ea3a3014
2024.9.3 (#126566) 2024-09-24 09:01:55 +02:00
J. Nick Koston
615ec548db
Change dhcp internal index to use mac address (#126573) 2024-09-24 08:58:32 +02:00
epenet
2df6824856
Cleanup source_type type hints in device tracker components (#126592) 2024-09-24 08:54:55 +02:00
epenet
61ff40c299
Add base Entity classes to enforce-class-module pylint plugin (#126473) 2024-09-24 08:52:07 +02:00
J. Nick Koston
31200040da
Bump aiohttp to 3.10.6rc2 (#126468) 2024-09-24 08:51:08 +02:00
Matthias Alphart
450b682c5c
Update xknx to 3.2.0 (#126569) 2024-09-24 08:45:19 +02:00
Erik Montnemery
4a66395d51
Simplify signal_discovered_config_entry_removed job (#126591) 2024-09-24 08:44:11 +02:00
Erik Montnemery
f1e8675756
Set autouse flag on session scope bluetooth fixture (#126589) 2024-09-24 08:43:32 +02:00
Erik Montnemery
1fdb34b1e1
Fix zeroconf rediscovery test (#126593) 2024-09-24 08:43:18 +02:00
Steve Easley
2db927b7f7
Fix truncating password issue (#126581) 2024-09-24 08:42:59 +02:00
tronikos
99dbc99b6c
Remove unnecessary unique_id suffix from Google Cloud entities (#126585)
Remove uncessary unique_id suffix
2024-09-24 08:35:04 +02:00
Erik Montnemery
ce70f4ebac
Fix ecobee test helper (#126587) 2024-09-24 08:30:01 +02:00
Erik Montnemery
3c9f51fbbd
Reduce scope of JSON/XML test fixtures (#126590) 2024-09-24 08:29:35 +02:00
Michael Hansen
4869309997
Get updated Assist satellite config after setting it in ESPHome (#126552)
Get updated config after setting it
2024-09-23 20:36:53 -04:00
J. Nick Koston
fb45f4fcea
Bump yarl to 1.12.1 (#126580) 2024-09-23 19:19:41 -05:00
J. Nick Koston
d26c449d87
Bump yarl to 1.12.0 (#126576)
This is a prereq for aiohttp 3.10.6 which has some
fixes that need yarl 1.12.0+
2024-09-23 18:28:32 -04:00
J. Nick Koston
dbf080194b
Bump cached-ipaddress to 0.6.0 (#126571) 2024-09-23 15:43:33 -05:00
Erik Montnemery
d82bff1bc2
Index config entry discovery_keys by discovery domain (#126563)
* Index config entry discovery_keys by discovery domain

* Add new signal

* Update tests

* Update homeassistant/config_entries.py

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

* Fix imports

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-09-23 21:48:11 +02:00
epenet
9b96bc32eb
Add derived Entity classes in hass-enforce-class-module pylint plugin (#126494) 2024-09-23 21:03:29 +02:00
Franck Nijhof
59ecd47374
Hotfix test for patch release in fritzbox 2024-09-23 20:09:09 +02:00
Fredrik Erlandsson
88c751df7a
Fix point calls config entry to a platform multiple times (#126535)
* fix multiple async_forward_entry_setups calls

* ensure entity is at the right place
2024-09-23 20:09:07 +02:00
Markus Jacobsen
95053f7114
Bump mozart_api to 3.4.1.8.8 (#126334)
Update API
2024-09-23 20:07:05 +02:00
Franck Nijhof
4949727cd5
Bump version to 2024.9.3 2024-09-23 19:47:41 +02:00
Markus Jacobsen
08b0064ce7
Fix blocking call in Bang & Olufsen API client initialization (#126456)
* Update API

* Add fix for blocking call to load_default_certs
2024-09-23 19:47:30 +02:00
Steve Easley
c9571126a3
Add support for new JVC Projector auth method (#126453) 2024-09-23 19:47:27 +02:00
David Knowles
06d825d6c8
Bump pydrawise to 2024.9.0 (#126431) 2024-09-23 19:47:24 +02:00
Mr. Bubbles
36e6ab4af8
Fix due date calculation for future dailies in Habitica integration (#126403)
Calculate next due date for dailies with startdate in the future
2024-09-23 19:47:21 +02:00
Manuel Frei
ccec85f047
Fix surepetcare token update (#126385)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-09-23 19:47:18 +02:00
G Johansson
e8a5a75e96
Bump python-holidays to 0.57 (#126367) 2024-09-23 19:47:15 +02:00
Michael
4eb1fca68e
Fix next change (scheduler) sensors in AVM FRITZ!SmartHome (#126363) 2024-09-23 19:47:12 +02:00
Joost Lekkerkerker
fba24b8ead
Bump airgradient to 0.9.0 (#126319)
* Bump airgradient to 0.9.0

* Bump airgradient to 0.9.0
2024-09-23 19:44:22 +02:00
Matthias Alphart
edfb9f3f6b
Fix loading KNX UI entities with entity category set (#126290)
* Fix loading KNX UI entities with entity category set

* add test

* docstring fixes

* telegram order

* Optionally ignore telegram sending order in tests

because we can't know which platform initialises first
2024-09-23 19:44:18 +02:00
Marcel van der Veldt
2322d071e4
Fix Matter climate platform attributes when dedicated OnOff attribute is off (#126286) 2024-09-23 19:44:15 +02:00
Fredrik Erlandsson
7658ed8eaa
Bump pydaikin to 2.13.7 (#126219) 2024-09-23 19:44:12 +02:00
Sebastian Nohn
c81f280bc1
Fix tibber fails if power production is enabled but no power is produced (#126209)
* fix #125312 - tibber integration fails if power production is enabled but no power is produced

* fix requirements_all.txt
2024-09-23 19:44:09 +02:00
Andrew Jackson
6e36febd37
Broaden scope of ConfigEntryNotReady in Mealie (#126208)
Broaden scope of ConfigEntryNotReady
2024-09-23 19:44:06 +02:00
Jan-Philipp Benecke
b38c193fe4
Prevent blocking event loop in ps4 (#126151)
* Prevent blocking event loop in ps4

* Process code review comment
2024-09-23 19:44:02 +02:00
Arun Philip
b336cae118
Fix qbittorrent error when torrent count is 0 (#126146)
Fix handling of `NoneType` for torrents in `count_torrents_in_states` function

Added a check to handle cases where the 'torrents' data is None, avoiding a `TypeError` when attempting to get the length of a `NoneType` object. The function now returns 0 if 'torrents' is None, ensuring robust behavior when no torrent data is available.
2024-09-23 19:43:59 +02:00
Milan Meulemans
991114eb7f
Update Aseko to support new API (#126133)
* Update Aseko to support new API

* Apply suggestions from code review

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

* Use self.unit instead of self._unit

* Refactor sensor setup entry

* Keep same unique id and identifier

* Revert rename free_chlorine translation key

* Remove new heating entity to keep PR small

* Fix keep same unique id

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-23 19:43:56 +02:00
Tobias Sauerwein
d924fc5967
Fix set brightness for Netatmo lights (#126075)
* fix set brightness for Netatmo lights

* round returns int by default

* Update homeassistant/components/netatmo/light.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-23 19:43:50 +02:00
epenet
788d9571b5
Add entity components to hass-enforce-class-module pylint plugin (#126545) 2024-09-23 19:35:48 +02:00
Joost Lekkerkerker
714a1cc311
Bump nyt_games to 0.4.0 (#126564) 2024-09-23 19:28:30 +02:00
Jan-Philipp Benecke
28c2df37ed
Remove deprecated YAML import from traccar (#125763) 2024-09-23 19:14:55 +02:00
Maciej Bieniek
4a424a6603
Use Xiaomi Aqara gateway MAC address in DeviceInfo.connections (#126562) 2024-09-23 19:10:30 +02:00
G Johansson
86d8ddd289
Remove deprecated forecast key from template weather (#126132)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-09-23 18:57:32 +02:00
Trekky12
d0ed94ee8d
Remove trekky12 from pilight codeowners (#126559)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-09-23 18:55:41 +02:00
Joost Lekkerkerker
eaa25a33d7
Add more Wordle sensors (#126561)
* Add more Wordle sensors

* Add more Wordle sensors
2024-09-23 18:09:53 +02:00
Joost Lekkerkerker
1d94e66b9c
Add NYT Games integration (#126449)
* Add NYT Games integration

* Add NYT Games integration

* Add NYT Games integration

* Add NYT Games integration

* Add test
2024-09-23 17:40:19 +02:00
G Johansson
8eb76ea68d
Change lawn_mower state to an enum (#126458)
* Change lawn_mower state to an enum

* annotate as string
2024-09-23 17:39:53 +02:00
peteS-UK
8a2dccddc5
Add Model and Manufacturer details for Squeezebox devices (#126435)
* Add models and manufacturer

* Updates re: comments

* Updates for test

* Dedupe model

* Update homeassistant/components/squeezebox/media_player.py

* Change Squeezelite to SqueezeLite

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-23 16:59:22 +02:00
Michael Hansen
84f19f7216
Bump intents to 2024.9.23 (#126553) 2024-09-23 16:50:15 +02:00
Erik Montnemery
b2982c18bb
Reinitialize zeroconf discovery flow on unignore (#125753)
* Reinitialize zeroconf discovery flow on unignore

* Adjust tests

* Improve comments

* Fix logic for updating discovery keys

* Add tests

* Use mock_config_flow helper in new config_entries test

* Add discovery_keys attribute to ConfigEntry

* Update zeroconf rediscovery

* Change type of ConfigEntry.discovery_keys

* Update tests

* Fix DiscoveryKey.from_json_dict and add tests

* Fix test

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-09-23 16:49:21 +02:00
epenet
f5852b4678
Move point base entity to separate module (#126551) 2024-09-23 15:58:20 +02:00
epenet
02ab2c1433
Move ukraine_alarm coordinator to separate module (#126549) 2024-09-23 15:58:02 +02:00
epenet
380019dd56
Move volvooncall coordinator to separate module (#126548) 2024-09-23 15:57:47 +02:00
epenet
d2ab7dd9fb
Move yamaha_musiccast coordinator to separate module (#126546) 2024-09-23 15:57:31 +02:00
epenet
d101fb33b3
Move tolo coordinator to separate module (#126550)
* Move tolo coordinator to separate module

* Adjust tests
2024-09-23 15:56:59 +02:00
epenet
6d83a15ad5
Move yamaha_musiccast base entity to separate module (#126544) 2024-09-23 15:15:04 +02:00
epenet
95948e4eb7
Move volvooncall base entity to separate module (#126543) 2024-09-23 15:14:48 +02:00
epenet
8c4ea323ba
Move venstar base entity to separate module (#126542) 2024-09-23 15:12:55 +02:00
epenet
f5697ad5d2
Move vallox base entity to separate module (#126541) 2024-09-23 15:11:58 +02:00
epenet
58770e5c79
Rename xbox base entity module (#126540) 2024-09-23 15:11:04 +02:00
epenet
77b2895b0e
Rename pilight base entity module (#126538) 2024-09-23 15:09:22 +02:00
epenet
225266b687
Move upcloud base entity to separate module (#126533) 2024-09-23 15:01:59 +02:00
epenet
9fafbbff81
Rename dynalite base entity module (#126536) 2024-09-23 14:56:14 +02:00
David F. Mulcahey
e81a1f7acf
Add config to ZHA to allow disabling polling of mains powered devices when the network is started (#125473) 2024-09-23 14:34:24 +02:00
Nicholas Pike
691b2879bd
Fix image content-type validation case sensitivity (#125236) 2024-09-23 14:33:29 +02:00
Numa Perez
8410c142ab
Fix Auto mode for TCC devices like the Lyric Round (#126091) 2024-09-23 14:31:55 +02:00
epenet
de88068c66
Merge unifiprotect entity and models modules (#126532) 2024-09-23 14:30:26 +02:00
J. Nick Koston
0e0ac3efe5
Remove uneeded isoformat calls in registry as_storage_fragment properties (#126440) 2024-09-23 14:23:43 +02:00
epenet
2859c9fe19
Move simplisafe base entity to separate module (#126523) 2024-09-23 14:23:01 +02:00
G Johansson
939f2e41e9
Change valve state to an enum (#126428) 2024-09-23 14:20:18 +02:00
epenet
9c6f903178
Move tomorrowio base entity to separate module (#126531) 2024-09-23 14:20:16 +02:00
Erik Montnemery
0fc7bc2762
Fix a couple of stale ESPHome docstrings (#126508) 2024-09-23 14:19:17 +02:00
Maciej Bieniek
efc1ff6eff
Fix Shelly update entity names (#126512) 2024-09-23 14:18:24 +02:00
Maciej Bieniek
11bb8e402e
Use Bravia TV MAC address in DeviceInfo.connections (#126519) 2024-09-23 14:18:09 +02:00
epenet
ef39ee1d5d
Move tautulli base entity to separate module (#126528) 2024-09-23 14:17:54 +02:00
Robert Resch
52de26e67b
Remove unused i386 code in Dockerfile (#126520) 2024-09-23 14:17:37 +02:00
epenet
df0c8064b2
Move tolo base entity to separate module (#126530) 2024-09-23 14:17:28 +02:00
epenet
9fcefca0f5
Rename tradfri base entity module (#126526)
* Rename tradfri base entity module

* Missed a file
2024-09-23 14:16:24 +02:00
epenet
a579eef66c
Move tesla_wall_connector base entity to separate module (#126529) 2024-09-23 14:16:13 +02:00
epenet
46f9e86f6a
Move tailscale base entity to separate module (#126527) 2024-09-23 14:14:22 +02:00
epenet
60eba6d783
Rename toon base entity module (#126525) 2024-09-23 14:02:03 +02:00
epenet
4cb162a068
Move sia base entity to separate module (#126524) 2024-09-23 13:58:16 +02:00
Iskra kranj
0bcaa73427
Bump pyiskra to 0.1.14 (#126518) 2024-09-23 13:57:02 +02:00
Brett Adams
a1abea4e0f
Add button platform to Tesla Fleet (#126410)
* Add button platform

* Fix tests

* Fix button setup

* Make func required

* do_nothing
2024-09-23 13:48:00 +02:00
epenet
f11cdb4ab4
Move rfxtrx base entity to separate module (#126521) 2024-09-23 13:37:52 +02:00
J. Diego Rodríguez Royo
b7ba789370
Code quality improvements at Home Connect (#126323)
Added types to all arguments and return values to all functions

Defined class members and its types outside the constructor

Improved logic at binary sensor
2024-09-23 13:33:19 +02:00
epenet
ec311ecd2b
Move prusalink base entity to separate module (#126510)
* Move prusalink base entity to separate module

* Fix tests
2024-09-23 13:09:38 +02:00
epenet
14bc65e8e7
Move gardena_bluetooth base entity to separate module (#126484) 2024-09-23 13:06:10 +02:00
epenet
fb400af7d2
Prevent trailing line feeds in translation values (#126446)
* Prevent trailing line feeds in translation values

* Fixup strings
2024-09-23 13:02:39 +02:00
Brett Adams
e3351db3d8
Add lock platform to Tesla Fleet (#126412)
* Add lock platform

* Add lock platform tests

* Fix json
2024-09-23 12:52:13 +02:00
Adam Goode
71f6537846
Add additional test cases to Threshold (#126469)
There are still some bugs to be fixed, but for now this adds some
additional test cases for things that are already correct.
2024-09-23 12:51:29 +02:00
epenet
c8d20a8c23
Move fritzbox base entity to separate module (#126482) 2024-09-23 12:50:51 +02:00
starkillerOG
8ef7cae36d
Speedup Reolink tests by using scope="module" (#125215)
* use scope="module"

* Instead of side_effect = None, use reset_mock(side_efffect=True)

* fix tests
2024-09-23 12:50:40 +02:00
epenet
a9d12608bd
Move guardian base entity to separate module (#126486) 2024-09-23 12:49:24 +02:00
epenet
ef8b6e2805
Rename melnor base entity module (#126496) 2024-09-23 12:48:23 +02:00
epenet
1858c64e5f
Move motioneye base entity to separate module (#126495) 2024-09-23 12:48:07 +02:00
epenet
da3f18839a
Move lidarr base entity to separate module (#126492) 2024-09-23 12:47:53 +02:00
epenet
acd3b2d732
Move lyric base entity to separate module (#126493) 2024-09-23 12:47:39 +02:00
epenet
26651c18a6
Move modern_forms base entity to separate module (#126497) 2024-09-23 12:47:17 +02:00
Maciej Bieniek
d4efdcb78c
Bump pysnmp and brother (#126488)
* Bump pysnmp

* Bump brother

* Unpin pyasn1
2024-09-23 12:46:46 +02:00
epenet
43322bc3d9
Move notion base entity to separate module (#126499) 2024-09-23 12:45:30 +02:00
epenet
438cbc99b1
Move nzbget base entity to separate module (#126502) 2024-09-23 12:45:13 +02:00
epenet
0163f3d57e
Move omnilogic base entity to separate module (#126505) 2024-09-23 12:45:00 +02:00
epenet
61de70c1df
Move openuv base entity to separate module (#126506) 2024-09-23 12:44:42 +02:00
epenet
d67a1993d0
Move ovo_energy base entity to separate module (#126507) 2024-09-23 12:44:24 +02:00
epenet
f7543cd0ba
Move pi_hole base entity to separate module (#126509) 2024-09-23 12:43:48 +02:00
epenet
78d80fefc5
Move purpleair base entity to separate module (#126511) 2024-09-23 12:43:00 +02:00
epenet
c8e3e2ce1b
Move rainmachine base entity to separate module (#126513) 2024-09-23 12:42:22 +02:00
epenet
a75a513531
Move radarr base entity to separate module (#126514) 2024-09-23 12:42:00 +02:00
epenet
52aec885ea
Move nibe_heatpump base entity to separate module (#126498) 2024-09-23 12:32:18 +02:00
epenet
9b9edecaac
Move nuki base entity to separate module (#126500) 2024-09-23 11:55:03 +02:00
Brett Adams
c64222de4f
Fix wall connector state in Teslemetry (#124149)
* Fix wall connector state

* review feedback

* Rename None to Disconnected

* Translate disconnected
2024-09-23 10:17:38 +02:00
Marcel van der Veldt
5b1e4e0691
Fix Matter Model ID for bridged devices (#126059)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-09-23 10:15:07 +02:00
Steve Easley
d12367a680
Add support for new JVC Projector auth method (#126453) 2024-09-23 10:14:01 +02:00
Michael
683a5b7120
Fix next change (scheduler) sensors in AVM FRITZ!SmartHome (#126363) 2024-09-23 10:11:27 +02:00
Manuel Frei
5ad426d62e
Fix surepetcare token update (#126385)
Co-authored-by: Joostlek <joostlek@outlook.com>
2024-09-23 10:09:58 +02:00
epenet
6d069bec19
Move iqvia base entity to separate module (#126489) 2024-09-23 09:57:54 +02:00
TimL
3f4f2f4e2b
Add router reconnect button for Smlight integration (#126408)
* Add button for router reconnect

* strings for router reconnect

* remove stale router reconnect if zigbee is not running router firmware

* Add tests for router reconnect button

* Update homeassistant/components/smlight/strings.json

And fix associated tests

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

* Make router button entity dynamic

* adjust test for dynamic runtime removal

* drop if statements from tests

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-23 09:36:56 +02:00
epenet
ffa7e5a504
Move gogogate2 base entity to separate module (#126485) 2024-09-23 09:28:32 +02:00
Marcel van der Veldt
16221cfbbd
Fix Matter climate platform attributes when dedicated OnOff attribute is off (#126286) 2024-09-23 09:27:11 +02:00
epenet
a9b215357f
Move elmax base entity to separate module (#126481) 2024-09-23 08:59:38 +02:00
epenet
5a52e4c71d
Move evil_genius_labs base entity to separate module (#126480) 2024-09-23 08:59:23 +02:00
epenet
432d44c20d
Move deluge base entity to separate module (#126479) 2024-09-23 08:54:28 +02:00
epenet
7b9f295071
Move control4 base entity to separate module (#126477)
* Move control4 base entity to separate module

* Adjust
2024-09-23 08:47:43 +02:00
epenet
bed3fcfd43
Move cert_expiry base entity to separate module (#126478) 2024-09-23 08:47:23 +02:00
jesperraemaekers
49c9f843f8
Bump Weheat to 2024.09.23 (#126471)
Weheat version bump for support new model
2024-09-23 08:39:40 +02:00
epenet
52ef358e1c
Move airvisual base entity to separate module (#126474) 2024-09-23 08:38:24 +02:00
epenet
04e232096f
Move atag base entity to separate module (#126475) 2024-09-23 08:37:35 +02:00
J. Nick Koston
abceed8112
Use identity check for zeroconf enum compare (#126444) 2024-09-22 21:41:10 -05:00
Paulus Schoutsen
ba48a86156
OpenAI to not speak out whole errors (#126409)
* OpenAI to not speak out whole errors

* Update snapshot
2024-09-22 21:26:33 -04:00
Franck Nijhof
b69b5aa82a
2024.9.2 (#126062) 2024-09-16 19:44:37 +02:00
Jason Hunter
861fcbe598
Pin pyasn1 until fixed (#125712)
* pin pyasn1 until fixed

* add to gen requirements
2024-09-16 17:38:17 +02:00
Franck Nijhof
d259055af0
Bump version to 2024.9.2 2024-09-16 16:55:02 +02:00
TimL
fae26ee5da
Abort zeroconf flow on connect error during discovery (#125980)
Abort zereconf flow on connect error during discovery
2024-09-16 15:58:51 +02:00
Noah Husby
c4eca4469f
Bump aiorussound to 3.0.5 (#125975) 2024-09-16 15:58:48 +02:00
Galorhallen
d91cc96cd2
Bump govee light local to 1.5.2 (#125968)
Update govee light local library
2024-09-16 15:58:44 +02:00
starkillerOG
0b226c1868
Bump motionblinds to 0.6.25 (#125957) 2024-09-16 15:53:59 +02:00
puddly
359f61e55a
Bump ZHA to 0.0.33 (#125914) 2024-09-16 15:53:55 +02:00
Josef Zweck
16e049b7fa
Bump lmcloud to 1.2.3 (#125801) 2024-09-16 15:53:51 +02:00
puddly
8a6eec925f
Add missing Zigbee/Thread firmware config flow translations (#125782) 2024-09-16 15:45:45 +02:00
starkillerOG
f365995c8a
Fix favorite position missing for Motion Blinds TDBU devices (#125750)
* Add favorite position for TDBU

* fix styling
2024-09-16 15:45:41 +02:00
Assaf Akrabi
20ded56c99
Bump russound to 0.2.0 (#125743)
* Update russound library to fix BrokenPipeError

* Remove library from license expection list
2024-09-16 15:45:38 +02:00
Matthias Alphart
4583e070df
Update knx-frontend to 2024.9.10.221729 (#125734) 2024-09-16 15:45:33 +02:00
epenet
d4be1f3666
Bump sfrbox-api to 0.0.11 (#125732)
* Bump sfrbox-api to 0.0.11

* Re-enable tests
2024-09-16 15:45:30 +02:00
puddly
06d4b3281b
Remove unused keys from the ZHA config schema (#125710) 2024-09-16 15:45:27 +02:00
jonnynch
1dcd5471a0
Bump to python-nest-sdm to 5.0.1 (#125706) 2024-09-16 15:45:23 +02:00
Jan Bouwhuis
d0b6ef877e
Fix incomfort invalid setpoint if override is reported as 0.0 (#125694) 2024-09-16 15:45:20 +02:00
Steven B.
1e63b956f5
Bump tplink python-kasa lib to 0.7.3 (#125686) 2024-09-16 15:45:17 +02:00
Steven B.
7734bdfdab
Update tplink config to include aes keys (#125685) 2024-09-16 15:45:13 +02:00
Paul Bottein
7eb9036cbb
Update frontend to 20240909.1 (#125610) 2024-09-16 15:45:10 +02:00
Pete Sage
6b2526ddbd
FIx Sonos announce regression issue (#125515)
* initial commit

* initial commit
2024-09-16 15:45:06 +02:00
G Johansson
0b1a898c7c
Fix yale_smart_alarm on missing key (#125508) 2024-09-16 15:45:03 +02:00
Avi Miller
fe247a60ef
Bump aiolifx and aiolifx-themes to support more than 82 zones (#125487)
Signed-off-by: Avi Miller <me@dje.li>
2024-09-16 15:45:00 +02:00
J. Nick Koston
17402848f2
Bump yalexs to 8.6.4 (#125442)
adds a debounce to the updates to ensure we do
not request the activities api too often if
the websocket sends rapid updates

fixes #125277
2024-09-16 15:44:56 +02:00
tmenguy
e6b4c2e700
Fix renault plug state (#125421)
* Added PlugState 3, that is coming with renault-api 0.2.7, it fixes #124682 HA ticket

* Added PlugState 3, that is coming with renault-api 0.2.7, it fixes #124682 HA ticket
2024-09-16 15:44:52 +02:00
Willem-Jan van Rootselaar
e7c48d5870
Update diagnostics for BSBLan (#124508)
* update diagnostics to include static

and make room for multiple coordinator data objects

* fix mac address is not stored in config_entry but on device
2024-09-16 15:42:11 +02:00
Michał Jaworski
781342be40
Fix mired range in blebox color temp mode lights (#124258)
* fix: use default mired range in belbox lights running in color temp mode

* fix: ruff
2024-09-16 15:42:08 +02:00
David Knowles
73b26407f6
Fix Schlage removed locks (#123627)
* Fix bugs when a lock is no longer returned by the API

* Changes requested during review

* Only mark unavailable if lock is not present

* Remove stale comment

* Remove over-judicious nullability checks

* Remove another unnecessary null check
2024-09-16 15:42:05 +02:00
Simon
b1d691178e
Use default voice id as fallback in get_tts_audio (#123624) 2024-09-16 15:42:02 +02:00
Kristof Mattei
dc189e1d58
Fix Lyric climate Auto mode (#123490)
fix: Lyric has an actual "Auto" mode that is exposed if the device has an Auto mode.
2024-09-16 15:41:52 +02:00
Paulus Schoutsen
444560543c
2024.9.1 (#125420) 2024-09-06 13:39:52 -04:00
Paulus Schoutsen
ed2d321746 Bump version to 2024.9.1 2024-09-06 14:57:08 +00:00
Pierre Ståhl
b50d8fca16 Bump pyatv to 0.15.1 (#125412) 2024-09-06 14:57:02 +00:00
Paul Bottein
1c7c6d6592 Update frontend to 20240906.0 (#125409) 2024-09-06 14:57:01 +00:00
Marlon
5cf89bf2bb Set min_power similar to max_power to support all inverters from apsystems (#124247)
Set min_power similar to max_power to support all inverters from apsystems ez1 series
2024-09-06 14:57:00 +00:00
TimL
0b95cf1251 Improve handling of old firmware versions (#125406)
* Update Info fixture with new fields from pysmlight 0.0.14

* Create repair if device is running unsupported firmware

* Add test for legacy firmware info

* Add strings for repair issue
2024-09-06 14:56:06 +00:00
Alexandre TRUPIN
a3f42e36ac Bump sfrbox-api to 0.0.10 (#125405)
* bump sfr_box requirement to 0.0.10

* upate manifest file

* Handle None values

---------

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2024-09-06 14:53:07 +00:00
Dave Leaver
973e43ae6a Fix controlling AC temperature in airtouch5 (#125394)
Fix controlling AC temperature
2024-09-06 14:53:06 +00:00
dontinelli
e80e189e6b Increase coordinator update_interval for fyta (#125393)
* Increase update_interval

* Update homeassistant/components/fyta/coordinator.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-06 14:53:05 +00:00
Andre Lengwenus
27dc2e1b9d Bump pypck to 0.7.22 (#125389) 2024-09-06 14:53:04 +00:00
TimL
edb7c76caa Bump pysmlight to 0.0.14 (#125387)
Bump pysmlight 0.0.14 for smlight
2024-09-06 14:53:03 +00:00
Ryan Mattson
7859d31ca0 Lyric: fixed missed snake case conversions (#125382)
fixed missed snake case conversions
2024-09-06 14:53:02 +00:00
Marcel van der Veldt
6c640d2abe Fix for Hue sending effect None at turn_on command while no effect is active (#125377)
* Fix for Hue sending effect None at turn_on command while no effect is active

* typo

* update tests
2024-09-06 14:53:01 +00:00
Erik Montnemery
61ee3a9412 Don't allow templating min, max, step in config entry template number (#125342) 2024-09-06 14:53:00 +00:00
Simon Lamon
4ed18495f3 Add follower to the PlayingMode enum (#125294)
Update media_player.py
2024-09-06 14:52:59 +00:00
Noah Husby
5c8b2cde92 Bump aiorussound to 3.0.4 (#125285)
feat: bump aiorussound to 3.0.4
2024-09-06 14:52:58 +00:00
Jordi
5c2073481d Increase AquaCell timeout and handle timeout exception properly (#125263)
* Increase timeout and add handling of timeout exception

* Raise update failed instead of config entry error
2024-09-06 14:52:57 +00:00
G Johansson
84c204a7b3 Don't show input panel if default code provided in envisalink (#125256) 2024-09-06 14:52:56 +00:00
G Johansson
6c15f251c6 Fix blocking call in yale_smart_alarm (#125255) 2024-09-06 14:52:56 +00:00
Joost Lekkerkerker
48fcf58eb9 Revert #122676 Yamaha discovery (#125216)
Revert Yamaha discovery
2024-09-06 14:52:55 +00:00
Simon Lamon
3c13f4b4cc Improve play media support in LinkPlay (#125205)
Improve play media support in linkplay
2024-09-06 14:52:54 +00:00
Shay Levy
a14826d75e Fix BTHome validate triggers for device with multiple buttons (#125183)
* Fix BTHome validate triggers for device with multiple buttons

* Remove None default
2024-09-06 14:52:53 +00:00
Bram Kragten
36ec1b33fe
2024.9.0 (#124880) 2024-09-04 17:41:08 +02:00
Bram Kragten
84a0a28be2 Bump version to 2024.9.0 2024-09-04 17:08:18 +02:00
Michael Hansen
ac19ee3e2e Bump intents to 2024.9.4 (#125232) 2024-09-04 17:07:21 +02:00
Denis Shulyaka
438af042ed Update Anthropic default model to Haiku (#125225) 2024-09-04 17:07:20 +02:00
Robert Resch
122f11c790 Update modified_at datetime on storage collection changes (#125218) 2024-09-04 17:07:19 +02:00
Bram Kragten
de99dfef4e Bump version to 2024.9.0b5 2024-09-04 11:48:24 +02:00
Robert Resch
bcdc3563a5 Bump deebot-client to 8.4.0 (#125207) 2024-09-04 11:48:16 +02:00
Bram Kragten
9ef0a1f0a2 Update frontend to 20240904.0 (#125206) 2024-09-04 11:48:15 +02:00
Matthias Alphart
d0629d4e66 Update knx-frontend to 2024.9.4.64538 (#125196) 2024-09-04 11:48:15 +02:00
G Johansson
65e98eab9c Bump python-holidays to 0.56 (#125182) 2024-09-04 11:48:14 +02:00
J. Nick Koston
a0d9764443 Bump yalexs to 8.6.3 (#125176)
Fixes the battery state not refreshing due to a refactoring
error in the library.

changelog: https://github.com/bdraco/yalexs/compare/v8.6.2...v8.6.3
2024-09-04 11:48:13 +02:00
Joakim Plate
8293f270df Update gardena_bluetooth dependency to 1.4.3 (#125175) 2024-09-04 11:48:12 +02:00
Bram Kragten
116090bff1 Bump version to 2024.9.0b4 2024-09-03 21:12:20 +02:00
J. Nick Koston
6082220f7f Bump yalexs to 8.6.2 (#125162)
changelog: https://github.com/bdraco/yalexs/compare/v8.6.0...v8.6.2
2024-09-03 21:11:30 +02:00
Paul Bottein
74fd16b953 Update frontend to 20240903.1 (#125160) 2024-09-03 21:11:30 +02:00
Andrew Jackson
82cffcbc23 Bump aiomealie to 0.9.2 (#125153)
Bump mealie version
2024-09-03 21:11:29 +02:00
Erik Montnemery
4e1a77326e Restore unnecessary assignment of Template.hass in event helper (#125143) 2024-09-03 21:11:28 +02:00
Bram Kragten
54cf52069e Log deprecation warning when template.Template is created without hass (#125142)
* Log deprecation warning when template.Template is created without hass

* Improve docstring
2024-09-03 21:09:12 +02:00
Erik Montnemery
70b811096c Log deprecation warning when cv.template is called from wrong thread (#125141)
Log deprecation warning when cv.template is called from wrong thread
2024-09-03 19:55:38 +02:00
Marcel van der Veldt
1efd267ee6 Fix energy sensor for ThirdReality Matter powerplug (#125140) 2024-09-03 19:55:38 +02:00
Christopher Fenner
31267b4095 Correct device serial for ViCare integration (#125125)
* expose correct serial

* adapt inits

* adjust _build_entities

* adapt inits

* add serial data point

* update snapshot

* apply suggestions

* apply suggestions
2024-09-03 19:55:37 +02:00
Steven B.
4982e1cbcf Pass hass clientsession to ring config flow (#125119)
Pass hass clientsession to ring config flow
2024-09-03 19:55:36 +02:00
Artur Pragacz
be3b16b7fa Fix Onkyo action select_hdmi_output (#125115)
* Fix Onkyo service select_hdmi_output

* Move Hasskey directly under Onkyo domain
2024-09-03 19:55:35 +02:00
Aaron Bach
393a0ac0df Fix unhandled exception with missing IQVIA data (#125114) 2024-09-03 19:55:35 +02:00
Michal Jál
a0bbcb0401 Bump PySwitchbot to 0.48.2 (#125113) 2024-09-03 19:55:34 +02:00
J. Nick Koston
3f65bc78e8 Bump yalexs to 8.6.0 (#125102) 2024-09-03 19:55:33 +02:00
Avi Miller
d005440544 Bump aiolifx to 1.0.9 and remove unused HomeKit model prefixes (#125055)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-09-03 19:55:32 +02:00
Artur Pragacz
94d2da1685 Fix area registry indexing when there is a name collision (#125050) 2024-09-03 19:55:31 +02:00
ilan
4c5ba0617a Bump py-madvr2 to 1.6.32 (#125049)
feat: update lib
2024-09-03 19:55:31 +02:00
Richard Kroegel
a58bf149fc Fix blocking calls for OpenAI conversation (#125010) 2024-09-03 19:55:30 +02:00
MJJ
005be4e8ba Increase timeout for fetching buienradar weather data (#124597)
Increase timeout for fetching weather data
2024-09-03 19:55:29 +02:00
Allen Porter
b81d7a0ed8 Update nest to only include the image attachment payload for cameras that support fetching media (#124590)
Only include the image attachment payload for cameras that support fetching media
2024-09-03 19:55:28 +02:00
Martin Hjelmare
9a690ed421 Handle telegram polling errors (#124327) 2024-09-03 19:55:27 +02:00
Philip Vanloo
009989d7ae Add Linkplay mTLS/HTTPS and improve logging (#124307)
* Work

* Implement 0.0.8 changes, fixup tests

* Cleanup

* Implement new playmodes, close clientsession upon ha close

* Implement new playmodes, close clientsession upon ha close

* Add test for zeroconf bridge failure

* Bump 0.0.9
Address old comments in 113940

* Exact _async_register_default_clientsession_shutdown
2024-09-03 19:55:26 +02:00
UltimateGG
c7d1ad27f0 Fix updating insteon modem configuration while disconnected (#121918)
#121917 Fix updating insteon modem configuration while disconnected
2024-09-03 19:55:25 +02:00
Bram Kragten
3af11fb2b1 Bump version to 2024.9.0b3 2024-09-02 20:06:41 +02:00
Steven B.
c839cc1f15 Call async_write_ha_state after ring update (#125096)
Use async_write_ha_state after ring update
2024-09-02 20:06:21 +02:00
Paul Bottein
a0f2e2ebdd Update frontend to 20240902.0 (#125093) 2024-09-02 20:06:20 +02:00
dontinelli
d07e62b2f1 Bump fyta_cli to 0.6.6 (#125065) 2024-09-02 20:06:19 +02:00
tronikos
e7f957def2 Bump androidtvremote2 to 0.1.2 to fix blocking event loop when loading ssl certificate chain (#125061)
Bump androidtvremote2 to 0.1.2
2024-09-02 20:06:19 +02:00
Erik Montnemery
16ab57c9a6 Fix motionblinds_ble tests (#125060) 2024-09-02 20:06:18 +02:00
J. Nick Koston
1a67052cbd Bump habluetooth to 3.4.0 (#125058)
changelog: https://github.com/Bluetooth-Devices/habluetooth/compare/v3.3.2...v3.4.0
2024-09-02 20:06:17 +02:00
Erik Montnemery
f85a802ebd Don't raise when registering entity service with invalid schema (#125057)
* Don't raise when registering entity service with invalid schema

* Update homeassistant/helpers/service.py

Co-authored-by: Robert Resch <robert@resch.dev>

---------

Co-authored-by: Robert Resch <robert@resch.dev>
2024-09-02 20:06:16 +02:00
Shay Levy
3b5c08ecf8 Bump aioshelly to 11.4.2 (#125036) 2024-09-02 20:06:16 +02:00
J. Nick Koston
450c63ad28 Bump yarl to 1.9.7 (#125035) 2024-09-02 20:06:15 +02:00
Michael
a8f472f44e Add diagnostics platform to modern forms (#125032) 2024-09-02 20:06:14 +02:00
dontinelli
fa3a301e97 Add ConductivityConverter in websocket_api.py (#125029) 2024-09-02 20:06:13 +02:00
Martin Hjelmare
b1ef1be9a3 Bump python-telegram-bot to 21.5 (#125025) 2024-09-02 20:06:12 +02:00
Joost Lekkerkerker
62ef951ace Bump aiomealie to 0.9.1 (#125017) 2024-09-02 20:06:12 +02:00
Richard Kroegel
06660f9170 Fix BMW client blocking on load_default_certs (#125015)
* Fix BMW client blocking load_default_certs

* Use get_default_context
2024-09-02 20:06:11 +02:00
Richard Kroegel
7662ca8a96 Fix telegram_bot blocking on load_default_certs (#125014)
* Fix telegram_bot blocking on load_default_certs

* Use sync variant of create_issue
2024-09-02 20:06:10 +02:00
Richard Kroegel
e04fc74fcf Fix ollama blocking on load_default_certs (#125012)
* Fix ollama blocking on load_default_certs

* Use get_default_context instead of client_context
2024-09-02 20:06:09 +02:00
Alan Murray
f9bca7619c Bump aiopulse to 0.4.6 (#124964)
Non-breaking changes to fix isses:
 * eliminating hub exceptions raised due use of unicode strings.
 * eliminating hub exceptions raised due to Timers being configured on hub.
2024-09-02 20:06:08 +02:00
J. Nick Koston
1b9aa727f8 Bump yarl to 1.9.6 (#124955)
* Bump yarl to 1.9.5

changelog: https://github.com/aio-libs/yarl/compare/v1.9.4...v1.9.5

* remove default port since mocker does exact matching and yarl now normalizes this

* 1.9.6
2024-09-02 20:06:07 +02:00
Joost Lekkerkerker
d54c1935f8 Define household support in Mealie (#124950) 2024-09-02 20:06:07 +02:00
Steven B.
9cfad05793 Exclude tplink firmware entities (#124935)
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-09-02 20:06:06 +02:00
Steven B.
03ab471d23 Bump python-kasa to 0.7.2 (#124930) 2024-09-02 20:06:05 +02:00
Joost Lekkerkerker
b2b69e40fd Make set_value required in number template (#124917)
* Make set_value required in number template

* Make set_value required in number template

* Fix tests
2024-09-02 20:06:04 +02:00
J. Nick Koston
c6ff445dd4 Bump aioshelly to 11.4.1 to accomodate shelly GetStatus calls that take a few seconds to respond (#124893)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2024-09-02 20:06:03 +02:00
vhkristof
0948a94409 Bump renault-api to v0.2.7 (#124858)
* Bump renault-api to v0.2.7

* Updated requirements_all and requirements_test_all
2024-09-02 20:06:02 +02:00
J. Nick Koston
9be20d6130 Restore sisyphus integration (#124749)
* Revert "Disable sisyphus integration (#124742)"

This reverts commit 1b304e60d9.

* Restore sisyphus integration

reverts #124742 and updates the lib instead

changelog: https://github.com/jkeljo/sisyphus-control/compare/v3.1.3...v3.1.4

release is pending: https://github.com/jkeljo/sisyphus-control/pull/8#issuecomment-2313893689
2024-09-02 20:06:01 +02:00
Etienne Soufflet
c4e484539d Fix Tado fan speed for AC (#122415)
* change capabilities

* fix tests 2

* improve usability with capabilities

* fix swings management

* Update homeassistant/components/tado/climate.py

Co-authored-by: Erwin Douna <e.douna@gmail.com>

* fix after Erwin's review

* fix after joostlek's review

* use constant

* use in instead of get

---------

Co-authored-by: Erwin Douna <e.douna@gmail.com>
2024-09-02 20:06:00 +02:00
Jeef
234f32265e Bump Intellifire to 4.1.9 (#121091)
* rebase

* Minor patch to fix duplicate DeviceInfo beign created - if data hasnt updated yet

* rebase

* Minor patch to fix duplicate DeviceInfo beign created - if data hasnt updated yet

* fixing formatting

* Update homeassistant/components/intellifire/__init__.py

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

* Update homeassistant/components/intellifire/__init__.py

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

* Removing cloud connectivity sensor - leaving local one in

* Renaming class to something more useful

* addressing pr

* Update homeassistant/components/intellifire/__init__.py

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

* add ruff exception

* Fix test annotations

* remove access to private variable

* Bumping to 4.1.9 instead of 4.1.5

* A renaming

* rename

* Updated testing

* Update __init__.py

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

* updateing styrings

* Update tests/components/intellifire/conftest.py

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

* Testing refactor - WIP

* everything is passing - cleanup still needed

* cleaning up comments

* update pr

* unrename

* Update homeassistant/components/intellifire/coordinator.py

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

* fixing sentence

* fixed fixture and removed error codes

* reverted a bad change

* fixing strings.json

* revert renaming

* fix

* typing inother pr

* adding extra tests - one has a really dumb name

* using a real value

* added a migration in

* Update homeassistant/components/intellifire/config_flow.py

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

* Update tests/components/intellifire/test_init.py

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

* cleanup continues

* addressing pr

* switch back to debug

* Update tests/components/intellifire/conftest.py

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

* some changes

* restore property mock cuase didnt work otherwise

* cleanup has begun

* removed extra text

* addressing pr stuff

* fixed reauth

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-02 20:05:59 +02:00
Bram Kragten
411b014da2 Bump version to 2024.9.0b2 2024-08-30 20:08:46 +02:00
Joost Lekkerkerker
3a8aa4200d Bump aiomealie to 0.9.0 (#124924)
* Bump aiomealie to 0.9.0

* Bump aiomealie to 0.9.0
2024-08-30 20:08:20 +02:00
Josef Zweck
dd8471e786 Bump lmcloud 1.2.2 (#124911)
bump lmcloud 1.2.2
2024-08-30 20:08:19 +02:00
Josef Zweck
f33b4b0dc0 Bump lmcloud to 1.2.1 (#124908) 2024-08-30 20:08:19 +02:00
J. Nick Koston
8ab8f7a740 Add a repair issue for Yale Home users using the August integration (#124895)
The Yale Home brand will stop working with the August integration very
soon. Users must migrate to the Yale integration to avoid an interruption in service.
2024-08-30 20:08:18 +02:00
J. Nick Koston
ee9e3fe27b Bump yalexs to 8.5.5 (#124891)
changelog: https://github.com/bdraco/yalexs/compare/v8.5.4...v8.5.5
2024-08-30 20:08:17 +02:00
J. Nick Koston
d4830caac0 Bump aioesphomeapi to 25.3.1 (#124890)
changelog: https://github.com/esphome/aioesphomeapi/compare/v25.2.1...v25.3.1
2024-08-30 20:08:16 +02:00
TheJulianJES
3b4e3b1370 Fix ZHA group removal entity registry cleanup (#124889)
* Fix ZHA cleanup entity registry parameter

* Fix missing `gateway` when accessing coordinator device

* Get `ZHADeviceProxy` for coordinator device
2024-08-30 20:08:15 +02:00
J. Nick Koston
533c8ca31c Address yale review comments part 2 (#124887)
* Remove some unneeded block till done

* Additional state check cleanups and snapshots

* Use more snapshots in yale tests
2024-08-30 20:08:15 +02:00
Michael Hansen
8668af17f6 Bump intents to 2024.8.29 (#124874) 2024-08-30 20:08:14 +02:00
Louis Christ
5b866e071c Handle CancelledError in bluesound integration (#124873)
Catch CancledError in async_will_remove_from_hass
2024-08-30 20:08:13 +02:00
IceBotYT
37af180edc Bump nice-go to 0.3.8 (#124872)
* Bump nice-go to 0.3.6

* Bump to 0.3.7

* Bump to 0.3.8
2024-08-30 20:08:13 +02:00
Robert Resch
0d5dc01048 Bump PyTurboJPEG to 1.7.5 (#124865) 2024-08-30 20:08:12 +02:00
Robert Resch
bd2be0a763 Optimize hassfest image (#124855)
* Optimize hassfest docker image

* Adjust CI

* Use dynamic uv version

* Remove workaround
2024-08-30 20:08:11 +02:00
J. Nick Koston
98cbd7d8da Address august review comments (#124819)
* Address august review comments

Followup to https://github.com/home-assistant/core/pull/124677

* cleanup loop

* drop mixin name

* event entity add cleanup

* remove duplicate prop

* pep0695 type

* remove some not needed block till done

* cleanup august tests

* switch to freezegun

* snapshots for dev reg

* SOURCE_USER nit

* snapshots

* pytest.raises

* not loaded check
2024-08-30 20:08:10 +02:00
puddly
26f3305743 Bump ZHA to 0.0.32 (#124804)
* Always prefer XY color mode in ZHA

Remove a few more HS remnants

* Use new ZHA OTA format

* Bump ZHA to 0.0.32

* Fix existing OTA unit tests

* Fix schema conversion test to account for new command parameters

* Update snapshot with new `zcl_type` kwarg

* Migrate existing entities to icon translations

* Remove "no longer compatible" test

* Test that the library release summary is correctly exposed to ZHA

* Revert "Always prefer XY color mode in ZHA"

This reverts commit 8fb7789ea8.

* Test `release_notes`, not `release_summary`
2024-08-30 20:08:10 +02:00
tronikos
3c0480596d Attempt to fix IndexError in Opower (#124478)
* Change the order of async_add_external_statistics in Opower

* Use consumption_statistic_id instead of cost_statistic_id
2024-08-30 20:08:09 +02:00
Jeef
81d2231e6f Bump weatherflow4py to 0.2.23 (#124072)
patch weatherflow for new data
2024-08-30 20:08:08 +02:00
Tony
2d041a1fa9 Bump aioruckus to v0.41 removing blocking call to load_default_certs from ruckus_unleashed integration (#123974)
* fix ruckusd_unleashed blocking call to load_default_certs

* remove extra loggers, bump aioruckus ver for debian packagers
2024-08-30 20:08:07 +02:00
Bram Kragten
03a02fa565 Bump version to 2024.9.0b1 2024-08-29 17:31:37 +02:00
Bram Kragten
b2f27a4519 Update frontend to 20240829.0 (#124864) 2024-08-29 17:28:06 +02:00
Joost Lekkerkerker
b906a1b521 Add missing translation key in Knocki (#124862) 2024-08-29 17:28:06 +02:00
Fredrik Erlandsson
754e4255b6 Bump pydaikin to 2.13.6 (#124852) 2024-08-29 17:28:05 +02:00
Andrew Jackson
ff39f09c4e Fix Mastodon migrate config entry log warning (#124848)
Fix migrate config entry
2024-08-29 17:28:04 +02:00
AutonomousOwl
3078b47d06 Update utility_account_id in Opower to be lowercase in statistic id (#124837)
Update utility_account_id to be lowercase in statistic id
2024-08-29 17:28:03 +02:00
J. Nick Koston
71de50dae8 Add missing dependencies to yale (#124821)
* Add missing dependencies to yale

* try another way

* Revert "try another way"

This reverts commit fbb731a334.

* patch out cloud setup
2024-08-29 17:28:03 +02:00
J. Nick Koston
e8b722f7b2 Redirect virtual integration yale_home to point to yale (#124817) 2024-08-29 17:28:02 +02:00
Pete Sage
a2053d073f Fix sonos get_queue service call to restrict to sonos media_player entities (#124815)
add sonos to filter
2024-08-29 17:28:01 +02:00
J. Nick Koston
aa72b08c16 Address yale review comments (#124810)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-08-29 17:28:00 +02:00
Fredrik Erlandsson
66480da218 Bump pydaikin to 2.13.5 (#124802)
bump pydaikin version
2024-08-29 17:27:59 +02:00
Tobias Sauerwein
3b214f6610 Bump pyatmo to 8.1.0 (#124340) 2024-08-29 17:27:59 +02:00
Bram Kragten
1e035064f4
2024.9.0b0: It's beta time (#124807) 2024-08-28 19:02:42 +02:00
Robert Resch
2856525c12
Bump version to 2024.9.0b0 2024-08-28 16:40:52 +00:00
Robert Resch
22cfb7059a
Merge remote-tracking branch 'origin/rc' into edenhaus-2024.9.0b0 2024-08-28 16:36:20 +00:00
Paulus Schoutsen
516f3295bf
2024.8.3 (#124569) 2024-08-25 16:06:09 +02:00
J. Nick Koston
2d5289e7dd Revert "Exclude aiohappyeyeballs from license check" (#124116) 2024-08-25 13:41:47 +00:00
Paulus Schoutsen
18efd84a35 Bump version to 2024.8.3 2024-08-25 13:26:00 +00:00
Jan Bouwhuis
b34c90b189 Only support remote activity on Alexa if feature is set and at least one feature is in the activity_list (#124567)
Only support remote activity on Alexa if feaure is set and at least one feature is in the activity_list
2024-08-25 13:24:42 +00:00
Mr. Bubbles
a45c1a3914 Fix missing id in Habitica completed todos API response (#124565)
* Fix missing id in completed todos API response

* Copy id only if none

* Update homeassistant/components/habitica/coordinator.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2024-08-25 13:24:42 +00:00
J. Nick Koston
1bdf9d657e Bump yalexs to 8.4.1 (#124553)
changelog: https://github.com/bdraco/yalexs/compare/v8.4.0...v8.4.1
2024-08-25 13:24:41 +00:00
J. Nick Koston
b294a92ad2 Bump yalexs to 8.4.0 (#124520) 2024-08-25 13:24:40 +00:00
J. Nick Koston
2db362ab3d Bump yalexs to 8.3.3 (#124492)
* Bump yalexs to 8.2.0

changelog: https://github.com/bdraco/yalexs/compare/v8.1.4...v8.2.0

* bump to 8.3.1

* bump

* one more bump to ensure we do not hit the ratelimit/shutdown cleanly

* empty commit to restart ci since close/open did not work in flight
2024-08-25 13:24:39 +00:00
Joost Lekkerkerker
5f275a6b9c Don't raise WLED user flow unique_id check (#124481) 2024-08-25 13:22:59 +00:00
Ino Dekker
fa914b2811 Bump aiohue to version 4.7.3 (#124436) 2024-08-25 13:22:58 +00:00
J. Nick Koston
a128e2e4fc Bump yalexs to 8.1.4 (#124425)
changelog: https://github.com/bdraco/yalexs/compare/v8.1.2...v8.1.4
2024-08-25 13:22:57 +00:00
Penny Wood
03c7f2cf5b Add supported features for iZone (#124416)
* Fix for #123462

* Set outside of constructor
2024-08-25 13:22:57 +00:00
Angel Nunez Mencias
102528e5d3 update ttn_client - fix crash with SenseCAP devices (#124370)
update ttn_client
2024-08-25 13:22:56 +00:00
Pete Sage
8f4af4f7c2 Fix Spotify Media Browsing fails for new config entries (#124368)
* initial commit

* tests

* tests

* update tests

* update tests

* update tests
2024-08-25 13:22:55 +00:00
karwosts
667af10017 Add missing strings for riemann options flow (#124317) 2024-08-25 13:22:54 +00:00
G Johansson
e5a64a1e0a Bump python-holidays to 0.55 (#124314) 2024-08-25 13:22:54 +00:00
G Johansson
236fa8e238 Bump python-holidays to 0.54 (#124170) 2024-08-25 13:22:53 +00:00
J. Nick Koston
70a58a0bb0 Bump yalexs to 8.1.2 (#124303) 2024-08-25 13:20:54 +00:00
Joost Lekkerkerker
769c7f1ea3 Don't abort airgradient user flow if flow in progress (#124300) 2024-08-25 13:20:53 +00:00
Marcel van der Veldt
5a8045d1fb Prevent KeyError when Matter device sends invalid value for StartUpOnOff (#124280) 2024-08-25 13:20:52 +00:00
Allen Porter
5a73b636e3 Bump python-roborock to 2.6.0 (#124268) 2024-08-25 13:20:51 +00:00
Matthias Alphart
524e09b45e Update xknx to 3.1.1 (#124257) 2024-08-25 13:20:51 +00:00
J. Nick Koston
1f46670266 Bump aiohttp to 3.10.5 (#124254) 2024-08-25 13:20:50 +00:00
Erik Montnemery
a857f603c8 Bump pyhomeworks to 1.1.2 (#124199) 2024-08-25 13:20:49 +00:00
J. Nick Koston
b7d8f3d005 Fix shelly available check when device is not initialized (#124182)
* Fix shelly available check when device is not initialized

available needs to check for device.initialized or if the device
is sleepy as calls to status will raise NotInitialized which results
in many unretrieved exceptions while writing state

fixes
```
2024-08-18 09:33:03.757 ERROR (MainThread) [homeassistant] Error doing job: Task exception was never retrieved (None)
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 258, in _handle_refresh_interval
    await self._async_refresh(log_failures=True, scheduled=True)
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 453, in _async_refresh
    self.async_update_listeners()
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 168, in async_update_listeners
    update_callback()
  File "/config/custom_components/shelly/entity.py", line 374, in _update_callback
    self.async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1005, in async_write_ha_state
    self._async_write_ha_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1130, in _async_write_ha_state
    self.__async_calculate_state()
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1067, in __async_calculate_state
    state = self._stringify_state(available)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 1011, in _stringify_state
    if (state := self.state) is None:
                 ^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/binary_sensor/__init__.py", line 293, in state
    if (is_on := self.is_on) is None:
                 ^^^^^^^^^^
  File "/config/custom_components/shelly/binary_sensor.py", line 331, in is_on
    return bool(self.attribute_value)
                ^^^^^^^^^^^^^^^^^^^^
  File "/config/custom_components/shelly/entity.py", line 545, in attribute_value
    self._last_value = self.sub_status
                       ^^^^^^^^^^^^^^^
  File "/config/custom_components/shelly/entity.py", line 534, in sub_status
    return self.status[self.entity_description.sub_key]
           ^^^^^^^^^^^
  File "/config/custom_components/shelly/entity.py", line 364, in status
    return cast(dict, self.coordinator.device.status[self.key])
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/aioshelly/rpc_device/device.py", line 390, in status
    raise NotInitialized
aioshelly.exceptions.NotInitialized
```

* tweak

* cover

* fix

* cover

* fixes
2024-08-25 13:19:57 +00:00
Shay Levy
129035967b Shelly RPC - do not stop BLE scanner if a sleeping device (#124147) 2024-08-25 13:17:46 +00:00
Christopher Maio
45b44f8a59 Update Matter light transition blocklist to include GE Cync Undercabinet Lights (#124138) 2024-08-25 13:17:45 +00:00
J. Nick Koston
e80dc52175 Bump aiohttp to 3.10.4 (#124137)
changelog: https://github.com/aio-libs/aiohttp/compare/v3.10.3...v3.10.4
2024-08-25 13:17:45 +00:00
MarkGodwin
22bb3e5477 Bump tplink-omada-api to 1.4.2 (#124136)
Fix for bad pre-registered clients
2024-08-25 13:17:44 +00:00
Allen Porter
f89e8e6ceb Bump nest to 4.0.7 to increase subscriber deadline (#124131)
Bump nest to 4.0.7
2024-08-25 13:17:43 +00:00
J. Nick Koston
157a61845b Bump aiohomekit to 3.2.3 (#124115) 2024-08-25 13:17:43 +00:00
Artem Draft
0fcdc3c200 Bump pybravia to 0.3.4 (#124113) 2024-08-25 13:17:42 +00:00
cdnninja
d1f09ecd0c Add Alt Core300s model to vesync integration (#124091) 2024-08-25 13:17:41 +00:00
J. Nick Koston
3484ab3c0c Bump aioshelly to 11.2.4 (#124080) 2024-08-25 13:17:40 +00:00
J. Nick Koston
80df582ebd Bump yalexs to 8.0.2 (#123817) 2024-08-25 13:17:39 +00:00
J. Nick Koston
dc967e2ef2 Bump yalexs to 6.5.0 (#123739) 2024-08-25 13:17:39 +00:00
Daniel Rozycki
e2c1a38d87 Skip NextBus update if integration is still loading (#123564)
* Skip NextBus update if integration is still loading

Fixes a race between the loading thread and
update thread leading to an unrecoverable error

* Use async_at_started

* Use local copy of _route_stops to avoid NextBus race condition

* Update homeassistant/components/nextbus/coordinator.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-08-25 13:17:38 +00:00
Franck Nijhof
94516de724
2024.8.2 (#124069) 2024-08-16 18:43:41 +02:00
Joost Lekkerkerker
a2027fc78c
Exclude aiohappyeyeballs from license check (#124041) 2024-08-16 18:13:33 +02:00
Franck Nijhof
be5577c2f9
Bump version to 2024.8.2 2024-08-16 18:02:52 +02:00
Joost Lekkerkerker
93dc08a05f
Bump aiomealie to 0.8.1 (#124047) 2024-08-16 18:02:41 +02:00
Matthias Alphart
def2ace4ec
Fix loading KNX integration actions when not using YAML (#124027)
* Fix loading KNX integration services when not using YAML

* remove unnecessary comment

* Remove unreachable test
2024-08-16 18:02:38 +02:00
J. Nick Koston
4f0261d739
Bump bluetooth-adapters to 0.19.4 (#124018)
Fixes a call to enumerate USB devices that did blocking
I/O
2024-08-16 18:02:35 +02:00
Brett Adams
6103811de8
Fix rear trunk logic in Tessie (#124011)
Allow open to be anything not zero
2024-08-16 18:02:32 +02:00
Robert Svensson
fd904c65a7
Bump aiounifi to v80 (#124004) 2024-08-16 18:02:29 +02:00
Joost Lekkerkerker
04bf8482b2
Re-enable concord232 (#124000) 2024-08-16 18:02:26 +02:00
Sid
f5fd5e0457
Bump openwebifpy to 4.2.7 (#123995)
* Bump openwebifpy to 4.2.6

* Bump openwebifpy to 4.2.7

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-08-16 18:02:23 +02:00
J. Nick Koston
0de89b42aa
Ensure event entities are allowed for linked homekit config via YAML (#123994) 2024-08-16 18:02:20 +02:00
Erik Montnemery
e8914552b1
Bump pyhomeworks to 1.1.1 (#123981) 2024-08-16 18:02:17 +02:00
Glenn Waters
bfd302109e
Environment Canada weather format fix (#123960)
* Add missing isoformat.

* Move fixture loading to common conftest.py

* Add deepcopy.
2024-08-16 18:02:14 +02:00
Andre Lengwenus
796ad47dd0
Bump pypck to 0.7.20 (#123948) 2024-08-16 18:02:11 +02:00
IceBotYT
e9915463a9
Bump LaCrosse View to 1.0.2, fixes blocking call (#123935) 2024-08-16 18:02:07 +02:00
Michael
59aecda8cf
Fix PI-Hole update entity when no update available (#123930)
show installed version when no update available
2024-08-16 17:58:24 +02:00
J. Nick Koston
7d00ccbbbc
Bump pylutron_caseta to 0.21.1 (#123924) 2024-08-16 17:58:21 +02:00
Álvaro Fernández Rojas
55a911120c
Handle timeouts on Airzone DHCP config flow (#123869)
airzone: config_flow: dhcp: catch timeout exception

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-08-16 17:58:18 +02:00
Michael
80abf90c87
Fix translation for integration not found repair issue (#123868)
* correct setp id in strings

* add issue_ignored string
2024-08-16 17:58:15 +02:00
Robert Resch
8539591307
Fix blocking I/O of SSLContext.load_default_certs in Ecovacs (#123856) 2024-08-16 17:58:12 +02:00
Michael
6234deeee1
Bump py-synologydsm-api to 2.4.5 (#123815)
bump py-synologydsm-api to 2.4.5
2024-08-16 17:57:59 +02:00
Louis Christ
81fabb1bfa
Fix status update loop in bluesound integration (#123790)
* Fix retry loop for status update

* Use 'available' instead of _is_online

* Fix tests
2024-08-16 17:56:23 +02:00
Matthias Alphart
ff4e5859cf
Fix KNX UI Light color temperature DPT (#123778) 2024-08-16 17:13:31 +02:00
Matthias Alphart
f2e42eafc7
Update xknx to 3.1.0 and fix climate read only mode (#123776) 2024-08-16 17:13:28 +02:00
Allen Porter
63f28ae2fe
Bump python-nest-sdm to 4.0.6 (#123762) 2024-08-16 17:13:25 +02:00
Ian
5b6c6141c5
Bump py-nextbusnext to 2.0.4 (#123750) 2024-08-16 17:13:22 +02:00
Michael
396ef7a642
Fix error message in html5 (#123749) 2024-08-16 17:13:19 +02:00
Franck Nijhof
17f59a5665
Update wled to 0.20.2 (#123746) 2024-08-16 17:13:16 +02:00
David F. Mulcahey
10846dc97b
Bump ZHA lib to 0.0.31 (#123743) 2024-08-16 17:13:13 +02:00
Álvaro Fernández Rojas
17bb00727d
Update aioqsw to v0.4.1 (#123721) 2024-08-16 17:13:10 +02:00
Álvaro Fernández Rojas
bc021dbbc6
Update aioairzone-cloud to v0.6.2 (#123719) 2024-08-16 17:13:06 +02:00
Álvaro Fernández Rojas
e3cb9c0844
Update AEMET-OpenData to v0.5.4 (#123716) 2024-08-16 17:13:03 +02:00
David Knowles
050e2c9404
Bump pyschlage to 2024.8.0 (#123714) 2024-08-16 17:13:00 +02:00
Cyrill Raccaud
5ea447ba48
Fix startup block from Swiss public transport (#123704) 2024-08-16 17:12:57 +02:00
J. Nick Koston
a23b063922
Bump aiohomekit to 3.2.2 (#123669) 2024-08-16 17:12:53 +02:00
Aidan Timson
c269d57259
System Bridge package updates (#123657) 2024-08-16 17:12:50 +02:00
kingy444
d512f327c5
Bump pydaikin to 2.13.4 (#123623)
* bump pydaikin to 2.13.3

* bump pydaikin to 2.13.4
2024-08-16 17:12:46 +02:00
Maciej Bieniek
9bf8c5a54b
Bump aioshelly to version 11.2.0 (#123602)
Bump aioshelly to version 11.2.0
2024-08-16 17:12:43 +02:00
J. Nick Koston
725e2f16f5
Ensure HomeKit connection is kept alive for devices that timeout too quickly (#123601) 2024-08-16 17:12:21 +02:00
G Johansson
d98d0cdad0
Change WoL to be secondary on device info (#123591) 2024-08-16 17:07:24 +02:00
Noah Husby
e2f4aa893f
Fix secondary russound controller discovery failure (#123590) 2024-08-16 17:07:21 +02:00
Matthias Alphart
6b81fa89d3
Update knx-frontend to 2024.8.9.225351 (#123557) 2024-08-16 17:07:18 +02:00
J. Nick Koston
c886587915
Bump aiohttp to 3.10.3 (#123549) 2024-08-16 17:07:15 +02:00
Phill (pssc)
059d3eed98
Handle Yamaha ValueError (#123547)
* fix yamaha remove info logging

* ruff

* fix yamnaha supress rxv.find UnicodeDecodeError

* fix formatting

* make more realistic

* make more realistic and use parms

* add value error after more feedback

* ruff format

* Update homeassistant/components/yamaha/media_player.py

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

* remove unused method

* add more debugging

* Increase discovery timeout add more debug allow config to overrite dicovery for name

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-08-16 17:07:12 +02:00
Erik Montnemery
f9ae2b4453
Drop violating rows before adding foreign constraints in DB schema 44 migration (#123454)
* Drop violating rows before adding foreign constraints

* Don't delete rows with null-references

* Only delete rows when integrityerror is caught

* Move restore of dropped foreign key constraints to a separate migration step

* Use aliases for tables

* Update homeassistant/components/recorder/migration.py

* Update test

* Don't use alias for table we're deleting from, improve test

* Fix MySQL

* Update instead of deleting in case of self references

* Improve log messages

* Batch updates

* Add workaround for unsupported LIMIT in PostgreSQL

* Simplify

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2024-08-16 17:07:09 +02:00
ilan
742c7ba23f
Fix Madvr sensor values on startup (#122479)
* fix: add startup values

* fix: update snap

* fix: use native value to show None
2024-08-16 17:07:06 +02:00
wittypluck
e7ae5c5c24
Avoid Exception on Glances missing key (#114628)
* Handle case of sensors removed server side

* Update available state on value update

* Set uptime to None if key is missing

* Replace _attr_available by _data_valid
2024-08-16 17:07:02 +02:00
Franck Nijhof
ae4fc9504a
2024.8.1 (#123544) 2024-08-10 19:32:02 +02:00
Franck Nijhof
2ef337ec2e
Bump version to 2024.8.1 2024-08-10 18:41:57 +02:00
cnico
723b7bd532
Upgrade chacon_dio_api to version 1.2.0 (#123528)
Upgrade api version 1.2.0 with the first user feedback improvement
2024-08-10 18:41:39 +02:00
Joost Lekkerkerker
4fdb11b0d8
Bump AirGradient to 0.8.0 (#123527) 2024-08-10 18:41:36 +02:00
Matt Way
fe2e6c37f4
Bump pydaikin to 2.13.2 (#123519) 2024-08-10 18:41:32 +02:00
Michael
4a75c55a8f
Fix cleanup of old orphan device entries in AVM Fritz!Tools (#123516)
fix cleanup of old orphan device entries
2024-08-10 18:41:29 +02:00
Duco Sebel
dfb59469cf
Bumb python-homewizard-energy to 6.2.0 (#123514) 2024-08-10 18:41:26 +02:00
David F. Mulcahey
bdb2e1e2e9
Bump zha lib to 0.0.30 (#123499) 2024-08-10 18:41:22 +02:00
Franck Nijhof
c4f6f1e3d8
Update frontend to 20240809.0 (#123485) 2024-08-10 18:41:19 +02:00
Louis Christ
fb3eae54ea
Fix startup blocked by bluesound integration (#123483) 2024-08-10 18:41:16 +02:00
Jake Martin
d3f8fce788
Bump monzopy to 1.3.2 (#123480) 2024-08-10 18:41:13 +02:00
Steve Easley
44e58a8c87
Bump pyjvcprojector to 1.0.12 to fix blocking call (#123473) 2024-08-10 18:41:09 +02:00
puddly
3d3879b0db
Bump ZHA library to 0.0.29 (#123464)
* Bump zha to 0.0.29

* Pass the Core timezone to ZHA

* Add a unit test
2024-08-10 18:41:06 +02:00
Franck Nijhof
a8b1eb34f3
Support action YAML syntax in old-style notify groups (#123457) 2024-08-10 18:41:03 +02:00
Matrix
fd77058def
Bump YoLink API to 0.4.7 (#123441) 2024-08-10 18:41:00 +02:00
Brett Adams
b147ca6c5b
Add missing logger to Tessie (#123413) 2024-08-10 18:40:57 +02:00
dupondje
670c4cacfa
Also migrate dsmr entries for devices with correct serial (#123407)
dsmr: also migrate entries for devices with correct serial

When the dsmr code could not find the serial_nr for the gas meter,
it creates the gas meter device with the entry_id as identifier.

But when there is a correct serial_nr, it will use that as identifier
for the dsmr gas device.

Now the migration code did not take this into account, so migration to
the new name failed since it didn't look for the device with correct
serial_nr.

This commit fixes this and adds a test for this.
2024-08-10 18:40:53 +02:00
J. Nick Koston
1ed0a89303
Bump aiohttp to 3.10.2 (#123394) 2024-08-10 18:40:50 +02:00
J. Nick Koston
ab0597da7b
Ensure legacy event foreign key is removed from the states table when a previous rebuild failed (#123388)
* Ensure legacy event foreign key is removed from the states table

If the system ran out of disk space removing the FK, it would
fail. #121938 fixed that to try again, however that PR was made
ineffective by #122069 since it will never reach the check.

To solve this, the migration version is incremented to 2, and
the migration is no longer marked as done unless the rebuild
/fk removal is successful.

* fix logic for mysql

* fix test

* asserts

* coverage

* coverage

* narrow test

* fixes

* split tests

* should have skipped

* fixture must be used
2024-08-10 18:40:47 +02:00
Erik Montnemery
a3db6bc8fa
Revert "Fix blocking I/O while validating config schema" (#123377) 2024-08-10 18:40:44 +02:00
Noah Husby
9bfc8f6e27
Bump aiorussound to 2.2.2 (#123319) 2024-08-10 18:40:41 +02:00
J. Nick Koston
6fddef2dc5
Fix doorbird with externally added events (#123313) 2024-08-10 18:40:38 +02:00
fustom
ec08a85aa0
Fix limit and order property for transmission integration (#123305) 2024-08-10 18:40:35 +02:00
Evgeny
de7af575c5
Bump OpenWeatherMap to 0.1.1 (#120178)
* add owm modes

* fix tests

* fix modes

* remove sensors

* Update homeassistant/components/openweathermap/sensor.py

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-08-10 18:40:32 +02:00
Tom Brien
d3831bae4e
Add support for v3 Coinbase API (#116345)
* Add support for v3 Coinbase API

* Add deps

* Move tests
2024-08-10 18:40:28 +02:00
4008 changed files with 173506 additions and 53445 deletions

View file

@ -79,6 +79,7 @@ components: &components
- homeassistant/components/group/**
- homeassistant/components/hassio/**
- homeassistant/components/homeassistant/**
- homeassistant/components/homeassistant_hardware/**
- homeassistant/components/http/**
- homeassistant/components/image/**
- homeassistant/components/input_boolean/**
@ -127,6 +128,7 @@ tests: &tests
- tests/*.py
- tests/auth/**
- tests/backports/**
- tests/components/conftest.py
- tests/components/diagnostics/**
- tests/components/history/**
- tests/components/logbook/**

View file

@ -2,7 +2,7 @@
"name": "Home Assistant Dev",
"context": "..",
"dockerFile": "../Dockerfile.dev",
"postCreateCommand": "script/setup",
"postCreateCommand": "git config --global --add safe.directory ${containerWorkspaceFolder} && script/setup",
"postStartCommand": "script/bootstrap",
"containerEnv": {
"PYTHONASYNCIODEBUG": "1"
@ -12,7 +12,12 @@
},
// Port 5683 udp is used by Shelly integration
"appPort": ["8123:8123", "5683:5683/udp"],
"runArgs": ["-e", "GIT_EDITOR=code --wait"],
"runArgs": [
"-e",
"GIT_EDITOR=code --wait",
"--security-opt",
"label=disable"
],
"customizations": {
"vscode": {
"extensions": [
@ -53,7 +58,13 @@
],
"[python]": {
"editor.defaultFormatter": "charliermarsh.ruff"
}
},
"json.schemas": [
{
"fileMatch": ["homeassistant/components/*/manifest.json"],
"url": "./script/json_schemas/manifest_schema.json"
}
]
}
}
}

View file

@ -7,6 +7,7 @@ docs
# Development
.devcontainer
.vscode
.tool-versions
# Test related files
tests

3
.github/FUNDING.yml vendored
View file

@ -1,2 +1 @@
custom: https://www.nabucasa.com
github: balloob
custom: https://www.openhomefoundation.org

View file

@ -10,7 +10,7 @@ on:
env:
BUILD_TYPE: core
DEFAULT_PYTHON: "3.12"
DEFAULT_PYTHON: "3.13"
PIP_TIMEOUT: 60
UV_HTTP_TIMEOUT: 60
UV_SYSTEM_PYTHON: "true"
@ -27,12 +27,12 @@ jobs:
publish: ${{ steps.version.outputs.publish }}
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
with:
fetch-depth: 0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@ -69,7 +69,7 @@ jobs:
run: find ./homeassistant/components/*/translations -name "*.json" | tar zcvf translations.tar.gz -T -
- name: Upload translations
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: translations
path: translations.tar.gz
@ -90,7 +90,7 @@ jobs:
arch: ${{ fromJson(needs.init.outputs.architectures) }}
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Download nightly wheels of frontend
if: needs.init.outputs.channel == 'dev'
@ -116,7 +116,7 @@ jobs:
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
if: needs.init.outputs.channel == 'dev'
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@ -242,7 +242,7 @@ jobs:
- green
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set build additional args
run: |
@ -279,7 +279,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Initialize git
uses: home-assistant/actions/helpers/git-init@master
@ -321,10 +321,10 @@ jobs:
registry: ["ghcr.io/home-assistant", "docker.io/homeassistant"]
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Install Cosign
uses: sigstore/cosign-installer@v3.6.0
uses: sigstore/cosign-installer@v3.7.0
with:
cosign-release: "v2.2.3"
@ -451,10 +451,10 @@ jobs:
if: github.repository_owner == 'home-assistant' && needs.init.outputs.publish == 'true'
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@ -499,7 +499,7 @@ jobs:
HASSFEST_IMAGE_TAG: ghcr.io/home-assistant/hassfest:${{ needs.init.outputs.version }}
steps:
- name: Checkout repository
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: Login to GitHub Container Registry
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3.3.0
@ -509,7 +509,7 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build Docker image
uses: docker/build-push-action@5cd11c3a4ced054e52742c5fd54dca954e0edd85 # v6.7.0
uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75 # v6.9.0
with:
context: . # So action will not pull the repository again
file: ./script/hassfest/docker/Dockerfile
@ -522,7 +522,7 @@ jobs:
- name: Push Docker image
if: needs.init.outputs.channel != 'dev' && needs.init.outputs.publish == 'true'
id: push
uses: docker/build-push-action@5cd11c3a4ced054e52742c5fd54dca954e0edd85 # v6.7.0
uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75 # v6.9.0
with:
context: . # So action will not pull the repository again
file: ./script/hassfest/docker/Dockerfile
@ -531,7 +531,7 @@ jobs:
- name: Generate artifact attestation
if: needs.init.outputs.channel != 'dev' && needs.init.outputs.publish == 'true'
uses: actions/attest-build-provenance@1c608d11d69870c2092266b3f9a6f3abbf17002c # v1.4.3
uses: actions/attest-build-provenance@ef244123eb79f2f7a7e75d99086184180e6d0018 # v1.4.4
with:
subject-name: ${{ env.HASSFEST_IMAGE_NAME }}
subject-digest: ${{ steps.push.outputs.digest }}

View file

@ -37,12 +37,12 @@ on:
type: boolean
env:
CACHE_VERSION: 10
CACHE_VERSION: 11
UV_CACHE_VERSION: 1
MYPY_CACHE_VERSION: 8
HA_SHORT_VERSION: "2024.10"
MYPY_CACHE_VERSION: 9
HA_SHORT_VERSION: "2024.12"
DEFAULT_PYTHON: "3.12"
ALL_PYTHON_VERSIONS: "['3.12']"
ALL_PYTHON_VERSIONS: "['3.12', '3.13']"
# 10.3 is the oldest supported version
# - 10.3.32 is the version currently shipped with Synology (as of 17 Feb 2022)
# 10.6 is the current long-term-support
@ -93,7 +93,7 @@ jobs:
runs-on: ubuntu-24.04
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Generate partial Python venv restore key
id: generate_python_cache_key
run: |
@ -231,16 +231,16 @@ jobs:
- info
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v4.0.2
uses: actions/cache@v4.1.2
with:
path: venv
key: >-
@ -256,7 +256,7 @@ jobs:
uv pip install "$(cat requirements_test.txt | grep pre-commit)"
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache@v4.0.2
uses: actions/cache@v4.1.2
with:
path: ${{ env.PRE_COMMIT_CACHE }}
lookup-only: true
@ -277,16 +277,16 @@ jobs:
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -295,7 +295,7 @@ jobs:
needs.info.outputs.pre-commit_cache_key }}
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
@ -317,16 +317,16 @@ jobs:
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -335,7 +335,7 @@ jobs:
needs.info.outputs.pre-commit_cache_key }}
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
@ -357,16 +357,16 @@ jobs:
- pre-commit
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -375,7 +375,7 @@ jobs:
needs.info.outputs.pre-commit_cache_key }}
- name: Restore pre-commit environment from cache
id: cache-precommit
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: ${{ env.PRE_COMMIT_CACHE }}
fail-on-cache-miss: true
@ -447,7 +447,7 @@ jobs:
- script/hassfest/docker/Dockerfile
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Register hadolint problem matcher
run: |
echo "::add-matcher::.github/workflows/matchers/hadolint.json"
@ -466,10 +466,10 @@ jobs:
python-version: ${{ fromJSON(needs.info.outputs.python_versions) }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
@ -482,7 +482,7 @@ jobs:
env.HA_SHORT_VERSION }}-$(date -u '+%Y-%m-%dT%H:%M:%s')" >> $GITHUB_OUTPUT
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v4.0.2
uses: actions/cache@v4.1.2
with:
path: venv
lookup-only: true
@ -491,7 +491,7 @@ jobs:
needs.info.outputs.python_cache_key }}
- name: Restore uv wheel cache
if: steps.cache-venv.outputs.cache-hit != 'true'
uses: actions/cache@v4.0.2
uses: actions/cache@v4.1.2
with:
path: ${{ env.UV_CACHE_DIR }}
key: >-
@ -550,16 +550,16 @@ jobs:
sudo apt-get -y install \
libturbojpeg
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore full Python ${{ env.DEFAULT_PYTHON }} virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -583,16 +583,16 @@ jobs:
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -615,37 +615,41 @@ jobs:
&& github.event.inputs.mypy-only != 'true'
|| github.event.inputs.audit-licenses-only == 'true')
&& needs.info.outputs.requirements == 'true'
strategy:
fail-fast: false
matrix:
python-version: ${{ fromJson(needs.info.outputs.python_versions) }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ env.DEFAULT_PYTHON }} virtual environment
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Run pip-licenses
- name: Extract license data
run: |
. venv/bin/activate
pip-licenses --format=json --output-file=licenses.json
python -m script.licenses extract --output-file=licenses-${{ matrix.python-version }}.json
- name: Upload licenses
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: licenses
path: licenses.json
- name: Process licenses
name: licenses-${{ github.run_number }}-${{ matrix.python-version }}
path: licenses-${{ matrix.python-version }}.json
- name: Check licenses
run: |
. venv/bin/activate
python -m script.licenses
python -m script.licenses check licenses-${{ matrix.python-version }}.json
pylint:
name: Check pylint
@ -660,16 +664,16 @@ jobs:
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore full Python ${{ env.DEFAULT_PYTHON }} virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -707,16 +711,16 @@ jobs:
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore full Python ${{ env.DEFAULT_PYTHON }} virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -752,10 +756,10 @@ jobs:
- base
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
@ -768,7 +772,7 @@ jobs:
env.HA_SHORT_VERSION }}-$(date -u '+%Y-%m-%dT%H:%M:%s')" >> $GITHUB_OUTPUT
- name: Restore full Python ${{ env.DEFAULT_PYTHON }} virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -776,7 +780,7 @@ jobs:
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
needs.info.outputs.python_cache_key }}
- name: Restore mypy cache
uses: actions/cache@v4.0.2
uses: actions/cache@v4.1.2
with:
path: .mypy_cache
key: >-
@ -827,16 +831,16 @@ jobs:
libturbojpeg \
libgammu-dev
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -848,7 +852,7 @@ jobs:
. venv/bin/activate
python -m script.split_tests ${{ needs.info.outputs.test_group_count }} tests
- name: Upload pytest_buckets
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: pytest_buckets
path: pytest_buckets.txt
@ -891,16 +895,16 @@ jobs:
libturbojpeg \
libgammu-dev
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -940,7 +944,8 @@ jobs:
-qq \
--timeout=9 \
--durations=10 \
-n auto \
--numprocesses auto \
--snapshot-details \
--dist=loadfile \
${cov_params[@]} \
-o console_output_style=count \
@ -949,14 +954,14 @@ jobs:
2>&1 | tee pytest-${{ matrix.python-version }}-${{ matrix.group }}.txt
- name: Upload pytest output
if: success() || failure() && steps.pytest-full.conclusion == 'failure'
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: pytest-${{ github.run_number }}-${{ matrix.python-version }}-${{ matrix.group }}
path: pytest-*.txt
overwrite: true
- name: Upload coverage artifact
if: needs.info.outputs.skip_coverage != 'true'
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: coverage-${{ matrix.python-version }}-${{ matrix.group }}
path: coverage.xml
@ -1011,16 +1016,16 @@ jobs:
libturbojpeg \
libmariadb-dev-compat
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -1062,7 +1067,8 @@ jobs:
python3 -b -X dev -m pytest \
-qq \
--timeout=20 \
-n 1 \
--numprocesses 1 \
--snapshot-details \
${cov_params[@]} \
-o console_output_style=count \
--durations=10 \
@ -1075,7 +1081,7 @@ jobs:
2>&1 | tee pytest-${{ matrix.python-version }}-${mariadb}.txt
- name: Upload pytest output
if: success() || failure() && steps.pytest-partial.conclusion == 'failure'
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: pytest-${{ github.run_number }}-${{ matrix.python-version }}-${{
steps.pytest-partial.outputs.mariadb }}
@ -1083,7 +1089,7 @@ jobs:
overwrite: true
- name: Upload coverage artifact
if: needs.info.outputs.skip_coverage != 'true'
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: coverage-${{ matrix.python-version }}-${{
steps.pytest-partial.outputs.mariadb }}
@ -1094,7 +1100,7 @@ jobs:
./script/check_dirty
pytest-postgres:
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
services:
postgres:
image: ${{ matrix.postgresql-group }}
@ -1134,19 +1140,21 @@ jobs:
sudo apt-get -y install \
bluez \
ffmpeg \
libturbojpeg \
libturbojpeg
sudo /usr/share/postgresql-common/pgdg/apt.postgresql.org.sh -y
sudo apt-get -y install \
postgresql-server-dev-14
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -1188,7 +1196,8 @@ jobs:
python3 -b -X dev -m pytest \
-qq \
--timeout=9 \
-n 1 \
--numprocesses 1 \
--snapshot-details \
${cov_params[@]} \
-o console_output_style=count \
--durations=0 \
@ -1202,7 +1211,7 @@ jobs:
2>&1 | tee pytest-${{ matrix.python-version }}-${postgresql}.txt
- name: Upload pytest output
if: success() || failure() && steps.pytest-partial.conclusion == 'failure'
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: pytest-${{ github.run_number }}-${{ matrix.python-version }}-${{
steps.pytest-partial.outputs.postgresql }}
@ -1210,7 +1219,7 @@ jobs:
overwrite: true
- name: Upload coverage artifact
if: needs.info.outputs.skip_coverage != 'true'
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: coverage-${{ matrix.python-version }}-${{
steps.pytest-partial.outputs.postgresql }}
@ -1232,14 +1241,14 @@ jobs:
timeout-minutes: 10
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Download all coverage artifacts
uses: actions/download-artifact@v4.1.8
with:
pattern: coverage-*
- name: Upload coverage to Codecov
if: needs.info.outputs.test_full_suite == 'true'
uses: codecov/codecov-action@v4.5.0
uses: codecov/codecov-action@v4.6.0
with:
fail_ci_if_error: true
flags: full-suite
@ -1283,16 +1292,16 @@ jobs:
libturbojpeg \
libgammu-dev
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ matrix.python-version }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ matrix.python-version }}
check-latest: true
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache/restore@v4.0.2
uses: actions/cache/restore@v4.1.2
with:
path: venv
fail-on-cache-miss: true
@ -1334,7 +1343,8 @@ jobs:
python3 -b -X dev -m pytest \
-qq \
--timeout=9 \
-n auto \
--numprocesses auto \
--snapshot-details \
${cov_params[@]} \
-o console_output_style=count \
--durations=0 \
@ -1344,14 +1354,14 @@ jobs:
2>&1 | tee pytest-${{ matrix.python-version }}-${{ matrix.group }}.txt
- name: Upload pytest output
if: success() || failure() && steps.pytest-partial.conclusion == 'failure'
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: pytest-${{ github.run_number }}-${{ matrix.python-version }}-${{ matrix.group }}
path: pytest-*.txt
overwrite: true
- name: Upload coverage artifact
if: needs.info.outputs.skip_coverage != 'true'
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: coverage-${{ matrix.python-version }}-${{ matrix.group }}
path: coverage.xml
@ -1370,14 +1380,14 @@ jobs:
timeout-minutes: 10
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Download all coverage artifacts
uses: actions/download-artifact@v4.1.8
with:
pattern: coverage-*
- name: Upload coverage to Codecov
if: needs.info.outputs.test_full_suite == 'false'
uses: codecov/codecov-action@v4.5.0
uses: codecov/codecov-action@v4.6.0
with:
fail_ci_if_error: true
token: ${{ secrets.CODECOV_TOKEN }}

View file

@ -21,14 +21,14 @@ jobs:
steps:
- name: Check out code from GitHub
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Initialize CodeQL
uses: github/codeql-action/init@v3.26.8
uses: github/codeql-action/init@v3.27.3
with:
languages: python
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3.26.8
uses: github/codeql-action/analyze@v3.27.3
with:
category: "/language:python"

View file

@ -19,10 +19,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}

View file

@ -32,11 +32,11 @@ jobs:
architectures: ${{ steps.info.outputs.architectures }}
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v5.2.0
uses: actions/setup-python@v5.3.0
with:
python-version: ${{ env.DEFAULT_PYTHON }}
check-latest: true
@ -64,11 +64,8 @@ jobs:
- name: Write env-file
run: |
(
echo "GRPC_BUILD_WITH_BORING_SSL_ASM=false"
echo "GRPC_PYTHON_BUILD_SYSTEM_OPENSSL=true"
echo "GRPC_PYTHON_BUILD_WITH_CYTHON=true"
echo "GRPC_PYTHON_DISABLE_LIBC_COMPATIBILITY=true"
echo "GRPC_PYTHON_LDFLAGS=-lpthread -Wl,-wrap,memcpy -static-libgcc"
# Fix out of memory issues with rust
echo "CARGO_NET_GIT_FETCH_WITH_CLI=true"
@ -82,7 +79,7 @@ jobs:
) > .env_file
- name: Upload env_file
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: env_file
path: ./.env_file
@ -90,7 +87,7 @@ jobs:
overwrite: true
- name: Upload requirements_diff
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: requirements_diff
path: ./requirements_diff.txt
@ -102,7 +99,7 @@ jobs:
python -m script.gen_requirements_all ci
- name: Upload requirements_all_wheels
uses: actions/upload-artifact@v4.4.0
uses: actions/upload-artifact@v4.4.3
with:
name: requirements_all_wheels
path: ./requirements_all_wheels_*.txt
@ -115,11 +112,11 @@ jobs:
strategy:
fail-fast: false
matrix:
abi: ["cp312"]
abi: ["cp312", "cp313"]
arch: ${{ fromJson(needs.init.outputs.architectures) }}
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Download env_file
uses: actions/download-artifact@v4.1.8
@ -138,14 +135,14 @@ jobs:
sed -i "/uv/d" requirements_diff.txt
- name: Build wheels
uses: home-assistant/wheels@2024.07.1
uses: home-assistant/wheels@2024.11.0
with:
abi: ${{ matrix.abi }}
tag: musllinux_1_2
arch: ${{ matrix.arch }}
wheels-key: ${{ secrets.WHEELS_KEY }}
env-file: true
apk: "libffi-dev;openssl-dev;yaml-dev;nasm"
apk: "libffi-dev;openssl-dev;yaml-dev;nasm;zlib-dev"
skip-binary: aiohttp;multidict;yarl
constraints: "homeassistant/package_constraints.txt"
requirements-diff: "requirements_diff.txt"
@ -159,11 +156,11 @@ jobs:
strategy:
fail-fast: false
matrix:
abi: ["cp312"]
abi: ["cp312", "cp313"]
arch: ${{ fromJson(needs.init.outputs.architectures) }}
steps:
- name: Checkout the repository
uses: actions/checkout@v4.1.7
uses: actions/checkout@v4.2.2
- name: Download env_file
uses: actions/download-artifact@v4.1.8
@ -201,19 +198,19 @@ jobs:
split -l $(expr $(expr $(cat requirements_all.txt | wc -l) + 1) / 3) requirements_all_wheels_${{ matrix.arch }}.txt requirements_all.txt
- name: Create requirements for cython<3
if: matrix.abi == 'cp312'
run: |
# Some dependencies still require 'cython<3'
# and don't yet use isolated build environments.
# Build these first.
# grpcio: https://github.com/grpc/grpc/issues/33918
# pydantic: https://github.com/pydantic/pydantic/issues/7689
touch requirements_old-cython.txt
cat homeassistant/package_constraints.txt | grep 'grpcio==' >> requirements_old-cython.txt
cat homeassistant/package_constraints.txt | grep 'pydantic==' >> requirements_old-cython.txt
- name: Build wheels (old cython)
uses: home-assistant/wheels@2024.07.1
uses: home-assistant/wheels@2024.11.0
if: matrix.abi == 'cp312'
with:
abi: ${{ matrix.abi }}
tag: musllinux_1_2
@ -221,50 +218,50 @@ jobs:
wheels-key: ${{ secrets.WHEELS_KEY }}
env-file: true
apk: "bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev"
skip-binary: aiohttp;charset-normalizer;grpcio;multidict;SQLAlchemy;protobuf;pydantic;pymicro-vad;yarl
skip-binary: aiohttp;charset-normalizer;grpcio;multidict;SQLAlchemy;propcache;protobuf;pydantic;pymicro-vad;yarl
constraints: "homeassistant/package_constraints.txt"
requirements-diff: "requirements_diff.txt"
requirements: "requirements_old-cython.txt"
pip: "'cython<3'"
- name: Build wheels (part 1)
uses: home-assistant/wheels@2024.07.1
uses: home-assistant/wheels@2024.11.0
with:
abi: ${{ matrix.abi }}
tag: musllinux_1_2
arch: ${{ matrix.arch }}
wheels-key: ${{ secrets.WHEELS_KEY }}
env-file: true
apk: "bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev;nasm"
skip-binary: aiohttp;charset-normalizer;grpcio;multidict;SQLAlchemy;protobuf;pydantic;pymicro-vad;yarl
apk: "bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev;nasm;zlib-dev"
skip-binary: aiohttp;charset-normalizer;grpcio;multidict;SQLAlchemy;propcache;protobuf;pymicro-vad;yarl
constraints: "homeassistant/package_constraints.txt"
requirements-diff: "requirements_diff.txt"
requirements: "requirements_all.txtaa"
- name: Build wheels (part 2)
uses: home-assistant/wheels@2024.07.1
uses: home-assistant/wheels@2024.11.0
with:
abi: ${{ matrix.abi }}
tag: musllinux_1_2
arch: ${{ matrix.arch }}
wheels-key: ${{ secrets.WHEELS_KEY }}
env-file: true
apk: "bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev;nasm"
skip-binary: aiohttp;charset-normalizer;grpcio;multidict;SQLAlchemy;protobuf;pydantic;pymicro-vad;yarl
apk: "bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev;nasm;zlib-dev"
skip-binary: aiohttp;charset-normalizer;grpcio;multidict;SQLAlchemy;propcache;protobuf;pymicro-vad;yarl
constraints: "homeassistant/package_constraints.txt"
requirements-diff: "requirements_diff.txt"
requirements: "requirements_all.txtab"
- name: Build wheels (part 3)
uses: home-assistant/wheels@2024.07.1
uses: home-assistant/wheels@2024.11.0
with:
abi: ${{ matrix.abi }}
tag: musllinux_1_2
arch: ${{ matrix.arch }}
wheels-key: ${{ secrets.WHEELS_KEY }}
env-file: true
apk: "bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev;nasm"
skip-binary: aiohttp;charset-normalizer;grpcio;multidict;SQLAlchemy;protobuf;pydantic;pymicro-vad;yarl
apk: "bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;yaml-dev;openblas-dev;fftw-dev;lapack-dev;gfortran;blas-dev;eigen-dev;freetype-dev;glew-dev;harfbuzz-dev;hdf5-dev;libdc1394-dev;libtbb-dev;mesa-dev;openexr-dev;openjpeg-dev;uchardet-dev;nasm;zlib-dev"
skip-binary: aiohttp;charset-normalizer;grpcio;multidict;SQLAlchemy;propcache;protobuf;pymicro-vad;yarl
constraints: "homeassistant/package_constraints.txt"
requirements-diff: "requirements_diff.txt"
requirements: "requirements_all.txtac"

1
.gitignore vendored
View file

@ -79,6 +79,7 @@ pytest-*.txt
.pydevproject
.python-version
.tool-versions
# emacs auto backups
*~

View file

@ -1,6 +1,6 @@
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.6.6
rev: v0.7.3
hooks:
- id: ruff
args:
@ -83,14 +83,14 @@ repos:
pass_filenames: false
language: script
types: [text]
files: ^(homeassistant/.+/(icons|manifest|strings)\.json|homeassistant/brands/.*\.json|homeassistant/.+/services\.yaml|script/hassfest/(?!metadata|mypy_config).+\.py|requirements\.txt)$
files: ^(homeassistant/.+/(icons|manifest|strings)\.json|homeassistant/brands/.*\.json|homeassistant/.+/services\.yaml|script/hassfest/(?!metadata|mypy_config).+\.py|requirements.+\.txt)$
- id: hassfest-metadata
name: hassfest-metadata
entry: script/run-in-env.sh python3 -m script.hassfest -p metadata
entry: script/run-in-env.sh python3 -m script.hassfest -p metadata,docker
pass_filenames: false
language: script
types: [text]
files: ^(script/hassfest/metadata\.py|homeassistant/const\.py$|pyproject\.toml)$
files: ^(script/hassfest/metadata\.py|homeassistant/const\.py$|pyproject\.toml|homeassistant/components/go2rtc/const\.py)$
- id: hassfest-mypy-config
name: hassfest-mypy-config
entry: script/run-in-env.sh python3 -m script.hassfest -p mypy_config

View file

@ -124,6 +124,7 @@ homeassistant.components.bryant_evolution.*
homeassistant.components.bthome.*
homeassistant.components.button.*
homeassistant.components.calendar.*
homeassistant.components.cambridge_audio.*
homeassistant.components.camera.*
homeassistant.components.canary.*
homeassistant.components.cert_expiry.*
@ -208,12 +209,14 @@ homeassistant.components.geo_location.*
homeassistant.components.geocaching.*
homeassistant.components.gios.*
homeassistant.components.glances.*
homeassistant.components.go2rtc.*
homeassistant.components.goalzero.*
homeassistant.components.google.*
homeassistant.components.google_assistant_sdk.*
homeassistant.components.google_cloud.*
homeassistant.components.google_photos.*
homeassistant.components.google_sheets.*
homeassistant.components.govee_ble.*
homeassistant.components.gpsd.*
homeassistant.components.greeneye_monitor.*
homeassistant.components.group.*
@ -301,7 +304,6 @@ homeassistant.components.lookin.*
homeassistant.components.luftdaten.*
homeassistant.components.madvr.*
homeassistant.components.manual.*
homeassistant.components.map.*
homeassistant.components.mastodon.*
homeassistant.components.matrix.*
homeassistant.components.matter.*
@ -322,11 +324,13 @@ homeassistant.components.moon.*
homeassistant.components.mopeka.*
homeassistant.components.motionmount.*
homeassistant.components.mqtt.*
homeassistant.components.music_assistant.*
homeassistant.components.my.*
homeassistant.components.mysensors.*
homeassistant.components.myuplink.*
homeassistant.components.nam.*
homeassistant.components.nanoleaf.*
homeassistant.components.nasweb.*
homeassistant.components.neato.*
homeassistant.components.nest.*
homeassistant.components.netatmo.*
@ -336,6 +340,7 @@ homeassistant.components.nfandroidtv.*
homeassistant.components.nightscout.*
homeassistant.components.nissan_leaf.*
homeassistant.components.no_ip.*
homeassistant.components.nordpool.*
homeassistant.components.notify.*
homeassistant.components.notion.*
homeassistant.components.number.*
@ -345,6 +350,7 @@ homeassistant.components.oncue.*
homeassistant.components.onewire.*
homeassistant.components.onkyo.*
homeassistant.components.open_meteo.*
homeassistant.components.openai_conversation.*
homeassistant.components.openexchangerates.*
homeassistant.components.opensky.*
homeassistant.components.openuv.*
@ -352,6 +358,7 @@ homeassistant.components.oralb.*
homeassistant.components.otbr.*
homeassistant.components.overkiz.*
homeassistant.components.p1_monitor.*
homeassistant.components.panel_custom.*
homeassistant.components.peco.*
homeassistant.components.persistent_notification.*
homeassistant.components.pi_hole.*
@ -369,6 +376,7 @@ homeassistant.components.pvoutput.*
homeassistant.components.qnap_qsw.*
homeassistant.components.rabbitair.*
homeassistant.components.radarr.*
homeassistant.components.radio_browser.*
homeassistant.components.rainforest_raven.*
homeassistant.components.rainmachine.*
homeassistant.components.raspberry_pi.*
@ -406,6 +414,7 @@ homeassistant.components.sensor.*
homeassistant.components.sensoterra.*
homeassistant.components.senz.*
homeassistant.components.sfr_box.*
homeassistant.components.shell_command.*
homeassistant.components.shelly.*
homeassistant.components.shopping_list.*
homeassistant.components.simplepush.*
@ -420,6 +429,7 @@ homeassistant.components.snooz.*
homeassistant.components.solarlog.*
homeassistant.components.sonarr.*
homeassistant.components.speedtestdotnet.*
homeassistant.components.spotify.*
homeassistant.components.sql.*
homeassistant.components.squeezebox.*
homeassistant.components.ssdp.*
@ -434,6 +444,7 @@ homeassistant.components.suez_water.*
homeassistant.components.sun.*
homeassistant.components.surepetcare.*
homeassistant.components.switch.*
homeassistant.components.switch_as_x.*
homeassistant.components.switchbee.*
homeassistant.components.switchbot_cloud.*
homeassistant.components.switcher_kis.*
@ -502,6 +513,7 @@ homeassistant.components.whois.*
homeassistant.components.withings.*
homeassistant.components.wiz.*
homeassistant.components.wled.*
homeassistant.components.workday.*
homeassistant.components.worldclock.*
homeassistant.components.xiaomi_ble.*
homeassistant.components.yale_smart_alarm.*

View file

@ -6,5 +6,13 @@
// https://code.visualstudio.com/docs/python/testing#_pytest-configuration-settings
"python.testing.pytestEnabled": false,
// https://code.visualstudio.com/docs/python/linting#_general-settings
"pylint.importStrategy": "fromEnvironment"
"pylint.importStrategy": "fromEnvironment",
"json.schemas": [
{
"fileMatch": [
"homeassistant/components/*/manifest.json"
],
"url": "./script/json_schemas/manifest_schema.json"
}
]
}

View file

@ -40,6 +40,8 @@ build.json @home-assistant/supervisor
# Integrations
/homeassistant/components/abode/ @shred86
/tests/components/abode/ @shred86
/homeassistant/components/acaia/ @zweckj
/tests/components/acaia/ @zweckj
/homeassistant/components/accuweather/ @bieniu
/tests/components/accuweather/ @bieniu
/homeassistant/components/acmeda/ @atmurray
@ -496,8 +498,8 @@ build.json @home-assistant/supervisor
/tests/components/freebox/ @hacf-fr @Quentame
/homeassistant/components/freedompro/ @stefano055415
/tests/components/freedompro/ @stefano055415
/homeassistant/components/fritz/ @mammuth @AaronDavidSchneider @chemelli74 @mib1185
/tests/components/fritz/ @mammuth @AaronDavidSchneider @chemelli74 @mib1185
/homeassistant/components/fritz/ @AaronDavidSchneider @chemelli74 @mib1185
/tests/components/fritz/ @AaronDavidSchneider @chemelli74 @mib1185
/homeassistant/components/fritzbox/ @mib1185 @flabbamann
/tests/components/fritzbox/ @mib1185 @flabbamann
/homeassistant/components/fritzbox_callmonitor/ @cdce8p
@ -544,6 +546,8 @@ build.json @home-assistant/supervisor
/tests/components/github/ @timmo001 @ludeeus
/homeassistant/components/glances/ @engrbm87
/tests/components/glances/ @engrbm87
/homeassistant/components/go2rtc/ @home-assistant/core
/tests/components/go2rtc/ @home-assistant/core
/homeassistant/components/goalzero/ @tkdrob
/tests/components/goalzero/ @tkdrob
/homeassistant/components/gogogate2/ @vangorra
@ -615,8 +619,8 @@ build.json @home-assistant/supervisor
/tests/components/hlk_sw16/ @jameshilliard
/homeassistant/components/holiday/ @jrieger @gjohansson-ST
/tests/components/holiday/ @jrieger @gjohansson-ST
/homeassistant/components/home_connect/ @DavidMStraub
/tests/components/home_connect/ @DavidMStraub
/homeassistant/components/home_connect/ @DavidMStraub @Diegorro98
/tests/components/home_connect/ @DavidMStraub @Diegorro98
/homeassistant/components/homeassistant/ @home-assistant/core
/tests/components/homeassistant/ @home-assistant/core
/homeassistant/components/homeassistant_alerts/ @home-assistant/core
@ -657,6 +661,8 @@ build.json @home-assistant/supervisor
/tests/components/hunterdouglas_powerview/ @bdraco @kingy444 @trullock
/homeassistant/components/husqvarna_automower/ @Thomas55555
/tests/components/husqvarna_automower/ @Thomas55555
/homeassistant/components/husqvarna_automower_ble/ @alistair23
/tests/components/husqvarna_automower_ble/ @alistair23
/homeassistant/components/huum/ @frwickst
/tests/components/huum/ @frwickst
/homeassistant/components/hvv_departures/ @vigonotion
@ -817,6 +823,8 @@ build.json @home-assistant/supervisor
/tests/components/lektrico/ @lektrico
/homeassistant/components/lg_netcast/ @Drafteed @splinter98
/tests/components/lg_netcast/ @Drafteed @splinter98
/homeassistant/components/lg_thinq/ @LG-ThinQ-Integration
/tests/components/lg_thinq/ @LG-ThinQ-Integration
/homeassistant/components/lidarr/ @tkdrob
/tests/components/lidarr/ @tkdrob
/homeassistant/components/lifx/ @Djelibeybi
@ -948,6 +956,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/msteams/ @peroyvind
/homeassistant/components/mullvad/ @meichthys
/tests/components/mullvad/ @meichthys
/homeassistant/components/music_assistant/ @music-assistant
/tests/components/music_assistant/ @music-assistant
/homeassistant/components/mutesync/ @currentoor
/tests/components/mutesync/ @currentoor
/homeassistant/components/my/ @home-assistant/core
@ -962,6 +972,8 @@ build.json @home-assistant/supervisor
/tests/components/nam/ @bieniu
/homeassistant/components/nanoleaf/ @milanmeu @joostlek
/tests/components/nanoleaf/ @milanmeu @joostlek
/homeassistant/components/nasweb/ @nasWebio
/tests/components/nasweb/ @nasWebio
/homeassistant/components/neato/ @Santobert
/tests/components/neato/ @Santobert
/homeassistant/components/nederlandse_spoorwegen/ @YarmoM
@ -1002,6 +1014,8 @@ build.json @home-assistant/supervisor
/homeassistant/components/noaa_tides/ @jdelaney72
/homeassistant/components/nobo_hub/ @echoromeo @oyvindwe
/tests/components/nobo_hub/ @echoromeo @oyvindwe
/homeassistant/components/nordpool/ @gjohansson-ST
/tests/components/nordpool/ @gjohansson-ST
/homeassistant/components/notify/ @home-assistant/core
/tests/components/notify/ @home-assistant/core
/homeassistant/components/notify_events/ @matrozov @papajojo
@ -1024,6 +1038,8 @@ build.json @home-assistant/supervisor
/tests/components/nut/ @bdraco @ollo69 @pestevez
/homeassistant/components/nws/ @MatthewFlamm @kamiyo
/tests/components/nws/ @MatthewFlamm @kamiyo
/homeassistant/components/nyt_games/ @joostlek
/tests/components/nyt_games/ @joostlek
/homeassistant/components/nzbget/ @chriscla
/tests/components/nzbget/ @chriscla
/homeassistant/components/obihai/ @dshokouhi @ejpenney
@ -1043,6 +1059,7 @@ build.json @home-assistant/supervisor
/homeassistant/components/onewire/ @garbled1 @epenet
/tests/components/onewire/ @garbled1 @epenet
/homeassistant/components/onkyo/ @arturpragacz
/tests/components/onkyo/ @arturpragacz
/homeassistant/components/onvif/ @hunterjm
/tests/components/onvif/ @hunterjm
/homeassistant/components/open_meteo/ @frenck
@ -1084,10 +1101,10 @@ build.json @home-assistant/supervisor
/tests/components/ovo_energy/ @timmo001
/homeassistant/components/p1_monitor/ @klaasnicolaas
/tests/components/p1_monitor/ @klaasnicolaas
/homeassistant/components/palazzetti/ @dotvav
/tests/components/palazzetti/ @dotvav
/homeassistant/components/panel_custom/ @home-assistant/frontend
/tests/components/panel_custom/ @home-assistant/frontend
/homeassistant/components/panel_iframe/ @home-assistant/frontend
/tests/components/panel_iframe/ @home-assistant/frontend
/homeassistant/components/peco/ @IceBotYT
/tests/components/peco/ @IceBotYT
/homeassistant/components/pegel_online/ @mib1185
@ -1102,8 +1119,6 @@ build.json @home-assistant/supervisor
/tests/components/pi_hole/ @shenxn
/homeassistant/components/picnic/ @corneyl
/tests/components/picnic/ @corneyl
/homeassistant/components/pilight/ @trekky12
/tests/components/pilight/ @trekky12
/homeassistant/components/ping/ @jpbede
/tests/components/ping/ @jpbede
/homeassistant/components/plaato/ @JohNan
@ -1237,8 +1252,8 @@ build.json @home-assistant/supervisor
/tests/components/roku/ @ctalkington
/homeassistant/components/romy/ @xeniter
/tests/components/romy/ @xeniter
/homeassistant/components/roomba/ @pschmitt @cyr-ius @shenxn @Xitee1 @Orhideous
/tests/components/roomba/ @pschmitt @cyr-ius @shenxn @Xitee1 @Orhideous
/homeassistant/components/roomba/ @pschmitt @cyr-ius @shenxn @Orhideous
/tests/components/roomba/ @pschmitt @cyr-ius @shenxn @Orhideous
/homeassistant/components/roon/ @pavoni
/tests/components/roon/ @pavoni
/homeassistant/components/rpi_power/ @shenxn @swetoast
@ -1331,6 +1346,8 @@ build.json @home-assistant/supervisor
/tests/components/siren/ @home-assistant/core @raman325
/homeassistant/components/sisyphus/ @jkeljo
/homeassistant/components/sky_hub/ @rogerselwyn
/homeassistant/components/sky_remote/ @dunnmj @saty9
/tests/components/sky_remote/ @dunnmj @saty9
/homeassistant/components/skybell/ @tkdrob
/tests/components/skybell/ @tkdrob
/homeassistant/components/slack/ @tkdrob @fletcherau
@ -1349,6 +1366,7 @@ build.json @home-assistant/supervisor
/homeassistant/components/smarttub/ @mdz
/tests/components/smarttub/ @mdz
/homeassistant/components/smarty/ @z0mbieprocess
/tests/components/smarty/ @z0mbieprocess
/homeassistant/components/smhi/ @gjohansson-ST
/tests/components/smhi/ @gjohansson-ST
/homeassistant/components/smlight/ @tl-sl
@ -1382,15 +1400,13 @@ build.json @home-assistant/supervisor
/tests/components/spaceapi/ @fabaff
/homeassistant/components/speedtestdotnet/ @rohankapoorcom @engrbm87
/tests/components/speedtestdotnet/ @rohankapoorcom @engrbm87
/homeassistant/components/spider/ @peternijssen
/tests/components/spider/ @peternijssen
/homeassistant/components/splunk/ @Bre77
/homeassistant/components/spotify/ @frenck @joostlek
/tests/components/spotify/ @frenck @joostlek
/homeassistant/components/sql/ @gjohansson-ST @dougiteixeira
/tests/components/sql/ @gjohansson-ST @dougiteixeira
/homeassistant/components/squeezebox/ @rajlaud
/tests/components/squeezebox/ @rajlaud
/homeassistant/components/squeezebox/ @rajlaud @pssc @peteS-UK
/tests/components/squeezebox/ @rajlaud @pssc @peteS-UK
/homeassistant/components/srp_energy/ @briglx
/tests/components/srp_energy/ @briglx
/homeassistant/components/starline/ @anonym-tsk
@ -1414,8 +1430,8 @@ build.json @home-assistant/supervisor
/tests/components/stt/ @home-assistant/core
/homeassistant/components/subaru/ @G-Two
/tests/components/subaru/ @G-Two
/homeassistant/components/suez_water/ @ooii
/tests/components/suez_water/ @ooii
/homeassistant/components/suez_water/ @ooii @jb101010-2
/tests/components/suez_water/ @ooii @jb101010-2
/homeassistant/components/sun/ @Swamp-Ig
/tests/components/sun/ @Swamp-Ig
/homeassistant/components/sunweg/ @rokam
@ -1473,8 +1489,8 @@ build.json @home-assistant/supervisor
/tests/components/tedee/ @patrickhilker @zweckj
/homeassistant/components/tellduslive/ @fredrike
/tests/components/tellduslive/ @fredrike
/homeassistant/components/template/ @PhracturedBlue @tetienne @home-assistant/core
/tests/components/template/ @PhracturedBlue @tetienne @home-assistant/core
/homeassistant/components/template/ @PhracturedBlue @home-assistant/core
/tests/components/template/ @PhracturedBlue @home-assistant/core
/homeassistant/components/tesla_fleet/ @Bre77
/tests/components/tesla_fleet/ @Bre77
/homeassistant/components/tesla_wall_connector/ @einarhauks

View file

@ -7,12 +7,13 @@ FROM ${BUILD_FROM}
# Synchronize with homeassistant/core.py:async_stop
ENV \
S6_SERVICES_GRACETIME=240000 \
UV_SYSTEM_PYTHON=true
UV_SYSTEM_PYTHON=true \
UV_NO_CACHE=true
ARG QEMU_CPU
# Install uv
RUN pip3 install uv==0.4.12
RUN pip3 install uv==0.5.0
WORKDIR /usr/src
@ -29,15 +30,9 @@ RUN \
if ls homeassistant/home_assistant_*.whl 1> /dev/null 2>&1; then \
uv pip install homeassistant/home_assistant_*.whl; \
fi \
&& if [ "${BUILD_ARCH}" = "i386" ]; then \
linux32 uv pip install \
--no-build \
-r homeassistant/requirements_all.txt; \
else \
uv pip install \
--no-build \
-r homeassistant/requirements_all.txt; \
fi
&& uv pip install \
--no-build \
-r homeassistant/requirements_all.txt
## Setup Home Assistant Core
COPY . homeassistant/
@ -50,4 +45,19 @@ RUN \
# Home Assistant S6-Overlay
COPY rootfs /
# Needs to be redefined inside the FROM statement to be set for RUN commands
ARG BUILD_ARCH
# Get go2rtc binary
RUN \
case "${BUILD_ARCH}" in \
"aarch64") go2rtc_suffix='arm64' ;; \
"armhf") go2rtc_suffix='armv6' ;; \
"armv7") go2rtc_suffix='arm' ;; \
*) go2rtc_suffix=${BUILD_ARCH} ;; \
esac \
&& curl -L https://github.com/AlexxIT/go2rtc/releases/download/v1.9.7/go2rtc_linux_${go2rtc_suffix} --output /bin/go2rtc \
&& chmod +x /bin/go2rtc \
# Verify go2rtc can be executed
&& go2rtc --version
WORKDIR /config

View file

@ -35,6 +35,9 @@ RUN \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# Add go2rtc binary
COPY --from=ghcr.io/alexxit/go2rtc:latest /usr/local/bin/go2rtc /bin/go2rtc
# Install uv
RUN pip3 install uv

View file

@ -7,8 +7,6 @@ Check out `home-assistant.io <https://home-assistant.io>`__ for `a
demo <https://demo.home-assistant.io>`__, `installation instructions <https://home-assistant.io/getting-started/>`__,
`tutorials <https://home-assistant.io/getting-started/automation/>`__ and `documentation <https://home-assistant.io/docs/>`__.
This is a project of the `Open Home Foundation <https://www.openhomefoundation.org/>`__.
|screenshot-states|
Featured integrations
@ -22,9 +20,14 @@ components <https://developers.home-assistant.io/docs/creating_component_index/>
If you run into issues while using Home Assistant or during development
of a component, check the `Home Assistant help section <https://home-assistant.io/help/>`__ of our website for further help and information.
|ohf-logo|
.. |Chat Status| image:: https://img.shields.io/discord/330944238910963714.svg
:target: https://www.home-assistant.io/join-chat/
.. |screenshot-states| image:: https://raw.githubusercontent.com/home-assistant/core/dev/.github/assets/screenshot-states.png
:target: https://demo.home-assistant.io
.. |screenshot-integrations| image:: https://raw.githubusercontent.com/home-assistant/core/dev/.github/assets/screenshot-integrations.png
:target: https://home-assistant.io/integrations/
.. |ohf-logo| image:: https://www.openhomefoundation.org/badges/home-assistant.png
:alt: Home Assistant - A project from the Open Home Foundation
:target: https://www.openhomefoundation.org/

View file

@ -1,10 +1,10 @@
image: ghcr.io/home-assistant/{arch}-homeassistant
build_from:
aarch64: ghcr.io/home-assistant/aarch64-homeassistant-base:2024.06.1
armhf: ghcr.io/home-assistant/armhf-homeassistant-base:2024.06.1
armv7: ghcr.io/home-assistant/armv7-homeassistant-base:2024.06.1
amd64: ghcr.io/home-assistant/amd64-homeassistant-base:2024.06.1
i386: ghcr.io/home-assistant/i386-homeassistant-base:2024.06.1
aarch64: ghcr.io/home-assistant/aarch64-homeassistant-base:2024.11.0
armhf: ghcr.io/home-assistant/armhf-homeassistant-base:2024.11.0
armv7: ghcr.io/home-assistant/armv7-homeassistant-base:2024.11.0
amd64: ghcr.io/home-assistant/amd64-homeassistant-base:2024.11.0
i386: ghcr.io/home-assistant/i386-homeassistant-base:2024.11.0
codenotary:
signer: notary@home-assistant.io
base_image: notary@home-assistant.io

View file

@ -9,6 +9,7 @@ import os
import sys
import threading
from .backup_restore import restore_backup
from .const import REQUIRED_PYTHON_VER, RESTART_EXIT_CODE, __version__
FAULT_LOG_FILENAME = "home-assistant.log.fault"
@ -182,6 +183,9 @@ def main() -> int:
return scripts.run(args.script)
config_dir = os.path.abspath(os.path.join(os.getcwd(), args.config))
if restore_backup(config_dir):
return RESTART_EXIT_CODE
ensure_config_path(config_dir)
# pylint: disable-next=import-outside-toplevel

View file

@ -12,7 +12,6 @@ from typing import Any, cast
import jwt
from homeassistant import data_entry_flow
from homeassistant.core import (
CALLBACK_TYPE,
HassJob,
@ -20,13 +19,14 @@ from homeassistant.core import (
HomeAssistant,
callback,
)
from homeassistant.data_entry_flow import FlowHandler, FlowManager, FlowResultType
from homeassistant.helpers.event import async_track_point_in_utc_time
from homeassistant.util import dt as dt_util
from . import auth_store, jwt_wrapper, models
from .const import ACCESS_TOKEN_EXPIRATION, GROUP_ID_ADMIN, REFRESH_TOKEN_EXPIRATION
from .mfa_modules import MultiFactorAuthModule, auth_mfa_module_from_config
from .models import AuthFlowResult
from .models import AuthFlowContext, AuthFlowResult
from .providers import AuthProvider, LoginFlow, auth_provider_from_config
from .providers.homeassistant import HassAuthProvider
@ -98,7 +98,7 @@ async def auth_manager_from_config(
class AuthManagerFlowManager(
data_entry_flow.FlowManager[AuthFlowResult, tuple[str, str]]
FlowManager[AuthFlowContext, AuthFlowResult, tuple[str, str]]
):
"""Manage authentication flows."""
@ -113,7 +113,7 @@ class AuthManagerFlowManager(
self,
handler_key: tuple[str, str],
*,
context: dict[str, Any] | None = None,
context: AuthFlowContext | None = None,
data: dict[str, Any] | None = None,
) -> LoginFlow:
"""Create a login flow."""
@ -124,7 +124,7 @@ class AuthManagerFlowManager(
async def async_finish_flow(
self,
flow: data_entry_flow.FlowHandler[AuthFlowResult, tuple[str, str]],
flow: FlowHandler[AuthFlowContext, AuthFlowResult, tuple[str, str]],
result: AuthFlowResult,
) -> AuthFlowResult:
"""Return a user as result of login flow.
@ -134,7 +134,7 @@ class AuthManagerFlowManager(
"""
flow = cast(LoginFlow, flow)
if result["type"] != data_entry_flow.FlowResultType.CREATE_ENTRY:
if result["type"] != FlowResultType.CREATE_ENTRY:
return result
# we got final result

View file

@ -3,7 +3,7 @@
from __future__ import annotations
from datetime import datetime, timedelta
from functools import cached_property
from ipaddress import IPv4Address, IPv6Address
import secrets
from typing import Any, NamedTuple
import uuid
@ -11,9 +11,10 @@ import uuid
import attr
from attr import Attribute
from attr.setters import validate
from propcache import cached_property
from homeassistant.const import __version__
from homeassistant.data_entry_flow import FlowResult
from homeassistant.data_entry_flow import FlowContext, FlowResult
from homeassistant.util import dt as dt_util
from . import permissions as perm_mdl
@ -23,7 +24,16 @@ TOKEN_TYPE_NORMAL = "normal"
TOKEN_TYPE_SYSTEM = "system"
TOKEN_TYPE_LONG_LIVED_ACCESS_TOKEN = "long_lived_access_token"
AuthFlowResult = FlowResult[tuple[str, str]]
class AuthFlowContext(FlowContext, total=False):
"""Typed context dict for auth flow."""
credential_only: bool
ip_address: IPv4Address | IPv6Address
redirect_uri: str
AuthFlowResult = FlowResult[AuthFlowContext, tuple[str, str]]
@attr.s(slots=True)

View file

@ -10,9 +10,10 @@ from typing import Any
import voluptuous as vol
from voluptuous.humanize import humanize_error
from homeassistant import data_entry_flow, requirements
from homeassistant import requirements
from homeassistant.const import CONF_ID, CONF_NAME, CONF_TYPE
from homeassistant.core import HomeAssistant, callback
from homeassistant.data_entry_flow import FlowHandler
from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers.importlib import async_import_module
from homeassistant.util import dt as dt_util
@ -21,7 +22,14 @@ from homeassistant.util.hass_dict import HassKey
from ..auth_store import AuthStore
from ..const import MFA_SESSION_EXPIRATION
from ..models import AuthFlowResult, Credentials, RefreshToken, User, UserMeta
from ..models import (
AuthFlowContext,
AuthFlowResult,
Credentials,
RefreshToken,
User,
UserMeta,
)
_LOGGER = logging.getLogger(__name__)
DATA_REQS: HassKey[set[str]] = HassKey("auth_prov_reqs_processed")
@ -97,7 +105,7 @@ class AuthProvider:
# Implement by extending class
async def async_login_flow(self, context: dict[str, Any] | None) -> LoginFlow:
async def async_login_flow(self, context: AuthFlowContext | None) -> LoginFlow:
"""Return the data flow for logging in with auth provider.
Auth provider should extend LoginFlow and return an instance.
@ -184,7 +192,7 @@ async def load_auth_provider_module(
return module
class LoginFlow(data_entry_flow.FlowHandler[AuthFlowResult, tuple[str, str]]):
class LoginFlow(FlowHandler[AuthFlowContext, AuthFlowResult, tuple[str, str]]):
"""Handler for the login flow."""
_flow_result = AuthFlowResult

View file

@ -13,7 +13,7 @@ import voluptuous as vol
from homeassistant.const import CONF_COMMAND
from homeassistant.exceptions import HomeAssistantError
from ..models import AuthFlowResult, Credentials, UserMeta
from ..models import AuthFlowContext, AuthFlowResult, Credentials, UserMeta
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
CONF_ARGS = "args"
@ -59,7 +59,7 @@ class CommandLineAuthProvider(AuthProvider):
super().__init__(*args, **kwargs)
self._user_meta: dict[str, dict[str, Any]] = {}
async def async_login_flow(self, context: dict[str, Any] | None) -> LoginFlow:
async def async_login_flow(self, context: AuthFlowContext | None) -> LoginFlow:
"""Return a flow to login."""
return CommandLineLoginFlow(self)

View file

@ -17,7 +17,7 @@ from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers import issue_registry as ir
from homeassistant.helpers.storage import Store
from ..models import AuthFlowResult, Credentials, UserMeta
from ..models import AuthFlowContext, AuthFlowResult, Credentials, UserMeta
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
STORAGE_VERSION = 1
@ -305,7 +305,7 @@ class HassAuthProvider(AuthProvider):
await data.async_load()
self.data = data
async def async_login_flow(self, context: dict[str, Any] | None) -> LoginFlow:
async def async_login_flow(self, context: AuthFlowContext | None) -> LoginFlow:
"""Return a flow to login."""
return HassLoginFlow(self)

View file

@ -4,14 +4,14 @@ from __future__ import annotations
from collections.abc import Mapping
import hmac
from typing import Any, cast
from typing import cast
import voluptuous as vol
from homeassistant.core import callback
from homeassistant.exceptions import HomeAssistantError
from ..models import AuthFlowResult, Credentials, UserMeta
from ..models import AuthFlowContext, AuthFlowResult, Credentials, UserMeta
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
USER_SCHEMA = vol.Schema(
@ -36,7 +36,7 @@ class InvalidAuthError(HomeAssistantError):
class ExampleAuthProvider(AuthProvider):
"""Example auth provider based on hardcoded usernames and passwords."""
async def async_login_flow(self, context: dict[str, Any] | None) -> LoginFlow:
async def async_login_flow(self, context: AuthFlowContext | None) -> LoginFlow:
"""Return a flow to login."""
return ExampleLoginFlow(self)

View file

@ -25,7 +25,13 @@ import homeassistant.helpers.config_validation as cv
from homeassistant.helpers.network import is_cloud_connection
from .. import InvalidAuthError
from ..models import AuthFlowResult, Credentials, RefreshToken, UserMeta
from ..models import (
AuthFlowContext,
AuthFlowResult,
Credentials,
RefreshToken,
UserMeta,
)
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
type IPAddress = IPv4Address | IPv6Address
@ -98,7 +104,7 @@ class TrustedNetworksAuthProvider(AuthProvider):
"""Trusted Networks auth provider does not support MFA."""
return False
async def async_login_flow(self, context: dict[str, Any] | None) -> LoginFlow:
async def async_login_flow(self, context: AuthFlowContext | None) -> LoginFlow:
"""Return a flow to login."""
assert context is not None
ip_addr = cast(IPAddress, context.get("ip_address"))

View file

@ -9,6 +9,7 @@ import it.
from __future__ import annotations
# pylint: disable-next=hass-deprecated-import
from functools import cached_property as _cached_property, partial
from homeassistant.helpers.deprecation import (

View file

@ -0,0 +1,126 @@
"""Home Assistant module to handle restoring backups."""
from dataclasses import dataclass
import json
import logging
from pathlib import Path
import shutil
import sys
from tempfile import TemporaryDirectory
from awesomeversion import AwesomeVersion
import securetar
from .const import __version__ as HA_VERSION
RESTORE_BACKUP_FILE = ".HA_RESTORE"
KEEP_PATHS = ("backups",)
_LOGGER = logging.getLogger(__name__)
@dataclass
class RestoreBackupFileContent:
"""Definition for restore backup file content."""
backup_file_path: Path
def restore_backup_file_content(config_dir: Path) -> RestoreBackupFileContent | None:
"""Return the contents of the restore backup file."""
instruction_path = config_dir.joinpath(RESTORE_BACKUP_FILE)
try:
instruction_content = json.loads(instruction_path.read_text(encoding="utf-8"))
return RestoreBackupFileContent(
backup_file_path=Path(instruction_content["path"])
)
except (FileNotFoundError, json.JSONDecodeError):
return None
def _clear_configuration_directory(config_dir: Path) -> None:
"""Delete all files and directories in the config directory except for the backups directory."""
keep_paths = [config_dir.joinpath(path) for path in KEEP_PATHS]
config_contents = sorted(
[entry for entry in config_dir.iterdir() if entry not in keep_paths]
)
for entry in config_contents:
entrypath = config_dir.joinpath(entry)
if entrypath.is_file():
entrypath.unlink()
elif entrypath.is_dir():
shutil.rmtree(entrypath)
def _extract_backup(config_dir: Path, backup_file_path: Path) -> None:
"""Extract the backup file to the config directory."""
with (
TemporaryDirectory() as tempdir,
securetar.SecureTarFile(
backup_file_path,
gzip=False,
mode="r",
) as ostf,
):
ostf.extractall(
path=Path(tempdir, "extracted"),
members=securetar.secure_path(ostf),
filter="fully_trusted",
)
backup_meta_file = Path(tempdir, "extracted", "backup.json")
backup_meta = json.loads(backup_meta_file.read_text(encoding="utf8"))
if (
backup_meta_version := AwesomeVersion(
backup_meta["homeassistant"]["version"]
)
) > HA_VERSION:
raise ValueError(
f"You need at least Home Assistant version {backup_meta_version} to restore this backup"
)
with securetar.SecureTarFile(
Path(
tempdir,
"extracted",
f"homeassistant.tar{'.gz' if backup_meta["compressed"] else ''}",
),
gzip=backup_meta["compressed"],
mode="r",
) as istf:
for member in istf.getmembers():
if member.name == "data":
continue
member.name = member.name.replace("data/", "")
_clear_configuration_directory(config_dir)
istf.extractall(
path=config_dir,
members=[
member
for member in securetar.secure_path(istf)
if member.name != "data"
],
filter="fully_trusted",
)
def restore_backup(config_dir_path: str) -> bool:
"""Restore the backup file if any.
Returns True if a restore backup file was found and restored, False otherwise.
"""
config_dir = Path(config_dir_path)
if not (restore_content := restore_backup_file_content(config_dir)):
return False
logging.basicConfig(stream=sys.stdout, level=logging.INFO)
backup_file_path = restore_content.backup_file_path
_LOGGER.info("Restoring %s", backup_file_path)
try:
_extract_backup(config_dir, backup_file_path)
except FileNotFoundError as err:
raise ValueError(f"Backup file {backup_file_path} does not exist") from err
_LOGGER.info("Restore complete, restarting")
return True

View file

@ -70,6 +70,7 @@ from .const import (
REQUIRED_NEXT_PYTHON_VER,
SIGNAL_BOOTSTRAP_INTEGRATIONS,
)
from .core_config import async_process_ha_core_config
from .exceptions import HomeAssistantError
from .helpers import (
area_registry,
@ -479,7 +480,7 @@ async def async_from_config_dict(
core_config = config.get(core.DOMAIN, {})
try:
await conf_util.async_process_ha_core_config(hass, core_config)
await async_process_ha_core_config(hass, core_config)
except vol.Invalid as config_err:
conf_util.async_log_schema_error(config_err, core.DOMAIN, core_config, hass)
async_notify_setup_error(hass, core.DOMAIN)
@ -514,7 +515,7 @@ async def async_from_config_dict(
issue_registry.async_create_issue(
hass,
core.DOMAIN,
"python_version",
f"python_version_{required_python_version}",
is_fixable=False,
severity=issue_registry.IssueSeverity.WARNING,
breaks_in_ha_version=REQUIRED_NEXT_PYTHON_HA_RELEASE,

View file

@ -0,0 +1,5 @@
{
"domain": "aqara",
"name": "Aqara",
"iot_standards": ["matter", "zigbee"]
}

View file

@ -5,7 +5,6 @@
"google_assistant",
"google_assistant_sdk",
"google_cloud",
"google_domains",
"google_generative_ai_conversation",
"google_mail",
"google_maps",

View file

@ -0,0 +1,5 @@
{
"domain": "husqvarna",
"name": "Husqvarna",
"integrations": ["husqvarna_automower", "husqvarna_automower_ble"]
}

View file

@ -1,5 +1,5 @@
{
"domain": "lg",
"name": "LG",
"integrations": ["lg_netcast", "lg_soundbar", "webostv"]
"integrations": ["lg_netcast", "lg_soundbar", "lg_thinq", "webostv"]
}

View file

@ -0,0 +1,5 @@
{
"domain": "sky",
"name": "Sky",
"integrations": ["sky_hub", "sky_remote"]
}

View file

@ -4,8 +4,10 @@ from __future__ import annotations
from dataclasses import dataclass, field
from functools import partial
from pathlib import Path
from jaraco.abode.client import Client as Abode
import jaraco.abode.config
from jaraco.abode.exceptions import (
AuthenticationException as AbodeAuthenticationException,
Exception as AbodeException,
@ -93,6 +95,9 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
password = entry.data[CONF_PASSWORD]
polling = entry.data[CONF_POLLING]
# Configure abode library to use config directory for storing data
jaraco.abode.config.paths.override(user_data=Path(hass.config.path("Abode")))
# For previous config entries where unique_id is None
if entry.unique_id is None:
hass.config_entries.async_update_entry(

View file

@ -7,13 +7,9 @@ from jaraco.abode.devices.alarm import Alarm
from homeassistant.components.alarm_control_panel import (
AlarmControlPanelEntity,
AlarmControlPanelEntityFeature,
AlarmControlPanelState,
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
STATE_ALARM_ARMED_AWAY,
STATE_ALARM_ARMED_HOME,
STATE_ALARM_DISARMED,
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
@ -44,14 +40,14 @@ class AbodeAlarm(AbodeDevice, AlarmControlPanelEntity):
_device: Alarm
@property
def state(self) -> str | None:
def alarm_state(self) -> AlarmControlPanelState | None:
"""Return the state of the device."""
if self._device.is_standby:
return STATE_ALARM_DISARMED
return AlarmControlPanelState.DISARMED
if self._device.is_away:
return STATE_ALARM_ARMED_AWAY
return AlarmControlPanelState.ARMED_AWAY
if self._device.is_home:
return STATE_ALARM_ARMED_HOME
return AlarmControlPanelState.ARMED_HOME
return None
def alarm_disarm(self, code: str | None = None) -> None:

View file

@ -102,15 +102,7 @@ class AbodeFlowHandler(ConfigFlow, domain=DOMAIN):
existing_entry = await self.async_set_unique_id(self._username)
if existing_entry:
self.hass.config_entries.async_update_entry(
existing_entry, data=config_data
)
# Reload the Abode config entry otherwise devices will remain unavailable
self.hass.async_create_task(
self.hass.config_entries.async_reload(existing_entry.entry_id)
)
return self.async_abort(reason="reauth_successful")
return self.async_update_reload_and_abort(existing_entry, data=config_data)
return self.async_create_entry(
title=cast(str, self._username), data=config_data

View file

@ -9,5 +9,5 @@
},
"iot_class": "cloud_push",
"loggers": ["jaraco.abode", "lomond"],
"requirements": ["jaraco.abode==6.2.0"]
"requirements": ["jaraco.abode==6.2.1"]
}

View file

@ -0,0 +1,29 @@
"""Initialize the Acaia component."""
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant
from .coordinator import AcaiaConfigEntry, AcaiaCoordinator
PLATFORMS = [
Platform.BUTTON,
]
async def async_setup_entry(hass: HomeAssistant, entry: AcaiaConfigEntry) -> bool:
"""Set up acaia as config entry."""
coordinator = AcaiaCoordinator(hass, entry)
await coordinator.async_config_entry_first_refresh()
entry.runtime_data = coordinator
await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS)
return True
async def async_unload_entry(hass: HomeAssistant, entry: AcaiaConfigEntry) -> bool:
"""Unload a config entry."""
return await hass.config_entries.async_unload_platforms(entry, PLATFORMS)

View file

@ -0,0 +1,61 @@
"""Button entities for Acaia scales."""
from collections.abc import Callable, Coroutine
from dataclasses import dataclass
from typing import Any
from aioacaia.acaiascale import AcaiaScale
from homeassistant.components.button import ButtonEntity, ButtonEntityDescription
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .coordinator import AcaiaConfigEntry
from .entity import AcaiaEntity
@dataclass(kw_only=True, frozen=True)
class AcaiaButtonEntityDescription(ButtonEntityDescription):
"""Description for acaia button entities."""
press_fn: Callable[[AcaiaScale], Coroutine[Any, Any, None]]
BUTTONS: tuple[AcaiaButtonEntityDescription, ...] = (
AcaiaButtonEntityDescription(
key="tare",
translation_key="tare",
press_fn=lambda scale: scale.tare(),
),
AcaiaButtonEntityDescription(
key="reset_timer",
translation_key="reset_timer",
press_fn=lambda scale: scale.reset_timer(),
),
AcaiaButtonEntityDescription(
key="start_stop",
translation_key="start_stop",
press_fn=lambda scale: scale.start_stop_timer(),
),
)
async def async_setup_entry(
hass: HomeAssistant,
entry: AcaiaConfigEntry,
async_add_entities: AddEntitiesCallback,
) -> None:
"""Set up button entities and services."""
coordinator = entry.runtime_data
async_add_entities(AcaiaButton(coordinator, description) for description in BUTTONS)
class AcaiaButton(AcaiaEntity, ButtonEntity):
"""Representation of an Acaia button."""
entity_description: AcaiaButtonEntityDescription
async def async_press(self) -> None:
"""Handle the button press."""
await self.entity_description.press_fn(self._scale)

View file

@ -0,0 +1,149 @@
"""Config flow for Acaia integration."""
import logging
from typing import Any
from aioacaia.exceptions import AcaiaDeviceNotFound, AcaiaError, AcaiaUnknownDevice
from aioacaia.helpers import is_new_scale
import voluptuous as vol
from homeassistant.components.bluetooth import (
BluetoothServiceInfoBleak,
async_discovered_service_info,
)
from homeassistant.config_entries import ConfigFlow, ConfigFlowResult
from homeassistant.const import CONF_ADDRESS, CONF_NAME
from homeassistant.helpers.device_registry import format_mac
from homeassistant.helpers.selector import (
SelectOptionDict,
SelectSelector,
SelectSelectorConfig,
SelectSelectorMode,
)
from .const import CONF_IS_NEW_STYLE_SCALE, DOMAIN
_LOGGER = logging.getLogger(__name__)
class AcaiaConfigFlow(ConfigFlow, domain=DOMAIN):
"""Handle a config flow for acaia."""
def __init__(self) -> None:
"""Initialize the config flow."""
self._discovered: dict[str, Any] = {}
self._discovered_devices: dict[str, str] = {}
async def async_step_user(
self, user_input: dict[str, Any] | None = None
) -> ConfigFlowResult:
"""Handle a flow initialized by the user."""
errors: dict[str, str] = {}
if user_input is not None:
mac = format_mac(user_input[CONF_ADDRESS])
try:
is_new_style_scale = await is_new_scale(mac)
except AcaiaDeviceNotFound:
errors["base"] = "device_not_found"
except AcaiaError:
_LOGGER.exception("Error occurred while connecting to the scale")
errors["base"] = "unknown"
except AcaiaUnknownDevice:
return self.async_abort(reason="unsupported_device")
else:
await self.async_set_unique_id(mac)
self._abort_if_unique_id_configured()
if not errors:
return self.async_create_entry(
title=self._discovered_devices[user_input[CONF_ADDRESS]],
data={
CONF_ADDRESS: mac,
CONF_IS_NEW_STYLE_SCALE: is_new_style_scale,
},
)
for device in async_discovered_service_info(self.hass):
self._discovered_devices[device.address] = device.name
if not self._discovered_devices:
return self.async_abort(reason="no_devices_found")
options = [
SelectOptionDict(
value=device_mac,
label=f"{device_name} ({device_mac})",
)
for device_mac, device_name in self._discovered_devices.items()
]
return self.async_show_form(
step_id="user",
data_schema=vol.Schema(
{
vol.Required(CONF_ADDRESS): SelectSelector(
SelectSelectorConfig(
options=options,
mode=SelectSelectorMode.DROPDOWN,
)
)
}
),
errors=errors,
)
async def async_step_bluetooth(
self, discovery_info: BluetoothServiceInfoBleak
) -> ConfigFlowResult:
"""Handle a discovered Bluetooth device."""
self._discovered[CONF_ADDRESS] = mac = format_mac(discovery_info.address)
self._discovered[CONF_NAME] = discovery_info.name
await self.async_set_unique_id(mac)
self._abort_if_unique_id_configured()
try:
self._discovered[CONF_IS_NEW_STYLE_SCALE] = await is_new_scale(
discovery_info.address
)
except AcaiaDeviceNotFound:
_LOGGER.debug("Device not found during discovery")
return self.async_abort(reason="device_not_found")
except AcaiaError:
_LOGGER.debug(
"Error occurred while connecting to the scale during discovery",
exc_info=True,
)
return self.async_abort(reason="unknown")
except AcaiaUnknownDevice:
_LOGGER.debug("Unsupported device during discovery")
return self.async_abort(reason="unsupported_device")
return await self.async_step_bluetooth_confirm()
async def async_step_bluetooth_confirm(
self, user_input: dict[str, Any] | None = None
) -> ConfigFlowResult:
"""Handle confirmation of Bluetooth discovery."""
if user_input is not None:
return self.async_create_entry(
title=self._discovered[CONF_NAME],
data={
CONF_ADDRESS: self._discovered[CONF_ADDRESS],
CONF_IS_NEW_STYLE_SCALE: self._discovered[CONF_IS_NEW_STYLE_SCALE],
},
)
self.context["title_placeholders"] = placeholders = {
CONF_NAME: self._discovered[CONF_NAME]
}
self._set_confirm_only()
return self.async_show_form(
step_id="bluetooth_confirm",
description_placeholders=placeholders,
)

View file

@ -0,0 +1,4 @@
"""Constants for component."""
DOMAIN = "acaia"
CONF_IS_NEW_STYLE_SCALE = "is_new_style_scale"

View file

@ -0,0 +1,86 @@
"""Coordinator for Acaia integration."""
from __future__ import annotations
from datetime import timedelta
import logging
from aioacaia.acaiascale import AcaiaScale
from aioacaia.exceptions import AcaiaDeviceNotFound, AcaiaError
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_ADDRESS
from homeassistant.core import HomeAssistant
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator
from .const import CONF_IS_NEW_STYLE_SCALE
SCAN_INTERVAL = timedelta(seconds=15)
_LOGGER = logging.getLogger(__name__)
type AcaiaConfigEntry = ConfigEntry[AcaiaCoordinator]
class AcaiaCoordinator(DataUpdateCoordinator[None]):
"""Class to handle fetching data from the scale."""
config_entry: AcaiaConfigEntry
def __init__(self, hass: HomeAssistant, entry: AcaiaConfigEntry) -> None:
"""Initialize coordinator."""
super().__init__(
hass,
_LOGGER,
name="acaia coordinator",
update_interval=SCAN_INTERVAL,
config_entry=entry,
)
self._scale = AcaiaScale(
address_or_ble_device=entry.data[CONF_ADDRESS],
name=entry.title,
is_new_style_scale=entry.data[CONF_IS_NEW_STYLE_SCALE],
notify_callback=self.async_update_listeners,
)
@property
def scale(self) -> AcaiaScale:
"""Return the scale object."""
return self._scale
async def _async_update_data(self) -> None:
"""Fetch data."""
# scale is already connected, return
if self._scale.connected:
return
# scale is not connected, try to connect
try:
await self._scale.connect(setup_tasks=False)
except (AcaiaDeviceNotFound, AcaiaError, TimeoutError) as ex:
_LOGGER.debug(
"Could not connect to scale: %s, Error: %s",
self.config_entry.data[CONF_ADDRESS],
ex,
)
self._scale.device_disconnected_handler(notify=False)
return
# connected, set up background tasks
if not self._scale.heartbeat_task or self._scale.heartbeat_task.done():
self._scale.heartbeat_task = self.config_entry.async_create_background_task(
hass=self.hass,
target=self._scale.send_heartbeats(),
name="acaia_heartbeat_task",
)
if not self._scale.process_queue_task or self._scale.process_queue_task.done():
self._scale.process_queue_task = (
self.config_entry.async_create_background_task(
hass=self.hass,
target=self._scale.process_queue(),
name="acaia_process_queue_task",
)
)

View file

@ -0,0 +1,40 @@
"""Base class for Acaia entities."""
from dataclasses import dataclass
from homeassistant.helpers.device_registry import DeviceInfo
from homeassistant.helpers.entity import EntityDescription
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from .const import DOMAIN
from .coordinator import AcaiaCoordinator
@dataclass
class AcaiaEntity(CoordinatorEntity[AcaiaCoordinator]):
"""Common elements for all entities."""
_attr_has_entity_name = True
def __init__(
self,
coordinator: AcaiaCoordinator,
entity_description: EntityDescription,
) -> None:
"""Initialize the entity."""
super().__init__(coordinator)
self.entity_description = entity_description
self._scale = coordinator.scale
self._attr_unique_id = f"{self._scale.mac}_{entity_description.key}"
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, self._scale.mac)},
manufacturer="Acaia",
model=self._scale.model,
suggested_area="Kitchen",
)
@property
def available(self) -> bool:
"""Returns whether entity is available."""
return super().available and self._scale.connected

View file

@ -0,0 +1,15 @@
{
"entity": {
"button": {
"tare": {
"default": "mdi:scale-balance"
},
"reset_timer": {
"default": "mdi:timer-refresh"
},
"start_stop": {
"default": "mdi:timer-play"
}
}
}
}

View file

@ -0,0 +1,29 @@
{
"domain": "acaia",
"name": "Acaia",
"bluetooth": [
{
"manufacturer_id": 16962
},
{
"local_name": "ACAIA*"
},
{
"local_name": "PYXIS-*"
},
{
"local_name": "LUNAR-*"
},
{
"local_name": "PROCHBT001"
}
],
"codeowners": ["@zweckj"],
"config_flow": true,
"dependencies": ["bluetooth_adapters"],
"documentation": "https://www.home-assistant.io/integrations/acaia",
"integration_type": "device",
"iot_class": "local_push",
"loggers": ["aioacaia"],
"requirements": ["aioacaia==0.1.6"]
}

View file

@ -0,0 +1,38 @@
{
"config": {
"flow_title": "{name}",
"abort": {
"already_configured": "[%key:common::config_flow::abort::already_configured_device%]",
"no_devices_found": "[%key:common::config_flow::abort::no_devices_found%]",
"unsupported_device": "This device is not supported."
},
"error": {
"device_not_found": "Device could not be found.",
"unknown": "[%key:common::config_flow::error::unknown%]"
},
"step": {
"bluetooth_confirm": {
"description": "[%key:component::bluetooth::config::step::bluetooth_confirm::description%]"
},
"user": {
"description": "[%key:component::bluetooth::config::step::user::description%]",
"data": {
"address": "[%key:common::config_flow::data::device%]"
}
}
}
},
"entity": {
"button": {
"tare": {
"name": "Tare"
},
"reset_timer": {
"name": "Reset timer"
},
"start_stop": {
"name": "Start/stop timer"
}
}
}
}

View file

@ -2,13 +2,11 @@
from __future__ import annotations
from dataclasses import dataclass
import logging
from accuweather import AccuWeather
from homeassistant.components.sensor import DOMAIN as SENSOR_PLATFORM
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_API_KEY, CONF_NAME, Platform
from homeassistant.core import HomeAssistant
from homeassistant.helpers import entity_registry as er
@ -16,7 +14,9 @@ from homeassistant.helpers.aiohttp_client import async_get_clientsession
from .const import DOMAIN, UPDATE_INTERVAL_DAILY_FORECAST, UPDATE_INTERVAL_OBSERVATION
from .coordinator import (
AccuWeatherConfigEntry,
AccuWeatherDailyForecastDataUpdateCoordinator,
AccuWeatherData,
AccuWeatherObservationDataUpdateCoordinator,
)
@ -25,17 +25,6 @@ _LOGGER = logging.getLogger(__name__)
PLATFORMS = [Platform.SENSOR, Platform.WEATHER]
@dataclass
class AccuWeatherData:
"""Data for AccuWeather integration."""
coordinator_observation: AccuWeatherObservationDataUpdateCoordinator
coordinator_daily_forecast: AccuWeatherDailyForecastDataUpdateCoordinator
type AccuWeatherConfigEntry = ConfigEntry[AccuWeatherData]
async def async_setup_entry(hass: HomeAssistant, entry: AccuWeatherConfigEntry) -> bool:
"""Set up AccuWeather as config entry."""
api_key: str = entry.data[CONF_API_KEY]
@ -50,6 +39,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: AccuWeatherConfigEntry)
coordinator_observation = AccuWeatherObservationDataUpdateCoordinator(
hass,
entry,
accuweather,
name,
"observation",
@ -58,6 +48,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: AccuWeatherConfigEntry)
coordinator_daily_forecast = AccuWeatherDailyForecastDataUpdateCoordinator(
hass,
entry,
accuweather,
name,
"daily forecast",

View file

@ -1,6 +1,9 @@
"""The AccuWeather coordinator."""
from __future__ import annotations
from asyncio import timeout
from dataclasses import dataclass
from datetime import timedelta
import logging
from typing import TYPE_CHECKING, Any
@ -8,6 +11,7 @@ from typing import TYPE_CHECKING, Any
from accuweather import AccuWeather, ApiError, InvalidApiKeyError, RequestsExceededError
from aiohttp.client_exceptions import ClientConnectorError
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.device_registry import DeviceEntryType, DeviceInfo
from homeassistant.helpers.update_coordinator import (
@ -23,6 +27,17 @@ EXCEPTIONS = (ApiError, ClientConnectorError, InvalidApiKeyError, RequestsExceed
_LOGGER = logging.getLogger(__name__)
@dataclass
class AccuWeatherData:
"""Data for AccuWeather integration."""
coordinator_observation: AccuWeatherObservationDataUpdateCoordinator
coordinator_daily_forecast: AccuWeatherDailyForecastDataUpdateCoordinator
type AccuWeatherConfigEntry = ConfigEntry[AccuWeatherData]
class AccuWeatherObservationDataUpdateCoordinator(
DataUpdateCoordinator[dict[str, Any]]
):
@ -31,6 +46,7 @@ class AccuWeatherObservationDataUpdateCoordinator(
def __init__(
self,
hass: HomeAssistant,
config_entry: AccuWeatherConfigEntry,
accuweather: AccuWeather,
name: str,
coordinator_type: str,
@ -48,6 +64,7 @@ class AccuWeatherObservationDataUpdateCoordinator(
super().__init__(
hass,
_LOGGER,
config_entry=config_entry,
name=f"{name} ({coordinator_type})",
update_interval=update_interval,
)
@ -73,6 +90,7 @@ class AccuWeatherDailyForecastDataUpdateCoordinator(
def __init__(
self,
hass: HomeAssistant,
config_entry: AccuWeatherConfigEntry,
accuweather: AccuWeather,
name: str,
coordinator_type: str,
@ -90,6 +108,7 @@ class AccuWeatherDailyForecastDataUpdateCoordinator(
super().__init__(
hass,
_LOGGER,
config_entry=config_entry,
name=f"{name} ({coordinator_type})",
update_interval=update_interval,
)

View file

@ -8,7 +8,7 @@ from homeassistant.components.diagnostics import async_redact_data
from homeassistant.const import CONF_API_KEY, CONF_LATITUDE, CONF_LONGITUDE
from homeassistant.core import HomeAssistant
from . import AccuWeatherConfigEntry, AccuWeatherData
from .coordinator import AccuWeatherConfigEntry, AccuWeatherData
TO_REDACT = {CONF_API_KEY, CONF_LATITUDE, CONF_LONGITUDE}

View file

@ -28,7 +28,6 @@ from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from . import AccuWeatherConfigEntry
from .const import (
API_METRIC,
ATTR_CATEGORY,
@ -41,6 +40,7 @@ from .const import (
MAX_FORECAST_DAYS,
)
from .coordinator import (
AccuWeatherConfigEntry,
AccuWeatherDailyForecastDataUpdateCoordinator,
AccuWeatherObservationDataUpdateCoordinator,
)

View file

@ -9,8 +9,8 @@ from accuweather.const import ENDPOINT
from homeassistant.components import system_health
from homeassistant.core import HomeAssistant, callback
from . import AccuWeatherConfigEntry
from .const import DOMAIN
from .coordinator import AccuWeatherConfigEntry
@callback

View file

@ -33,7 +33,6 @@ from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.util.dt import utc_from_timestamp
from . import AccuWeatherConfigEntry, AccuWeatherData
from .const import (
API_METRIC,
ATTR_DIRECTION,
@ -43,7 +42,9 @@ from .const import (
CONDITION_MAP,
)
from .coordinator import (
AccuWeatherConfigEntry,
AccuWeatherDailyForecastDataUpdateCoordinator,
AccuWeatherData,
AccuWeatherObservationDataUpdateCoordinator,
)

View file

@ -7,7 +7,6 @@ from typing import Any
from adguardhome import AdGuardHome, AdGuardHomeConnectionError
import voluptuous as vol
from homeassistant.components.hassio import HassioServiceInfo
from homeassistant.config_entries import ConfigFlow, ConfigFlowResult
from homeassistant.const import (
CONF_HOST,
@ -18,6 +17,7 @@ from homeassistant.const import (
CONF_VERIFY_SSL,
)
from homeassistant.helpers.aiohttp_client import async_get_clientsession
from homeassistant.helpers.service_info.hassio import HassioServiceInfo
from .const import DOMAIN

View file

@ -55,6 +55,7 @@ async def async_setup_entry(
coordinator = DataUpdateCoordinator(
hass,
_LOGGER,
config_entry=entry,
name="Advantage Air",
update_method=async_get,
update_interval=timedelta(seconds=ADVANTAGE_AIR_SYNC_INTERVAL),

View file

@ -1,6 +1,5 @@
"""The AEMET OpenData component."""
from dataclasses import dataclass
import logging
from aemet_opendata.exceptions import AemetError, TownNotFound
@ -13,20 +12,10 @@ from homeassistant.exceptions import ConfigEntryNotReady
from homeassistant.helpers import aiohttp_client
from .const import CONF_STATION_UPDATES, PLATFORMS
from .coordinator import WeatherUpdateCoordinator
from .coordinator import AemetConfigEntry, AemetData, WeatherUpdateCoordinator
_LOGGER = logging.getLogger(__name__)
type AemetConfigEntry = ConfigEntry[AemetData]
@dataclass
class AemetData:
"""Aemet runtime data."""
name: str
coordinator: WeatherUpdateCoordinator
async def async_setup_entry(hass: HomeAssistant, entry: AemetConfigEntry) -> bool:
"""Set up AEMET OpenData as config entry."""
@ -46,7 +35,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: AemetConfigEntry) -> boo
except AemetError as err:
raise ConfigEntryNotReady(err) from err
weather_coordinator = WeatherUpdateCoordinator(hass, aemet)
weather_coordinator = WeatherUpdateCoordinator(hass, entry, aemet)
await weather_coordinator.async_config_entry_first_refresh()
entry.runtime_data = AemetData(name=name, coordinator=weather_coordinator)

View file

@ -3,6 +3,7 @@
from __future__ import annotations
from asyncio import timeout
from dataclasses import dataclass
from datetime import timedelta
import logging
from typing import Any, Final, cast
@ -19,6 +20,7 @@ from aemet_opendata.helpers import dict_nested_value
from aemet_opendata.interface import AEMET
from homeassistant.components.weather import Forecast
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
@ -29,6 +31,16 @@ _LOGGER = logging.getLogger(__name__)
API_TIMEOUT: Final[int] = 120
WEATHER_UPDATE_INTERVAL = timedelta(minutes=10)
type AemetConfigEntry = ConfigEntry[AemetData]
@dataclass
class AemetData:
"""Aemet runtime data."""
name: str
coordinator: WeatherUpdateCoordinator
class WeatherUpdateCoordinator(DataUpdateCoordinator):
"""Weather data update coordinator."""
@ -36,6 +48,7 @@ class WeatherUpdateCoordinator(DataUpdateCoordinator):
def __init__(
self,
hass: HomeAssistant,
entry: AemetConfigEntry,
aemet: AEMET,
) -> None:
"""Initialize coordinator."""
@ -44,6 +57,7 @@ class WeatherUpdateCoordinator(DataUpdateCoordinator):
super().__init__(
hass,
_LOGGER,
config_entry=entry,
name=DOMAIN,
update_interval=WEATHER_UPDATE_INTERVAL,
)

View file

@ -15,7 +15,7 @@ from homeassistant.const import (
)
from homeassistant.core import HomeAssistant
from . import AemetConfigEntry
from .coordinator import AemetConfigEntry
TO_REDACT_CONFIG = [
CONF_API_KEY,

View file

@ -55,7 +55,6 @@ from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.util import dt as dt_util
from . import AemetConfigEntry
from .const import (
ATTR_API_CONDITION,
ATTR_API_FORECAST_CONDITION,
@ -87,7 +86,7 @@ from .const import (
ATTR_API_WIND_SPEED,
CONDITIONS_MAP,
)
from .coordinator import WeatherUpdateCoordinator
from .coordinator import AemetConfigEntry, WeatherUpdateCoordinator
from .entity import AemetEntity
@ -249,6 +248,7 @@ WEATHER_SENSORS: Final[tuple[AemetSensorEntityDescription, ...]] = (
name="Rain",
native_unit_of_measurement=UnitOfVolumetricFlux.MILLIMETERS_PER_HOUR,
device_class=SensorDeviceClass.PRECIPITATION_INTENSITY,
state_class=SensorStateClass.MEASUREMENT,
),
AemetSensorEntityDescription(
key=ATTR_API_RAIN_PROB,
@ -263,6 +263,7 @@ WEATHER_SENSORS: Final[tuple[AemetSensorEntityDescription, ...]] = (
name="Snow",
native_unit_of_measurement=UnitOfVolumetricFlux.MILLIMETERS_PER_HOUR,
device_class=SensorDeviceClass.PRECIPITATION_INTENSITY,
state_class=SensorStateClass.MEASUREMENT,
),
AemetSensorEntityDescription(
key=ATTR_API_SNOW_PROB,

View file

@ -27,9 +27,8 @@ from homeassistant.const import (
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AemetConfigEntry
from .const import CONDITIONS_MAP
from .coordinator import WeatherUpdateCoordinator
from .coordinator import AemetConfigEntry, WeatherUpdateCoordinator
from .entity import AemetEntity

View file

@ -5,12 +5,7 @@ from __future__ import annotations
from homeassistant.components.alarm_control_panel import (
AlarmControlPanelEntity,
AlarmControlPanelEntityFeature,
)
from homeassistant.const import (
STATE_ALARM_ARMED_AWAY,
STATE_ALARM_ARMED_HOME,
STATE_ALARM_ARMED_NIGHT,
STATE_ALARM_DISARMED,
AlarmControlPanelState,
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.device_registry import DeviceInfo
@ -65,37 +60,37 @@ class AgentBaseStation(AlarmControlPanelEntity):
self._attr_available = self._client.is_available
armed = self._client.is_armed
if armed is None:
self._attr_state = None
self._attr_alarm_state = None
return
if armed:
prof = (await self._client.get_active_profile()).lower()
self._attr_state = STATE_ALARM_ARMED_AWAY
self._attr_alarm_state = AlarmControlPanelState.ARMED_AWAY
if prof == CONF_HOME_MODE_NAME:
self._attr_state = STATE_ALARM_ARMED_HOME
self._attr_alarm_state = AlarmControlPanelState.ARMED_HOME
elif prof == CONF_NIGHT_MODE_NAME:
self._attr_state = STATE_ALARM_ARMED_NIGHT
self._attr_alarm_state = AlarmControlPanelState.ARMED_NIGHT
else:
self._attr_state = STATE_ALARM_DISARMED
self._attr_alarm_state = AlarmControlPanelState.DISARMED
async def async_alarm_disarm(self, code: str | None = None) -> None:
"""Send disarm command."""
await self._client.disarm()
self._attr_state = STATE_ALARM_DISARMED
self._attr_alarm_state = AlarmControlPanelState.DISARMED
async def async_alarm_arm_away(self, code: str | None = None) -> None:
"""Send arm away command. Uses custom mode."""
await self._client.arm()
await self._client.set_active_profile(CONF_AWAY_MODE_NAME)
self._attr_state = STATE_ALARM_ARMED_AWAY
self._attr_alarm_state = AlarmControlPanelState.ARMED_AWAY
async def async_alarm_arm_home(self, code: str | None = None) -> None:
"""Send arm home command. Uses custom mode."""
await self._client.arm()
await self._client.set_active_profile(CONF_HOME_MODE_NAME)
self._attr_state = STATE_ALARM_ARMED_HOME
self._attr_alarm_state = AlarmControlPanelState.ARMED_HOME
async def async_alarm_arm_night(self, code: str | None = None) -> None:
"""Send arm night command. Uses custom mode."""
await self._client.arm()
await self._client.set_active_profile(CONF_NIGHT_MODE_NAME)
self._attr_state = STATE_ALARM_ARMED_NIGHT
self._attr_alarm_state = AlarmControlPanelState.ARMED_NIGHT

View file

@ -6,5 +6,5 @@
"documentation": "https://www.home-assistant.io/integrations/agent_dvr",
"iot_class": "local_polling",
"loggers": ["agent"],
"requirements": ["agent-py==0.0.23"]
"requirements": ["agent-py==0.0.24"]
}

View file

@ -19,7 +19,7 @@ from .const import DOMAIN
_LOGGER: Final = logging.getLogger(__name__)
DOMAIN_DATA: HassKey[EntityComponent[AirQualityEntity]] = HassKey(DOMAIN)
DATA_COMPONENT: HassKey[EntityComponent[AirQualityEntity]] = HassKey(DOMAIN)
ENTITY_ID_FORMAT: Final = DOMAIN + ".{}"
PLATFORM_SCHEMA = cv.PLATFORM_SCHEMA
PLATFORM_SCHEMA_BASE = cv.PLATFORM_SCHEMA_BASE
@ -56,7 +56,7 @@ PROP_TO_ATTR: Final[dict[str, str]] = {
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
"""Set up the air quality component."""
component = hass.data[DOMAIN_DATA] = EntityComponent[AirQualityEntity](
component = hass.data[DATA_COMPONENT] = EntityComponent[AirQualityEntity](
_LOGGER, DOMAIN, hass, SCAN_INTERVAL
)
await component.async_setup(config)
@ -65,12 +65,12 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Set up a config entry."""
return await hass.data[DOMAIN_DATA].async_setup_entry(entry)
return await hass.data[DATA_COMPONENT].async_setup_entry(entry)
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Unload a config entry."""
return await hass.data[DOMAIN_DATA].async_unload_entry(entry)
return await hass.data[DATA_COMPONENT].async_unload_entry(entry)
class AirQualityEntity(Entity):

View file

@ -9,9 +9,10 @@ from typing import TYPE_CHECKING
from airgradient import AirGradientClient, AirGradientError, Config, Measures
from homeassistant.core import HomeAssistant
from homeassistant.helpers import device_registry as dr
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
from .const import LOGGER
from .const import DOMAIN, LOGGER
if TYPE_CHECKING:
from . import AirGradientConfigEntry
@ -29,6 +30,7 @@ class AirGradientCoordinator(DataUpdateCoordinator[AirGradientData]):
"""Class to manage fetching AirGradient data."""
config_entry: AirGradientConfigEntry
_current_version: str
def __init__(self, hass: HomeAssistant, client: AirGradientClient) -> None:
"""Initialize coordinator."""
@ -42,11 +44,27 @@ class AirGradientCoordinator(DataUpdateCoordinator[AirGradientData]):
assert self.config_entry.unique_id
self.serial_number = self.config_entry.unique_id
async def _async_setup(self) -> None:
"""Set up the coordinator."""
self._current_version = (
await self.client.get_current_measures()
).firmware_version
async def _async_update_data(self) -> AirGradientData:
try:
measures = await self.client.get_current_measures()
config = await self.client.get_config()
except AirGradientError as error:
raise UpdateFailed(error) from error
else:
return AirGradientData(measures, config)
if measures.firmware_version != self._current_version:
device_registry = dr.async_get(self.hass)
device_entry = device_registry.async_get_device(
identifiers={(DOMAIN, self.serial_number)}
)
assert device_entry
device_registry.async_update_device(
device_entry.id,
sw_version=measures.firmware_version,
)
self._current_version = measures.firmware_version
return AirGradientData(measures, config)

View file

@ -0,0 +1,18 @@
"""Diagnostics support for Airgradient."""
from __future__ import annotations
from dataclasses import asdict
from typing import Any
from homeassistant.core import HomeAssistant
from . import AirGradientConfigEntry
async def async_get_config_entry_diagnostics(
hass: HomeAssistant, entry: AirGradientConfigEntry
) -> dict[str, Any]:
"""Return diagnostics for a config entry."""
return asdict(entry.runtime_data.data)

View file

@ -6,6 +6,6 @@
"documentation": "https://www.home-assistant.io/integrations/airgradient",
"integration_type": "device",
"iot_class": "local_polling",
"requirements": ["airgradient==0.9.0"],
"requirements": ["airgradient==0.9.1"],
"zeroconf": ["_airgradient._tcp.local."]
}

View file

@ -1,7 +1,8 @@
"""Airgradient Update platform."""
from datetime import timedelta
from functools import cached_property
from propcache import cached_property
from homeassistant.components.update import UpdateDeviceClass, UpdateEntity
from homeassistant.core import HomeAssistant

View file

@ -1,5 +1,7 @@
"""Config flow for AirNow integration."""
from __future__ import annotations
import logging
from typing import Any
@ -12,7 +14,6 @@ from homeassistant.config_entries import (
ConfigFlow,
ConfigFlowResult,
OptionsFlow,
OptionsFlowWithConfigEntry,
)
from homeassistant.const import CONF_API_KEY, CONF_LATITUDE, CONF_LONGITUDE, CONF_RADIUS
from homeassistant.core import HomeAssistant, callback
@ -120,12 +121,12 @@ class AirNowConfigFlow(ConfigFlow, domain=DOMAIN):
@callback
def async_get_options_flow(
config_entry: ConfigEntry,
) -> OptionsFlow:
) -> AirNowOptionsFlowHandler:
"""Return the options flow."""
return AirNowOptionsFlowHandler(config_entry)
return AirNowOptionsFlowHandler()
class AirNowOptionsFlowHandler(OptionsFlowWithConfigEntry):
class AirNowOptionsFlowHandler(OptionsFlow):
"""Handle an options flow for AirNow."""
async def async_step_init(
@ -136,12 +137,7 @@ class AirNowOptionsFlowHandler(OptionsFlowWithConfigEntry):
return self.async_create_entry(data=user_input)
options_schema = vol.Schema(
{
vol.Optional(CONF_RADIUS): vol.All(
int,
vol.Range(min=5),
),
}
{vol.Optional(CONF_RADIUS): vol.All(int, vol.Range(min=5))}
)
return self.async_show_form(

View file

@ -42,6 +42,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: AirthingsConfigEntry) ->
coordinator = DataUpdateCoordinator(
hass,
_LOGGER,
config_entry=entry,
name=DOMAIN,
update_method=_update_method,
update_interval=SCAN_INTERVAL,

View file

@ -2,75 +2,27 @@
from __future__ import annotations
from datetime import timedelta
import logging
from airthings_ble import AirthingsBluetoothDeviceData, AirthingsDevice
from bleak_retry_connector import close_stale_connections_by_address
from homeassistant.components import bluetooth
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant
from homeassistant.exceptions import ConfigEntryNotReady
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
from homeassistant.util.unit_system import METRIC_SYSTEM
from .const import DEFAULT_SCAN_INTERVAL, DOMAIN, MAX_RETRIES_AFTER_STARTUP
from .const import MAX_RETRIES_AFTER_STARTUP
from .coordinator import AirthingsBLEConfigEntry, AirthingsBLEDataUpdateCoordinator
PLATFORMS: list[Platform] = [Platform.SENSOR]
_LOGGER = logging.getLogger(__name__)
AirthingsBLEDataUpdateCoordinator = DataUpdateCoordinator[AirthingsDevice]
AirthingsBLEConfigEntry = ConfigEntry[AirthingsBLEDataUpdateCoordinator]
async def async_setup_entry(
hass: HomeAssistant, entry: AirthingsBLEConfigEntry
) -> bool:
"""Set up Airthings BLE device from a config entry."""
hass.data.setdefault(DOMAIN, {})
address = entry.unique_id
is_metric = hass.config.units is METRIC_SYSTEM
assert address is not None
await close_stale_connections_by_address(address)
ble_device = bluetooth.async_ble_device_from_address(hass, address)
if not ble_device:
raise ConfigEntryNotReady(
f"Could not find Airthings device with address {address}"
)
airthings = AirthingsBluetoothDeviceData(_LOGGER, is_metric)
async def _async_update_method() -> AirthingsDevice:
"""Get data from Airthings BLE."""
try:
data = await airthings.update_device(ble_device)
except Exception as err:
raise UpdateFailed(f"Unable to fetch data: {err}") from err
return data
coordinator: AirthingsBLEDataUpdateCoordinator = DataUpdateCoordinator(
hass,
_LOGGER,
name=DOMAIN,
update_method=_async_update_method,
update_interval=timedelta(seconds=DEFAULT_SCAN_INTERVAL),
)
coordinator = AirthingsBLEDataUpdateCoordinator(hass, entry)
await coordinator.async_config_entry_first_refresh()
# Once its setup and we know we are not going to delay
# the startup of Home Assistant, we can set the max attempts
# to a higher value. If the first connection attempt fails,
# Home Assistant's built-in retry logic will take over.
airthings.set_max_attempts(MAX_RETRIES_AFTER_STARTUP)
coordinator.airthings.set_max_attempts(MAX_RETRIES_AFTER_STARTUP)
entry.runtime_data = coordinator

View file

@ -0,0 +1,68 @@
"""The Airthings BLE integration."""
from __future__ import annotations
from datetime import timedelta
import logging
from airthings_ble import AirthingsBluetoothDeviceData, AirthingsDevice
from bleak.backends.device import BLEDevice
from bleak_retry_connector import close_stale_connections_by_address
from homeassistant.components import bluetooth
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.exceptions import ConfigEntryNotReady
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
from homeassistant.util.unit_system import METRIC_SYSTEM
from .const import DEFAULT_SCAN_INTERVAL, DOMAIN
_LOGGER = logging.getLogger(__name__)
type AirthingsBLEConfigEntry = ConfigEntry[AirthingsBLEDataUpdateCoordinator]
class AirthingsBLEDataUpdateCoordinator(DataUpdateCoordinator[AirthingsDevice]):
"""Class to manage fetching Airthings BLE data."""
ble_device: BLEDevice
config_entry: AirthingsBLEConfigEntry
def __init__(self, hass: HomeAssistant, entry: AirthingsBLEConfigEntry) -> None:
"""Initialize the coordinator."""
self.airthings = AirthingsBluetoothDeviceData(
_LOGGER, hass.config.units is METRIC_SYSTEM
)
super().__init__(
hass,
_LOGGER,
config_entry=entry,
name=DOMAIN,
update_interval=timedelta(seconds=DEFAULT_SCAN_INTERVAL),
)
async def _async_setup(self) -> None:
"""Set up the coordinator."""
address = self.config_entry.unique_id
assert address is not None
await close_stale_connections_by_address(address)
ble_device = bluetooth.async_ble_device_from_address(self.hass, address)
if not ble_device:
raise ConfigEntryNotReady(
f"Could not find Airthings device with address {address}"
)
self.ble_device = ble_device
async def _async_update_data(self) -> AirthingsDevice:
"""Get data from Airthings BLE."""
try:
data = await self.airthings.update_device(self.ble_device)
except Exception as err:
raise UpdateFailed(f"Unable to fetch data: {err}") from err
return data

View file

@ -24,5 +24,5 @@
"dependencies": ["bluetooth_adapters"],
"documentation": "https://www.home-assistant.io/integrations/airthings_ble",
"iot_class": "local_polling",
"requirements": ["airthings-ble==0.9.1"]
"requirements": ["airthings-ble==0.9.2"]
}

View file

@ -34,8 +34,8 @@ from homeassistant.helpers.typing import StateType
from homeassistant.helpers.update_coordinator import CoordinatorEntity
from homeassistant.util.unit_system import METRIC_SYSTEM
from . import AirthingsBLEConfigEntry, AirthingsBLEDataUpdateCoordinator
from .const import DOMAIN, VOLUME_BECQUEREL, VOLUME_PICOCURIE
from .coordinator import AirthingsBLEConfigEntry, AirthingsBLEDataUpdateCoordinator
_LOGGER = logging.getLogger(__name__)

View file

@ -9,8 +9,6 @@ from homeassistant.const import CONF_HOST, Platform
from homeassistant.core import HomeAssistant
from homeassistant.exceptions import ConfigEntryNotReady
from .const import DOMAIN
PLATFORMS: list[Platform] = [Platform.CLIMATE, Platform.COVER]
type Airtouch5ConfigEntry = ConfigEntry[Airtouch5SimpleClient]
@ -19,8 +17,6 @@ type Airtouch5ConfigEntry = ConfigEntry[Airtouch5SimpleClient]
async def async_setup_entry(hass: HomeAssistant, entry: Airtouch5ConfigEntry) -> bool:
"""Set up Airtouch 5 from a config entry."""
hass.data.setdefault(DOMAIN, {})
# Create API instance
host = entry.data[CONF_HOST]
client = Airtouch5SimpleClient(host)

View file

@ -34,13 +34,8 @@ from homeassistant.helpers import (
device_registry as dr,
entity_registry as er,
)
from homeassistant.helpers.entity import EntityDescription
from homeassistant.helpers.issue_registry import IssueSeverity, async_create_issue
from homeassistant.helpers.update_coordinator import (
CoordinatorEntity,
DataUpdateCoordinator,
UpdateFailed,
)
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
from .const import (
CONF_CITY,
@ -209,6 +204,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: AirVisualConfigEntry) ->
coordinator = DataUpdateCoordinator(
hass,
LOGGER,
config_entry=entry,
name=async_get_geography_id(entry.data),
# We give a placeholder update interval in order to create the coordinator;
# then, below, we use the coordinator's presence (along with any other
@ -403,39 +399,3 @@ async def async_unload_entry(hass: HomeAssistant, entry: AirVisualConfigEntry) -
async def async_reload_entry(hass: HomeAssistant, entry: AirVisualConfigEntry) -> None:
"""Handle an options update."""
await hass.config_entries.async_reload(entry.entry_id)
class AirVisualEntity(CoordinatorEntity):
"""Define a generic AirVisual entity."""
def __init__(
self,
coordinator: DataUpdateCoordinator,
entry: ConfigEntry,
description: EntityDescription,
) -> None:
"""Initialize."""
super().__init__(coordinator)
self._attr_extra_state_attributes = {}
self._entry = entry
self.entity_description = description
async def async_added_to_hass(self) -> None:
"""Register callbacks."""
await super().async_added_to_hass()
@callback
def update() -> None:
"""Update the state."""
self.update_from_latest_data()
self.async_write_ha_state()
self.async_on_remove(self.coordinator.async_add_listener(update))
self.update_from_latest_data()
@callback
def update_from_latest_data(self) -> None:
"""Update the entity from the latest data."""
raise NotImplementedError

View file

@ -16,7 +16,12 @@ from pyairvisual.cloud_api import (
from pyairvisual.errors import AirVisualError
import voluptuous as vol
from homeassistant.config_entries import ConfigEntry, ConfigFlow, ConfigFlowResult
from homeassistant.config_entries import (
SOURCE_REAUTH,
ConfigEntry,
ConfigFlow,
ConfigFlowResult,
)
from homeassistant.const import (
CONF_API_KEY,
CONF_COUNTRY,
@ -140,12 +145,11 @@ class AirVisualFlowHandler(ConfigFlow, domain=DOMAIN):
valid_keys.add(user_input[CONF_API_KEY])
if existing_entry := await self.async_set_unique_id(self._geo_id):
self.hass.config_entries.async_update_entry(existing_entry, data=user_input)
self.hass.async_create_task(
self.hass.config_entries.async_reload(existing_entry.entry_id)
if self.source == SOURCE_REAUTH:
return self.async_update_reload_and_abort(
self._get_reauth_entry(),
data_updates={CONF_API_KEY: user_input[CONF_API_KEY]},
)
return self.async_abort(reason="reauth_successful")
return self.async_create_entry(
title=f"Cloud API ({self._geo_id})",

View file

@ -0,0 +1,47 @@
"""The AirVisual component."""
from __future__ import annotations
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import callback
from homeassistant.helpers.entity import EntityDescription
from homeassistant.helpers.update_coordinator import (
CoordinatorEntity,
DataUpdateCoordinator,
)
class AirVisualEntity(CoordinatorEntity):
"""Define a generic AirVisual entity."""
def __init__(
self,
coordinator: DataUpdateCoordinator,
entry: ConfigEntry,
description: EntityDescription,
) -> None:
"""Initialize."""
super().__init__(coordinator)
self._attr_extra_state_attributes = {}
self._entry = entry
self.entity_description = description
async def async_added_to_hass(self) -> None:
"""Register callbacks."""
await super().async_added_to_hass()
@callback
def update() -> None:
"""Update the state."""
self.update_from_latest_data()
self.async_write_ha_state()
self.async_on_remove(self.coordinator.async_add_listener(update))
self.update_from_latest_data()
@callback
def update_from_latest_data(self) -> None:
"""Update the entity from the latest data."""
raise NotImplementedError

View file

@ -26,8 +26,9 @@ from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator
from . import AirVisualConfigEntry, AirVisualEntity
from . import AirVisualConfigEntry
from .const import CONF_CITY
from .entity import AirVisualEntity
ATTR_CITY = "city"
ATTR_COUNTRY = "country"

View file

@ -32,7 +32,7 @@
}
},
"error": {
"general_error": "[%key:common::config_flow::error::unknown%]",
"unknown": "[%key:common::config_flow::error::unknown%]",
"invalid_api_key": "[%key:common::config_flow::error::invalid_api_key%]",
"location_not_found": "Location not found",
"cannot_connect": "[%key:common::config_flow::error::cannot_connect%]"

View file

@ -24,15 +24,9 @@ from homeassistant.const import (
)
from homeassistant.core import Event, HomeAssistant
from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady
from homeassistant.helpers.device_registry import DeviceInfo
from homeassistant.helpers.entity import EntityDescription
from homeassistant.helpers.update_coordinator import (
CoordinatorEntity,
DataUpdateCoordinator,
UpdateFailed,
)
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
from .const import DOMAIN, LOGGER
from .const import LOGGER
PLATFORMS = [Platform.SENSOR]
@ -87,6 +81,7 @@ async def async_setup_entry(
coordinator = DataUpdateCoordinator(
hass,
LOGGER,
config_entry=entry,
name="Node/Pro data",
update_interval=UPDATE_INTERVAL,
update_method=async_get_data,
@ -120,28 +115,3 @@ async def async_unload_entry(
await entry.runtime_data.node.async_disconnect()
return unload_ok
class AirVisualProEntity(CoordinatorEntity):
"""Define a generic AirVisual Pro entity."""
def __init__(
self, coordinator: DataUpdateCoordinator, description: EntityDescription
) -> None:
"""Initialize."""
super().__init__(coordinator)
self._attr_unique_id = f"{coordinator.data['serial_number']}_{description.key}"
self.entity_description = description
@property
def device_info(self) -> DeviceInfo:
"""Return device registry information for this entity."""
return DeviceInfo(
identifiers={(DOMAIN, self.coordinator.data["serial_number"])},
manufacturer="AirVisual",
model=self.coordinator.data["status"]["model"],
name=self.coordinator.data["settings"]["node_name"],
hw_version=self.coordinator.data["status"]["system_version"],
sw_version=self.coordinator.data["status"]["app_version"],
)

View file

@ -14,7 +14,7 @@ from pyairvisual.node import (
)
import voluptuous as vol
from homeassistant.config_entries import ConfigEntry, ConfigFlow, ConfigFlowResult
from homeassistant.config_entries import ConfigFlow, ConfigFlowResult
from homeassistant.const import CONF_IP_ADDRESS, CONF_PASSWORD
from .const import DOMAIN, LOGGER
@ -76,9 +76,7 @@ class AirVisualProFlowHandler(ConfigFlow, domain=DOMAIN):
VERSION = 1
def __init__(self) -> None:
"""Initialize."""
self._reauth_entry: ConfigEntry | None = None
_reauth_entry_data: Mapping[str, Any]
async def async_step_import(self, import_data: dict[str, Any]) -> ConfigFlowResult:
"""Import a config entry from `airvisual` integration (see #83882)."""
@ -88,9 +86,7 @@ class AirVisualProFlowHandler(ConfigFlow, domain=DOMAIN):
self, entry_data: Mapping[str, Any]
) -> ConfigFlowResult:
"""Handle configuration by re-auth."""
self._reauth_entry = self.hass.config_entries.async_get_entry(
self.context["entry_id"]
)
self._reauth_entry_data = entry_data
return await self.async_step_reauth_confirm()
async def async_step_reauth_confirm(
@ -102,10 +98,8 @@ class AirVisualProFlowHandler(ConfigFlow, domain=DOMAIN):
step_id="reauth_confirm", data_schema=STEP_REAUTH_SCHEMA
)
assert self._reauth_entry
validation_result = await async_validate_credentials(
self._reauth_entry.data[CONF_IP_ADDRESS], user_input[CONF_PASSWORD]
self._reauth_entry_data[CONF_IP_ADDRESS], user_input[CONF_PASSWORD]
)
if validation_result.errors:
@ -115,13 +109,9 @@ class AirVisualProFlowHandler(ConfigFlow, domain=DOMAIN):
errors=validation_result.errors,
)
self.hass.config_entries.async_update_entry(
self._reauth_entry, data=self._reauth_entry.data | user_input
return self.async_update_reload_and_abort(
self._get_reauth_entry(), data_updates=user_input
)
self.hass.async_create_task(
self.hass.config_entries.async_reload(self._reauth_entry.entry_id)
)
return self.async_abort(reason="reauth_successful")
async def async_step_user(
self, user_input: dict[str, str] | None = None

View file

@ -0,0 +1,37 @@
"""The AirVisual Pro integration."""
from __future__ import annotations
from homeassistant.helpers.device_registry import DeviceInfo
from homeassistant.helpers.entity import EntityDescription
from homeassistant.helpers.update_coordinator import (
CoordinatorEntity,
DataUpdateCoordinator,
)
from .const import DOMAIN
class AirVisualProEntity(CoordinatorEntity):
"""Define a generic AirVisual Pro entity."""
def __init__(
self, coordinator: DataUpdateCoordinator, description: EntityDescription
) -> None:
"""Initialize."""
super().__init__(coordinator)
self._attr_unique_id = f"{coordinator.data['serial_number']}_{description.key}"
self.entity_description = description
@property
def device_info(self) -> DeviceInfo:
"""Return device registry information for this entity."""
return DeviceInfo(
identifiers={(DOMAIN, self.coordinator.data["serial_number"])},
manufacturer="AirVisual",
model=self.coordinator.data["status"]["model"],
name=self.coordinator.data["settings"]["node_name"],
hw_version=self.coordinator.data["status"]["system_version"],
sw_version=self.coordinator.data["status"]["app_version"],
)

View file

@ -22,7 +22,8 @@ from homeassistant.const import (
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AirVisualProConfigEntry, AirVisualProEntity
from . import AirVisualProConfigEntry
from .entity import AirVisualProEntity
@dataclass(frozen=True, kw_only=True)

View file

@ -24,6 +24,7 @@ PLATFORMS: list[Platform] = [
Platform.CLIMATE,
Platform.SELECT,
Platform.SENSOR,
Platform.SWITCH,
Platform.WATER_HEATER,
]

View file

@ -85,6 +85,7 @@ HVAC_MODE_LIB_TO_HASS: Final[dict[OperationMode, HVACMode]] = {
OperationMode.HEATING: HVACMode.HEAT,
OperationMode.FAN: HVACMode.FAN_ONLY,
OperationMode.DRY: HVACMode.DRY,
OperationMode.AUX_HEATING: HVACMode.HEAT,
OperationMode.AUTO: HVACMode.HEAT_COOL,
}
HVAC_MODE_HASS_TO_LIB: Final[dict[HVACMode, OperationMode]] = {
@ -157,9 +158,10 @@ class AirzoneClimate(AirzoneZoneEntity, ClimateEntity):
self._attr_temperature_unit = TEMP_UNIT_LIB_TO_HASS[
self.get_airzone_value(AZD_TEMP_UNIT)
]
self._attr_hvac_modes = [
_attr_hvac_modes = [
HVAC_MODE_LIB_TO_HASS[mode] for mode in self.get_airzone_value(AZD_MODES)
]
self._attr_hvac_modes = list(dict.fromkeys(_attr_hvac_modes))
if (
self.get_airzone_value(AZD_SPEED) is not None
and self.get_airzone_value(AZD_SPEEDS) is not None
@ -273,12 +275,18 @@ class AirzoneClimate(AirzoneZoneEntity, ClimateEntity):
self._attr_min_temp = self.get_airzone_value(AZD_TEMP_MIN)
if self.supported_features & ClimateEntityFeature.FAN_MODE:
self._attr_fan_mode = self._speeds.get(self.get_airzone_value(AZD_SPEED))
if self.supported_features & ClimateEntityFeature.TARGET_TEMPERATURE_RANGE:
if (
self.supported_features & ClimateEntityFeature.TARGET_TEMPERATURE_RANGE
and self._attr_hvac_mode == HVACMode.HEAT_COOL
):
self._attr_target_temperature_high = self.get_airzone_value(
AZD_COOL_TEMP_SET
)
self._attr_target_temperature_low = self.get_airzone_value(
AZD_HEAT_TEMP_SET
)
self._attr_target_temperature = None
else:
self._attr_target_temperature_high = None
self._attr_target_temperature_low = None
self._attr_target_temperature = self.get_airzone_value(AZD_TEMP_SET)

View file

@ -11,5 +11,5 @@
"documentation": "https://www.home-assistant.io/integrations/airzone",
"iot_class": "local_polling",
"loggers": ["aioairzone"],
"requirements": ["aioairzone==0.9.3"]
"requirements": ["aioairzone==0.9.6"]
}

View file

@ -0,0 +1,122 @@
"""Support for the Airzone switch."""
from __future__ import annotations
from dataclasses import dataclass
from typing import Any, Final
from aioairzone.const import API_ON, AZD_ON, AZD_ZONES
from homeassistant.components.switch import (
SwitchDeviceClass,
SwitchEntity,
SwitchEntityDescription,
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AirzoneConfigEntry
from .coordinator import AirzoneUpdateCoordinator
from .entity import AirzoneEntity, AirzoneZoneEntity
@dataclass(frozen=True, kw_only=True)
class AirzoneSwitchDescription(SwitchEntityDescription):
"""Class to describe an Airzone switch entity."""
api_param: str
ZONE_SWITCH_TYPES: Final[tuple[AirzoneSwitchDescription, ...]] = (
AirzoneSwitchDescription(
api_param=API_ON,
device_class=SwitchDeviceClass.SWITCH,
key=AZD_ON,
),
)
async def async_setup_entry(
hass: HomeAssistant,
entry: AirzoneConfigEntry,
async_add_entities: AddEntitiesCallback,
) -> None:
"""Add Airzone switch from a config_entry."""
coordinator = entry.runtime_data
added_zones: set[str] = set()
def _async_entity_listener() -> None:
"""Handle additions of switch."""
zones_data = coordinator.data.get(AZD_ZONES, {})
received_zones = set(zones_data)
new_zones = received_zones - added_zones
if new_zones:
async_add_entities(
AirzoneZoneSwitch(
coordinator,
description,
entry,
system_zone_id,
zones_data.get(system_zone_id),
)
for system_zone_id in new_zones
for description in ZONE_SWITCH_TYPES
if description.key in zones_data.get(system_zone_id)
)
added_zones.update(new_zones)
entry.async_on_unload(coordinator.async_add_listener(_async_entity_listener))
_async_entity_listener()
class AirzoneBaseSwitch(AirzoneEntity, SwitchEntity):
"""Define an Airzone switch."""
entity_description: AirzoneSwitchDescription
@callback
def _handle_coordinator_update(self) -> None:
"""Update attributes when the coordinator updates."""
self._async_update_attrs()
super()._handle_coordinator_update()
@callback
def _async_update_attrs(self) -> None:
"""Update switch attributes."""
self._attr_is_on = self.get_airzone_value(self.entity_description.key)
class AirzoneZoneSwitch(AirzoneZoneEntity, AirzoneBaseSwitch):
"""Define an Airzone Zone switch."""
def __init__(
self,
coordinator: AirzoneUpdateCoordinator,
description: AirzoneSwitchDescription,
entry: ConfigEntry,
system_zone_id: str,
zone_data: dict[str, Any],
) -> None:
"""Initialize."""
super().__init__(coordinator, entry, system_zone_id, zone_data)
self._attr_name = None
self._attr_unique_id = (
f"{self._attr_unique_id}_{system_zone_id}_{description.key}"
)
self.entity_description = description
self._async_update_attrs()
async def async_turn_on(self, **kwargs: Any) -> None:
"""Turn the entity on."""
param = self.entity_description.api_param
await self._async_update_hvac_params({param: True})
async def async_turn_off(self, **kwargs: Any) -> None:
"""Turn the entity off."""
param = self.entity_description.api_param
await self._async_update_hvac_params({param: False})

View file

@ -17,6 +17,7 @@ PLATFORMS: list[Platform] = [
Platform.CLIMATE,
Platform.SELECT,
Platform.SENSOR,
Platform.SWITCH,
Platform.WATER_HEATER,
]

View file

@ -224,14 +224,20 @@ class AirzoneClimate(AirzoneEntity, ClimateEntity):
self._attr_hvac_mode = HVACMode.OFF
self._attr_max_temp = self.get_airzone_value(AZD_TEMP_SET_MAX)
self._attr_min_temp = self.get_airzone_value(AZD_TEMP_SET_MIN)
if self.supported_features & ClimateEntityFeature.TARGET_TEMPERATURE_RANGE:
if (
self.supported_features & ClimateEntityFeature.TARGET_TEMPERATURE_RANGE
and self._attr_hvac_mode == HVACMode.HEAT_COOL
):
self._attr_target_temperature_high = self.get_airzone_value(
AZD_TEMP_SET_COOL_AIR
)
self._attr_target_temperature_low = self.get_airzone_value(
AZD_TEMP_SET_HOT_AIR
)
self._attr_target_temperature = None
else:
self._attr_target_temperature_high = None
self._attr_target_temperature_low = None
self._attr_target_temperature = self.get_airzone_value(AZD_TEMP_SET)
@ -304,6 +310,10 @@ class AirzoneDeviceClimate(AirzoneClimate):
async def async_set_temperature(self, **kwargs: Any) -> None:
"""Set new target temperature."""
hvac_mode = kwargs.get(ATTR_HVAC_MODE)
if hvac_mode is not None:
await self.async_set_hvac_mode(hvac_mode)
params: dict[str, Any] = {}
if ATTR_TEMPERATURE in kwargs:
params[API_SETPOINT] = {
@ -327,9 +337,6 @@ class AirzoneDeviceClimate(AirzoneClimate):
}
await self._async_update_params(params)
if ATTR_HVAC_MODE in kwargs:
await self.async_set_hvac_mode(kwargs[ATTR_HVAC_MODE])
class AirzoneDeviceGroupClimate(AirzoneClimate):
"""Define an Airzone Cloud DeviceGroup base class."""
@ -360,6 +367,10 @@ class AirzoneDeviceGroupClimate(AirzoneClimate):
async def async_set_temperature(self, **kwargs: Any) -> None:
"""Set new target temperature."""
hvac_mode = kwargs.get(ATTR_HVAC_MODE)
if hvac_mode is not None:
await self.async_set_hvac_mode(hvac_mode)
params: dict[str, Any] = {}
if ATTR_TEMPERATURE in kwargs:
params[API_PARAMS] = {
@ -370,9 +381,6 @@ class AirzoneDeviceGroupClimate(AirzoneClimate):
}
await self._async_update_params(params)
if ATTR_HVAC_MODE in kwargs:
await self.async_set_hvac_mode(kwargs[ATTR_HVAC_MODE])
async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None:
"""Set hvac mode."""
params: dict[str, Any] = {

View file

@ -6,5 +6,5 @@
"documentation": "https://www.home-assistant.io/integrations/airzone_cloud",
"iot_class": "cloud_push",
"loggers": ["aioairzone_cloud"],
"requirements": ["aioairzone-cloud==0.6.5"]
"requirements": ["aioairzone-cloud==0.6.10"]
}

View file

@ -2,14 +2,19 @@
from __future__ import annotations
from collections.abc import Callable
from dataclasses import dataclass
from typing import Any, Final
from aioairzone_cloud.common import AirQualityMode
from aioairzone_cloud.common import AirQualityMode, OperationMode
from aioairzone_cloud.const import (
API_AQ_MODE_CONF,
API_MODE,
API_VALUE,
AZD_AQ_MODE_CONF,
AZD_MASTER,
AZD_MODE,
AZD_MODES,
AZD_ZONES,
)
@ -28,7 +33,10 @@ class AirzoneSelectDescription(SelectEntityDescription):
"""Class to describe an Airzone select entity."""
api_param: str
options_dict: dict[str, str]
options_dict: dict[str, Any]
options_fn: Callable[[dict[str, Any], dict[str, Any]], list[str]] = (
lambda zone_data, value: list(value)
)
AIR_QUALITY_MAP: Final[dict[str, str]] = {
@ -37,6 +45,35 @@ AIR_QUALITY_MAP: Final[dict[str, str]] = {
"auto": AirQualityMode.AUTO,
}
MODE_MAP: Final[dict[str, int]] = {
"cool": OperationMode.COOLING,
"dry": OperationMode.DRY,
"fan": OperationMode.VENTILATION,
"heat": OperationMode.HEATING,
"heat_cool": OperationMode.AUTO,
"stop": OperationMode.STOP,
}
def main_zone_options(
zone_data: dict[str, Any],
options: dict[str, int],
) -> list[str]:
"""Filter available modes."""
modes = zone_data.get(AZD_MODES, [])
return [k for k, v in options.items() if v in modes]
MAIN_ZONE_SELECT_TYPES: Final[tuple[AirzoneSelectDescription, ...]] = (
AirzoneSelectDescription(
api_param=API_MODE,
key=AZD_MODE,
options_dict=MODE_MAP,
options_fn=main_zone_options,
translation_key="modes",
),
)
ZONE_SELECT_TYPES: Final[tuple[AirzoneSelectDescription, ...]] = (
AirzoneSelectDescription(
@ -59,7 +96,19 @@ async def async_setup_entry(
coordinator = entry.runtime_data
# Zones
async_add_entities(
entities: list[AirzoneZoneSelect] = [
AirzoneZoneSelect(
coordinator,
description,
zone_id,
zone_data,
)
for description in MAIN_ZONE_SELECT_TYPES
for zone_id, zone_data in coordinator.data.get(AZD_ZONES, {}).items()
if description.key in zone_data and zone_data.get(AZD_MASTER)
]
entities.extend(
AirzoneZoneSelect(
coordinator,
description,
@ -71,6 +120,8 @@ async def async_setup_entry(
if description.key in zone_data
)
async_add_entities(entities)
class AirzoneBaseSelect(AirzoneEntity, SelectEntity):
"""Define an Airzone Cloud select."""
@ -110,6 +161,11 @@ class AirzoneZoneSelect(AirzoneZoneEntity, AirzoneBaseSelect):
self._attr_unique_id = f"{zone_id}_{description.key}"
self.entity_description = description
self._attr_options = self.entity_description.options_fn(
zone_data, description.options_dict
)
self.values_dict = {v: k for k, v in description.options_dict.items()}
self._async_update_attrs()

View file

@ -36,6 +36,17 @@
"on": "On",
"auto": "Auto"
}
},
"modes": {
"name": "Mode",
"state": {
"cool": "[%key:component::climate::entity_component::_::state::cool%]",
"dry": "[%key:component::climate::entity_component::_::state::dry%]",
"fan": "[%key:component::climate::entity_component::_::state::fan_only%]",
"heat": "[%key:component::climate::entity_component::_::state::heat%]",
"heat_cool": "[%key:component::climate::entity_component::_::state::heat_cool%]",
"stop": "Stop"
}
}
},
"sensor": {

View file

@ -0,0 +1,115 @@
"""Support for the Airzone Cloud switch."""
from __future__ import annotations
from dataclasses import dataclass
from typing import Any, Final
from aioairzone_cloud.const import API_POWER, API_VALUE, AZD_POWER, AZD_ZONES
from homeassistant.components.switch import (
SwitchDeviceClass,
SwitchEntity,
SwitchEntityDescription,
)
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AirzoneCloudConfigEntry
from .coordinator import AirzoneUpdateCoordinator
from .entity import AirzoneEntity, AirzoneZoneEntity
@dataclass(frozen=True, kw_only=True)
class AirzoneSwitchDescription(SwitchEntityDescription):
"""Class to describe an Airzone switch entity."""
api_param: str
ZONE_SWITCH_TYPES: Final[tuple[AirzoneSwitchDescription, ...]] = (
AirzoneSwitchDescription(
api_param=API_POWER,
device_class=SwitchDeviceClass.SWITCH,
key=AZD_POWER,
),
)
async def async_setup_entry(
hass: HomeAssistant,
entry: AirzoneCloudConfigEntry,
async_add_entities: AddEntitiesCallback,
) -> None:
"""Add Airzone Cloud switch from a config_entry."""
coordinator = entry.runtime_data
# Zones
async_add_entities(
AirzoneZoneSwitch(
coordinator,
description,
zone_id,
zone_data,
)
for description in ZONE_SWITCH_TYPES
for zone_id, zone_data in coordinator.data.get(AZD_ZONES, {}).items()
if description.key in zone_data
)
class AirzoneBaseSwitch(AirzoneEntity, SwitchEntity):
"""Define an Airzone Cloud switch."""
entity_description: AirzoneSwitchDescription
@callback
def _handle_coordinator_update(self) -> None:
"""Update attributes when the coordinator updates."""
self._async_update_attrs()
super()._handle_coordinator_update()
@callback
def _async_update_attrs(self) -> None:
"""Update switch attributes."""
self._attr_is_on = self.get_airzone_value(self.entity_description.key)
class AirzoneZoneSwitch(AirzoneZoneEntity, AirzoneBaseSwitch):
"""Define an Airzone Cloud Zone switch."""
def __init__(
self,
coordinator: AirzoneUpdateCoordinator,
description: AirzoneSwitchDescription,
zone_id: str,
zone_data: dict[str, Any],
) -> None:
"""Initialize."""
super().__init__(coordinator, zone_id, zone_data)
self._attr_name = None
self._attr_unique_id = f"{zone_id}_{description.key}"
self.entity_description = description
self._async_update_attrs()
async def async_turn_on(self, **kwargs: Any) -> None:
"""Turn the entity on."""
param = self.entity_description.api_param
params: dict[str, Any] = {
param: {
API_VALUE: True,
}
}
await self._async_update_params(params)
async def async_turn_off(self, **kwargs: Any) -> None:
"""Turn the entity off."""
param = self.entity_description.api_param
params: dict[str, Any] = {
param: {
API_VALUE: False,
}
}
await self._async_update_params(params)

View file

@ -2,11 +2,13 @@
from __future__ import annotations
import asyncio
from datetime import timedelta
from functools import cached_property, partial
from functools import partial
import logging
from typing import Any, Final, final
from typing import TYPE_CHECKING, Any, Final, final
from propcache import cached_property
import voluptuous as vol
from homeassistant.config_entries import ConfigEntry
@ -32,6 +34,7 @@ from homeassistant.helpers.deprecation import (
)
from homeassistant.helpers.entity import Entity, EntityDescription
from homeassistant.helpers.entity_component import EntityComponent
from homeassistant.helpers.entity_platform import EntityPlatform
from homeassistant.helpers.typing import ConfigType
from homeassistant.util.hass_dict import HassKey
@ -48,12 +51,13 @@ from .const import ( # noqa: F401
ATTR_CODE_ARM_REQUIRED,
DOMAIN,
AlarmControlPanelEntityFeature,
AlarmControlPanelState,
CodeFormat,
)
_LOGGER: Final = logging.getLogger(__name__)
DOMAIN_DATA: HassKey[EntityComponent[AlarmControlPanelEntity]] = HassKey(DOMAIN)
DATA_COMPONENT: HassKey[EntityComponent[AlarmControlPanelEntity]] = HassKey(DOMAIN)
ENTITY_ID_FORMAT: Final = DOMAIN + ".{}"
PLATFORM_SCHEMA: Final = cv.PLATFORM_SCHEMA
PLATFORM_SCHEMA_BASE: Final = cv.PLATFORM_SCHEMA_BASE
@ -71,7 +75,7 @@ ALARM_SERVICE_SCHEMA: Final = make_entity_service_schema(
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
"""Track states and offer events for sensors."""
component = hass.data[DOMAIN_DATA] = EntityComponent[AlarmControlPanelEntity](
component = hass.data[DATA_COMPONENT] = EntityComponent[AlarmControlPanelEntity](
_LOGGER, DOMAIN, hass, SCAN_INTERVAL
)
@ -124,12 +128,12 @@ async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool:
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Set up a config entry."""
return await hass.data[DOMAIN_DATA].async_setup_entry(entry)
return await hass.data[DATA_COMPONENT].async_setup_entry(entry)
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Unload a config entry."""
return await hass.data[DOMAIN_DATA].async_unload_entry(entry)
return await hass.data[DATA_COMPONENT].async_unload_entry(entry)
class AlarmControlPanelEntityDescription(EntityDescription, frozen_or_thawed=True):
@ -141,6 +145,7 @@ CACHED_PROPERTIES_WITH_ATTR_ = {
"changed_by",
"code_arm_required",
"supported_features",
"alarm_state",
}
@ -148,6 +153,7 @@ class AlarmControlPanelEntity(Entity, cached_properties=CACHED_PROPERTIES_WITH_A
"""An abstract class for alarm control entities."""
entity_description: AlarmControlPanelEntityDescription
_attr_alarm_state: AlarmControlPanelState | None = None
_attr_changed_by: str | None = None
_attr_code_arm_required: bool = True
_attr_code_format: CodeFormat | None = None
@ -156,6 +162,84 @@ class AlarmControlPanelEntity(Entity, cached_properties=CACHED_PROPERTIES_WITH_A
)
_alarm_control_panel_option_default_code: str | None = None
__alarm_legacy_state: bool = False
__alarm_legacy_state_reported: bool = False
def __init_subclass__(cls, **kwargs: Any) -> None:
"""Post initialisation processing."""
super().__init_subclass__(**kwargs)
if any(method in cls.__dict__ for method in ("_attr_state", "state")):
# Integrations should use the 'alarm_state' property instead of
# setting the state directly.
cls.__alarm_legacy_state = True
def __setattr__(self, __name: str, __value: Any) -> None:
"""Set attribute.
Deprecation warning if setting '_attr_state' directly
unless already reported.
"""
if __name == "_attr_state":
if self.__alarm_legacy_state_reported is not True:
self._report_deprecated_alarm_state_handling()
self.__alarm_legacy_state_reported = True
return super().__setattr__(__name, __value)
@callback
def add_to_platform_start(
self,
hass: HomeAssistant,
platform: EntityPlatform,
parallel_updates: asyncio.Semaphore | None,
) -> None:
"""Start adding an entity to a platform."""
super().add_to_platform_start(hass, platform, parallel_updates)
if self.__alarm_legacy_state and not self.__alarm_legacy_state_reported:
self._report_deprecated_alarm_state_handling()
@callback
def _report_deprecated_alarm_state_handling(self) -> None:
"""Report on deprecated handling of alarm state.
Integrations should implement alarm_state instead of using state directly.
"""
self.__alarm_legacy_state_reported = True
if "custom_components" in type(self).__module__:
# Do not report on core integrations as they have been fixed.
report_issue = "report it to the custom integration author."
_LOGGER.warning(
"Entity %s (%s) is setting state directly"
" which will stop working in HA Core 2025.11."
" Entities should implement the 'alarm_state' property and"
" return its state using the AlarmControlPanelState enum, please %s",
self.entity_id,
type(self),
report_issue,
)
@final
@property
def state(self) -> str | None:
"""Return the current state."""
if (alarm_state := self.alarm_state) is not None:
return alarm_state
if self._attr_state is not None:
# Backwards compatibility for integrations that set state directly
# Should be removed in 2025.11
if TYPE_CHECKING:
assert isinstance(self._attr_state, str)
return self._attr_state
return None
@cached_property
def alarm_state(self) -> AlarmControlPanelState | None:
"""Return the current alarm control panel entity state.
Integrations should overwrite this or use the '_attr_alarm_state'
attribute to set the alarm status using the 'AlarmControlPanelState' enum.
"""
return self._attr_alarm_state
@final
@callback
def code_or_default_code(self, code: str | None) -> str | None:

View file

@ -17,6 +17,21 @@ ATTR_CHANGED_BY: Final = "changed_by"
ATTR_CODE_ARM_REQUIRED: Final = "code_arm_required"
class AlarmControlPanelState(StrEnum):
"""Alarm control panel entity states."""
DISARMED = "disarmed"
ARMED_HOME = "armed_home"
ARMED_AWAY = "armed_away"
ARMED_NIGHT = "armed_night"
ARMED_VACATION = "armed_vacation"
ARMED_CUSTOM_BYPASS = "armed_custom_bypass"
PENDING = "pending"
ARMING = "arming"
DISARMING = "disarming"
TRIGGERED = "triggered"
class CodeFormat(StrEnum):
"""Code formats for the Alarm Control Panel."""

View file

@ -13,13 +13,6 @@ from homeassistant.const import (
CONF_DOMAIN,
CONF_ENTITY_ID,
CONF_TYPE,
STATE_ALARM_ARMED_AWAY,
STATE_ALARM_ARMED_CUSTOM_BYPASS,
STATE_ALARM_ARMED_HOME,
STATE_ALARM_ARMED_NIGHT,
STATE_ALARM_ARMED_VACATION,
STATE_ALARM_DISARMED,
STATE_ALARM_TRIGGERED,
)
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers import (
@ -31,7 +24,7 @@ from homeassistant.helpers.config_validation import DEVICE_CONDITION_BASE_SCHEMA
from homeassistant.helpers.entity import get_supported_features
from homeassistant.helpers.typing import ConfigType, TemplateVarsType
from . import DOMAIN
from . import DOMAIN, AlarmControlPanelState
from .const import (
CONDITION_ARMED_AWAY,
CONDITION_ARMED_CUSTOM_BYPASS,
@ -109,19 +102,19 @@ def async_condition_from_config(
) -> condition.ConditionCheckerType:
"""Create a function to test a device condition."""
if config[CONF_TYPE] == CONDITION_TRIGGERED:
state = STATE_ALARM_TRIGGERED
state = AlarmControlPanelState.TRIGGERED
elif config[CONF_TYPE] == CONDITION_DISARMED:
state = STATE_ALARM_DISARMED
state = AlarmControlPanelState.DISARMED
elif config[CONF_TYPE] == CONDITION_ARMED_HOME:
state = STATE_ALARM_ARMED_HOME
state = AlarmControlPanelState.ARMED_HOME
elif config[CONF_TYPE] == CONDITION_ARMED_AWAY:
state = STATE_ALARM_ARMED_AWAY
state = AlarmControlPanelState.ARMED_AWAY
elif config[CONF_TYPE] == CONDITION_ARMED_NIGHT:
state = STATE_ALARM_ARMED_NIGHT
state = AlarmControlPanelState.ARMED_NIGHT
elif config[CONF_TYPE] == CONDITION_ARMED_VACATION:
state = STATE_ALARM_ARMED_VACATION
state = AlarmControlPanelState.ARMED_VACATION
elif config[CONF_TYPE] == CONDITION_ARMED_CUSTOM_BYPASS:
state = STATE_ALARM_ARMED_CUSTOM_BYPASS
state = AlarmControlPanelState.ARMED_CUSTOM_BYPASS
registry = er.async_get(hass)
entity_id = er.async_resolve_entity_id(registry, config[ATTR_ENTITY_ID])

View file

@ -15,13 +15,6 @@ from homeassistant.const import (
CONF_FOR,
CONF_PLATFORM,
CONF_TYPE,
STATE_ALARM_ARMED_AWAY,
STATE_ALARM_ARMED_HOME,
STATE_ALARM_ARMED_NIGHT,
STATE_ALARM_ARMED_VACATION,
STATE_ALARM_ARMING,
STATE_ALARM_DISARMED,
STATE_ALARM_TRIGGERED,
)
from homeassistant.core import CALLBACK_TYPE, HomeAssistant
from homeassistant.helpers import config_validation as cv, entity_registry as er
@ -29,7 +22,7 @@ from homeassistant.helpers.entity import get_supported_features
from homeassistant.helpers.trigger import TriggerActionType, TriggerInfo
from homeassistant.helpers.typing import ConfigType
from . import DOMAIN
from . import DOMAIN, AlarmControlPanelState
from .const import AlarmControlPanelEntityFeature
BASIC_TRIGGER_TYPES: Final[set[str]] = {"triggered", "disarmed", "arming"}
@ -129,19 +122,19 @@ async def async_attach_trigger(
) -> CALLBACK_TYPE:
"""Attach a trigger."""
if config[CONF_TYPE] == "triggered":
to_state = STATE_ALARM_TRIGGERED
to_state = AlarmControlPanelState.TRIGGERED
elif config[CONF_TYPE] == "disarmed":
to_state = STATE_ALARM_DISARMED
to_state = AlarmControlPanelState.DISARMED
elif config[CONF_TYPE] == "arming":
to_state = STATE_ALARM_ARMING
to_state = AlarmControlPanelState.ARMING
elif config[CONF_TYPE] == "armed_home":
to_state = STATE_ALARM_ARMED_HOME
to_state = AlarmControlPanelState.ARMED_HOME
elif config[CONF_TYPE] == "armed_away":
to_state = STATE_ALARM_ARMED_AWAY
to_state = AlarmControlPanelState.ARMED_AWAY
elif config[CONF_TYPE] == "armed_night":
to_state = STATE_ALARM_ARMED_NIGHT
to_state = AlarmControlPanelState.ARMED_NIGHT
elif config[CONF_TYPE] == "armed_vacation":
to_state = STATE_ALARM_ARMED_VACATION
to_state = AlarmControlPanelState.ARMED_VACATION
state_config = {
state_trigger.CONF_PLATFORM: "state",

View file

@ -16,28 +16,21 @@ from homeassistant.const import (
SERVICE_ALARM_ARM_VACATION,
SERVICE_ALARM_DISARM,
SERVICE_ALARM_TRIGGER,
STATE_ALARM_ARMED_AWAY,
STATE_ALARM_ARMED_CUSTOM_BYPASS,
STATE_ALARM_ARMED_HOME,
STATE_ALARM_ARMED_NIGHT,
STATE_ALARM_ARMED_VACATION,
STATE_ALARM_DISARMED,
STATE_ALARM_TRIGGERED,
)
from homeassistant.core import Context, HomeAssistant, State
from . import DOMAIN
from . import DOMAIN, AlarmControlPanelState
_LOGGER: Final = logging.getLogger(__name__)
VALID_STATES: Final[set[str]] = {
STATE_ALARM_ARMED_AWAY,
STATE_ALARM_ARMED_CUSTOM_BYPASS,
STATE_ALARM_ARMED_HOME,
STATE_ALARM_ARMED_NIGHT,
STATE_ALARM_ARMED_VACATION,
STATE_ALARM_DISARMED,
STATE_ALARM_TRIGGERED,
AlarmControlPanelState.ARMED_AWAY,
AlarmControlPanelState.ARMED_CUSTOM_BYPASS,
AlarmControlPanelState.ARMED_HOME,
AlarmControlPanelState.ARMED_NIGHT,
AlarmControlPanelState.ARMED_VACATION,
AlarmControlPanelState.DISARMED,
AlarmControlPanelState.TRIGGERED,
}
@ -65,19 +58,19 @@ async def _async_reproduce_state(
service_data = {ATTR_ENTITY_ID: state.entity_id}
if state.state == STATE_ALARM_ARMED_AWAY:
if state.state == AlarmControlPanelState.ARMED_AWAY:
service = SERVICE_ALARM_ARM_AWAY
elif state.state == STATE_ALARM_ARMED_CUSTOM_BYPASS:
elif state.state == AlarmControlPanelState.ARMED_CUSTOM_BYPASS:
service = SERVICE_ALARM_ARM_CUSTOM_BYPASS
elif state.state == STATE_ALARM_ARMED_HOME:
elif state.state == AlarmControlPanelState.ARMED_HOME:
service = SERVICE_ALARM_ARM_HOME
elif state.state == STATE_ALARM_ARMED_NIGHT:
elif state.state == AlarmControlPanelState.ARMED_NIGHT:
service = SERVICE_ALARM_ARM_NIGHT
elif state.state == STATE_ALARM_ARMED_VACATION:
elif state.state == AlarmControlPanelState.ARMED_VACATION:
service = SERVICE_ALARM_ARM_VACATION
elif state.state == STATE_ALARM_DISARMED:
elif state.state == AlarmControlPanelState.DISARMED:
service = SERVICE_ALARM_DISARM
elif state.state == STATE_ALARM_TRIGGERED:
elif state.state == AlarmControlPanelState.TRIGGERED:
service = SERVICE_ALARM_TRIGGER
await hass.services.async_call(

View file

@ -7,16 +7,10 @@ import voluptuous as vol
from homeassistant.components.alarm_control_panel import (
AlarmControlPanelEntity,
AlarmControlPanelEntityFeature,
AlarmControlPanelState,
CodeFormat,
)
from homeassistant.const import (
ATTR_CODE,
STATE_ALARM_ARMED_AWAY,
STATE_ALARM_ARMED_HOME,
STATE_ALARM_ARMED_NIGHT,
STATE_ALARM_DISARMED,
STATE_ALARM_TRIGGERED,
)
from homeassistant.const import ATTR_CODE
from homeassistant.core import HomeAssistant
from homeassistant.helpers import entity_platform
import homeassistant.helpers.config_validation as cv
@ -106,15 +100,15 @@ class AlarmDecoderAlarmPanel(AlarmDecoderEntity, AlarmControlPanelEntity):
def _message_callback(self, message):
"""Handle received messages."""
if message.alarm_sounding or message.fire_alarm:
self._attr_state = STATE_ALARM_TRIGGERED
self._attr_alarm_state = AlarmControlPanelState.TRIGGERED
elif message.armed_away:
self._attr_state = STATE_ALARM_ARMED_AWAY
self._attr_alarm_state = AlarmControlPanelState.ARMED_AWAY
elif message.armed_home and (message.entry_delay_off or message.perimeter_only):
self._attr_state = STATE_ALARM_ARMED_NIGHT
self._attr_alarm_state = AlarmControlPanelState.ARMED_NIGHT
elif message.armed_home:
self._attr_state = STATE_ALARM_ARMED_HOME
self._attr_alarm_state = AlarmControlPanelState.ARMED_HOME
else:
self._attr_state = STATE_ALARM_DISARMED
self._attr_alarm_state = AlarmControlPanelState.DISARMED
self._attr_extra_state_attributes = {
"ac_power": message.ac_power,

View file

@ -157,7 +157,7 @@ class AlarmDecoderFlowHandler(ConfigFlow, domain=DOMAIN):
class AlarmDecoderOptionsFlowHandler(OptionsFlow):
"""Handle AlarmDecoder options."""
selected_zone: str | None = None
selected_zone: str
def __init__(self, config_entry: ConfigEntry) -> None:
"""Initialize AlarmDecoder options flow."""

Some files were not shown because too many files have changed in this diff Show more