Skip to content

Enable R2R crossgen for DotnetTools .NET Core assemblies#53266

Merged
MichaelSimons merged 1 commit intodotnet:mainfrom
MichaelSimons:sdk-dedup-crossgen
Mar 5, 2026
Merged

Enable R2R crossgen for DotnetTools .NET Core assemblies#53266
MichaelSimons merged 1 commit intodotnet:mainfrom
MichaelSimons:sdk-dedup-crossgen

Conversation

@MichaelSimons
Copy link
Member

DotnetTools (dotnet-format, dotnet-watch, dotnet-user-jwts, etc.) were blanket-excluded from crossgen, causing their .NET Core assemblies to ship as pure IL. This prevented deduplication with the R2R copies of the same assemblies elsewhere in the SDK layout, resulting in ~20 MB of unnecessary duplicate content.

Narrow the exclusion to only the BuildHost-net472 subdirectories, which contain .NET Framework assemblies that cannot be crossgenned. The .NET Core assemblies in DotnetTools will now be R2R compiled, matching the rest of the SDK and enabling deduplication via hardlinks/symlinks.

Related to #52182

DotnetTools (dotnet-format, dotnet-watch, dotnet-user-jwts, etc.) were
blanket-excluded from crossgen, causing their .NET Core assemblies to
ship as pure IL. This prevented deduplication with the R2R copies of the
same assemblies elsewhere in the SDK layout, resulting in ~20 MB of
unnecessary duplicate content.

Narrow the exclusion to only the BuildHost-net472 subdirectories, which
contain .NET Framework assemblies that cannot be crossgenned. The .NET
Core assemblies in DotnetTools will now be R2R compiled, matching the
rest of the SDK and enabling deduplication via hardlinks/symlinks.
@MichaelSimons MichaelSimons marked this pull request as ready for review March 5, 2026 19:41
@MichaelSimons MichaelSimons requested review from a team, Copilot and dsplaisted March 5, 2026 19:41
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@MichaelSimons MichaelSimons merged commit 5f324eb into dotnet:main Mar 5, 2026
27 checks passed
@MichaelSimons MichaelSimons deleted the sdk-dedup-crossgen branch March 5, 2026 21:20
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.

3 participants