Skip to content

"winget validate" does not recognise "EXE" in all-caps as being a supported filetype for RelativeFilePath. #6180

Description

Relevant area(s)

WinGet CLI

Relevant command(s)

winget validate

Brief description of your issue

Apparently RelativeFilePath is not case-insensitive, leading to winget validate, and thus as far as I can currently tell also winget install, rejecting files with the EXE file extension in all-caps, whereas it fully accepts files with the exe file extension in all-lowercase.

Steps to reproduce

  1. Find and/or create a portable software whose executables have the .EXE filetype in all-caps. An example of such is in this attached ZIP file: Example manifest ZIP archive.
  2. Open Powershell 7.6.1 in Windows Terminal.
  3. Run winget validate --manifest (...)
  4. Receive the error Manifest Error: The file type of the referenced file is not allowed. [RelativeFilePath] Value: (...).EXE

Expected behavior

winget validate treats EXE in RelativeFilePath as being either case-insensitive or as being an alias of exe.

Actual behavior

winget validate does not treat EXE in all-caps as being an allowed filetype.

Image

Environment

Windows Package Manager v1.28.240
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.19045.6456
System Architecture: X86
Package: Microsoft.DesktopAppInstaller v1.28.240.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\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

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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Command-ValidateIssue related to WinGet ValidateIssue-BugIt either shouldn't be doing this or needs an investigation.

    Type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions