diff --git a/_config.yml b/_config.yml index 10d3f29e532..bbcf4bafbeb 100644 --- a/_config.yml +++ b/_config.yml @@ -100,9 +100,9 @@ social: # Home Assistant release details current_major_version: 0 -current_minor_version: 109 -current_patch_version: 6 -date_released: 2020-05-07 +current_minor_version: 110 +current_patch_version: 0 +date_released: 2020-05-20 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. diff --git a/source/_posts/2020-05-20-release-110.markdown b/source/_posts/2020-05-20-release-110.markdown new file mode 100644 index 00000000000..78437c78624 --- /dev/null +++ b/source/_posts/2020-05-20-release-110.markdown @@ -0,0 +1,1479 @@ +--- +layout: post +title: "0.110: Beta release notes" +description: "0.110: Beta release notes" +date: 2020-05-12 00:00:00 +date_formatted: "May 20, 2020" +author: Franck Nijhof +author_twitter: frenck +comments: true +categories: Release-Notes +og_image: /images/blog/2020-05-0.110/social.png +--- + + + +Let's keep the introduction for the Home Assistant Core 0.110 release short, +as this release is stuffed! Starting with 12! new awesome integrations added +this release! + +## Icons + +In Home Assistant Core [0.109](/blog/2020/04/29/release-109/#weight-loss-for-the-frontend), +we made the frontend lighter and faster, this release takes it a step further. + +The way icons are loaded is updated. With the ever-growing Material Icons set, +it was necessary to update the way we handle icons to make sure our application +continues performing. + +The Material Icons are now split in chunks, so the frontend does not have to +load all the icons if you just need one; besides that, we no longer store the +icons in the DOM but in a database. + +This saves a lot of memory and thus makes the Home Assistant frontend +even more leaner and faster! + +## Integrations grouping, searching & custom logos + +[@timmo001] added the possibility to search your integrations, so you can find +what you are looking for quickly. + +We also grouped the entries by integration now, this means we no longer show +multiple cards for the same integration, but show a list of the names if there +are multiple entries. + +If you click the entry, it will show that entry in the card. +This makes it easier to keep an overview of all your integrations. + +

+Screenshot of the integrations page +Screenshot of the integrations page. +

+ +Oh! We've also made the icons and logos available for custom integrations! + +

+Screenshot of the HACS integration with its icon shown +Screenshot of the HACS integration with its icon shown. +

+ +[@timmo001]: https://github.com/timmo001 + +## Z-Wave over MQTT integration + +This release features the new Z-Wave over MQTT integration. It has been in +testing as a custom integration by the community since last December and is now +ready for a wider audience. + +It is still early days for this integration, though; not all platforms and +devices are supported yet and the setup process has prerequisites that raise +the accessibility bar. See our [documentation](/integrations/zwave_mqtt/) for +the current requirements and instructions. + +If you want to give it a shot, you should be comfortable with setting up custom +add-ons and MQTT. There is no migration from the current Z-Wave integration yet, +this is still to come. + +The plan is to add more platforms in the future, making it super simple to +set up the integration. Stay tuned. + +There is currently no plan to deprecate the existing Z-Wave integration. +But the hope is that the new integration, in the future, will offer a simpler, +more stable and more feature-rich experience than the current Z-Wave integration. + +Thanks go out to the community that has been testing the custom integration +and provided very valuable data to allow us to catch bugs and support more +devices. A special thanks to [@cgarwood] and [@marcelveldt] who have been +pioneering building the integration. + +## Every discovered integration can be ignored + +An often reported issue/request feature is to allow any discovered item to +be ignored. Most integrations supported that already, but some didn't. + +As of 0.110, we have a new development rule requiring an integration to +support ignoring discovered items; and for 0.110, we have upgraded all +integrations that didn't support it yet! + +Result: Any discovered item, can be ignored. + +

+Screenshot of showing ignorable integrations +Screenshot of showing ignorable integrations. +

+ +## Calendar panel + +Thanks to [@zsarnett] we got a beautiful new calendar panel! + +It shows you all items of the calendars you select in a month, week or day view. +There is also a calendar card for Lovelace in the making. + +

+Screenshot of the Calendar panel +Screenshot of the Calendar panel. +

+ +## Weather card + +We got a lot of feedback about the updated weather card of the last release, +we listened to feedback and added some features. You can now theme the colors +of the new icons, and you can even completely replace them with another image. + +You can also set the attribute you want to show as the secondary information. + +

+Screenshot of the updated weather card +Screenshot of the updated weather card. +

+ +Check the [documentation](/lovelace/weather-forecast/) for more information. + +## Internal & External URLs + +There are many cases where an integration needs the URL/link to your Home Assistant +instance. For example, to set up a webhook, communicate audio files or camera +streams to an Amazon Alexa or Google Assistant device. + +We used to have a `base_url` setting to deal with those cases, but that wasn't +always sufficient. Some integrations require specific requirements for that +setting, which could lead to conflicting or impossible settings. + +It often resulted in broken TTS, streaming issues for camera's or issues with +casting. This release addresses this issue by introducing two new settings in +**Configuration** -> **General**. + +

+Screenshot of the URLs configuration +Screenshot of the URLs configuration. +

+ +These settings allow you to override the URLs Home Assistant uses when +communicating on your internal network versus the outside world. Please note, +that these are overrides. By default, Home Assistant will try to figure this out +on its own. + +If you have a Home Assistant Cloud subscription, integrations can now also +leverage that. This will reduce the amount of, often complex, configuration +needed. + +After upgrading to 0.110, you can delete `base_url` from your configuration +as Home Assistant will automatically migrate that setting for you on upgrade. + +## Support for "not" conditions in automations + +When an automation triggers, one can use conditions to check if the set +actions of an automation should be run. Conditions, however, always take the +positive approach: If "something" equals or is "this". + +As of this release, the conditions now have support for specifying if a +condition (or set of conditions) should "not" match. This can be helpful for +devices or entities that have multiple states, but you actually only want to +ensure it is not just that one state. + +

+Screenshot of the automation editor with a "not" condition +Screenshot of the automation editor with a "not" condition. +

+ +This feature has been added to the automation editor, but is also available +for writing automations in YAML. + +## HomeKit + +[@bdraco] has been busy improving HomeKit support for Home Assistant in 0.109, +but it seems like that didn't stop him even a tiny bit. This release [@xdissent] +and [@stickpin] jumped on the HomeKit bandwagon as well! + +HomeKit can now be configured and set up from the Home Assistant frontend, +and even allows you to set up multiple instances! This allows one to bypass the +maximum amount of devices a single HomeKit gateway supports by adding multiple. + +Ready for this? Home Assistant Core 0.110 now has camera support for HomeKit! + +And if that wasn't enough already, the integration now sends out entity +information as HomeKit accessory information. So you can easily find and see +which entity provided the accessory in HomeKit. + +

+Screenshot from HomeKit. Left: accessory information, Right: Camera support. +Screenshot from HomeKit. Left: accessory information, Right: Camera support. +

+ +## ONVIF + +The ONVIF integration did get lots of love from [@hunterjm]! ONVIF Profile S +conformant camera's, can now be set up via the UI! + +And that is not all... It now leverages more features of the ONVIF protocol: +pull point subscriptions. This means that events from ONVIF will now +show up in Home Assistant as well. So, if your ONVIF compatible camera supports +things like motion, object or sound detection, those will be available now! + +

+Screenshot of an ONVIF camera in Home Assistant +Screenshot of an ONVIF camera in Home Assistant. +

+ +## Supervisor + +Have you seen the new supervisor UI? [@ludeeus] did a great job redoing it's UI! +It now uses the same tabs as the configuration panel. The add-on page is split +into multiple tabs, the add-on store is cleaned up and you can view all logs +in the system tab now (requires advanced mode). + +

+Screenshot of the Supervisor panel +Screenshot of the Supervisor panel. +

+ +Some add-ons are now also marked "advanced" and are only visible when +you've enabled advanced mode on your user profile. + +[@ludeeus]: https://github.com/ludeeus + +## Other noteworthy changes + +- It took a while, as many adjustments had to be made. + This is the first release supporting **Python 3.8** 🎉! + +- Quite a few optimizations to make Home Assistant go faster. One of the major + changes is that Home Assistant will now set up all configured integration + instances in parallel during startup. Some startup speed reported + improvements from 82 seconds before this change and 28 seconds after this + change. That is a huge improvement! + +- The info page in the development tools now shows more information about + your set up. Including the name for your installation method. + It will tell you if you run Home Assistant, Home Assistant Supervised or + Home Assistant Core. + +- [@MartinHjelmare] added a new detection method for integrations that + potentially harm Home Assistant during runtime. We can now detect if an + integration tries to close Home Assistant's (shared) HTTP client. If this + happens, it will be prevented and write an error message to your log, + similar to how the I/O detection does it (released in [0.109](/blog/2020/04/29/release-109/#detection-of-blocking-io-in-the-event-loop)). + +- The ISY994 got a major upgrade! While it has quite a few breaking changes, it + is now available via the UI and many bug are squashed. Thanks [@shbatm]! + +## New Integrations + +- Add numato integration ([@clssn] - [#33816]) ([numato docs]) (new-integration) +- Add zwave mqtt ([@MartinHjelmare] - [#34987]) ([zwave_mqtt docs]) (new-integration) +- Add Home Connect integration ([@DavidMStraub] - [#29214]) ([homeconnect docs]) (new-integration) +- Add BleBox integration ([@gadgetmobile] - [#32664]) ([blebox docs]) (new-integration) +- Add devolo home control ([@2Fake] - [#33181]) ([devolo_home_control docs]) (new-integration) +- Add agent_dvr integration ([@ispysoftware] - [#32711]) ([agent_dvr docs]) (new-integration) +- Add Universal Powerline Bus ([@gwww] - [#34692]) ([upb docs]) (new-integration) +- Add Flick Electric NZ integration ([@ZephireNZ] - [#30696]) ([flickelectric docs]) (new-integration) +- Add BSBLan Climate integration ([@liudger] - [#32375]) ([bsblan docs]) (new-integration) +- Add Zerproc integration ([@emlove] - [#35477]) ([zerproc docs]) (new-integration) +- Add wiffi integration ([@mampfes] - [#30784]) ([wiffi docs]) (new-integration) +- Add forked_daapd integration ([@uvjustin] - [#31953]) ([forked_daapd docs]) (new-integration) + +## New Platforms + +- Add Xiaomi miio Alarm Control Panel ([@starkillerOG] - [#32091]) ([xiaomi_miio docs]) (new-platform) +- Config flow for hunterdouglas_powerview ([@bdraco] - [#34795]) ([hunterdouglas_powerview docs]) (new-platform) +- Add battery sensors to hunterdouglas_powerview ([@bdraco] - [#34917]) ([hunterdouglas_powerview docs]) (new-platform) +- Add zwave_mqtt sensor platform ([@cgarwood] - [#35135]) ([zwave_mqtt docs]) (new-platform) +- Add zwave_mqtt light platform ([@MartinHjelmare] - [#35337]) ([zwave_mqtt docs]) (new-platform) +- Universal Powerline Bus Scene support ([@gwww] - [#35401]) ([upb docs]) (new-platform) +- Add Climate Platform Support to ISY994 ([@shbatm] - [#35440]) ([isy994 docs]) (new-platform) +- ONVIF Event Implementation ([@hunterjm] - [#35406]) ([onvif docs]) (new-platform) +- Support BleBox sensor ([@gadgetmobile] - [#35374]) ([blebox docs]) (new-platform) +- Add binary sensor platform to zwave_mqtt ([@marcelveldt] - [#35519]) ([zwave_mqtt docs]) (new-platform) + +## Integrations now available to set up from the UI + +The following integrations are now available via the Home Assistant UI: + +- [Blink][blink docs], done by [@fronzbot] +- [HomeKit][homekit docs], done by [@bdraco] +- [Hunter Douglas PowerView][hunterdouglas_powerview docs], done by [@bdraco] +- [Lutron Caséta][lutron_caseta docs], done by [@chrisaljoudi] +- [Mill][mill docs], done by [@Danielhiversen] +- [ONVIF][onvif docs], done by [@hunterjm] +- [Pi-hole][pi_hole docs], done by [@shenxn] +- [Tibber][tibber docs], done by [@Danielhiversen] +- [Tuya][tuya docs], done by [@ollo69] +- [Universal Devices ISY994][isy994 docs], done by [@shbatm] + +## 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. + + + +## Breaking Changes + +- **Manual Alarm Panel** - When going from state `disarmed` to any other (armed) + state such as `armed_away`, the state will be `arming` instead of `pending` during + the transition time as set in the configuration. When going from an armed state + (such as `armed_away`) to the `triggered` state the state will still be + `pending` during the transition time as set in the configuration + (as it was before). - ([@starkillerOG] - [#32950]) ([manual docs]) + + - State attribute `pre_pending_state` changed to `previous_state` + - State attribute `post_pending_state` changed to `next_state` + - Configuration option `pending_time` is renamed to `arming_time`, + functionality is the same. + - The time the alarm stays at `pending` when triggered has changed from + `delay_time` of the previous state + `arming_time` (previously known as + `pending_time`) of the triggered state to only the `delay_time` of the + previous state. + +- **Cert Expiry** - The "name" configuration option marked as deprecated in + 0.107 has been removed and will now cause errors on startup if it remains in + the configuration. You should change your configuration accordingly. - + ([@jjlawren] - [#34628]) ([cert_expiry docs]) + +- **Nederlandse Spoorwegen** - The punctuality attribute has been removed from + the integration. Ever since NS updated its API a few months ago, its behavior + with regards to the punctuality has been incoherent, sometimes even missing + from the API's response. This has caused numerous Issues to be created in this + repo by users getting errors that the punctuality attribute was unlike what + the integration was expecting. - ([@YarmoM] - [#34680]) ([nederlandse_spoorwegen docs]) + +- **Fortigate** *(Deprecated)* - The Fortigate integration will be removed in + 0.112.0 and has a replacement in the FortiOS integration. + + Please refer to the fortios integration on how to configure the new + parameters: https://www.home-assistant.io/integrations/fortios/ - + ([@kifeo] - [#34854]) ([fortigate docs]) + +- **Raspberry Pi Camera** - To align with ADR-0007, configuration has been + moved under `rpi_camera:` as its own platform. - + ([@alxrdn] - [#34461]) ([rpi_camera docs]) + + Old YAML configuration example: + + ```yaml + camera: + - platform: rpi_camera + image_width: 1296 + image_height: 972 + image_quality: 75 + ``` + + New YAML configuration example: + + ```yaml + rpi_camera: + image_width: 1296 + image_height: 972 + image_quality: 75 + ``` + +- **ONVIF** - ONVIF is now available to be added from the Integrations UI! + The `extra_arguments` and `rtsp_transport` configuration from YAML is now a + part of the Options flow for the integration, and is not automatically + imported to the configuration flow with the rest of the defined ONVIF + platforms. - ([@hunterjm] - [#34520]) ([onvif docs]) + +- **PulseAudio Loopback** - Internal library code has been replaced with the + pulsectl library. - ([@breiti] - [#34965]) ([pulseaudio_loopback docs]) + + - The default connection honors the configuration in `/etc/pulse` + and no longer defaults to `localhost`. + - When a host is configured, the default port has been changed to 4713 to use + the native interface of PulseAudio. + - The configuration parameters `buffer_size` and `tcp_timeout` + have been removed. + +- **UPnP** - This integration has been simplified and will always create + sensors, so port mapping functionality has been removed. - + ([@StevenLooman] - [#35191]) ([upnp docs]) + + Example YAML configuration: + + ```yaml + upnp: + ``` + +- **ZHA** - Configuration options for ZHA integration in YAML is now deprecated + and will be removed in 0.112.0. - ([@Adminiuga] - [#35161]) ([zha docs]) + + Starting with the following radio configuration options: + + - `usb_path` + - `baudrate` + - `radio_type` + +- **IMAP Email Content** - The *state* of the `imap_email_content` is replaced + when there is no email found. With this change, any other thing like an + automation can react to the arrival of an email - + ([@isk0001y] - [#35123]) ([imap_email_content docs]) + +- **Sony Songpal** - This is now enabled through the Integrations UI. + To call `songpal/set_sound_setting` on all songpal devices, the `entity_id` + now needs to be set to `all` instead of left unset. - + ([@shenxn] - [#34714], [#35318]) ([songpal docs]) + +- **HTTP** - `base_url` is deprecated and replaced by an `internal_url` and + `external_url` core configuration setting. - + ([@frenck] - [#35224]) ([config docs]) ([http docs]) + +- **Kodi** - Kodi previously reported the media content type for all PVR + channels as "channel", no matter if it was a TV or a radio channel. + The media content type is now derived from the used player type, i.e., + it reports as "music" for radio channels and "video" for TV channels. - + ([@Tho85] - [#35091]) ([kodi docs]) + +- **Mill** - Mill is now enabled through the integrations UI and no longer + available via YAML - ([@Danielhiversen] - [#35136]) ([mill docs]) + +- **Homematic** - Automations relying on the numeric value for the garage door + status might break, since the status will now be reported as human-readable + strings. - ([@guillempages] - [#35349]) ([homematic docs]) + +- **Tuya** - Tuya is now enabled through the Integrations UI. - + ([@ollo69] - [#35422]) ([tuya docs]) + +- **LG webOS Smart TV** - A new `unique_id` is used for `webostv` media players + for users running a 0.109.X release. Duplicate entities will be created with + new entity IDs and old entities will need to be manually removed. - + ([@jjlawren] - [#34979]) ([webostv docs]) + +- **Blink** As of May 11, 2020 Blink has removed the old username/password + authentication method, which means all current Blink integrations prior to + this release are broken. + + In order to support this change, a 2FA key must be entered before setup + can continue. Some users may not have 2FA enabled on their account yet, + but you will still receive an email at login asking you to allow the device + to continue setting up. + + Your current YAML configuration will be converted to a UI-based configuration, + but the only supported entries are `username`, `password`, and `scan_interval`. + All other entries must be removed; otherwise, the integration will not be + configured. - ([@fronzbot] - [#35396]) ([blink docs]) + +- **Universal Devices ISY994** - This migrates ISY994 to PyISY v2 and is now + available to be added from the Integrations UI. PyISY Version 2 is a + significant update to the original module used to communicate with the ISY. + ([@shbatm] - [#35212], [#35338], [#35413], [#35391] ) ([isy994 docs]) + + As part of the update and many bug fixes, some breaking changes were introduced: + +
+ Click see all breaking changes for ISY994 + + - Remove ISY Climate Module support: the ISY Climate Module was retired by + UDI on 3/30/2020: UDI Announcement, support has been removed from the module, + so any entities based on Climate module nodes will no longer import into + Home Assistant. The enable_climate configuration option will need be removed + from your YAML configuration file. + + - Device State Attributes have changed: some attributes' names and types will + have changed as part of the changes to PyISY. If a user relied on a device + state attribute for a given entity, they should check that it is still there + and formatted the same. In general, more state attributes that were + previously unavailable, should appear. + + - isy994_control events now return with additional information about the + event. If a user relies on the control event property in Automations, these + will need to be updated since the format has changed to include the + additional detail. + + - Nodes that are "grouped" together in the ISY Admin Console will now be + correctly identified and sorted, this will cause additional entities to + be added to Home Assistant. If you were using this "group" feature to ignore + some sub-devices in Home Assistant, you will now need to use the + `ignore_string` in the name instead. + + - Turning on a light without providing a brightness value will use the ISY + Device's On Level property instead of turning on to full brightness + (if Home Assistant doesn't have a stored value for the last brightness). + + Sorting of certain devices based on the ISY's `Node Def ID` and `Insteon Type` + properties have been corrected to match the ISY's provided device categories, + as well as user feedback of incorrect sorting for specific devices. As a + result, some entities that were incorrectly categorized will now appear under + a different platform (e.g. switch to binary_sensor, light to switch, etc.) + + Both KeypadLinc Secondary Buttons and RemoteLinc2 Buttons have been moved from + `switch` to sensor. This is because these buttons cannot actually be directly + controlled via commands sent from the `switch` platform, doing so results in + communication errors from the ISY because the commands are not valid. + These devices are being moved to `sensor` instead of `binary_sensor` because + they report a state in a range from `0` to `255`; `0`=Off, `255`=On according + to their last brightness/dimming level sent. + + The ISY994 integration now includes a `restore_light_state` option. + In 0.109.0, a change was made to restore a light's brightness to the previous + state when turned on with no `brightness` parameter. This was, in part, to fix + an issue where the light to turn on to full brightness when no parameters were + given, regardless of the physical device's `On Level` brightness setting. + Using the `On Level` is now supported and is the default behavior. + To keep the current behavior and use Home Assistant's last brightness, + set the `restore_light_state` to `True` or enable the option in the new config + flow options. + + The following device node types have changed platforms to correct their + categorization: + + - "BinaryControl" (`SWITCH`->`BINARY_SENSOR`) + - "BinaryControl_ADV" (`SWITCH`->`BINARY_SENSOR`; IOLinc Sensor) + - "EZIO2x4_Input" (`SWITCH`->`BINARY_SENSOR`) + - "EZRAIN_Input" (`SWITCH`->`BINARY_SENSOR`) + - "OnOffControl" (`SWITCH`->`BINARY_SENSOR`) + - "OnOffControl_ADV" (New; Thermostat Control/Running Sensors) + - "EZIO2x4_Input_ADV" (`SWITCH`->SENSOR, Analog input on EZIO). + - "RemoteLinc2" (`LIGHT`->`SWITCH`), + - "RemoteLinc2_ADV" (`LIGHT`->`SWITCH`), + - RemoteLincs only report button presses as events, are not controllable and + do not accurately report dimmable states. + - New Insteon Types for `BINARY_SENSOR`S: "7.0.", "7.13." (IOLinc/EZIO Sensors) + - IOLinc sensor/control logic will be updated in PR-4 to sort them correctly + into two different platforms. + - New Insteon Type for `LOCKS`: "4.64." added. + - New Insteon Types for `SWITCHES`: "0.16.", "7.3.255.", "9.10." + +
+ +## All changes + +
+ Click to see all changes! + +- UniFi - Improve logging related to loosing connection to controller ([@Kane610] - [#34547]) ([unifi docs]) +- Set mqtt binary_sensor unavailable if expire_after specified ([@uphillbattle] - [#34259]) ([mqtt docs]) +- Add support for AirVisual Node/Pro units ([@bachya] - [#32815]) ([airvisual docs]) +- Add coverage to qwikswitch ([@ziv1234] - [#33939]) ([qwikswitch docs]) +- Remove hap pyc file ([@MartinHjelmare] - [#34563]) ([homematicip_cloud docs]) +- UniFi - Store controller in config_entry.entry_id ([@Kane610] - [#34553]) ([unifi docs]) +- Add service to clear SimpliSafe notifications ([@bachya] - [#34481]) ([simplisafe docs]) +- UniFi - Move some preloading of unavailable clients earlier in setup phase ([@Kane610] - [#34599]) ([unifi docs]) +- Upgrade pre-commit to 2.3.0 ([@frenck] - [#34604]) +- Rename BinarySensorDevice to BinarySensorEntity ([@emontnemery] - [#34462]) +- Upgrade mock-open to 1.4.0 ([@frenck] - [#34606]) +- Upgrade pyupgrade to v2.2.1 ([@frenck] - [#34608]) +- Upgrade codecov to 2.0.22 ([@frenck] - [#34607]) +- Use "arming" state during transition in manual alarm panel ([@starkillerOG] - [#32950]) ([manual docs]) (breaking-change) +- Move myStrom light and switch to async ([@fabaff] - [#34079]) ([mystrom docs]) +- Refactor Plex device/session updates ([@jjlawren] - [#34616]) ([plex docs]) +- Remove deprecated cert_expiry config ([@jjlawren] - [#34628]) ([cert_expiry docs]) (breaking-change) +- Add onvif PTZ GotoPreset ([@Geronimo2015] - [#34420]) ([onvif docs]) +- Fix failing vilfo test that was doing i/o ([@bdraco] - [#34647]) ([vilfo docs]) +- Update dynalite library and minor changes ([@ziv1234] - [#34618]) ([dynalite docs]) +- Allow flows to know if user is in advanced mode ([@balloob] - [#34629]) ([config docs]) +- Add NOT condition helper ([@frenck] - [#34624]) +- Store integration type in AirVisual config entry ([@bachya] - [#34621]) ([airvisual docs]) +- Fix recording duration flag ([@hunterjm] - [#34648]) ([stream docs]) +- Fix py38 tests ([@balloob] - [#34658]) ([google_assistant docs]) ([zeroconf docs]) +- Add Signalmessenger group recipients ([@bbernhard] - [#34419]) ([signal_messenger docs]) +- Rename MediaPlayerDevice to MediaPlayerEntity ([@emontnemery] - [#34592]) +- Rename LockDevice to LockEntity ([@emontnemery] - [#34594]) +- Rename ClimateDevice to ClimateEntity ([@emontnemery] - [#34591]) +- Rename AlarmControlPanel to AlarmControlPanelEntity ([@emontnemery] - [#34590]) +- Rename CoverDevice to CoverEntity ([@emontnemery] - [#34595]) +- Fix tests for Python 3.8 ([@balloob] - [#34672]) +- Add ability to ignore rachio discovery ([@bdraco] - [#34649]) ([rachio docs]) +- Add ability to ignore tado discovery ([@bdraco] - [#34650]) ([tado docs]) +- Add ability to ignore myq discovery ([@bdraco] - [#34652]) ([myq docs]) +- Fix more tests on Python 3.8 ([@balloob] - [#34703]) +- Python 3.8 on CI ([@pvizeli] - [#34654]) +- Rename VacuumDevice to VacuumEntity ([@emontnemery] - [#34674]) +- Rename RemoteDevice to RemoteEntity ([@emontnemery] - [#34676]) +- Bump pyairvisual and remove unused trends ([@bachya] - [#34707]) ([airvisual docs]) +- Rename Light to LightEntity ([@emontnemery] - [#34593]) +- Rename SwitchDevice to SwitchEntity ([@emontnemery] - [#34673]) +- Add missing typing to Spotify ([@rako77] - [#34698]) ([spotify docs]) +- Upgrade pillow to 7.1.2 ([@frenck] - [#34733]) ([doods docs]) ([proxy docs]) ([qrcode docs]) ([seven_segments docs]) ([sighthound docs]) ([tensorflow docs]) +- Create a unique_id for velux cover ([@tschamm] - [#34668]) ([velux docs]) +- Upgrade pytest-sugar to 0.9.3 ([@frenck] - [#34726]) +- Upgrade pytest-timeout to v1.3.4 ([@frenck] - [#34609]) +- Add unique ID to TRADFRI ([@balloob] - [#34745]) ([tradfri docs]) +- Improve error handling for Powerwall ([@jrester] - [#34580]) ([powerwall docs]) +- Upgrade pytest to 5.4.1 ([@frenck] - [#34739]) +- Allow ignoring discovery config flow helper ([@balloob] - [#34740]) +- Make ps4 config flow tests robust ([@MartinHjelmare] - [#34749]) ([ps4 docs]) +- Add hadolint to CI ([@pvizeli] - [#34758]) +- Refactor squeezebox ([@rajlaud] - [#34731]) ([squeezebox docs]) +- Bump simplisafe-python to 9.2.0 ([@bachya] - [#34750]) ([simplisafe docs]) +- Set up config entries in parallel ([@balloob] - [#34755]) +- Add Rachio rain delay switch ([@brg468] - [#34741]) ([rachio docs]) +- Validate that discovered config flows set a unique ID ([@balloob] - [#34751]) +- Arcam fmj bump library to 0.4.4 ([@elupus] - [#34687]) ([arcam_fmj docs]) +- Attempt to fix CI ([@balloob] - [#34800]) +- Add script to copy backend translations to frontend ([@balloob] - [#34706]) +- deCONZ - device triggers for Aqara Opple switches ([@merdok] - [#34815]) ([deconz docs]) +- Parallelize collections helper ([@balloob] - [#34783]) +- Minor helpers cleanup ([@balloob] - [#34786]) +- Log threading exceptions properly ([@balloob] - [#34789]) +- Add missing blocks ([@bdraco] - [#34832]) ([homekit docs]) +- Removed defunct punctuality from nederlandse_spoorwegen ([@YarmoM] - [#34680]) ([nederlandse_spoorwegen docs]) (breaking-change) +- Update nederlandse_spoorwegen nsapi to 3.0.4 ([@YarmoM] - [#34681]) ([nederlandse_spoorwegen docs]) +- Add Xiaomi miio Alarm Control Panel ([@starkillerOG] - [#32091]) ([xiaomi_miio docs]) (new-platform) +- Fix async_setup type in components/homeassistant module ([@gladhorn] - [#34816]) ([homeassistant docs]) +- Fix typo in arest sensor ([@brendongo] - [#34833]) ([arest docs]) +- Remove unnecessary space in greeneye_monitor unique_id ([@brendongo] - [#34834]) +- Fix race condition in august test under py38 ([@bdraco] - [#34775]) ([august docs]) +- Fix flapping reload tests ([@bdraco] - [#34837]) +- Bump version to 0.110.0dev0 ([@frenck] - [#34827]) +- Fix tuya network failure startup ([@ollo69] - [#34057]) ([tuya docs]) +- Remove side effects from rachio switch init ([@bdraco] - [#34799]) ([rachio docs]) +- Clean up Rachio binary sensor init ([@brg468] - [#34855]) ([rachio docs]) +- Prevent tplink tests from doing I/O ([@bdraco] - [#34879]) ([tplink docs]) +- Config flow for hunterdouglas_powerview ([@bdraco] - [#34795]) ([hunterdouglas_powerview docs]) (new-platform) +- Fix async scene conversion in Hunter Douglas Powerview ([@bdraco] - [#34899]) ([hunterdouglas_powerview docs]) +- Add numato integration ([@clssn] - [#33816]) ([numato docs]) (new-integration) +- Fix crash in NAD integration ([@gladhorn] - [#34571]) ([nad docs]) +- Add fortigate deprecation message ([@kifeo] - [#34854]) ([fortigate docs]) (breaking-change) +- Add overlay options wrapper to rpi_camera ([@alxrdn] - [#34461]) ([rpi_camera docs]) (breaking-change) +- Address new issues flagged by flake8 3.8.0a2 ([@scop] - [#34964]) +- Improve logging for unregistered webhooks ([@danielperna84] - [#34882]) ([webhook docs]) +- Use built-in test helpers on 3.8 ([@balloob] - [#34901]) +- Fix webhook imports sorting ([@MartinHjelmare] - [#34988]) ([webhook docs]) +- Fix not condition validation and entity/device extraction ([@frenck] - [#34959]) +- Cleanup homekit callbacks and jobs ([@bdraco] - [#34975]) ([homekit docs]) +- Add unique id to esphome config flow ([@ctalkington] - [#34753]) ([esphome docs]) +- Use a future for mock coro ([@balloob] - [#34989]) ([mqtt docs]) +- Introduce a singleton decorator ([@balloob] - [#34803]) +- Refactor Remote class in panasonic_viera ([@joogps] - [#34911]) ([panasonic_viera docs]) +- Update excess powerwall logging to be debug ([@bdraco] - [#34994]) ([powerwall docs]) +- Add battery sensors to hunterdouglas_powerview ([@bdraco] - [#34917]) ([hunterdouglas_powerview docs]) (new-platform) +- Config flow for homekit ([@bdraco] - [#34560]) ([homekit docs]) +- Remove some passings of loop ([@balloob] - [#34995]) ([rflink docs]) ([shell_command docs]) ([tradfri docs]) +- UniFi - Add simple options flow ([@Kane610] - [#34990]) ([unifi docs]) +- Attempt to fix flapping august lock test ([@bdraco] - [#34998]) ([august docs]) +- Config flow for ONVIF ([@hunterjm] - [#34520]) ([onvif docs]) (breaking-change) +- Add flow and return sensors for MELCloud ATW device ([@vilppuvuorinen] - [#34693]) ([melcloud docs]) +- Add full options to serial sensor platform ([@guiguid] - [#34962]) ([serial docs]) +- Fix unknown exception being caught ([@shenxn] - [#35005]) ([roomba docs]) +- Fix CI, incomplete change in melcloud ([@frenck] - [#35016]) ([melcloud docs]) +- Rename WaterHeaterDevice to WaterHeaterEntity ([@emontnemery] - [#34675]) +- Several optimizations to automations ([@frenck] - [#35007]) ([automation docs]) +- Use pulsectl library for PulseAudio connection ([@breiti] - [#34965]) ([pulseaudio_loopback docs]) (breaking-change) +- Include QoS and retain in MQTT debug info ([@emontnemery] - [#35011]) ([mqtt docs]) +- Bump HAP-python to 2.8.3 ([@bdraco] - [#35023]) ([homekit docs]) +- Update AirVisual to use DataUpdateCoordinator ([@bachya] - [#34796]) ([airvisual docs]) +- Add more SNMP variable types ([@Mich-b] - [#33426]) ([snmp docs]) +- Fix songpal on devices where source!=uri ([@rytilahti] - [#34699]) ([songpal docs]) +- Fix ONVIF YAML import ([@frenck] - [#35035]) ([onvif docs]) +- Add yeelight meteorite (YLDL01YL, ceiling10) ([@rytilahti] - [#35018]) ([yeelight docs]) +- Cleanup homekit strings spacing ([@bdraco] - [#35056]) ([homekit docs]) +- Fix another race in august tests ([@bdraco] - [#35054]) +- Add scene to default config ([@balloob] - [#35058]) ([default_config docs]) +- added abbreviation for temperature_unit ([@unixko] - [#35076]) ([mqtt docs]) +- Fix proliphix ([@mhorst314] - [#34397]) ([proliphix docs]) +- Upgrade youtube_dl to version 2020.05.03 ([@BKPepe] - [#35078]) ([media_extractor docs]) +- Fix vera config ids not being converted to integers ([@vangorra] - [#35070]) ([vera docs]) +- Async vs sync inheritance mismatch fixes ([@scop] - [#35088]) ([atag docs]) ([fortigate docs]) ([hunterdouglas_powerview docs]) +- Use savoury1/ffmpeg4 PPA on Travis, PyAV 7 needs FFmpeg >= 4 ([@scop] - [#35090]) +- Check isinstance on collections.abc, not typing classes ([@scop] - [#35087]) ([smartthings docs]) +- Upgrades requests-mock to 1.8.0 ([@frenck] - [#35093]) +- Correct error message in Microsoft Face ([@ochlocracy] - [#35096]) ([microsoft_face docs]) +- Add zwave mqtt ([@MartinHjelmare] - [#34987]) ([zwave_mqtt docs]) (new-integration) +- Improve UPnP configuration flow ([@StevenLooman] - [#34737]) ([discovery docs]) ([upnp docs]) +- Add support for influxdb path parameter ([@pdcemulator] - [#35089]) ([influxdb docs]) +- Add codeowner to Monoprice integration ([@OnFreund] - [#35111]) ([monoprice docs]) +- Fix unloading of Monoprice config entries ([@OnFreund] - [#35112]) ([monoprice docs]) +- Increase surepetcare default timeout ([@benleb] - [#34944]) ([surepetcare docs]) +- Tibber config flow ([@Danielhiversen] - [#34469]) ([tibber docs]) +- Use suggestd_value instead of default in Monoprice options flow ([@OnFreund] - [#35107]) ([monoprice docs]) +- Simplify MQTT light brightness logic ([@LordMike] - [#35097]) ([mqtt docs]) +- Use asynctest-mock in most places ([@balloob] - [#35109]) +- Make alexa and google aware of DEVICE_CLASS_GATE ([@bdraco] - [#35103]) ([alexa docs]) ([google_assistant docs]) +- Add type to device registry ([@balloob] - [#35095]) ([adguard docs]) ([config docs]) +- Add required features to cover service registration ([@MartinHjelmare] - [#35073]) ([cover docs]) +- Upgrade spotipy to 2.12.0 ([@frenck] - [#35149]) ([spotify docs]) +- Upgrade numpy to 1.18.4 ([@frenck] - [#35150]) ([iqvia docs]) ([opencv docs]) ([tensorflow docs]) ([trend docs]) +- Add support for refreshing synology_dsm sensors ([@ronaldheft] - [#35141]) ([synology_dsm docs]) +- Return emulated hue id for update requests ([@Tho85] - [#35139]) ([emulated_hue docs]) +- Support multiple EDL21 meters ([@mtdcr] - [#33594]) ([edl21 docs]) +- Improve emulated_hue compatibility with newer systems ([@Tho85] - [#35148]) ([emulated_hue docs]) +- Upgrade pyupgrade to v2.3.0 ([@frenck] - [#35159]) +- Upgrade cryptography to 2.9.2 ([@BKPepe] - [#35084]) +- scrape: extract strings from new non-text tags ([@davidjb] - [#35021]) ([scrape docs]) +- Upgrade zeroconf to 0.26.0 ([@fabaff] - [#35176]) ([zeroconf docs]) +- Upgrade alpha_vantage to 2.2.0 ([@fabaff] - [#35172]) ([alpha_vantage docs]) +- Upgrade pytz to 2020.1 ([@fabaff] - [#35174]) +- Squeezebox add query and sync ([@rajlaud] - [#31748]) ([squeezebox docs]) +- UniFi - Improve signalling and handling of adding new entities ([@Kane610] - [#34925]) ([unifi docs]) +- Simplification of upnp component ([@StevenLooman] - [#35191]) ([upnp docs]) (breaking-change) +- Some Sonos fixes ([@amelchio] - [#35115]) ([sonos docs]) +- Extract instance ID helper from updater ([@balloob] - [#35043]) ([updater docs]) +- Group by endpoints and not by devices for ZHA Zigbee groups ([@dmulcahey] - [#34583]) ([zha docs]) +- Move life360 I/O out of event loop in config flow ([@pnbruckner] - [#35193]) ([life360 docs]) +- Allow use of common entity update service in AirVisual ([@bachya] - [#35203]) ([airvisual docs]) +- Make sure MQTT light brightness is not rounded to 0 ([@emontnemery] - [#35207]) ([mqtt docs]) +- Add homekit camera support ([@xdissent] - [#32527]) ([homekit docs]) +- ISY994 migration to PyISY v2 (Structure Changes to enable upgrade, Part 1) ([@shbatm] - [#35212]) ([isy994 docs]) (breaking-change) +- Fix AdGuard device info ([@balloob] - [#35217]) ([adguard docs]) +- Add zwave_mqtt sensor platform ([@cgarwood] - [#35135]) ([zwave_mqtt docs]) (new-platform) +- Bump up pyserial dependency ([@Adminiuga] - [#35201]) ([acer_projector docs]) +- Add config flow base strings ([@balloob] - [#34523]) +- Strict creation of the config for dynalite ([@ziv1234] - [#34663]) ([dynalite docs]) +- ISY994 Structure updates in prep for PyISYv2 (Part 2) ([@shbatm] - [#35225]) ([isy994 docs]) +- Add Home Connect integration ([@DavidMStraub] - [#29214]) ([homeconnect docs]) (new-integration) +- Add BleBox integration ([@gadgetmobile] - [#32664]) ([blebox docs]) (new-integration) +- Updated frontend to 20200505.0 ([@bramkragten] - [#35253]) ([frontend docs]) +- Clean up device registry if entity registry updates ([@balloob] - [#35106]) +- Add issue_tracker property to manifest ([@frenck] - [#35153]) +- Guard bad entity ID in entity registry ([@balloob] - [#35271]) +- Add manual config flow for Plex ([@jjlawren] - [#34476]) ([plex docs]) +- Fix pyload API statusServer doesn't take parameters ([@h4de5] - [#35242]) ([pyload docs]) +- Add zwave workaround identification for Kwikset 916 and Kwikset Obsidian ([@bryantlee] - [#35277]) ([zwave docs]) +- Add current step that is in progress ([@balloob] - [#35272]) ([config docs]) +- Fix fan not checking supported_features ([@shenxn] - [#35248]) ([fan docs]) +- New configuration flow for ZHA integration ([@Adminiuga] - [#35161]) ([zha docs]) (breaking-change) +- Update pydaikin to 2.0.0 ([@fredrike] - [#34807]) ([daikin docs]) +- Provide zeroconf option to bind to only the default interface ([@bdraco] - [#35281]) ([zeroconf docs]) +- Clean up script for WLED translations ([@balloob] - [#35260]) +- Refactor ONVIF ([@hunterjm] - [#35222]) ([onvif docs]) +- Upgrade zeroconf to 0.26.1 to resolve performance regression ([@bdraco] - [#35291]) ([zeroconf docs]) +- Fail tests if wrapped callbacks or coroutines throw ([@emontnemery] - [#35010]) ([mqtt docs]) +- Add Synology DSM scan interval option flow ([@Quentame] - [#35183]) ([synology_dsm docs]) +- Reset imap email content state if no email ([@isk0001y] - [#35123]) ([imap_email_content docs]) (breaking-change) +- Add config flow support to songpal integration ([@shenxn] - [#34714]) ([songpal docs]) (breaking-change) +- Add state reproduction to the alert component ([@bachya] - [#35267]) ([alert docs]) +- Fix broken CI ([@balloob] - [#35314]) ([unifi docs]) +- Fix incorrect device registry call in Notion ([@bachya] - [#35306]) ([notion docs]) +- Handle config with a limited Plex account ([@jjlawren] - [#35218]) ([plex docs]) +- UniFi - Make devices proper push based ([@Kane610] - [#35152]) ([unifi docs]) +- Add devolo home control ([@2Fake] - [#33181]) ([devolo_home_control docs]) (new-integration) +- Add Homekit cameras codecs ([@stickpin] - [#35238]) ([homekit docs]) +- Add zwave_mqtt light platform ([@MartinHjelmare] - [#35337]) ([zwave_mqtt docs]) (new-platform) +- Add get_url helper, deprecate base_url ([@frenck] - [#35224]) ([config docs]) ([http docs]) (breaking-change) +- Bump plexwebsocket to 0.0.8 ([@jjlawren] - [#35351]) ([plex docs]) +- Enable async_update for entities in NWS ([@MatthewFlamm] - [#35048]) ([nws docs]) +- Migrate ISY994 to PyISY v2 ([@shbatm] - [#35338]) ([isy994 docs]) (breaking-change) +- Delete flapping automatic tests ([@bdraco] - [#35356]) ([automatic docs]) +- Rewrite JuiceNet for async and config flow ([@jesserockz] - [#34365]) ([juicenet docs]) +- Add modbus sensor string data_type ([@bradkeifer] - [#35269]) ([modbus docs]) +- Capitalize kane610 in codeowners since scripts are case sensitive ([@Kane610] - [#35375]) ([axis docs]) ([deconz docs]) ([unifi docs]) +- Remove unused decorator in Airly ([@bieniu] - [#35361]) ([airly docs]) +- Upgrade youtube_dl to version 2020.05.08 ([@BKPepe] - [#35376]) ([media_extractor docs]) +- Update devolo_home_control strings ([@2Fake] - [#35362]) ([devolo_home_control docs]) +- Add agent_dvr integration ([@ispysoftware] - [#32711]) ([agent_dvr docs]) (new-integration) +- Detect use of deprecated base_url ([@frenck] - [#35353]) +- Add config option to ignore Plex Web clients ([@jjlawren] - [#34708]) ([plex docs]) +- Bump up zha-device-handlers dependecy for ZHA ([@Adminiuga] - [#35379]) ([zha docs]) +- Add Daikin total/cool/heat power sensors ([@mlemainque] - [#34391]) ([daikin docs]) +- Upgrade pytest to 5.4.2 ([@frenck] - [#35381]) +- Fix devolo switch on and off ([@2Fake] - [#35357]) ([devolo_home_control docs]) +- async_get_url -> get_url ([@frenck] - [#35382]) +- Add Universal Powerline Bus ([@gwww] - [#34692]) ([upb docs]) (new-integration) +- UniFi - Make clients proper push based ([@Kane610] - [#35273]) ([unifi docs]) +- Update ZHA zigpy-deconz dependency ([@Adminiuga] - [#35389]) ([zha docs]) +- Make roku async ([@ctalkington] - [#35104]) ([roku docs]) +- Small collection of random styling tweaks, fixes and Pythonism ([@frenck] - [#35390]) +- Improve ISY994 Z-Wave and binary sensor device sorting ([@shbatm] - [#35391]) ([isy994 docs]) (breaking-change) +- Upgrade bravia-tv backend to 1.0.4 ([@dcnielsen90] - [#35393]) ([braviatv docs]) +- UniFi - Additional consolidation for cleanliness sake ([@Kane610] - [#35395]) ([unifi docs]) +- Update rokuecp to 0.2.1 ([@ctalkington] - [#35400]) ([roku docs]) +- Universal Powerline Bus Scene support ([@gwww] - [#35401]) ([upb docs]) (new-platform) +- Update rokuecp to 0.2.2 ([@ctalkington] - [#35404]) +- Add service to turn on the switcher device with timer ([@thecode] - [#33235]) ([switcher_kis docs]) +- Pylint cleanups ([@scop] - [#35409]) +- Refactor ZHA config flow ([@Adminiuga] - [#35397]) ([zha docs]) +- Update rokuecp to 0.2.3 ([@ctalkington] - [#35420]) ([roku docs]) +- Add config flow, use async loading, and restore brightness option to ISY994 ([@shbatm] - [#35413]) ([isy994 docs]) (breaking-change) +- Add battery information to BLE devices ([@guillempages] - [#33222]) ([bluetooth_le_tracker docs]) +- UniFi - Use more common strings for config flow ([@Kane610] - [#35399]) ([unifi docs]) +- Updated frontend to 20200509.0 ([@bramkragten] - [#35427]) ([frontend docs]) +- Activate Calendar Panel ([@zsarnett] - [#35276]) ([calendar docs]) +- Improve roku remote ([@ctalkington] - [#35419]) ([roku docs]) +- Update rokuecp to 0.3.2 ([@ctalkington] - [#35429]) ([roku docs]) +- Fix permissions on bluetooth_le_tracker ([@bdraco] - [#35432]) ([bluetooth_le_tracker docs]) +- Fix scaffold and hassfest references ([@balloob] - [#35431]) +- reduce roku scan interval by 10s ([@ctalkington] - [#35433]) ([roku docs]) +- Add Device Registry support and Device Info for ISY994 ([@shbatm] - [#35435]) ([isy994 docs]) +- Add Flick Electric NZ integration ([@ZephireNZ] - [#30696]) ([flickelectric docs]) (new-integration) +- Add BSBLan Climate integration ([@liudger] - [#32375]) ([bsblan docs]) (new-integration) +- Only add SAJ sensors that are enabled and available ([@fredericvl] - [#34978]) ([saj docs]) +- Kodi: Correctly report media content type for PVR channels ([@Tho85] - [#35091]) ([kodi docs]) (breaking-change) +- Songpal code and test improvement ([@shenxn] - [#35318]) ([songpal docs]) (breaking-change) +- Make upnp update interval configurable ([@StevenLooman] - [#35298]) ([upnp docs]) +- Add Climate Platform Support to ISY994 ([@shbatm] - [#35440]) ([isy994 docs]) (new-platform) +- Add min_mireds and max_mireds to MQTT Light ([@314eter] - [#32613]) ([mqtt docs]) +- Add const module to oauth2 scaffold template ([@MartinHjelmare] - [#35438]) +- Increase coverage and cleanup BleBox cover ([@gadgetmobile] - [#35369]) ([blebox docs]) +- Fix Daikin power sensors ([@mlemainque] - [#35428]) ([daikin docs]) +- Fix roomba bin full binary sensor ([@shenxn] - [#35443]) ([roomba docs]) +- Add Mill config flow ([@Danielhiversen] - [#35136]) ([mill docs]) (breaking-change) +- Add support for ISY994 Variables as Sensors ([@shbatm] - [#35453]) ([isy994 docs]) +- Remove logo & icon from manifest ([@frenck] - [#35410]) +- UniFi - Update device registry after device has been upgraded ([@Kane610] - [#35430]) ([unifi docs]) +- Listen for group member state changes when using `expand` in templates ([@Tho85] - [#35398]) +- Add names for the homematic garage door states ([@guillempages] - [#35349]) ([homematic docs]) (breaking-change) +- Whitelist edl21 negative active energy sensors ([@mtdcr] - [#34662]) ([edl21 docs]) +- Bump envoy_reader version ([@gtdiehl] - [#35465]) ([enphase_envoy docs]) +- Remove constants from myq that are now upstream ([@bdraco] - [#35463]) ([myq docs]) +- Open garage, move code to an external library. ([@Danielhiversen] - [#35462]) ([opengarage docs]) +- Make interface_choice option effective ([@bdraco] - [#35444]) ([zeroconf docs]) +- Make homekit TV media players aware of STATE_STANDBY ([@bdraco] - [#35282]) ([homekit docs]) +- Update rokuecp to 0.4.0 ([@ctalkington] - [#35436]) ([roku docs]) +- Add config flow for Tuya ([@ollo69] - [#35422]) ([tuya docs]) (breaking-change) +- Use common strings for directv config flow ([@ctalkington] - [#35471]) ([directv docs]) ([directv docs]) +- Fix exception in hunterdouglas_powerview with ignored config entry ([@bdraco] - [#35482]) ([hunterdouglas_powerview docs]) +- Make homekit camera snapshots HAP spec compliant ([@bdraco] - [#35299]) ([homekit docs]) +- Reduce context switching in homekit state updates ([@bdraco] - [#35147]) ([homekit docs]) +- Bump pyatmo version to 3.3.1 ([@cgtobi] - [#35476]) ([netatmo docs]) +- Allow zeroconf instance sharing ([@balloob] - [#35484]) ([zeroconf docs]) +- Add lutron_caseta config entries ([@chrisaljoudi] - [#34133]) ([lutron_caseta docs]) +- Change unique_id for webostv ([@jjlawren] - [#34979]) ([webostv docs]) (breaking-change) +- Correctly handle failed Atag update in coordinator ([@MatsNl] - [#35473]) ([atag docs]) +- Use common strings and fix key name for error in vizio ([@raman325] - [#35487]) ([vizio docs]) +- Fix light toggle service attributes ([@shenxn] - [#35483]) ([light docs]) +- Upgrade slixmpp library to 1.5.1 ([@flowolf] - [#35495]) ([xmpp docs]) +- Handle error fetching available account link services ([@balloob] - [#35485]) ([cloud docs]) +- Minor Tuya Fix ([@ollo69] - [#35497]) ([tuya docs]) +- Ensure homekit camera stream can be restarted after failure ([@bdraco] - [#35384]) ([homekit docs]) +- Use config flow base strings ([@fredrike] - [#35494]) ([point docs]) +- Show device details in homekit accessory service info ([@bdraco] - [#35100]) ([homekit docs]) +- Add Device and Integration Services to ISY994 ([@shbatm] - [#35467]) ([isy994 docs]) +- ONVIF Event Implementation ([@hunterjm] - [#35406]) ([onvif docs]) (new-platform) +- Add cast app media ([@Eerovil] - [#35114]) ([cast docs]) +- Bump pydaikin to 2.0.1, catch HTTPForbidden exception ([@fredrike] - [#35466]) ([daikin docs]) +- Fix Home Connect datetime comparison ([@DavidMStraub] - [#35501]) ([home_connect docs]) +- Move upnp update_interval options flow ([@StevenLooman] - [#35474]) ([upnp docs]) +- Use system zeroconf singleton for homekit ([@bdraco] - [#35502]) ([homekit docs]) +- Compare uvc rtsp stream uri to host config ([@danjenkins] - [#31107]) ([uvc docs]) +- Pre-filter zeroconf service browser updates ([@bdraco] - [#35518]) ([zeroconf docs]) +- Upgrade pre-commit to 2.4.0 ([@frenck] - [#35520]) +- Fix bsblan get key CONF_PASSKEY ([@liudger] - [#35513]) ([bsblan docs]) +- Bumped aioswitcher to 1.2.0. ([@TomerFi] - [#35510]) ([switcher_kis docs]) +- Bump up ZHA dependecy ([@Adminiuga] - [#35521]) ([zha docs]) +- Code conformance and sensor value clean-up on ISY994 ([@shbatm] - [#35514]) ([isy994 docs]) +- Universal Powerline Bus -- Link Events ([@gwww] - [#35526]) ([upb docs]) +- Use common strings for songpal config flow ([@shenxn] - [#35517]) ([songpal docs]) +- Use common strings for ipp config flow ([@ctalkington] - [#35505]) ([ipp docs]) +- Fix zwave_mqtt discovery of switch entities ([@marcelveldt] - [#35533]) ([zwave_mqtt docs]) +- Rewrite Atag ([@MatsNl] - [#35496]) ([atag docs]) +- support BleBox sensor ([@gadgetmobile] - [#35374]) ([blebox docs]) (new-platform) +- Return fan_speed_list based on SUPPORT_FAN_SPEED. ([@ochlocracy] - [#35347]) +- Meteo-France Vigilance Dependancy Update ([@Imbuzi] - [#35537]) ([meteo_france docs]) +- Add validator for battery scan option ([@guillempages] - [#35506]) ([bluetooth_le_tracker docs]) +- Use common strings for roku config flow ([@ctalkington] - [#35504]) ([roku docs]) +- Update HAP-python to 2.8.4 ([@bdraco] - [#35541]) ([homekit docs]) +- Fix sense doing I/O in the event loop ([@bdraco] - [#35523]) ([sense docs]) +- Add email as common data string ([@balloob] - [#35546]) +- Add temperature device class to Darksky sensors ([@balloob] - [#35544]) ([darksky docs]) +- Use config flow references for data ([@balloob] - [#35529]) +- Add binary sensor platform to zwave_mqtt ([@marcelveldt] - [#35519]) ([zwave_mqtt docs]) (new-platform) +- Upgrade opengarage library ([@Danielhiversen] - [#35549]) ([opengarage docs]) +- Fix examples in services.yaml for squeezebox component ([@rajlaud] - [#35548]) ([squeezebox docs]) +- Bump bsblan lib to version 0.3.7 ([@liudger] - [#35551]) ([bsblan docs]) +- Ensure homekit_controller recieves zeroconf c# updates ([@bdraco] - [#35545]) ([homekit_controller docs]) ([zeroconf docs]) +- Try to automatically detect zones on first run of Monoprice integration ([@OnFreund] - [#35127]) ([monoprice docs]) +- Implement soundtouch select source ([@jtommi] - [#31669]) ([soundtouch docs]) +- Updated frontend to 20200512.0 ([@bramkragten] - [#35558]) ([frontend docs]) +- Add Zerproc integration ([@emlove] - [#35477]) ([zerproc docs]) (new-integration) +- Add more system information from Supervisor ([@frenck] - [#35560]) ([hassio docs]) ([updater docs]) +- UniFi - Sites don't declare role on UniFiOS 1.7.0 beta ([@Kane610] - [#35555]) ([unifi docs]) +- Fix synology temperature rounding ([@shenxn] - [#35556]) ([synology_dsm docs]) +- Bump plexapi to 3.6.0 ([@jjlawren] - [#35563]) ([plex docs]) +- Patch aiohttp client session close ([@MartinHjelmare] - [#34769]) +- Fix connection problems in the Broadlink integration ([@felipediel] - [#34670]) ([broadlink docs]) +- Add wiffi integration ([@mampfes] - [#30784]) ([wiffi docs]) (new-integration) +- Plex discovery on demand ([@jjlawren] - [#35303]) ([plex docs]) +- Add forked_daapd integration ([@uvjustin] - [#31953]) ([forked_daapd docs]) (new-integration) +- update knx module to xknx 0.11.3 ([@farmio] - [#35154]) ([knx docs]) +- Add config flow to pi_hole integration ([@shenxn] - [#35442]) ([pi_hole docs]) +- Updated frontend to 20200513.0 ([@bramkragten] - [#35574]) ([frontend docs]) +- Add config flow and 2FA support for Blink ([@fronzbot] - [#35396]) ([blink docs]) (breaking-change) +- Add ssdp discovery for isy994 ([@bdraco] - [#35568]) ([isy994 docs]) + +
+ +[#29214]: https://github.com/home-assistant/core/pull/29214 +[#30696]: https://github.com/home-assistant/core/pull/30696 +[#30784]: https://github.com/home-assistant/core/pull/30784 +[#31107]: https://github.com/home-assistant/core/pull/31107 +[#31669]: https://github.com/home-assistant/core/pull/31669 +[#31748]: https://github.com/home-assistant/core/pull/31748 +[#31953]: https://github.com/home-assistant/core/pull/31953 +[#32091]: https://github.com/home-assistant/core/pull/32091 +[#32375]: https://github.com/home-assistant/core/pull/32375 +[#32527]: https://github.com/home-assistant/core/pull/32527 +[#32613]: https://github.com/home-assistant/core/pull/32613 +[#32664]: https://github.com/home-assistant/core/pull/32664 +[#32711]: https://github.com/home-assistant/core/pull/32711 +[#32815]: https://github.com/home-assistant/core/pull/32815 +[#32950]: https://github.com/home-assistant/core/pull/32950 +[#33181]: https://github.com/home-assistant/core/pull/33181 +[#33222]: https://github.com/home-assistant/core/pull/33222 +[#33235]: https://github.com/home-assistant/core/pull/33235 +[#33426]: https://github.com/home-assistant/core/pull/33426 +[#33594]: https://github.com/home-assistant/core/pull/33594 +[#33816]: https://github.com/home-assistant/core/pull/33816 +[#33939]: https://github.com/home-assistant/core/pull/33939 +[#34057]: https://github.com/home-assistant/core/pull/34057 +[#34079]: https://github.com/home-assistant/core/pull/34079 +[#34133]: https://github.com/home-assistant/core/pull/34133 +[#34259]: https://github.com/home-assistant/core/pull/34259 +[#34365]: https://github.com/home-assistant/core/pull/34365 +[#34391]: https://github.com/home-assistant/core/pull/34391 +[#34397]: https://github.com/home-assistant/core/pull/34397 +[#34419]: https://github.com/home-assistant/core/pull/34419 +[#34420]: https://github.com/home-assistant/core/pull/34420 +[#34461]: https://github.com/home-assistant/core/pull/34461 +[#34462]: https://github.com/home-assistant/core/pull/34462 +[#34469]: https://github.com/home-assistant/core/pull/34469 +[#34476]: https://github.com/home-assistant/core/pull/34476 +[#34481]: https://github.com/home-assistant/core/pull/34481 +[#34520]: https://github.com/home-assistant/core/pull/34520 +[#34523]: https://github.com/home-assistant/core/pull/34523 +[#34547]: https://github.com/home-assistant/core/pull/34547 +[#34553]: https://github.com/home-assistant/core/pull/34553 +[#34560]: https://github.com/home-assistant/core/pull/34560 +[#34563]: https://github.com/home-assistant/core/pull/34563 +[#34571]: https://github.com/home-assistant/core/pull/34571 +[#34580]: https://github.com/home-assistant/core/pull/34580 +[#34583]: https://github.com/home-assistant/core/pull/34583 +[#34590]: https://github.com/home-assistant/core/pull/34590 +[#34591]: https://github.com/home-assistant/core/pull/34591 +[#34592]: https://github.com/home-assistant/core/pull/34592 +[#34593]: https://github.com/home-assistant/core/pull/34593 +[#34594]: https://github.com/home-assistant/core/pull/34594 +[#34595]: https://github.com/home-assistant/core/pull/34595 +[#34599]: https://github.com/home-assistant/core/pull/34599 +[#34604]: https://github.com/home-assistant/core/pull/34604 +[#34606]: https://github.com/home-assistant/core/pull/34606 +[#34607]: https://github.com/home-assistant/core/pull/34607 +[#34608]: https://github.com/home-assistant/core/pull/34608 +[#34609]: https://github.com/home-assistant/core/pull/34609 +[#34616]: https://github.com/home-assistant/core/pull/34616 +[#34618]: https://github.com/home-assistant/core/pull/34618 +[#34621]: https://github.com/home-assistant/core/pull/34621 +[#34624]: https://github.com/home-assistant/core/pull/34624 +[#34628]: https://github.com/home-assistant/core/pull/34628 +[#34629]: https://github.com/home-assistant/core/pull/34629 +[#34647]: https://github.com/home-assistant/core/pull/34647 +[#34648]: https://github.com/home-assistant/core/pull/34648 +[#34649]: https://github.com/home-assistant/core/pull/34649 +[#34650]: https://github.com/home-assistant/core/pull/34650 +[#34652]: https://github.com/home-assistant/core/pull/34652 +[#34654]: https://github.com/home-assistant/core/pull/34654 +[#34658]: https://github.com/home-assistant/core/pull/34658 +[#34662]: https://github.com/home-assistant/core/pull/34662 +[#34663]: https://github.com/home-assistant/core/pull/34663 +[#34668]: https://github.com/home-assistant/core/pull/34668 +[#34670]: https://github.com/home-assistant/core/pull/34670 +[#34672]: https://github.com/home-assistant/core/pull/34672 +[#34673]: https://github.com/home-assistant/core/pull/34673 +[#34674]: https://github.com/home-assistant/core/pull/34674 +[#34675]: https://github.com/home-assistant/core/pull/34675 +[#34676]: https://github.com/home-assistant/core/pull/34676 +[#34680]: https://github.com/home-assistant/core/pull/34680 +[#34681]: https://github.com/home-assistant/core/pull/34681 +[#34687]: https://github.com/home-assistant/core/pull/34687 +[#34692]: https://github.com/home-assistant/core/pull/34692 +[#34693]: https://github.com/home-assistant/core/pull/34693 +[#34698]: https://github.com/home-assistant/core/pull/34698 +[#34699]: https://github.com/home-assistant/core/pull/34699 +[#34703]: https://github.com/home-assistant/core/pull/34703 +[#34706]: https://github.com/home-assistant/core/pull/34706 +[#34707]: https://github.com/home-assistant/core/pull/34707 +[#34708]: https://github.com/home-assistant/core/pull/34708 +[#34714]: https://github.com/home-assistant/core/pull/34714 +[#34726]: https://github.com/home-assistant/core/pull/34726 +[#34731]: https://github.com/home-assistant/core/pull/34731 +[#34733]: https://github.com/home-assistant/core/pull/34733 +[#34737]: https://github.com/home-assistant/core/pull/34737 +[#34739]: https://github.com/home-assistant/core/pull/34739 +[#34740]: https://github.com/home-assistant/core/pull/34740 +[#34741]: https://github.com/home-assistant/core/pull/34741 +[#34745]: https://github.com/home-assistant/core/pull/34745 +[#34749]: https://github.com/home-assistant/core/pull/34749 +[#34750]: https://github.com/home-assistant/core/pull/34750 +[#34751]: https://github.com/home-assistant/core/pull/34751 +[#34753]: https://github.com/home-assistant/core/pull/34753 +[#34755]: https://github.com/home-assistant/core/pull/34755 +[#34758]: https://github.com/home-assistant/core/pull/34758 +[#34769]: https://github.com/home-assistant/core/pull/34769 +[#34775]: https://github.com/home-assistant/core/pull/34775 +[#34783]: https://github.com/home-assistant/core/pull/34783 +[#34786]: https://github.com/home-assistant/core/pull/34786 +[#34789]: https://github.com/home-assistant/core/pull/34789 +[#34795]: https://github.com/home-assistant/core/pull/34795 +[#34796]: https://github.com/home-assistant/core/pull/34796 +[#34799]: https://github.com/home-assistant/core/pull/34799 +[#34800]: https://github.com/home-assistant/core/pull/34800 +[#34803]: https://github.com/home-assistant/core/pull/34803 +[#34807]: https://github.com/home-assistant/core/pull/34807 +[#34815]: https://github.com/home-assistant/core/pull/34815 +[#34816]: https://github.com/home-assistant/core/pull/34816 +[#34827]: https://github.com/home-assistant/core/pull/34827 +[#34832]: https://github.com/home-assistant/core/pull/34832 +[#34833]: https://github.com/home-assistant/core/pull/34833 +[#34834]: https://github.com/home-assistant/core/pull/34834 +[#34837]: https://github.com/home-assistant/core/pull/34837 +[#34854]: https://github.com/home-assistant/core/pull/34854 +[#34855]: https://github.com/home-assistant/core/pull/34855 +[#34879]: https://github.com/home-assistant/core/pull/34879 +[#34882]: https://github.com/home-assistant/core/pull/34882 +[#34899]: https://github.com/home-assistant/core/pull/34899 +[#34901]: https://github.com/home-assistant/core/pull/34901 +[#34911]: https://github.com/home-assistant/core/pull/34911 +[#34917]: https://github.com/home-assistant/core/pull/34917 +[#34925]: https://github.com/home-assistant/core/pull/34925 +[#34944]: https://github.com/home-assistant/core/pull/34944 +[#34959]: https://github.com/home-assistant/core/pull/34959 +[#34962]: https://github.com/home-assistant/core/pull/34962 +[#34964]: https://github.com/home-assistant/core/pull/34964 +[#34965]: https://github.com/home-assistant/core/pull/34965 +[#34975]: https://github.com/home-assistant/core/pull/34975 +[#34978]: https://github.com/home-assistant/core/pull/34978 +[#34979]: https://github.com/home-assistant/core/pull/34979 +[#34987]: https://github.com/home-assistant/core/pull/34987 +[#34988]: https://github.com/home-assistant/core/pull/34988 +[#34989]: https://github.com/home-assistant/core/pull/34989 +[#34990]: https://github.com/home-assistant/core/pull/34990 +[#34994]: https://github.com/home-assistant/core/pull/34994 +[#34995]: https://github.com/home-assistant/core/pull/34995 +[#34998]: https://github.com/home-assistant/core/pull/34998 +[#35005]: https://github.com/home-assistant/core/pull/35005 +[#35007]: https://github.com/home-assistant/core/pull/35007 +[#35010]: https://github.com/home-assistant/core/pull/35010 +[#35011]: https://github.com/home-assistant/core/pull/35011 +[#35016]: https://github.com/home-assistant/core/pull/35016 +[#35018]: https://github.com/home-assistant/core/pull/35018 +[#35021]: https://github.com/home-assistant/core/pull/35021 +[#35023]: https://github.com/home-assistant/core/pull/35023 +[#35035]: https://github.com/home-assistant/core/pull/35035 +[#35043]: https://github.com/home-assistant/core/pull/35043 +[#35048]: https://github.com/home-assistant/core/pull/35048 +[#35054]: https://github.com/home-assistant/core/pull/35054 +[#35056]: https://github.com/home-assistant/core/pull/35056 +[#35058]: https://github.com/home-assistant/core/pull/35058 +[#35070]: https://github.com/home-assistant/core/pull/35070 +[#35073]: https://github.com/home-assistant/core/pull/35073 +[#35076]: https://github.com/home-assistant/core/pull/35076 +[#35078]: https://github.com/home-assistant/core/pull/35078 +[#35084]: https://github.com/home-assistant/core/pull/35084 +[#35087]: https://github.com/home-assistant/core/pull/35087 +[#35088]: https://github.com/home-assistant/core/pull/35088 +[#35089]: https://github.com/home-assistant/core/pull/35089 +[#35090]: https://github.com/home-assistant/core/pull/35090 +[#35091]: https://github.com/home-assistant/core/pull/35091 +[#35093]: https://github.com/home-assistant/core/pull/35093 +[#35095]: https://github.com/home-assistant/core/pull/35095 +[#35096]: https://github.com/home-assistant/core/pull/35096 +[#35097]: https://github.com/home-assistant/core/pull/35097 +[#35100]: https://github.com/home-assistant/core/pull/35100 +[#35103]: https://github.com/home-assistant/core/pull/35103 +[#35104]: https://github.com/home-assistant/core/pull/35104 +[#35106]: https://github.com/home-assistant/core/pull/35106 +[#35107]: https://github.com/home-assistant/core/pull/35107 +[#35109]: https://github.com/home-assistant/core/pull/35109 +[#35111]: https://github.com/home-assistant/core/pull/35111 +[#35112]: https://github.com/home-assistant/core/pull/35112 +[#35114]: https://github.com/home-assistant/core/pull/35114 +[#35115]: https://github.com/home-assistant/core/pull/35115 +[#35123]: https://github.com/home-assistant/core/pull/35123 +[#35127]: https://github.com/home-assistant/core/pull/35127 +[#35135]: https://github.com/home-assistant/core/pull/35135 +[#35136]: https://github.com/home-assistant/core/pull/35136 +[#35139]: https://github.com/home-assistant/core/pull/35139 +[#35141]: https://github.com/home-assistant/core/pull/35141 +[#35147]: https://github.com/home-assistant/core/pull/35147 +[#35148]: https://github.com/home-assistant/core/pull/35148 +[#35149]: https://github.com/home-assistant/core/pull/35149 +[#35150]: https://github.com/home-assistant/core/pull/35150 +[#35152]: https://github.com/home-assistant/core/pull/35152 +[#35153]: https://github.com/home-assistant/core/pull/35153 +[#35154]: https://github.com/home-assistant/core/pull/35154 +[#35159]: https://github.com/home-assistant/core/pull/35159 +[#35161]: https://github.com/home-assistant/core/pull/35161 +[#35172]: https://github.com/home-assistant/core/pull/35172 +[#35174]: https://github.com/home-assistant/core/pull/35174 +[#35176]: https://github.com/home-assistant/core/pull/35176 +[#35183]: https://github.com/home-assistant/core/pull/35183 +[#35191]: https://github.com/home-assistant/core/pull/35191 +[#35193]: https://github.com/home-assistant/core/pull/35193 +[#35201]: https://github.com/home-assistant/core/pull/35201 +[#35203]: https://github.com/home-assistant/core/pull/35203 +[#35207]: https://github.com/home-assistant/core/pull/35207 +[#35212]: https://github.com/home-assistant/core/pull/35212 +[#35217]: https://github.com/home-assistant/core/pull/35217 +[#35218]: https://github.com/home-assistant/core/pull/35218 +[#35222]: https://github.com/home-assistant/core/pull/35222 +[#35224]: https://github.com/home-assistant/core/pull/35224 +[#35225]: https://github.com/home-assistant/core/pull/35225 +[#35238]: https://github.com/home-assistant/core/pull/35238 +[#35242]: https://github.com/home-assistant/core/pull/35242 +[#35248]: https://github.com/home-assistant/core/pull/35248 +[#35253]: https://github.com/home-assistant/core/pull/35253 +[#35260]: https://github.com/home-assistant/core/pull/35260 +[#35267]: https://github.com/home-assistant/core/pull/35267 +[#35269]: https://github.com/home-assistant/core/pull/35269 +[#35271]: https://github.com/home-assistant/core/pull/35271 +[#35272]: https://github.com/home-assistant/core/pull/35272 +[#35273]: https://github.com/home-assistant/core/pull/35273 +[#35276]: https://github.com/home-assistant/core/pull/35276 +[#35277]: https://github.com/home-assistant/core/pull/35277 +[#35281]: https://github.com/home-assistant/core/pull/35281 +[#35282]: https://github.com/home-assistant/core/pull/35282 +[#35291]: https://github.com/home-assistant/core/pull/35291 +[#35298]: https://github.com/home-assistant/core/pull/35298 +[#35299]: https://github.com/home-assistant/core/pull/35299 +[#35303]: https://github.com/home-assistant/core/pull/35303 +[#35306]: https://github.com/home-assistant/core/pull/35306 +[#35314]: https://github.com/home-assistant/core/pull/35314 +[#35318]: https://github.com/home-assistant/core/pull/35318 +[#35337]: https://github.com/home-assistant/core/pull/35337 +[#35338]: https://github.com/home-assistant/core/pull/35338 +[#35347]: https://github.com/home-assistant/core/pull/35347 +[#35349]: https://github.com/home-assistant/core/pull/35349 +[#35351]: https://github.com/home-assistant/core/pull/35351 +[#35353]: https://github.com/home-assistant/core/pull/35353 +[#35356]: https://github.com/home-assistant/core/pull/35356 +[#35357]: https://github.com/home-assistant/core/pull/35357 +[#35361]: https://github.com/home-assistant/core/pull/35361 +[#35362]: https://github.com/home-assistant/core/pull/35362 +[#35369]: https://github.com/home-assistant/core/pull/35369 +[#35374]: https://github.com/home-assistant/core/pull/35374 +[#35375]: https://github.com/home-assistant/core/pull/35375 +[#35376]: https://github.com/home-assistant/core/pull/35376 +[#35379]: https://github.com/home-assistant/core/pull/35379 +[#35381]: https://github.com/home-assistant/core/pull/35381 +[#35382]: https://github.com/home-assistant/core/pull/35382 +[#35384]: https://github.com/home-assistant/core/pull/35384 +[#35389]: https://github.com/home-assistant/core/pull/35389 +[#35390]: https://github.com/home-assistant/core/pull/35390 +[#35391]: https://github.com/home-assistant/core/pull/35391 +[#35393]: https://github.com/home-assistant/core/pull/35393 +[#35395]: https://github.com/home-assistant/core/pull/35395 +[#35396]: https://github.com/home-assistant/core/pull/35396 +[#35397]: https://github.com/home-assistant/core/pull/35397 +[#35398]: https://github.com/home-assistant/core/pull/35398 +[#35399]: https://github.com/home-assistant/core/pull/35399 +[#35400]: https://github.com/home-assistant/core/pull/35400 +[#35401]: https://github.com/home-assistant/core/pull/35401 +[#35404]: https://github.com/home-assistant/core/pull/35404 +[#35406]: https://github.com/home-assistant/core/pull/35406 +[#35409]: https://github.com/home-assistant/core/pull/35409 +[#35410]: https://github.com/home-assistant/core/pull/35410 +[#35413]: https://github.com/home-assistant/core/pull/35413 +[#35419]: https://github.com/home-assistant/core/pull/35419 +[#35420]: https://github.com/home-assistant/core/pull/35420 +[#35422]: https://github.com/home-assistant/core/pull/35422 +[#35427]: https://github.com/home-assistant/core/pull/35427 +[#35428]: https://github.com/home-assistant/core/pull/35428 +[#35429]: https://github.com/home-assistant/core/pull/35429 +[#35430]: https://github.com/home-assistant/core/pull/35430 +[#35431]: https://github.com/home-assistant/core/pull/35431 +[#35432]: https://github.com/home-assistant/core/pull/35432 +[#35433]: https://github.com/home-assistant/core/pull/35433 +[#35435]: https://github.com/home-assistant/core/pull/35435 +[#35436]: https://github.com/home-assistant/core/pull/35436 +[#35438]: https://github.com/home-assistant/core/pull/35438 +[#35440]: https://github.com/home-assistant/core/pull/35440 +[#35442]: https://github.com/home-assistant/core/pull/35442 +[#35443]: https://github.com/home-assistant/core/pull/35443 +[#35444]: https://github.com/home-assistant/core/pull/35444 +[#35453]: https://github.com/home-assistant/core/pull/35453 +[#35462]: https://github.com/home-assistant/core/pull/35462 +[#35463]: https://github.com/home-assistant/core/pull/35463 +[#35465]: https://github.com/home-assistant/core/pull/35465 +[#35466]: https://github.com/home-assistant/core/pull/35466 +[#35467]: https://github.com/home-assistant/core/pull/35467 +[#35471]: https://github.com/home-assistant/core/pull/35471 +[#35473]: https://github.com/home-assistant/core/pull/35473 +[#35474]: https://github.com/home-assistant/core/pull/35474 +[#35476]: https://github.com/home-assistant/core/pull/35476 +[#35477]: https://github.com/home-assistant/core/pull/35477 +[#35482]: https://github.com/home-assistant/core/pull/35482 +[#35483]: https://github.com/home-assistant/core/pull/35483 +[#35484]: https://github.com/home-assistant/core/pull/35484 +[#35485]: https://github.com/home-assistant/core/pull/35485 +[#35487]: https://github.com/home-assistant/core/pull/35487 +[#35494]: https://github.com/home-assistant/core/pull/35494 +[#35495]: https://github.com/home-assistant/core/pull/35495 +[#35496]: https://github.com/home-assistant/core/pull/35496 +[#35497]: https://github.com/home-assistant/core/pull/35497 +[#35501]: https://github.com/home-assistant/core/pull/35501 +[#35502]: https://github.com/home-assistant/core/pull/35502 +[#35504]: https://github.com/home-assistant/core/pull/35504 +[#35505]: https://github.com/home-assistant/core/pull/35505 +[#35506]: https://github.com/home-assistant/core/pull/35506 +[#35510]: https://github.com/home-assistant/core/pull/35510 +[#35513]: https://github.com/home-assistant/core/pull/35513 +[#35514]: https://github.com/home-assistant/core/pull/35514 +[#35517]: https://github.com/home-assistant/core/pull/35517 +[#35518]: https://github.com/home-assistant/core/pull/35518 +[#35519]: https://github.com/home-assistant/core/pull/35519 +[#35520]: https://github.com/home-assistant/core/pull/35520 +[#35521]: https://github.com/home-assistant/core/pull/35521 +[#35523]: https://github.com/home-assistant/core/pull/35523 +[#35526]: https://github.com/home-assistant/core/pull/35526 +[#35529]: https://github.com/home-assistant/core/pull/35529 +[#35533]: https://github.com/home-assistant/core/pull/35533 +[#35537]: https://github.com/home-assistant/core/pull/35537 +[#35541]: https://github.com/home-assistant/core/pull/35541 +[#35544]: https://github.com/home-assistant/core/pull/35544 +[#35545]: https://github.com/home-assistant/core/pull/35545 +[#35546]: https://github.com/home-assistant/core/pull/35546 +[#35548]: https://github.com/home-assistant/core/pull/35548 +[#35549]: https://github.com/home-assistant/core/pull/35549 +[#35551]: https://github.com/home-assistant/core/pull/35551 +[#35555]: https://github.com/home-assistant/core/pull/35555 +[#35556]: https://github.com/home-assistant/core/pull/35556 +[#35558]: https://github.com/home-assistant/core/pull/35558 +[#35560]: https://github.com/home-assistant/core/pull/35560 +[#35563]: https://github.com/home-assistant/core/pull/35563 +[#35568]: https://github.com/home-assistant/core/pull/35568 +[#35574]: https://github.com/home-assistant/core/pull/35574 +[@2Fake]: https://github.com/2Fake +[@314eter]: https://github.com/314eter +[@Adminiuga]: https://github.com/Adminiuga +[@BKPepe]: https://github.com/BKPepe +[@Danielhiversen]: https://github.com/Danielhiversen +[@DavidMStraub]: https://github.com/DavidMStraub +[@Eerovil]: https://github.com/Eerovil +[@Geronimo2015]: https://github.com/Geronimo2015 +[@Imbuzi]: https://github.com/Imbuzi +[@Kane610]: https://github.com/Kane610 +[@LordMike]: https://github.com/LordMike +[@MartinHjelmare]: https://github.com/MartinHjelmare +[@MatsNl]: https://github.com/MatsNl +[@MatthewFlamm]: https://github.com/MatthewFlamm +[@Mich-b]: https://github.com/Mich-b +[@OnFreund]: https://github.com/OnFreund +[@Quentame]: https://github.com/Quentame +[@StevenLooman]: https://github.com/StevenLooman +[@Tho85]: https://github.com/Tho85 +[@TomerFi]: https://github.com/TomerFi +[@YarmoM]: https://github.com/YarmoM +[@ZephireNZ]: https://github.com/ZephireNZ +[@alxrdn]: https://github.com/alxrdn +[@amelchio]: https://github.com/amelchio +[@bachya]: https://github.com/bachya +[@balloob]: https://github.com/balloob +[@bbernhard]: https://github.com/bbernhard +[@bdraco]: https://github.com/bdraco +[@benleb]: https://github.com/benleb +[@bieniu]: https://github.com/bieniu +[@bradkeifer]: https://github.com/bradkeifer +[@bramkragten]: https://github.com/bramkragten +[@breiti]: https://github.com/breiti +[@brendongo]: https://github.com/brendongo +[@brg468]: https://github.com/brg468 +[@bryantlee]: https://github.com/bryantlee +[@cgarwood]: https://github.com/cgarwood +[@cgtobi]: https://github.com/cgtobi +[@chrisaljoudi]: https://github.com/chrisaljoudi +[@clssn]: https://github.com/clssn +[@ctalkington]: https://github.com/ctalkington +[@danielperna84]: https://github.com/danielperna84 +[@danjenkins]: https://github.com/danjenkins +[@davidjb]: https://github.com/davidjb +[@dcnielsen90]: https://github.com/dcnielsen90 +[@dmulcahey]: https://github.com/dmulcahey +[@elupus]: https://github.com/elupus +[@emlove]: https://github.com/emlove +[@emontnemery]: https://github.com/emontnemery +[@fabaff]: https://github.com/fabaff +[@farmio]: https://github.com/farmio +[@felipediel]: https://github.com/felipediel +[@flowolf]: https://github.com/flowolf +[@fredericvl]: https://github.com/fredericvl +[@fredrike]: https://github.com/fredrike +[@frenck]: https://github.com/frenck +[@fronzbot]: https://github.com/fronzbot +[@gadgetmobile]: https://github.com/gadgetmobile +[@gladhorn]: https://github.com/gladhorn +[@gtdiehl]: https://github.com/gtdiehl +[@guiguid]: https://github.com/guiguid +[@guillempages]: https://github.com/guillempages +[@gwww]: https://github.com/gwww +[@h4de5]: https://github.com/h4de5 +[@hunterjm]: https://github.com/hunterjm +[@isk0001y]: https://github.com/isk0001y +[@ispysoftware]: https://github.com/ispysoftware +[@jesserockz]: https://github.com/jesserockz +[@jjlawren]: https://github.com/jjlawren +[@joogps]: https://github.com/joogps +[@jrester]: https://github.com/jrester +[@jtommi]: https://github.com/jtommi +[@kifeo]: https://github.com/kifeo +[@liudger]: https://github.com/liudger +[@mampfes]: https://github.com/mampfes +[@marcelveldt]: https://github.com/marcelveldt +[@merdok]: https://github.com/merdok +[@mhorst314]: https://github.com/mhorst314 +[@mlemainque]: https://github.com/mlemainque +[@mtdcr]: https://github.com/mtdcr +[@ochlocracy]: https://github.com/ochlocracy +[@ollo69]: https://github.com/ollo69 +[@pdcemulator]: https://github.com/pdcemulator +[@pnbruckner]: https://github.com/pnbruckner +[@pvizeli]: https://github.com/pvizeli +[@rajlaud]: https://github.com/rajlaud +[@rako77]: https://github.com/rako77 +[@raman325]: https://github.com/raman325 +[@ronaldheft]: https://github.com/ronaldheft +[@rytilahti]: https://github.com/rytilahti +[@scop]: https://github.com/scop +[@shbatm]: https://github.com/shbatm +[@shenxn]: https://github.com/shenxn +[@starkillerOG]: https://github.com/starkillerOG +[@stickpin]: https://github.com/stickpin +[@thecode]: https://github.com/thecode +[@tschamm]: https://github.com/tschamm +[@unixko]: https://github.com/unixko +[@uphillbattle]: https://github.com/uphillbattle +[@uvjustin]: https://github.com/uvjustin +[@vangorra]: https://github.com/vangorra +[@vilppuvuorinen]: https://github.com/vilppuvuorinen +[@xdissent]: https://github.com/xdissent +[@ziv1234]: https://github.com/ziv1234 +[@zsarnett]: https://github.com/zsarnett +[acer_projector docs]: /integrations/acer_projector/ +[adguard docs]: /integrations/adguard/ +[agent_dvr docs]: /integrations/agent_dvr/ +[airly docs]: /integrations/airly/ +[airvisual docs]: /integrations/airvisual/ +[alert docs]: /integrations/alert/ +[alexa docs]: /integrations/alexa/ +[alpha_vantage docs]: /integrations/alpha_vantage/ +[arcam_fmj docs]: /integrations/arcam_fmj/ +[arest docs]: /integrations/arest/ +[atag docs]: /integrations/atag/ +[august docs]: /integrations/august/ +[automatic docs]: /integrations/automatic/ +[automation docs]: /integrations/automation/ +[axis docs]: /integrations/axis/ +[blebox docs]: /integrations/blebox/ +[blink docs]: /integrations/blink/ +[bluetooth_le_tracker docs]: /integrations/bluetooth_le_tracker/ +[braviatv docs]: /integrations/braviatv/ +[broadlink docs]: /integrations/broadlink/ +[bsblan docs]: /integrations/bsblan/ +[calendar docs]: /integrations/calendar/ +[cast docs]: /integrations/cast/ +[cert_expiry docs]: /integrations/cert_expiry/ +[cloud docs]: /integrations/cloud/ +[config docs]: /integrations/config/ +[cover docs]: /integrations/cover/ +[daikin docs]: /integrations/daikin/ +[darksky docs]: /integrations/darksky/ +[deconz docs]: /integrations/deconz/ +[default_config docs]: /integrations/default_config/ +[devolo_home_control docs]: /integrations/devolo_home_control/ +[directv docs]: /integrations/directv/ +[discovery docs]: /integrations/discovery/ +[doods docs]: /integrations/doods/ +[dynalite docs]: /integrations/dynalite/ +[edl21 docs]: /integrations/edl21/ +[emulated_hue docs]: /integrations/emulated_hue/ +[enphase_envoy docs]: /integrations/enphase_envoy/ +[esphome docs]: /integrations/esphome/ +[fan docs]: /integrations/fan/ +[flickelectric docs]: /integrations/flick_electric/ +[forked_daapd docs]: /integrations/forked_daapd/ +[fortigate docs]: /integrations/fortigate/ +[frontend docs]: /integrations/frontend/ +[google_assistant docs]: /integrations/google_assistant/ +[hassio docs]: /integrations/hassio/ +[home_connect docs]: /integrations/home_connect/ +[homeassistant docs]: /integrations/homeassistant/ +[homeconnect docs]: /integrations/home_connect/ +[homekit docs]: /integrations/homekit/ +[homekit_controller docs]: /integrations/homekit_controller/ +[homematic docs]: /integrations/homematic/ +[homematicip_cloud docs]: /integrations/homematicip_cloud/ +[http docs]: /integrations/http/ +[hunterdouglas_powerview docs]: /integrations/hunterdouglas_powerview/ +[imap_email_content docs]: /integrations/imap_email_content/ +[influxdb docs]: /integrations/influxdb/ +[ipp docs]: /integrations/ipp/ +[iqvia docs]: /integrations/iqvia/ +[isy994 docs]: /integrations/isy994/ +[juicenet docs]: /integrations/juicenet/ +[knx docs]: /integrations/knx/ +[kodi docs]: /integrations/kodi/ +[life360 docs]: /integrations/life360/ +[light docs]: /integrations/light/ +[lutron_caseta docs]: /integrations/lutron_caseta/ +[manual docs]: /integrations/manual/ +[media_extractor docs]: /integrations/media_extractor/ +[melcloud docs]: /integrations/melcloud/ +[meteo_france docs]: /integrations/meteo_france/ +[microsoft_face docs]: /integrations/microsoft_face/ +[mill docs]: /integrations/mill/ +[modbus docs]: /integrations/modbus/ +[monoprice docs]: /integrations/monoprice/ +[mqtt docs]: /integrations/mqtt/ +[myq docs]: /integrations/myq/ +[mystrom docs]: /integrations/mystrom/ +[nad docs]: /integrations/nad/ +[nederlandse_spoorwegen docs]: /integrations/nederlandse_spoorwegen/ +[netatmo docs]: /integrations/netatmo/ +[notion docs]: /integrations/notion/ +[numato docs]: /integrations/numato/ +[nws docs]: /integrations/nws/ +[onvif docs]: /integrations/onvif/ +[opencv docs]: /integrations/opencv/ +[opengarage docs]: /integrations/opengarage/ +[panasonic_viera docs]: /integrations/panasonic_viera/ +[pi_hole docs]: /integrations/pi_hole/ +[plex docs]: /integrations/plex/ +[point docs]: /integrations/point/ +[powerwall docs]: /integrations/powerwall/ +[proliphix docs]: /integrations/proliphix/ +[proxy docs]: /integrations/proxy/ +[ps4 docs]: /integrations/ps4/ +[pulseaudio_loopback docs]: /integrations/pulseaudio_loopback/ +[pyload docs]: /integrations/pyload/ +[qrcode docs]: /integrations/qrcode/ +[qwikswitch docs]: /integrations/qwikswitch/ +[rachio docs]: /integrations/rachio/ +[rflink docs]: /integrations/rflink/ +[roku docs]: /integrations/roku/ +[roomba docs]: /integrations/roomba/ +[rpi_camera docs]: /integrations/rpi_camera/ +[saj docs]: /integrations/saj/ +[scrape docs]: /integrations/scrape/ +[sense docs]: /integrations/sense/ +[serial docs]: /integrations/serial/ +[seven_segments docs]: /integrations/seven_segments/ +[shell_command docs]: /integrations/shell_command/ +[sighthound docs]: /integrations/sighthound/ +[signal_messenger docs]: /integrations/signal_messenger/ +[simplisafe docs]: /integrations/simplisafe/ +[smartthings docs]: /integrations/smartthings/ +[snmp docs]: /integrations/snmp/ +[songpal docs]: /integrations/songpal/ +[sonos docs]: /integrations/sonos/ +[soundtouch docs]: /integrations/soundtouch/ +[spotify docs]: /integrations/spotify/ +[squeezebox docs]: /integrations/squeezebox/ +[stream docs]: /integrations/stream/ +[surepetcare docs]: /integrations/surepetcare/ +[switcher_kis docs]: /integrations/switcher_kis/ +[synology_dsm docs]: /integrations/synology_dsm/ +[tado docs]: /integrations/tado/ +[tensorflow docs]: /integrations/tensorflow/ +[tibber docs]: /integrations/tibber/ +[tplink docs]: /integrations/tplink/ +[tradfri docs]: /integrations/tradfri/ +[trend docs]: /integrations/trend/ +[tuya docs]: /integrations/tuya/ +[unifi docs]: /integrations/unifi/ +[upb docs]: /integrations/upb/ +[updater docs]: /integrations/updater/ +[upnp docs]: /integrations/upnp/ +[uvc docs]: /integrations/uvc/ +[velux docs]: /integrations/velux/ +[vera docs]: /integrations/vera/ +[vilfo docs]: /integrations/vilfo/ +[vizio docs]: /integrations/vizio/ +[webhook docs]: /integrations/webhook/ +[webostv docs]: /integrations/webostv/ +[wiffi docs]: /integrations/wiffi/ +[xiaomi_miio docs]: /integrations/xiaomi_miio/ +[xmpp docs]: /integrations/xmpp/ +[yeelight docs]: /integrations/yeelight/ +[zeroconf docs]: /integrations/zeroconf/ +[zerproc docs]: /integrations/zerproc/ +[zha docs]: /integrations/zha/ +[zwave docs]: /integrations/zwave/ +[zwave_mqtt docs]: /integrations/zwave_mqtt/ diff --git a/source/images/blog/2020-05-0.110/calendar_panel.png b/source/images/blog/2020-05-0.110/calendar_panel.png new file mode 100644 index 00000000000..3c115c72768 Binary files /dev/null and b/source/images/blog/2020-05-0.110/calendar_panel.png differ diff --git a/source/images/blog/2020-05-0.110/components.png b/source/images/blog/2020-05-0.110/components.png new file mode 100644 index 00000000000..477cfe3f593 Binary files /dev/null and b/source/images/blog/2020-05-0.110/components.png differ diff --git a/source/images/blog/2020-05-0.110/custom_logo.png b/source/images/blog/2020-05-0.110/custom_logo.png new file mode 100644 index 00000000000..5c25b186917 Binary files /dev/null and b/source/images/blog/2020-05-0.110/custom_logo.png differ diff --git a/source/images/blog/2020-05-0.110/homekit.png b/source/images/blog/2020-05-0.110/homekit.png new file mode 100644 index 00000000000..8673489f5b5 Binary files /dev/null and b/source/images/blog/2020-05-0.110/homekit.png differ diff --git a/source/images/blog/2020-05-0.110/ignore.png b/source/images/blog/2020-05-0.110/ignore.png new file mode 100644 index 00000000000..b9fe80c4512 Binary files /dev/null and b/source/images/blog/2020-05-0.110/ignore.png differ diff --git a/source/images/blog/2020-05-0.110/integrations.png b/source/images/blog/2020-05-0.110/integrations.png new file mode 100644 index 00000000000..42e2acc572a Binary files /dev/null and b/source/images/blog/2020-05-0.110/integrations.png differ diff --git a/source/images/blog/2020-05-0.110/not_condition.png b/source/images/blog/2020-05-0.110/not_condition.png new file mode 100644 index 00000000000..1a899c61fcd Binary files /dev/null and b/source/images/blog/2020-05-0.110/not_condition.png differ diff --git a/source/images/blog/2020-05-0.110/onvif.png b/source/images/blog/2020-05-0.110/onvif.png new file mode 100644 index 00000000000..f979b99d124 Binary files /dev/null and b/source/images/blog/2020-05-0.110/onvif.png differ diff --git a/source/images/blog/2020-05-0.110/social.png b/source/images/blog/2020-05-0.110/social.png new file mode 100644 index 00000000000..96672fa752b Binary files /dev/null and b/source/images/blog/2020-05-0.110/social.png differ diff --git a/source/images/blog/2020-05-0.110/supervisor_panel.png b/source/images/blog/2020-05-0.110/supervisor_panel.png new file mode 100644 index 00000000000..9d09bff4a03 Binary files /dev/null and b/source/images/blog/2020-05-0.110/supervisor_panel.png differ diff --git a/source/images/blog/2020-05-0.110/urls.png b/source/images/blog/2020-05-0.110/urls.png new file mode 100644 index 00000000000..00ec29242c1 Binary files /dev/null and b/source/images/blog/2020-05-0.110/urls.png differ diff --git a/source/images/blog/2020-05-0.110/weather_card.png b/source/images/blog/2020-05-0.110/weather_card.png new file mode 100644 index 00000000000..cc7dbd7545e Binary files /dev/null and b/source/images/blog/2020-05-0.110/weather_card.png differ