* Test
* Ability to remove device
* Don't remove devices, instead remove config entry from device and entity registries
* Remove print
* Remove is not the same as unload
* Add tests
* Fix hound comment
* Allow device registry to optionally store config entries
* Connections and identifiers are now sets with tupels
* Make config entries mandatory
* Fix duplicate keys in test
* Rename device to device_info
* Entity platform should only create device entries if config_entry_id exists
* Fix Soundtouch tests
* Revert soundtouch to use self.device
* Fix baloobs comments
* Correct type in test
* First draft
* Generate device id
* No obscure registry
* Dont store config_entry_id in device
* Storage
* Small mistake on rebase
* Do storage more like entity registry
* Improve device identification
* Add tests
* Remove deconz device support from PR
* Fix hound comments, voff!
* Fix comments and clean up
* Fix proper indentation
* Fix pydoc issues
* Fix mochad component to not use self.device
* Fix mochad light platform to not use self.device
* Fix TankUtilitySensor to not use self.device
* Fix Soundtouch to not use self.device
* Fix Plex to not use self.device
* Fix Emby to not use self.device
* Fix Heatmiser to not use self.device
* Fix Wemo lights to not use self.device
* Fix Lifx to not use self.device
* Fix Radiotherm to not use self.device
* Fix Juicenet to not use self.device
* Fix Qwikswitch to not use self.device
* Fix Xiaomi miio to not use self.device
* Fix Nest to not use self.device
* Fix Tellduslive to not use self.device
* Fix Knx to not use self.device
* Clean up a small mistake in soundtouch
* Fix comment from Ballob
* Fix bad indentation
* Fix indentatin
* Lint
* Remove unused variable
* Lint
* Adding new feature to allow a wait template to run the remainer of the script on timeout
* Styling changes
* Fixing file permissions, adding test for new code
* changed variable name, refactored script to pass information into async_set_timeout
* Changing the default behaviour to continue to run the script after timeout
* Refactoring data_entry_flow and config_entry_flow
Move SOURCE_* to config_entries
Change data_entry_flow.FlowManager.async_init() source param default
to None
Change this first step_id as source or init if source is None
_BaseFlowManagerView pass in SOURCE_USER as default source
* First step of data entry flow decided by _async_create_flow() now
* Lint
* Change helpers.config_entry_flow.DiscoveryFlowHandler default step
* Change FlowManager.async_init source param to context dict param
## Description:
More fixes flagged by pylint 2 that don't hurt to have before the actual pylint 2 upgrade (which I'll submit soon).
## Checklist:
- [ ] The code change is tested and works locally.
- [x] Local tests pass with `tox`. **Your PR cannot be merged unless tests pass**
* Add storage helper
* Migrate config entries to use the storage helper
* Make sure tests do not do I/O
* Lint
* Add versions to stored data
* Add more instance variables
* Make migrator load config if nothing to migrate
* Address comments
* Add first version of the Matrix bot
* It's a stupid but necessary change…
* Dont list it twice
* All hail the linter!
* More linter-pleasing
* Use the correct user ID
* Add expression commands
* Add tests for new validators
* Fix room alias handling
* Wording
* Defer setup
* Simplify commands
* Handle exceptions
* Update requirements
* Review
* Move login back to constructor
* Fix review comments
* Adds template function state_attr to get attribute from a state
Refactored is_state_attr to use new function
Adds tests for state_attr
* Fixes line too long and test bug
* Fixes pylint error
* Fixes tests and D401 lint error
* phue -> aiohue
* Clean up
* Fix config
* Address comments
* Typo
* Fix rebase error
* Mark light as unavailable when bridge is disconnected
* Tests
* Make Throttle work with double delay and async
* Rework update logic
* Don't resolve host to IP
* Clarify comment
* No longer do unnecessary updates
* Add more doc
* Another comment update
* Wrap up tests
* Lint
* Fix tests
* PyLint does not like mix 'n match async and coroutine
* Lint
* Update aiohue to 1.2
* Lint
* Fix await MagicMock
* Add view to support backend translation fetching
* Load backend translations from component json
* Translations for season sensor
* Scripts to merge and unpack Lokalise translations
* Fix copy paste error
* Serve post-lokalise translations to frontend
* Linting
* Auto-deploy translations with Travis
* Commit post-lokalise translation files
* Split logic into more helper functions
* Fall back to English for missing keys
* Move local translation copies to `.translations`
* Linting
* Initial tests
* Remove unnecessary file check
* Convert translation helper to async/await
* Convert translation helper tests to async/await
* Use set subtraction to find missing_components
* load_translation_files use component->file mapping
* Remove duplicated resources fetching
Get to take advantage of the slick Python 3.5 dict merging here.
* Switch to live project ID
* Added cv.EntitiesDoamin(domain) validator
* Check if all entities in string or list belong to domain
* Added tests
* Use factory function and entity_ids
* Different error message
* Typo
* Added entity_domain validator for a single entity_id
* Image_processing platform now uses cv.entity_domain for source validation