In this release a ton of new stuff! And who doesn’t like new stuff? This release we’re passing the 700 integrations for Home Assistant. As of today we’re 1369 days old, which means that roughly every two days a new integration gets added!
Python Scripts
The biggest change is a new type of script component: Python scripts. This new component will allow you to write scripts to manipulate Home Assistant: call services, set states and fire events. Each Python script is made available as a service. Head over to the docs to see how to get started.
Updater
The updater has received a new opt-in option to let us know which components you use. This will allow us to focus development efforts on the components that are popular.
updater:
include_used_components: true
And as a reminder. We will never share gathered data in a manner that can be used to identify anyone. We do plan on making aggregate data public soon. This will include total number of users and which hardware/software platform people use to run Home Assistant.
Z-Wave
Z-Wave is also getting a big update in this release. The confusing entity_ids will be on their way out. There is a zwave blog post that gives more detail, but the upgrade steps will be as follows:
- Run Home Assistant as normal and the old IDs will still be used.
- The new entity IDs will be shown in the more-info dialog for each entity. Check to make sure none of them will have conflicts once the new names are applied.
- Rename entities using the ui card as described in the blog post to avoid conflicts. Restart Home Assistant to observe the changes.
- Update all places mentioning IDs (groups, automation, customization, etc.) in configuration.yaml.
- Add
new_entity_ids: true
to your zwave config. - Restart Home Assistant to run with new IDs.
- The old entity IDs will be available in the more info dialog to trace down any remaining errors.
Monkey Patching Python 3.6
Some people have noticed that running Home Assistant under Python 3.6 can lead to segfaults. It seems to be related to the earlier segfault issues that we experienced when we released the asyncio-based core. We thought that those issues would have been fixed when Python bug 26617 was resolved. Although we see less reports compared to the old bug, there are still users experiencing them (gdb stacktrace points at PyObject_GC_Del()
).
Since Python 3.6, the Task and Future classes have been moved to C. This gives a nice speed boost but also prevents us from monkey patching the Task class to avoid the segfault. Ben Bangert managed to brew up another monkey patch to stop Python 3.6 from using the C classes, falling back to the Python versions instead. This allows us to apply the original monkey patch again.
Both monkey patches are now active by default starting version 0.47 to avoid our users experiencing segfaults. This comes at a cost of not being able to benefit from all optimizations that were introduced in Python 3.6.
To run without the monkey patch, start Home Assistant with HASS_NO_MONKEY=1 hass
. We will further investigate this issue and try to fix it in a future version of Python.
Release 0.47.1 - June 21
- Fix Vera lights issue #8098 (@tsvi - #8101) (light.vera docs)
- Fix Dyson async_add_job (@CharlesBlonde - #8113) (fan.dyson docs) (sensor.dyson docs)
- Update InfluxDB to handle datetime objects and multiple decimal points (@philhawthorne - #8080) (influxdb docs)
- Fixed iTach command parsing with empty data (@alanfischer - #8104) (remote.itach docs)
- Allow iteration in python_script (@balloob - #8134) (python_script docs)
New platforms
- Added a Taps Aff binary sensor (@bazwilliams - #7880) (binary_sensor.tapsaff docs) (new-platform)
- lock.sesame: New lock platform for Sesame smart locks (@trisk - #7873) (lock.sesame docs) (new-platform)
- Etherscan.io sensor (@nkgilley - #7855) (sensor.etherscan docs) (new-platform)
- blockchain.info sensor (@nkgilley - #7856) (sensor.blockchain docs) (new-platform)
- Add Radarr sensor (@tboyce021 - #7318) (sensor.radarr docs) (new-platform)
- Added buienradar sensor and weather (@mjj4791 - #7592) (sensor.buienradar docs) (weather.buienradar docs) (new-platform)
- Add support for Vanderbilt SPC alarm panels and attached sensors (@mbrrg - #7663) (spc docs) (alarm_control_panel.spc docs) (binary_sensor.spc docs) (new-platform)
- Add raspihats switch (@florincosta - #7665) (switch.raspihats docs) (new-platform)
- Add juicenet platform (@jesserockz - #7668) (juicenet docs) (sensor.juicenet docs) (new-platform)
- add ripple sensor (@nkgilley - #7935) (sensor.ripple docs) (new-platform)
- New component: Python Script (@balloob - #7950) (python_script docs) (new-platform)
- Nadtcp component (@mwsluis - #7955) (media_player.nadtcp docs) (new-platform)
- Add Gitter.im sensor (@fabaff - #7998) (sensor.gitter docs) (new-platform)
- Update mailgun (@happyleavesaoc - #7984) (mailgun docs) (notify.mailgun docs) (breaking change) (new-platform)
- Add Flexit AC climate platform (@Sabesto - #7871) (climate.flexit docs) (new-platform)
If you need help…
…don’t hesitate to use our very active forums or join us for a little chat. The release notes have comments enabled but it’s preferred if you use the former communication channels. Thanks.
Reporting Issues
Experiencing issues introduced by this release? Please report them in our issue tracker. Make sure to fill in all fields of the issue template.
Read on →