Skip to content

Conversation

@dkbennett
Copy link
Member

@dkbennett dkbennett commented Sep 22, 2025

Motivated by issue #1885 but does not complete it.

This adds the UninstallerSwitches and UninstallerSuccessCodes to the manifest schema for 1.12 and all related tests and validation.

  • UninstallerSwitches are a subset of the InstallerSwitches
  • UninstallerSuccessCodes are essentially identical to InstallerSuccessCodes

Neither of these fields are consumed yet, this is updating the schema to support their addition.

Tested:

  • RestSource tests and ManifestValidation tests pass

Microsoft Reviewers: Open in CodeFlow

Copy link
Member

@JohnMcPMS JohnMcPMS left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like adding all of these to the schema without an implementation and/or plan on how to consume them will result in values that are unusable. Silent already has a meaning since there is silent ARP entry data. What do we do if a silent switch is present with that ARP data? Interactive is the default assumption for uninstall ARP command line; when would we use the interactive switch?

If they exist in 1.12 schema but aren't implemented, people can add them without effect until they suddenly light up at some point in the future. This is really the blocking issue to me. I can imagine a path forward, even if it isn't clearly defined today, for all of the switches. But allowing for these to be defined in manifests in winget-pkgs without any validation beyond "the manifest parses" seems very bad.

@microsoft-github-policy-service microsoft-github-policy-service bot added the Needs-Author-Feedback Issue needs attention from issue or PR author label Sep 24, 2025
@Trenly
Copy link
Contributor

Trenly commented Sep 24, 2025

Interactive is the default assumption for uninstall ARP command line;

I thought the default was:

  • If the ARP contains SilentUninstallString use that
  • Otherwise, fall back to UninstallString

@JohnMcPMS
Copy link
Member

Interactive is the default assumption for uninstall ARP command line;

I thought the default was:

  • If the ARP contains SilentUninstallString use that
  • Otherwise, fall back to UninstallString

I wasn't complete enough in my statement: Interactive is the default assumption for the UninstallString value behavior.

@microsoft-github-policy-service microsoft-github-policy-service bot added Needs-Attention Issue needs attention from Microsoft and removed Needs-Author-Feedback Issue needs attention from issue or PR author labels Sep 25, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Needs-Attention Issue needs attention from Microsoft

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants