Home Assistant 0.117 Beta

Home Assistant 0.117 Beta

Home Assistant 0.117 Beta

social

These are the beta release notes for Home Assistant 0.117.0.

If you encounter any issues, please report them on GitHub:

Please be sure to include the beta version you are running in the issue
description (not title), so we can classify your issue correctly.

Issues introduced in the beta are processed with priority.

TODO:

  • Introduction
  • Core/backend topics
  • frontend topics
  • screenshots
  • noteworthy changes

Table of contents:

Quick search/nav/open Home Assistant 0.117 Beta

Nice new feature to open up a quick search dialog from the frontend. Bit
like VSCode

Home Assistant 0.117 Beta
Home Assistant 0.117 Beta

You can now lorem ipsum; adjust the lorem and ipsum info.

Compact header Home Assistant 0.117 Beta

https://github.com/home-assistant/frontend/pull/7369

Native types support for templates

Ever tried to make a list of entities or set a RGB color via an template?
If so, you probably would have learned, that it is not that simple. In Home
Assistant, the result of a template always have been a piece of text (a string),
even if you made a list.

This release adds support for native Python types in template. This means that
template now actually can create lists, or return a number!

script:
  my_script:
    alias: Example
    description: Example script with native lists in templates
    variables:
      entities:
        - light.living_room_window
        - light.living_room_table
      color: [255, 0, 0]
    sequence:
      service: light.turn_on
      data:
        entity_id: "{{ entities }}"
        rgb_color: "{{ color }}"

This is an extremely powerful change to our template engine that allow for
more advanced future and can significantly reduce the complexity of existing
templates in your set up.

Please be sure to check the breaking changes section, as this feature might
impact your existing templates.

Scriptomation YAML editor Home Assistant 0.117 Beta

https://github.com/home-assistant/frontend/pull/7273

Counters & Timers available as helpers in the UI Home Assistant 0.117 Beta

Counters & Timers are now available as a helpers in the UI.

https://github.com/home-assistant/frontend/pull/7346
https://github.com/home-assistant/frontend/pull/7366

Xbox

Xbox now a full blown integration, created by @hunterjm.

Other noteworthy changes Home Assistant 0.117 Beta

  • @frenck wrote this lorem ipsum. Awesome!

Something something… New Nest API suuport. Minimal, no thermostat yet. But,
there is a base now, which will be extended the upcoming releases.

Other candidates for this section:

New Integrations Home Assistant 0.117 Beta

We welcome the following new integration this release:

New Platforms Home Assistant 0.117 Beta

The following integration got support for a new platform:

Integrations now available to set up from the UI Home Assistant 0.117 Beta

The following integrations are now available via the Home Assistant UI:

If you need help…

…don’t hesitate to use our very active forums or join us for a little chat.

Experiencing issues introduced by this release? Please report them in our issue tracker. Make sure to fill in all fields of the issue template.

Breaking Changes Home Assistant 0.117 Beta

Below is a listing of the breaking change for this release, per subject or
integration. Click on one of those to read more about the breaking change
for that specific item.

RFXtrx

The integration is now set up via the UI. YAML support has been limited to
an (automatic) one-time import. You can safely remove the YAML configuration
after upgrading.

Options are now set through the UI (global options/add device/remove device/change device options).

For newly added or detected devices, device_class cannot be set.

Instead, it should be set by customizing entities:
https://www.home-assistant.io/docs/configuration/customizing-devices/

The debug key is removed as option for the integration. Instead, log level
for the library can be set by configuring the logger (see below).

logger:
  logs:
    RFXtrx: debug

No configuration changes are necessary, to keep existing configs working, the key is still accepted.

(@RobBie1221#39117) (rfxtrx docs)

Templates – native types

Template results are now rendered to native Python types.

Previously, a template would always result in a string (text). This made it hard
to use things like lists, or numbers as a result of a template. For example,
returning a list of entities or a RGB/HS/XY color.

This change may impact your existing templates, as templates now can return
other types; For example, string, float, integer, boolean, lists or dictionaries.

The following templates can be impacted by this:

  • Entities with templated attributes. Attributes keep their native Python type,
    thus if the attribute is used/processed in a template again later,
    the type might be different.
  • Templates working with lists or mappings (dictionaries). Previously, such
    collection would be returned as a text, for example [1, 2, 3, 4, 5]. We’ve
    seen examples where such results are decoded using text processing again
    (e.g., by splitting the result on a , to get the separate values). The
    additional processing is no longer needed, as the returned value will be a
    collection now.
  • Note: The entity state in Home Assistant is always a text (string). Even with
    native types being supported in Templates now, if a results is stored as a
    entity state, they will be converted to an string.

If the new templates cause you to much problems at the time (e.g., you need
time to migrate), you can enable the old behavior again by setting the following
core configuration:

homeassistant:
  legacy_templates: true

Please note, this is a transitional option, which will be removed in the future.

(@frenck#41227)

Templates – rate limits

Previously we implemented a rate limit of 1 update per minute for
states.DOMAIN in templates. This has been changed to an update once every second.

Templates using states (without a domain) still have a rate limit of 1 update per minute.

(@bdraco#42004)

Templates – auto-updating `now()`

The `entity_id:` attribute was recently removed from template entities because
the templates are now able to find all referenced entities automatically. This
removal introduced a new problem where templates using the current time could
no longer use `entity_id: sensor.time` to ensure periodic updates.

With apologies to those who have spent the last couple of releases adding
workarounds to their templates, we are now introducing an auto-refresh feature
to time-based templates.

It is thus no longer necessary to reference sensor.time, sensor.date or manually
update template entities when now() or utcnow() is present in the template.

The template will automatically be updated when:

  • A referenced entity changes state.
  • At the start of each minute when now() or utcnow() is present in the template.

Please note, if you have a time-based template where you do not want it to
update periodically it will now have to be reworked to not use now().

(@bdraco#41147 [#42225])

MQTT

MQTT Discovery is now enabled by default.

(@emontnemery#41361) (mqtt docs)

Netatmo

Sensors for raw battery values and string representation have been dropped.

(@cgtobi#41321) (netatmo docs)

Cast

The host option for the cast integration has previously been deprecated and
is now removed. Configuring media players via the media_player platform was
also deprecated before, and removed in this release as well.

If you use any of those above, you’ll need to migrate to use the new
configuration method. Please see the cast documentation on how to set this up.

(@emontnemery#41402) (cast docs)

Modbus

Climate configuration was moved from the platform directly into the Modbus
integration. This change was required to meet the latest architecture requirements
of Home Assistant.

Example of previous YAML configuration:

climate:
  - platform: modbus
    name: Watlow F4T
    hub: hub1
    slave: 1
    data_type: uint
    data_count: 1
    scale: 0.1
    offset: 0
    precision: 1
    max_temp: 30
    min_temp: 15
    temp_step: 1
    target_temp_register: 2782
    current_temp_register: 27586

Example of new YAML configuration:

modbus:
  - name: hub1
    type: tcp
    host: 127.0.0.1
    port: 5020

    climates:
      - name: Watlow F4T
        slave: 1
        data_type: uint
        data_count: 1
        scale: 0.1
        offset: 0
        precision: 1
        max_temp: 30
        min_temp: 15
        temp_step: 1
        target_temp_register: 2782
        current_temp_register: 27586

(@vzahradnik#32439) (modbus docs)

Elkm1

The bypassed attribute of a zone sensor is removed as it is no longer used.
The bypassed status of a zone can be determined when the logical_status of
a zone has a value of bypassed.

Auto-configure now only configures elements that have a name or description
associated with them. The previous mechanism for automatically detecting if
element are configured on the ElkM1 panel was to note any element that have
attributes different than the elkm1-lib’s defaults. This is error prone and
made the library fragile when defaults change.

(@gwww#41584 #42064) (elkm1 docs)

SimpliSafe

Per ADR-0010,
this PR deprecates YAML configuration for SimpliSafe until 0.119. If you already
use the SimpliSafe integration, you do not need to take action.
Your configuration has already been imported into the UI.

(@bachya#41896) (simplisafe docs)

UpCloud

The UpCloud integration is now configured via the UI. Existing YAML configuration
is automatically imported after upgrading and can be safely removed afterward.

(@scop#37941) (upcloud docs)

Sonarr

Sonarr has fully transitioned to configuration via UI. YAML configuration is
now no longer supported after being deprecated for several releases already.

(@ctalkington#41904) (sonarr docs)

RainMachine

Per ADR-0010,
this PR deprecates YAML configuration for RainMachine until 0.119. If you
already use the RainMachine integration, you do not need to take action.
Your configuration has already been imported into the UI.

(@bachya#41971) (rainmachine docs)

ISY994

This update to PyISY adds native support for decimal precision in ISY Variable
sensors, any template sensors created to adjust the rounding or precision shown
in Home Assistant should be updated/removed.

The way logging is handled in PyISY has been changed. If you previously set a
different logging level for homeassistant.components.isy994 in your logger
configuration, you will also need to set the level for pyisy and/or
pyisy.events.

Two changes may cause some entities to change platforms; however, this should
only affect NodeServer nodes:

  • ISY Nodes that use the ON/OFF unit of measurement and cannot be
    categorized/sorted by another method have been moved from switch to
    binary_sensor since it cannot be confirmed if the device supports DON/DOF
    commands. The isy994.send_node_command service may be used to control these
    devices if you know they are controllable.
  • The status of all nodes is now downloaded before sorting devices, as a result
    some nodes which defaulted to sensor will now be correctly sorted.

Sensor values which use the ISY994’s “index” unit of measurement (UOM=25) now
report the “formatted” text value shown in the ISY Admin Console, instead of the
integer index. If you have any automations or templates relying on these values,
they must be updated.

(@shbatm#42043 #42050) (isy994 docs)

onewire

Despite the project name, the owfs package (which depends on fuse and exposes
filesystem calls in the appropriate directory to this program itself) is NOT
recommended for any real use, it has well known issues with races etc.

The owfs/fuse implementation is therefore deprecated in favour of the owserver
implementation.

Before this release:

sensor:
  - platform: onewire
    mount_dir: /mnt/1Wire

After this release:

sensor:
  - platform: onewire
    host: localhost

(@epenet#42041) (onewire docs)

Cloudflare

Cloudflare is now available exclusively via the Integrations UI. This means its
no longer configured in YAML. Existing configurations are not imported as API
Tokens are now used to authenticate. Refer to integration documentation on how
to setup via UI.

(@ctalkington#41167) (cloudflare docs)

Farewell to the following

  • The Australian Bureau of Meteorology (BOM) integration has been removed.
    It was using webscraping to gather its data, which is not allowed.
    (@balloob#41941)

All changes Home Assistant 0.117 Beta

Click to see all changes!

Home Assistant 0.117 Beta

Home Assistant 0.116