buo / homebrew-cask-upgrade

A command line tool for upgrading every outdated app installed by Homebrew Cask
MIT License
2.4k stars 90 forks source link

Allow interactive selection before starting upgrades #182

Open noplanman opened 3 years ago

noplanman commented 3 years ago

Using the interactive flag, each download must be confirmed sequentially. This means that the user must wait for an app to download and install, before getting the choice what to do with the next one.

Example: I have 10 apps that have an upgrade. 2 of those, i don't want to upgrade right now. I start the interactive mode and must wait through (and manually accept) all upgrades until i get to the apps I don't want to upgrade.

Solution: Instead of performing the full upgrades sequentially, it would make much more sense to first make the selection for all applicable upgrades and then just perform them all automatically.

ondrejfuhrer commented 3 years ago

Hello @noplanman Thank you for your suggestion 👍 It's definitely doable. Would you expect to simply have the questions first (so confirming / denying one by one)

Would you like to update X [y/N]? y
Would you like to update Y [y/N]? N
Would you like to update Z [y/N]? y

some sort of multi-selection? I.e. print out a table and then choose which one to update i.e. by index?

Apps to update:
1. X
2. Y
3. Z

Which apps you would like to update? 1,3

I guess both are valid options, the first one might be a little bit easier 🤔

noplanman commented 3 years ago

@ondrejfuhrer I was thinking along the lines of your first suggestion, that they get selected one by one, before the actual process of upgrading begins.