Commit Graph

18941 Commits (fde03d7888e3c25e8a34cd452290f2db8e605316)

Author SHA1 Message Date
G Johansson 648afe121d
Replace dash in language if needed (#106559)
* Replace dash in language if needed

* Add tests
2023-12-28 20:16:14 +01:00
mkmer e7e0ae8f6a
Move services to entity services in blink (#105413)
* Use device name to lookup camera

* Fix device registry serial

* Move to entity based services

* Update tests

* Use config_entry
Move refresh service out of camera

* Use config entry for services

* Fix service schema

* Add depreciation note

* Depreciation note

* key error changes
deprecated (not depreciated)
repair issue

* tweak message

* deprication v2

* back out update field change

* backout update schema changes

* Finish rollback on update service

* update doc strings

* move to 2024.7.0
More verbosity to deprecation message
2023-12-28 19:56:40 +01:00
Robert Hillis 454201d0a8
Add device info to Netgear LTE (#106568)
* Add device info to Netgear LTE

* uno mas
2023-12-28 17:47:04 +01:00
Álvaro Fernández Rojas 5dd63d86f2
Update aioairzone-cloud to v0.3.7 (#106544)
Release v0.3.7

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-12-28 17:14:25 +01:00
G Johansson b852eb7e23
Fix holiday HA language not supported (#106554) 2023-12-28 16:10:27 +01:00
Brett Adams 5b706cedeb
Fix Tessie honk button (#106518) 2023-12-28 09:00:34 +01:00
ollo69 ee25cb2616
Add AsusWrt temperature sensors provided by http protocol (#105692) 2023-12-27 21:20:03 +01:00
Daniel Schall 8778763a3e
Synchronize and cache Generic Camera still image fetching (#105821) 2023-12-27 21:19:25 +01:00
Mike Megally 9b2c67fcd2
Add Color Night Vision switch for UniFi Protect (#106500)
* Add a switch to enable and disable "Color Night Vision" for the Unifi Protect platform, which is a feature on the new G5 Pro cameras with a "Vision Enhancer" attached

* Updated tests for the new switch
2023-12-27 09:56:54 -10:00
Michael 389c8d39f5
Add significant Change support for cover (#106016) 2023-12-27 18:28:24 +01:00
Robert Resch 9508a23f95
Check and register cloud hook if needed for mobile_app (#106461) 2023-12-27 18:01:44 +01:00
dougiteixeira 65c21438a6
Add query type validation independent of declaration position for SQL (#105921)
* Add query type validation independent of declaration position

* Restore close sess

* Separates invalid query and non-read-only query tests

* Add more tests

* Use the SQLParseError exception for queries that are not read-only

* Add handling for multiple SQL queries.

* Fix test

* Clean ';' at the beginning of the SQL query

* Clean ';' at the beginning of the SQL query - init

* Query cleaning before storing

* Query cleaning before setup sesensor plataform - YAML

* Exception when the SQL query type is not detected

* Cleaning

* Cleaning

* Fix typing in tests

* Fix typing in tests

* Add test for query = ';;'

* Update homeassistant/components/sql/__init__.py

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

* Update homeassistant/components/sql/__init__.py

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

* Update __init__.py

* Update config_flow.py

* Clean query before storing

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-12-27 17:58:35 +01:00
Caius-Bonus 37707edc47
Match ZHA Custom ClusterHandler on a Custom Cluster using a unique id for the quirk (#101709)
* initial

* fix tests

* match on specific name and quirk name

* fix tests

* fix tests

* store cluster handlers in only one place

* edit tests

* use correct device for quirk id

* change quirk id

* fix tests

* even if there is a quirk id, it doesn't have to have a specific cluster handler

* add tests

* rename quirk_id

* add tests

* fix tests

* fix tests

* use quirk id from zha_quirks
2023-12-27 11:48:30 -05:00
Marcel van der Veldt 13702d51b1
Add more fine grained control over Matter server commissioning for the Companion apps (#106237) 2023-12-27 16:55:07 +01:00
Michael 117ff21c48
Add significant Change support for number (#105863) 2023-12-27 16:54:08 +01:00
David F. Mulcahey 817c71747f
Delay all ZHA polling until initialization of entities has completed (#105814)
* Don't update entities until they are initialized

* fix hass reference

* only establish polling once

* fix log level and small cleanup

* start device availability checks after full initialization of network

* add logging

* clean up sensor polling and class hierarchy

* don't attempt restore sensor cleanup in this PR

* put check back

* fix race condition and remove parallel updates

* add sensor polling test

* cleanup switch polling and add a test

* clean up and actually fix race condition

* update light forced refresh

* only use flag

* unused flag

* reduce diff size

* collapse
2023-12-27 10:25:41 -05:00
Jon Caruana 45fde2db4e
Remove hardcoded bits from LiteJet integration (#106281)
Use the new properties from pylitejet v0.6.0.
2023-12-27 15:43:00 +01:00
Martijn van der Pol a823edf1c2
Jinja filter and function for `median` and `statistical_mode` (#105554)
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-12-27 15:14:20 +01:00
G Johansson 83f4d3af5c
Implement mode validation in Climate entity component (#105745)
* Implement mode validation in Climate entity component

* Fix some tests

* more tests

* Fix translations

* fix deconz tests

* Fix switcher_kis tests

* not None

* Fix homematicip_cloud test

* Always validate

* Fix shelly

* reverse logic in validation

* modes_str

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-12-27 14:51:39 +01:00
Jan-Philipp Benecke e04fda3fad
Add config flow to trend (#99761)
* Add config flow to trend

* Remove device_class from options flow

* Add min_samples and import step to config flow

* Fix import

* Fixing tests and some cleanup

* remove unneeded usefixtures

* Apply code review suggestions

* Re-add YAML support

* Re-add reload service

* Fix import

* Apply code review suggestions

* Add test coverage for yaml setup

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-12-27 14:46:57 +01:00
Erwin Douna 4decc2bbfb
Refactor Tado to use OAuth in the DeviceTracker (#102610)
* Refactor to use TadoConnector in the DeviceTracker

* Proposing myself as code owner to be notified of issues

* Update homeassistant/components/tado/device_tracker.py

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

* Fixing method names

* Current progress, switching machines

* Updating DeviceTracker to working prototype

* Removing unnecessary callback

* Adding dispatcher logic

* Minor fine-tuning the intervals

* Removing unnecessary debug log

* Update homeassistant/components/tado/device_tracker.py

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

* Update homeassistant/components/tado/device_tracker.py

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

* Fix sorting

* Retrieve devices from the Tado connector data

* Asyncio feedback & dispatch generic mobile devices

* Updating const

* Fine-tuning unloading

* Making add_tracked_entites callback

* Adding unload over dispatcher_connect

* Convert on_demand_update to callback

* Removing now unused method

* Merging method to on_demand_u

* Adding create_issue to address repair

* Updating with better translation

* Converting to callback

* Adding _attr_should_poll

* Putting back the on_demand_update

* Adding unique_id

* Converting to TrackerEntity

* Adding import step (review needed!)

* Update homeassistant/components/tado/device_tracker.py

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

* Update homeassistant/components/tado/device_tracker.py

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

* Update homeassistant/components/tado/device_tracker.py

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

* Update homeassistant/components/tado/config_flow.py

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

* Typing and location_name

* Changing to _attr_unique_id

* Import improvement attempt

* Property feedback

* Update homeassistant/components/tado/config_flow.py

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

* Adding CONF_HOME_ID and task in get_scanner

* Updating descriptions

* Removing the create_task

* Putting back PLATFORM_SCHEMA

* Adding device_tracker

* Adding get for HomeID

* Get it better ;)

* Retrieve HomeID from API

* Add integration title in dialogs

* Update homeassistant/components/tado/config_flow.py

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

* Update homeassistant/components/tado/config_flow.py

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

* Update homeassistant/components/tado/config_flow.py

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

* Fixing homeID and strings.json

* Delete request in strings

* Update deprecation date

* Adding test cases for import flow

* Update tests/components/tado/test_config_flow.py

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

* Update tests/components/tado/test_config_flow.py

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

* Update tests/components/tado/test_config_flow.py

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

* Removing none

* Fixing test cases

* Update homeassistant/components/tado/config_flow.py

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

* Removing from context manager

* Removing code owner

* Re-adding code owner

* Fix get scanner return value

* Fix device tracker interface

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-12-27 14:17:23 +01:00
Jan-Philipp Benecke 0694ff8965
Use snapshot assertion in homekit_controller diagnostics tests (#105647) 2023-12-27 13:49:09 +01:00
Joakim Sørensen b5012a9964
Adjust the GitHub config flow (#105295) 2023-12-27 13:42:24 +01:00
Franck Nijhof 0f3e6b0dec
Revert "Add preselect_remember_me to `/auth/providers`" (#106472)
Revert "Add preselect_remember_me to `/auth/providers` (#106462)"

This reverts commit c19688e2d2.
2023-12-27 13:22:12 +01:00
David Knowles 7746a94543
Fix Hydrawise watering time duration unit (#105919)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-12-27 13:20:09 +01:00
Allen Porter 2497798b5d
Allow clearing To-do list item extended fields (#106208) 2023-12-27 13:14:59 +01:00
Klaas Schoute d0b6acd5e0
Changed setup of easyEnergy services (#106288) 2023-12-27 13:04:49 +01:00
Michael 0824a1f4a2
Add significant Change support for media player (#105999) 2023-12-27 12:59:33 +01:00
Michael d747b0891d
Add significant Change support for fan (#105867) 2023-12-27 12:57:30 +01:00
Rami Mosleh f71e01f652
Improve glances tests (#106402) 2023-12-27 12:55:10 +01:00
G Johansson 8cd0644035
Add translation to ServiceValidationError in Lock (#105746) 2023-12-27 12:50:27 +01:00
Jan Bouwhuis dae8c0fc38
Fix MQTT retained event messages should be discarded (#106425) 2023-12-27 12:48:53 +01:00
kingy444 25f9c5f34b
Fix RainMachine bugs (#106231) 2023-12-27 12:38:37 +01:00
Robert Resch c19688e2d2
Add preselect_remember_me to `/auth/providers` (#106462) 2023-12-27 11:47:52 +01:00
Franck Nijhof a78ecb3895
Add error handling to Tailwind service methods (#106463) 2023-12-27 10:53:31 +01:00
Franck Nijhof 68ac4717dc
Revert "Raise HomeAssistantError if event is triggered with invalid event_type" (#106458) 2023-12-27 10:22:37 +01:00
Renat Sibgatulin 1031e416be
Remove IP / mDNS validation in airq integration setup (#106326)
Original design relied on aioairq.AirQ.__init__ checking if the input
was a valid IP address or an mDNS of a very specific structure,
and raising an InvalidInput otherwise.
Now, aioairq==0.3.2 removes said check completely following a user's
request to allow arbitrary host name and DNS entries.
In the config flow, "cannot_connect" covers the cases of misspelled
inputs now, which previously were covered by a dedicated "invalid_input"
2023-12-27 09:56:13 +01:00
Franck Nijhof d6d8e914bc
Flip around Tailwind locked out binary sensor (#106457) 2023-12-27 09:52:16 +01:00
Jan Bouwhuis c7eab49c70
Raise ServiceValidationError on invalid select option (#106350)
* Raise ServiceValidationError on invalid select option

* Fix tests

* Correct place holders

* More test fixes
2023-12-27 09:45:55 +01:00
Robert Resch fbcb31b103
Deprecate deprecated unit of measurement constants (#106455) 2023-12-27 09:04:25 +01:00
Jan Bouwhuis 65e8bbacc9
Raise HomeAssistantError if event is triggered with invalid event_type (#106357) 2023-12-27 08:50:46 +01:00
Martin Hjelmare 59a01da0ed
Improve cloud tts tests (#106427) 2023-12-27 08:48:07 +01:00
Robert Resch b08268da31
Deprecate deprecated core constants (#106456) 2023-12-27 08:42:57 +01:00
Brett Adams 2afe3364ca
Add names to all Tessie entities (#106267)
* Add name back to device tracker and lock

* Add name to media player

* Add name to update

* Update snapshot

* Keep none name on Update

* Re-add update
2023-12-27 07:56:23 +01:00
Brett Adams 91aea843fc
Move Trunks from Button to Cover in Tessie (#106448)
* Move trunks from buttons to covers

* Add tests

* Cleanup snapshot

* Use Constants

* StrEnum to IntEnum
2023-12-27 06:56:09 +01:00
Brett Adams 2fe982c7f3
Handle failed updates in Tessie (#106450) 2023-12-26 17:19:44 -10:00
J. Nick Koston 4b19c28ad9
Use faster contains check in media_player (#106434) 2023-12-26 13:18:22 -10:00
Brett Adams 9dde42a023
Handle Auto Fan and MyFan in Advantage Air (#95594)
* Decouple climate from MyFan

* Add tests

* Prepare for auto change

* Handle both modes

* Fix import

* Remove reference to FAN map

* Correct auto fan logic

* Remove multiline ternary operator

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

* Fix coverage

* fix tests

* ruff

* Test auto fan mode with snapshot

* add more testing

* Add switch testing

* Fix a bug caught by new tests

* Remove ineffective snapshot tests

* Readd snapshots but use args

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-12-26 23:31:25 +01:00
Keilin Bickar 615cd56f03
Add Support for SleepIQ Foot Warmers (#105931)
* Add foot warmer support

* Add Tests for foot warmers

* Move attr options out of constructor

* Change options to lowercase

* Update test and translations

* Switch back to entity

* Update homeassistant/components/sleepiq/strings.json

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-12-26 23:31:00 +01:00
Brett Adams b51a242fd4
Add install to Tessie update platform (#106352) 2023-12-26 11:56:23 -10:00
Joost Lekkerkerker 01ded7daea
Add config flow to Streamlabs water (#104962)
* Add config flow to Streamlabs water

* Add config flow to Streamlabs water

* Add config flow to Streamlabs water

* Add issue when import is successful

* Remove import issue when entry already exists

* Remove import issue when entry already exists

* Fix feedback

* Fix feedback

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-12-26 22:24:28 +01:00
G Johansson 4f0ee20ec5
Add config flow to System Monitor (#104906)
* Initial commit for config flow to System Monitor

* sensors

* Fixes

* Works

* Add import

* entity_registry_enabled_default = False

* entity_category = diagnostic

* Create issue

* issue in config flow

* Tests

* test requirement

* codeowner

* Fix names

* processes

* Fix type

* reviews

* get info during startup once

* Select process

* Legacy import of resources

* requirements

* Allow custom

* Fix tests

* strings

* strings

* Always enable process sensors

* Fix docstrings

* skip remove sensors if no sensors

* Modify sensors

* Fix tests
2023-12-26 18:29:32 +01:00
Simone Chemelli 2cd6c2b6bf
Add alarm platform to Comelit (#104718)
* initial work on alarm

* final work on alarm

* coveragerc

* add tests

* add code validation

* remove sensor changes for a dedicated PR

* code optimization and cleanup

* tweaks

* tweak #2

* apply suggestion

* code quality

* code quality #2

* fix cover.py

* api typing

* use base classes where possibile

* apply const as per review comment

* cleanup unload entry

* apply review comments
2023-12-26 18:27:33 +01:00
Marc Mueller c6d1f1ccc8
Fix pytest test collection warning (#106405) 2023-12-26 16:23:19 +01:00
mkmer e9f28c2060
Redact unique id from diagnostics in blink (#106413)
redact unique id
2023-12-26 16:16:54 +01:00
Tobias Perschon c8f9285aba
Switch unifi_direct to external library (#105046)
* switch to external library

Signed-off-by: Tobias Perschon <tobias@perschon.at>

* use mac as name if no hostname is available

Signed-off-by: Tobias Perschon <tobias@perschon.at>

* update requirements_test_all

Signed-off-by: Tobias Perschon <tobias@perschon.at>

* update .coveragerc

Signed-off-by: Tobias Perschon <tobias@perschon.at>

* update codeowners and remove old tests

Signed-off-by: Tobias Perschon <tobias@perschon.at>

* reverted get_device_name to old behaviour

Signed-off-by: Tobias Perschon <tobias@perschon.at>

* typing and some cleanup

Signed-off-by: Tobias Perschon <tobias@perschon.at>

* typing fix

Signed-off-by: Tobias Perschon <tobias@perschon.at>

* code cleanup

Signed-off-by: Tobias Perschon <tobias@perschon.at>

---------

Signed-off-by: Tobias Perschon <tobias@perschon.at>
2023-12-26 13:22:53 +01:00
Maciej Bieniek 3eef1a3f6a
Add valve platform for Shelly Gas Valve (#106087)
* Add valve platform

* Update BLOCK_PLATFORMS

* Add tests

* Use _attr_is_closed

* Fix mypy errors

* Make the valve switch to disabled by default

* Add deprecation issues

* Remove LOGGER

* Clean

* Add deprecation comments

* Suggested changes

* Set True for is_fixable

* Show valve entity and services in repair issue
2023-12-26 07:56:21 +01:00
Robert Hillis 6f9bff7602
Add config flow to Netgear LTE (#93002)
* Add config flow to Netgear LTE

* uno mas

* uno mas

* forgot one

* uno mas

* uno mas

* apply suggestions

* tweak user step

* fix load/unload/dep

* clean up

* fix tests

* test yaml before importing

* uno mas

* uno mas

* uno mas

* uno mas

* uno mas

* fix startup hanging

* break out yaml import

* fix doc string

---------

Co-authored-by: Robert Resch <robert@resch.dev>
2023-12-26 05:19:28 +01:00
J. Nick Koston eb3fde7261
Avoid clearing the attr cache in setter when nothing has changed (#106384) 2023-12-25 09:13:48 -10:00
Jan Bouwhuis 3016dbc2bd
Enable toggle on valve/cover start in google_assistant (#106378) 2023-12-25 15:40:17 +01:00
G Johansson 123b2669f3
Add full coverage to Fast.com (#105596)
* Add full test coverage for Fast.com

* Remove not needed

* Add service deprecated test

* Rename speedtest

* Extend delay test
2023-12-25 12:04:07 +01:00
Brett Adams 4c11cb78c8
Add delay to manual refresh in Advantage Air (#104918)
* Add debouncer

* Avoid having 3 calls

* Debounce causes extra refresh in reload window

* Seperate disabled test to avoid latent refresh

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-12-25 12:01:59 +01:00
Patrick Frazer 771409579a
Add select platform to drop_connect integration (#106309)
* Add select platform to drop_connect integration

* Fix select test

* Fix minor issues

* Make function definition more specific

* Revert change to switch.py for inclusion in separate PR

* Improve typing

* Add translation keys for select options

* Fix set function typing

* Remove redundant value check

* Remove args that match defaults
2023-12-24 15:03:10 +01:00
Joost Lekkerkerker c7cb508896
Add diagnostics to ccm15 (#106329)
* Add diagnostics to ccm15

* Update homeassistant/components/ccm15/diagnostics.py

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

---------

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-12-24 02:34:36 +01:00
J. Nick Koston f097e2a2f6
Add support for attribute caching to the media_player platform (#106257) 2023-12-23 13:33:11 -10:00
J. Nick Koston 6e6d7a0c92
Add support for attribute caching to the event platform (#106330) 2023-12-23 13:23:32 -10:00
J. Nick Koston e43f4412fa
Fix native_step in number not looking at _attr_native_step (#106327) 2023-12-23 13:20:24 -10:00
J. Nick Koston abd3c54cbe
Add support for attribute caching to the camera platform (#106256) 2023-12-23 13:01:47 -10:00
Kevin Worrel 4c912fcf1b
Update test data for screenlogic (#106325) 2023-12-23 11:57:27 -10:00
Oscar Calvo b2caf15434
New integration Midea ccm15 climate (#94824)
* Initial commit

* Correct settings for config flow

* Use scan interval

* Store proper data

* Remove circular dependency

* Remove circular dependency

* Integration can be initialized

* Fix defaults

* Add setup entry

* Add setup entry

* Dont block forever

* Poll during async_setup_entry

* Remove not needed async methods

* Add debug info

* Parse binary data

* Parse binary data

* Use data to update device

* Use data to update device

* Add CCM15DeviceState

* Use DataCoordinator

* Use DataCoordinator

* Use DataCoordinator

* Use CoordinatorEntity

* Use CoordinatorEntity

* Call update API

* Call update API

* Call update API

* Call update API

* Use dataclass

* Use dataclass

* Use dataclass

* Use dataclass

* Use dataclass

* Use dataclass

* Use dataclass

* Use dataclass

* Fix bugs

* Implement swing

* Support swing mode, read only

* Add unit test

* Swing should work

* Set swing mode

* Add DeviceInfo

* Add error code

* Add error code

* Add error code

* Add error code

* Initial commit

* Refactor

* Remove comment code

* Try remove circular ref

* Try remove circular ref

* Remove circular ref

* Fix bug

* Fix tests

* Fix tests

* Increase test coverage

* Increase test coverage

* Increase test coverrage

* Add more unit tests

* Increase coverage

* Update coordinator.py

* Fix ruff

* Set unit of temperature

* Add bounds check

* Fix unit tests

* Add test coverage

* Use Py-ccm15

* Update tests

* Upgrade dependency

* Apply PR feedback

* Upgrade dependency

* Upgrade dependency

* Upgrade dependency

* Force ruff

* Delete not needed consts

* Fix mypy

* Update homeassistant/components/ccm15/coordinator.py

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

* Apply PR Feedback

* Apply PR Feedback

* Apply PR Feedback

* Apply PR Feedback

* Apply PR Feedback

* Apply PR Feedback

* Fix unit tests

* Move climate instance

* Revert "Move climate instance"

This reverts commit cc5b9916b7.

* Apply PR feedback

* Apply PR Feedback

* Remove scan internal parameter

* Update homeassistant/components/ccm15/coordinator.py

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

* Remove empty keys

* Fix tests

* Use attr fields

* Try refactor

* Check for multiple hosts

* Check for duplicates

* Fix tests

* Use PRECISION_WHOLE

* Use str(ac_index)

* Move {self._ac_host}.{self._ac_index} to construtor

* Make it fancy

* Update homeassistant/components/ccm15/coordinator.py

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

* Move const to class variables

* Use actual config host

* Move device info to construtor

* Update homeassistant/components/ccm15/climate.py

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

* Set name to none, dont ask for poll

* Undo name change

* Dont use coordinator in config flow

* Dont use coordinator in config flow

* Check already configured

* Apply PR comments

* Move above

* Use device info name

* Update tests/components/ccm15/test_coordinator.py

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

* Update tests/components/ccm15/test_config_flow.py

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

* Apply feedback

* Remove logger debug calls

* Add new test to check for dupplicates

* Test error

* Use better name for test

* Update homeassistant/components/ccm15/config_flow.py

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

* Update homeassistant/components/ccm15/climate.py

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

* Update homeassistant/components/ccm15/config_flow.py

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

* Use prop data for all getters

* Fix tests

* Improve tests

* Improve tests, v2

* Replace log message by comment

* No need to do bounds check

* Update config_flow.py

* Update test_config_flow.py

* Update test_coordinator.py

* Update test_coordinator.py

* Create test_climate.py

* Delete tests/components/ccm15/test_coordinator.py

* Update coordinator.py

* Update __init__.py

* Create test_climate.ambr

* Update conftest.py

* Update test_climate.py

* Create test_init.py

* Update .coveragerc

* Update __init__.py

* We need to check bounds after all

* Add more test coverage

* Test is not None

* Use better naming

* fix tests

* Add available property

* Update homeassistant/components/ccm15/climate.py

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

* Use snapshots to simulate netwrok failure or power failure

* Remove not needed test

* Use walrus

---------

Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-12-23 21:24:52 +01:00
Robert Resch ebdf7b9c8c
Deprecate some deprecated const constants (#106230)
* Deprecate some deprecated const constants

* Improve code

* fix typing

* Apply suggestions from code review

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-12-23 20:18:51 +01:00
Brandon Rothweiler c629b434cd
Add energy usage sensor to A. O. Smith integration (#105616)
* Add energy usage sensor to A. O. Smith integration

* Address review comments

* Address review comment

* Address review comment

* Create device outside of the entity class

* Address review comment

* remove platinum
2023-12-23 17:24:49 +01:00
Matt 345f7f2003
Fix feedreader date comparison to allow RSS entries with identical timestamps (#104925)
Change feedreader publishdate comparison
2023-12-23 16:48:36 +01:00
Jan Bouwhuis e311a6835e
Add valve platform support to google_assistant (#106139)
* Add valve platform to google_assistant

* Use constant for domains set
2023-12-23 16:46:25 +01:00
Patrick Frazer c126022d4f
Add switches to drop_connect integration (#106264)
* Add switches to drop_connect integration

* Let device update state

* Simplify icon property

* Use constants for icon names

* Add simulated responses from devices

* Use keyed form for switch value

* Clean up properties
2023-12-23 16:39:31 +01:00
Marco d450a7f57e
Improve mikrotik error handling (#106244)
* improve mikrotik error handling

* switch to debug

* fix mock command arguments

* add recommendations

---------

Co-authored-by: Marco98 <Marco98@users.noreply.github.com>
2023-12-23 16:26:27 +01:00
Jan Bouwhuis 6da2f98d34
Fix mqtt valve is not resetting opening or closing state (#106240)
* Fix mqtt valve is not resetting opening or closing state

* Require state or position attr in JSON state update

* Do not change `_attr_is_closed` if valve reports a position

* Add comment, use tuple

* Call _update_state
2023-12-23 15:18:44 +01:00
Brett Adams 043f3e640c
Rework entity description functions in Tessie (#106287)
* use lamdba to return the library function

* Rename mocks

* lambda number

* Lambda button

* Add missing

* Remove context manager
2023-12-23 13:45:06 +01:00
doggkruse ea7c839423
Apply units of measure provided in API when available in LaCrosse View (#106299)
* Apply units of measure provided in API when available to avoid mismatch of native units.  Improved fix for #106148

* Fix ruff error
2023-12-23 13:41:15 +01:00
Michael da684d6a7b
Add diagnostics support to Tankerkoenig (#106301) 2023-12-23 12:20:15 +01:00
Robert Resch 060172fc24
Deprecate deprecated data entry flow constants (#106229) 2023-12-23 11:25:39 +01:00
Michael 859e7972ac
Add significant Change support for vacuum (#106002) 2023-12-23 11:24:32 +01:00
Michael 321dc3984c
Add significant Change support for humidifier (#106015) 2023-12-23 10:56:51 +01:00
Robert Resch 20ba764d92
Deprecate deprecated camera constants (#106095) 2023-12-23 10:46:23 +01:00
Franck Nijhof 3404bd4de5
Fix flaky Tailwind tests by fixing via_device (#106294) 2023-12-23 10:45:20 +01:00
Martin Hjelmare 1d0cee5e8a
Improve cloud system health tests (#106235) 2023-12-23 10:35:16 +01:00
J. Nick Koston 5156a93b9e
Add support for attribute caching to the update platform (#106261) 2023-12-23 10:29:55 +01:00
jjlawren 0ae4d017b9
Add subwoofer crossover support to Sonos Amp devices (#106290) 2023-12-23 10:25:20 +01:00
Erik Montnemery 3a744d374b
Add support for caching entity properties (#100601) 2023-12-22 09:02:55 -10:00
Martin Hjelmare 087eb86e37
Improve cloud binary sensor tests (#106238)
* Clean up cloud binary sensor test

* Test remove entity
2023-12-22 19:48:07 +01:00
Patrick Frazer c41173bb29
Add binary sensors to drop_connect integration (#106248) 2023-12-22 19:26:52 +01:00
Allen Porter 656d0696bb
Add support for re-ordering Google Tasks (#104769)
* Add reorder and task ordering

* Remove un-needed js id code

* Revert dead code deletion

* Remove reverted test and dead logger

* Update comment name
2023-12-22 18:49:41 +01:00
G Johansson d1d5c50b73
Add full test coverage to Trafikverket Train (#106247)
* Add full test coverage for Trafikverket Train

* Coordinator full coverage

* Now full coverage

* Add util
2023-12-22 16:53:51 +01:00
Floris272 8b0d19aca2
Add bluecurrent integration (#82483)
* Add bluecurrent integration

* Apply feedback

* Rename integration

* changed constants and removed strings.sensor.json

* update blue_current integration

* update bluecurrent-api to 1.0.4

* Update bluecurrent-api to 1.0.5

* Apply feedback

* Remove translation

* Apply feedback

* Use customer_id as unique id

* Apply feedback

* Add @pytest.mark.parametrize

* Replace loop.create_task with async_create_task
2023-12-22 16:34:16 +01:00
Rami Mosleh c91ac22d3c
Add location selector to Islamic prayer times (#105911)
* Add location selector to config flow

* Simplify entry data

* fix abort string

* Add migration with minor version

* Follow documented migration method
2023-12-22 15:24:50 +01:00
G Johansson 126a58a33e
Return multiple trains in Trafikverket Train (#106206)
* Add list of trains to coordinator

* Fix to work

* snapshot

* Fixes

* Fix
2023-12-22 15:18:16 +01:00
Jan-Philipp Benecke 13504d5fd5
Add consider home interval to ping (#104881)
* Add consider home interval to ping

* Run ruff after rebase

* Fix buggy consider home interval
2023-12-22 14:50:58 +01:00
Patrick Frazer fce1b6d248
Add DROP integration (#104319)
* Add DROP integration

* Remove all but one platform for first PR

* Simplify initialization of hass.data[] structure

* Remove unnecessary mnemonic 'DROP_' prefix from DOMAIN constants

* Remove unnecessary whitespace

* Clarify configuration 'confirm' step description

* Remove unnecessary whitespace

* Use device class where applicable

* Remove unnecessary constructor and change its elements to class variables

* Change base entity inheritance to CoordinatorEntity

* Make sensor definitions more concise

* Rename HA domain from drop to drop_connect

* Remove underscores from class and function names

* Remove duplicate temperature sensor

* Change title capitalization

* Refactor using SensorEntityDescription

* Remove unnecessary intermediate dict layer

* Remove generated translations file

* Remove currently unused string values

* Use constants in sensor definitions

* Replace values with constants

* Move translation keys

* Remove unnecessary unique ID and config entry references

* Clean up DROPEntity initialization

* Clean up sensors

* Rename vars and functions according to style

* Remove redundant self references

* Clean up DROPSensor initializer

* Add missing state classes

* Simplify detection of configured devices

* Change entity identifiers to create device linkage

* Move device_info to coordinator

* Remove unnecessary properties

* Correct hub device IDs

* Remove redundant attribute

* Replace optional UID with assert

* Remove redundant attribute

* Correct coordinator initialization

* Fix mypy error

* Move API functionality to 3rd party library

* Abstract device to sensor map into a dict

* Unsubscribe MQTT on unload

* Move entity device information

* Make type checking for mypy conditional

* Bump dropmqttapi to 1.0.1

* Freeze dataclass to match parent class

* Fix race condition in MQTT unsubscribe setup

* Ensure unit tests begin with invalid MQTT state

* Change unit tests to reflect device firmware

* Move MQTT subscription out of the coordinator

* Tidy up initializer

* Move entirety of MQTT subscription out of the coordinator

* Make drop_api a class property

* Remove unnecessary type checks

* Simplify some unit test asserts

* Remove argument matching default

* Add entity category to battery and cartridge life sensors
2023-12-22 14:24:08 +01:00
ashionky 102c7f1959
Add Refoss integration (#100573)
* refoss

* refoss

* refoss

* refoss

* refoss modify

* ip

* 8.22

* format

* format

* format

* bugfix

* test

* test

* test

* test

* test

* test

* 9.1

* refosss

* refoss

* refoss

* refoss

* refoss

* refoss

* refoss

* refoss

* test

* requirements_test_all.txt

* codeowners

* refoss

* Review feedback repair

* strings

* refoss

* refoss

* refoss

* 1.1.1

* 1.1.2

* refoss

* refoss

* refoss.1.1.7

* refoss-gree

* 1.1.7

* test

* refoss

* test refoss

* test refoss

* refoss-test

* refoss

* refoss

* test

* test

* refoss

* CODEOWNERS

* fix

* Update homeassistant/components/refoss/__init__.py

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-12-22 13:18:32 +01:00
Jan Bouwhuis f536bc1d0c
Add valve support to Amazon Alexa (#106053)
Add valve platform to Amazon Alexa
2023-12-22 12:08:06 +01:00