Implemented support for On/Off and Away modes in the template water heater
platform, including optimistic control and lambda-based state reporting.
Refactored the base 'WaterHeaterCall' to replace the 'state_' bitmask with
'optional<bool>' for 'on' and 'away' fields. This change was necessary to
enable partial (delta) updates. The previous bitmask implementation did not
distinguish between a field being "set to false" and "not set at all,"
causing unintended state resets (e.g., turning the device off when only
adjusting temperature).
* Add time entities
* Add tests
* Add myself to datetime codeowners
* Fix publishing times with 0 values
* Log performing TimeCall
* Implement `on_time` trigger
* Rename var
* Fix initial value for time
* Add arg name for clarity
* Remove useless checks
* Test for each component.
* When possible use commandline substitution.
* Add wildcard support.
* end file with new line.
* Move component tests into subfolder.
* Add component test to pipeline.
* Remove trailing whitespace.
* add restore python step.
* Add `. venv/bin/activate` to pipeline.
* step `changed-components` needs `common` step.
* start `list-components-changed.py` different.
* iterate on pipeline stage `list-components`.
* Update `checkout` action.
* Rename test folder from `tests` to `_test`.
* validate file exists.
* Move component test folder.
* extend list-components to include child components.
* File does not end with a newline
* Handle empty list-components matrix.
* list-components also check for changes in tests folder.
* Improve `list-components.py`.
* `*` is a forbidden character for filenames on windows.
---------
Co-authored-by: Your Name <you@example.com>
Co-authored-by: Keith Burzinski <kbx81x@gmail.com>