Skip to content

Merge alternate release changes - #6024

Open
hoyosjs wants to merge 6 commits into
dotnet:release/stablefrom
hoyosjs:juhoyosa/merge-release
Open

hoyosjs wants to merge 6 commits into
dotnet:release/stablefrom
hoyosjs:juhoyosa/merge-release

Conversation

@hoyosjs

@hoyosjs hoyosjs commented Sep 10, 2026

Copy link
Copy Markdown
Member
  • [internal/release/stable] Update dependencies from dnceng/internal/microsoft-clrmd
  • Merged PR 64767: [internal/release/stable] Update dependencies from dnceng/internal/microsoft-clrmd
  • Merged PR 64786: Update SDK and enable private feeds everywhere
  • Share diagnostics release tool across repositories (Share diagnostics release tool across repositories #5988)
  • Change path verification for loaded assets

ProductConstructionServiceProd and others added 6 commits August 19, 2026 23:22
…crosoft-clrmd

 - Add internal feed setup to PRs in internal branches
…nceng/internal/microsoft-clrmd

This pull request updates the following dependencies

[marker]: <> (Begin:eb6d769e-f5ac-4126-8aa9-724753c581ee)
## From https://dev.azure.com/dnceng/internal/_git/Microsoft-clrmd
- **Subscription**: [eb6d769e-f5ac-4126-8aa9-724753c581ee](https://maestro.dot.net/subscriptions?search=eb6d769e-f5ac-4126-8aa9-724753c581ee)
- **Build**: [20260831.1](https://dev.azure.com/dnceng/internal/_build/results?buildId=3061998) ([329474](https://maestro.dot.net/channel/551/azdo:dnceng:internal:Microsoft-clrmd/build/329474))
- **Date Produced**: August 31, 2026 2:53:33 PM UTC
- **Commit**: [04c417f99d7724630eef6c3f737f7b7356b40a7a](https://dev.azure.com/dnceng/internal/_git/Microsoft-clrmd?_a=history&version=GC04c417f99d7724630eef6c3f737f7b7356b40a7a)
- **Branch**: [refs/heads/msrc-sos](https://dev.azure.com/dnceng/internal/_git/Microsoft-clrmd?version=GBrefs/heads/msrc-sos)

[DependencyUpdate]: <> (Begin)

- **Dependency Updates**:
  - From [4.0.741701 to 4.0.743101][1]
     - Microsoft.Diagnostics.Runtime
     - Microsoft.Diagnostics.Runtime.Utilities

[1]: https://dev.azure.com/dnceng/internal/_git/Microsoft-clrmd/branches?baseVersion=GCf427643b7085e311f1e0bc503b1692143e13cc46&targetVersion=GC04c417f99d7724630eef6c3f737f7b7356b40a7a&_a=files

[DependencyUpdate]: <> (End)


[marker]: <> (End:eb6d769e-f5ac-4126-8aa9-724753c581ee)
## Summary
- package DiagnosticsReleaseTool as Microsoft.Diagnostics.ReleaseTool
- support public and internal-only release assets through
IsAssetForPublicRelease
- move repository-specific release constants into tool-list.json
- gather non-shipping assets and skip MergedManifest.xml during release
preparation

## Validation
- built and packed DiagnosticsReleaseTool in Release configuration
- installed the generated .NET tool package and exercised its
command-line help
- completed independent correctness review
…sitories (dotnet#5988)

Share diagnostics release tool across repositories (dotnet#5988)

## Summary
- package DiagnosticsReleaseTool as Microsoft.Diagnostics.ReleaseTool
- support public and internal-only release assets through
IsAssetForPublicRelease
- move repository-specific release constants into tool-list.json
- gather non-shipping assets and skip MergedManifest.xml during release
preparation

## Validation
- built and packed DiagnosticsReleaseTool in Release configuration
- installed the generated .NET tool package and exercised its
command-line help
- completed independent correctness review

Cherry-picked from commit `a6caf342`.

----
#### AI description  (iteration 1)
#### PR Classification
This is a feature enhancement to make the diagnostics release tool shareable across repositories by packaging it as a .NET tool and adding support for internal-only assets.

#### PR Summary
The release tool is now packaged as a distributable .NET tool (`Microsoft.Diagnostics.ReleaseTool`) and enhanced to handle both public and internal-only release assets separately. The changes enable the tool to be shared across repositories while supporting different release tiers.

- `DiagnosticsReleaseTool.csproj`: Configured as a packable .NET tool with package metadata for distribution
- `Release.cs`: Refactored to process both public release and internal-only release paths separately, with tracking of `IsAssetForPublicRelease` flag for each file
- `AcquireBuild.ps1`: Added `--IncludeNonShipping` parameter support to optionally download non-shipping assets from builds
- `Config.cs`: Added `SkipFiles` configuration to filter out unwanted files during release processing
- `DiagnosticsManifestGenerator.cs`: Updated manifest generation to include `IsAssetForPublicRelease` metadata for NuGet and tool bundle assets
<!-- GitOpsUserAgent=GitOps.Apps.Server.pullrequestcopilot -->
Prevent SOS from probing or loading dump-controlled DAC, cDAC, DBI, module, and PDB paths unless they resolve to absolute paths on the local machine.

The dump can provide paths recorded on the machine where it was created. Those paths must not cause SOS to access UNC shares, device paths, or other non-local locations on the analysis machine

- Add shared managed and native helpers for validating host-local absolute paths and extracting filenames with either path separator.
- Validate DAC, cDAC, and DBI paths before probing, signature verification, or library loading.
- Use only the filename from non-local dump paths when searching symbol stores.
- Continue allowing remote symbol stores as sources, but stage downloaded files in a validated local temporary directory before use.
- Prevent native PDB loading from following original or reference paths unless the associated module path is local.  
- Reject non-local `setclrpath` values before path normalization.
- Add regression coverage for UNC, device, mixed-separator, relative, runtime-directory, symbol-store, and adjacent-PDB paths
@hoyosjs
hoyosjs requested a review from a team as a code owner September 10, 2026 20:46
@hoyosjs
hoyosjs enabled auto-merge September 10, 2026 20:46
@hoyosjs

hoyosjs commented Sep 10, 2026

Copy link
Copy Markdown
Member Author

/azp run diagnostics-public-ci

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).

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