Commit graph

18434 commits

Author SHA1 Message Date
Jan Bouwhuis
af71c2bb45
Raise and suppress stack trace when reloading yaml fails (#102410)
* Allow async_integration_yaml_config to raise

* Docstr - split check

* Implement as wrapper, return dataclass

* Fix setup error handling

* Fix reload test mock

* Move log_messages to error handler

* Remove unreachable code

* Remove config test helper

* Refactor and ensure notifications during setup

* Remove redundat error, adjust tests notifications

* Fix patch

* Apply suggestions from code review

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

* Follow up comments

* Add call_back decorator

* Split long lines

* Update exception abbreviations

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-11-24 17:34:45 +01:00
Robert Resch
852fb58ca8
Extend auth/providers endpoint and add /api/person/list endpoint for local ip requests (#103906)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-11-24 17:11:54 +01:00
Hejki
65a2f5bcd5
Support for group into command_line auth provider (#92906)
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-11-24 13:19:25 +01:00
Joseph
df025b5993
Enumerate openai.Models to validate config (#99438) 2023-11-24 13:14:44 +01:00
Duco Sebel
62473936e2
Allow adding items Picnic shopping cart by searching (#102862)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-11-24 13:06:32 +01:00
Maciej Bieniek
adc56b6b67
Add support for Shelly Wall Display in thermostat mode (#103937) 2023-11-24 12:55:41 +01:00
Paulus Schoutsen
130822fcc6
Attach Matter info to Google Assistant serialize (#103768) 2023-11-24 12:55:05 +01:00
Allen Porter
378a708bf7
Only show Google Tasks that are parents and fix ordering (#103820) 2023-11-24 12:54:49 +01:00
Tom Harris
4096687112
Allow for manual config entry of Insteon PLM path (#103705) 2023-11-24 12:33:51 +01:00
Robert Hillis
76427a0080
Deprecate Harmony switch platform (#92787)
* Deprecate Harmony switches

* uno mas

* add test for issues

* switch to remote

* uno mas
2023-11-24 11:54:43 +01:00
J. Nick Koston
9ed745638d
Chunk purging attributes and data ids for old SQLite versions (#104296) 2023-11-24 11:46:02 +01:00
Robert Svensson
b41b56e54c
Support new deCONZ Particulate Matter endpoint (#104276) 2023-11-24 11:39:13 +01:00
Jan-Philipp Benecke
6f54aaf564
Introduce base entity for ping (#104197) 2023-11-24 11:20:34 +01:00
Robert Svensson
6271fe333d
Rework some UniFi unique IDs (#104390) 2023-11-24 11:18:55 +01:00
Geir Råness
d4450c6c55
Add Z-wave climate sensor override for Heatit Z-TRM6 (#103896)
* add some basic overrides for z-trm6

* switched id and type

* add fixtures some lints

* duplicate tests of z-trm3

* add broken test for trm6

* fix tests, remove name from fixtures, fix comment

* lints

* forgot lints

* add better description on pwer mode

* Update comment v2

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

* fix space from github web merge

* lint on fixture

* fix permissions on fixture

---------

Co-authored-by: geir råness <11741725+geirra@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-11-24 11:01:15 +01:00
Martin Hjelmare
b3211fa5ee
Clean mqtt patch.dict config entries (#104449) 2023-11-24 10:56:17 +01:00
Isak Nyberg
e03ccb5ab6
Add Mypermobil integration (#95613)
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Robert Resch <robert@resch.dev>
2023-11-24 10:40:59 +01:00
Robert Svensson
d78c0bd948
Handle 403 errors in UniFi (#104387)
UniFi handle 403 error
2023-11-23 20:25:26 +01:00
Ville Skyttä
616f6aab76
Add Huawei LTE restart and clear traffic statistics buttons (#91967)
* Add Huawei LTE restart and clear traffic statistics buttons

Deprecate corresponding services in favour of these.

* Change to be removed service warnings to issues

* Add tests

* Update planned service remove versions
2023-11-23 19:35:35 +01:00
aptalca
a1f7f899c9
Make SMTP notify send images as attachments if html is disabled (#93562)
smtp notify: send images without html as attachments

update smtp test to detect content_type for plain txt + image
2023-11-23 13:51:51 +01:00
starkillerOG
6b138a276a
Add diagnostics platform to Reolink (#104378) 2023-11-23 12:55:21 +01:00
Raman Gupta
e9920ff73d
Add select entity for zwave_js Door Lock CC (#104292)
* Add select entity for zwave_js Door Lock CC

* fix test
2023-11-23 12:51:29 +01:00
Mike Heath
d460eadce0
Add support to fully_kiosk for hybrid local push/pull switches using MQTT (#89010)
* Support hybrid local push/pull switches using MQTT

* Update homeassistant/components/fully_kiosk/entity.py

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

* Fix MQTT subscribe method

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-11-23 10:38:32 +01:00
Eugenio Panadero
32aa1aaec2
Add pvpc hourly pricing optional API Token support (#85767)
* 🍱 Add new fixture for PVPC data from authenticated API call

and update mocked server responses when data is not available
(now returns a 200 OK with empty data)

*  Implement optional API token in config-flow + options

to make the data download from an authenticated path in ESIOS server

As this is an *alternative* access, and current public path works for the PVPC,
no user (current or new) is compelled to obtain a token,
and it can be enabled anytime in options, or doing the setup again

When enabling the token, it is verified (or "invalid_auth" error),
and a 'reauth' flow is implemented, which can change or disable the token if
it starts failing.

The 1st step of config/options flow adds a bool to enable this private access,
- if unchecked (default), entry is set for public access (like before)
- if checked, a 2nd step opens to input the token, with instructions
  of how to get one (with a direct link to create a 'request email').
  If the token is valid, the entry is set for authenticated access

The 'reauth' flow shows the boolean flag so the user could disable a bad token
by unchecking the boolean flag 'use_api_token'

* 🌐 Update strings for config/options flows

*  Adapt tests to check API token option and add test_reauth

* 🎨 Link new strings to those in config-flow

* 🐛 tests: Fix mocked date-change with async_fire_time_changed

* ♻️ Remove storage of flag 'use_api_token' in config entry

leaving it only to enable/disable the optional token in the config-flow

* ♻️ Adjust async_update_options
2023-11-23 08:35:30 +01:00
deosrc
5623834b37
Add Netatmo temperature services (#104124)
* Update datetime strings to match input_datetime integration

* Add netatmo service to set temperature

* Add netatmo service to clear temperature setting

* Fix formatting

* Add tests for new services

* Fix mypy error

* Fix formatting

* Fix formatting

* Apply suggestions from code review (WIP)

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

* Complete changes from review suggestions

* Fix build error

* Add service to set temperature for time period

* Expand and fix test

* Replace duplicated strings with links

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-11-23 08:10:10 +01:00
Klaas Schoute
eaba2c7dc1
Update p1monitor lib to v3.0.0 (#104395) 2023-11-23 07:53:50 +01:00
starkillerOG
a3c0f36592
Add Reolink serial number (#104383)
* Add Reolink serial number

* fix tests
2023-11-22 22:54:48 +01:00
Jan Bouwhuis
3a42bd35e7
Test platform setup errors are notified (#104384)
Test setup errors are notified
2023-11-22 21:16:12 +01:00
Jakub Čermák
41626ed500
Support for more features on smartthings AC (#99424)
* ability to set swing mode on samsung AC

* support for windFree mode on samsung AC

* Apply suggestions from code review

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

* suggestion from code reviews

* Apply suggestions from code review

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-11-22 20:00:28 +01:00
Dave T
7a727dc3ad
Migrate Aurora_ABB_Powerone to DataUpdateCoordinator (#72363)
* Refactor to DataUpdateCoordinator

* Fix tests for sunset/sunrise

* Correct time offsets in tests

* Fix time intervals (attempt 2)

* Merge dev

* Fix tests after rebase

* Fix isort

* Address review comments: const and increase cov

* Fix merge problems

* Refactor, removing unnecessary file

* Perform blocking serial IO in the executor

* Replace deprecated  async_setup_platforms

* Update based on review comments

* Fix tests

* Update based on review comments.

* Update homeassistant/components/aurora_abb_powerone/sensor.py

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

* Use freezer for time deltas.

* Address review comments

---------

Co-authored-by: Dave T <davet2001@users.noreply.github.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-11-22 19:04:49 +01:00
Robert Hillis
200804237f
Add binary sensor tests to Skybell (#79568)
* Add tests to Skybell

* better way to manage cache

* uno mas

* try ci fix

* temporary

* undo temporary

* ruff

* black

* uno mas

* uno mas

* remove problematic test for now

* reduce to binary sensor tests

* coverage

* move cache to json

* Update tests/components/skybell/conftest.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-11-22 18:56:50 +01:00
Luke Lashley
5f41d6bbfb
Add better error handling for Roborock initialization (#104181)
* Introduce better handling of errors in init for Roborock

* patch internally

* push exceptions up

* remove duplicated test
2023-11-22 08:34:20 -08:00
Mick Vleeshouwer
75f237b587
Add local API support to Overkiz integration (Somfy TaHoma Developer Mode) (#71644)
* Add initial config flow implementation

* Add initial config flow implementation

* Add todos

* Bugfixes

* Add first zeroconf code

* Fixes for new firmware

* Bugfixes for local integration

* Delete local token

* Fix diagnostics

* Update translations and improve code

* Update translations and improve code

* Add local integration updates

* Add local integration updates

* Small tweaks

* Add comments

* Bugfix

* Small code improvements

* Small code improvements

* Small code improvements

* Small code improvements

* Small code improvements

* Small code improvements

* Bugfixes

* Small code improvements

* Small code improvements

* Change Config Flow (breaking change)

* Remove token when integration is unloaded

* Remove print

* Simplify

* Bugfixes

* Improve configflow

* Clean up unnecessary things

* Catch nosuchtoken exception

* Add migration for Config Flow

* Add version 2 migration

* Revert change in Config Flow

* Fix api type

* Update strings

* Improve migrate entry

* Implement changes

* add more comments

* Extend diagnostics

* Ruff fixes

* Clean up code

* Bugfixes

* Set gateway id

* Start writing tests

* Add first local test

* Code coverage to 64%

* Fixes

* Remove local token on remove entry

* Add debug logging + change manifest

* Add developer mode check

* Fix not_such_token issue

* Small text changes

* Bugfix

* Fix tests

* Address feedback

* DRY

* Test coverage to 77%

* Coverage to 78%

* Remove token removal by UUID

* Add better retry methods

* Clean up

* Remove old data

* 87% coverage

* 90% code coverage

* 100% code coverage

* Use patch.multiple

* Improve tests

* Apply pre-commit after rebase

* Fix breaking changes in ZeroconfServiceInfo

* Add verify_ssl

* Fix test import

* Fix tests

* Catch SSL verify failed

* Revert hub to server rename

* Move Config Flow version back to 1

* Add diagnostics tests

* Fix tests

* Fix strings

* Implement feedback

* Add debug logging for local connection errors

* Simplify Config Flow and fix tests

* Simplify Config Flow

* Fix verify_ssl

* Fix rebase mistake

* Address feedback

* Apply suggestions from code review

* Update tests/components/overkiz/test_config_flow.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-11-22 16:53:17 +01:00
Florian
01c49ba0e4
Add recording status for Philips TV (#94691) 2023-11-22 14:24:49 +00:00
Bouwe Westerdijk
0996c82c02
Plugwise: limit _attr_max_temp to 35.0 for thermostats that report a max of 100. (#104324) 2023-11-22 13:20:33 +01:00
IceBotYT
cbb5d7ea39
Add Linear Garage Door integration (#91436)
* Add Linear Garage Door integration

* Add Linear Garage Door integration

* Remove light platform

* Add tests for diagnostics

* Changes suggested by Lash

* Minor refactoring

* Various improvements

* Catch up to dev, various fixes

* Fix DeviceInfo import

* Use the HA dt_util

* Update tests/components/linear_garage_door/test_cover.py

* Apply suggestions from code review

---------

Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-11-22 09:35:31 +01:00
Duco Sebel
af15aab35e
Add Picnic shopping cart as Todo list (#102855)
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Allen Porter <allen.porter@gmail.com>
2023-11-22 08:40:19 +01:00
Vaarlion
3929b0163c
Add RGB, RGBW and RGBWW capability to template.light (#86047)
* Add RGB, RGBW and RGBWW capability to template.light

Add the required unit test

Mute 'LightTemplate.async_turn_on' is too complex

Rename all HS color mode from a generic "Color" name to a specific "HS" name

* Bring back legacy "color" keyword

* Cleanup unrequested commented test

* Increase code coverage to 100%

* Remove confusing if that should never be false

* Apply suggestions from code review

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-11-22 08:15:26 +01:00
Robert Svensson
edf18df0e6
Add PoE power cycle button to UniFi integration (#104332) 2023-11-22 07:02:49 +01:00
Robert Svensson
f1fd8a0d2b
Bump aiounifi to v66 (#104336) 2023-11-22 07:02:13 +01:00
Luke Lashley
464270d849
Add reauthentication to Roborock (#104215)
* add reauth to roborock

* update reauth based on comments

* fix diagnostics?

* Update homeassistant/components/roborock/config_flow.py

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* remove unneeded import

* fix tests coverage

---------

Co-authored-by: Allen Porter <allen.porter@gmail.com>
2023-11-21 15:21:31 -08:00
starkillerOG
aea15ee20c
Reolink add media browser for playback of recordings (#103407) 2023-11-21 23:43:56 +01:00
Yuxin Wang
33c5d1855d
Rewrite APCUPSD sensors using DataUpdateCoordinator (#88467)
* Add test sensor.

* Fix sensor test file name.

* Add binary sensor test.

* Fix comments and styling.

* Remove apcupsd from omissions in coveragerc.

* Revert "Remove apcupsd from omissions in coveragerc."

This reverts commit 66b05fcb8829619a771a650a3d70174089e15d91.

* Implement the data coordinator for apcupsd.

* Add tests for sensor updates and throttles.

* Reorder the statement for better code clarity.

* Update docstring.

* Add more tests for checking if the coordinator works ok.

* Implement a custom debouncer with 5 second cooldown for the coordinator.

* Add more tests for checking if our integration is able to properly mark entity's availability.

* Make apcupsd a silver integration.

* Try to fix non-deterministic test behaviors

* Fix JSON format

* Use new `with` format in python 3.10 for better readability

* Update tests.

* Rebase and simplify code.

* Add an ups prefix to the property methods of the coordinator

* Replace init_integration with async_init_integration

* Lint fixes

* Fix imports

* Update BinarySensor implementation to add initial update of attributes

* Fix test failures due to rebases

* Reorder the statements for better code clarity

* Fix incorrect references to the ups_name property

* Simplify BinarySensor value getter code

* No need to update when adding coordinator-controlled sensors
2023-11-21 22:40:05 +01:00
Marcel van der Veldt
b604c1c222
Fix discovery schema for Matter switches (#103762)
* Fix discovery schema for matter switches

* fix typo in function that generates device name

* add test for switchunit
2023-11-21 20:25:07 +01:00
J. Nick Koston
4c7da97eca
Bump python-matter-server to 4.0.2 (#103760)
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
2023-11-21 18:36:50 +01:00
Erwin Douna
eb5c7a3e76
Add Fastdotcom config flow (#98686)
* Adding config flow and tests

* Removing update and adding to integrations.json

* Updating hassfest

* Removing comments

* Removing unique ID

* Putting the setup_platform out of order

* Adding feedback on issues and importing

* Removing uniqueID (again)

* Adjusting unload and typo

* Updating manifest properly

* Minor patching

* Removing hass.data.setdefault(DOMAIN, {})

* Moving load_platform to __init__.py

* Update homeassistant/components/fastdotcom/config_flow.py

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

* Update homeassistant/components/fastdotcom/strings.json

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

* Update homeassistant/components/fastdotcom/__init__.py

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

* Update homeassistant/components/fastdotcom/config_flow.py

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

* Adding an unload function for the timer

* Adding issue on setup platform in sensor

* Update homeassistant/components/fastdotcom/config_flow.py

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

* Removing platform

* Fixing strings.json

* Fine-tuning

* Putting back last_state

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-11-21 09:59:34 +01:00
Jan Bouwhuis
5c72d3c2d8
Restore removed guard for non-string inputs in Alexa (#104263) 2023-11-21 07:59:39 +01:00
Erik Montnemery
645f916cf4
Remove support for deprecated light attributes from light scenes (#104254) 2023-11-21 07:51:41 +01:00
Robert Resch
9d3f374728
Add todo.remove_completed_items service call (#104035)
* Extend `remove_item` service by status

* update services.yaml

* Create own service

* add tests

* Update tests/components/todo/test_init.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-11-20 22:39:22 +01:00
Øyvind Matheson Wergeland
5527cbd78a
Fix default lock code for lock services (#103463)
* verisure: Support default code from lock entity

* Actually use default lock code

* Typing

* Only pass default code if set

* Avoid passing code as empty string

* Simplified code
2023-11-20 22:38:16 +01:00