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

Feature request: Manually Updating Installed Version Numbers #37490

Closed
Saklad5 opened this issue Aug 7, 2017 · 8 comments
Closed

Feature request: Manually Updating Installed Version Numbers #37490

Saklad5 opened this issue Aug 7, 2017 · 8 comments

Comments

@Saklad5
Copy link
Contributor

Saklad5 commented Aug 7, 2017

Description of feature/enhancement

Add a command that allows users to manually set a Cask’s installed version, without changing anything else or necessitating a reinstall.

Justification

The current approach to auto-updating applications is to leave them be, and I gather this will be the plan after brew cask upgrade is implemented as well. This presents an extremely irritating problem: an application that is installed through Homebrew-Cask, but updated externally, is still listed as having the original version. Being able to manually correct the listed version would be easy to implement, so I think that is the best approach to reduce confusion.

For many Casks, it might even be possible to automatically update the installed version by checking the application itself. This would have to be enabled on a case-by-case basis, since some Cask versions do not correspond with the application’s version in order to ease downloading.

Example use case

brew cask version [cask-token] [new-version]

brew cask version vlc 2.2.6

@vitorgalvao
Copy link
Member

Having to set a version is wasteful. Might as well just have something like brew cask skipahead vlc that’ll switch the version to the latest one we have. And if you give it without arguments (brew cask skipahead), it’ll do it for every cask.

But then again, making it manually is also wasteful. Might as well just make brew cask upgrade do that automatically, and perhaps add a flag (--no-skip) to not do it automatically.

@Saklad5
Copy link
Contributor Author

Saklad5 commented Aug 8, 2017

I’m not sure what you mean by wasteful, but this seems like the sort of thing that could go horribly wrong if we make too many assumptions. Besides, not everyone will be using this to skip to the latest version. It is not implausible that someone would revert to an earlier version of a program manually, for instance.

@commitay
Copy link
Contributor

commitay commented Aug 8, 2017

Agree with @vitorgalvao, this would be better handled by brew cask upgrade* rather than as a separate command that allows users to change cask .metadata.

*(perhaps with a --greedy flag rather than automatically)


Besides, not everyone will be using this to skip to the latest version. It is not implausible that someone would revert to an earlier version of a program manually, for instance.

We don't support this.

@Saklad5
Copy link
Contributor Author

Saklad5 commented Aug 8, 2017

You mean you can’t do that with Homebrew-Cask? That’s why it would be done manually, without using HBC at all.

@commitay
Copy link
Contributor

commitay commented Aug 8, 2017

That’s why it would be done manually, without using HBC at all.

I don't understand?

@Saklad5
Copy link
Contributor Author

Saklad5 commented Aug 8, 2017

Let’s say someone updated a Cask, only to find that doing so broke something. In order to fix it, they’d download an older version of the application and install it directly, overwriting the Cask-installed newer version.

@commitay
Copy link
Contributor

commitay commented Aug 8, 2017

Easier to:

  1. brew cask uninstall
  2. install older version manually
  3. brew cask install --force
    overwrite manually installed old version with newer version when fixed

@commitay
Copy link
Contributor

Closing in favour of #29301

@lock lock bot locked as resolved and limited conversation to collaborators May 7, 2018
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

3 participants