J. Nick Koston
dd1cf2c593
Remove unneeded list copy in icon helper ( #110680 )
2024-02-15 16:33:24 -06:00
deosrc
e38cb01d81
Add missing log message for error resolving OAuth token ( #107606 )
2024-02-11 13:07:54 +00:00
chammp
a5cc0ae890
Improve package schema validation ( #108125 )
...
* Add failing tests for package config validation error wrapping
* Wrap package schema validation errors in HomeAssistantError
* Fix yamllint errors
* Rework package merge validation
Ignore invalid package definitions instead of failing startup.
Output error messages with locations if possible when a package
definition has errors.
* Ruff format
* Fix linter errors
* Move package_definition_schema to module scope
* Move inner function to module level
* Merge exception handlers
Merge exception handlers for config schema validation and package merge
to avoid untested code branches
* Fix long lines and doc strings
* More minor changes to exception handler
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-02-10 20:16:20 +01:00
Piotr Machowski
a2f4e99994
Add state_translated function to jinja templates ( #96906 )
...
* Add state_translated jinja function
* Add tests for load_state_translations_to_cache and get_cached_translations
* Cleanup state_translated template
* Add tests for state_translated jinja function
* Apply black formatting
* Improve code quality
* Apply suggestions from code review
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Apply suggestions from code review
* Prevent invalid components from loading translations
* Refactor loading translations to cache
* Adjust code issues
* Update homeassistant/helpers/translation.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Refactor listeners that trigger translation loading
* Apply suggestions from code review
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Apply suggestions from code review
* Adjust invalid function calls, fix code styling
* Adjust code quality
* Extract async_translate_state function
* Apply suggestions from code review
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Apply suggestions from code review
* Fix tests
* Fix tests
---------
Co-authored-by: Piotr Machowski <PiotrMachowski@users.noreply.github.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-02-10 10:47:56 +01:00
J. Nick Koston
9689cb448d
Avoid linear search of entity registry in async_extract_referenced_entity_ids ( #109667 )
...
* Index area_ids in the entity registry
I missed that these are used in _resolve_area in search.
Eventually we can make async_extract_referenced_entity_ids
a bit faster with this as well
* Avoid linear search of entity registry in async_extract_referenced_entity_ids
needs https://github.com/home-assistant/core/pull/109660
2024-02-09 09:42:30 -05:00
Michael
d049928be7
Log error and continue on parsing issues of translated strings ( #110046 )
2024-02-09 08:35:12 +01:00
Michael Hansen
2681dae60c
Matching duplicate named entities is now an error in Assist ( #110050 )
...
* Matching duplicate named entities is now an error
* Update snapshot
* Only use area id
2024-02-08 19:38:03 -06:00
Michael Hansen
1750f54da4
Assist fixes ( #109889 )
...
* Don't pass entity ids in hassil slot lists
* Use first completed response
* Add more tests
2024-02-07 15:13:42 -06:00
Joost Lekkerkerker
59e9010b65
Show domain in oauth2 error log ( #109708 )
...
* Show token url in oauth2 error log
* Fix tests
* Use domain
2024-02-06 23:03:35 +01:00
J. Nick Koston
09c609459d
Fix entity services targeting entities outside the platform when using areas/devices ( #109810 )
2024-02-06 12:41:57 -06:00
J. Nick Koston
440212ddce
Reduce dict lookups in entity registry indices ( #109712 )
2024-02-05 17:23:53 -05:00
J. Nick Koston
f73431ac06
Switch utc_to_timestamp to .timestamp() where possible ( #109729 )
...
* Switch utc_to_timestamp to .timestamp()
.timestamp() is faster now in newer cpython
```
from homeassistant.util.dt import utc_to_timestamp, utcnow
import timeit
now = utcnow()
print(timeit.timeit('utc_to_timestamp(now)',globals={"now":now,"utc_to_timestamp":utc_to_timestamp}))
print(timeit.timeit('now.timestamp()',globals={"now":now}))
```
utc_to_timestamp = 0.18721245788037777
timestamp = 0.11421508435159922
* compat
* revert
* revert
* revert
* revert
* revert
2024-02-05 23:04:52 +01:00
J. Nick Koston
908cedf981
Avoid linear search of entity registry in async_clear_config_entry ( #109724 )
2024-02-05 14:12:16 -06:00
J. Nick Koston
e9a41e5023
Avoid linear search in entity registry to clear an area ( #109735 )
2024-02-05 13:53:33 -06:00
J. Nick Koston
6f28d79651
Copy callbacks instead of slice for event dispatch ( #109711 )
...
We established copy is faster in
https://github.com/home-assistant/core/pull/108428#discussion_r1466932262
2024-02-05 17:07:21 +01:00
J. Nick Koston
40166ed51e
Avoid linear search of device registry when no areas are referenced in service calls ( #109669 )
2024-02-05 12:26:08 +01:00
Marc Mueller
cd0ee98dba
Use builtin TimeoutError [core + helpers] ( #109684 )
2024-02-05 12:09:54 +01:00
J. Nick Koston
458e1f3a5e
Index area_ids in the entity registry ( #109660 )
2024-02-05 09:01:43 +01:00
J. Nick Koston
9fef1938b4
Make get_entries_for_device_id skip disabled devices by default ( #109645 )
2024-02-04 23:11:56 +01:00
J. Nick Koston
b24b4fc237
Use get_entries_for_config_entry_id helper in async_migrate_entries ( #109629 )
2024-02-04 21:05:48 +01:00
J. Nick Koston
2f724b042b
Avoid looking up services to check if they support responses ( #109588 )
...
We already have the Service object as its the value in the
services_map so there is not need to look it up again
2024-02-04 15:15:51 +01:00
J. Nick Koston
a74516a80d
Cache path for Store helper ( #109587 )
2024-02-04 15:13:58 +01:00
Michael Hansen
c6ea57458c
Pass slots to error messages instead of IDs [rework] ( #109410 )
...
Co-authored-by: tetele <tm.sandu@gmail.com>
2024-02-03 12:14:33 +01:00
Erik Montnemery
09ba46ddb9
Mask sensitive data in google_assistant logs ( #109366 )
...
* Mask sensitive data in google_assistant logs
* Move common code to homeassistant/util/redact.py
* Move to helpers
* Add tests
* Tweak
* Redact additional logs
* Fix stale docstring
* Don't reveal the length of masked data
* Update test
2024-02-02 22:10:30 +01:00
J. Nick Koston
582d6968b2
Avoid de/recode of bytes to string to bytes when writing json files ( #109348 )
2024-02-02 09:02:26 +01:00
J. Nick Koston
1c84997c5c
Reduce lock contention when all icons are already cached ( #109352 )
2024-02-02 08:58:55 +01:00
J. Nick Koston
ed726db974
Fix race in loading service descriptions ( #109316 )
2024-02-01 12:34:23 -06:00
Marc Mueller
d2dee9e327
Update ruff to 0.1.15 ( #109303 )
2024-02-01 13:29:01 +01:00
Erik Montnemery
3ce4e53b32
Sort script actions ( #108247 )
2024-01-31 20:41:53 +01:00
Bram Kragten
d361d47516
Add qr code selector ( #109214 )
2024-01-31 19:27:03 +01:00
Robert Resch
6fdad44941
Improve invalid error messages in the config flows ( #108075 )
2024-01-30 12:24:19 +01:00
Martijn van der Pol
b386960661
Add default parameter to as_datetime template function/filter ( #107229 )
...
* improve as_datetime
* Improve `as_datetime` Jinja filter/function
* review
* resolve more review items
* change test for datetime input
* Update docstring
* update docstrings for tests
* remove whitespace
* only_default
* Update do string and comment
* improve comment
* Adjust comment
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2024-01-29 18:05:44 +01:00
Erik Montnemery
8abb4e5f52
Improve display of errors with no message in script trace ( #108735 )
2024-01-28 19:27:14 +01:00
karwosts
a2d707442a
Fix error when passing a whole number to location selector ( #108952 )
...
* Fix error when passing an integer to location selector
* fix tests
* more fix tests
* don't mutate original dict
* remove string testcase
2024-01-28 14:13:00 +01:00
J. Nick Koston
f96f4d31f7
Convert referenced registry functions to use cached_property ( #108895 )
...
* Convert referenced registry functions to use cached_property
These already implemented caching, but now that we can use cached_property
because the lock problem is solved, we can make the code simplier and faster
* missed one
* make them the same
2024-01-26 23:02:42 -05:00
J. Nick Koston
617e8dd8a5
Small cleanup to entity platform translation fetching ( #108890 )
...
* Small cleanup to entity platform translation fetching
While I could not realize the performance improvemnet I had
hoped in #108800 , I pulled this out since its a nice cleanup to avoid
constructing the inner function over and over.
* stale docstring
2024-01-26 00:14:44 -05:00
Jan-Philipp Benecke
ddf02959f4
Bump area registry storage minor version to 4 ( #108798 )
2024-01-24 20:31:43 +01:00
J. Nick Koston
f883f721c8
Avoid copying translations for single components ( #108645 )
2024-01-24 19:52:34 +01:00
Erik Montnemery
909e58066d
Fix changed_variables in automation and script traces ( #108788 )
2024-01-24 19:12:45 +01:00
Erik Montnemery
9c727e5ea8
Add icon to areas ( #108650 )
2024-01-24 19:11:03 +01:00
Daniel
a67113a95a
Parse template result in async_render_with_possible_json_value ( #99670 )
...
* Optionally parse templates rendered with possible json
* Remove duplicate strip
* Add tests for parsing template result
2024-01-24 12:12:28 +01:00
Erik Montnemery
9bff039d17
Add set_conversation_response script action ( #108233 )
...
* Add set_conversation_response script action
* Update homeassistant/components/conversation/trigger.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Revert accidental change
* Add test
* Ignore mypy
* Remove incorrect callback decorator
* Update homeassistant/helpers/script.py
* Add test with templated set_conversation_response
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2024-01-23 09:13:42 -05:00
G Johansson
65581e94ea
Add config flow for Time & Date ( #104183 )
...
Co-authored-by: Erik <erik@montnemery.com>
2024-01-23 12:18:31 +01:00
Erik Montnemery
329eca4918
Store area registry entries in a UserDict ( #108656 )
...
* Store area registry entries in a UserDict
* Address review comments
2024-01-23 08:14:28 +01:00
J. Nick Koston
7c86ab14c3
Refactor service enumeration methods to better match existing use cases ( #108671 )
2024-01-22 14:21:17 -10:00
Erik Montnemery
ef5d46c79c
Convert AreaEntry to dataclass ( #108648 )
...
* Convert AreaEntry to dataclass
* Correct typing of AreaEntry.id
* Move responsibility for generating area id to AreaRegistry
2024-01-22 14:45:27 +01:00
J. Nick Koston
4a34cd25b2
Reduce lock contention when all translations are already cached ( #108634 )
2024-01-21 22:29:03 -10:00
J. Nick Koston
e9a7870080
Small cleanups to async_get_all_descriptions ( #108633 )
2024-01-21 18:09:33 -10:00
J. Nick Koston
573de95f21
Speed up run time of admin services by using HassJob ( #108623 )
2024-01-21 22:41:41 -05: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