Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.63 #12267

Merged
merged 167 commits into from
Feb 10, 2018
Merged

0.63 #12267

merged 167 commits into from
Feb 10, 2018

Conversation

balloob
Copy link
Member

@balloob balloob commented Feb 9, 2018

Date set for dropping Python 3.4 support

As announced in October, we're going to drop Python 3.4 support in 2018. We've now decided that in two releases, 0.65, the minimum Python version that will be supported is bumped to 3.5.3. This won't impact most users. You are already fine if you're using Hass.io, the latest Debian stable (Stretch) or a derivative of that (Raspbian, Ubuntu).

Entity Registry

This release introduces the entity registry. The entity registry allows integrations to reserve entity IDs. This means that we'll automatically grant an entity ID to a device. It's reserved so that no other device will ever get that entity ID. It also means that as a user, you will be able to customize the entity IDs for these devices.

For an integration to leverage the entity registry, it needs to define a unique ID for each of their entities. A unique ID is something that we can uniquely identify the device and that is not configurable. So a serial number and mac address are ok, IP addresses or names are not.

Examples of integrations that have unique IDs defined in this release are Z-Wave, Hue, Nest, LIFX, Sonos, Apple TV.

To update the entity ID that will be assigned to your device, update <config>/entity_registry.yaml and restart Home Assistant (reloading on the fly is planned for a future release).

The entity registry will assign an entity ID the first time that a device is seen. This should be the same entity ID as it always was before. If this is not the case, update the registration entity to change it back to the old entity ID.

We're planning a lot of cool stuff around the entity registry. Stay tuned!

New Platforms

Breaking Changes

  • updated sensor name (@philklei - #12084) (sensor.tahoma docs) (breaking change)

  • Originally Canary camera is added per location and only displays an image that was captured due to motion. Now it is per device (each location can have multiple devices) with live stream support. (@snjoetw - #11949) (canary docs) (camera.canary docs) (breaking change)

  • Avoid influxdb filling connection pool: The influxdb retry_queue_limit configuration variable no longer has any effect and can be removed. (@amelchio - #12182) (influxdb docs) (breaking change)

  • Some spelling mistakes in default entity names have been fixed in (@OttoWinter - #12041). This is causing these entity_id changes:

    • Seven segments display: image_processing.seven_segement_ocr_[...]image_processing.seven_segment_ocr_[...]
    • Rain Bird Switch: switch.sprinker_[...]switch.sprinkler_[...]
    • OpenEVSE Sensor: sensor.ambient_termperaturesensor.ambient_temperature
    • Fido: sensor.[...]_internaltional_remainingsensor.[...]_international remaining
  • From version 0.64, Home Assistant will by default purge recorded state history that is older than 10 days. If you want to keep your recorded data for longer than that, you must configure the number of days to retain:

    recorder:
      purge_keep_days: 30

    If you want to keep the previous default of never deleting history, use this configuration:

    recorder:
      purge_interval: 0

    (@amelchio - #11976)

  • Fix duplicate entity_ids in System Monitor (@fanaticDavid - #12124) (sensor.systemmonitor docs) (breaking change)

    Resource Old Entity ID New Entity ID
    disk_use sensor.disk_used sensor.disk_use
    load_15m sensor.average_load_15m sensor.load_15m
    load_1m sensor.average_load_1m sensor.load_1m
    load_5m sensor.average_load_5m sensor.load_5m
    memory_free sensor.ram_available sensor.memory_free
    memory_use sensor.ram_used sensor.memory_use
    network_in sensor.received sensor.network_in
    network_out sensor.sent sensor.network_out
    packets_in sensor.packets_received sensor.packets_in
    packets_out sensor.packets_sent sensor.packets_out
    processor_use sensor.cpu_used sensor.processor_use
    swap_use sensor.swap_used sensor.swap_use
  • Developers only: Following EntityComponent methods have been removed: extract_from_service, async_update_group, async_reset, prepare_reload (@balloob - #12237) (breaking change)

All changes

balloob and others added 30 commits January 25, 2018 23:26
* Allow setting climate devices to AUTO mode via Google Assistant

* Remove cast to lower

* Clarify const name
* Add API to write error log

* Move write_error api to system_log.write service call

* Restore empty line
…11925)

* Fixed rfxtrx binary_sensor KeyError on missing optional device_class

* Fixed rfxtrx binary_sensor KeyError on missing optional device_class
* Base platform in place

* Logic in place

* Requirements and coverage

* Fixed some linting issues

* Small attribute reorganization

* Collaborator-requested changes round 1

* Updated documentation
Adding tests to check the component after latest patch
* Allow relative url

* Allow absolute urls in config schema

* change after pylint build

* Add tests and change error message

* Change regex to check starting forward slash only

* Change error message and const name
* Panel_Iframe - Allow relative urls in config

* change regex to check for starting forward slash only

* Change error message and const name
* Remove snips endSession response on unknownIntent

* Removed snips_response for unknown and error.
Sensor can measure temperature below -20, but maybe not so accurate, but no need to discard measurements.
* add goalfeed

* use pysher. begin auth

* auth!

* update params

* cleanup

* update library and gen requirements

* unused imports

* case-sensitive

* crazy train

* docstrings and some other fixes

* remove logging

* unused imports

* import in setup

* move import

* Update based on notes

* add timeout

* It's only a component

* Update docstrings
…11996)

* Added support for hourly percent change (percent_change_1h)

* Fixed display of 1h percent change
balloob and others added 4 commits February 9, 2018 14:34
* Correct time on recorder loaded values in statistics sensor

Previously, the current time was used when initial values was loaded
form the recorder component. This changes that to use the stored time
from recorder instead.

Signed-off-by: Anton Lundin <glance@acc.umu.se>

* Expose min / max age of values in the statistics sensor

This is very useful when doing derived calculations, for example in a
template sensor.

Signed-off-by: Anton Lundin <glance@acc.umu.se>
@c727
Copy link
Contributor

c727 commented Feb 10, 2018

Spelling fixes (@OttoWinter - #12041) (breaking change)
we should list all those breaking changes here so users can use Ctrl+F

@balloob
Copy link
Member Author

balloob commented Feb 10, 2018

Each PR with breaking changes contains a paragraph in the description that will be copy pasted to the release notes. Feel free to help with that.

@covrig
Copy link
Contributor

covrig commented Feb 10, 2018

Regarding to the entity registry introduction. I've been facing a bunch of issues with 0.62 (mainly ZWave - some sensors were gone, name changes, multiple values being sent in the same time under the same sensor name, state value swapping with attributes etc.).
Are these issues addressed? A lot of users will have a bad time.
References: #12239 #11997

@@ -23,7 +23,7 @@
from homeassistant.core import callback
from homeassistant.loader import bind_hass

REQUIREMENTS = ['home-assistant-frontend==20180130.0', 'user-agents==1.1.0']
REQUIREMENTS = ['home-assistant-frontend==20180209.0', 'user-agents==1.1.0']
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this include chartsjs? If yes - it is possible to use an earlier version? This is a significant change - we should let it soak in dev

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It does not. I tagged it before I merged the chart js

@fabaff fabaff mentioned this pull request Feb 10, 2018
2 tasks
@balloob
Copy link
Member Author

balloob commented Feb 10, 2018

@covrig I don't know if it has been addressed. Look at the change log? Lots of changes.

@covrig
Copy link
Contributor

covrig commented Feb 10, 2018

@balloob I took a look at the change log and it seems the entity registry should fix most of the problems, but I suspect not all of them. The problems were caused by #11691. Let's see.

@balloob
Copy link
Member Author

balloob commented Feb 10, 2018

I doubt that that PR would cause issues of missing devices? You have a link to a log?

escoand and others added 3 commits February 10, 2018 13:11
* allow wildcards in subscription

* remove whitespaces

* make function public

* also implement for mqtt_json

* avoid mqtt-outside topic matching

* add wildcard tests

* add not matching wildcard tests

* fix not-matching tests
* Use less threads in helpers.event tests

* Add helpers.event.async_call_later

* Cloud: retry fetching keyset
* Update limitlessled requirement to v1.0.9

* trigger cla

* take back empty line
@balloob balloob merged commit 0e16f7f into master Feb 10, 2018
@balloob balloob deleted the release-0-63 branch February 10, 2018 22:00
@covrig
Copy link
Contributor

covrig commented Feb 10, 2018

@balloob Sadly, i have no log. However, between 0.61.1 and 0.62 I didn't see anything else that could have caused this. The devices/sensors/attributes are not missing. More of them use in the same time the same entity id name. They keep swapping places.

@dotlambda
Copy link
Contributor

Is there a reason for the tag on GitHub being 0.63 but the version on PyPI being 0.63.0?

@balloob
Copy link
Member Author

balloob commented Feb 10, 2018

No

@dotlambda
Copy link
Contributor

Then it would be nice if it were consistent for future releases.

@home-assistant home-assistant locked and limited conversation to collaborators May 29, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.