microsoft / microsoft/winget-cli
try to upgrade vc redist and desktop runtime x86, upgrades x64 instead
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 26.4k
- Forks
- 1.8k
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 15
Description
Brief description of your issue
I've been trying to get all my packages up to date using winget, and for the most part it works, but there are two x86 packages that every time I try to upgrade them, it starts download the (already upgraded) x64 version instead.
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.30501 Microsoft.VC++2013Redist-x64Microsoft Windows Desktop Runtime - 3.1.25 (x86) Microsoft.DotNet.DesktopRuntime.3_1
It seems that somehow the id for the x64 version has been associated with the name of the x86 version.
I suspect this is similar to the bug #1413 but I am not sure how to fix it.
Steps to reproduce
- List upgrades.
winget upgrade
Shows:
Name Id Version Available Source
----------------------------------------------------------------------------------------------------------------------------------
Microsoft Windows Desktop Runtime - 3.1.25 (x86) Microsoft.DotNet.DesktopRuntime.3_1 3.1.25 3.1.27 winget
Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.30501 Microsoft.VC++2013Redist-x64 12.0.30501.0 12.0.40664.0 winget
- Try to upgrade
winget upgrade --verbose-logs "Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.30501"
Instead does the following:
Found Microsoft Visual C++ 2013 Redistributable (x64) [Microsoft.VC++2013Redist-x64] Version 12.0.40664.0
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://download.visualstudio.microsoft.com/download/pr/10912041/cee5d6bca2ddbcd039da727bf4acb48a/vcredist_x64.exe
Expected behavior
I expect the x86 version to be downloaded and upgraded.
Actual behavior
The x64 version is re-downloaded (even though it is already installed) and the x86 version remains in the list of non-upgraded packages.
Environment
Windows Package Manager v1.3.2091
Copyright (c) Microsoft Corporation. All rights reserved.
Windows: Windows.Desktop v10.0.22621.317
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.18.2091.0
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the issue with the reported winget upgrade commands and the two package IDs, using the shown verbose output to compare x86 and x64 selection. Done means the x86 Visual C++ and Windows Desktop Runtime packages are selected and upgraded, while the already-installed x64 package is not downloaded again.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, powershell
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100