Commit Graph

132 Commits (f85a8c504184b4787ec8d488814914ed42b0d794)

Author SHA1 Message Date
J. Nick Koston 9ce1ec414e
Reduce overhead to load multiple languages in translations (#111028)
* Reduce overhead to load multiple languages in translations

Instead of loading in a task, we now group everything
to be loaded into a single executor job

* fixes

* fixes

* fixes

* fixes

* fixes

* update tests

* add missing coverage (was existing)
2024-02-20 21:52:28 -05:00
Erik Montnemery 4229c35fcd
Improve color mode handling in MockLight (#109298) 2024-02-02 09:49:32 +01:00
Franck Nijhof 01372024f5
Add icon translations support (#103294)
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
2024-01-19 16:56:56 +01:00
vexofp 3c53693fe3
Prevent toggle from calling stop on covers which do not support it (#106848)
* Prevent toggle from calling stop on covers which do not support it

* Update homeassistant/components/cover/__init__.py

---------

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-01-09 12:32:27 +01:00
Erik Montnemery c805ea7b4f
Include deprecated constants in wildcard imports (#107114) 2024-01-05 11:46:45 +01:00
Michael eb01998395
Add support for placeholders in entity name translations (#104453)
* add placeholder support to entity name translation

* add negativ tests

* make property also available via description

* fix doc string in translation_placeholders()

* fix detection of placeholder

* validate placeholders for localized strings

* add test

* Cache translation_placeholders property

* Make translation_placeholders uncondotionally return dict

* Fall back to unsubstituted name in case of mismatch

* Only replace failing translations with English

* Update snapshots

* Blow up on non stable releases

* Fix test

* Update entity.py

---------

Co-authored-by: Erik <erik@montnemery.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-01-03 17:34:47 +01:00
Robert Resch fbcb31b103
Deprecate deprecated unit of measurement constants (#106455) 2023-12-27 09:04:25 +01:00
Robert Resch ea28b74fe9
Deprecate deprecated alarm control panel constants (#106058) 2023-12-20 18:41:17 +01:00
Robert Resch 491a50a2f1
Deprecate deprecated lock constants (#106113) 2023-12-20 18:07:17 +01:00
Robert Resch 9dd1b9e268
Deprecate deprecated device tracker constants (#106099) 2023-12-20 18:06:38 +01:00
Robert Resch 9830f77e9e
Deprecate deprecated cover constants (#106098) 2023-12-20 18:04:44 +01:00
Robert Resch db985925c4
Deprecate deprecated automation constants (#106067) 2023-12-19 19:22:13 +01:00
Robert Resch c226d793d4
Move common function for testing derepcation constants to util (#106063) 2023-12-19 17:31:31 +01:00
Robert Resch a4ccd6e13b
Deprecate binary sensor device class constants (#105736)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-12-19 12:45:32 +01: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
G Johansson 12e1acfcfc
Cleanup weather test (#103090)
* Cleanup weather test

* rename

* Clean off not used MockWeatherCompat

* conftest

* more cleanup

* Fin mod tests

* fix others
2023-11-03 05:53:38 +01:00
Erik Montnemery 0c40c8465e
Correct checks for deprecated forecast in weather (#101392)
Co-authored-by: Robert Resch <robert@resch.dev>
2023-10-05 19:56:47 +02:00
Erik Montnemery 7e39acda37
Minor improvement of frame helper (#101387)
* Minor improvement of frame helper

* Add new custom integration for testing

* Make IntegrationFrame kw_only
2023-10-04 21:43:00 +02:00
G Johansson 657ed0bcdb
Clean out compatibility for deprecated methods in Weather (#99263)
Clean out compatability in Weather
2023-08-29 11:33:56 +02:00
G Johansson 7a690d7359
Add deprecation to legacy forecast for Weather (#97294)
* Add deprecation to legacy forecast

* Mod _reported

* issue

* remove not need variable

* kitchen_sink

* 2024.3

* remove demo and mqtt

* add checks

* fix deprecation

* remove variable

* fix kitchen_sink

* Fix deprecation warning

* Expand issue

* clean

* Fix tests

* fix kitchen_sink

* not report on core integrations
2023-08-29 10:38:59 +02:00
Ville Skyttä 2399cd283a
Python 3.10 support cleanups (#98640) 2023-08-21 19:14:07 +02:00
Ville Skyttä 3094991236
Upgrade ruff to 0.0.285 (#98647) 2023-08-19 08:17:17 -04:00
G Johansson 4e30056830
Add new Forecasting to Weather (#75219)
* Add new Forecasting to Weather

* Add is_daytime for forecast_twice_daily

* Fix test

* Fix demo test

* Adjust tests

* Fix typing

* Add demo

* Mod demo more realistic

* Fix test

* Remove one weather

* Fix weather example

* kitchen_sink

* Reverse demo partially

* mod kitchen sink

* Fix twice_daily

* kitchen_sink

* Add test weathers

* Add twice daily to demo

* dt_util

* Fix names

* Expose forecast via WS instead of as state attributes

* Regularly update demo + kitchen_sink weather forecasts

* Run linters

* Fix rebase mistake

* Improve demo test coverage

* Improve weather test coverage

* Exclude kitchen_sink weather from test coverage

* Rename async_update_forecast to async_update_listeners

* Add async_has_listeners helper

* Revert "Add async_has_listeners helper"

This reverts commit 52af3664bb06d9feac2c5ff963ee0022077c23ba.

* Fix rebase mistake

---------

Co-authored-by: Erik <erik@montnemery.com>
2023-07-21 17:30:48 +02:00
G Johansson 58ce357870
Add uv_index to Weather Entity (#96951)
* Add uv_index to Weather Entity

* translation

* Update homeassistant/components/weather/__init__.py

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

---------

Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-07-21 14:07:10 +02:00
Franck Nijhof 747f4d4a73
Add event entity (#96797) 2023-07-21 12:16:35 +02:00
G Johansson 5d365ecb6b
Implement Wind Gust speed in Weather entity component (#95065)
* Weather wind gust speed

* strings

* No compat
2023-06-23 08:22:46 +02:00
Arjan 29ef925d73
Add humidity to weather forecast (#95064)
* allow humidty in forecast

* Add tests

* float

---------

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-06-23 00:22:07 +02:00
G Johansson eafddaae83
Implement Cloud coverage in Weather entity component (#95068) 2023-06-22 23:10:36 +02:00
G Johansson b8de7df609
Implement dew point in weather entity component (#95072) 2023-06-22 21:34:23 +02:00
G Johansson 6ad3b60adf
Implement Apparent temperature in Weather entity component (#95070) 2023-06-22 19:52:14 +02:00
Raman Gupta 24290e5d08
Add `datetime` platform (#81943)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-05-29 23:24:15 +02:00
G Johansson 0bda869553
Lock entity options (#88139) 2023-05-08 22:06:11 +02:00
Raman Gupta c0d0c89293
Add `time` platform (#81949) 2023-04-30 22:33:51 +02:00
Raman Gupta d138bbe26e
Add `date` platform (#81948) 2023-04-30 20:34:57 +02:00
Erik Montnemery 376a6eb82a
Convert device_sun_light_trigger test fixture to async (#89578) 2023-03-12 14:48:46 +01:00
Erik Montnemery bcc1aa03b4
Move sensor rounding to frontend (#87330)
* Move sensor rounding to frontend

* Update integrations

* Add comment
2023-02-04 14:54:36 -05:00
Franck Nijhof ca1a12898c
Enable Ruff D212 (#87347) 2023-02-03 23:08:48 +01:00
Franck Nijhof 89c0b27b42
Migrates tests to use UnitOfPressure enum (#86785) 2023-01-27 12:13:27 +01:00
Erik Montnemery 086a6460ef
Allow customizing sensor state precision (#86074)
* Allow customizing sensor precision

* Don't convert integer strings to floats

* Tweak converting sensor state to number

* Drop default rounding to 2 decimals

* Adjust test

* Tweak rounding, improve test coverage

* Don't convert to a number if not necessary

* Raise if native_precision is set and state is not numeric

* Address review comments

* Address comments, simplify

* Don't call  property twice

* Make exception more helpful
2023-01-25 08:55:46 +01:00
epenet 4c8e3aa7c4
Remove lumen from Illuminance units (#84386) 2022-12-27 14:25:47 +01:00
Franck Nijhof 2e92fefc0a
Fix uom/device class mismatches in tests (#84372) 2022-12-21 22:47:59 +01:00
Franck Nijhof ce00f093d6
Add enum device_class and state options property to sensor entities (#82489) 2022-12-02 09:11:15 +01:00
Raman Gupta 258b9fe663
Support restoring TextEntity native_value (#82770) 2022-11-29 10:09:41 +01:00
Aarni Koskela e4c73259f7
Configure autoflake for pre-commit (#82414) 2022-11-22 08:10:36 +01:00
Erik Montnemery 6979cd95b0
Add suggested_unit_of_measurement attribute to sensors (#80638)
* Add suggested_unit_of_measurement attribute to sensors

* Lazy calculation of initial entity options

* Add type alias for entity options

* Small tweak

* Add tests

* Store suggested_unit_of_measurement in its own option key

* Adapt to renaming of IMPERIAL_SYSTEM

* Fix rebase mistakes

* 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>
2022-10-24 16:08:02 +02:00
Erik Montnemery 7b247a79cf
Correct min/max mireds for lights which use K for color temp (#79998) 2022-10-10 16:45:38 +03:00
Erik Montnemery 2ee6ea9877
Adapt group to color temperature in K (#79719)
* Adapt group to color temperature in K

* Adjust tests

* Adjust tests
2022-10-10 14:57:22 +02:00
Ernst Klamer db4391adff
Add device class moisture (#77666) 2022-09-01 11:47:47 -04:00
Erik Montnemery 60c8d95a77
Remove white_value support from light (#76926) 2022-08-18 08:21:05 -04:00
G Johansson 90e1fb6ce2
Weather unit conversion (#73441)
Co-authored-by: Erik <erik@montnemery.com>
2022-06-23 10:48:30 +02:00