marticliment / UniGetUI

UniGetUI: The Graphical Interface for your package managers. Could be terribly described as a package manager manager to manage your package managers
https://www.marticliment.com/unigetui/
MIT License
13.08k stars 450 forks source link

[BUG] Says "installed successfully" while winget says not #2093

Closed Kaligula0 closed 7 months ago

Kaligula0 commented 7 months ago

Please confirm these before moving forward

Describe your issue

I ran batch update. WingetUI tells that an app installed succesfully, but after refresh the update is still available. ) in my case it's EpicGames.EpicGamesLauncher, JRSoftware.InnoSetup, TheDocumentFoundation.LibreOffice.HelpPack, Microsoft.WindowsAppRuntime.1.5 CLI summary (for EpicGames.EpicGamesLauncher and TheDocumentFoundation.LibreOffice.HelpPack):

No applicable upgrade found.
A newer package version is available in a configured source, but it does not apply to your system or requirements.

The same is when invoking winget via CLI.

CLI summary (for JRSoftware.InnoSetup):

No available upgrade found.
No newer package versions are available from the configured sources.

The same is when invoking winget via CLI.

CLI summary (for Microsoft.WindowsAppRuntime.1.5) is different:

Found Windows App Runtime [Microsoft.WindowsAppRuntime.1.5] Version 1.5.1
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
/
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒  0.00 B / 60.7 MB
████████████▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒  25.7 MB / 60.7 MB
██████████████████████████████  60.7 MB / 60.7 MB
Successfully verified installer hash
\
Successfully installed

When invoking winget via CLI it says No installed package found matching input criteria..

Steps to reproduce the issue

No response

WingetUI Log

For the sake of privacy it's pasted there → http://kaligula.uk/ctrlv/GitHub-WingetUI-Issue2093-WingetUIlog-1.txt

Package Managers Logs

For the sake of privacy it's pasted there → http://kaligula.uk/ctrlv/GitHub-WingetUI-Issue2093-PackageManagerslog-1.txt

Relevant information

No response

Screenshots and videos

No response

marticliment commented 7 months ago

When a package is already upgraded, there is no point on throwing an error. The user desires to have the app updated, triggers the update but for whatever the reason (for example, an autoupdater on the app) the app is alreadu up-to-date. There is no point on annoying the user with an error which says The app did not update because it already was up-to-date, because the user intention has still been accomplished, and no further action is required

marticliment commented 7 months ago

CLI summary (for Microsoft.WindowsAppRuntime.1.5) is different:

Found Windows App Runtime [Microsoft.WindowsAppRuntime.1.5] Version 1.5.1
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
/
▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒  0.00 B / 60.7 MB
████████████▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒  25.7 MB / 60.7 MB
██████████████████████████████  60.7 MB / 60.7 MB
Successfully verified installer hash
\
Successfully installed

When invoking winget via CLI it says No installed package found matching input criteria..

This is a specific issue with this package. See microsoft/winget-pkgs for more details

Kaligula0 commented 7 months ago

…because the user intention has still been accomplished, and no further action is required

Has not been accomplished, because those packages are not being updated. After updating "successfully" and refreshing the list, they come back again to the list (as not updated). And Windows's "Programs and Functions" still shows old version. (In fact, I saw 2 Inno Setup versions, old and new, but Epic and LibreOffice are listed only as old version).

marticliment commented 7 months ago

This is then another issue, caused by WinGet. WinGet sometimes fails to detect some packages or detects incorrect versions for them (most likely this is also the package maintainer's fault for not having the package expose the correct package details). Therefore, this issue cannot be fixed from WinGetUI.

Kaligula0 commented 7 months ago

I think we still don't talk about the same issue. What I reported here is that package doesn't get updated (winget CLI tells No applicable upgrade found. or No available upgrade found.), but WingetUI shows that package was succesfully updated.

marticliment commented 7 months ago

There are two factors causing this bug:

  1. WinGet detecting non-existing upgrades: It reports false upgrades and then, when attempting to install them, reports that they are already installer.
  2. WingetUI (not WinGet) reporting success when an update happens to be already installed.

The first one is a bug with WinGet, which cannot be fixed from WinGetUI. The second one is intentional design, since the first issue isn't supposed to happen. The design helps mitigate issues when an upddate has been installed externally and WinGetUI attempts to install it again