Skip to content

Require IconSha256 in schema #6468

Description

@pl4nty

Relevant area(s)

WinGet CLI

Relevant command(s)

winget show

Brief description of your issue

winget show <id> will skip showing an icon if IconSha256 is missing, even though it's nullable in the locale schema. Found in pl4nty/winget-extras#879.

I'm happy to send a PR if that's ok.

Steps to reproduce

  1. Create a locale manifest with Icons[].IconUrl and Icons[].IconFileType only
  2. Build a source and run winget show <id> on it
  3. Observe the missing icon
  4. Add Icons[].IconSha256 and retry, the icon will be shown

Logs:

2026-08-18 10:55:24.630 <I> [CLI ] Found one app. App id: Purslane.RustDesk App name: RustDesk
2026-08-18 10:55:24.634 <I> [CLI ] Manifest fields: Name [RustDesk], Version [1.4.9]
2026-08-18 10:55:24.649 <E> [FAIL] C:\__w\1\s\external\pkg\src\AppInstallerSharedLib\AppInstallerStrings.cpp(886)\WindowsPackageManager.dll!00007FF9F4FCD9F7: (caller: 00007FF9F5085E64) Exception(1) tid(73e0) 80070057 The parameter is incorrect.
    Msg:[ConvertToHexString: Invalid buffer size] 
2026-08-18 10:55:24.649 <E> [FAIL] C:\__w\1\s\external\pkg\src\AppInstallerCLICore\Workflows\WorkflowBase.cpp(160)\WindowsPackageManager.dll!00007FF9F5361E25: (caller: 00007FF9F5072D0D) LogHr(1) tid(73e0) 80070057 The parameter is incorrect.
    Msg:[C:\__w\1\s\external\pkg\src\AppInstallerSharedLib\AppInstallerStrings.cpp(886)\WindowsPackageManager.dll!00007FF9F4FCD9F7: (caller: 00007FF9F5085E64) Exception(1) tid(73e0) 80070057 The parameter is incorrect.
    Msg:[ConvertToHexString: Invalid buffer size] 
] 
2026-08-18 10:55:24.803 <I> [CLI ] Leaf command succeeded: root:show

Expected behavior

Icon and info is shown

Actual behavior

Icon is missing, other info shown

Environment

~> winget --info
    Windows Package Manager v1.29.280
    © 2026 Microsoft. All rights reserved.

Windows: Windows.Desktop v10.0.26200.9106
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.29.280.0

WinGet Directories
-----------------------------------------------------------------------------------------------------------------------
Logs                               %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\Diag…
User Settings                      %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\sett…
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
Configuration Modules              %LOCALAPPDATA%\Microsoft\WinGet\Configuration\Modules

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


Group Policy                                       State
-----------------------------------------------------------
Enable Windows App Installer Experimental Features Disabled
Enable Windows App Installer Hash Override         Disabled
Enable Additional Windows App Installer Sources    Enabled

Additional source Type                         Argument
---------------------------------------------------------------------------------
winget-extras     Microsoft.PreIndexed.Package https://winget.tplant.com.au/cache

Admin Setting                             State
--------------------------------------------------
LocalManifestFiles                        Disabled
BypassCertificatePinningForMicrosoftStore Disabled
InstallerHashOverride                     Disabled
LocalArchiveMalwareScanOverride           Disabled
ProxyCommandLineOptions                   Disabled
ConfigurationProcessorPath                Disabled
DefaultProxy                              Disabled

Metadata

Metadata

Assignees

No one assigned

    Labels

    Command-ShowIssue related to WinGet ShowIssue-BugIt either shouldn't be doing this or needs an investigation.Needs-TriageIssue needs to be triaged

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions