* Add TTL custom support and custom headers support.
* fix pywebpush version
* removed whitespaces surrounding docstrings.
* fixes for tests
* priority option to data
* checking of ATTR_ENDPOINT
* change checking of target to vol.Schema
* more tests
* Clean and fix google calendar tests
* Extract test calendar constant for google test
* Rewrite google calendar tests
* Clean and fix google calendar tests
* Clean and fix google component tests
* Add google conftest
* Skip flaky google calendar test
* Fix google calendar bug
* Fix yield fixture
* Set fixture names to avoid lint warning
* Fix yield fixture
* Make entity_filter be a modifiable builder
* Add render_with_collect method
* Use sync render_with_collect and non-class based test case
* Refactor: Template renders to RenderInfo
* Freeze with exception too
* Finish merging test changes
* Removed unused sync interface
* Final bits of the diff
* ptvsd debugger component.
* Add test case
* ptvsd as test dependency
* Fix for 3.5
* Fixed bootstrap test
* Use dict direct lookup.
* Don't need to load dependencies.
* Get the test working.
* 3.5 fix
* Set mock return value
* Put tests back, but skip them
* Change log level
fix check for already created entities
remove hepa and carbon filter
add AQI attribute
initial commit
fix check for already created entities
remove hepa and carbon filter
add AQI attribute
add air quality component tests
fix method call tests
fix line lengths
fix pylint issues
fix docstrings
revert fan related changes
remove whitespace change
fix fan update state test
add for loop for platform initialization
add requested changes to aiq platform
change string concatenation to new style string formatting
update air quality tests
update air quality tests
refactor sensor component changes
fix pylint issues
fix debug string in the air quality component
replace failing tests for older devices
fix line length fan tests
remove dependencies const and move imports
move back imports to methods
remove whitespace from blank line
* Allow host/ipv6 address for broadlink service
This matches switch config and is a regression fix
* Restore padding of packets for broadlink
* Drop unused import
* Fix comment on test
* Add action.devices.traits.Volume
* Drop media player from brightness trait
* Factor out commands into separate functions
* Drop support for explicit mute
* Expose door cover/binary_sensor as door type
More logical to ask "What doors are open" than "What sensors are open"
* Add test for binary_sensor device_classes
* Cosmetic flake8
* Add test for device class for cover
* Added component named switcher_kis switcher water heater integration.
* Fixed conflicts.
* Updated requirements.
* Added manifest.json file and updated CODEOWNERS.
* Fixed requirements_all.txt.
* Better component tests.
* Removed unnecessary parameter from fixture function.
* Removed tests section from mypy.ini.
* Remove unused ENTITY_ID_FORMAT.
* Stop udp bridge when failed to setup the component.
* Replace DISCOVERY_ constants prefix with DATA_.
* Various change requests.
* Fixed constant name change remifications.
* Added explicit name to fixture.
* Various change requests.
* More various change requests.
* Added EventType for homeassistant.core.Event.
* Switched from event driven data distribution to dispatcher type plus clean-ups.
* Removed name and icon keys from the component configuration.
* Various change requests.
* Various change reqeusts and clean-ups.
* Removed unnecessary DEPENDENCIES constant from swith platform.
* Replaced configuration data guard with assert.
* Removed unused constants.
* Removed confusing type casting for mypy sake.
* Refactor property device_name to name.
* Removed None guard effecting mypy only.
* Removed unnecessary function from switch entity.
* Removed None guard in use by mypy only.
* Removed unused constant.
* Removed unnecessary context manager.
* Stopped messing around with mypy.ini.
* Referring to typing.TYPE_CHECKING for non-runtime imports.
* Added test requierment correctyly.
* Replaced queue.get() with queue.get_nowait() to avoid backing up intervals requests.
* Revert changes in mypy.ini.
* Changed attributes content to device properties instead of entity properties.
* Fixed typo in constant name.
* Remove unnecessary async keyword from callable.
* Waiting for tasks on event loop to end.
* Added callback decorator to callable.
* Hass.io Add-on panel support for Ingress
* Revert part of discovery startup handling
* Add type
* Fix tests
* Add tests
* Fix lint
* Fix lint on test
* Set default value for input_datetime
If no initial value is set and no value is available to be restored, set the default value as specified in the docs to 1970-01-01 00:00.
* Use regular if statement
Ternary statements can be tricky if you try to keep the value the same if not something
* Add test for default values
Check that if no initial value is set, state returns 1970-01-01 at 00:00
* Fix tests - was passing wrong args to time/date
* Verify we get a timestamp attribute for input_datetime
This adds a check that when using the default timestamp of 1970-1-1 00:00:00, we
get a timestamp attribute. This is waht prompted this PR in the first place, as
when specifying an automation trying to access the timestamp attribute for a non-
initialized input_datetime HASS wouldn't start.
* Simplify the change for a default value
Based on @balloob comment. Simplifying the code
* Revert "Simplify the change for a default value"
This reverts commit c2d67f19a6.
* Skip entity if no device type found
* Add test for potentially skipped binary sensors
* Reorg code, add tests to ensure all exposed things have types
* Lint
* Fix tests
* Lint
* Add basic support for native Hue sensors
* Update coveragerc
* Simplify attributes
* Remove config option
* Refactor and document device-ness and update mechanism
* Entity docstrings
* Remove lingering config for sensors
* Whitespace
* Remove redundant entity ID generation and hass assignment.
* More meaningful variable name.
* Add new 'not-darkness' pseudo-sensor.
* Refactor sensors into separate binary, non-binary, and shared modules.
* formatting
* make linter happy.
* Refactor again, fix update mechanism, and address comments.
* Remove unnecessary assignment
* Small fixes.
* docstring
* Another refactor: only call API once and make testing easier
* Tests & test fixes
* Flake & lint
* Use gather and dispatcher
* Remove unnecessary whitespace change.
* Move component related stuff out of the shared module
* Remove unused remnant of failed approach.
* Increase test coverage
* Don't get too upset if we're already trying to update an entity before it has finished adding
* relative imports
* load cleanups
* Remove unused methods
* Allow importing requirements at the top of a file
* Fix test
* Lint
* Install reqs ASAP when loading platforms
* Update config flow to support updating host address
Improve tests
* Update gateway to handle new address signal
* Improve description why whe need to keep step_init
* Corrections and test
* Raise error if does not support setting position
* Raising error for stateless and assumed state covers
* Fix pylint
* Tests
* Update test_trait.py
Loading a component defined in a registration didn't actually work and was undocumented, so let's just remove it instead of fixing #23005.
## Checklist:
- [X] The code change is tested and works locally.
- [X] Local tests pass with `tox`. **Your PR cannot be merged unless tests pass**
- [X] There is no commented out code in this PR.
* Load dependencies from manifests. Fallback to current DEPENDENCIES
* Fix typing
* Ignore typing correctly
* Split out dependency processing to a new method
* Fix tests
* Only pull from manifest if dependencies is non empty
* Inline temporary function
* Fix light tests [skip ci]
* Fix tests/common
* Fix some mqtt tests [skip ci]
* Fix tests and component manifests which have only one platform
* Fix rflink tests
* Fix more tests and manifests
* Readability over shorthand format
* Fix demo/notify tests
* Load dependencies from manifests. Fallback to current DEPENDENCIES
* Load requirements from manifests. Fallback to current REQUIREMENTS
* Fix typing
* Ignore typing correctly
* Split out dependency processing to a new method
* Only pull from manifest if dependencies is non empty
* Inline temporary function
* Fix tests and component manifests which have only one platform
* Fix rflink tests
* Readability over shorthand format
* Clean up requirements
* Use integration to resolve deps/reqs
* Lint
* Lint
* revert a change
* Revert a test change
* Fix types
* Fix types
* Add back cache for load component
* Fix test_component_not_found
* Move light.test and device_tracker.test into test package instead with manifest to fix tests
* Fix broken device_tracker tests
* Add docstrings to __init__
* Fix all of the light tests that I broke earlier
* Embed the test.switch platform to fix other tests
* Embed and fix the test.imagimage_processing platform
* Fix tests for nx584
* Add dependencies from platform file's DEPENDENCIES
* Try to setup component when entity_platform is setting up
Fix tests in helpers folder
* Rewrite test_setup
* Simplify
* Lint
* Disable demo component if running in test
Temp workaround to unblock CI tests
* Skip demo tests
* Fix config entry test
* Fix repeat test
* Clarify doc
* One extra guard
* Fix import
* Lint
* Workaround google tts
* Logi Circle now uses OAuth2 for authentication, added config flow.
* Service calls now dispatched to camera entities via signalled events
* Update from PR review
* Add unit tests for config flow
* Updated CODEOWNERS
* Reverted change to .coveragerc
* Improved test coverage of config flow
* Fix light tests [skip ci]
* Fix tests/common
* Fix some mqtt tests [skip ci]
* Fix tests and component manifests which have only one platform
* Fix more tests and manifests
* Fix demo/notify tests
* Rollback test for demo.geo_location
* Added option to use manual authentication for google hangout component
See: https://hangups.readthedocs.io/en/latest/user_guide.html#logging-in for manual log in example
Bumped up version of hangups to 0.4.9
* Updated components/hangouts/strings.json and generated translation string by running script/translations_develop
Reduced verbosity of modifications to components/hangouts/config_flow.py
* Added option to use manual authentication for google hangout component
See: https://hangups.readthedocs.io/en/latest/user_guide.html#logging-in for manual log in example
Bumped up version of hangups to 0.4.9
* Updated components/hangouts/strings.json and generated translation string by running script/translations_develop
Reduced verbosity of modifications to components/hangouts/config_flow.py
* fixing missing rebase
* Store gateways inside a dict in deconz domain
* Make reachable events gateway specific
* Gateway shall always exist
* Adapt new device signalling to support multiple gateways
* Services follow gateway master
* Working on unload entry
* Make unload and master handover work
Improve tests for init
* Fix config flow
* Fix linting
* Clean up init tests
* Clean up hassio discovery to fit with the rest
* Store gateways inside a dict in deconz domain
* Make reachable events gateway specific
* Gateway shall always exist
* Adapt new device signalling to support multiple gateways
* Services follow gateway master
* Working on unload entry
* Make unload and master handover work
Improve tests for init
* Fix config flow
* Fix linting
* Clean up init tests
* Clean up hassio discovery to fit with the rest
* Add support for services to specify bridgeid
* Raise ConfigEntryNotReady for connection exception
Raise ConfigEntryNotReady for the connection exception like if the MQTT Server container/device is being restarted or was unavailable on boot.
* Add new exception
* grammar fix
* Possibly resolve hound comments
* raise `ConfigEntryNotReady` for mqtt connection error
* revert exceptions.py
* Update exceptions.py
* modify test to handle exception
* use constants to control exception scope
* Raise ConfigEntryNotReady for connection exception
Raise ConfigEntryNotReady for the connection exception like if the MQTT Server container/device is being restarted or was unavailable on boot.
* Add new exception
* Add new exception
* grammar fix
* Possibly resolve hound comments
* raise `ConfigEntryNotReady` for mqtt connection error
* revert exceptions.py
* Update exceptions.py
* modify test to handle exception
* use constants to control exception scope
* revert test change as it's not the same thing
* Update test_init.py
* Add test for MQTT OSError
* revert file changes from a bad rebase
* Rewrite test with valid syntax
* rewrite test to be less ambiguous
* add empty line
* add back 'axis'
* Remove empty line
* Update tests and undo merge from earlier
* correctly restore test for no connect broker
* fix test mock correctly
* line was too long. hit enter.
* Add mobile_app notify platform
* Requested changes
* Fix incorrect param for status code
* Move push_registrations to notify platform file
* Trim down registration information sent in push
* quotes
* Use async version of load_platform
* Add warning for duplicate device names
* Switch to async_get_service
* add mobile_app.notify test
* Update tests/components/mobile_app/test_notify.py
* Update tests/components/mobile_app/test_notify.py
* [Hue API] Add color support
Adds color support to the hue api (specifically hue/saturation). Switched from using a tuple to convey state internally to using a dict to make adding new fields easier.
* [Hue API] Add unit test for color support
* Discovery can update host on existing entries
* Add support in device to update host on entry update
* Fix tests and listener
* Fix hound comment
* Fix failing tests from cleanup
* Use latest client library, evohomeclient v0.3.1
* Fix issue #22097: Failed to call service climate/turn_on...
* BUGFIX: handle case where a Zone doesn't have a temperature
* BUGFIX: missing exception handler, and inappropriate delint hints
* Improve exception handling, and also better messages
* improve code (REDACT secrets); remove TODOs
* minor refactor - improve error message
* more refactoring - improve error message
* remove TODOs
* update to latest evohomeclient library
* Use latest client library, evohomeclient v0.3.1
* Fix issue #22097: Failed to call service climate/turn_on...
* BUGFIX: handle case where a Zone doesn't have a temperature
* BUGFIX: missing exception handler, and inappropriate delint hints
* Improve exception handling, and also better messages
* improve code (REDACT secrets); remove TODOs
* minor refactor - improve error message
* more refactoring - improve error message
* remove TODOs
* update to latest evohomeclient library
* fix requests for houndci-bot
* Tidy up requests exception handling
* Correct lint error
* update to latest client library
* minor de-lint
* more cleanup of exceptions, messages
* refactored for new exception
* fix error in requirements*_all.txt
* de-lint
* delint unused import
* import 3rd-party library only inside methods
* change honeywell tests
* delint, fix typo
* we dont log usernames, passwords, etc.
* de-lint
* initial commit
initial commit
rewrite tests
fix merge issue with fan component
fix merge issue with fan component
* correct line length
* change to sync_setup_component for tests
* rename services and move services.yaml
* move hepa and carbon filter state from sensor to fan
* add test for duplicate entities
* fix method call tests
* fix docstring
* Add select source support
* Review feedback changes
* Removed unused import
* Ignore 'umused' import used in typing
* Only include trace back on useful errors
* Remove return from play_source
## Description:
Adds a new `mobile_app` webhook command, `get_zones`, which just returns all zones.
## Checklist:
- [x] The code change is tested and works locally.
- [x] Local tests pass with `tox`. **Your PR cannot be merged unless tests pass**
- [x] There is no commented out code in this PR.
* Add permission checking to all RainMachine services
* Linting
* Some initial work
* Owner comments
* Test in place (I think)
* Linting
* Update conftest.py
* Option to send pin code with the MQTT payload for MQTT alarm
* publish code via json
Add publish code via json
add code_disarm_required
* publish code via json
Add publish code via json
add code_disarm_required
* implemented command_template
* Fix issue with night arm and add template test
* implemented value_template for mqtt alarm
* Fixed merge errors
* Requested changes
* Resolve lint errors
* Resolve hound issues
* Fix test formatting
* The Great Migration
* removed outdated tests
* Upgraded enturclient to v0.2.0
- client has gone async
- configurable if non boarding departures should be omitted from result
- configurable how many departures should be shown
- more clear which attributes are included and when
* reduced nesting and clearing of attributes
* Removed test data
* ensure attribution and stop id in attributes
* docstring fixes
* fix rebase errors
went a bit too fast on continue on one of the conflicts..
* fix test requirements comment from gen