* Added scene.delete service
Only for scenes created with scene.create
* Refactor after #95984#96390
* Split scene validation in 2
First, check if entity_id is a scene
Second, check if it's a scene created with `scene.create`
* Address feedback
- Move service to `homeassistant` domain
- Register with `platform.async_register_entity_service`
- Raise validation errors instead of just logging messages
* Revert moving the service to the `homeassistant` domain
* Remove unneeded validation
* Use helpers and fix tests
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Fix linting
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Add ServiceValidationError
* Add translation support
* Extend translation support to HomeAssistantError
* Add translation support for ServiceNotFound exc
* Frontend translation & translation_key from caller
* Improve fallback message
* Set websocket_api as default translation_domain
* Add MQTT ServiceValidationError exception
* Follow up comments
* Revert removing gueard on translation_key
* Revert test changes to fix CI test
* Follow up comments
* Fix CI test
* Follow up
* Improve language
* Follow up comment
* 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
* Add deduplicate script
* Fix forecast_solar incorrect key with space
* Fix utf-8
* Do not create references to other arbitrary other integrations
* Add commented code to only allow applying to referencing integrations
* Tweak
* Bug fix
* Add command line arg for limit reference
* never suggest to update common keys
* Output of script
* Apply suggestions from code review
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
---------
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
* Add common translations
* Add common translations
* Add common translations
* Add common translations
* Add common translations
* Add common translations
* Add common translations
* Add common translations
* Add deprecated_yaml issue to the homeassistant integration
* Update test
* Update homeassistant/components/homeassistant/strings.json
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Include DOMAIN in issue_id
* Update test
---------
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Refactor handling of exposed entities for cloud Alexa
* Tweak WS API
* Validate assistant parameter
* Address some review comments
* Refactor handling of exposed entities for cloud Google
* Raise when attempting to expose an unknown entity
* Add tests
* Adjust cloud tests
* Allow getting expose new entities flag
* Test Alexa migration
* Test Google migration
* Add WS command cloud/google_assistant/entities/get
* Fix return value
* Update typing
* Address review comments
* Rename async_get_exposed_entities to async_get_assistant_settings