Upgrade doesn't upgrade all architectures
Please confirm these before moving forward
- [X] I have searched for my issue and not found a work-in-progress/duplicate/resolved issue.
- [X] I have not been informed if the issue is resolved in a preview version of the winget client.
Category of the issue
Installation issue.
Brief description of your issue
When I execute "winget upgrade --all" it doesn't download the x86 version of the Microsoft.DotNet.DesktopRuntime.6 package which is installed side-by-side on x64-based installations.
Steps to reproduce
Execute "winget upgrade --all".
Actual behavior
It downloads the x64 version when it should be downloading the x86 version since both need to be updated.
Expected behavior
It should be downloading both the x86 and the x64 versions.
Environment
Windows Package Manager (Preview) v1.3.1391-preview
Copyright (c) Microsoft Corporation. All rights reserved.
Windows: Windows.Desktop v10.0.22000.739
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.18.1391.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 Store Terms https://www.microsoft.com/en-us/storedocs/terms-of-sale
Screenshots and Logs
No response
We need to have a way to determine the architecture for a given installed package to upgrade architectures that aren't the default architecture on the system. The current logic looks at the architecture of the system to make the determination of the best architecture to install when the "--architecture <architecture>" isn't specified.
@trparky As a workaround you can specify the "--architecture" to get the x86 variations
The same feature need to be added to winget uninstall command. For example, I can not uninstall Oracle.JavaRuntimeEnvironment because I have both x86 and x64 versions.