Erik Montnemery
91faa53843
Don't allow hass.config.config_dir to be None ( #98442 )
2023-08-16 13:00:14 +02:00
Marc Mueller
a9ade1f84d
Use asyncio.timeout [core] ( #98447 )
2023-08-15 08:36:05 -05:00
Robert Resch
b0f68f1ef3
Use @require_admin decorator ( #98061 )
...
Co-authored-by: Robert Resch <robert@resch.dev>
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2023-08-14 15:07:20 +02:00
Erik Montnemery
97f3199d6d
Do not add entities with invalid device info ( #98150 )
2023-08-11 13:14:47 +02:00
Erik Montnemery
2e1a5ddf2b
Don't allow creating device if config entry does not exist ( #98157 )
...
* Don't allow creating device if config entry does not exist
* Fix test
* Update test
2023-08-10 22:09:13 -04:00
Erik Montnemery
045c327928
Move DeviceInfo from entity to device registry ( #98149 )
...
* Move DeviceInfo from entity to device registry
* Update integrations
2023-08-10 22:04:26 -04:00
Franck Nijhof
296c27859e
Fix issue registry sending unneeded update events ( #98230 )
2023-08-10 21:57:42 -04:00
G Johansson
aacb8aecfc
Refactor Rest Sensor with ManualTriggerEntity ( #97396 )
...
* ManualTriggerEntity for rest sensor
* add availability test
* review comments
* last fixes
2023-08-10 21:46:56 +02:00
Franck Nijhof
868a5f377f
Ruff: isort don't split imports based on trailing comma ( #98162 )
2023-08-10 14:27:03 +02:00
G Johansson
4531dbbe62
Refactor Rest Binary sensor with ManualTriggerEntity ( #97400 )
...
* Refactor Rest Binary sensor w/ ManualTriggerEntity
* test availability
* review comments
* Use super
* Fix config
2023-08-10 12:59:23 +02:00
Erik Montnemery
e1f0b44ba4
Use math.isfinite instead of explicitly checking for both nan and inf ( #98103 )
2023-08-09 14:13:57 +02:00
Erik Montnemery
683c2f8d22
Add service for getting a weather forecast ( #97078 )
...
* Add service for getting a weather forecast
* Fix translations
* Improve service description
* Improve error handling
* Adjust typing
* Adjust typing
* Adjust service response format
2023-08-07 14:05:37 +02:00
Paul Bottein
83af2f5b8b
Allow to sort options in select selector ( #97680 )
...
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-08-03 21:49:22 +02:00
Franck Nijhof
af5fc7e759
Ensure load the device registry if it contains invalid configuration URLs ( #97589 )
2023-08-01 23:15:31 +02:00
J. Nick Koston
094f2cbad7
Fix saving subclassed datetime objects in storage ( #97502 )
2023-07-31 18:49:02 +02:00
Marc Mueller
4d9b73033d
Update python-typing-update to 0.6.0 ( #97531 )
2023-07-31 17:59:40 +02:00
G Johansson
1f11ce63fc
Manual trigger entity fix name influence entity_id ( #97398 )
2023-07-30 18:47:34 +02:00
J. Nick Koston
13349e76ed
Avoid firing update coordinator callbacks when nothing has changed ( #97268 )
2023-07-28 12:19:20 -05:00
Franck Nijhof
737ac8c600
Fix DeviceInfo configuration_url validation ( #97319 )
2023-07-27 18:57:01 +02:00
Paulus Schoutsen
aad281db18
Add service to OpenAI to Generate an image ( #97018 )
...
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-07-26 10:14:18 +02:00
Franck Nijhof
b655b9d530
Allow for translating service examples ( #97141 )
2023-07-24 15:57:02 +02:00
Marc Mueller
995c29e052
Cleanup EventType typing ( #97136 )
2023-07-24 13:18:38 +02:00
Marc Mueller
582499a260
Improve `async_track_template_result` callback typing ( #97135 )
2023-07-24 12:42:17 +02:00
Marc Mueller
c0da6b822e
Fix ruff ( #97131 )
2023-07-24 10:34:16 +02:00
Marc Mueller
3371c41bda
Improve `async_track_device_registry_updated_event` callback typing ( #97125 )
2023-07-24 09:42:01 +02:00
Marc Mueller
0624345322
Improve `async_track_entity_registry_updated_event` callback typing ( #97124 )
2023-07-24 09:14:10 +02:00
Marc Mueller
235b98da8a
Use EventType for remaining event helper methods ( #97121 )
2023-07-23 18:32:29 -05:00
Marc Mueller
69d7b035e0
Use EventType for more helper methods ( #97107 )
2023-07-23 23:22:04 +02:00
Franck Nijhof
30058297cf
Migrate backported StrEnum to built-in StrEnum ( #97101 )
2023-07-23 23:19:24 +02:00
Marc Mueller
bdd253328d
Add generic Event class ( #97071 )
2023-07-23 21:51:54 +02:00
J. Nick Koston
e60313628f
Add a cancel message to the aiohttp compatiblity layer ( #97058 )
2023-07-22 17:06:32 -05:00
Marc Mueller
77f38e33e5
Import names from typing instead of typing_extensions [3.11] ( #97065 )
2023-07-22 17:03:44 -05:00
Jan Bouwhuis
9424d11408
Allow homeassistant in MQTT configuration_url schema ( #96107 )
2023-07-22 22:50:58 +02:00
Joost Lekkerkerker
0ba2531ca4
Fix bug in check_config when an integration is removed by its own validator ( #96068 )
...
* Raise if present is False
* Fix feedback
* Update homeassistant/helpers/check_config.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Update homeassistant/helpers/check_config.py
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Fix tests
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-07-20 11:45:44 +02:00
G Johansson
4e2b00a443
Refactor SQL with ManualTriggerEntity ( #95116 )
...
* First go
* Finalize sensor
* Add tests
* Remove not need _attr_name
* device_class
* _process_manual_data allow Any as value
2023-07-20 11:35:08 +02:00
Erik Montnemery
f0953dde95
Add comment to EntityPlatform._async_add_entity about update_before_add ( #96891 )
2023-07-19 13:07:23 +02:00
J. Nick Koston
01e66d6fb2
Improve handling of unrecoverable storage corruption ( #96712 )
...
* Improve handling of unrecoverable storage corruption
fixes #96574
If something in storage gets corrupted core can boot loop
or if its integration specific, the integration will fail to
start.
We now complainly loudly in the log, move away the corrupt data
and start fresh to allow startup to proceed so the user can
get to the UI and restore from backup without having to attach
a console (or otherwise login to the OS and manually modify files).
* test for corruption
* ensure OSError is still fatal
* one more case
* create an issue for corrupt storage
* fix key
* persist
* feedback
* feedback
* better to give the full path
* tweaks
* grammar
* add time
* feedback
* adjust
* try to get issue_domain from storage key
* coverage
* tweak wording some more
2023-07-19 09:23:12 +02:00
Paul Bottein
d8c989f732
Make default theme selectable for set theme service ( #96849 )
2023-07-18 17:36:35 +02:00
Franck Nijhof
b9f92b526b
Add prefix support to text selector ( #96830 )
2023-07-18 12:17:31 +02:00
J. Nick Koston
bc6a41fb94
Remove deprecated state.get_changed_since ( #96579 )
2023-07-18 09:42:48 +02:00
Marc Mueller
9e67bccb89
Replace EventType annotations with Event ( #96426 )
2023-07-18 08:51:06 +02:00
J. Nick Koston
3a06659120
Speed up single entity/response service calls ( #96729 )
...
* Significantly speed up single entity/response service calls
Since the majority of service calls are single entity, we can
avoid creating tasks in this case. Since the multi-entity
service calls always check the result and raise, we can switch
the asyncio.wait to asyncio.gather
* Significantly speed up single entity/response service calls
Since the majority of service calls are single entity, we can
avoid creating tasks in this case. Since the multi-entity
service calls always check the result and raise, we can switch
the asyncio.wait to asyncio.gather
* revert
* cannot be inside pytest.raises
* one more
* Update homeassistant/helpers/service.py
2023-07-17 09:33:13 +02:00
J. Nick Koston
7ec506907c
Ensure async_get_system_info does not fail if supervisor is unavailable ( #96492 )
...
* Ensure async_get_system_info does not fail if supervisor is unavailable
fixes #96470
* fix i/o in the event loop
* fix tests
* handle some more failure cases
* more I/O here
* coverage
* coverage
* Update homeassistant/helpers/system_info.py
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
* remove supervisor detection fallback
* Update tests/helpers/test_system_info.py
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-07-16 11:10:07 -04:00
Erik Montnemery
614f3c6a15
Move device info validation to device registry ( #96465 )
...
* Move device info validation to device registry
* Don't move DeviceInfo
* Fix type annotation
* Don't block adding device for unknown config entry
* Fix test
* Remove use of locals()
* Improve error message
2023-07-14 08:55:17 -04:00
Erik Montnemery
7539cf25be
Don't require passing identifiers to DeviceRegistry.async_get_device ( #96479 )
...
* Require keyword arguments to DeviceRegistry.async_get_device
* Update tests
* Update tests
* Don't enforce keyword arguments
2023-07-13 13:39:25 -04:00
J. Nick Koston
08af42b00e
Fix mixed case service schema registration ( #96448 )
2023-07-12 14:39:51 -10:00
Paul Bottein
e513b7d0eb
Add condition selector for blueprint ( #96350 )
...
* Add condition selector for blueprint
* Add tests and validation
* Update comment
2023-07-12 10:58:35 -04:00
Franck Nijhof
594d240a96
Migrate & fix logger services to support translations ( #96393 )
...
* Migrate logger services to support translations
* Fix tests and schema validation
* Apply suggestions from code review
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
---------
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
2023-07-12 10:37:18 -04:00
Franck Nijhof
f25d5a157a
Fix service schema to allow for services without any fields/properties ( #96346 )
2023-07-11 19:33:07 +02:00
Franck Nijhof
f054de0ad5
Add support for service translations ( #95984 )
2023-07-11 15:52:12 +02:00