winget-cli icon indicating copy to clipboard operation
winget-cli copied to clipboard

SHOW fails to display info for specific packages

Open Kein opened this issue 4 years ago • 1 comments

Brief description of your issue

WinGet fails to show any info for specific existing packages despite having it in list

Steps to reproduce

  1. winget list -q Calculator
  2. winget show --id Microsoft.WindowsCalculator_8wekyb3d8bbwe

Expected behavior

The usual show info is displayed

Actual behavior

No package found matching input criteria.

Environment

Windows Package Manager v0.2.0 Preview
Windows: Windows.Desktop v10.0.19042.685

Kein avatar Jan 04 '21 20:01 Kein

This is due to the package being in the msstore source.

denelon avatar Jan 06 '21 22:01 denelon

What information are you looking for in this case?

denelon avatar Jan 06 '21 22:01 denelon

At bare minimum the same information it provides for the currently visible packages (on which SHOW works)? Ideally I'd also want to see dependency tree. Perhaps lvl1 just for now to see immediate flat dependencies, may be a tree later down the line.

Kein avatar Jan 07 '21 08:01 Kein

Dependencies haven't been implemented yet. When they are, we should be able to show the dependency graph.

denelon avatar Jan 07 '21 19:01 denelon

Well, sure, but dependencies is a supplementary feature. It is still a bug that it cant find and show any info on the app it knows about from the list(???)

Kein avatar Jan 07 '21 19:01 Kein

Well, sure, but dependencies is a supplementary feature. It is still a bug that it cant find and show any info on the app it knows about from the list(???)

I'd agree. If no additional information can be shown for Store apps at the moment, at least a more helpful and less confusing error message should be shown.

chausner avatar Jan 10 '21 23:01 chausner

This is actually because Calculator app is not in the curated list of the experimental store source or the winget source. winget is not able to correlate the installed app with any app in existing sources so it shows "No package found". This should get better when we have a real store source one day or a bigger catalog in winget sources.

yao-msft avatar Apr 08 '21 16:04 yao-msft

These commands work: winget show "Windows Calulator" winget show 9WZDNCRFHVN5

Any package with an associated source can now be displayed with winget show

There may still be exceptions where WinGet doesn't have the ability to match the "Id" for pre-installed packages or packages that are installed via the Microsoft Store and are not available in the "msstore" REST source.

denelon avatar Feb 16 '23 20:02 denelon

Which branch/commit is this?

Kein avatar Feb 17 '23 02:02 Kein

It's fairly old. I'm not sure which release this initially appeared in. My best guess is the 1.2 release where we had the Microsoft Store "msstore" source and support for REST enabled. We've had changes with winget list where we stopped displaying packages linked to the "msstore" source due to some bad match results based on the heuristics we initially implemented.

The primary gap today is related to UWP packages coming from the Microsoft Store that weren't installed via winget. The "Id" column in winget list would display with a name like "<Publisher>.<Package>_8wekyb3d8bbwe". The "msstore" REST source manifests haven't been updated to include the package family name which we would use to key to the installed package.

If the package has been installed with WinGet, then we get an "Id" like "9NBLGGH4NNS1" (this one is the App Installer). In these cases, the "msstore" source is referenced, but the lack of a version number prevents the winget upgrade --all flow from knowing if a newer version is available.

denelon avatar Feb 17 '23 18:02 denelon

winget show 9MV0B5HZVK9Z
Failed when searching source; results will not be included: winget
Found Xbox [9MV0B5HZVK9Z]
Version: Unknown

Weird winget error aside, any reason it fails on version?

Kein avatar Feb 26 '23 01:02 Kein

@Kein the "msstore" REST source isn't providing the version information WinGet needs for the upgrade comparison logic. It's present via the "show" command, but not the endpoint used for upgrade. They have been notified, and hopefully we'll get a fix.

denelon avatar Feb 27 '23 17:02 denelon

WinGet Show now displays dependencies and other metadata from the manifest including the URL to the installer (unless the Microsoft Store "msstore" source is used for legacy UWP packages).

denelon avatar Mar 06 '24 16:03 denelon