* fixed tests: using correct camera configuration now and error handling tests must be separated out to ensure that the setup_component call is actually executed
* better error handling during setup; raising PlatformNotReady in likely recoverable cases; added tests
* Hass configuration name is optional
* Check explicitly if name is none
* Reverted back to old logic for zones configured in configuration.yaml, where many zones can have the same name
* New test to verify use case of allowing multiple zones having the same name
* Fix too long line
* Add set_default_service to logger
* Fix 2-line lint error
* Add set_default_level to services.yaml
* Add tests for set_default_level
* Remove function and add else when setting default
* initial commit
* lint
* update with pyipma
* Added test
* Added test
* lint
* missing dep
* address comments
* lint
* make sure list is iterable
* don't bother with list
* mock dependency
* no need to add test requirements
* last correction
* Option to load or not to load clip sensors on start
* Full flow
* Fix config flow and add tests
* Fix attribute dark reporting properly
* Imported and properly configured deCONZ shouldn't need extra input to create config entry
* moved regular updates definition to own method to be able to override behaviour in subclass
* moved filter by max entries to own method to be able to override behaviour in subclass
* event type used when firing events to the bus now based on variable to be able to override behaviour in subclass
* feed id introduced instead of url for storing meta-data about the feed to be able to fetch the same feed from different configs with different filtering rules applied
* keep the status of the last update; continue processing the entries retrieved even if a recoverable error was detected while fetching the feed
* added test cases for feedreader component
* better explanation around breaking change
* fixing lint issues and hound violations
* fixing lint issue
* using assert_called_once_with instead of assert_called_once to make it compatible with python 3.5
* When zwave node's info is parsed remove it and re-add back.
* Delay value entity if not ready
* If node is ready consider it parsed even if manufacturer/product are missing.
* Add annotations
* Add new device without restarting hass
* Remove debug prints
* Fix copy paste error
* Fix comments from balloob
Add tests to verify signalling with new added devices
* Fix hound comments
Add test to verify when new sensor is added
* Fix tests
* Unload entry should unsubscribe all deconz dispatchers
* Make sure mock setup also creates unsub in hass data
* Fix copy paste issue
* Lint
* 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
* Publish attributes unconditionally
Because the attribute publish command was previously hidden behind `if val:`, falsy values like False and 0.0 weren't being published, thereby making Statestream -- particularly in the case of booleans, where the first True would be retained indefinitely -- a completely worthless indicator of state.
* Change bool test to False to confirm falsy values pass
* Add unique_id to zwave node entity
* Wait 30s before adding zwave node if its unique_id is not ready
* Use only node_id in unique_id. Update name, manufacturer, and product attributes on node update.
* Add initial user foundation to Home Assistant
* Address comments
* Address comments
* Allow non-ascii passwords
* One more utf-8 hmac compare digest
* Add new line
* add initial precipitation support
* move attr to component
* remove blank line
* add forecast attributes to platform and update demo
* add tests
* break long lines
* calc lower temp correctly
* move all new attributes to component
* convert temp low only when existing
* Working but incomplete
* Remove events on unload
* Add unload test
* Fix failing sensor test
* Improve unload test
* Move DeconzEvent to init
* Fix visual under-indentation
* Initial commit
* Add error handling to config flow
Change unique identifyer to name
Clean up hound comments
* Ensure hass home zone is created with correct entity id
Fix failing tests
* Fix rest of tests
* Move zone tests to zone folder
Create config flow tests
* Add possibility to unload entry
* Use hass.data instead of globas
* Don't calculate configures zones every loop iteration
* No need to know about home zone during setup of entry
* Only use name as title
* Don't cache hass home zone
* Add new tests for setup and setup entry
* Break out functionality from init to zone.py
* Make hass home zone be created directly
* Make sure that config flow doesn't override hass home zone
* A newline was missing in const
* Configured zones shall not be imported
Removed config flow import functionality
Improved tests
* Use forward entry setup with light platform
* Move sensor to forward entry setup
* Use forward entry setup with binary sensors
* Use forward entry setup with scene platform
* Remove import of unused functionality
* Move deconz setup in to setup entry
Create initial negative tests for setup entry
* Fix hound comment
* Improved tests
* Add test for scene platform
* Add test for binary sensor platform
* Add test for light platform
* Add test for light platform
* Add test for sensor platform
* Fix hound comment
* More asserts on sensor types
* Initial working config entry with discovery
* No need for else
* Make sure that imported config doesnt exist as a config entry
* Improve checks to make sure there is only instance of deconz
* Fix tests and add new tests
* Follow upstream changes
Fix case when discovery started ongoing config entry and user completes setup from other path it was possible to complete discovered config entry as well
* Add test to make sure link doesn't bypass any check for only allowing one config entry
* Dont use len to determine an empty sequence
* Cleanup
* Allways get bridgeid to use as unique identifier for bridge
* Added web view for to get url
* Added web view for TTS to get url
* Added web view for TTS to get url
* Added web view for TTS to get url
* Fixed test
* added auth
* Update __init__.py
* Add support for controlling homekit lights and switches
This adds support for controlling lights and switches that expose a HomeKit
control interface, avoiding the requirement to implement protocol-specific
components.
* Comment out the homekit requirement
This needs to build native code, so leave it commented for now
* Review updates
* Make HomeKit auto-discovery optional
Add an "enable" argument to the discovery component and add a list of
optional devices types (currently just HomeKit) to discover
* Further review comments
* Update requirements_all.txt
* Fix houndci complaints
* Further review updates
* Final review fixup
* Lint fixups
* Fix discovery tests
* Further review updates
* Added feedback sound configuration
* Added feedback sound configuration
* Cleaned up feedback off
* Cleaned up whitespace
* Moved feedback pus to helper funx
* Async
* Used async_mock_service for tests
* Lint
* Support binary_sensor and device_tracker for HomeKit
* Add test for get_accessory and binary sensor
* Test service.display_name and char_detected.display_name
* Split test to improve speed
* Initialise filter with historical values
Added get_last_state_changes()
* fix test
* Major changes to accommodate history + time_SMA
# Conflicts:
# homeassistant/components/sensor/filter.py
* hail the hound!
* lint fixed
* less debug
* ups
* get state from the proper entity
* sensible default
* No defaults in get_last_state_changes
* list_reverseiterator instead of list
* prev_state to state
* Initialise filter with historical values
Added get_last_state_changes()
* fix test
* Major changes to accommodate history + time_SMA
# Conflicts:
# homeassistant/components/sensor/filter.py
* hail the hound!
* lint fixed
* less debug
* ups
* get state from the proper entity
* sensible default
* No defaults in get_last_state_changes
* list_reverseiterator instead of list
* prev_state to state
* update
* added window_unit
* replace isinstance with window_unit
* Add async timeout feature
* Decorator for setter methods to limit service calls to HA
* Changed to async
* Use async_call_later
* Use lastargs, async_add_job
* Use dict for lastargs
* Updated tests to stop patch
* Try config entries
* Testing
* Working flow
* Config entry text strings
* Removed manual inputs for config flow
* Support unloading of config entry
* Bump requirement to v33
* Fix comments from test
* Make sure that only one deCONZ instance can be set up
* Hass doesn't support unloading platforms yet
* Modify get_api_key to be testable
* Fix hound comments
* Add test dependency
* Add test for no key
* Bump requirement to v35
Add pydeconz to list of test components
* Don't have a check in async_setup that domain exists in hass.data
* Implement thermostat support for Alexa
* util.temperature: Support interval conversions
* Use climate.ATTR_OPERATION_MODE for Alexa thermostat mode
* Switch coroutines to async/await
* Log all Alexa error events
* 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
* Fix Google Calendar caching when offline
Events from Google Calendar were not firing under the following
circumstances:
1. Start ha as normal with Google Calendar configured as per
instructions.
2. ha loses network connectivity to Google
3. ha attempts update of Google Calendar
4. calendar/google component throws uncaught Exception causing update
method to not return
5. (cached) Google Calendar event does not fire, remains "Off"
Catching the Exception and returning False from the update() method
causes the correct behavior (i.e., the calendar component firing the
event as scheduled using cached data).
* Add requirements
* Revert code cleanup
* Remove explicit return value from update()
* Revert "Remove explicit return value from update()"
This reverts commit 7cd77708af.
* Use MockDependency decorator
No need to whitelist google-python-api-client for a single unit test at
this point.
* HomeMatic KeyMatic device become a real lock component
* Adds supported features to lock component.
Locks may are capable to open the door latch.
If component is support it, the SUPPORT_OPENING bitmask can be supplied in the supported_features property.
* hound improvements.
* Travis improvements.
* Improvements from review process
* Simplifies is_locked method
* Adds an openable lock in the lock demo component
* removes blank line
* Adds test for openable demo lock and lint and reviewer improvements.
* adds new line...
* Comment end with a period.
* Additional blank line.
* Mock service based testing, lint fixes
* Update description
* Cast Integration Cleanup
* Fix long line
* Fixes and logging
* Fix tests
* Lint
* Report unknown state with None
* Lint
* Switch to async_add_job
Gets rid of those pesky "Setup of platform cast is taking over 10 seconds." messages.
* Re-introduce PlatformNotReady
* Add tests
* Remove unnecessary checks
* Test PlatformNotReady
* Fix async in sync context
* Blocking update
It's not using async anyway
* Upgrade pychromecast to 2.1.0
* Make reviewing easier
I like "protected" access, but I like reviewing more :)
* Make reviewing even easier :)
* Comment tests
* Accept and report both xy and RGB color for lights
* Fix demo light supported_features
* Add new XY color util functions
* Always make color changes available as xy and RGB
* Always expose color as RGB and XY
* Consolidate color supported_features
* Test fixes
* Additional test fix
* Use hue/sat as the hass core color interface
* Tests updates
* Assume MQTT RGB devices need full RGB brightness
* Convert new platforms
* More migration
* Use float for HS API
* Fix backwards conversion for KNX lights
* Adjust limitless min saturation for new scale
* add ability to set fan on
* add tests and change "not on" status to "auto"
* hound fix
* more hounds
* I don't understand new lines
* fix linting errors
* more linting fixes
* change method signature
* lint fixes
* hopefully last lint fix
* correct temp ranges according to ecobee API docs
* update dependency to latest version
* update tests with values from new temp logic
* fix linting issue
* more linting fixes
* add SUPPORT_FAN_MODE to capabilities
* add fan_list to attributes.
restore current fan state to OFF if fan is not running.
change target high/low temps from null to target temp when not in auto mode.
change target temp from null to high/low temp when in auto mode
change mode attribute to climate_mode for consistency with other lists.
* remove unused import
* simplify logic
* lint fixes
* revert change for target temps
* Added Time based SMA
* move "now" to _filter_state()
* Addressed comments
* fix long line
* type and name
* # pylint: disable=redefined-builtin
* added test
* 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
* Added Foobot device sensor
* Added error handling tests
* Corrections after PR review.
* Migrated to async/await syntax
* lint fixes
* stop raising HomeAssistantError
* debug log for number of requests
* Moved shared data between sensors from a class attribute to a separate class
* Made test more async-aware
disabled setup error test for now as it's not working
* Working failure scenarios tests
* Restructure
* Pincode will now be autogenerated and display using a persistence notification
* Added 'homekit.start' service
* Added config options
* Renamed files for types
* Improved tests
* Changes (based on feedback)
* Removed CONF_PIN_CODE
* Added services.yaml
* Service will only be registered if auto_start=False
* Bugfix names, changed default port
* Generate aids with zlib.adler32
* Added entity filter, minor changes
* Small changes
* Sensor template don't exit early on TemplateError
* Add friendly name unknown state test
* Also track entites from attribute templates
* Use set instead of list