microsoft / microsoft/microsoft-ui-xaml

Several binaries are downgraded between v1.6.3 and v.1.7.2

Open
#10,615 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

area-NugetPackage needs-triage Regression team-CompInput
Dominant language
C++
Stars
8.4k
Forks
942
Avg merge
2d 7h
Merged PRs (30d)
105

Description

Describe the bug

The following binaries have been downgraded between v1.6.3 and v.1.7.2:

Image

When upgrading my unpackaged app (using self-contained Windows App SDK) to the latest stable SDK, I noticed during testing that my app would not start after upgrading it. After seeing a System.IO.FileNotFoundException in the Event Viewer, I began comparing my app's files before and after upgrading it, and noticed at least one missing file. I also compared the previous version of my app with a clean (working) install of the latest version. Long story short, the files shown above in the newer SDK have versions that are lower than what they were in the older SDK, and because of MSI file versioning rules msiexec refused to install the older versions on top of the newer ones and instead just removed the previous (newer) ones, leaving my app in a broken state.

Steps to reproduce the bug
  1. Create a WinUI 3 unpackaged app targeting the Windows App SDK 1.6.3.
    a. Add the <WindowsPackageType>None</WindowsPackageType> and <WindowsAppSDKSelfContained>true</WindowsAppSDKSelfContained> properties to your .csproj file.
  2. Build a MSI for your app (using WiX or similar) and install it on a device.
  3. Retarget your app to Windows App SDK 1.7.2
  4. Rebuild the MSI and install it on the same device (performing a MajorUpgrade / over-the-top installation)
Expected behavior

If the same binaries exist in newer SDKs, their versions should be the same or higher than in the previous SDK.

Screenshots

App Crash in Event Log
Image

NuGet package version

Windows App SDK 1.7.2: 1.7.250513003

Packaging type

Unpackaged

Windows version

Windows 11 version 24H2 (22621, October 2024 Update)

IDE

Visual Studio 2022

Additional context

From the MSI log:

Disallowing installation of component: {guid} since the same component with higher versioned keyfile exists

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 with the unpackaged self-contained .csproj settings and the MSI log while reproducing the upgrade from Windows App SDK 1.6.3 to 1.7.2 using WiX or similar. Compare the affected binaries and component key-file versions; done means the upgrade installs without removing required files and the app starts.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, csharp
Domain
build-system, desktop
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.