* Update the icloud device_tracker
* addressed @kellerza 's comments
* GMTT config needs an entity_id
* renamed services
* fix cookiedir and clean up keep_alive function
* fix travis errors
* forgot a self.
* update devices after initializing the API
* changed wording
* addressed changes from @kellerza
* Syntax error solved
* Update icloud.py
* Only use account of username instead of whole username as default for account name
* use slugify instead of slug for schema
* remove Google Maps Travel Time
* Add comment from original tracker back
* Change approved_ips from string to cidr validation
Relabel to trusted_networks, better reflecting its expected inputs,
everything that ipaddress.ip_networks recognizes as an ip network
is possible:
- 127.0.0.1 (single ipv4 addresses)
- 192.168.0.0/24 (ipv4 networks)
- ::1 (single ipv6 addresses)
- 2001:DB8::/48 (ipv6 networks)
* Add support for the X-Forwarded-For header
* Host should be optional for apcupsd component (#3072)
* Zwave climate Bugfix: if some setpoints have different units, we should fetch the o… (#3078)
* Bugfix: if some setpoints have different units, we should fetch the one that are active.
* Move order of population for first time detection
* Default to config if None unit_of_measurement
* unit fix (#3083)
* humidity slider (#3088)
* If device was off target temp was null. Default to Heating setpoint (#3091)
* Fix for BLE device tracker (#3019)
* Bug fix tracked devices
* Added scan_duration configuration parameter
* fix homematic climate implementation (#3114)
* Allow 'None' MAC to be loaded from known_devices (#3102)
* Climate and cover bugfix (#3097)
* Avoid None comparison for zwave cover.
* Just rely on unit from config for unit_of_measurement
* Explicit return None
* Mqtt (#11)
* Explicit return None
* Missing service and wrong service name defined
* Mqtt state was inverted, and never triggering
* Fixed Homematic cover (#3116)
* Add missing docstrings (fix PEP257 issues) (#3098)
* Add missing docstrings (fix PEP257 issues)
* Finish sentence
* Merge pull request #3130 from turbokongen/zwave_fixes
Bugfix. climate and covermqt
* Back out insteon hub and fan changes (#3062)
* Bump version
* Special frontend build for 0.27.2
* Add action and callback support to html5 (#2855).
Remove registrations from the callback view since we always get the latest anyway.
We dont put an audience in the claims so we will never hit this error.
Bring tests back up to where they were before callbacks.
Only import jwt where necessary
Fix bracket spacing errors
Fix JWT decode check for loop
Remove stale comment.
Add tests for the callback system.
Shorten line
Disable pylint broad-except and change e to jwt_decode_error.
Verify expiration
Remove duplicate jwt.exceptions.DecodeError
Catch no keys matched and return False
* Switch to using registrations for callbackview instead of json_path
* Only check for URL and such if the data object actually exists
* raise instead of return
* cleanup decode_jwt
* Clean up JWT errors
* Correctly set status_code to 401
* Improve JWT by adding target to claims and attempting to check the given target for a decode match first, as well as pass the target through in the event payload.
* Add tag support and fix formatting issues
* Pass through any keys that dont apply to the payload into the notification.data dictionary
* Remove stale print
* Pass back the data dictionary if it exists
* Actually put the default url even if a notify payload dictionary doesnt exist
* pylint, flake8
* Add subscription validation
* Add validation for the callback event payload and use constants where possible
* Use HTTP_UNAUTHORIZED instead of 401
* Change callback dictionary to dict instead of cv.match_all
* Fix up tests and make subscription required
* Whoops, that test was supposed to fail
* Use the result of CALLBACK_EVENT_PAYLOAD_SCHEMA as event_payload
* Add a test for html5 callback decode_jwt where the device has been renamed since notification has been sent.
* Remove the loop through logic, assume that target is always in JWT
* Always return something instead of possibly None.
* Update frontend
* Initial work to add Chrome Push Notification support
* Remove push.js from home-assistant since it is now in Polymer
* Chrome->HTML5, general cleanup/fixes
* Make html5 generic, move manifest.json into frontend so that we can dynamically add the gcm_sender_id
* Pylint, flake8, pydocstyle frontend init
* HTML5 push fixes
* Update polymer
* Remove crypto req
* Add notify default platform.
* Fix HTML5 push
* Registration fixes
* Linting fix
* pep257 fix
* Add tests
* pep257 fix
* Update frontend
* Use local timezone for log and history dates
* home-assistant-js fix
* Submodule updates not included so travis can build
* Separate Date and DateTime http validators
* Include submodule reference
* Update frontend
* Added Sony Bravia support to HA
* Improvements to make it work on my poor raspberry 1
* Just a typo
* A few fixes in order to pass pylint
* - Remove noqa: was due to the 80 characters max per line restriction
- Move communication logic to a separate library at https://github.com/aparraga/braviarc.git
- Added dependency and adapt the code according to that
* A few improvements
* Just a typo in a comment
* Rebase from HM/dev
* Update requirements by executing the script/gen_requirements_all.py
* More isolation level for braviarc lib
* Remove unnecessary StringIO usage
* Revert submodule polymer commit
* Small refactorization and clean up of unused functions
* Executed script/gen_requirements_all.py
* Added a missing condition to ensure that a map is not null
* Fix missing parameter detected by pylint
* A few improvements, also added an empty line to avoid the lint error
* A typo
* Update frontend
Conflicts:
homeassistant/components/frontend/version.py
homeassistant/components/frontend/www_static/core.js.gz
homeassistant/components/frontend/www_static/frontend.html
homeassistant/components/frontend/www_static/frontend.html.gz
homeassistant/components/frontend/www_static/home-assistant-polymer
homeassistant/components/frontend/www_static/service_worker.js
homeassistant/components/frontend/www_static/service_worker.js.gz
* Add a default OPTIONS handler for wsgi (#2301)
When a browser makes a CORS request, it often makes a 'preflight'
options request in order to make sure the resource is valid, and that
it has the right CORS access. This adds a default OPTIONS handler for
all views. If a view needs to customize the OPTIONS handler for some
reason, it's free to, but this way CORS will work.
* Version bump to 0.21.2
This is a fair chunk of the way towards adding a WSGI compatible stack
for Home Assistant. The majot missing piece is auth/sessions. I was
undecided on implementing the current auth mechanism, or adding a new
mechanism (likely based on Werkzeug's signed cookies).
Plenty of TODOs...
* We need to allow extra keys on top level componenet config
fixes#1756
* Add comment about location of hass (fixes#1723)
* Fix for MQTT config validation on the protocol field. (#1765)
* Update frontend with weblink fix
* Fix for light service validation. (#1770)
Incorrect validation tested if passed value was a list instead of
a member of the list.
* Accept group without entities in configuration. (#1768)
* Accept group without entities in configuration.
People seem to use these as placeholders for future expansion of their
home automation dreams, and we used to accept them. We still have to
specify at least one of 'name', 'view' or 'icon' so that the group is
parsed as a dictionary.
* Also accept empty entities: key in a group.
* Additional fix for empty entities value in a group config.
* Version bump to 0.17.1