microsoft / microsoft/winget-cli
`download` from the Store does not filter dependencies by platform
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 26.4k
- Forks
- 1.8k
- Avg merge
- 1d 11h
- Merged PRs (30d)
- 15
Description
Relevant area(s)
WinGet CLI
Relevant command(s)
winget download
Brief description of your issue
When doing winget download for a Store package and specifying --platform, dependencies for other platforms are still downloaded
Steps to reproduce
winget download 9wzdncrfjbmp --architecture x64 --platform Windows.Desktop
This downloads the Store app from the Store.
Expected behavior
Only bring in the dependencies for the targetted platform:
<PackageDependency Name="Microsoft.NET.Native.Framework.2.2" MinVersion="2.2.29512.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
<PackageDependency Name="Microsoft.NET.Native.Runtime.2.2" MinVersion="2.2.28604.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
<PackageDependency Name="Microsoft.VCLibs.140.00.UWPDesktop" MinVersion="14.0.33728.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
<PackageDependency Name="Microsoft.UI.Xaml.2.8" MinVersion="8.2501.31001.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
<PackageDependency Name="Microsoft.VCLibs.140.00" MinVersion="14.0.33519.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
Actual behavior
WinGet correctly fetches the latest .msixbundle main package that targets Windows.Desktop. But for the dependencies, it also brings in the dependencies for an older bundle targeting Windows.Universal
9WZDNCRFJBMP
│ Microsoft.WindowsStore_22508.1401.9.0_Desktop_X64.msixbundle
│
└───Dependencies
Microsoft.NET.Native.Framework.1.7_1.7.27413.0_Universal_X64.appx
Microsoft.NET.Native.Framework.2.2_2.2.29512.0_Universal_X64.appx
Microsoft.NET.Native.Runtime.1.7_1.7.27422.0_Universal_X64.appx
Microsoft.NET.Native.Runtime.2.2_2.2.28604.0_Universal_X64.appx
Microsoft.UI.Xaml.2.4_2.42007.9001.0_Universal_X64.appx
Microsoft.UI.Xaml.2.8_8.2501.31001.0_Universal_X64.appx
Microsoft.VCLibs.140.00.UWPDesktop_14.0.33728.0_Universal_X64.appx
Microsoft.VCLibs.140.00_14.0.33519.0_Universal_X64.appx
Environment
winget v1.12.350
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 winget download 9wzdncrfjbmp --architecture x64 --platform Windows.Desktop with WinGet v1.12.350, then trace how Store package dependencies are selected. Done means the download includes only dependencies for the requested Windows.Desktop platform and excludes the older Windows.Universal dependencies shown in the report.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- cli, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100