Fix duplicate assembly name errors in crossgen outerloop merged runners#126173
Draft
Fix duplicate assembly name errors in crossgen outerloop merged runners#126173
Conversation
Contributor
|
Tagging subscribers to this area: @dotnet/runtime-infrastructure |
…ners Rename COOL/finally.csproj to COOL/COOL_finally.csproj and GCHandle/Target.csproj to GCHandle/GCHandle_Target.csproj to resolve assembly name collisions detected by mergedrunner.targets when priority-1 tests are included in crossgen outerloop builds. Agent-Logs-Url: https://github.com/dotnet/runtime/sessions/9c31d9a0-02f1-4ed7-99a9-29ac5c35734e Co-authored-by: jtschuster <36744439+jtschuster@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Fix project with identical assembly name issue in tests
Fix duplicate assembly name errors in crossgen outerloop merged runners
Mar 26, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Crossgen outerloop builds fail because two pairs of test
.csprojfiles share identical filenames within their merged runner scope:baseservices/exceptions/: bothCOOL/finally.csprojandsimple/finally.csproj→ assembly namefinallyGC/API/: bothGCHandle/Target.csprojandWeakReference/Target.csproj→ assembly nameTargetMergedTestRunner.targetsderives both the default assembly name and the extern alias from%(Filename), so identical filenames cause MSBuild conflict resolution to silently drop one reference.mergedrunner.targetscatches this and errors. Only surfaces in outerloop because both pairs areCLRTestPriority=1.Fix: Rename the conflicting
.csprojfiles to produce unique assembly names and aliases:COOL/finally.csproj→COOL/COOL_finally.csprojGCHandle/Target.csproj→GCHandle/GCHandle_Target.csproj<Compile Include>paths are relative to the project directory and remain valid.💡 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.