microsoft / microsoft/winget-cli

winget upgrade ignores `-l` option

Open
#2,207 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Command-Upgrade Issue-Bug
Dominant language
C++
Stars
26.4k
Forks
1.8k
Avg merge
1d 11h
Merged PRs (30d)
15

Description

Brief description of your issue

When upgrading a package using winget, the -l and --location options are ignored and the upgraded package is installed to the default location instead.

Steps to reproduce

Run winget install --id PuTTY.PuTTY -v "0.76.0.0" -l "C:\PuTTY"

Note that PuTTY 0.76 is now installed in the "C:\PuTTY" directory.

Run winget upgrade --id PuTTY.PuTTY -l "C:\PuTTY"
Note that PuTTY is now installed in "C:\Program Files\PuTTY"

Expected behavior

When installing upgrades, the new version will be installed to the directory specified by the -l or --location option.

Actual behavior

The -l or --location option is being ignored during an upgrade.

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

Windows: Windows.Desktop v10.0.19043.1706
Package: Microsoft.DesktopAppInstaller v1.17.10941.0

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

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

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 the issue with the documented winget install and winget upgrade commands for PuTTY on Windows. Trace the winget upgrade handling of -l and --location, compare it with installation behavior, and verify completion by confirming that the upgraded package uses the requested directory.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.