microsoft / microsoft/winget-pkgs

Winget downloads incorrect locale version of SSMS

Open
#102,724 12 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Help-Wanted Issue-Bug
Dominant language
No language data
Stars
11.1k
Forks
9.7k
Avg merge
1h 32m
Merged PRs (30d)
376

Description

Brief description of your issue

I have an "ENU" version of SSMS installed on my Dutch locale Windows 11. When I tried to update it with WinGet it downloaded a "DEU" version (German / Deutsch) which then failed to install.

Steps to reproduce

winget upgrade --id Microsoft.SQLServerManagementStudio

Expected behavior

Download correct version (ENU, not DEU)

Actual behavior

image

In (relevant) text:

winget upgrade --id Microsoft.SQLServerManagementStudio
Found Microsoft SQL Server Management Studio [Microsoft.SQLServerManagementStudio] Version 19.0.2
Downloading https://go.microsoft.com/fwlink/?linkid=2226343&clcid=0x407
Successfully verified installer hash
Installer failed with exit code: 1626
Installer log is available at: C:\Users\Rob\AppData\Local\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir\WinGet-Microsoft.SQLServerManagementStudio.19.0.2-2023-04-14-10-54-02.025.log

The problem appears to be in the clcid=0x407 part of the URL WinGet uses to download:

https://go.microsoft.com/fwlink/?linkid=2226343&clcid=0x407

Which results in the DEU version downloaded. When I strip that querystring parameter from the link the correct version (ENU) is downloaded:

https://go.microsoft.com/fwlink/?linkid=2226343

Environment
winget --info
Windows Package Manager (Preview) v1.5.441-preview
Copyright (c) Microsoft Corporation. All rights reserved.

Windows: Windows.Desktop v10.0.22621.1555
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.20.441.0

Logs: %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir

User Settings: %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\settings.json

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                        Disabled
BypassCertificatePinningForMicrosoftStore Disabled
InstallerHashOverride                     Disabled
LocalArchiveMalwareScanOverride           Disabled

Other software:

Microsoft SQL Server Management Studio 19.0.1 / 19.0.2

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing winget upgrade --id Microsoft.SQLServerManagementStudio and compare the download URL containing clcid=0x407 with the URL without that parameter. Use the linked installer log to verify the locale and exit code; done means the upgrade downloads the ENU version and installs successfully on the reported Dutch-locale Windows environment.

Written by the indexing model from the issue text.

Assessment

Domain
cli, operating-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.