Fix MSIX installer manifests and mark unverified versions - #5369
Merged
Gabriel Dufresne (GabrielDuf) merged 3 commits intoSep 10, 2026
Conversation
Copilot started reviewing on behalf of
Gabriel Dufresne (GabrielDuf)
September 10, 2026 19:24
View session
Contributor
There was a problem hiding this comment.
🟢 Approval recommended
The changed data paths, UI presentation, localization, version fallback, and edge cases are coherently implemented and covered by targeted tests.
Pull request overview
This PR improves WinGet/MSIX version handling by retrying manifest lookup with normalized trailing-zero versions and surfacing unreliable installed-version data in Avalonia views.
Changes:
- Marks unknown or restored WinGet versions as unverified across CLI, Pinget, and native paths.
- Adds localized warning tooltips/icons to package lists and package details.
- Adds trailing-zero MSIX version fallback with focused tests.
File summaries
| File | Description |
|---|---|
src/UniGetUI.PackageEngine.Tests/WinGetManagerTests.cs |
Tests fallback matching and unverified update versions. |
src/UniGetUI.PackageEngine.Tests/WinGetCliParsingTests.cs |
Tests CLI unknown-version flags. |
src/UniGetUI.PackageEngine.Tests/InstalledVersionNoticeTests.cs |
Tests warning tooltip generation. |
src/UniGetUI.PackageEngine.PackageManagerClasses/Packages/Package.cs |
Stores unverified-version state. |
src/UniGetUI.PackageEngine.PackageManagerClasses/Packages/InvalidImportedPackage.cs |
Implements the new interface property. |
src/UniGetUI.PackageEngine.PackageManagerClasses/Packages/InstalledVersionNotice.cs |
Builds localized warning text. |
src/UniGetUI.PackageEngine.Managers.WinGet/ClientHelpers/WinGetCliHelper.cs |
Flags unknown CLI versions. |
src/UniGetUI.PackageEngine.Managers.WinGet/ClientHelpers/PingetPackageDetailsProvider.cs |
Adds trailing-zero manifest lookup fallback. |
src/UniGetUI.PackageEngine.Managers.WinGet/ClientHelpers/PingetCliHelper.cs |
Flags unknown Pinget versions. |
src/UniGetUI.PackageEngine.Managers.WinGet/ClientHelpers/NativeWinGetHelper.cs |
Flags unknown native API versions. |
src/UniGetUI.PackageEngine.Interfaces/IPackage.cs |
Exposes unverified-version state. |
src/UniGetUI.Avalonia/Views/SoftwarePages/AbstractPackagesPage.axaml |
Displays list warnings and tooltips. |
src/UniGetUI.Avalonia/Views/DialogPages/PackageDetailsWindow.axaml.cs |
Displays the details warning icon. |
src/UniGetUI.Avalonia/ViewModels/DialogPages/PackageDetailsViewModel.cs |
Exposes details tooltip state. |
src/UniGetUI.Avalonia/Models/PackageCollections.cs |
Exposes list tooltip state. |
src/Languages/lang_en.json |
Adds localized warning strings. |
Review details
- Files reviewed: 16/16 changed files
- Comments generated: 0
- Review effort level: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
There was a problem hiding this comment.
🤖 Pull request was approved automatically: the AI review is complete and all its review threads are resolved. 🎉
Integration Details
{
"deliveryId": "4f017a60-ad4d-11f1-8a9a-ebb0f86a4e64",
"headSha": "5428016d77750292adaa66ffc6ab4d90b4e6a01d",
"reviewer": "copilot-pull-request-reviewer[bot]"
}
Gabriel Dufresne (GabrielDuf)
deleted the
fix/msix-installer-host-lookup
branch
September 10, 2026 19:42
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request improves how UniGetUI handles and displays package version information, especially when the installed version cannot be reliably determined (for example, if the package was updated outside of UniGetUI). It introduces a new mechanism to detect and visually warn users about unverified or unknown installed package versions, both in package lists and in the package details dialog. The changes also enhance user communication with new tooltips and warning icons, and include a small utility for better version string matching.
User interface improvements for unverified package versions:
Added a warning icon and tooltip in package lists and details views when a package's installed version is unverified, making it clear to users when the version information may be outdated or unreliable. The tooltip explains the situation and is localized. (
src/UniGetUI.Avalonia/Views/SoftwarePages/AbstractPackagesPage.axaml,src/UniGetUI.Avalonia/Views/DialogPages/PackageDetailsWindow.axaml.cs,src/Languages/lang_en.json) [1] [2] [3] [4] [5] [6] [7]Updated the package details dialog to display a warning and tooltip for unverified installed versions, including a warning icon and localized message. (
src/UniGetUI.Avalonia/ViewModels/DialogPages/PackageDetailsViewModel.cs,src/UniGetUI.Avalonia/Views/DialogPages/PackageDetailsWindow.axaml.cs) [1] [2] [3] [4] [5] [6]Backend and data model changes:
Added a new property
InstalledVersionIsUnverifiedto theIPackageinterface and set this property in WinGet manager code when the installed version is unknown or unverified. (src/UniGetUI.PackageEngine.Interfaces/IPackage.cs,src/UniGetUI.PackageEngine.Managers.WinGet/ClientHelpers/NativeWinGetHelper.cs,src/UniGetUI.PackageEngine.Managers.WinGet/ClientHelpers/PingetCliHelper.cs) [1] [2] [3] [4] [5] [6] [7]Updated
PackageWrapperand related view models to expose the new unverified version state and tooltip to the UI. (src/UniGetUI.Avalonia/Models/PackageCollections.cs) [1] [2]Version string handling improvement:
src/UniGetUI.PackageEngine.Managers.WinGet/ClientHelpers/PingetPackageDetailsProvider.cs) [1] [2]