Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Nov 4, 2025

Advertising manifest update messages were shown during dotnet workload install regardless of verbosity level, cluttering normal command output with messages like "Advertising manifest not updated. Manifest package for {0} doesn't exist."

Changes

  • Added IsDiagnostic() extension method to VerbosityOptions that returns true only for diagnostic/diag verbosity (more restrictive than existing IsDetailedOrDiagnostic())

  • Guarded error messages in WorkloadManifestUpdater with _displayManifestUpdates flag:

    • FailedAdManifestUpdate
    • AdManifestPackageDoesNotExist
  • Updated command constructors to pass displayManifestUpdates: Verbosity.IsDiagnostic():

    • WorkloadInstallCommand (changed from IsDetailedOrDiagnostic())
    • WorkloadUpdateCommand
    • WorkloadListCommand
  • Updated tests to reflect new behavior (messages only shown at diagnostic verbosity)

Behavior

Before: Messages shown at normal, minimal, detailed, diagnostic
After: Messages shown only at diagnostic

// WorkloadInstallCommand.cs
_workloadManifestUpdater = new WorkloadManifestUpdater(
    resolvedReporter, _workloadResolver, PackageDownloader, _userProfileDir,
    _workloadInstaller.GetWorkloadInstallationRecordRepository(), 
    _workloadInstaller, _packageSourceLocation, 
    displayManifestUpdates: Verbosity.IsDiagnostic());  // Changed from IsDetailedOrDiagnostic()
Original prompt

This section details on the original issue you should resolve

<issue_title>Advertising manifest messages showing up during install</issue_title>
<issue_description>```
C:\test>dotnet workload install maui ios maccatalyst android --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet6/nuget/v3/index.json --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json --source https://api.nuget.org/v3/index.json

Advertising manifest not updated. Manifest package for microsoft.net.sdk.maui doesn't exist.
Advertising manifest not updated. Manifest package for microsoft.net.workload.emscripten doesn't exist.
Advertising manifest not updated. Manifest package for microsoft.net.sdk.android doesn't exist.
Advertising manifest not updated. Manifest package for microsoft.net.workload.mono.toolchain doesn't exist.


We shouldn't be showing these messages at all. Also during testing admin installs, it looks like we're looking in the wrong place for the advertising manifests (according to Jacques):

C:\test>dotnet workload install maui ios maccatalyst android --from-rollback-file https://maui.blob.core.windows.net/metadata/rollbacks/6.0.4xx-sr3.json --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet6/nuget/v3/index.json --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json --source https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json --source https://api.nuget.org/v3/index.json

Workload(s) 'android ios maccatalyst maui' are already installed.
Skipping NuGet package signature verification.
Failed to update the advertising manifest microsoft.net.sdk.tvos: Failed to extract information from MSI: C:\Users\WDAGUtilityAccount\AppData\Local\Temp\d79c40da-6861-471c-9a26-6de5975949a0\data\Microsoft.NET.Sdk.tvOS.Manifest-6.0.400.15.4.440-x64.msi.
Failed to update the advertising manifest microsoft.net.sdk.macos: Failed to extract information from MSI: C:\Users\WDAGUtilityAccount\AppData\Local\Temp\c5339238-80b9-4907-b3a2-a49cca958a57\data\Microsoft.NET.Sdk.macOS.Manifest-6.0.400.12.3.440-x64.msi.
Failed to update the advertising manifest microsoft.net.sdk.maccatalyst: Failed to extract information from MSI: C:\Users\WDAGUtilityAccount\AppData\Local\Temp\cabd7fce-12a7-411a-ade1-ccf6e05d301d\data\Microsoft.NET.Sdk.MacCatalyst.Manifest-6.0.400.15.4.440-x64.msi.
Failed to update the advertising manifest microsoft.net.workload.mono.toolchain: Failed to extract information from MSI: C:\Users\WDAGUtilityAccount\AppData\Local\Temp\4d113a51-82c4-4772-b944-73723615af0e\data\Microsoft.NET.Workload.Mono.ToolChain.Manifest-6.0.300.6.0.7-x64.msi.
Failed to update the advertising manifest microsoft.net.sdk.android: Failed to extract information from MSI: C:\Users\WDAGUtilityAccount\AppData\Local\Temp\943cb9c7-d6d6-4648-9589-f82993800dca\data\Microsoft.NET.Sdk.Android.Manifest-6.0.300.32.0.442-x64.msi.


<agent_instructions>We should suppress the advertising manifest messages during install unless verbosity is set to diag.</agent_instructions>

## Comments on the Issue (you are @copilot in this section)

<comments>
</comments>


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI changed the title [WIP] Fix advertising manifest messages during install Suppress advertising manifest messages unless verbosity is diagnostic Nov 4, 2025
Copilot AI requested a review from marcpopMSFT November 4, 2025 22:05
Copilot finished work on behalf of marcpopMSFT November 4, 2025 22:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants