Commit Graph

84 Commits (7c59b0b43cb33b3a7f89f65254307153085f3c2e)

Author SHA1 Message Date
Erik Montnemery c805ea7b4f
Include deprecated constants in wildcard imports (#107114) 2024-01-05 11:46:45 +01:00
J. Nick Koston 3e7c44c612
Fan platform back-compat for custom components without FanEntityFeature (#106607) 2023-12-29 00:36:15 +01:00
J. Nick Koston 51a50fc134
Use faster contains check in fan (#106431) 2023-12-26 12:19:02 -10:00
J. Nick Koston d83dafa14a
Add support for attribute caching to the fan platform (#106269) 2023-12-23 11:26:40 +01:00
Robert Resch c9c072ff3e
Deprecate deprecated fan constants (#106111) 2023-12-20 17:54:43 +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
Jan Bouwhuis 953a212dd6
Use ServiceValidationError for invalid fan preset_mode and move check to fan entity component (#104560)
* Use ServiceValidationError for fan preset_mode

* Use _valid_preset_mode_or_raise to raise

* Move preset_mode validation to entity component

* Fix bond fan and comments

* Fixes baf, fjaraskupan and template

* More integration adjustments

* Add custom components mock and test code

* Make NotValidPresetModeError subclass

* Update homeassistant/components/fan/strings.json

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

* Keep bond has_action validation

* Move demo test asserts outside context block

* Follow up comment

* Update homeassistant/components/fan/strings.json

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

* Fix demo tests

* Remove pylint disable

* Remove unreachable code

* Update homeassistant/components/fan/__init__.py

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

* Use NotValidPresetModeError, Final methods

* Address comments

* Correct docst

* Follow up comments

* Update homeassistant/components/fan/__init__.py

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

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-11-29 13:56:51 +01: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
Franck Nijhof b0cee0bc46
String formatting and max line length - Part 1 (#84390)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-12-22 10:12:50 +01:00
epenet 12cb17620e
Enforce FanEntityFeature (#82458)
* Enforce FanEntityFeature

* Adjust pylint
2022-11-22 07:13:54 +01:00
epenet 1b80c66195
Adjust type hints for FanEntityFeature (#82241)
* Adjust type hints for FanEntityFeature

* Adjust template default
2022-11-17 10:30:39 +01:00
epenet a91abebea8
Use IntFlag for EntityFeature (#81903) 2022-11-16 12:43:17 +01:00
epenet 64988521bb
Make use of generic EntityComponent (part 2) (#78494) 2022-09-17 18:18:53 +02:00
epenet 754fe86dd9
Add fan to strict typing (#73820)
* Add fan to strict typing

* Adjust state_attributes

* Adjust capability_attributes

* Adjust is_on

* Adjust vallox component

* Revert "Adjust is_on"

This reverts commit 48d207f250.

* Fix is_on property
2022-06-22 14:15:44 +02:00
Franck Nijhof 853923c30a
Add EntityFeature enum to Fan (#69091) 2022-04-01 20:53:38 +02:00
Marc Mueller 911b159281
Cleanup after pylint update (#68657) 2022-03-26 00:34:12 +01:00
J. Nick Koston 723dcbafca
Complete fan speed transition from #59781 (#67743) 2022-03-09 10:38:12 +01:00
J. Nick Koston 7fbe1dbc99
Remove legacy fan compatibility shim (#59781) 2021-12-03 21:57:46 -08:00
Michael 771922b871
Add support for property attribute shorthand in Fan entity (#59649) 2021-11-16 01:25:22 +01:00
Marc Mueller 2a8eaf0e0f
Use assignment expressions 06 (#57786) 2021-10-17 20:05:11 +02:00
Ville Skyttä 939fde0a50
ConfigType and async_setup/setup type hint improvements (#54739) 2021-08-18 13:22:05 +02:00
Franck Nijhof 0b44265232
Add description classes to entity components (#53521)
* Add description classes to entity components

* An -> A

* Add StateVacuumEntityDescription
2021-07-27 00:22:21 +02:00
Erik Montnemery 6c8de16fbc
Enable basic type checking for fan (#52471) 2021-07-06 18:21:00 +02:00
Franck Nijhof 7947946793
Type entry setup/unload for entity components (#51912) 2021-06-17 10:10:26 +02:00
J. Nick Koston 564688af25
Fix template fan default speed count (#48389)
* Fix template fan default speed count

The default speed count was defaulting to 3 when percentage
was implemented instead of the documented value of 100

* Increase coverage

* remove unreachable code
2021-03-29 09:33:56 +02:00
Franck Nijhof 0d595a2845
Merge of nested IF-IF cases - E-G (#48367) 2021-03-27 12:39:37 +01:00
Erik Montnemery 346a724ac3
Mark base components' state_attribute @final, rename others to extra_state_attributes (#48161)
* Mark base state_attributes @final, rename others to extra_state_attributes

* Fix calendar, update tests
2021-03-21 10:38:24 +01:00
J. Nick Koston c820dd4cb5
Have pylint warn when user visible log messages do not start with capital letter or end with a period (#48064)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-03-19 09:26:36 -05:00
Marc Mueller 91df3fa904
Update typing 06 (#48039) 2021-03-17 23:49:01 +01:00
J. Nick Koston 62d8e47c51
Map silent as a preset mode for fan backcompat (#47396)
The original change did not map silent as a preset mode
because it was not clear if it was a speed or a preset.
2021-03-04 13:02:50 -08:00
Ville Skyttä dc880118a4
Lint suppression cleanups (#47248)
* Unused pylint suppression cleanups

* Remove outdated pylint bug references

* Add flake8-noqa config and note to run it every now and then

* Add codes to noqa's

* Unused noqa cleanups
2021-03-02 09:02:04 +01:00
J. Nick Koston 3e334a4950
Fix typing of fan speed count and steps (#46790) 2021-02-19 19:57:21 -10:00
J. Nick Koston f2b303d509
Implement percentage step sizes for fans (#46512)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-18 21:05:09 -10:00
J. Nick Koston a74ae3585a
Fix backwards compatiblity with fan update to new model (#45951)
* Fix backwards compatiblity with fans update to new model

There were some non-speeds and devices that report a none
speed. These problems were discovered when updating zha
tasmota and vesync to the new model in #45407

* Update coverage

* fix check
2021-02-06 12:48:18 +01:00
J. Nick Koston 068d1b5eb8
Separate fan speeds into percentages and presets modes (#45407)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: John Carr <john.carr@unrouted.co.uk>
2021-01-27 17:44:36 -06:00
Erik Montnemery d61998e184
Raise in base implementation of FanEntity.oscillate (#43354) 2020-11-19 12:05:52 +01:00
J. Nick Koston 1bf6166817
Update fan to use async_add_executor_job (#41457) 2020-10-08 09:21:29 +02:00
kbickar 2ec546db3d
Fix for exception when checking if fan without speed is on (#39096)
* Fix for exception when checking if fan without speed is on

* Organized imports

* Space
2020-08-21 08:20:28 -06:00
Eugene Prystupa 0fbdb47dcf
Fix incorrect comparison of speed "off" by identity instead of by value (#37738) 2020-07-10 19:45:12 -05:00
Xiaonan Shen 2581b031d9
Fix fan not checking supported_features (#35248)
* Fix fan not checking supported_features

* Fix pylint

* Fix test

* Code cleanup

* Fix fan demo

* Code style improvement
2020-05-06 09:58:07 +02:00
Franck Nijhof 7653dc947a
Enable pylint unnecessary-pass (#33650)
* Enable pylint unnecessary-pass

* Process review suggestions

* Fix smhi tests
2020-04-05 10:33:07 +02:00
Christian Clauss df7d2b3aeb
Fix typos found by codespell (#31243)
* Fix typos found by codespell

* Fix typos found by codespell

* codespell: Furture  ==> Future

* Update test_config_flow.py

* Update __init__.py

* Spellcheck: successfull  ==> successful

* Codespell: unsuccesful  ==> unsuccessful

* Codespell: cant  ==> can't

* Codespell: firware ==> firmware

* Codespell: mimick  ==> mimic
2020-01-31 08:33:00 -08:00
Paulus Schoutsen e9e44dbd97
Fix callback and async (#31281)
* Fix callback and async

* Fix a return

* Fix test

* Fix mqtt tests

* Fix some more callbacks
2020-01-29 13:59:45 -08:00
Paulus Schoutsen ed6aef2fd7
Implement capability attributes (#30545)
* Implement capability attributes

* Fix HeOS update order

* Fix test
2020-01-08 21:22:56 +01:00
Paulus Schoutsen 9aa02e35a7
Entity Component to no longer generate automatic groups (#23789) 2020-01-07 17:30:53 +01:00
Jc2k 8257ea30c0 Set required_features field when registering fan services (#30516)
* Set required_features on fan services

* Fix mqtt fan test

* Update fan.py
2020-01-06 17:10:51 +01:00
Bas Nijholt a38f3ac9c6 use isort to sort imports according to PEP8 for fan (#29632) 2019-12-08 21:28:47 +05:30
Paulus Schoutsen 02d9ed5e36
Do not select all entities when omitting entity ID in service call (#29178)
* Do not select all entities when omitting entity ID

* Address comments Matthew

* Require either area_id or entity_id

* Fix tests

* Fix test
2019-12-02 16:23:12 -08:00
Ville Skyttä d88ca0f5cb Lint exclusions (#28655)
* Remove malformed pylint disable markers

* Remove some unused imports

* Remove some unneeded lint exclusions

* Remove more unneeded lint exclusions

* Add specific codes to all noqa's
2019-11-16 10:22:07 +01:00
Ville Skyttä 33e1b44b3a
Use PEP 526 type annotations, add some type hints (#26464)
* Add some more type hints to helpers.event

* Change most type comments to variable types

* Remove some superfluous type hints
2019-09-07 09:48:58 +03:00