Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add an "Update All" button to the control panel #94

Closed
finity69x2 opened this issue Jun 15, 2019 · 7 comments
Closed

Add an "Update All" button to the control panel #94

finity69x2 opened this issue Jun 15, 2019 · 7 comments

Comments

@finity69x2
Copy link
Contributor

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

no

Describe the solution you'd like
A clear and concise description of what you want to happen.

Add an "Update All" button to the control panel to update all installed components.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

@ludeeus
Copy link
Member

ludeeus commented Jun 15, 2019

There is a big issue that needs to be considered before this.

Let's say you have 5 updates pending, of those 5, 3 have breaking changes.
If you go into each one for the update, you will be able to spot that and do a check if you actually want to update that element.
If there is an "update all" method, folks will use it, and something will eventually break.

@Aephir
Copy link

Aephir commented Jun 15, 2019

I must admit, more often than not, with custom updater I used "update all". And so far, I only remember once where something broke (was it around HASS v0.90? When there was the large restructuring and a lot of custom components broke?), but it was fairly quickly fixed.

Would it be possible to add a "roll back" button on a "per integration" level, and use that to roll back the one(s) that happen to break upon an "update all"?

@finity69x2
Copy link
Contributor Author

I agree with Aephir. I don't ever remember running into any breaking changes that I didn't know about before hand somehow. And I used the "update all" exclusively in custom_updater. Maybe I just got lucky every time. Or because I'm in the habit of following the component release threads I always had a heads up that things would break.

But I do see your point. I guess it's not too onerous to have to go in and click on each component to update them all individually. But it would be nice to have the option as we did before.

The only satisfactory solution to the problem I can think of is that since the overview is a standalone full frame widow with lots of room maybe it would be reasonable to put the "update all" button there and also put a "disclaimer" of sorts warning users to check for breaking changes before clicking on it?

@ludeeus
Copy link
Member

ludeeus commented Jun 16, 2019

On the "old" custom_updater update all, was the only option (There was for a few day/weeks a posibility to only update a single element, but that was unstable and got removed).

The current version of "lovelace-swipe-card" by @maykar has a breaking change, there the developer has added that information to the info.md file that is rendered on the repositoryview
image

With an update all button, that information would not get read.

@Aephir
Copy link

Aephir commented Jun 18, 2019

Obviously, it's your decision. And I'm sure I'll greatly prefer having this in any form, compared to not having it. But I also know how I used the custom_updater, and that my personal preference (and my vote) would go towards including an "update all" in some form or another.

If it is possible to scan for "breaking change" within each component info.md, and display which components have this next to an "update all" button, that would be amazing (maybe even add an option to update all except that/those). If not, a "roll back to pre-update" would be great.

But if that's not feasible, I'd personally still vote for an "update all" option, with all the risks that involves.

Keep up the good work!

@peternijssen
Copy link
Contributor

peternijssen commented Jun 18, 2019

Just thinking out loud; Would it be an option to have an "update all" button. When clicking, you open up a modal (or a new page) which displays a summary like;

Plugin A: 1.0.2 -> 1.0.3
No info was provided by the developer

Plugin B: 1.1.2 -> 1.3.0
Breaking change! Configuration has changed. 
OLD:
entity: sensor.entity
type: button

NEW:
entities:
   - sensor.entity
type: button

Of course the info is from info.md and at the end of the page there is a final confirmation to initiate the update process.

@ludeeus
Copy link
Member

ludeeus commented Jun 22, 2019

Implemented in 0.9.0 🎉
It will not scan the info file (tried that, not a good option)

@ludeeus ludeeus closed this as completed Jun 22, 2019
@github-actions github-actions bot locked and limited conversation to collaborators Aug 28, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants