* 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>
* Drop use of regex in helpers.extract_domain_configs
* Update test
* Revert test update
* Add domain_from_config_key helper
* Add validator
* Address review comment
* Update snapshots
* Inline domain_from_config_key in validator
* Add tests for configuration validation errors
* Use absolute path for hass.config.config_dir
* Apply suggestions from code review
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Feedreader: Properly support Atom feeds that use only the `updated` date format and resolve#73207.
* Revert "Feedreader: Properly support Atom feeds that use only the `updated` date format and resolve #73207."
This reverts commit 4dbd11ee04.
* Properly support Atom feeds that use only the `updated` date format and resolve#73207.
* Revert "Properly support Atom feeds that use only the `updated` date format and resolve #73207."
This reverts commit 14366c6a24.
* Properly support Atom feeds that use only the `updated` date format and resolve#73207.
* tests for a Symo inverter system
* update testing requirement
* add tests for energy meter data
* move response JSONs to fixture directory
* add storage system response
* review suggestion
* Add unique ids to yandex_transport entities
* Add support for railway routes to yandex_transport component
* Test suburban timetable parsed correctly
* Remove redundant default value
* Make unique_id unique and stable
* Remove unique_id from yandex_transport component
* Store automation and script traces
* Pylint
* Deduplicate code
* Fix issues when no stored traces are available
* Store serialized data for restored traces
* Update WS API
* Update test
* Restore context
* Improve tests
* Add new test files
* Rename restore_traces to async_restore_traces
* Refactor trace.websocket_api
* Defer loading stored traces
* Lint
* Revert refactoring which is no longer needed
* Correct order when restoring traces
* Apply suggestion from code review
* Improve test coverage
* Apply suggestions from code review
* Add support for multilevel switch CC select entities
* Use state names from docs and include more device identifiers from device DB
* black
* pylint
* type fix
* Add failure scenario test
* Update homeassistant/components/zwave_js/select.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
This avoids calling the tado servers unnecessarily many times, especially for bigger homes. This is done by calling aggregating endpoints instead of iterating over the zones and devices and calling endpoints over and over.
* Add services
* Add tests
* Cleanup async
* Fix pylint
* Update services.yaml
* Add extra schema validation
* Rename constants
* Simplify code
* Move constants
* Fix pylint
* Cleanup constants
* Drop charge_set_mode as moved to select platform
* Only register the services if no config entry has registered them yet
* Replace VIN with device selector to select vehicle
* Update logging
* Adjust type checking
* Use a shared base SERVICE_VEHICLE_SCHEMA
* Add selectors for ac_start (temperature/when)
* Add object selector for charge_set_schedules service