* Update country `province` validation.
* Run pre-commit.
* Add tests
* Mod config flow
---------
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
* Remove default code in Yale Smart Living
* Test and remove check
* Finalize
* migration
* add back
* add back 2
* Fix tests
* Fix migration if code not exist
* Log entity_id payload and template on error
* Also handle cases with default values.
* Do not log payload twice
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Tweak test to assert without payload
* black
---------
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Make MQTT Alarm Control Panel features conditional
The MQTT Alarm Control Panel currently enables all features (arm home,
arm away, arm night, arm vacation, arm custom bypass) unconditionally.
This clutters the interface and can even be potentially dangerous, by
enabling modes that the remote alarm may not support.
Make all the features conditional, by adding a new "supported_features"
configuration option, comprising a list of the supported features as
options. Feature enablement seems inconsistent across the MQTT
component; this implementation is most alike to the Humidifier modes
option, but using a generic "supported_features" name that other
implementations may reuse in the future.
The default value of this new setting remains to be all features, which
while it may be overly expansive, is necessary to maintain backwards
compatibility.
* Apply suggestions from code review
* Use vol.Optional() instead of vol.Required() for "supported_features".
* Move the initialization of _attr_supported_features to _setup_from_config.
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
* Apply suggestions from emontnemery's code review
* Use vol.In() instead of cv.multi_seelct()
* Remove superfluous _attr_supported_features initializers, already
present in the base class.
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Add invalid config tests for the MQTT Alarm Control Panel
* Set expected_features to None in the invalid MQTT Alarm Control Panel tests
* Add another expected_features=None in the invalid tests
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
---------
Co-authored-by: Jan Bouwhuis <jbouwh@users.noreply.github.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Add humidity and dew point to tomorrow.io integration
* Fix ruff complaints
* Make mypy happy
* Merge emontnemery's changes
* Fix formatting error
* Add fake humidity and dew point to test data (first interval only)
* Fix inconsistency
* Fix inconsistency
* Fix nessclient arm home appearing as arm away
* patch arming mode enum and use dynamic access
* Revert "patch arming mode enum and use dynamic access"
This reverts commit b9cca8e92bcb382abe364381a8cb1674c32d1d2a.
* Remove mock enums
* Add device_class on charging remaining time
Set `device_class to `duration` on the `charging_remaining_time` entity in the Renault integration.
I had some issues showing this property on my dashboard, and setting this fixed it. The recommendation to open an issue against the original integration in these kinds of cases came from [here](https://community.home-assistant.io/t/how-to-format-a-card-to-show-hours-instead-of-seconds/425473/7).
* Update test const to add duration
* fix other cars
* Update test_sensor.ambr
* add duration in ambr
* Simplify error handling in otbr async_setup_entry
* Create issue if the OTBR does not support border agent ID
* Update test
* Improve test coverage
* Catch the right exception