Skip to content

Switch rebuild to .NET Core - #84977

Merged
jjonescz merged 6 commits into
dotnet:mainfrom
jjonescz:correctness-net-core
Aug 24, 2026
Merged

jjonescz merged 6 commits into
dotnet:mainfrom
jjonescz:correctness-net-core

Conversation

@jjonescz

@jjonescz jjonescz commented Aug 20, 2026 •

Copy link
Copy Markdown
Member

Includes a fix for this issue: on .NET Core, embedded texts don't roundtrip because their compression doesn't roundtrip (but it does on .NET Framework, hence this worked before).

Microsoft Reviewers: Open in CodeFlow

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 2 pipeline(s).
There may be pipelines that require an authorized user to comment /azp run to run.

@jjonescz jjonescz changed the title Use .NET Core in test-rebuild.ps1 Switch rebuild to .NET Core Aug 21, 2026
@jjonescz
jjonescz requested a balanced review from Copilot August 21, 2026 13:49
@jjonescz
jjonescz marked this pull request as ready for review August 21, 2026 13:50
@jjonescz
jjonescz requested review from a team as code owners August 21, 2026 13:50
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 2 pipeline(s).
There may be pipelines that require an authorized user to comment /azp run to run.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Switches rebuild validation to .NET Core while preserving deterministic embedded-source blobs across runtime-specific compression differences.

Changes:

  • Runs BuildValidator and bootstrap compilation on .NET Core.
  • Reuses original embedded-source blobs during rebuild.
  • Tests compressed StringText and LargeText round trips.

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.

Show a summary per file
File Description
CSharpRebuildTests.cs Adds compression round-trip coverage.
CompilationOptionsReader.cs Preserves original embedded-source blobs.
SourceText.cs Accepts precomputed embedded blobs.
LargeText.cs Propagates precomputed blobs for large sources.
test-rebuild.ps1 Runs rebuild validation with .NET Core.

Comment thread eng/test-rebuild.ps1
" --referencesPath `"$ArtifactsDir/bin`"" +
" --referencesPath `"$dotnetInstallDir/packs`"")
Exec-Command "$ArtifactsDir/bin/BuildValidator/$configuration/net472/BuildValidator.exe" $rebuildArgs
Exec-Command "$ArtifactsDir/bin/BuildValidator/$configuration/net10.0/BuildValidator.exe" $rebuildArgs

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

It's possible this means we can drop the multi-targeting on BuildValidator itself. I couldn't entirely tell if the tool was running net472 and we added the net10 just for the nullable annotations.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I can look into that in a follow up.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Copilot AI review requested due to automatic review settings August 21, 2026 19:30

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated no new comments.

@jjonescz jjonescz added this to the 18.11 milestone Aug 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants