microsoft / microsoft/winget-cli

"A newer version was found, but the install technology is different from the current version installed"

Open
#2,826 1 comment 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Area-Matching 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

Two DIFFERENT apps within the same app family are misrecognized as different installer versions of the same app. For example, I maintain these two apps on WinGet: Kiwix.WikiMed, and Kiwix.WikiMed.Electron. The former is an msix/appx UWP app, and the latter is a traditional Win32 Electron app (exe). When the latter is installed, winget gives the following error: A newer version was found, but the install technology is different from the current version installed. Please uninstall the package and install the newer version (see screenshot for more details). Only once I uninstall the .exe version is it possible to install the appx version (in the screenshot, I uninstalled the .exe version before running the command again successfully).

image
Steps to reproduce

Install an executable version of the app, then attempt to install the UWP version. Note, I experienced this with the WikiMed app, but NOT with the smaller sister app Kiwix.KiwixJS. Go figure.

Expected behavior

It is useful that winget recognizes that two apps belong to the same family, but it should give me instructions to use the --force switch if I want both apps. There are actual differences of capability between these apps.

Actual behavior

Winget prevents installation of both apps and doesn't inform me of any workaround.

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

Windows: Windows.Desktop v10.0.22621.963
System Architecture: X64
Package: Microsoft.DesktopAppInstaller v1.19.3132.0

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 reported case: install the executable version of Kiwix.WikiMed, then attempt to install its UWP version with winget. Compare the behavior with Kiwix.KiwixJS and determine how the install-technology mismatch is reported. Done means users receive a --force workaround when both app variants can coexist.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.