From 4cf99a709caf3a337830f0fea32b9baa9e5c65ab Mon Sep 17 00:00:00 2001 From: Franck Nijhof Date: Tue, 2 May 2023 22:36:06 +0200 Subject: [PATCH] 2023.5: Finalize breaking changes --- .../_posts/2023-05-03-release-20235.markdown | 100 ++++++++++++------ .../breaking-change-webhook-triggers.png | Bin 0 -> 27975 bytes 2 files changed, 68 insertions(+), 32 deletions(-) create mode 100644 source/images/blog/2023-05/breaking-change-webhook-triggers.png diff --git a/source/_posts/2023-05-03-release-20235.markdown b/source/_posts/2023-05-03-release-20235.markdown index fed86d1a098..eccbdb93758 100644 --- a/source/_posts/2023-05-03-release-20235.markdown +++ b/source/_posts/2023-05-03-release-20235.markdown @@ -321,14 +321,6 @@ other news about building an Open Home; straight into your inbox. ## Breaking Changes -{% details "TODO" %} - -- Proof read/spelling/grammar - -**Note**: Breaking changes processed up to PR 92035 - -{% enddetails %} - {% details "Accuweather" %} The `ozone` sensors and the `ozone` state attribute of the weather entity showed @@ -346,11 +338,9 @@ automations or scripts, you need to update them. The "Android TV" integration has been renamed to "Android Debug Bridge". -This rename, is because that is what it actually controlled/provided. With -the addition of the Android TV Remote integration this release; we wanted to -reduce possible confusion for the future. - -Not really a breaking change, but here for completeness. +This rename is because that is what it actually controlled/provided. With +the addition of the Android TV Remote integration in this release, we wanted +to reduce possible confusion in the future. ([@tronikos] - [#90657]) ([documentation](/integrations/androidtv)) @@ -361,7 +351,7 @@ Not really a breaking change, but here for completeness. {% details "History" %} -YAML configuration for history has been removed as it was no longer being used +YAML configuration for history has been removed as it was no longer used since the frontend. ([@bdraco] - [#90992]) ([documentation](/integrations/history)) @@ -374,7 +364,7 @@ since the frontend. {% details "HomeKit" %} The min/max target humidities for (de)humidifier device exposed over HomeKit -has changed. The HomeKit UI will now show the real relative humidity, when +has changed. The HomeKit UI will now show the real relative humidity. When the slider in HomeKit goes above or below the max/min set humidity, it will be set back to the max/min allowed humidity. @@ -385,7 +375,9 @@ be set back to the max/min allowed humidity. --- -Default HomeKit to listen on all interfaces to match Home Assistant behavior. To limit HomeKit to specific network interfaces, specify an `address` in `configuration.yaml`. +Default HomeKit to listen on all interfaces to match Home Assistant behavior. +To limit HomeKit to specific network interfaces, specify an `address` +in `configuration.yaml`. ([@bdraco] - [#91520]) ([documentation](/integrations/homekit)) @@ -394,12 +386,38 @@ Default HomeKit to listen on all interfaces to match Home Assistant behavior. To {% enddetails %} +{% details "IMAP" %} + +The use of `imap_content` event could break for users that want to parse data +from larger email messages from the truncated part. Only the first 2048 +bytes of the message body (2 KiB) will be available. + +([@jbouwh] - [#92066]) ([documentation](/integrations/imap)) + +[@jbouwh]: https://github.com/jbouwh +[#92066]: https://github.com/home-assistant/core/pull/92066 + +{% enddetails %} + +{% details "Overkiz" %} + +The silence option for DynamicShutter has been removed because it caused the +cover entity to be non-functional if it did not support silence. This +functionality will be reintroduced in a future release. + +([@iMicknl] - [#91354]) ([documentation](/integrations/overkiz)) + +[@iMicknl]: https://github.com/iMicknl +[#91354]: https://github.com/home-assistant/core/pull/91354 + +{% enddetails %} + {% details "Reolink" %} For Reolink doorbells, the "Status LED" light entity is replaced by a "Status LED" select entity. The switch `off` state corresponds to the select -`Auto`, and the swith `on` state corresponds to the select -`Auto & always on at night`. A additional `Stay off` state is now available. +`Auto`, and the switch `on` state corresponds to the select +`Auto & always on at night`. An additional `Stay off` state is now available. ([@starkillerOG] - [#90469]) ([documentation](/integrations/reolink)) @@ -410,7 +428,7 @@ For Reolink doorbells, the "Status LED" light entity is replaced by a {% details "Snapcast" %} -- Muted groups with playing stream will have state `idle` instead of `playing`. +- Muted groups with stream playing will have state `idle` instead of `playing`. - Connected clients will not have state `on` anymore but use the same states as groups: `idle` and `playing`. - Disconnected clients have state `standby` instead of `off` because the @@ -444,8 +462,8 @@ the statistics page under developer tools. The `ensure_ascii` argument for `to_json` in Jinja templates now defaults to `False`, allowing us to use a faster JSON encoder by default. -For most, this should not be an issue as JSON parsers broadly accept unicode -input. If you still need to encode unicode characters inside of JSON strings, +This should not be an issue for most, as JSON parsers broadly accept Unicode +input. If you still need to encode Unicode characters inside JSON strings, set `ensure_ascii` to `True` explicitly to restore the old behavior. ([@depoll] - [#91253]) @@ -458,7 +476,7 @@ set `ensure_ascii` to `True` explicitly to restore the old behavior. {% details "UniFi Network" %} UniFi integration no longer provides both `hostname` and `host_name` attributes -for a client tracker entity, only `host_name` will be provided as an attribute. +for a client tracker entity. Only `host_name` will be provided as an attribute. ([@Kane610] - [#91188]) ([documentation](/integrations/unifi)) @@ -470,7 +488,7 @@ for a client tracker entity, only `host_name` will be provided as an attribute. {% details "UniFi Protect" %} The previous deprecated `set_doorbell_message` service has been removed. Use -the text entity for UniFi Protect LCD screen instead. +the text entity for the UniFi Protect LCD screen instead. ([@AngellusMortis] - [#91523]) ([documentation](/integrations/unifiprotect)) @@ -515,10 +533,10 @@ The following custom ISY994 services have been removed: - `run_network_resource` - `set_variable` -These services had been previously deprecated in favor of built-in services, -and `number`, `select`, and `button` entities. If you have not already, please -update your automations and dashboards to use the new entities and/or built-in -services. +These services had been previously deprecated in favor of built-in services +and `number`, `select`, and `button` entities. Please update your automations +and dashboards to use the new entities and/or built-in services if you have +not already. ([@shbatm] - [#91569]) ([documentation](/integrations/isy994)) @@ -531,8 +549,8 @@ Dusk/Dawn nodes on Insteon Motion Sensors now have their states inverted to correctly show "Light detected" during daylight and "No light" when the dusk sensor is active. -This is reversed from previous behavior and if you rely on this sensor in your -automations, they will need to be updated. +This is reversed from previous behavior. If you rely on this sensor in your +automations, they must be updated. ([@shbatm] - [#92035]) ([documentation](/integrations/isy994)) @@ -553,7 +571,7 @@ Previously all webhook triggers could be activated by `HEAD`, `POST`, and `PUT` methods from any device (local or on the internet). With the new options, only `POST` and `PUT` are enabled by default. -In Home Assistant Core 2023.7 any webhook trigger that does not set `local_only` +In Home Assistant Core 2023.7, any webhook trigger that does not set `local_only` to false can only be activated by devices on the same network as Home Assistant. Click the gear/cog icon beside the Webhook ID to update your webhook triggers. @@ -562,10 +580,10 @@ It is necessary to deselect the option for the **Save** button to appear. Then reselect the option if it should be enabled. This will make the repair warning go away. -![Screenshot 2022-09-14 10 19 56 AM](https://user-images.githubusercontent.com/289218/190221194-c18f9ec8-5847-4358-aa69-eaf81f5518d1.png) +![Screenshot shoting webhook trigger options](/images/blog/2023-05/breaking-change-webhook-triggers.png) See the [webhook trigger documentation](/docs/automation/trigger/#webhook-trigger) -for a description of the new options. And please review the new the +for a description of the new options. And please review the new [Webhook Security](/docs/automation/trigger/#webhook-security) section for best practices when using webhook triggers. @@ -576,6 +594,24 @@ practices when using webhook triggers. {% enddetails %} +{% details "Z-Wave" %} + +With this release, you will need to update your `zwave-js-server` instance. +You must use `zwave-js-server` 1.28.0 or greater (schema 28). + +- If you use the `Z-Wave JS` add-on, you need at least version `0.1.79`. +- If you use the `Z-Wave JS UI` add-on, you need at least version `1.11.2`. +- If you use the `Z-Wave JS UI` Docker container, you need at least version `8.14.2`. +- If you run your own Docker container or some other installation method, + you will need to update your `zwave-js-server` instance to at least `1.28.0`. + +([@raman325] - [#91989]) ([documentation](/integrations/zwave_js)) + +[@raman325]: https://github.com/raman325 +[#91989]: https://github.com/home-assistant/core/pull/91989 + +{% enddetails %} + If you are a custom integration developer and want to learn about breaking changes and new features available for your integration: Be sure to follow our [developer blog][devblog]. The following are the most notable for this release: diff --git a/source/images/blog/2023-05/breaking-change-webhook-triggers.png b/source/images/blog/2023-05/breaking-change-webhook-triggers.png new file mode 100644 index 0000000000000000000000000000000000000000..cf25b20f28d796ec7af1433968d3f4297fa298f0 GIT binary patch literal 27975 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