microsoft / microsoft/winget-cli

The update process fails although the package was successfully updated.

Open
#4,550 4 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

Winget Log file shows that a package has been successfully installed. In the next line, the installation is marked as failed and a new installation of the package (instead of the update) is attempted. Here are three examples. The issue occurs with packages of all kind but not with all packages. Three examples attached. Actually, the update has been finished successfully.

Steps to reproduce

Winget upgrade --id KeePassXCTeam.KeePassXC --accept-package-agreements --accept-source-agreements -h
Winget upgrade --id TeamViewer.TeamViewer --accept-package-agreements --accept-source-agreements -h
Winget upgrade --id Microsoft.EdgeWebView2Runtime --accept-package-agreements --accept-source-agreements -h

Expected behavior

Upgrade finshed successfully.

Actual behavior

Upgrade fails and Winget tries to upgrade packages at every run.

08:12:23 - Updating KeePassXC from 2.7.7 to 2.7.8...
08:12:23 - ########## WINGET UPGRADE PROCESS STARTS FOR APPLICATION ID 'KeePassXCTeam.KeePassXC' ##########
08:12:23 - -> Running: Winget upgrade --id KeePassXCTeam.KeePassXC --accept-package-agreements --accept-source-agreements -h
Successfully installed
08:13:18 - -> An upgrade for KeePassXC failed, now trying an install instead...
08:13:18 - -> Running: Winget install --id KeePassXCTeam.KeePassXC --accept-package-agreements --accept-source-agreements --force -h
Successfully installed
08:13:34 - ########## WINGET UPGRADE PROCESS FINISHED FOR APPLICATION ID 'KeePassXCTeam.KeePassXC' ##########
08:13:34 - KeePassXC update failed

08:08:15 - Updating TeamViewer from 15.53.6 to 15.53.7...
08:08:15 - ########## WINGET UPGRADE PROCESS STARTS FOR APPLICATION ID 'TeamViewer.TeamViewer' ##########
08:08:15 - -> Running: Winget upgrade --id TeamViewer.TeamViewer --accept-package-agreements --accept-source-agreements -h
Successfully installed
08:09:29 - -> An upgrade for TeamViewer failed, now trying an install instead...
08:09:29 - -> Running: Winget install --id TeamViewer.TeamViewer --accept-package-agreements --accept-source-agreements --force -h
Successfully installed
08:10:47 - ########## WINGET UPGRADE PROCESS FINISHED FOR APPLICATION ID 'TeamViewer.TeamViewer' ##########
08:10:47 - TeamViewer update failed.

08:10:48 - Updating Microsoft Edge WebView2-Laufzeit from 124.0.2478.80 to 124.0.2478.97...
08:10:48 - ########## WINGET UPGRADE PROCESS STARTS FOR APPLICATION ID 'Microsoft.EdgeWebView2Runtime' ##########
08:10:48 - -> Running: Winget upgrade --id Microsoft.EdgeWebView2Runtime --accept-package-agreements --accept-source-agreements -h
08:10:52 - -> An upgrade for Microsoft Edge WebView2-Laufzeit failed, now trying an install instead...
08:10:52 - -> Running: Winget install --id Microsoft.EdgeWebView2Runtime --accept-package-agreements --accept-source-agreements --force -h
Successfully installed
08:12:03 - ########## WINGET UPGRADE PROCESS FINISHED FOR APPLICATION ID 'Microsoft.EdgeWebView2Runtime' ##########
08:12:03 - Microsoft Edge WebView2-Laufzeit update failed.

Environment
Windows-Paket-Manager v1.7.11261
Copyright (c) Microsoft Corporation. Alle Rechte vorbehalten.

Windows: Windows.Desktop v10.0.19045.4412
Systemarchitektur: X64
Paket: Microsoft.DesktopAppInstaller v1.22.11261.0

WinGet-Verzeichnisse
-----------------------------------------------------------------------------------------------------------------------------------------
Protokolle                                   %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\DiagOutputDir
Benutzereinstellungen                        %LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\settings.json
Verzeichnis für portierbare Links (Benutzer) %LOCALAPPDATA%\Microsoft\WinGet\Links
Portables Linkverzeichnis (Computer)         C:\Program Files\WinGet\Links
Portierbarer Paketstamm (Benutzer)           %LOCALAPPDATA%\Microsoft\WinGet\Packages
Portierbarer Paketstamm                      C:\Program Files\WinGet\Packages
Portierbares Paketstamm (x86)                C:\Program Files (x86)\WinGet\Packages
Installationsprogrammdownloads               %USERPROFILE%\Downloads

Links
-----------------------------------------------------------------------------------------
Datenschutzerklärung              https://aka.ms/winget-privacy
Lizenzvereinbarung                https://aka.ms/winget-license
Hinweise von Drittanbietern       https://aka.ms/winget-3rdPartyNotice
Startseite                        https://aka.ms/winget
Windows Store-Nutzungsbedingungen https://www.microsoft.com/en-us/storedocs/terms-of-sale

Administratoreinstellung                  Status
-----------------------------------------------------
LocalManifestFiles                        Deaktiviert
BypassCertificatePinningForMicrosoftStore Deaktiviert
InstallerHashOverride                     Deaktiviert
LocalArchiveMalwareScanOverride           Deaktiviert

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 three listed winget upgrade commands and review their diagnostic logs. Trace how a successful installation result is interpreted after an upgrade, including the fallback install and final status reporting. Done means successful upgrades are not marked failed or retried on the next run.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 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.