Report skipped upgrades when install technology differs (upgrade --all)#6096
Open
AMDphreak wants to merge 1 commit intomicrosoft:masterfrom
Open
Report skipped upgrades when install technology differs (upgrade --all)#6096AMDphreak wants to merge 1 commit intomicrosoft:masterfrom
AMDphreak wants to merge 1 commit intomicrosoft:masterfrom
Conversation
Introduce APPINSTALLER_CLI_ERROR_UPDATE_INSTALL_TECHNOLOGY_MISMATCH for the case where a newer version exists but no installer applies because the installed package uses a different install technology. winget upgrade --all previously continued silently for this case (see microsoft#5416). Count those packages and print a summary line, matching the pattern used for unknown versions and explicit-upgrade pins. Single-package upgrade now returns the distinct HRESULT so scripts can distinguish this scenario from other not-applicable updates.
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.
Summary
Addresses silent skips during
winget upgrade --allwhen a newer version exists but no installer applies because the installed package uses a different install technology than the available upgrade (see #5416).Changes
APPINSTALLER_CLI_ERROR_UPDATE_INSTALL_TECHNOLOGY_MISMATCH(0x8A15008E) for this scenario so it is distinct from genericAPPINSTALLER_CLI_ERROR_UPDATE_NOT_APPLICABLE.UpdateAllApplicable, count those packages and print a summary line (same pattern as unknown-version and explicit-upgrade skips).Converters.hlike other no-upgrade cases.doc/.../returnCodes.mdand localized error strings.Notes
Related reports: #4550 (post-install verification vs. installer success), #2027. This PR targets the silent --all behavior for install-technology mismatch; verifying installed version after every installer exit is a larger follow-up.
Testing
UpdateFlow_UpdateExeInstallerTypeNotApplicablefor the new HRESULT.Made with Cursor
Microsoft Reviewers: Open in CodeFlow