microsoft/winget-cli

Add a possibility to overrule/force an upgrade with different installer type

pocki opened this issue · 3 comments

pocki commented

Description of the new feature/enhancement

Currently some programs are listed at winget upgrade but can not be upgraded with winget upgrade --all or winget upgrade <packageid> with the message: "No applicable update found"
This can happen with different installer types (or maybe other requirements).

It would be nice to overrule this restriction. This would help to easily have everything updated without the need to do a manual install of every in winget upgrade listed software with winget.

Downside:
It can be possible that afterwards both versions are installed. (Depending on the installer and software vendor)

Proposed technical implementation details (optional)

With a switch/flag like winget upgrade --all --ignoreDifferentInstaller or similar the upgrade (or new install) should be done.

Another switch/flag like winget upgrade <foo> --installerType MSI to select the installer type and force an upgrade (or new install) may be also helpful for advanced usage. The information about all possible installer types should therefore be listed in winget upgrade

@Karl-WE, @denelon please add your ideas and informations.

What about force uninstall different installed app type and install again, when run upgrade like as "ForcedChangeUpgrade" (or more usable name)?

Trenly commented

@pocki - In the latest pre-release there was an experimental argument added to enable --uninstall-previous when using winget upgrade. Does this argument resolve your issue in regards to the different install technology upgrades? I wasn't able to test if it would bypass the message about different install technology,

pocki commented

Very nice. This solution seems to solve even more problems.
Thanks!