* Fix rainbird unique id to use a mac address for new entries
* Fix typo
* Normalize mac address before using as unique id
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update test check and remove dead code
* Update all config entries to the new format
* Update config entry tests for migration
* Fix rainbird entity unique ids
* Add test coverage for repair failure
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Remove unnecessary migration failure checks
* Remove invalid config entries
* Update entry when entering a different hostname for an existing host.
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Fix unique ids for rainbird entities
* Update entity unique id use based on config entry entity id
* Update tests/components/rainbird/test_binary_sensor.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Rename all entity_registry variables
* Shorten long comment under line length limits
---------
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Initial version of a calendar for the rainbird integration
* Improve calendar support
* Revert changes to test fixtures
* Address ruff error
* Fix background task scheduling
* Use pytest.mark.freezetime to move to test setup
* Address PR feedback
* Make refresh a member
* Merge rainbird and calendar changes
* Increase test coverage
* Readability improvements
* Simplify timezone handling
* Don't set a unique id for devices with no serial
* Add additional check for the same config entry host/port when there is no serial
* Update homeassistant/components/rainbird/config_flow.py
Co-authored-by: Robert Resch <robert@resch.dev>
* Update tests/components/rainbird/test_config_flow.py
Co-authored-by: Robert Resch <robert@resch.dev>
* Update tests/components/rainbird/test_config_flow.py
Co-authored-by: Robert Resch <robert@resch.dev>
---------
Co-authored-by: Robert Resch <robert@resch.dev>
* Rainbird config flow
Convert rainbird to a config flow. Still need to handle irrigation numbers.
* Add options for irrigation time and deprecate yaml
* Combine exception handling paths to get 100% test coverage
* Bump the rainird config deprecation release
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Remove unnecessary sensor/binary sensor and address some PR feedback
* Simplify configuration flow and options based on PR feedback
* Consolidate data update coordinators to simplify overall integration
* Fix type error on python3.9
* Handle yaml name import
* Fix naming import post serialization
* Parallelize requests to the device
* Complete conversion to entity service
* Update homeassistant/components/rainbird/switch.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Update homeassistant/components/rainbird/config_flow.py
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Remove unused import
* Set default duration in options used in tests
* Add separate devices for each sprinkler zone and update service to use config entry
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Bump pyrainbird to 0.7.0 and move to async library
* Share updates across sensors
* Fix test version and delete dead code
* Add test coverage for yaml configuration
* Address PR feedback