Commit graph

140 commits

Author SHA1 Message Date
J. Nick Koston
0f29fd3e10
Switch to using fast cached_property implementation in propcache (#127339) 2024-10-03 13:11:02 -05: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
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
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
epenet
8b44c16b57
Use HassKey in core components (a-c) (#126258)
* Use HassKey in conversation

* Use HassKey in assist_satellite

* automation

* More

* Unrelated

* Improve
2024-09-20 12:07:15 +02:00
G Johansson
1caed79895
Validate set_humidity in ClimateEntity (#125242)
* Implementation validation for set_humidity in ClimateEntity

* Fixes
2024-09-16 10:09:44 +02:00
epenet
88cacbc898
Expose component constants for llm helper (#125891)
* Expose climate INTENT_GET_TEMPERATURE

* Expose conversation trace items

* More fixes for llm helper
2024-09-13 12:43:37 +02:00
G Johansson
d259e4512b
Improve logging message for validation in climate (#125837) 2024-09-12 21:41:00 +02:00
G Johansson
c21ea6b8da
Validate target temp features in Climate Entity (#125180)
* Validate target temp features in Climate Entity

* Soften

* Break long string
2024-09-12 10:13:19 +02:00
G Johansson
c2d5696b5b
Add validation to climate hvac mode (#125178)
* Add validation to climate hvac mode

* Make softer

* Remove string

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-09-08 14:24:12 +02:00
G Johansson
2c0c0b9e21
Extend deprecation of aux_heat in ClimateEntity (#125360) 2024-09-05 22:34:35 +02:00
Erik Montnemery
ea7e88d000
Pass None instead of empty dict when registering entity services (#123878) 2024-08-14 07:04:29 -05:00
G Johansson
a913587eb6
Climate validate temperature(s) out of range (#118649)
* Climate temperature out of range

* Fix test sensibo

* use temp converting for min/max

* Fix

* Fix mqtt tests

* Fix honeywell tests

* Fix Balboa tests

* Fix whirlpool test

* Fix teslemetry test

* Fix plugwise test

* Fix tplink test

* Fix generic thermostat test

* Fix modbus test

* Fix fritzbox tests

* Honewell
2024-07-31 19:17:53 +02:00
G Johansson
9d2cf70ba5
Add constant for climate feature flag check (#121619) 2024-07-09 21:14:19 +02:00
G Johansson
44f989ae38
Fix feature flag in climate (#121398) 2024-07-06 23:36:53 +02:00
G Johansson
ac8ea8356c
Fix unnecessary logging of turn on/off feature flags in Climate (#121387) 2024-07-06 19:32:27 +02:00
epenet
f65d91f6d2
Refactor PLATFORM_SCHEMA imports in platforms (#120564) 2024-06-26 15:44:59 +02:00
Jan Bouwhuis
66faeb28d7
Fix late group platform registration (#119789)
* Fix late group platform registration

* use a callback instead

* Run thread safe

* Not working domain filter

* Also update if a group has nested group's

* Only update if the siingle state type key could change

* Avoid redundant regisister hooks

* Use set, add comment

* Revert changes

* Keep callback cleanup const

* Cleanup after dependencies

* Preimport and cleanup excluded domains

* Revert test changes as we assume early set up now

* Migrate alarm_control_panel

* Migrate climate

* Migrate cover

* Migrate device_tracker

* Migrate lock

* Migrate media_player

* Migrate person

* Migrate plant

* Migrate vacuum

* Migrate water_heater

* Remove water_heater group_pre_import

* Use Platform enum if possible

* Also use platform enum for excluded domains

* Set registry to self._registry

* move deregistering call back hook to async_added_to_hass

* Add comment

* Do no pass mutable reference to EXCLUDED_DOMAINS

* Remove unneeded type hint
2024-06-18 20:01:16 +02:00
J. Nick Koston
81d2f5b791
Small cleanups to climate entity feature compat (#116361)
* Small cleanups to climate entity feature compat

Fix some duplicate property fetches, avoid generating a new
enum every time supported_features was fetched if there was
no modifier

* param

* param
2024-04-29 15:43:55 +02:00
Marc Mueller
816ce116bf
Remove unnecessary functools.cached_property backport (#114239) 2024-04-04 11:24:26 +02:00
G Johansson
c21d508c2d
Start deprecation of auxiliary heater in ClimateEntity (#112532)
* Start deprecation of auxiliary heater in ClimateEntity

* No issue for core integrations

* Remove unneded strings

* Move report to state_attributes
2024-03-27 16:10:32 +01:00
Marc Mueller
44eeb2eb5e
Allow Humidifier.current_humidity to be a float (#111297)
* Allow Humidifier.current_humidity to be a float

* Code review

* Allow climate humidity values to be float

* Update demo integration
2024-03-27 11:19:20 +01:00
Sid
82a60fe8ad
Enable Ruff RSE (#113695) 2024-03-18 00:40:38 +01:00
Jan Bouwhuis
554aefed42
Generate HomeAssistantError message from English translations (#113305)
* Fetch exception message from translation cache

* Improve tests

* Return translation key without path, cleanup

* Fetch translations when string variant is requested

* Move import

* revert changes ConfigValidationError

* mypy

* Remove _str__ method instead

* Type _message for mqtt template exception classes

* Revert changes made to test_config.py

* Undo changes TemplateError

* Follow up comments and test coverage
2024-03-16 22:56:48 +01:00
J. Nick Koston
c3b5e819c5
Fix group loading too late resulting in incorrect state (#113262) 2024-03-13 19:18:15 -10:00
Marc Mueller
ff3a801936
Add empty line after module docstring [a-d] (#112697) 2024-03-08 14:51:32 +01:00
Artur Pragacz
3392660537
Add toggle service to climate (#100418)
* Add toggle service to climate

* Fix mqtt test

* Add comments

* Fix rebase

* Remove not needed properties

* Fix toggle service

* Fix test

* Test

* Mod mqtt test

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2024-02-16 15:53:48 +01:00
G Johansson
e877113b21
Add back logging for core for feature flags in climate (#109572) 2024-02-04 15:15:00 +01:00
G Johansson
61c82718f2
Don't log warning for core integrations on new feature flags in Climate (#109250)
* Don't log for core integration on Climate new feature flags

* Add test

* Fix test
2024-02-01 16:53:53 +01:00
G Johansson
ddb56fe20d
Modify climate turn_on/off backwards compatibility check (#109195)
* Modify climate turn_on/off backwards compatibility check

* Fix logger message

* Comments

* Fix demo

* devolo

* ecobee

* Some more

* Fix missing feature flag

* some more

* and some more

* Remove demo change

* Add back demo change

* Fix demo

* Update comments
2024-01-31 16:29:36 +01:00
G Johansson
bc720b48b4
Add TURN_OFF and TURN_ON to ClimateEntityFeature (#101673)
* Add ClimateEntityFeature.TURN_OFF

* Fixes

* Fixes

* wording

* Change to services

* Fixing

* Fixing

* Last bits

* Review comments

* Add hvac_modes checks

* Fixes

* Add tests

* Review comments

* Update snapshots

* balboa

* coolmaster

* ecobee

* mqtt

* nest

* plugwise

* smarttub

* whirlpool

* zwave_js

* fix test climate

* test climate

* zwave

* nexia

* nuheat

* venstar

* tado

* smartthings

* self.hvac_modes not None

* more tests

* homekit_controller

* homekit controller snapshot
2024-01-30 15:07:47 +01:00
Erik Montnemery
c805ea7b4f
Include deprecated constants in wildcard imports (#107114) 2024-01-05 11:46:45 +01:00
J. Nick Koston
f3ecec9c44
Fix missed cached_property for hvac_mode in climate (#106692) 2023-12-29 14:12:19 -10:00
J. Nick Koston
552d4e49f0
Climate platform back-compat for custom components without ClimateEntityFeature (#106605) 2023-12-29 00:36:28 +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
J. Nick Koston
244a7bef39
Use faster contains check in climate (#106430) 2023-12-26 12:18:52 -10:00
J. Nick Koston
9052b89d63
Add support for attribute caching to the climate platform (#106266) 2023-12-23 11:29:33 -10:00
Robert Resch
494a897568
Deprecate deprecated climate constants (#106096) 2023-12-21 00:00:21 +01:00
Erik Montnemery
104bcc64b7
Allow inheriting base component entity descriptions in frozen dataclasses (#105512)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-12-15 23:33:50 -10:00
Erik Montnemery
df73850f56
Move definition of attributes excluded from history to entity classes (#100430)
* Move definition of attributes excluded from history to entity classes

* Revert change which should be in a follow-up PR

* Fix sun unrecorded attributes

* Fix input_select unrecorded attributes
2023-09-21 15:02:47 +02:00
James Smith
f24c4ceab6
Enable strict typing for Climate component (#99301)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-09-06 17:55:41 +02:00
J. Nick Koston
57c640c83c
Reduce attribute lookups in climate needed to write state (#97145) 2023-07-24 16:58:26 +02:00
Franck Nijhof
d7b7deb95f
Improve climate turn_on service (#94645) 2023-06-27 20:17:13 +02:00
Franck Nijhof
21bdcd6b63
Remove str as a valid HVACMode & HVACAction type (#94644)
* Remove str as a valid HAVCMode type

* Adjust pylint plugin

* Also remove str from hvac_action property method
2023-06-15 20:16:17 +02:00
epenet
d89ba40010
Use UnitOfTemperature in integrations (a-d) (#84304) 2022-12-20 17:59:20 +01:00
epenet
48cc3071bb
Enforce ClimateEntityFeature (#82329) 2022-11-22 07:08:53 +01:00
epenet
da2efde354
Set alarm and climate supported features default (#82247) 2022-11-17 10:21:55 +01:00
epenet
39ac2c1101
Adjust type hints for ClimateEntityFeature (#82206) 2022-11-16 21:17:50 +01:00
Marc Mueller
0c8eeaa643
Update mypy to 0.990 (#81783)
* Update mypy to 0.990

* Remove type ignore - overriding attr with property (13475)

* Remove type ignores - hasattr (13544)

* Adjust type ignore - assignment (13549)

* New error code - type-abstract (13785)

* Disable annotation-unchecked (13851)
2022-11-08 14:41:39 +01:00
epenet
24c26dc032
Use unit_conversion in components (#79204)
* Use unit_conversion in components

* Two more
2022-09-28 16:05:31 +02:00