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

Reported installed version of OpenMedia.4KVideoDownloader is incorrect #54507

Closed
sba923 opened this issue Mar 10, 2022 · 18 comments
Closed

Reported installed version of OpenMedia.4KVideoDownloader is incorrect #54507

sba923 opened this issue Mar 10, 2022 · 18 comments
Labels
Help-Wanted This is a good candidate work item from the community. Issue-Bug It either shouldn't be doing this or needs an investigation.
Milestone

Comments

@sba923
Copy link

sba923 commented Mar 10, 2022

Brief description of your issue

With the latest version of "4k Video Downloader" (OpenMedia.4KVideoDownloader) installed, i.e. version 4.20.0.4740, winget tells me I have version 4.19.4.4720 installed, and that there's an upgrade available.

Steps to reproduce

(Probably?) Install version 4.19.4.4720 of "4k Video Downloader", and upgrade to 4.20.0.4740.

Then invoke winget upgrade.

Expected behavior

"4k Video Downloader" should not be listed by winget upgrade, and winget list should list it as version 4.20.0.4740

Actual behavior

winget upgrade reports:

PS❯  winget upgrade | sls -raw 'Name|---|4k'
Name                                            Id                           Version        Available      Source
-----------------------------------------------------------------------------------------------------------------
4K Video Downloader                             OpenMedia.4KVideoDownloader  4.19.4.4720    4.20.0.4740    winget

Note: this is probably not winget's fault -- kind of. The app shows up twice under the Uninstall tree:
HKEY_LOCAL_MACHINE__SOFTWARE__Microsoft__Windows__CurrentVersion__Uninstall_OpenMedia.4KVideoDownloader_202203101546.zip

Environment

PS❯  winget --info
Windows Package Manager v1.2.10271
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.22000.527
Package: Microsoft.DesktopAppInstaller v1.17.10271.0

Logs: %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir

Links
---------------------------------------------------------------------------
Privacy Statement   https://aka.ms/winget-privacy
License Agreement   https://aka.ms/winget-license
Third Party Notices https://aka.ms/winget-3rdPartyNotice
Homepage            https://aka.ms/winget
Windows <REDACTED>re Terms https://www.microsoft.com/en-us/<REDACTED>redocs/terms-of-sale

PS❯  Get-WindowsVersionViaWinRT.ps1

Key           Value
---           -----
OSVersionFull 10.0.22000.527.amd64fre.co_release.210604-1628
FlightRing    Retail
App           pwsh.exe
AppVer        7.2.1.500
DeviceFamily  Windows.Desktop
@denelon denelon transferred this issue from microsoft/winget-cli-restsource Mar 15, 2022
@ghost ghost added the Needs-Triage This work item needs to be triaged by a member of the core team. label Mar 15, 2022
@denelon denelon added Issue-Bug It either shouldn't be doing this or needs an investigation. Help-Wanted This is a good candidate work item from the community. and removed Needs-Triage This work item needs to be triaged by a member of the core team. labels Mar 16, 2022
@OfficialEsco
Copy link
Contributor

No?

PS M:\> winget install OpenMedia.4KVideoDownloader -v 4.19.4.4720
Found 4K Video Downloader [OpenMedia.4KVideoDownloader] Version 4.19.4.4720
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
Downloading https://dl.4kdownload.com/app/4kvideodownloader_4.19.4_x64.msi
  ██████████████████████████████  90.4 MB / 90.4 MB
Successfully verified installer hash
Starting package install...
Successfully installed

PS M:\> winget list
Name                                  Id                                     Version                      Available   Source
----------------------------------------------------------------------------------------------------------------------------
4K Video Downloader                   OpenMedia.4KVideoDownloader            4.19.4.4720                  4.20.0.4740 winget

PS M:\> winget upgrade OpenMedia.4KVideoDownloader
Found 4K Video Downloader [OpenMedia.4KVideoDownloader] Version 4.20.0.4740
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
Downloading https://dl.4kdownload.com/app/4kvideodownloader_4.20.0_x64.msi
  ██████████████████████████████  90.6 MB / 90.6 MB
Successfully verified installer hash
Starting package install...
Successfully installed

PS M:\> winget list
Name                                   Id                                      Version                      Available Source
----------------------------------------------------------------------------------------------------------------------------
4K Video Downloader                    OpenMedia.4KVideoDownloader             4.20.0.4740                            winget

Note: you cannot install both versions (exe and msi)

Manually installed the 4.19.4 exe version

PS M:\> winget list
Name                                  Id                                     Version                      Available   Source
----------------------------------------------------------------------------------------------------------------------------
4K Video Downloader                   OpenMedia.4KVideoDownloader            4.19.4.4720                  4.20.0.4740 winget

PS M:\> winget upgrade OpenMedia.4KVideoDownloader
Found 4K Video Downloader [OpenMedia.4KVideoDownloader] Version 4.20.0.4740
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
Downloading https://dl.4kdownload.com/app/4kvideodownloader_4.20.0_x64_online.exe
  ██████████████████████████████   863 KB /  863 KB
Successfully verified installer hash
Starting package install...
Successfully installed

PS M:\> winget list
Name                                   Id                                      Version                      Available Source
----------------------------------------------------------------------------------------------------------------------------
4K Video Downloader                    OpenMedia.4KVideoDownloader             4.20.0.4740                            winget

Both 4.19.4 and 4.20.0 is installed at the same point at one time, however the installer cleans up the previous version, this seems to be something on your side.

HOWEVER, my registry key is HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{59b7ab8a-bcd1-45ce-a82b-a50ee09d0b53}

Something with your installer might have gone wrong at some point, i would advice you to reinstall 4K Video Downloader

@sba923
Copy link
Author

sba923 commented Mar 20, 2022

I've been digging and as I said in my original post the issue indeed lies in the installer having let quite some garbage in the registry. Even the Settings app thinks there are two apps installed:

image

Once I've uninstalled both "copies" of the app and reinstalled it via winget (what else 😝) the situation's back to normal.

Note that such installer issues are not that uncommon, I also had a system where the registry contained entries for both VLC 3.0.12 and 3.0.16 (but in that case neither winget nor was showing the app twice), so I was able to uninstall it twice with winget uninstall!

@OfficialEsco
Copy link
Contributor

OfficialEsco commented Mar 20, 2022

We do know of installers which do not clean up the previous version which is why we can add this field to the manifest: UpgradeBehavior: uninstallPrevious

However as i said and tested, 4k Video Downloader does clean up the previous version, so i believe this is a issue between your PC and the Installer (since it also happened with VLC), my best guess is that it gets terminated too early or the cleanup part process errors out or gets permission denied.

btw, the uninstall registry strings and the Settings app/Add or Remove Programs are tied together (which WinGet uses for matching)

@sba923
Copy link
Author

sba923 commented Mar 20, 2022

I've faced tons of issues with 4k Video Downloader's auto-update features over the years, ranging from failed upgrades ("you have to download the installer from the website and upgrade that way") to issues when multiple accounts have the app installed on the same machine.

The VLC issue was probably created quite some time in the past, when I upgraded from 3.0.12 to whatever that release had told me to upgrade too.

I'll keep monitoring the consistency of winget's behavior with the Windows built-in mechanisms (Settings, Control Panel Add/Remove Programs).

FWIW I've been managing what apps are installed on which PCs in the household with a set of scripts built on top of
Get-InstalledApp.zip, that keep a history of that script's output in CSV files for each system. Among other use cases, I'm using this to determine if all PCs have the same version of common apps installed. So I should even be able to determine when VLC and 4k Video Downloader got "duplicated" on that particular system, and whether the situation ever existed, even temporarily, on other systems.

@OfficialEsco
Copy link
Contributor

Wops forgot to reply, would it be bad if we made winget always uninstall 4k Video Downloader before installing the new version? Since you've experienced the issues with recent versions its probably not fixed...

The way WinGet works is simply

  1. Downloads the installer from the provided URL
  2. Installs the Software with the silent switches

So its exactly like you downloading the exe/msi from their website.
So if their Installer is borked we cannot do anything else than remove the previous version and install on a clean slate.
I would probably recommend you to use the MSI because the EXE is a Online installer which downloads the exe which would work like the Auto Updater.

@sba923
Copy link
Author

sba923 commented Mar 23, 2022

The standard way of upgrading 4k Video Downloader is the in-app self-upgrade.

This seems to download and run the EXE installer to perform upgrade:

image

Sometimes this fails, and one has to download the EXE from their website 'cos that's what they offer by default. And recently what you get (from https://www.4kdownload.com/thanks-for-downloading?source=videodownloader) is even an "online installer" that downloads the actual installer under the hood.

@sba923
Copy link
Author

sba923 commented Mar 23, 2022

Just ran the self-upgrade process. Now the app's about box reports version 4.20.1.4780, but winget list still reports version 4.20.0.4740.

This is consistent with Settings / Apps & features:

image

The registry contains:
4kVideoDownloaderRegistryEntries202203232007.csv

@sba923
Copy link
Author

sba923 commented Mar 23, 2022

Note that the issue with running an uninstall followed by an install might be that the configuration of the app would be different after the whole operation (depending on what the uninstaller does or doesn't remove).

BTW upgrading apps with winget often results in desktop icons being added that were not present before the upgrade, but that's another story altogether 😉.

@OfficialEsco
Copy link
Contributor

Sometimes this fails, and one has to download the EXE from their website 'cos that's what they offer by default. And recently what you get (from https://www.4kdownload.com/thanks-for-downloading?source=videodownloader) is even an "online installer" that downloads the actual installer under the hood.

Yes, thats why i said you should try the MSI instead, these are our urls

Installers:
- Architecture: x64
InstallerType: wix
InstallerUrl: https://dl.4kdownload.com/app/4kvideodownloader_4.20.0_x64.msi
InstallerSha256: 3AEDFE0FB3395511FFDD3DF24793B047B61333A6AA0151275408E880E8F3D8DC
ProductCode: '{05A64568-AC44-468A-AEC3-68B226BB9366}'
- Architecture: x86
InstallerType: wix
InstallerUrl: https://dl.4kdownload.com/app/4kvideodownloader_4.20.0.msi
InstallerSha256: 32955BA92B0B83E3F49C96DC8AE72F2E30FD4B3DD5A62D14F40A08837E28C620
ProductCode: '{27205045-B666-471F-BBB1-8746E3B07997}'
- Architecture: x64
InstallerType: burn
InstallerUrl: https://dl.4kdownload.com/app/4kvideodownloader_4.20.0_x64_online.exe
InstallerSha256: EADACE1A7F1AD86DB66C8F1A3535A3B7FC60C5357A50D00C2990E48B915AA7CB
- Architecture: x86
InstallerType: burn
InstallerUrl: https://dl.4kdownload.com/app/4kvideodownloader_4.20.0_online.exe
InstallerSha256: 4513A1E07A97B0E2B77EAFE8E4E2394C606AD81B21E52485C93637B048EE604C

The MSI's are the full installer and i very much doubt it will have any of the issues you are experiencing

Note that the issue with running an uninstall followed by an install might be that the configuration of the app would be different after the whole operation (depending on what the uninstaller does or doesn't remove).

Yeah that is why this should be a last resort and the people who use the software should warn us if it does

BTW upgrading apps with winget often results in desktop icons being added that were not present before the upgrade, but that's another story altogether 😉.

Yeah.. That is because it just runs the silent switches, we could add a custom switch (install only) or a upgrade switch (should be used if the Software got a switch for upgrade instead of using UninstallPrevious)

I guess we should request a field for StartMenuShortcut, DesktopShortcut and any other switch you can think off at winget-cli

@sba923
Copy link
Author

sba923 commented Mar 24, 2022

Using the MSI will only solve the issue if the self-upgrade within the app installed via MSI doesn't exhibit the same registry problem / doesn't use the EXE to self-upgrade.

I need to experiment by uninstalling, installing an old version via MSI, and then perform a self-upgrade.

@OfficialEsco
Copy link
Contributor

Glhf https://github.com/microsoft/winget-pkgs/tree/master/manifests/o/OpenMedia/4KVideoDownloader

@KaranKad are you a 4k Video Download user? Are you using the burn or msi version and have you encountered this issue before?

@KaranKad
Copy link
Contributor

@KaranKad are you a 4k Video Download user? Are you using the burn or msi version and have you encountered this issue before?

Cant say because I don't use it anymore, will try testing it tho.

@sba923
Copy link
Author

sba923 commented Mar 25, 2022

I've performed the following test:

  1. uninstalled 4k Video Downloader via winget (even more than once JIC 😝)
  2. manually cleaned up everything in the registry related to it (very tedious)
  3. installed 4k Video Downloader version 4.20.0.4740 via winget (so, using the MSI)
  4. launched the app (had to re-activate / enter license key due to 2)
  5. let the app perform its self-upgrade process

Now the app reports it's version 4.20.1.4780, and winget and the Settings app report the same thing.

I could in theory run another test where 3 would be replaced by "install the app via its EXE installer."

The key is probably 2.

To be safe, now I have to run those steps on all my PCs 😭.

@OfficialEsco
Copy link
Contributor

  1. manually cleaned up everything in the registry related to it (very tedious)

Hi there, RevoUninstaller would like a word with you.
Or BCUninstaller/Bulk Crap Uninstaller if you'd like something Open-Source (but unmaintained unfortunately..)

@sba923
Copy link
Author

sba923 commented Mar 25, 2022

  1. manually cleaned up everything in the registry related to it (very tedious)

Hi there, RevoUninstaller would like a word with you. Or BCUninstaller/Bulk Crap Uninstaller if you'd like something Open-Source (but unmaintained unfortunately..)

Thanks for the hints. But I like to be in control, I don't know what these tools actually do. They must have some assumptions about what they can, cannot, should or should not remove, and in the context of the kind of mess I'm experiencing, how can I trust they will not remove anything they shouldn't remove, or leave behind something they should remove?

@OfficialEsco
Copy link
Contributor

You can see/choose what it removes, in theory they watch what the uninstaller does then searches for any relevant information (+ the information its told to look for if its a tricky software), but since you already know what to look for this should be perfect for you.

Test it in Sandbox/VM ;)

@sba923
Copy link
Author

sba923 commented Dec 2, 2022

The current situation is that the app's auto-updates itself, but most of the time winget doesn't update it. Must be that they don't keep their manifest up to date...

@Trenly
Copy link
Contributor

Trenly commented Apr 30, 2024

Thank you for taking the time to report this issue. In the amount of time the issue has been open, there have been several updates to the WinGet CLI which may have helped mitigate some of these concerns. I encourage you to try out the latest version of the CLI and see if your problem still persists.

If additional problems persist, it would be extremely helpful if a new issue could be opened. Thanks!

Close with reason: Stale;

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Help-Wanted This is a good candidate work item from the community. Issue-Bug It either shouldn't be doing this or needs an investigation.
Projects
None yet
Development

No branches or pull requests

5 participants