microsoft / microsoft/winget-cli
Incorrect package name matching
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
While installing devhome, WinGet could not install the dependency for me as it incorrectly correlates the dependency with an installed package
~ winget install devhome
Found Dev Home (Preview) [Microsoft.DevHome] Version 0.503.261.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.
No suitable installer found for manifest: Microsoft.WindowsAppRuntime.1.3 1.3.3Error processing package dependencies, exiting...
Logs:
WinGet-2023-09-27-22-55-38.740.log
Digging deeper, it seems to me that WinGet is incorrectly matching an installed package Windows SDK AddOn with the PackageId Microsoft.WindowsAppRuntime.1.3
~ winget list "windowsappsdk"
Name Id Version Available Source
--------------------------------------------------------------------------
Windows SDK AddOn Microsoft.WindowsAppRuntime.1.3 < 1.3.2 1.3.3 winget
I believe this mismatch is due to the fact that 1.3.2 version of WindowsAppRuntime has PackageName Windows App SDK which is getting matched with installed package with name Windows SDK Addon. Since 1.3.3 manifest PackageName was modified to the correct Windows App Runtime, the installed package is not getting matched with the 1.3.3 version.
ARP Entry for Windows SDK AddOn
ARP Entry(s) for Windows App Runtime after manual installation
Steps to reproduce
- Have Windows SDK AddOn installed on your machine (no idea tho where i got that from)
- winget list "windowsappsdk"
- The installed package gets incorrectly correlated to
Microsoft.WindowsAppRuntime.1.3 - This stops me from correctly installing devhome as it has a dependency on Windows App Runtime.
Expected behavior
(If I'm understanding this correctly) Windows SDK AddOn should not be getting matched with Windows App SDK. I would expect that the "App" in Windows App SDK would prevent it from getting matched with Windows SDK AddOn
Actual behavior
~ winget list "windowsappsdk"
Name Id Version Available Source
--------------------------------------------------------------------------
Windows SDK AddOn Microsoft.WindowsAppRuntime.1.3 < 1.3.2 1.3.3 winget
Environment
Windows Package Manager v1.6.2631
Copyright (c) Microsoft Corporation. All rights reserved.
Windows: Windows.Desktop v10.0.22621.2283
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.21.2631.0
Winget Directories
-------------------------------------------------------------------------------------------------------------------------------
Logs %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir
User Settings %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\settings.json
Portable Links Directory (User) %LOCALAPPDATA%\Microsoft\WinGet\Links
Portable Links Directory (Machine) C:\Program Files\WinGet\Links
Portable Package Root (User) %LOCALAPPDATA%\Microsoft\WinGet\Packages
Portable Package Root C:\Program Files\WinGet\Packages
Portable Package Root (x86) C:\Program Files (x86)\WinGet\Packages
Installer Downloads %USERPROFILE%\Downloads
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
Admin Setting State
--------------------------------------------------
LocalManifestFiles Enabled
BypassCertificatePinningForMicrosoftStore Disabled
InstallerHashOverride Disabled
LocalArchiveMalwareScanOverride Disabled
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 mismatch with the listed winget list and winget install commands, then compare the attached log with the 1.3.2 and 1.3.3 manifest PackageName values. Trace the package-name matching behavior and add coverage where appropriate; done means Windows SDK AddOn is not reported as Microsoft.WindowsAppRuntime.1.3 and the Dev Home dependency can install correctly.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100