-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
VCRedist 2010 full version number not detected by Winget #2888
Comments
Since the version number in the current manifest is missing its 4th tuple, this should be updated to append Since a new version |
I'm not sure that's the best solution here. WinGet is going to use the "displayVersion" from Windows Apps & Features for comparison. If the installer isn't writing the full value to the registry, the comparison logic will create a false positive for the latest version being installed for any users with an earlier version where the reported value matches. |
I believe it's actually even worse than that - creating a false negative. Versions are treated as if they have an infinite number of trailing |
That's different from how .NET treats version numbers, where 1.0.0 would be considered newer than 1.0. If sorting |
.NET version numbers appear to have 4 tuples, and fill with -1s when not specified:
|
Brief description of your issue
Latest VCRedist 2010 x64 in winget-pkgs is
10.0.40219
.10.0.40219.**325**
)Problem is that there have been several releases
10.0.40219.x
, but Winget does not seem to detect the 4th version number position. Newest right now:10.0.40219.473
.Output from winget list vcredist
Adding a newer version to winget-pkgs probably would likely not offer users with previous versions installed an upgrade.
This behavior from Winget is probably expected, because the uninstall info written by the installer to the registry does not include the full version number (
DisplayVersion
).Screenshot from registry
A workaround to get full version info is:
Anyways, is there anything
winget-cli
can do, or should do, to be able to catch edge cases like this? Add ability for custom detection methods maybe?Steps to reproduce
Install:
winget install --id Microsoft.VCRedist.2010.x64 --silent
List:
winget list Microsoft.VCRedist.2010.x64
Expected behavior
Full version number is displayed.
Actual behavior
4th digit/position of the version number is missing, thus can't validate whether newer versions are available.
Environment
The text was updated successfully, but these errors were encountered: