* Add Israel Rail integration
* israel_rail tests
* israel_rail tests
* 1. use entry.runtime
2. DataConnection - data class
3. remove unique id from coordinator
4. use EntityDescription
* add a list of stations in user form
* 1. extend ConfigEntry
2. remove unused pop
3. use IsraelRailSensorEntityDescription to have only one kind of Sensor
4. add test for already configured
5. use snapshot in test
* change user step description
* 1. ConfigEntry[IsraelRailDataUpdateCoordinator]
2. remove redundant attributes
3. use snapshot_platform helper
* remove attr
* remove attr
* move test to test_init.py
* Fix
* Fix
* Fix
* Fix
* fix timezone
* fix
* fix
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Init Autarco integration
* Add integration code with tests
* Update every 5 minutes
* Process all feedback from Joost
* Bump lib to v2.0.0
* Add more then one site if present
* Fix issue with entity translation
* Update the test for sensor entities
* Fix round two based on feedback from Joost
* Add autarco to strict typing
* Update tests/components/autarco/test_config_flow.py
* Update tests/components/autarco/test_config_flow.py
---------
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
* Add config flow to Russound RIO
* Ensure Russound RIO connection is handled at entry setup
* Add tests for Russound RIO config flow
* Add yaml configuration import to Russound RIO
* Use runtime_data to store Russound RIO client
* Seperate common import and user config logic for Russound RIO
* Update config flow to use aiorussound
* Add MAC address as unique ID for Russound RIO
* Fix pre-commit for Russound RIO
* Refactor config flow error handling for Russound RIO
* Add config flow import abort message for no primary controller
* Add common strings to Russound RIO
* Use reference strings for Russound RIO issue strings
* Remove commented out test fixture from Russound RIO
* Clean up test fixtures for Russound RIO
* Remove model from entry data in Russound RIO
* Clean up Russound client mock
* Clean up Russound test fixtures
* Remove init tests and clean up Russound config flow cases
* feat: Add madvr envy
* fix: await and pass entry directly
* fix: add attributes and unique id for sensors
* fix: reflect power state well, improve state detection
* fix: don't connect on init, add options, add reload on change, keep on during test
* fix: cancel tasks on unload
* fix: test connection via library
* fix: wait for boot time
* docs: add readme and license
* fix: broken pipe in lib
* fix: detect out of band power off
* fix: improve extra attributes
* fix: fix unloading, add config flow test, limit to one platform
* fix: use conf, refresh coordinator, other comments
* fix: remove event data
* fix: fix tests passing, remove wake on lan
* fix: dont allow to proceed unless connection works
* chore: update dep
* fix: update config flow, add constants
* fix: write state, use runtime data instead
* fix: remove await
* fix: move unloading and stuff to coordinator/init
* fix: pass in config entry with correct type
* fix: move queue and tasks to library
* fix: config flow error flow, tests, name, and update lib
* fix: update lib, leave connection open on setup
* fix: update lib
* fix: address comments, remove wol from lib
* fix: remove unneeded options
* fix: remove fields
* fix: simplify code, address comments
* fix: move error to lib
* fix: fix test
* fix: stronger types
* fix: update lib
* fix: missing text from options flow
* chore: remove options flow
* chore: remove import
* chore: update comments
* fix: get mac from device, persist
* fix: add mac stuff to test
* fix: startup import errors
* chore: stale comment
* fix: get mac from persisted config
* chore: update lib
* fix: persist mac in a better way
* feat: use mac as unique ID for entry
* fix: use unique ID from mac, add proper device
* fix: will not be set in init potentially
* fix: access mac
* fix: optimize, move error to lib
* feat: add coordinator test, use conf
* fix: use one mock, add init test
* fix: not async
* feat: add remote test
* fix: types
* fix: patch client, expand remote tests
* fix: use snapshot test
* fix: update branding
* fix: add description, fix type check
* fix: update tests
* fix: test
* fix: update test
* fix: camelcase
* Fix
* feat: strict typing
* fix: strict typing in lib
* fix: type will never be None
* fix: reference to mac, all tests passing
---------
Co-authored-by: Joostlek <joostlek@outlook.com>
* Dio Chacon integration addition with config flow and cover entity
* Addition of model information for device
* Addition of light and service to force reloading states
* Logger improvements
* Convert light to switch and usage of v1.0.0 of the api
* 100% for tests coverage
* Invalid credential implementation and rebase on latest ha dev code
* Simplify PR with only one platform
* Ruff correction
* restore original .gitignore content
* Correction of cover state bug when using cover when using actions on cover group.
* Begin of corrections following review.
* unit tests correction
* Refactor with a coordinator as asked by review
* Implemented a post constructor callback init method via dio-chacon-api-1.0.2. Improved typing.
* Corrections for 2nd review
* Reimplemented without coordinator as reviewed with Joostlek
* Review improvement
* generalize callback in entity
* Other review improvements
* Refactored tests for readability
* Test 100% operationals
* Tests review corrections
* Tests review corrections
* Review tests improvements
* simplified tests with snapshots and callback method
* Final fixes
* Final fixes
* Final fixes
* Rename to chacon_dio
---------
Co-authored-by: Joostlek <joostlek@outlook.com>
* Switch onkyo to pyeiscp, making it local_push
Major rewrite of the integration to use pyeiscp.
This facilitates use of the async push updates.
Streamline the code dealing with zones.
Handle sound mode.
Add myself to codeowners.
* Add types
* Add more types
* Address feedback
* Remove sound mode support for now
* Fix zone detection
* Keep legacy unique_id
Co-authored-by: Teemu Rytilahti <tpr@iki.fi>
Co-authored-by: sdb9696 <steven.beth@gmail.com>
Co-authored-by: Steven B <51370195+sdb9696@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Teemu R. <tpr@iki.fi>
* Initial commit
* Support changed API
Change sensor entity descriptions
* Fix sensor not handling coordinator update
* Implement re-authentication flow and handle token expiry
* Bump aioaquacell
* Bump aioaquacell
* Cleanup and initial tests
* Fixes for config flow tests
* Cleanup
* Fixes
* Formatted
* Use config entry runtime
Use icon translations
Removed reauth
Removed last updated sensor
Changed lid in place to binary sensor
Cleanup
* Remove reauth strings
* Removed binary_sensor platform
Fixed sensors not updating properly
* Remove reauth tests
Bump aioaquacell
* Moved softener property to entity class
Inlined validate_input method
Renaming of entities
Do a single async_add_entities call to add all entities
Reduced code in try blocks
* Made tests parameterized and use test fixture for api
Cleaned up unused code
Removed traces of reauth
* Add check if refresh token is expired
Add tests
* Add missing unique_id to config entry mock
Inlined _update_config_entry_refresh_token method
Fix incorrect test method name and comment
* Add snapshot test
Changed WiFi level to WiFi strength
* Bump aioaquacell to 0.1.7
* Move test_coordinator tests to test_init
Add test for duplicate config entry
* Add ista EcoTrend integration
* move code out of try
* Use account owners name as entry title
* update config flow tests
* add tests for init
* Add reauth flow
* Add tests for sensors
* add translations for reauth
* trigger statistics import on first refresh
* Move statistics and reauth flow to other PR
* Fix tests
* some changes
* draft_final_final
* remove unnecessary icons
* changed tests
* move device_registry test to init
* add text selectors
* Add config flow
* Make sure the device is polled - refactor
* Fix
* Add tests config flow
* Update test requirements
* Ensure dispatcher has a unique signal per heater
* Followup on review
* Follow up comments
* One more docstr
* Make specific try blocks and refactoring
* Handle import exceptions
* Restore removed lines
* Move initial heater update in try block
* Raise issue failed import
* Update test codeowners
* Remove entity device info
* Remove entity device info
* Appy suggestions from code review
* Remove broad exception handling from entry setup
* Test coverage
* Initial commit
* add basic tests (will probably fail)
* Set basic UID for now
* Various improvements
* use new naming convention?
* bit by bit, still not working tho
* Add tz selection
* Remove failing tests
* update unique_id
* add the tests again
* revert to previous binary_sensor test
* remove translations
* apply suggestions
* remove const.py
* Address review
* revert changes
* Initial fixes for tests
* Initial commit
* add basic tests (will probably fail)
* Set basic UID for now
* Various improvements
* use new naming convention?
* bit by bit, still not working tho
* Add tz selection
* Remove failing tests
* update unique_id
* add the tests again
* revert to previous binary_sensor test
* remove translations
* apply suggestions
* remove const.py
* Address review
* revert changes
* Fix bad merges in rebase
* Get tests to run again
* Fixes due to fails in ruff/pylint
* Fix binary sensor tests
* Fix config flow tests
* Fix sensor tests
* Apply review
* Adjust candle lights
* Apply suggestion
* revert unrelated change
* Address some of the comments
* We should only allow a single jewish calendar config entry
* Make data schema easier to read
* Add test and confirm only single entry is allowed
* Move OPTIONS_SCHEMA to top of file
* Add options test
* Simplify import tests
* Test import end2end
* Use a single async_forward_entry_setups statement
* Revert schema updates for YAML schema
* Remove unneeded brackets
* Remove CONF_NAME from config_flow
* Assign hass.data[DOMAIN][config_entry.entry_id] to a local variable before creating the sensors
* Data doesn't have a name remove slugifying of it
* Test that the entry has been created correctly
* Simplify setup_entry
* Use suggested values helper and flatten location dictionary
* Remove the string for name exists as this error doesn't exist
* Remove name from config entry
* Remove _attr_has_entity_name - will be added in a subsequent PR
* Don't override entity id's - we'll fixup the naming later
* Make location optional - will by default revert to the user's home location
* Update homeassistant/components/jewish_calendar/strings.json
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* No need for local lat/long variable
* Return name attribute, will deal with it in another PR
* Revert unique_id changes, will deal with this in a subsequent PR
* Add time zone data description
* Don't break the YAML config until the user has removed it.
* Cleanup initial config flow test
---------
Co-authored-by: Tsvi Mostovicz <ttmost@gmail.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>