---
layout: post
title: "0.112: Making things faster; Logbook & History"
description: "0.112: Performance improvements for the logbook and history, conditions enhancements, automatically disconnecting UI and some things moved around in the UI"
date: 2020-07-01 00:00:00
date_formatted: "July 1, 2020"
author: Franck Nijhof
author_twitter: frenck
comments: true
categories: Release-Notes
og_image: /images/blog/2020-07-0.112/social.png
---

<a href='/integrations/#version/0.112'><img src='/images/blog/2020-07-0.112/social.png' style='border: 0;box-shadow: none;'></a>

And another three weeks passed! Home Assistant Core 0.112!

At this point, I almost feel like "Making things easier" as the motto for our
current development is replaced by: **Making things faster!** 🚀

The last couple of releases, tons of performance improvements where made, most
notably the frontend starting sooner in the previous
[0.111 release](/blog/2020/06/10/release-111/).

This release is no exception, bringing absolutely game-changing performance
improvements to the logbook and history panels. Honestly, I avoided using the
logbook in the past because of the slowness it had.

Personally, I feel like Home Assistant is growing up. Slowly things become more
reliable, faster, easier to use, slick, more fine-grained?
I might be biased a bit... What do you think? What is your favorite improvement
that was made lately?

Enjoy the release!

../Frenck

## Important upgrade notice!

Let's start with an important notice for upgrading to Home Assistant Core 0.112.

This release has changes to the database format of Home Assistant. On upgrade,
it will be migrated to the new format.

Depending on the size of your database and the performance of the hardware you
run Home Assistant on, this migration process could add additional time to the
first time starting after the upgrade. For most of us, this adds just a couple
of minutes, but if you have an enormous database (for example, 30+ GiB),
it might take an hour or maybe even two.

So, don't panic if Home Assistant doesn't come up immediately.

## Logbook and History 🚀

The reason for the above-mentioned database change can be found in the
Logbook & History. Thanks to [@bdraco], who has been improving this part
of Home Assistant the past weeks.

As a result of his effort, the History & Logbook are now lightning fast. ⚡️

Not a tiny bit faster, but a whole new experience compared to how it used to
be. Fantastic work there [@bdraco]!

## Logbook and History now have a date/time range picker

So, [@bramkragten] stepped on the Logbook & History train and made the logbook
and history panels a lot more flexible.

You no longer have to choose between a fixed period to show, but can define
the period you want to see data for yourself.

Select a start and end date and time window and it will show just that data.

<p class='img'>
<img src='/images/blog/2020-07-0.112/datetime-picker.png' alt='Screenshot of the new date/time picker'></a>
Screenshot of the new date/time picker.
</p>

By default it no longer shows a full day of data, but just a couple of hours so
it is even quicker to load. As most of the time, one would look at recent
events anyways.

## The user that made a change visible in the logbook

Talking about the logbook, you can now also see who made a change in the
logbook! No more discussion about who changed the temperature!

<p class='img'>
<img src='/images/blog/2020-07-0.112/logbook-who.png' alt='Screenshot of the logbook showing who made the change'></a>
Screenshot of the logbook showing who made the change.
</p>

## Multiple entities and states in YAML automations

Are you writing your automations in YAML? You might appreciate this one:

A single condition rule can now test if multiple entities match the condition.
Furthermore, states and zones now also accept a list in a condition. That helps
testing if the entity matches any of the ones listed.

So this:

```yaml
condition:
  - condition: state
    entity_id: light.kitchen
    state: "on"
  - condition: state
    entity_id: light.living_room
    state: "on"
  - condition: state
    entity_id: light.office
    state: "on"
```

Can now be shortened to this:

```yaml
condition:
  - condition: state
    entity_id:
      - light.kitchen
      - light.living_room
      - light.office
    state: "on"
```

An example that tests if the alarm is in any of the specified states:

```yaml
condition:
  - condition: state
    entity_id: alarm_control_panel.home
    state:
      - armed_home
      - armed_away
```

And this condition is now also passing when Frenck is at home or at work
(fake, of course, since Frenck works from his home).

```yaml
condition:
  - condition: zone
    entity_id: device_tracker.frenck
    zone:
      - zone.home
      - zone.work
```

Or combine! The following condition would pass if both Frenck and Daphne
are either at home or in the work zone.

```yaml
condition:
  platform: zone
  entity_id:
    - device_tracker.frenck
    - device_tracker.daphne
  zone:
    - zone.home
    - zone.work
```

## Integration specific panels are now on the integrations page

Some integrations, like ZHA, Z-Wave and MQTT have their own panels or dev tools.
For things like pairing devices or publishing MQTT messages.

These used to be on the configuration page or development tools, which was weird
because the integration settings would be on the integrations page. ZHA also had
a lot of device settings in its own panel, resulting in a lot of duplicate
functionality spread across the Home Assistant interface.

These panels and tools are now moved to the integrations pages, directly within
the integration that provides those. You can find them on the card of the
integration at the `Configure` button.

<p class='img'>
<img src='/images/blog/2020-07-0.112/configure-mqtt.png' alt='Screenshot of the MQTT configure button'></a>
Screenshot of the MQTT configure button.
</p>

The device-specific settings are now available on the device page, so we now
have 1 place to go for information and settings for devices.

<p class='img'>
<img src='/images/blog/2020-07-0.112/zha-device.png' alt='Screenshot of a ZHA device'></a>
Screenshot of a ZHA device.
</p>

In the process, we also cleaned some things ups, like adding a device in ZHA.
If you change the name of the device while adding it, the entities and entity
IDs are named accordingly.

## New home for the logs and information pages

More moving this release, the logs and information pages used to be in the
development tools panel, but they didn't really belong there. They aren't
really tools for developing, they provide information on your set up.

We moved them to the configuration page where they are joined with server
management and the general configuration.

<p class='img'>
<img src='/images/blog/2020-07-0.112/new-home.png' alt='Screenshot of the new home for logs & information'></a>
Screenshot of the new home for logs & information.
</p>

## Automatically disconnect if a tab has been hidden for 5 minutes

An improvement in the battery of your device and your data cap are going to
like:

When the Home Assistant UI is not visible for longer than 5 minutes, it
disconnects from your Home Assistant server. This means you no longer get data or
camera streams and your device can optimize resource and power consumption.

Of course, when showing the browser (or browser tab) again, it will
automatically reconnect.

## We now show all automation/scenes/scripts

Automations, scenes and scripts in the configuration panel are no longer hidden
when they have the `hidden` attribute. This was erroneously added in the past
and has now been undone.

Talking about the old `hidden` attributes. They have been slowly deprecated
over time, as they originate from the previous Home Assistant UI. As of this
release, this attribute has been completely removed from the system.

## Other noteworthy changes

- [@balloob] has shaved of a couple of seconds from the Home Assistant startup
  again.
- Entities that originate from MQTT will now become "unavailable" when the
  integration is not connected to the MQTT broker. Thanks [@elupus]!
- If you have a Xiaomi vacuum cleaner, [@jthure] added a service to send
  it to specific places using a new goto service.
- The Smappee integration has been fully rewritten, by [@bsmappee] themselves!
- Auto discovery has been added to the NUT integration. Please note that
  some NAS devices might be discovered as they support adding an external
  battery.

## New Integrations

- Add notify_events notify integration ([@papajojo] - [#36049]) ([notify_events docs]) (new-integration)
- Add HVV integration (Hamburg public transportation) ([@vigonotion] - [#31564]) ([hvv_departures docs]) (new-integration)
- Add new Remote Python Debugger integration ([@frenck] - [#36960]) ([debugpy docs]) (new-integration)
- Add new humidifier entity integration ([@Shulyaka] - [#28693]) ([humidity docs]) (new-integration)

## New Platforms

- Add devolo binary_sensor devices ([@2Fake] - [#36370]) ([devolo_home_control docs]) (new-platform)
- Add sensor platform for vicare integration (heatpump) ([@crazyfx1] - [#34385]) ([vicare docs]) (breaking-change) (new-platform)
- Add Withings webhooks ([@vangorra] - [#34447]) ([withings docs]) (new-platform)
- Light control support to Axis devices ([@Kane610] - [#36611]) ([axis docs]) (new-platform)
- Fix/Rewrite of Toon integration ([@frenck] - [#36952]) ([toon docs]) (breaking-change) (new-platform)
- Part 2: Add signal sensor ([@ocalvo] - [#34406]) ([sms docs]) (new-platform)
- Part 3: Add support for incoming sms events ([@ocalvo] - [#37015]) ([sms docs]) (new-platform)
- Add smappee binary_sensor platform ([@bsmappee] - [#37023]) ([smappee docs]) (new-platform)
- Add devolo sensor devices ([@2Fake] - [#37049]) ([devolo_home_control docs]) (new-platform)

## Integrations now available to set up from the UI

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

- [Arcam][arcam_fmj docs], done by [@elupus]
- [Avri][avri docs], done by [@timvancann]
- [Awair][awair docs], done by [@ahayworth]
- [DenonAVR][denonavr docs], done by [@starkillerOG]
- [MetOffice][metoffice docs], done by [@MrHarcombe]
- [Plum Lightpad][plum_lightpad docs], done by [@prystupa]
- [Smappee][smappee docs], done by [@bsmappee]
- [SMS notifications via GSM-modem][sms docs], done by [@ocalvo]
- [Speedtest.net][speedtestdotnet docs], done by [@engrbm87]
- [Squeezebox][squeezebox docs], done by [@rajlaud]
- [Tile][tile docs], done by [@bachya]
- [Xiaomi Aqara][xiaomi_aqara docs], done by [@starkillerOG]

## If you need help...

...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e).

Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/core/issues). Make sure to fill in all fields of the issue template.

<!--more-->

## Breaking Changes

- **Tile**

  This is now available for configuration via the integrations UI. The entity IDs have changed to reflect the human-friendly name of the Tile (as defined in the Tile mobile app). Please update your automations accordingly.

  ([@bachya] - [#36173]) ([tile docs])

- **Panel_Custom**

  Specifying custom panels based on HTML imports is deprecated and will be removed in a future version.

  ([@balloob] - [#36464]) ([panel_custom docs])

- **Avri**

  Avri is now available for configration via the integrations UI. Remove the integration from `configuration.yaml` and re-add it in the UI.

  ([@timvancann] - [#34288]) ([avri docs])

- **Arcam**

  This is now available for configuration via the integrations UI. Remove the integration from `configuration.yaml` and re-add it in the UI. To support the `turn_on` action, you will need to setup an automation based on an exposed event from the integration. This can be accomplished via device actions.

  ([@elupus] - [#34384]) ([arcam_fmj docs])

- **Android TV**

  Usage of the states 'idle' and 'standby' are switched for the Android TV integration to be consistent with other media players. User-provided custom state detection rules are not affected.

  ([@JeffLIrion] - [#36509]) ([androidtv docs])

- **Xiaomi Miio**

  Due to general code updates to the xiaomi_miio vacuum component there are breaking changes to the following services:

  - `xiaomi_miio.vacuum_remote_control_start`
  - `xiaomi_miio.vacuum_remote_control_stop`
  - `xiaomi_miio.vacuum_remote_control_move`
  - `xiaomi_miio.vacuum_remote_control_move_step`
  - `xiaomi_miio.vacuum_clean_zone`

  These all now require that either `entity_id` or `area_id` is passed when calling the service. You need to update all usages (such as automations and scripts) of these services which do not already pass `entity_id` or `area_id`. For example, change the existing automation:

{% raw %}

```yaml
automation:
  - alias: Test vacuum zone
    trigger:
    - event: start
      platform: homeassistant
    condition: []
    action:
    - service: xiaomi_miio.vacuum_clean_zone
      data_template:
        repeats: '{{states('input_number.vacuum_passes')|int}}'
        zone: [[30914,26007,35514,28807], [20232,22496,26032,26496]]
```

{% endraw %}

to:

{% raw %}

```yaml
automation:
  - alias: Test vacuum zone
    trigger:
    - event: start
      platform: homeassistant
    condition: []
    action:
    - service: xiaomi_miio.vacuum_clean_zone
      data_template:
        entity_id: vacuum.xiaomi_vacuum
        repeats: '{{states('input_number.vacuum_passes')|int}}'
        zone: [[30914,26007,35514,28807], [20232,22496,26032,26496]]
```

{% endraw %}

([@jthure] - [#35737]) ([xiaomi_miio docs])

- **Honeywell Total Connect Comfort**

  Remnants of EU integration for Honeywell thermostats have been removed. As the integration was already removed for EU, all consumers should already be US integrations. Existing configurations should remove `region:` lines from their `climate:honeywell` configuration sections.

  ([@jhenkens] - [#36456]) ([honeywell docs])

- **Broadlink**

  The timeout option has been removed from the command learning service because it does not work properly. The device has a fixed timeout of 30 secs, which cannot be changed.

  To adapt to these changes, users need to remove `timeout: num_secs` from calls to the `broadlink.learn_command` service.

  ([@felipediel] - [#36318]) ([broadlink docs])

- **Frontend**

  The `config` integration will always be loaded if you load the frontend integration.
  The configuration panel can no longer be disabled.

  ([@balloob] - [#36587]) ([default_config docs]) ([frontend docs]) ([safe_mode docs])

- **Homematic IP Cloud**

  The HMIP-MOD-TM devices will get a new unique ID due to a merge of the implementation with new HMIP-MOD-HO. So check your dashboards, scripts, automation, ... and use the newly created device/entity. The old device can be deleted under the device section in Home Assistant.

  ([@SukramJ] - [#36595]) ([homematicip_cloud docs])

- **Speedtest.net**

  This integration is now configured through the UI. To successfully import from `configuration.yaml` please remove `monitored_conditions`. If `server_id` is mentioned it will check against the list of servers before importing.

  ([@engrbm87] - [#36254]) ([speedtestdotnet docs])

- **ZHA**

  ZHA sensors corresponding to `AnalogInput` and `MultistateInput` Zigbee clusters have been dropped. These are mostly seen in Aqara vibration/cube devices which are pretty much stateless, so remove entities and rely on `zha_events` instead.

  ([@Adminiuga] - [#36696]) ([zha docs])

- **Yeelight**

  It is no longer be possible to override `device_type` via model from the configuration, to force some supported features. For example, force ceiling light into generic light, etc. Now it will only be used for Yeelight lib, to get correct color temperature ranges. It still possible to pass declared model to the Yeelight library to get correct temperature ranges support.

  ([@zewelor] - [#36658]) ([yeelight docs])

- **Viessmann ViCare**

  Removed existing attributes from the climate entity which are now available as separate sensors. If you were using one of the following attributes, you must migrate to the new sensors. The sensors are created automatically.

  For all heating types:

  - `supply_temperature`
  - `outside_temperature`
  - `circulationpump_active`

  For heating type `gas`:

  - `burner_modulation`
  - `boiler_temperature`

  For heating type: `heatpump`:

  - `return_temperature`

([@crazyfx1] - [#34385]) ([vicare docs]) (new-platform)

- **AlarmDecoder**

Previously the `autobypass` configuration option only worked for `home` and `away` arming. It now works for `night` arming also. Review the AlarmDecoder integration documentation to make sure the `autobypass` option is configured to your preference.

([@ajschmidt8] - [#36692]) ([alarmdecoder docs])

- **Met Office**

  This is now available for configuration via the integrations UI. You will need to ensure you keep a copy of the DataPoint API key handy to re-enable the integration in your server. The location being forecast is, by default, taken as the location of the server, so again if you were forecasting other locations you will need to have those GPS co-ordinates to hand, to re-enter them when configuring new integrations through the UI.

  ([@MrHarcombe] - [#34900]) ([metoffice docs])

- **Logbook**

  Changes have been made which improve db performance of state change events and reduce overall db size.

  - `context_id` has been removed from the logbook api.

  - Remove old/new state data from state change event data since it can now be found by a join of the states table. This change avoids duplicate storage of the state in the events table.

  - Remove support for the deprecated hidden attribute from logbook and history.

  Examples showing how to find the old and new state have been provided in the [States](https://data.home-assistant.io/docs/states) and [Events](https://data.home-assistant.io/docs/events) documentation.

  ([@bdraco] - [#36796], [#36883], [#37039]) ([alexa docs]) ([automation docs]) ([homekit docs]) ([logbook docs]) ([recorder docs]) ([history docs]) ([script docs])

- **Recorder**

  This breaking change only applies to you if you query/work with the Home Assistant database manually.

  `entity_id` validation now default to on when converting states to native. To disable validation when converting states to native, pass `validate_entity_id=False` to `to_native` or when using `execute` with `to_native=True`, pass `validate_entity_ids=False`

  Context ids are no longer duplicated in the `states` table. Join the `events` table on `state.event_id` to `events.event_id` to find the context_id instead.

  For more information about our database structure and how to query it, check out our [Data Science Portal][data-portal].

  ([@bdraco] - [#36938], [#37036]) ([history docs]) ([plant docs]) ([recorder docs]) ([statistics docs])

  [data-portal]: https://data.home-assistant.io/

- **Denon AVR Network Receivers**

  This is now available for configuration via the integrations UI. Please remove the previous Denon AVR platform from your `configuration.yaml` file. Denon and Marantz receivers are discovered automatically and show up under "Configuration"-> "Integrations", from there, click on configure and go through the steps. All previous setting options are still available during this setup.

  If your receiver does not show up automatically, go to "Configuration"-> "Integrations"-> press the "+" icon -> search for "Denon AVR" and enter the setup.

  ([@starkillerOG] - [#35255]) ([denonavr docs])

- **Smapee**

  The Smappee integration has been completely renewed with API v3 to support all types of Smappee monitors (Energy, Solar, Pro, Plus, Genius, Connect, P1S1 module) and switches (Comfort plug, Switch). Existing old entities will still be available in this new integration, but their unique IDs will have changed. Users will need to remove the old remaining entries from the entity registry.

  The `configuration.yaml` file now only requires the `client_id` and `client_secret`. The username and password will be asked on authentication when setting up the integration via the frontend. Please check the documentation for the details how to set up the integration.

  Example YAML configuration:

  ```yaml
  smappee:
    client_id: 1234
    client_secret: 5678
  ```

  ([@bsmappee] - [#36445]) ([smappee docs])

- **Awair**

  The Awair integration is now configured from the UI, but YAML configuration will be automatically imported for you. The integration no longer supports listing specific devices to monitor, because the Awair API rate-limits now apply on a per-device basis, rather than per-account. If you do not wish for a device to show up in the UI, simply disable its entities from the integration page.

  Additionally, the Awair integration no longer sets custom "device_class" attributes for non-standard sensors (such as the "Awair Score" sensor). This does not affect the operation of the sensors, but if you relied on these non-standard values in your configuration you may need to make adjustments.

  ([@ahayworth] - [#34394]) ([awair docs])

- **Hunter Hydrawise**

  Hydrawise made an API change that removed rain sensor status, changed the behavior of the automatic watering switches, and the way in which the watering schedule is reported. As a result, the following breaking changes were made.

  - The rain sensor is no longer available.
  - The `auto_watering` switch state now reports `off` when the corresponding watering zone is actively watering. If `auto_watering` is enabled the switch status will report `off` when watering starts and will return to `on` when watering stops in that zone.
  - The `next_cycle` sensor date & time state string is now reported in UTC ISO format, e.g., `2020-06-18T13:52:27+0000`. Suspended zones no longer report `not_scheduled`.

  ([@ptcryan] - [#34448]) ([hydrawise docs])

- **Xiaomi Gateway (Aqara)**

  YAML configuration of the Xiaomi Aqara integration has been deprecated, please remove the `xiaomi_aqara` platform from your `configuration.yaml` file.

  Xiaomi Aqara Gateways are discovered automatically and show up under "Configuration"-> "Integrations", from there click on configure and go through the steps.
  If your Xiaomi Aqara Gateway does not show up automatically, go to "Configuration"-> "Integrations"-> press the "+" icon -> search for "xiaomi_aqara" and enter the setup. If no key is provided during setup, only the binary_sensor and sensor platforms will be available. A key is required to activate the other platforms.

  ([@starkillerOG] - [#35595]) ([discovery docs]) ([xiaomi_aqara docs])

- **Withings**

  Withings "profiles" in YAML configuration is no longer supported and has been moved into UI-based configuration.

  ([@vangorra] - [#36864]) ([withings docs])

- **Toon**

  The Toon integration has been rewritten to support the new authentication methods from Eneco/Electrabel and Viesgo. After upgrading, go to the integrations panel, to re-authenticate the integration. Please note, that you might need to update your Toon App with a new redirect URL in the Toon Developer portal. Make sure to check the Toon integration documentation for information about the URL to use.

  The `scan_interval` YAML configuration option has been deprecated. It is no longer used, as this integration is now push-based. If you have it configured, please remove it from your configuration.

  The "Holiday Mode" & "Toon Program" binary sensors have been replaced by a "Holiday Mode" and "Thermostat Program" switch, thus having new entities. You may need to adjust your automations if you used those in that.

  Service `toon.update` has been removed, it is no longer needed as this is now a push-based integration. Please make sure you remove those from your automations.

  ([@frenck] - [#36952]) ([toon docs]) (new-platform)

- **Translations**

  This breaking change applies to maintainers and users of custom integrations (`custom_components`) that have used the `.translations` directory for translations, as previously warned that directory is no longer loaded.

  The new name for this directory is `translations` (without the `.` prefix), for Home Assistant to be able to load your files from this directory, simply remove the `.` from the name of it.

  If you publish your custom integration to GitHub, you should enable the [`hassfest` action](https://developers.home-assistant.io/blog/2020/04/16/hassfest), this would have warned you about this change in the previous 3 releases.

  ([@ludeeus] - [#37021])

- **MQTT**

  - The embedded MQTT broker, which has been marked as deprecated for the past year, has now been removed.

  - Remove MQTT broker `tls_version` parameter from your configuration and instead rely on auto negotiation.

  ([@emontnemery] - [#37032], [#37033]) ([mqtt docs])

- **Squeezebox**

  This is now available for configuration via the integrations UI, and configuration of the Squeezebox integration through `configuration.yaml` is now deprecated. Please consider using the frontend to configure the Squeezebox integration instead. Servers will automatically be discovered by the "discovery" integration, or by this integration once it is loaded. If the user adds this integration from frontend, it will attempt to automatically discover the server as well.

  The Squeezebox integration will now handle individual players coming online or going offline while Home Assistant is running. Previously, the integration would only detect players that were present during startup.

  ([@rajlaud] - [#35669]) ([squeezebox docs])

- **Alexa**

  Alexa Flash Briefings users must now set a configuration option called `password`, like this:

  ```yaml
  alexa:
    flash_briefings:
      password: YOUR_PASSWORD
      whoishome:
        - title: Who's at home?
          # ...
  ```

  If you had configured a flash briefing with the name `password` before, you have to rename it. It is not required anymore to use the legacy `api_password` authentication to use Alexa Flash Briefings.

  You also have to change the endpoint in the Alexa Developer Console to include this password in your URL, like this: `https://YOUR_HOST/api/alexa/flash_briefings/BRIEFING_ID?password=YOUR_PASSWORD`.

  ([@Tho85] - [#36789]) ([alexa docs])

- **remote_rpi_gpio**

  A double inversion happening on the `remote_rpi_gpio` platform has been removed. This might inverse your switches behavior for this platform.

  ([@auchter] - [#34390]) ([remote_rpi_gpio docs])

- **Custom integrations/components**

  This is more a breaking change for developers of custom integration for Home Assistant.

  Custom components depending on `helpers.entityfilter` for filtering may need an adjustment. Imports of `FILTER_SCHEMA` or `BASE_FILTER_SCHEMA` will be fine but any components directly depending on the `convert_filter` method will need to ensure the dictionary they are passing in has `include_entity_globs` or `exclude_entity_globs` fields specified.

  ([@mdegat01] - [#36913]) ([logbook docs]) ([recorder docs])

## Farewell to the following

The integrations below have been removed:

- Lockitron (API platform is decommissioned) ([@frenck] - [#37012])
- Fortigate (replaced by FortiOS integration) ([@kifeo] - [#34586])

## Release 0.112.1 - July 2

- Update proxmoxve integration to correctly renew authentication ([@jhollowe] - [#37016]) ([proxmoxve docs])
- Change log url in config check error notification ([@hdsheena] - [#37311]) ([homeassistant docs])
- Smappee dependency update ([@bsmappee] - [#37331]) ([smappee docs])
- Fix devolo sensor subscriber ([@2Fake] - [#37337]) ([devolo_home_control docs])
- Fix gogogate2 issue where non-admin users could not login ([@vangorra] - [#37353]) ([gogogate2 docs])
- Use entry.data.get() in forked_daapd config_flow as some entries miss… ([@uvjustin] - [#37359]) ([forked_daapd docs])
- Fix withings bug that grabbed oldest value instead of the newest ([@vangorra] - [#37362]) ([withings docs])
- Update frontend to 20200702.0 ([@bramkragten] - [#37369]) ([frontend docs])
- Add DenonAvr missing error message ([@starkillerOG] - [#37370]) ([denonavr docs])

[#37016]: https://github.com/home-assistant/core/pull/37016
[#37311]: https://github.com/home-assistant/core/pull/37311
[#37331]: https://github.com/home-assistant/core/pull/37331
[#37337]: https://github.com/home-assistant/core/pull/37337
[#37353]: https://github.com/home-assistant/core/pull/37353
[#37359]: https://github.com/home-assistant/core/pull/37359
[#37362]: https://github.com/home-assistant/core/pull/37362
[#37369]: https://github.com/home-assistant/core/pull/37369
[#37370]: https://github.com/home-assistant/core/pull/37370
[@2fake]: https://github.com/2Fake
[@bramkragten]: https://github.com/bramkragten
[@bsmappee]: https://github.com/bsmappee
[@hdsheena]: https://github.com/hdsheena
[@jhollowe]: https://github.com/jhollowe
[@starkillerog]: https://github.com/starkillerOG
[@uvjustin]: https://github.com/uvjustin
[@vangorra]: https://github.com/vangorra
[denonavr docs]: /integrations/denonavr/
[devolo_home_control docs]: /integrations/devolo_home_control/
[forked_daapd docs]: /integrations/forked_daapd/
[frontend docs]: /integrations/frontend/
[gogogate2 docs]: /integrations/gogogate2/
[homeassistant docs]: /integrations/homeassistant/
[proxmoxve docs]: /integrations/proxmoxve/
[smappee docs]: /integrations/smappee/
[withings docs]: /integrations/withings/

## Release 0.112.2 - July 3

- Don't print MQTT credentials to log ([@emontnemery] - [#37364]) ([mqtt docs])
- Handle index already existing on db migration with MySQLdb backend ([@bdraco] - [#37384]) ([recorder docs])
- Ensure logbook entries appear when the logbook.log ([@bdraco] - [#37388]) ([logbook docs])
- Bump pytile to 4.0.0 ([@bachya] - [#37398]) ([tile docs])
- Bump python-miio to 0.5.2.1 ([@rytilahti] - [#37422]) ([xiaomi_miio docs])
- Bump teslajsonpy to 0.9.2 ([@alandtse] - [#37434]) ([tesla docs])

[#37364]: https://github.com/home-assistant/core/pull/37364
[#37384]: https://github.com/home-assistant/core/pull/37384
[#37388]: https://github.com/home-assistant/core/pull/37388
[#37398]: https://github.com/home-assistant/core/pull/37398
[#37422]: https://github.com/home-assistant/core/pull/37422
[#37434]: https://github.com/home-assistant/core/pull/37434
[@alandtse]: https://github.com/alandtse
[@bachya]: https://github.com/bachya
[@bdraco]: https://github.com/bdraco
[@emontnemery]: https://github.com/emontnemery
[@rytilahti]: https://github.com/rytilahti
[logbook docs]: /integrations/logbook/
[mqtt docs]: /integrations/mqtt/
[recorder docs]: /integrations/recorder/
[tesla docs]: /integrations/tesla/
[tile docs]: /integrations/tile/
[xiaomi_miio docs]: /integrations/xiaomi_miio/

## Release 0.112.3 - July 6

- Move logbook continuous domain filtering to sql ([@bdraco] - [#37115]) ([logbook docs])
- Ensure logbook performs well when filtering is configured ([@bdraco] - [#37292]) ([logbook docs])
- Ensure removed entities are not displayed in logbook ([@bdraco] - [#37395]) ([logbook docs]) ([recorder docs])
- Stop Speedtest sensors update on startup if manual option is enabled ([@engrbm87] - [#37403]) ([speedtestdotnet docs])
- Fix base topic for 'topic' ([@emontnemery] - [#37475]) ([mqtt docs])
- Fix base class for ViCare binary sensor to remove warning ([@crazyfx1] - [#37478]) ([vicare docs])
- Fix braviatv authentication refresh ([@dcnielsen90] - [#37482]) ([braviatv docs])
- Fix default icon for Withings sleep sensor ([@SeanPM5] - [#37502]) ([withings docs])
- Update frontend to 20200702.1 ([@bramkragten] - [#37566]) ([frontend docs])
- Suppress spurious homekit warning about media player sources when the device is off ([@bdraco] - [#37567]) ([homekit docs])
- Ensure homekit tv names can be saved ([@bdraco] - [#37571]) ([homekit docs])
- Fix Plex client controls when connected via plex.tv resource ([@jjlawren] - [#37572]) ([plex docs])
- Ignore HEOS 1, 3, 5 and 7 for DenonAvr ssdp discovery ([@starkillerOG] - [#37579]) ([denonavr docs])

[#37115]: https://github.com/home-assistant/core/pull/37115
[#37292]: https://github.com/home-assistant/core/pull/37292
[#37395]: https://github.com/home-assistant/core/pull/37395
[#37403]: https://github.com/home-assistant/core/pull/37403
[#37475]: https://github.com/home-assistant/core/pull/37475
[#37478]: https://github.com/home-assistant/core/pull/37478
[#37482]: https://github.com/home-assistant/core/pull/37482
[#37502]: https://github.com/home-assistant/core/pull/37502
[#37566]: https://github.com/home-assistant/core/pull/37566
[#37567]: https://github.com/home-assistant/core/pull/37567
[#37571]: https://github.com/home-assistant/core/pull/37571
[#37572]: https://github.com/home-assistant/core/pull/37572
[#37579]: https://github.com/home-assistant/core/pull/37579
[@seanpm5]: https://github.com/SeanPM5
[@bdraco]: https://github.com/bdraco
[@bramkragten]: https://github.com/bramkragten
[@crazyfx1]: https://github.com/crazyfx1
[@dcnielsen90]: https://github.com/dcnielsen90
[@emontnemery]: https://github.com/emontnemery
[@engrbm87]: https://github.com/engrbm87
[@jjlawren]: https://github.com/jjlawren
[@starkillerog]: https://github.com/starkillerOG
[braviatv docs]: /integrations/braviatv/
[denonavr docs]: /integrations/denonavr/
[frontend docs]: /integrations/frontend/
[homekit docs]: /integrations/homekit/
[logbook docs]: /integrations/logbook/
[mqtt docs]: /integrations/mqtt/
[plex docs]: /integrations/plex/
[recorder docs]: /integrations/recorder/
[speedtestdotnet docs]: /integrations/speedtestdotnet/
[vicare docs]: /integrations/vicare/
[withings docs]: /integrations/withings/

## Release 0.112.4 - July 9

- Add kwargs to send_magic_packet() service individually ([@stshontikidis] - [#37387]) ([wake_on_lan docs])
- Upgrade sonar to 0.2.3 ([@therealryanbonham] - [#37392]) ([sonarr docs])
- Place smappee supported configurations after device class ([@bsmappee] - [#37595]) ([smappee docs])
- Update Smappee integration with proper solar, voltage and reactive entities ([@bsmappee] - [#37407]) ([smappee docs])
- Fix DenonAvr discovery of Denon DN-500AV ([@starkillerOG] - [#37529]) ([denonavr docs])
- Bump backend library for Dune HD integration ([@bieniu] - [#37594]) ([dunehd docs])
- Bump aiokef to v0.2.13 which fixes the device from becoming "Unavailable" ([@basnijholt] - [#37607]) ([kef docs])
- Remove withings use of deprecated classes ([@vangorra] - [#37611]) ([withings docs])
- Increase slow setup logging to warning level ([@bdraco] - [#37635])

[#37387]: https://github.com/home-assistant/core/pull/37387
[#37392]: https://github.com/home-assistant/core/pull/37392
[#37407]: https://github.com/home-assistant/core/pull/37407
[#37529]: https://github.com/home-assistant/core/pull/37529
[#37594]: https://github.com/home-assistant/core/pull/37594
[#37595]: https://github.com/home-assistant/core/pull/37595
[#37607]: https://github.com/home-assistant/core/pull/37607
[#37611]: https://github.com/home-assistant/core/pull/37611
[#37635]: https://github.com/home-assistant/core/pull/37635
[@basnijholt]: https://github.com/basnijholt
[@bdraco]: https://github.com/bdraco
[@bieniu]: https://github.com/bieniu
[@bsmappee]: https://github.com/bsmappee
[@starkillerog]: https://github.com/starkillerOG
[@stshontikidis]: https://github.com/stshontikidis
[@therealryanbonham]: https://github.com/therealryanbonham
[@vangorra]: https://github.com/vangorra
[denonavr docs]: /integrations/denonavr/
[dunehd docs]: /integrations/dunehd/
[kef docs]: /integrations/kef/
[smappee docs]: /integrations/smappee/
[sonarr docs]: /integrations/sonarr/
[wake_on_lan docs]: /integrations/wake_on_lan/
[withings docs]: /integrations/withings/

## Release 0.112.5 - July 14

- Smappee dependency update ([@bsmappee] - [#37680]) ([smappee docs])
- Properly set update_interval during Speedtest setup ([@engrbm87] - [#37708]) ([speedtestdotnet docs])
- Support multiple MQTT availability topics ([@emontnemery] - [#37418]) ([mqtt docs])
- Tweak MQTT availability ([@emontnemery] - [#37719]) ([mqtt docs])
- Fix MQTT availability startup race ([@emontnemery] - [#37718]) ([mqtt docs])
- Fix homekit_controller discovery via zeroconf ([@bdraco] - [#37725]) ([zeroconf docs])
- Add support for the DataUpdateCoordinator to not automatically update ([@rohankapoorcom] - [#37734])
- Bump blinkpy version to fix connection errors ([@fronzbot] - [#37755]) ([blink docs])
- UniFi - Handle session expiration ([@Kane610] - [#37782]) ([unifi docs])
- deCONZ - don't let light "attr" events update group data ([@Kane610] - [#37797]) ([deconz docs])

[#37418]: https://github.com/home-assistant/core/pull/37418
[#37680]: https://github.com/home-assistant/core/pull/37680
[#37708]: https://github.com/home-assistant/core/pull/37708
[#37718]: https://github.com/home-assistant/core/pull/37718
[#37719]: https://github.com/home-assistant/core/pull/37719
[#37725]: https://github.com/home-assistant/core/pull/37725
[#37734]: https://github.com/home-assistant/core/pull/37734
[#37755]: https://github.com/home-assistant/core/pull/37755
[#37782]: https://github.com/home-assistant/core/pull/37782
[#37797]: https://github.com/home-assistant/core/pull/37797
[@Kane610]: https://github.com/Kane610
[@bdraco]: https://github.com/bdraco
[@bsmappee]: https://github.com/bsmappee
[@emontnemery]: https://github.com/emontnemery
[@engrbm87]: https://github.com/engrbm87
[@fronzbot]: https://github.com/fronzbot
[@rohankapoorcom]: https://github.com/rohankapoorcom
[blink docs]: /integrations/blink/
[deconz docs]: /integrations/deconz/
[mqtt docs]: /integrations/mqtt/
[smappee docs]: /integrations/smappee/
[speedtestdotnet docs]: /integrations/speedtestdotnet/
[unifi docs]: /integrations/unifi/
[zeroconf docs]: /integrations/zeroconf/

## All changes

<details>
  <summary>Click to see all changes!</summary>

- Extend logbook api to be able to fetch a slice of data between two time boundaries. ([@bdraco] - [#35847]) ([logbook docs])
- Upgrade mypy to 0.780 ([@scop] - [#36416])
- Bumped version to 0.112.0dev0 ([@frenck] - [#36417])
- Bump python-synology to 0.8.2 ([@Quentame] - [#36410]) ([synology_dsm docs])
- Cleanup and improve Plugwise merges ([@CoMPaTech] - [#36406]) ([plugwise docs])
- Bump lokalise2 2.5.1 ([@balloob] - [#36430])
- Add additional sensors to Plugwise integration ([@CoMPaTech] - [#36431]) ([plugwise docs])
- Upgrade numpy to 1.18.5 ([@frenck] - [#36434]) ([iqvia docs]) ([opencv docs]) ([tensorflow docs]) ([trend docs])
- Remove Axis option to enable/disable camera ([@Kane610] - [#36420]) ([axis docs])
- Fix Dynalite to explicitly check valid device class ([@ziv1234] - [#36418]) ([dynalite docs])
- Add config flow for Tile ([@bachya] - [#36173]) ([tile docs]) (breaking-change)
- panel_custom: Allow ES5+latest build, deprecate html ([@balloob] - [#36464]) ([panel_custom docs]) (breaking-change)
- Clean up Tile refactor ([@bachya] - [#36450]) ([tile docs])
- Add notify_events notify integration ([@papajojo] - [#36049]) ([notify_events docs]) (new-integration)
- Add @knyar as a codeowner for prometheus integration ([@knyar] - [#36487]) ([prometheus docs])
- Add entity list to light and cover group attributes ([@thomasloven] - [#36477]) ([group docs])
- Add Avri config flow ([@timvancann] - [#34288]) ([avri docs]) (breaking-change)
- Add devolo binary_sensor devices ([@2Fake] - [#36370]) ([devolo_home_control docs]) (new-platform)
- Add and fix type hints ([@scop] - [#36501]) ([config docs]) ([switcher_kis docs])
- Upgrade youtube_dl to version 2020.06.06 ([@BKPepe] - [#36493]) ([media_extractor docs])
- Arcam config flow ([@elupus] - [#34384]) ([arcam_fmj docs]) (breaking-change)
- Set state for MQTT entities to 'unavailable' when no connection to broker ([@definitio] - [#36479]) ([mqtt docs])
- Fix usage of states 'idle' and 'standby' for Android TV ([@JeffLIrion] - [#36509]) ([androidtv docs]) (breaking-change)
- Remove unused parameter for MQTT discovery ([@emontnemery] - [#36526]) ([mqtt docs])
- Update ihcsdk to 2.7.0 ([@dingusdk] - [#36527]) ([ihc docs])
- Upgrade XS1 component to xs1-api-client v3.0.0 ([@markusressel] - [#36500]) ([xs1 docs])
- Update ZHA config flow Zigbee radio description ([@Hedda] - [#35607]) ([zha docs])
- Add plum_lightpad unique ids ([@prystupa] - [#36549]) ([plum_lightpad docs])
- Improve devolo Home Control ([@2Fake] - [#36557]) ([devolo_home_control docs])
- Change logging of successful scans to debug priority ([@eyager1] - [#36538]) ([ddwrt docs])
- Prevent double ZHA channel initialization ([@Adminiuga] - [#36554]) ([zha docs])
- Add Xiaomi miio vaccum goto service ([@jthure] - [#35737]) ([xiaomi_miio docs]) (breaking-change)
- Updated tesla-powerwall to 0.2.11 ([@z00nx] - [#36568]) ([powerwall docs])
- Add services to bypass and unbypass zones on NX584 ([@mreiling] - [#36401]) ([nx584 docs])
- Sonos queue ([@gieljnssns] - [#35817]) ([sonos docs])
- Update aioharmony to include support for XMPP connectivity to Hub ([@ehendrix23] - [#36485]) ([harmony docs])
- Add service select scene to Yamaha Hifi media player ([@StevusPrimus] - [#36564]) ([yamaha docs])
- Use TestCase.addCleanup ([@balloob] - [#36560])
- Add status_light to Sonos set_option service ([@ianperrin] - [#35515]) ([sonos docs])
- Remove EU code from honeywell integration ([@jhenkens] - [#36456]) ([honeywell docs]) (breaking-change)
- Clean up command learning in the Broadlink integration ([@felipediel] - [#36318]) ([broadlink docs]) (breaking-change)
- Add NX584 alarm binary_sensor zone_number attribute ([@mreiling] - [#36552]) ([nx584 docs])
- Upgrade pre-commit to 2.5.0 ([@frenck] - [#36596])
- Change nx584 SCAN_INTERVAL to 10 seconds ([@mreiling] - [#36581]) ([nx584 docs])
- Bump solax library to 0.2.3 ([@squishykid] - [#36600]) ([solax docs])
- Use past tense in messages for already invalidated deprecated configs ([@scop] - [#36591])
- Mark config dependency of frontend ([@balloob] - [#36587]) ([default_config docs]) ([frontend docs]) ([safe_mode docs]) (breaking-change)
- Fix missing space in powerwall notification message ([@bdraco] - [#36603]) ([powerwall docs])
- Bump dependency & add devices for HomematicIP Cloud ([@SukramJ] - [#36595]) ([homematicip_cloud docs]) (breaking-change)
- Add delay in emulated_hue after PUT ([@grogi] - [#35307]) ([emulated_hue docs])
- Upgrade pre-commit to 2.5.1 ([@frenck] - [#36623])
- Add Speedtestdotnet config_flow ([@engrbm87] - [#36254]) ([speedtestdotnet docs]) (breaking-change)
- Add ue_smart_radio multiple devices support ([@fredrik-rambris] - [#36575]) ([ue_smart_radio docs])
- Fix name of devolo_home_control integration ([@frenck] - [#36627])
- Add options flow to Blink ([@fronzbot] - [#35645]) ([blink docs])
- Use LENGTH_FEET constant ([@springstan] - [#34053]) ([fitbit docs]) ([isy994 docs]) ([proximity docs]) ([zha docs])
- Abort other config flows on import ([@emontnemery] - [#36608])
- Remove internal qa scale from numato integration ([@frenck] - [#36629]) ([numato docs])
- Use async_on_remove for WLED DataUpdateCoordinator ([@frenck] - [#36640]) ([wled docs])
- Allow specifying port for wake_on_lan ([@janitha] - [#36510]) ([wake_on_lan docs])
- Update Baidu TTS to support more voice ([@kangyue92] - [#36532]) ([baidu docs])
- Update ZHA dependencies ([@Adminiuga] - [#36646]) ([zha docs])
- Add icon_type as configuration variable ([@phan-t] - [#36594]) ([lametric docs])
- Refactor ZHA Entity availability tracking ([@Adminiuga] - [#36645]) ([zha docs])
- Add timers to xiaomi_miio vacuum ([@MarBra] - [#35417]) ([xiaomi_miio docs])
- Improve cloud error handling ([@balloob] - [#36670]) ([cloud docs])
- Cleanup zha.storage from stale devices ([@Adminiuga] - [#36700]) ([zha docs])
- Drop ZHA sensor for Analog/Multistate input clusters ([@Adminiuga] - [#36696]) ([zha docs]) (breaking-change)
- Remove Yeelight model to device type mapping ([@zewelor] - [#36658]) ([yeelight docs]) (breaking-change)
- Enforce unique ID for Hassio discovery ([@balloob] - [#36671])
- Add influx 2.0 and InfluxCloud support to InfluxDB integration ([@mdegat01] - [#35392]) ([influxdb docs])
- Bump pynx584 to 0.5 ([@mreiling] - [#36615]) ([nx584 docs])
- Add opentherm_gw.set_hot_water_setpoint service ([@mvn23] - [#34579]) ([opentherm_gw docs])
- Migrate script to use describe_event for logbook ([@frenck] - [#36729]) ([logbook docs]) ([script docs])
- Implement device_info for LutronCasetaDevice ([@ShaneQi] - [#36706]) ([lutron_caseta docs])
- Upgrade pytest-cov to 2.10.0 ([@frenck] - [#36720])
- Platforms cleanup when adding entity fails ([@balloob] - [#36742])
- Update config_entry_flow test test_user_has_confirmation ([@emontnemery] - [#36633])
- Poll all status data in Vera ([@vangorra] - [#35703]) ([vera docs])
- Updated frontend to 20200613.0 ([@bramkragten] - [#36758]) ([frontend docs])
- Add sensor platform for vicare integration (heatpump) ([@crazyfx1] - [#34385]) ([vicare docs]) (breaking-change) (new-platform)
- Add pi_heating/cooling_demand state attributes ([@Adminiuga] - [#36775]) ([zha docs])
- Refactor plum_lightpad ([@prystupa] - [#36761]) ([plum_lightpad docs])
- Set default pjlink timeout ([@benoitlouy] - [#36781]) ([pjlink docs])
- Fix translations download ([@balloob] - [#36770])
- Add unique id to huawei_lte config entries ([@scop] - [#36765]) ([huawei_lte docs])
- Add HVV integration (Hamburg public transportation) ([@vigonotion] - [#31564]) ([hvv_departures docs]) (new-integration)
- Add alarmdecoder brand specific arming sequences ([@ajschmidt8] - [#36692]) ([alarmdecoder docs]) (breaking-change)
- Convert MetOffice to use UI for configuration ([@MrHarcombe] - [#34900]) ([metoffice docs]) (breaking-change)
- Fix TTS key by hashing options values too ([@balloob] - [#36813]) ([tts docs])
- ConfigFlow default discovery without unique ID ([@frenck] - [#36754]) ([abode docs]) (new-integration)
- Add missing dependencies for Environment Canada ([@michaeldavie] - [#36806]) ([environment_canada docs])
- Speed up logbook with a lazy event decoder ([@bdraco] - [#36730]) ([logbook docs])
- Improve history api performance part 4 ([@bdraco] - [#36783]) ([history docs])
- Use states to avoid decoding logbook state changed events. ([@bdraco] - [#36768]) ([logbook docs])
- Only process logbook timestamps for events we will keep ([@bdraco] - [#36792]) ([logbook docs]) ([recorder docs])
- Add support for multiple entity_ids in conditions ([@frenck] - [#36817])
- Remove context_id from logbook api ([@bdraco] - [#36796]) ([alexa docs]) ([automation docs]) ([homekit docs]) ([logbook docs]) ([recorder docs]) ([script docs]) (breaking-change)
- Update MQTT tests to not create duplicated config entries ([@emontnemery] - [#36833]) ([mqtt docs])
- Add support for multiple states/zones in conditions ([@frenck] - [#36835])
- mobile_app: Camera Stream Webhook ([@zacwest] - [#36839]) ([mobile_app docs])
- Add support for Dyson Pure HP04 purifying heater + fan ([@etheralm] - [#34537]) ([dyson docs])
- Add blink tests ([@fronzbot] - [#36672]) ([blink docs])
- Fix remote_rpi_gpio switch inversion ([@auchter] - [#34390]) ([remote_rpi_gpio docs]) (breaking-change)
- Use MDI CPU icon for glances ([@spacegaier] - [#36736]) ([glances docs])
- DenonAVR Config Flow ([@starkillerOG] - [#35255]) ([denonavr docs]) (breaking-change)
- Fix Plugwise schema name display and non_device_class icons ([@CoMPaTech] - [#36815]) ([plugwise docs])
- Add Withings webhooks ([@vangorra] - [#34447]) ([withings docs]) (new-platform)
- Update Wemo state when changing state ([@sqldiablo] - [#36647]) ([wemo docs])
- Add growatt battery devices ([@indykoning] - [#34773]) ([growatt_server docs])
- Add precipitation probability to weather forcast ([@marawan31] - [#36019]) ([environment_canada docs]) ([weather docs])
- Bump aiokef 0.2.12 ([@basnijholt] - [#36753]) ([kef docs])
- Add ebusd HotWaterHeader ActualTemperature and OperationMode ([@sknsean] - [#34921]) ([ebusd docs])
- Renew Smappee (sensors and switches) ([@bsmappee] - [#36445]) ([smappee docs]) (breaking-change)
- Upgrade youtube_dl to version 2020.06.16.1 ([@BKPepe] - [#36870]) ([media_extractor docs])
- Use the built-in importlib.metadata library in Python 3.8+ ([@jefferyto] - [#36225])
- Discover controllable Plex clients using plex.tv ([@jjlawren] - [#36857]) ([plex docs])
- Onboarding to validate redirect uri ([@balloob] - [#36863]) ([onboarding docs])
- Improve logbook performance when no entities are filtered ([@bdraco] - [#36842]) ([logbook docs])
- Bump plexwebsocket to 0.0.11 ([@jjlawren] - [#36879]) ([plex docs])
- Upgrade requests to 2.24.0 ([@balloob] - [#36886])
- Add internal/external url to safe mode ([@balloob] - [#36894])
- Improve db performance of state change events and reduce overall db size ([@bdraco] - [#36883]) ([logbook docs]) ([recorder docs]) (breaking-change)
- Bump Netdisco to 2.7.1 ([@balloob] - [#36891]) ([discovery docs]) ([ssdp docs])
- Add expiration timestamp to cert_expiry sensors ([@jjlawren] - [#36399]) ([cert_expiry docs])
- Light control support to Axis devices ([@Kane610] - [#36611]) ([axis docs]) (new-platform)
- Fix cert_expiry time-based tests ([@jjlawren] - [#36924]) ([cert_expiry docs])
- Cope with attribute errors being converted ([@craiggenner] - [#36911]) ([prometheus docs])
- Make panel_custom backwards compatible ([@balloob] - [#36926]) ([panel_custom docs])
- Fix cert_expiry time-based tests v2 ([@jjlawren] - [#36934]) ([cert_expiry docs])
- Fix devolo brand name ([@2Fake] - [#36865]) ([devolo_home_control docs])
- Handle Plex Live TV sessions ([@jjlawren] - [#36919]) ([plex docs])
- Add discovery to NUT integration ([@frenck] - [#36827]) ([nut docs])
- Fix recorder stopping after unserializable state ([@bdraco] - [#36937]) ([recorder docs])
- Improve after_dependencies handling ([@balloob] - [#36898])
- Allow harmony activity change on start of switching activity ([@ehendrix23] - [#36699]) ([harmony docs])
- Use chip id in Konnected pro boards ([@kit-klein] - [#36940]) ([konnected docs])
- Remove unused webhook dependency from device automation ([@balloob] - [#36946]) ([device_automation docs])
- Add TTS support to Heos ([@avocadio] - [#35386]) ([heos docs])
- Upgrade ptvsd to 4.3.2 ([@frenck] - [#36950]) ([ptvsd docs])
- Update frontend to 20200620.0 and add redirects ([@bramkragten] - [#36953]) ([frontend docs])
- Bump pyaehw4a1 to v.0.3.5 ([@bannhead] - [#36949]) ([hisense_aehw4a1 docs])
- Fix unique_id in Zeroconf flow ([@fredrike] - [#36948]) ([daikin docs])
- Fix ESPHome discovery for ignored config entries ([@frenck] - [#36964]) ([esphome docs])
- Adding PM2.5 and PM2.5 24hr Average ([@linuxkidd] - [#36967]) ([ambient_station docs])
- Reduce roku scan interval by 5s ([@ctalkington] - [#36966]) ([roku docs])
- Dynalite integration - upgrade library version ([@ziv1234] - [#36954]) ([dynalite docs])
- Rachio Rain Delay Switch Update ([@brg468] - [#36909]) ([rachio docs])
- Add armed_night state for AlarmDecoder ([@ajschmidt8] - [#36695]) ([alarmdecoder docs])
- Handle Mobile App registrations for device names containing of only emoji ([@TomBrien] - [#36957]) ([mobile_app docs])
- Prefilter more logbook events in sql ([@bdraco] - [#36958]) ([logbook docs])
- Update rokuecp to 0.5.0 ([@ctalkington] - [#36975]) ([roku docs])
- Fix logbook filtering by entity id ([@bdraco] - [#36973]) ([alexa docs]) ([automation docs]) ([homekit docs]) ([logbook docs]) ([script docs])
- Refactor / update Awair integration ([@ahayworth] - [#34394]) ([awair docs]) (breaking-change)
- Support Hydrawise API v1.4 ([@ptcryan] - [#34448]) ([hydrawise docs]) (breaking-change)
- Make recorder execute avoid native conversion by default ([@bdraco] - [#36938]) ([history docs]) ([plant docs]) ([recorder docs]) ([statistics docs]) (breaking-change)
- Use roku media state to detect paused media ([@ctalkington] - [#36980]) ([roku docs])
- Add Xiaomi Aqara Config Flow ([@starkillerOG] - [#35595]) ([discovery docs]) ([xiaomi_aqara docs]) (breaking-change)
- Bump to pyIntesishome 1.7.5 ([@jnimmo] - [#36562]) ([intesishome docs])
- Bump pyps4-2ndscreen to 1.1.0 ([@ktnrg45] - [#36987]) ([ps4 docs])
- Upgrade to bimmer_connected 0.7.7 ([@gerard33] - [#36985]) ([bmw_connected_drive docs])
- Fix use of AdGuard integration without version ([@frenck] - [#36995]) ([adguard docs])
- Set webostv scan interval to 10s for quick updates ([@damienlevin] - [#35795]) ([webostv docs])
- Add support for daikin humidity sensor ([@fpytloun] - [#36475]) ([daikin docs])
- Add default admin user for gogogate2 setup ([@vangorra] - [#36722]) ([gogogate2 docs])
- highlight Dockerfile.dev as Dockerfile in github ui ([@adaamz] - [#36933])
- Correct inst method names in system info and issue templates ([@frenck] - [#36998])
- Set Plex media_player discovery source as an attribute ([@jjlawren] - [#36884]) ([plex docs])
- Add new Remote Python Debugger integration ([@frenck] - [#36960]) ([debugpy docs]) (new-integration)
- Reduce state conversion overhead in history by lazy loading properties ([@bdraco] - [#36963]) ([history docs]) ([plant docs]) ([recorder docs]) ([statistics docs])
- Squeezebox config flow ([@rajlaud] - [#35669]) ([discovery docs]) ([squeezebox docs]) (breaking-change)
- Add NetdataAlarms sensor to additionally collect alarm information ([@jurgenhaas] - [#34339]) ([netdata docs])
- Bump python-ecobee-api to 0.2.7 ([@marthoc] - [#37002]) ([ecobee docs])
- Upgrade numpy to 1.19.0 ([@frenck] - [#36996]) ([iqvia docs]) ([opencv docs]) ([tensorflow docs]) ([trend docs])
- Fix history api with no constraints ([@bdraco] - [#36979]) ([history docs]) ([plant docs]) ([recorder docs]) ([statistics docs])
- User defined profile name for Withings ([@vangorra] - [#36864]) ([withings docs]) (breaking-change)
- Improve isoformat timestamp performance ([@bdraco] - [#36991]) ([history docs]) ([logbook docs]) ([recorder docs])
- Bump Axis library to support fence guard events ([@Kane610] - [#37007]) ([axis docs])
- Support guest events in UniFi device tracker ([@Kane610] - [#37008]) ([unifi docs])
- Use pytest for more MQTT tests ([@emontnemery] - [#36859]) ([mqtt docs])
- Drop use of async_mock_mqtt_component ([@emontnemery] - [#37011])
- Remove lockitron integration ([@frenck] - [#37012]) (breaking-change)
- Handle ArmDisarm execute without arm level ([@balloob] - [#36942]) ([google_assistant docs])
- Part 1: Support for config flow on SMS integration ([@ocalvo] - [#35995])
- Make generic camera stream_source a template ([@zvldz] - [#36123]) ([generic docs])
- Xiaomii miio vaccum clean segment service ([@jthure] - [#36801]) ([xiaomi_miio docs])
- Prevent upnp to use None values ([@StevenLooman] - [#36803]) ([upnp docs])
- Add new language to Google Cloud TTS ([@tomtzeng] - [#36705]) ([google_cloud docs])
- Tahoma zwave light support ([@zpetr] - [#36584]) ([tahoma docs])
- Add attribute templates to template vacuum ([@firstof9] - [#36518]) ([template docs])
- Optimize recorder MySQL tables when repacking ([@alex3305] - [#36762]) ([recorder docs])
- Support reconfiguring MQTT config entry ([@emontnemery] - [#36537]) ([config docs]) ([mqtt docs])
- Add new humidifier entity integration ([@Shulyaka] - [#28693]) ([humidifier docs]) (new-integration)
- Fix/Rewrite of Toon integration ([@frenck] - [#36952]) ([toon docs]) (breaking-change) (new-platform)
- Retry failed Amcrest commands that change settings ([@pnbruckner] - [#36917]) ([amcrest docs])
- Add "seconds" as a valid unit_of_measurement ([@Leapo] - [#36811]) ([uptime docs])
- Fix withings body hydration unit of measure to match documented unit of measure. ([@vangorra] - [#36723]) ([withings docs])
- Add DataUpdateCoordinator to pihole ([@shenxn] - [#36684]) ([pi_hole docs])
- Ensure recorder runs are cleaned up during purge ([@bdraco] - [#36989]) ([recorder docs])
- Extend itach repeat functionality ([@celestinjr] - [#36535]) ([itach docs])
- Part 2: Add signal sensor ([@ocalvo] - [#34406]) ([sms docs]) (new-platform)
- Fix coronavirus worldwide sum ([@MartinHjelmare] - [#36737]) ([coronavirus docs])
- Improve detected Huawei LTE device name ([@scop] - [#36772]) ([huawei_lte docs])
- Avoid Home connect test doing I/O ([@balloob] - [#37017]) ([home_connect docs])
- Bump cloud to 0.34.7 ([@balloob] - [#37018]) ([cloud docs])
- Remove loading of legacy translations ([@ludeeus] - [#37021]) (breaking-change)
- Fix alexa flash briefings after removal of api_password auth ([@Tho85] - [#36789]) ([alexa docs]) (breaking-change)
- Add service to trigger roku search ([@ctalkington] - [#37014]) ([roku docs])
- Add new Solaredge sensors ([@terminet85] - [#34525]) ([solaredge docs])
- Remove embedded MQTT broker ([@emontnemery] - [#37032]) ([mqtt docs]) (breaking-change)
- Add humidifier device actions ([@Shulyaka] - [#36854]) ([humidifier docs])
- Drop use of mock_mqtt_component ([@emontnemery] - [#37013]) ([alarm_control_panel docs]) ([manual_mqtt docs]) ([mqtt_eventstream docs]) ([mqtt_statestream docs])
- Updated frontend to 20200623.2 ([@balloob] - [#37035]) ([frontend docs])
- Optimize database indexes for existing queries ([@bdraco] - [#37036]) ([history docs]) ([recorder docs]) (breaking-change)
- Drop MQTT broker tls_version parameter ([@emontnemery] - [#37033]) ([mqtt docs]) (breaking-change)
- Bump Plugwise_Smile to v1.1.0 ([@bouwew] - [#37038]) ([plugwise docs])
- Remove support for deprecated hidden attribute from logbook and history ([@bdraco] - [#37039]) ([history docs]) ([logbook docs]) (breaking-change)
- Fix typo in roku services description ([@ctalkington] - [#37042]) ([roku docs])
- Toon translation updates + tweaks ([@frenck] - [#37043]) ([toon docs])
- Complete deprecation of hidden attribute (ATTR_HIDDEN) ([@bdraco] - [#37041]) ([alert docs]) ([datadog docs]) ([zone docs]) (breaking-change)
- Add resource_template to rest binary_sensor ([@Hedgehog57] - [#30703]) ([rest docs])
- Remove fortigate integration ([@kifeo] - [#34586]) (breaking-change)
- Add humidifier reproduce state ([@Shulyaka] - [#36799]) ([humidifier docs])
- Updated frontend to 20200623.3 ([@balloob] - [#37045]) ([frontend docs])
- Part 3: Add support for incoming sms events ([@ocalvo] - [#37015]) ([sms docs]) (new-platform)
- Add support for glob matching to entity filters ([@mdegat01] - [#36913]) ([logbook docs]) ([recorder docs]) (breaking-change)
- Add Plum Lightpad config flow ([@prystupa] - [#36802]) ([plum_lightpad docs])
- Handle unexpected versions in forked_daapd zeroconf ([@uvjustin] - [#37053]) ([forked_daapd docs])
- Add smappee binary_sensor platform ([@bsmappee] - [#37023]) ([smappee docs]) (new-platform)
- Fix rest to use BinarySensorEntity ([@frenck] - [#37054]) ([rest docs])
- Fix LCN cover behavior when using output ports ([@alengwenus] - [#37034]) ([lcn docs])
- Fix asuswrt spamming logs with exceptions ([@RogerSelwyn] - [#37063]) ([asuswrt docs])
- Handle mysql index/column already exists during migration ([@bdraco] - [#37064]) ([recorder docs])
- Avoid creating a column in v8 schema that is removed in v9 schema ([@bdraco] - [#37062]) ([recorder docs])
- Raise slow startup timeout to 3h for large db migrations. ([@bdraco] - [#37061])
- Squeezebox dispatch helper ([@rajlaud] - [#37030]) ([squeezebox docs])
- Add devolo sensor devices ([@2Fake] - [#37049]) ([devolo_home_control docs]) (new-platform)
- Handle Centralite Pearl thermostat modes ([@Adminiuga] - [#37065]) ([zha docs]) (beta fix)
- Don't reset multiplier/divisor on failures ([@Adminiuga] - [#37066]) ([zha docs]) (beta fix)
- Fix geniushub spamming log with exceptions ([@RogerSelwyn] - [#37067]) ([geniushub docs]) (beta fix)
- Use cached values for divisor/multiplier ([@Adminiuga] - [#37070]) ([zha docs]) (beta fix)
- Clean up plum_lightpad ([@prystupa] - [#37077]) ([plum_lightpad docs]) (beta fix)
- Add logbook platforms ([@balloob] - [#37078]) ([alexa docs]) ([automation docs]) ([homekit docs]) ([logbook docs]) ([script docs]) (beta fix)
- Ensure history states can be copied ([@bdraco] - [#37081]) ([history docs]) (beta fix)
- Remove invalidation version from ZHA deprecated config options ([@frenck] - [#37089]) ([zha docs]) (beta fix)
- Fix missing service call context in multiple locations ([@frenck] - [#37094]) (beta fix)
- Fix Plex when using local tokenless authentication ([@jjlawren] - [#37096]) ([plex docs]) (beta fix)
- Bump frontend ([@balloob] - [#37113]) ([frontend docs]) (beta fix)
- Fix recorder purging by batch processing purges ([@frenck] - [#37140]) ([recorder docs]) (beta fix)
- Fix repack when using pymysql ([@bdraco] - [#37142]) ([recorder docs]) (beta fix)
- Catch additional exception for Plex account login failures ([@jjlawren] - [#37143]) ([plex docs]) (beta fix)
- Updated frontend to 20200626.1 ([@balloob] - [#37150]) ([frontend docs]) (beta fix)
- Fix speedtest blowing up ([@balloob] - [#37151]) ([speedtestdotnet docs]) (beta fix)
- Fix OwnTracks race condition ([@balloob] - [#37152]) ([owntracks docs]) (beta fix)
- Fix issue with Insteon devices not responding to device changes ([@teharris1] - [#37160]) ([insteon docs]) (beta fix)
- Bump teslajsonpy to 0.9.0 ([@alandtse] - [#37162]) ([tesla docs]) (beta fix)
- Fix bug where Tile session would expire ([@bachya] - [#37185]) ([tile docs]) (beta fix)
- Fix updating ping sensor ([@engrbm87] - [#37220]) ([speedtestdotnet docs]) (beta fix)
- Fix wind speed change in NWS ([@MatthewFlamm] - [#37222]) ([nws docs]) (beta fix)
- Ensure recorder data integrity and MySQL lock error handling ([@frenck] - [#37228]) ([recorder docs]) (beta fix)
- Fixes after PR #36479 ([@definitio] - [#37230]) ([mqtt docs]) (beta fix)
- Fix Tile location accuracy bug ([@bachya] - [#37233]) ([tile docs]) (beta fix)
- Bump ZHA Quirks to 0.0.41 ([@dmulcahey] - [#37235]) ([zha docs]) (beta fix)
- Updated frontend to 20200629.0 ([@balloob] - [#37240]) ([frontend docs]) (beta fix)
- Update myq for latest client version requirement ([@bdraco] - [#37104]) ([myq docs]) (beta fix)
- Update fritzconnection to 1.3.0 ([@svenstaro] - [#37212]) ([fritzbox_netmonitor docs]) (beta fix)
- Revert "Update fritzconnection to 1.3.0" ([@bramkragten] - [#37278]) ([fritz docs]) ([fritzbox_callmonitor docs]) ([fritzbox_netmonitor docs]) (beta fix)
- Updated frontend to 20200701.0 ([@bramkragten] - [#37279]) ([frontend docs]) (beta fix)

</details>

[#28693]: https://github.com/home-assistant/core/pull/28693
[#30703]: https://github.com/home-assistant/core/pull/30703
[#31564]: https://github.com/home-assistant/core/pull/31564
[#34053]: https://github.com/home-assistant/core/pull/34053
[#34288]: https://github.com/home-assistant/core/pull/34288
[#34339]: https://github.com/home-assistant/core/pull/34339
[#34384]: https://github.com/home-assistant/core/pull/34384
[#34385]: https://github.com/home-assistant/core/pull/34385
[#34390]: https://github.com/home-assistant/core/pull/34390
[#34394]: https://github.com/home-assistant/core/pull/34394
[#34406]: https://github.com/home-assistant/core/pull/34406
[#34447]: https://github.com/home-assistant/core/pull/34447
[#34448]: https://github.com/home-assistant/core/pull/34448
[#34525]: https://github.com/home-assistant/core/pull/34525
[#34537]: https://github.com/home-assistant/core/pull/34537
[#34579]: https://github.com/home-assistant/core/pull/34579
[#34586]: https://github.com/home-assistant/core/pull/34586
[#34773]: https://github.com/home-assistant/core/pull/34773
[#34900]: https://github.com/home-assistant/core/pull/34900
[#34921]: https://github.com/home-assistant/core/pull/34921
[#35255]: https://github.com/home-assistant/core/pull/35255
[#35307]: https://github.com/home-assistant/core/pull/35307
[#35386]: https://github.com/home-assistant/core/pull/35386
[#35392]: https://github.com/home-assistant/core/pull/35392
[#35417]: https://github.com/home-assistant/core/pull/35417
[#35515]: https://github.com/home-assistant/core/pull/35515
[#35595]: https://github.com/home-assistant/core/pull/35595
[#35607]: https://github.com/home-assistant/core/pull/35607
[#35645]: https://github.com/home-assistant/core/pull/35645
[#35669]: https://github.com/home-assistant/core/pull/35669
[#35703]: https://github.com/home-assistant/core/pull/35703
[#35737]: https://github.com/home-assistant/core/pull/35737
[#35795]: https://github.com/home-assistant/core/pull/35795
[#35817]: https://github.com/home-assistant/core/pull/35817
[#35847]: https://github.com/home-assistant/core/pull/35847
[#35995]: https://github.com/home-assistant/core/pull/35995
[#36019]: https://github.com/home-assistant/core/pull/36019
[#36049]: https://github.com/home-assistant/core/pull/36049
[#36123]: https://github.com/home-assistant/core/pull/36123
[#36173]: https://github.com/home-assistant/core/pull/36173
[#36225]: https://github.com/home-assistant/core/pull/36225
[#36254]: https://github.com/home-assistant/core/pull/36254
[#36318]: https://github.com/home-assistant/core/pull/36318
[#36370]: https://github.com/home-assistant/core/pull/36370
[#36399]: https://github.com/home-assistant/core/pull/36399
[#36401]: https://github.com/home-assistant/core/pull/36401
[#36406]: https://github.com/home-assistant/core/pull/36406
[#36410]: https://github.com/home-assistant/core/pull/36410
[#36416]: https://github.com/home-assistant/core/pull/36416
[#36417]: https://github.com/home-assistant/core/pull/36417
[#36418]: https://github.com/home-assistant/core/pull/36418
[#36420]: https://github.com/home-assistant/core/pull/36420
[#36430]: https://github.com/home-assistant/core/pull/36430
[#36431]: https://github.com/home-assistant/core/pull/36431
[#36434]: https://github.com/home-assistant/core/pull/36434
[#36445]: https://github.com/home-assistant/core/pull/36445
[#36450]: https://github.com/home-assistant/core/pull/36450
[#36456]: https://github.com/home-assistant/core/pull/36456
[#36464]: https://github.com/home-assistant/core/pull/36464
[#36475]: https://github.com/home-assistant/core/pull/36475
[#36477]: https://github.com/home-assistant/core/pull/36477
[#36479]: https://github.com/home-assistant/core/pull/36479
[#36485]: https://github.com/home-assistant/core/pull/36485
[#36487]: https://github.com/home-assistant/core/pull/36487
[#36493]: https://github.com/home-assistant/core/pull/36493
[#36500]: https://github.com/home-assistant/core/pull/36500
[#36501]: https://github.com/home-assistant/core/pull/36501
[#36509]: https://github.com/home-assistant/core/pull/36509
[#36510]: https://github.com/home-assistant/core/pull/36510
[#36518]: https://github.com/home-assistant/core/pull/36518
[#36526]: https://github.com/home-assistant/core/pull/36526
[#36527]: https://github.com/home-assistant/core/pull/36527
[#36532]: https://github.com/home-assistant/core/pull/36532
[#36535]: https://github.com/home-assistant/core/pull/36535
[#36537]: https://github.com/home-assistant/core/pull/36537
[#36538]: https://github.com/home-assistant/core/pull/36538
[#36549]: https://github.com/home-assistant/core/pull/36549
[#36552]: https://github.com/home-assistant/core/pull/36552
[#36554]: https://github.com/home-assistant/core/pull/36554
[#36557]: https://github.com/home-assistant/core/pull/36557
[#36560]: https://github.com/home-assistant/core/pull/36560
[#36562]: https://github.com/home-assistant/core/pull/36562
[#36564]: https://github.com/home-assistant/core/pull/36564
[#36568]: https://github.com/home-assistant/core/pull/36568
[#36575]: https://github.com/home-assistant/core/pull/36575
[#36581]: https://github.com/home-assistant/core/pull/36581
[#36584]: https://github.com/home-assistant/core/pull/36584
[#36587]: https://github.com/home-assistant/core/pull/36587
[#36591]: https://github.com/home-assistant/core/pull/36591
[#36594]: https://github.com/home-assistant/core/pull/36594
[#36595]: https://github.com/home-assistant/core/pull/36595
[#36596]: https://github.com/home-assistant/core/pull/36596
[#36600]: https://github.com/home-assistant/core/pull/36600
[#36603]: https://github.com/home-assistant/core/pull/36603
[#36608]: https://github.com/home-assistant/core/pull/36608
[#36611]: https://github.com/home-assistant/core/pull/36611
[#36615]: https://github.com/home-assistant/core/pull/36615
[#36623]: https://github.com/home-assistant/core/pull/36623
[#36627]: https://github.com/home-assistant/core/pull/36627
[#36629]: https://github.com/home-assistant/core/pull/36629
[#36633]: https://github.com/home-assistant/core/pull/36633
[#36640]: https://github.com/home-assistant/core/pull/36640
[#36645]: https://github.com/home-assistant/core/pull/36645
[#36646]: https://github.com/home-assistant/core/pull/36646
[#36647]: https://github.com/home-assistant/core/pull/36647
[#36658]: https://github.com/home-assistant/core/pull/36658
[#36670]: https://github.com/home-assistant/core/pull/36670
[#36671]: https://github.com/home-assistant/core/pull/36671
[#36672]: https://github.com/home-assistant/core/pull/36672
[#36684]: https://github.com/home-assistant/core/pull/36684
[#36692]: https://github.com/home-assistant/core/pull/36692
[#36695]: https://github.com/home-assistant/core/pull/36695
[#36696]: https://github.com/home-assistant/core/pull/36696
[#36699]: https://github.com/home-assistant/core/pull/36699
[#36700]: https://github.com/home-assistant/core/pull/36700
[#36705]: https://github.com/home-assistant/core/pull/36705
[#36706]: https://github.com/home-assistant/core/pull/36706
[#36720]: https://github.com/home-assistant/core/pull/36720
[#36722]: https://github.com/home-assistant/core/pull/36722
[#36723]: https://github.com/home-assistant/core/pull/36723
[#36729]: https://github.com/home-assistant/core/pull/36729
[#36730]: https://github.com/home-assistant/core/pull/36730
[#36736]: https://github.com/home-assistant/core/pull/36736
[#36737]: https://github.com/home-assistant/core/pull/36737
[#36742]: https://github.com/home-assistant/core/pull/36742
[#36753]: https://github.com/home-assistant/core/pull/36753
[#36754]: https://github.com/home-assistant/core/pull/36754
[#36758]: https://github.com/home-assistant/core/pull/36758
[#36761]: https://github.com/home-assistant/core/pull/36761
[#36762]: https://github.com/home-assistant/core/pull/36762
[#36765]: https://github.com/home-assistant/core/pull/36765
[#36768]: https://github.com/home-assistant/core/pull/36768
[#36770]: https://github.com/home-assistant/core/pull/36770
[#36772]: https://github.com/home-assistant/core/pull/36772
[#36775]: https://github.com/home-assistant/core/pull/36775
[#36781]: https://github.com/home-assistant/core/pull/36781
[#36783]: https://github.com/home-assistant/core/pull/36783
[#36789]: https://github.com/home-assistant/core/pull/36789
[#36792]: https://github.com/home-assistant/core/pull/36792
[#36796]: https://github.com/home-assistant/core/pull/36796
[#36799]: https://github.com/home-assistant/core/pull/36799
[#36801]: https://github.com/home-assistant/core/pull/36801
[#36802]: https://github.com/home-assistant/core/pull/36802
[#36803]: https://github.com/home-assistant/core/pull/36803
[#36806]: https://github.com/home-assistant/core/pull/36806
[#36811]: https://github.com/home-assistant/core/pull/36811
[#36813]: https://github.com/home-assistant/core/pull/36813
[#36815]: https://github.com/home-assistant/core/pull/36815
[#36817]: https://github.com/home-assistant/core/pull/36817
[#36827]: https://github.com/home-assistant/core/pull/36827
[#36833]: https://github.com/home-assistant/core/pull/36833
[#36835]: https://github.com/home-assistant/core/pull/36835
[#36839]: https://github.com/home-assistant/core/pull/36839
[#36842]: https://github.com/home-assistant/core/pull/36842
[#36854]: https://github.com/home-assistant/core/pull/36854
[#36857]: https://github.com/home-assistant/core/pull/36857
[#36859]: https://github.com/home-assistant/core/pull/36859
[#36863]: https://github.com/home-assistant/core/pull/36863
[#36864]: https://github.com/home-assistant/core/pull/36864
[#36865]: https://github.com/home-assistant/core/pull/36865
[#36870]: https://github.com/home-assistant/core/pull/36870
[#36879]: https://github.com/home-assistant/core/pull/36879
[#36883]: https://github.com/home-assistant/core/pull/36883
[#36884]: https://github.com/home-assistant/core/pull/36884
[#36886]: https://github.com/home-assistant/core/pull/36886
[#36891]: https://github.com/home-assistant/core/pull/36891
[#36894]: https://github.com/home-assistant/core/pull/36894
[#36898]: https://github.com/home-assistant/core/pull/36898
[#36909]: https://github.com/home-assistant/core/pull/36909
[#36911]: https://github.com/home-assistant/core/pull/36911
[#36913]: https://github.com/home-assistant/core/pull/36913
[#36917]: https://github.com/home-assistant/core/pull/36917
[#36919]: https://github.com/home-assistant/core/pull/36919
[#36924]: https://github.com/home-assistant/core/pull/36924
[#36926]: https://github.com/home-assistant/core/pull/36926
[#36933]: https://github.com/home-assistant/core/pull/36933
[#36934]: https://github.com/home-assistant/core/pull/36934
[#36937]: https://github.com/home-assistant/core/pull/36937
[#36938]: https://github.com/home-assistant/core/pull/36938
[#36940]: https://github.com/home-assistant/core/pull/36940
[#36942]: https://github.com/home-assistant/core/pull/36942
[#36946]: https://github.com/home-assistant/core/pull/36946
[#36948]: https://github.com/home-assistant/core/pull/36948
[#36949]: https://github.com/home-assistant/core/pull/36949
[#36950]: https://github.com/home-assistant/core/pull/36950
[#36952]: https://github.com/home-assistant/core/pull/36952
[#36953]: https://github.com/home-assistant/core/pull/36953
[#36954]: https://github.com/home-assistant/core/pull/36954
[#36957]: https://github.com/home-assistant/core/pull/36957
[#36958]: https://github.com/home-assistant/core/pull/36958
[#36960]: https://github.com/home-assistant/core/pull/36960
[#36963]: https://github.com/home-assistant/core/pull/36963
[#36964]: https://github.com/home-assistant/core/pull/36964
[#36966]: https://github.com/home-assistant/core/pull/36966
[#36967]: https://github.com/home-assistant/core/pull/36967
[#36973]: https://github.com/home-assistant/core/pull/36973
[#36975]: https://github.com/home-assistant/core/pull/36975
[#36979]: https://github.com/home-assistant/core/pull/36979
[#36980]: https://github.com/home-assistant/core/pull/36980
[#36985]: https://github.com/home-assistant/core/pull/36985
[#36987]: https://github.com/home-assistant/core/pull/36987
[#36989]: https://github.com/home-assistant/core/pull/36989
[#36991]: https://github.com/home-assistant/core/pull/36991
[#36995]: https://github.com/home-assistant/core/pull/36995
[#36996]: https://github.com/home-assistant/core/pull/36996
[#36998]: https://github.com/home-assistant/core/pull/36998
[#37002]: https://github.com/home-assistant/core/pull/37002
[#37007]: https://github.com/home-assistant/core/pull/37007
[#37008]: https://github.com/home-assistant/core/pull/37008
[#37011]: https://github.com/home-assistant/core/pull/37011
[#37012]: https://github.com/home-assistant/core/pull/37012
[#37013]: https://github.com/home-assistant/core/pull/37013
[#37014]: https://github.com/home-assistant/core/pull/37014
[#37015]: https://github.com/home-assistant/core/pull/37015
[#37017]: https://github.com/home-assistant/core/pull/37017
[#37018]: https://github.com/home-assistant/core/pull/37018
[#37021]: https://github.com/home-assistant/core/pull/37021
[#37023]: https://github.com/home-assistant/core/pull/37023
[#37030]: https://github.com/home-assistant/core/pull/37030
[#37032]: https://github.com/home-assistant/core/pull/37032
[#37033]: https://github.com/home-assistant/core/pull/37033
[#37034]: https://github.com/home-assistant/core/pull/37034
[#37035]: https://github.com/home-assistant/core/pull/37035
[#37036]: https://github.com/home-assistant/core/pull/37036
[#37038]: https://github.com/home-assistant/core/pull/37038
[#37039]: https://github.com/home-assistant/core/pull/37039
[#37041]: https://github.com/home-assistant/core/pull/37041
[#37042]: https://github.com/home-assistant/core/pull/37042
[#37043]: https://github.com/home-assistant/core/pull/37043
[#37045]: https://github.com/home-assistant/core/pull/37045
[#37049]: https://github.com/home-assistant/core/pull/37049
[#37053]: https://github.com/home-assistant/core/pull/37053
[#37054]: https://github.com/home-assistant/core/pull/37054
[#37061]: https://github.com/home-assistant/core/pull/37061
[#37062]: https://github.com/home-assistant/core/pull/37062
[#37063]: https://github.com/home-assistant/core/pull/37063
[#37064]: https://github.com/home-assistant/core/pull/37064
[#37065]: https://github.com/home-assistant/core/pull/37065
[#37066]: https://github.com/home-assistant/core/pull/37066
[#37067]: https://github.com/home-assistant/core/pull/37067
[#37070]: https://github.com/home-assistant/core/pull/37070
[#37077]: https://github.com/home-assistant/core/pull/37077
[#37078]: https://github.com/home-assistant/core/pull/37078
[#37081]: https://github.com/home-assistant/core/pull/37081
[#37089]: https://github.com/home-assistant/core/pull/37089
[#37094]: https://github.com/home-assistant/core/pull/37094
[#37096]: https://github.com/home-assistant/core/pull/37096
[#37104]: https://github.com/home-assistant/core/pull/37104
[#37113]: https://github.com/home-assistant/core/pull/37113
[#37140]: https://github.com/home-assistant/core/pull/37140
[#37142]: https://github.com/home-assistant/core/pull/37142
[#37143]: https://github.com/home-assistant/core/pull/37143
[#37150]: https://github.com/home-assistant/core/pull/37150
[#37151]: https://github.com/home-assistant/core/pull/37151
[#37152]: https://github.com/home-assistant/core/pull/37152
[#37160]: https://github.com/home-assistant/core/pull/37160
[#37162]: https://github.com/home-assistant/core/pull/37162
[#37185]: https://github.com/home-assistant/core/pull/37185
[#37212]: https://github.com/home-assistant/core/pull/37212
[#37220]: https://github.com/home-assistant/core/pull/37220
[#37222]: https://github.com/home-assistant/core/pull/37222
[#37228]: https://github.com/home-assistant/core/pull/37228
[#37230]: https://github.com/home-assistant/core/pull/37230
[#37233]: https://github.com/home-assistant/core/pull/37233
[#37235]: https://github.com/home-assistant/core/pull/37235
[#37240]: https://github.com/home-assistant/core/pull/37240
[#37278]: https://github.com/home-assistant/core/pull/37278
[#37279]: https://github.com/home-assistant/core/pull/37279
[@2fake]: https://github.com/2Fake
[@adminiuga]: https://github.com/Adminiuga
[@bkpepe]: https://github.com/BKPepe
[@compatech]: https://github.com/CoMPaTech
[@hedda]: https://github.com/Hedda
[@hedgehog57]: https://github.com/Hedgehog57
[@jefflirion]: https://github.com/JeffLIrion
[@kane610]: https://github.com/Kane610
[@leapo]: https://github.com/Leapo
[@marbra]: https://github.com/MarBra
[@martinhjelmare]: https://github.com/MartinHjelmare
[@matthewflamm]: https://github.com/MatthewFlamm
[@mrharcombe]: https://github.com/MrHarcombe
[@quentame]: https://github.com/Quentame
[@rogerselwyn]: https://github.com/RogerSelwyn
[@shaneqi]: https://github.com/ShaneQi
[@shulyaka]: https://github.com/Shulyaka
[@stevenlooman]: https://github.com/StevenLooman
[@stevusprimus]: https://github.com/StevusPrimus
[@sukramj]: https://github.com/SukramJ
[@tho85]: https://github.com/Tho85
[@tombrien]: https://github.com/TomBrien
[@adaamz]: https://github.com/adaamz
[@ahayworth]: https://github.com/ahayworth
[@ajschmidt8]: https://github.com/ajschmidt8
[@alandtse]: https://github.com/alandtse
[@alengwenus]: https://github.com/alengwenus
[@alex3305]: https://github.com/alex3305
[@auchter]: https://github.com/auchter
[@avocadio]: https://github.com/avocadio
[@bachya]: https://github.com/bachya
[@balloob]: https://github.com/balloob
[@bannhead]: https://github.com/bannhead
[@basnijholt]: https://github.com/basnijholt
[@bdraco]: https://github.com/bdraco
[@benoitlouy]: https://github.com/benoitlouy
[@bouwew]: https://github.com/bouwew
[@bramkragten]: https://github.com/bramkragten
[@brg468]: https://github.com/brg468
[@bsmappee]: https://github.com/bsmappee
[@celestinjr]: https://github.com/celestinjr
[@craiggenner]: https://github.com/craiggenner
[@crazyfx1]: https://github.com/crazyfx1
[@ctalkington]: https://github.com/ctalkington
[@damienlevin]: https://github.com/damienlevin
[@definitio]: https://github.com/definitio
[@dingusdk]: https://github.com/dingusdk
[@dmulcahey]: https://github.com/dmulcahey
[@ehendrix23]: https://github.com/ehendrix23
[@elupus]: https://github.com/elupus
[@emontnemery]: https://github.com/emontnemery
[@engrbm87]: https://github.com/engrbm87
[@etheralm]: https://github.com/etheralm
[@eyager1]: https://github.com/eyager1
[@felipediel]: https://github.com/felipediel
[@firstof9]: https://github.com/firstof9
[@fpytloun]: https://github.com/fpytloun
[@fredrik-rambris]: https://github.com/fredrik-rambris
[@fredrike]: https://github.com/fredrike
[@frenck]: https://github.com/frenck
[@fronzbot]: https://github.com/fronzbot
[@gerard33]: https://github.com/gerard33
[@gieljnssns]: https://github.com/gieljnssns
[@grogi]: https://github.com/grogi
[@ianperrin]: https://github.com/ianperrin
[@indykoning]: https://github.com/indykoning
[@janitha]: https://github.com/janitha
[@jefferyto]: https://github.com/jefferyto
[@jhenkens]: https://github.com/jhenkens
[@jjlawren]: https://github.com/jjlawren
[@jnimmo]: https://github.com/jnimmo
[@jthure]: https://github.com/jthure
[@jurgenhaas]: https://github.com/jurgenhaas
[@kangyue92]: https://github.com/kangyue92
[@kifeo]: https://github.com/kifeo
[@kit-klein]: https://github.com/kit-klein
[@knyar]: https://github.com/knyar
[@ktnrg45]: https://github.com/ktnrg45
[@linuxkidd]: https://github.com/linuxkidd
[@ludeeus]: https://github.com/ludeeus
[@marawan31]: https://github.com/marawan31
[@markusressel]: https://github.com/markusressel
[@marthoc]: https://github.com/marthoc
[@mdegat01]: https://github.com/mdegat01
[@michaeldavie]: https://github.com/michaeldavie
[@mreiling]: https://github.com/mreiling
[@mvn23]: https://github.com/mvn23
[@ocalvo]: https://github.com/ocalvo
[@papajojo]: https://github.com/papajojo
[@phan-t]: https://github.com/phan-t
[@pnbruckner]: https://github.com/pnbruckner
[@prystupa]: https://github.com/prystupa
[@ptcryan]: https://github.com/ptcryan
[@rajlaud]: https://github.com/rajlaud
[@scop]: https://github.com/scop
[@shenxn]: https://github.com/shenxn
[@sknsean]: https://github.com/sknsean
[@spacegaier]: https://github.com/spacegaier
[@springstan]: https://github.com/springstan
[@sqldiablo]: https://github.com/sqldiablo
[@squishykid]: https://github.com/squishykid
[@starkillerog]: https://github.com/starkillerOG
[@svenstaro]: https://github.com/svenstaro
[@teharris1]: https://github.com/teharris1
[@terminet85]: https://github.com/terminet85
[@thomasloven]: https://github.com/thomasloven
[@timvancann]: https://github.com/timvancann
[@tomtzeng]: https://github.com/tomtzeng
[@uvjustin]: https://github.com/uvjustin
[@vangorra]: https://github.com/vangorra
[@vigonotion]: https://github.com/vigonotion
[@z00nx]: https://github.com/z00nx
[@zacwest]: https://github.com/zacwest
[@zewelor]: https://github.com/zewelor
[@ziv1234]: https://github.com/ziv1234
[@zpetr]: https://github.com/zpetr
[@zvldz]: https://github.com/zvldz
[abode docs]: /integrations/abode/
[adguard docs]: /integrations/adguard/
[alarm_control_panel docs]: /integrations/alarm_control_panel/
[alarmdecoder docs]: /integrations/alarmdecoder/
[alert docs]: /integrations/alert/
[alexa docs]: /integrations/alexa/
[ambient_station docs]: /integrations/ambient_station/
[amcrest docs]: /integrations/amcrest/
[androidtv docs]: /integrations/androidtv/
[arcam_fmj docs]: /integrations/arcam_fmj/
[asuswrt docs]: /integrations/asuswrt/
[automation docs]: /integrations/automation/
[avri docs]: /integrations/avri/
[awair docs]: /integrations/awair/
[axis docs]: /integrations/axis/
[baidu docs]: /integrations/baidu/
[blink docs]: /integrations/blink/
[bmw_connected_drive docs]: /integrations/bmw_connected_drive/
[broadlink docs]: /integrations/broadlink/
[cert_expiry docs]: /integrations/cert_expiry/
[cloud docs]: /integrations/cloud/
[config docs]: /integrations/config/
[coronavirus docs]: /integrations/coronavirus/
[daikin docs]: /integrations/daikin/
[datadog docs]: /integrations/datadog/
[ddwrt docs]: /integrations/ddwrt/
[debugpy docs]: /integrations/debugpy/
[default_config docs]: /integrations/default_config/
[denonavr docs]: /integrations/denonavr/
[device_automation docs]: /integrations/device_automation/
[devolo_home_control docs]: /integrations/devolo_home_control/
[discovery docs]: /integrations/discovery/
[dynalite docs]: /integrations/dynalite/
[dyson docs]: /integrations/dyson/
[ebusd docs]: /integrations/ebusd/
[ecobee docs]: /integrations/ecobee/
[emulated_hue docs]: /integrations/emulated_hue/
[environment_canada docs]: /integrations/environment_canada/
[esphome docs]: /integrations/esphome/
[fitbit docs]: /integrations/fitbit/
[forked_daapd docs]: /integrations/forked_daapd/
[fritz docs]: /integrations/fritz/
[fritzbox_callmonitor docs]: /integrations/fritzbox_callmonitor/
[fritzbox_netmonitor docs]: /integrations/fritzbox_netmonitor/
[frontend docs]: /integrations/frontend/
[generic docs]: /integrations/generic_ip_camera/
[geniushub docs]: /integrations/geniushub/
[glances docs]: /integrations/glances/
[gogogate2 docs]: /integrations/gogogate2/
[google_assistant docs]: /integrations/google_assistant/
[google_cloud docs]: /integrations/google_cloud/
[group docs]: /integrations/group/
[growatt_server docs]: /integrations/growatt_server/
[harmony docs]: /integrations/harmony/
[heos docs]: /integrations/heos/
[hisense_aehw4a1 docs]: /integrations/hisense_aehw4a1/
[history docs]: /integrations/history/
[home_connect docs]: /integrations/home_connect/
[homekit docs]: /integrations/homekit/
[homematicip_cloud docs]: /integrations/homematicip_cloud/
[honeywell docs]: /integrations/honeywell/
[huawei_lte docs]: /integrations/huawei_lte/
[humidifier docs]: /integrations/humidifier/
[hvv_departures docs]: /integrations/hvv_departures/
[hydrawise docs]: /integrations/hydrawise/
[ihc docs]: /integrations/ihc/
[influxdb docs]: /integrations/influxdb/
[insteon docs]: /integrations/insteon/
[intesishome docs]: /integrations/intesishome/
[iqvia docs]: /integrations/iqvia/
[isy994 docs]: /integrations/isy994/
[itach docs]: /integrations/itach/
[kef docs]: /integrations/kef/
[konnected docs]: /integrations/konnected/
[lametric docs]: /integrations/lametric/
[lcn docs]: /integrations/lcn/
[logbook docs]: /integrations/logbook/
[lutron_caseta docs]: /integrations/lutron_caseta/
[manual_mqtt docs]: /integrations/manual_mqtt/
[media_extractor docs]: /integrations/media_extractor/
[metoffice docs]: /integrations/metoffice/
[mobile_app docs]: /integrations/mobile_app/
[mqtt docs]: /integrations/mqtt/
[mqtt_eventstream docs]: /integrations/mqtt_eventstream/
[mqtt_statestream docs]: /integrations/mqtt_statestream/
[myq docs]: /integrations/myq/
[netdata docs]: /integrations/netdata/
[notify_events docs]: /integrations/notify_events/
[numato docs]: /integrations/numato/
[nut docs]: /integrations/nut/
[nws docs]: /integrations/nws/
[nx584 docs]: /integrations/nx584/
[onboarding docs]: /integrations/onboarding/
[opencv docs]: /integrations/opencv/
[opentherm_gw docs]: /integrations/opentherm_gw/
[owntracks docs]: /integrations/owntracks/
[panel_custom docs]: /integrations/panel_custom/
[pi_hole docs]: /integrations/pi_hole/
[pjlink docs]: /integrations/pjlink/
[plant docs]: /integrations/plant/
[plex docs]: /integrations/plex/
[plugwise docs]: /integrations/plugwise/
[plum_lightpad docs]: /integrations/plum_lightpad/
[powerwall docs]: /integrations/powerwall/
[prometheus docs]: /integrations/prometheus/
[proximity docs]: /integrations/proximity/
[ps4 docs]: /integrations/ps4/
[ptvsd docs]: /integrations/ptvsd/
[rachio docs]: /integrations/rachio/
[recorder docs]: /integrations/recorder/
[remote_rpi_gpio docs]: /integrations/remote_rpi_gpio/
[rest docs]: /integrations/rest/
[roku docs]: /integrations/roku/
[safe_mode docs]: /integrations/safe_mode/
[script docs]: /integrations/script/
[smappee docs]: /integrations/smappee/
[sms docs]: /integrations/sms/
[solaredge docs]: /integrations/solaredge/
[solax docs]: /integrations/solax/
[sonos docs]: /integrations/sonos/
[speedtestdotnet docs]: /integrations/speedtestdotnet/
[squeezebox docs]: /integrations/squeezebox/
[ssdp docs]: /integrations/ssdp/
[statistics docs]: /integrations/statistics/
[switcher_kis docs]: /integrations/switcher_kis/
[synology_dsm docs]: /integrations/synology_dsm/
[tahoma docs]: /integrations/tahoma/
[template docs]: /integrations/template/
[tensorflow docs]: /integrations/tensorflow/
[tesla docs]: /integrations/tesla/
[tile docs]: /integrations/tile/
[toon docs]: /integrations/toon/
[trend docs]: /integrations/trend/
[tts docs]: /integrations/tts/
[ue_smart_radio docs]: /integrations/ue_smart_radio/
[unifi docs]: /integrations/unifi/
[upnp docs]: /integrations/upnp/
[uptime docs]: /integrations/uptime/
[vera docs]: /integrations/vera/
[vicare docs]: /integrations/vicare/
[wake_on_lan docs]: /integrations/wake_on_lan/
[weather docs]: /integrations/weather/
[webostv docs]: /integrations/webostv/
[wemo docs]: /integrations/wemo/
[withings docs]: /integrations/withings/
[wled docs]: /integrations/wled/
[xiaomi_aqara docs]: /integrations/xiaomi_aqara/
[xiaomi_miio docs]: /integrations/xiaomi_miio/
[xs1 docs]: /integrations/xs1/
[yamaha docs]: /integrations/yamaha/
[yeelight docs]: /integrations/yeelight/
[zha docs]: /integrations/zha/
[zone docs]: /integrations/zone/
