Erik Montnemery
b933a53aa3
Refactor entity registry JSON cache ( #85085 )
...
* Refactor entity registry JSON cache
* Fix generator
* Tweak
* Improve string building
* Improve test coverage
* Override EntityRegistryItems.values to avoid __iter__ overhead
2023-01-09 16:52:52 +01:00
Erik Montnemery
377396ba16
Add WS endpoint config/entity_registry/get_entries ( #85063 )
2023-01-05 09:39:10 -05:00
Erik Montnemery
11c174aca3
Revert "Add aliases to device registry items" ( #84976 )
2023-01-02 12:30:25 +01:00
Erik Montnemery
53637d486d
Improve error message when a script fails to validate ( #84438 )
2022-12-22 16:26:57 +01:00
Erik Montnemery
2c02abfdd4
Improve script config tests ( #84433 )
2022-12-22 12:16:23 +01:00
Erik Montnemery
7b26a952bd
Fix flaky automation test ( #84428 )
2022-12-22 10:26:37 +01:00
Erik Montnemery
a6217ca9b9
Improve error message when an automation fails to validate ( #83977 )
2022-12-21 23:20:50 +01:00
Erik Montnemery
1a42bd5c4c
Add aliases to area registry items ( #84294 )
...
* Add aliases to area registry items
* Update test
* Fix WS API
2022-12-21 08:44:44 +01:00
Erik Montnemery
057bb6ea0a
Add aliases to device registry items ( #84246 )
2022-12-20 23:43:31 +01:00
Erik Montnemery
1f3da9cf1a
Add aliases to entity registry items ( #84239 )
2022-12-20 12:10:46 +01:00
Erik Montnemery
3884e16b46
Add tests.common.ANY ( #84240 )
2022-12-20 08:20:42 +01:00
Erik Montnemery
8e617bbc1d
Add `translation_key` property to entites ( #82701 )
...
* Add translation_key attribute to entity state
* Update accuweather test
* Index entity translation keys by platform
* Store translation key in entity registry
2022-12-01 09:34:09 +01:00
Joakim Plate
c576a68d33
Upgrade pytest-aiohttp ( #82475 )
...
* Upgrade pytest-aiohttp
* Make sure executors, tasks and timers are closed
Some test will trigger warnings on garbage collect, these warnings
spills over into next test.
Some test trigger tasks that raise errors on shutdown, these spill
over into next test.
This is to mimic older pytest-aiohttp and it's behaviour on test
cleanup.
Discussions on similar changes for pytest-aiohttp are here:
https://github.com/pytest-dev/pytest-asyncio/pull/309
* Replace loop with event_loop
* Make sure time is frozen for tests
* Make sure the ConditionType is not async
/home-assistant/homeassistant/helpers/template.py:2082: RuntimeWarning: coroutine 'AsyncMockMixin._execute_mock_call' was never awaited
def wrapper(*args, **kwargs):
Enable tracemalloc to get traceback where the object was allocated.
See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info.
* Increase litejet press tests with a factor 10
The times are simulated anyway, and we can't stop the normal
event from occuring.
* Use async handlers for aiohttp
tests/components/motioneye/test_camera.py::test_get_still_image_from_camera
tests/components/motioneye/test_camera.py::test_get_still_image_from_camera
tests/components/motioneye/test_camera.py::test_get_stream_from_camera
tests/components/motioneye/test_camera.py::test_get_stream_from_camera
tests/components/motioneye/test_camera.py::test_camera_option_stream_url_template
tests/components/motioneye/test_camera.py::test_camera_option_stream_url_template
/Users/joakim/src/hass/home-assistant/venv/lib/python3.9/site-packages/aiohttp/web_urldispatcher.py:189: DeprecationWarning: Bare functions are deprecated, use async ones
warnings.warn(
* Switch to freezegun in modbus tests
The tests allowed clock to tick in between steps
* Make sure skybell object are fully mocked
Old tests would trigger attempts to post to could services:
```
DEBUG:aioskybell:HTTP post https://cloud.myskybell.com/api/v3/login/ Request with headers: {'content-type': 'application/json', 'accept': '*/*', 'x-skybell-app-id': 'd2b542c7-a7e4-4e1e-b77d-2b76911c7c46', 'x-skybell-client-id': '1f36a3c0-6dee-4997-a6db-4e1c67338e57'}
```
* Fix sorting that broke after rebase
2022-11-29 22:36:36 +01:00
Erik Montnemery
e1338adf1a
Allow configuring country and language in core config ( #81734 )
...
* Allow configuring country and language in core config
* Add script for updating list of countries
* Use black for formatting
* Fix quoting
* Move country codes to a separate file
* Address review comments
* Add generated/countries.py
* Get default language from owner account
* Remove unused variable
* Add script to generate list of supported languages
* Add tests
* Fix stale docsring
* Use format_python_namespace
* Correct async_user_store
* Improve typing
* Fix with_store decorator
* Initialize language in core store migration
* Fix startup
* Tweak
* Apply suggestions from code review
Co-authored-by: Franck Nijhof <git@frenck.dev>
* Update storage.py
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-11-24 23:25:50 +01:00
Aarni Koskela
e4c73259f7
Configure autoflake for pre-commit ( #82414 )
2022-11-22 08:10:36 +01:00
Erik Montnemery
de313dcc3f
Improve config tests ( #81898 )
...
* Improve config tests
* Fix stale docstring
* Use os.path.basename
2022-11-14 11:13:20 +01:00
epenet
b23a66d776
Add websocket type hints in entity_registry ( #80657 )
...
* Add websocket type hints in entity_registry
* Adjust websocket_list_entities
* Fix update
* Fix websocket_update_entity
* Apply suggestion
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Apply suggestion
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-20 12:20:39 +02:00
Franck Nijhof
c4bbc439a5
Integrations v2.1: Differentiating hubs, devices and services ( #80524 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-10-19 12:41:43 +02:00
Erik Montnemery
53263ea9bc
Revert "Add serial_number to device registry entries" ( #79139 )
2022-09-27 16:36:38 +02:00
Erik Montnemery
cba3b6ad94
Add serial_number to device registry entries ( #77713 )
2022-09-27 09:08:54 +02:00
Bram Kragten
7e9be812ca
Add unique id to entity reg list response ( #78945 )
...
* Add unique id to entity reg list response
* Update test_entity_registry.py
2022-09-27 08:25:56 +02:00
J. Nick Koston
016a59ac94
Add support for subscribing to config entry changes ( #77803 )
2022-09-04 22:57:43 -05:00
Erik Montnemery
8924725d69
Improve some device registry tests ( #77659 )
2022-09-02 08:54:02 +02:00
Erik Montnemery
d65eaf11f4
Include entity registry id in entity registry WS API ( #77668 )
2022-09-01 11:51:27 -04:00
Erik Montnemery
4655ed995e
Fix resetting of attributes in EntityRegistry.async_get_or_create ( #77516 )
...
* Fix resetting of attributes in EntityRegistry.async_get_or_create
* Fix typing
* Fix resetting config entry
* Improve test
* Update tests
2022-08-30 21:07:50 +02:00
Erik Montnemery
2e228b2608
Tweak handling of entities with `has_entity_name` set ( #74948 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-07-11 15:10:53 -07:00
Franck Nijhof
7cd68381f1
Search/replace RESULT_TYPE_* by FlowResultType enum ( #74642 )
2022-07-07 19:57:36 +03:00
J. Nick Koston
ce35324e73
Cache the response from config/entity_registry/list ( #74443 )
2022-07-05 21:11:51 -07:00
J. Nick Koston
3875fc5953
Cache the response from config/device_registry/list ( #74483 )
2022-07-05 21:08:39 -07:00
Erik Montnemery
26a85c6644
Add Entity.has_entity_name attribute ( #73217 )
2022-06-28 09:38:05 -07:00
J. Nick Koston
adf0f62963
Add websocket api to fetch config entries ( #73570 )
...
* Add websocket api to fetch config entries
* add coverage for failure case
2022-06-21 20:09:22 +02:00
Franck Nijhof
bfb47eb212
Final clean up of helpers accessed via hass ( #72032 )
...
* Final clean up of helpers accessed via hass
* Fix circular dep
* Fix import
2022-05-17 23:42:37 +03:00
Erik Montnemery
546ba8169d
Remove entity registry entries when script is removed ( #71193 )
2022-05-02 13:15:19 +02:00
Erik Montnemery
91f6e58e9a
Allow customizing unit for temperature and pressure sensors ( #64366 )
...
* Allow customizing unit for temperature and pressure sensors
* pylint
* Adjust google_wifi tests
* Address review comments and add tests
* Improve rounding when scaling
* Tweak rounding
* Further tweak rounding
* Allow setting entity options with config/entity_registry/update
* Address review comments
* Tweak tests
* Load custom unit when sensor is added
* Override async_internal_added_to_hass
* Adjust tests after rebase
* Apply suggestions from code review
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
* Address review comments
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-03-30 15:43:04 +02:00
Paulus Schoutsen
3213091b8d
Add integration type ( #68349 )
2022-03-20 20:38:13 -07:00
Erik Montnemery
cf4033b1bc
Simplify time zone setting in tests ( #68330 )
...
* Simplify timezone setting in tests
* Fix typo
* Adjust caldav tests
* Adjust input_datetime tests
* Adjust time_date tests
* Adjust tod tests
* Adjust helper tests
* Adjust recorder tests
* Adjust risco tests
* Adjust aemet tests
* Adjust flux tests
* Adjust forecast_solar tests
* Revert unnecessary change in forecast_solar test
* Adjust climacell tests
* Adjust google tests
* Adjust sensor tests
* Adjust sonarr tests
* Adjust template tests
* Adjust zodiac tests
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-03-20 10:25:15 +01:00
Franck Nijhof
2686be921c
Remove deprecated (old) Z-Wave integration ( #67221 )
...
* Remove deprecated (old) Z-Wave integration
* Mark migration tests as skip, for later cleanup
2022-03-18 13:09:10 +01:00
Erik Montnemery
f134219c74
Minor tweak of config entity_registry test ( #68141 )
2022-03-14 23:07:52 +01:00
Erik Montnemery
314175135f
Hide switch_as_x tracked entity ( #67949 )
...
* Hide switch_as_x tracked entity
* Hide wrapped switch during config flow
* Allow setting/getting entity disabled by via WS
* Adjust tests
* Improve test coverage
* Improve tests
2022-03-14 19:39:07 +01:00
Franck Nijhof
5965b015dd
Adjust data entry flow to have an option data_schema ( #67637 )
2022-03-04 16:42:02 +01:00
J. Nick Koston
9a5eec561a
Only set require_restart on config entry reload if its not recoverable ( #66994 )
2022-02-21 10:27:23 -08:00
Erik Montnemery
c496748125
Add WS API for removing a config entry from a device ( #66188 )
...
* Add WS API for removing a config entry from a device
* Address review comments
* Address review comments
* Remove entity cleanup from ConfigEntries
* Update + add tests
* Improve comments in test
* Add negative test
* Refactor according to review comments
* Add back async_remove_config_entry_device
* Remove unnecessary error handling
* Simplify error handling
2022-02-21 10:11:18 +01:00
Joakim Sørensen
38f7213002
Add more tests to device registry updates ( #65989 )
2022-02-07 11:15:04 +01:00
Erik Montnemery
0eb2caabcf
Report unmet dependencies for failing config flows ( #65061 )
...
* Report unmet dependencies for failing config flows
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/setup.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Modify error message
* Add test
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-02 15:06:27 +01:00
Bram Kragten
c82aa1606a
Allow removing keys from automation ( #65374 )
2022-02-01 09:45:08 -08:00
Erik Montnemery
55ff1e9c1d
Revert "Allow setting entity options with config/entity_registry/update" ( #64693 )
2022-01-23 21:07:12 -08:00
Paulus Schoutsen
63f8e437ed
Add Home Assistant Content user ( #64337 )
2022-01-21 10:06:39 -08:00
Erik Montnemery
3575009330
Store remote domain in Cloud preferences ( #64532 )
2022-01-21 09:42:34 -08:00
Erik Montnemery
c60bb1890d
Remove unused group config view ( #63434 )
2022-01-05 12:16:11 +01:00
J. Nick Koston
04153c0075
Add hardware version to the device registry ( #61650 )
2021-12-16 05:16:19 -06:00
Ville Skyttä
5bf67cac66
Use RegistryEntryDisabler ( #60436 )
2021-12-15 23:25:40 +02:00
Ville Skyttä
7db3246de4
Make config entry disabled_by an enum ( #60445 )
...
* Make config entry disabled_by an enum
* Update homeassistant/config_entries.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-15 20:53:21 +01:00
Marcel van der Veldt
7c7df5bb51
Change check for existence of options flow ( #61147 )
...
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-12-07 12:50:34 -08:00
Bram Kragten
ef458b237c
Return if user is local only ( #60917 )
2021-12-03 16:34:26 +01:00
Ville Skyttä
9f4de8df18
Make device entry disabled by an enum ( #60239 )
2021-11-24 22:32:16 +01:00
J. Nick Koston
af51aeb6dc
Show how user input is malformed in the UI on error ( #60057 )
2021-11-23 22:50:54 +01:00
Ville Skyttä
39691faccc
Use DeviceEntryType in non-typechecked code too ( #58646 )
2021-11-23 10:04:33 +01:00
Erik Montnemery
49a27e12ad
Add support to entity registry for overriding device_class ( #59985 )
2021-11-22 08:38:06 -08:00
Franck Nijhof
8b30cb509f
Cleanup customize API endpoint ( #59824 )
2021-11-22 12:01:56 +01:00
Erik Montnemery
0df2904b89
Improve some entity registry tests ( #59902 )
2021-11-22 10:24:37 +01:00
J. Nick Koston
ebb25ab0e6
Make yaml file writes safer ( #59384 )
2021-11-10 22:19:56 -08:00
Paulus Schoutsen
f51e1fcb67
Check for uncaught service not found exceptions ( #58010 )
2021-11-01 14:33:09 +01:00
Paulus Schoutsen
6cd83d1f66
Allow storing picture in area registry ( #58539 )
2021-10-27 10:11:05 -07:00
Ville Skyttä
73d192b3f3
Use HTTPStatus instead of HTTP_ consts and magic values in comp.../[bc]* ( #57989 )
2021-10-22 19:43:40 +02:00
Erik Montnemery
e27e4c3561
Add support for device configuration URL ( #57539 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-10-14 11:16:56 -07:00
Erik Montnemery
4b3d423767
Add config and diagnostic entities ( #57528 )
...
* Add config entity concept
* Rename is_config_entity to entity_category
* Add test
* Add 'diagnostic' entity category
2021-10-14 10:04:26 +02:00
Ville Skyttä
d8d34fdd3b
Prefer HTTPStatus over int in HA view JSON functions ( #56504 )
...
* Prefer HTTPStatus over int in HA view JSON functions
* Update zwave tests to not expect a fixed typo
2021-09-22 21:59:52 +03:00
Franck Nijhof
1968b95829
Add currency core configuration ( #53541 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-07-28 08:55:58 +02:00
Joakim Sørensen
85c1614204
Add currency to location data ( #53575 )
2021-07-27 21:05:16 -07:00
Ville Skyttä
470f2dd73f
Upgrade pyupgrade to 2.21.2, apply its changes ( #52987 )
2021-07-19 10:46:09 +02:00
Paulus Schoutsen
ee2c950716
Merge system options into pref properties ( #51347 )
...
* Make system options future proof
* Update tests
* Add types
2021-06-01 22:34:31 +02:00
Paulus Schoutsen
4821484d2c
Add system option to disable polling ( #51299 )
2021-05-31 15:36:40 -07:00
Joakim Sørensen
7ff14b47a8
Use whoami for location lookup ( #50934 )
2021-05-22 20:34:48 -07:00
Ville Skyttä
19d25cd901
Change config entry state to an enum ( #49654 )
...
* Change config entry state to an enum
* Allow but deprecate EntryState str equality comparison
* Test fixes
* Rename to ConfigEntryState
* Remove str comparability backcompat
* Update new occurrences of strs cropped up during review
2021-05-20 19:19:20 +02:00
Joakim Sørensen
2f10f59717
Block custom integrations with missing or invalid version ( #49916 )
2021-05-17 15:48:41 +02:00
J. Nick Koston
bf2d40adfe
Migrate from pytz to python-dateutil ( #49643 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-05-07 22:46:26 -07:00
Franck Nijhof
177317a345
Allow passing options in config flow entry creation ( #49912 )
2021-05-05 22:14:01 -07:00
Bram Kragten
301d4b0657
Fix saving a scene ( #49980 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-05-02 22:11:57 -07:00
Franck Nijhof
c68b259bd3
Cleanup of unused connection_class logic ( #49865 )
...
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-04-29 23:12:58 +02:00
Ville Skyttä
153d6e891e
Use config_entries.SOURCE_* constants ( #49631 )
2021-04-25 11:27:40 +02:00
Erik Montnemery
8013eb0e08
Allow data entry flows to hint for additional steps ( #49202 )
2021-04-23 11:02:12 -07:00
Ville Skyttä
a396619251
Use disabled_by constants ( #49584 )
...
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-04-23 09:56:42 +02:00
Paulus Schoutsen
265fdea83b
Allow config entries to store a reason ( #49581 )
2021-04-23 09:23:43 +02:00
Erik Montnemery
d26d2a8446
Return config entry details for 1-step config flows ( #48585 )
2021-04-01 16:20:53 +02:00
Erik Montnemery
374dcde487
Return config entry details after creation ( #48316 )
2021-03-26 18:31:29 +01:00
J. Nick Koston
3f2ca16ad7
Index config entries by id ( #48199 )
2021-03-21 21:44:29 -07:00
Erik Montnemery
a9a9e1f199
Tweak automation tracing ( #47721 )
2021-03-10 14:42:13 -08:00
Erik Montnemery
704000c049
Add support for breakpoints in scripts ( #47632 )
2021-03-09 21:23:11 -08:00
Erik Montnemery
87e7cebd36
Update tests c-h to use registry async_get ( #47652 )
2021-03-09 14:31:17 +01:00
Erik Montnemery
a243adc551
Add WS command to get a summary of automation traces ( #47557 )
...
* Add WS command to get a summary of automation traces
* Update tests
* Correct rebase mistake, update tests
2021-03-08 20:30:52 +01:00
Erik Montnemery
8fe51b8ea7
Store automation traces indexed by run_id ( #47509 )
...
* Store traces indexed by run_id
* Format
* Add test
* Add test
* Clarify comment
2021-03-08 18:04:41 +01:00
Erik Montnemery
17401cbc29
Initial automation tracing ( #46755 )
...
* Initial prototype of automation tracing
* Small fixes
* Lint
* Move trace helpers to its own file
* Improve trace for state and numeric_state conditions
* Tweaks + apply suggestions from code review
* Index traces by automation_id, trace while script is running
* Refactor condition tracing
* Improve WS API to get traces for single automation
* Add tests
* Fix imports
* Fix imports
* Address review comments
* Cap logging of loops
* Remove unused ContextVar action_config
2021-03-04 14:16:24 +01: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
Erik Montnemery
5e26bda52d
Add support for disabling config entries ( #46779 )
2021-02-20 19:21:39 -08:00
J. Nick Koston
bb7e4d7daa
Implement suggested_area in the device registry ( #45940 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-02-19 19:34:33 -10:00
Joakim Plate
38d2cacf7a
Support blocking trusted network from new ip ( #44630 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-28 12:06:20 +01:00
Paulus Schoutsen
e83ced6737
Add name to ignored entries ( #45051 )
...
* Add name to ignored entries
* Fix test
2021-01-12 09:26:20 +01:00
Franck Nijhof
65cf2fcb6f
Drop asynctest ( #44746 )
2021-01-01 22:31:56 +01:00
Erik Montnemery
30baf333c3
Improve handling of disabled devices ( #43864 )
2020-12-02 21:20:14 +01:00
Philip Allgaier
6fadc3e140
Make "invalid password" error message clearer ( #43853 )
2020-12-02 14:24:47 +01:00