Fix WinGet updates being hidden by the "already upgraded" cache (#5042)#5072
Merged
Gabriel Dufresne (GabrielDuf) merged 1 commit intoJul 10, 2026
Merged
Conversation
Marc-André Moreau (mamoreau-devolutions)
approved these changes
Jul 10, 2026
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 updates how the "already upgraded" cache is handled when listing available package updates, addressing an issue where recently upgraded packages could be hidden from update lists indefinitely. The new logic ensures that such packages are only suppressed from the update list once, then reappear on subsequent scans if still outdated. This improves accuracy and user experience, especially in cases where the CLI index lags behind real package state.
Improvements to update suppression logic:
ConsumeAlreadyUpgradedSuppressionmethod toWinGetPkgOperationHelper, which hides a just-upgraded package only once and then clears the suppression mark, so outdated packages reappear on the next scan (issue [BUG] 4 updates are missing #5042).UpdateAlreadyInstalledwithConsumeAlreadyUpgradedSuppressioninWinGetCliHelper.csandPingetCliHelper.cs, ensuring the new one-shot suppression logic is used when listing available updates.NativeWinGetHelper.cs, removed the "already upgraded" cache check entirely and now always trusts the COMIsUpdateAvailableproperty, further preventing packages from being hidden incorrectly.Testing and validation:
ConsumeAlreadyUpgradedSuppressioninWinGetManagerTests.cs, covering scenarios where the suppression mark is present, absent, or mismatched with the available version.