Replies: 12 comments
-
I also don't like auto-disable the component, how did system know user hasn't fix the break already? In my opinion, the personalized release note should be just display the release note in a way to highlight the integration user is using. It doesn't need manifest support, the basic element already exist in current version. |
Beta Was this translation helpful? Give feedback.
-
Oh I like @awarecan's idea even more. I suggest that if we add a changelog, we should write it in machine understandable language, so that we can automatically parse it for the release notes and show in the UI. Preferably I want the changelog text to be in Markdown, so that we can emphasize and link important parts. JSON sucks for Markdown, or any multiline text, so probably have a First format that comes to mind: domain: mqtt
changelog:
- release: 0.92
author: "@balloob"
breaking_change: true
change: >
The internal MQTT broker has been moved out of the `mqtt` integration and is now part of a new `mqtt_broker` integration. To set it up, update your configuration as follows:
```yaml
mqtt_broker:
password: bla
mqtt:
host: localhost
username: homeassistant
password: bla
``` |
Beta Was this translation helpful? Give feedback.
-
And it's good to keep this outside of |
Beta Was this translation helpful? Give feedback.
-
maybe the minimum supported HA version should stay in manifest ? |
Beta Was this translation helpful? Give feedback.
-
Let's discuss min supported version in another issue. |
Beta Was this translation helpful? Give feedback.
-
How about extracting the changelog information from the PRs? We already have tags per integration, so querying those should be fairly straightforward. This will require enforcing user-readable titles & descriptions for the PRs (maybe even adding a new "human-readable description" entry to the template, to be parsed out?). |
Beta Was this translation helpful? Give feedback.
-
I think that it's too error prone, we should instead ask people making PRs to also update the changelog for that integration. |
Beta Was this translation helpful? Give feedback.
-
Agree, this should be a user facing document, not git log |
Beta Was this translation helpful? Give feedback.
-
I don't mean git log here, but a separate new field in the PR template (which can be parsed out for changelogs when making a release). How I see it, this would avoid the need to duplicate the information to different places (no need to poke users forgetting to update the changelogs separately, ..), as the PR should already contain a sane description in cases where it is relevant to end users. Another plus side on this is that each changelog entry can be directly linked back to the PR for those who are interested in more details. |
Beta Was this translation helpful? Give feedback.
-
We still need to parse it out and store that data somewhere |
Beta Was this translation helpful? Give feedback.
-
I like the idea of having a field linked to the PR of the change |
Beta Was this translation helpful? Give feedback.
-
I suggest tag it to 1.0 milestone |
Beta Was this translation helpful? Give feedback.
-
Problem Statement
Whenever we have broken changes in integrations users fail to realise such and just get a bunch of errors in the logs simply because they skipped reading the breaking changes section of the release blog post.
Solution
manifest.json
is read before we load an integration, so we can leverage that in order to detect a broken change before it actually... breaksI propose we update
manifest.json
to have a dict with:Upon HA upgrade, components with a breaking change trigger a persistent notification and do not actually load, giving users a chance to fix their configurations.
Beta Was this translation helpful? Give feedback.
All reactions