Skip to content

Remove mcs stuff from linker test framework.#125223

Merged
sbomer merged 1 commit intodotnet:mainfrom
Unity-Technologies:linker-remove-mcs-stuff
Mar 5, 2026
Merged

Remove mcs stuff from linker test framework.#125223
sbomer merged 1 commit intodotnet:mainfrom
Unity-Technologies:linker-remove-mcs-stuff

Conversation

@mrvoorhe
Copy link
Contributor

@mrvoorhe mrvoorhe commented Mar 5, 2026

Unity was the last reason to keep this around. We used mcs as a source of different IL for testing code we have that makes changes to method bodies. The time has come that the added test coverage we use it for isn't worth the maintenance costs anymore. I'm going to remove mcs from our test setup which means there's no reason to keep this code around anymore.

@mrvoorhe mrvoorhe requested a review from sbomer as a code owner March 5, 2026 15:05
Copilot AI review requested due to automatic review settings March 5, 2026 15:05
@mrvoorhe
Copy link
Contributor Author

mrvoorhe commented Mar 5, 2026

@sbomer please take a look

@github-actions github-actions bot added the area-Tools-ILLink .NET linker development as well as trimming analyzers label Mar 5, 2026
@dotnet-policy-service dotnet-policy-service bot added linkable-framework Issues associated with delivering a linker friendly framework community-contribution Indicates that the PR has been added by a community member labels Mar 5, 2026
@dotnet-policy-service
Copy link
Contributor

Tagging subscribers to this area: @agocke, @dotnet/illink
See info in area-owners.md if you want to be subscribed.

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.

Pull request overview

This PR removes the remaining mcs-specific support and related test artifacts from the ILLink linker test framework, reflecting the decision that maintaining mcs-based coverage is no longer worthwhile.

Changes:

  • Removes the mcs compilation path (and related external-compiler plumbing) from the test case compiler.
  • Deletes the mcs-specific test case and its dependency/resource files.
  • Updates test project content and generated analyzer test suite to drop the removed mcs test entry.

Reviewed changes

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

Show a summary per file
File Description
src/tools/illink/test/Mono.Linker.Tests/TestCasesRunner/TestCaseCompiler.cs Removes mcs/external compiler support and narrows accepted CompilerToUse values.
src/tools/illink/test/Mono.Linker.Tests.Cases/TestFramework/Dependencies/CanCompileTestCaseWithMcs_Lib.cs Deletes mcs-only supporting source file.
src/tools/illink/test/Mono.Linker.Tests.Cases/TestFramework/Dependencies/CanCompileTestCaseWithMcs.txt Deletes mcs-only resource file.
src/tools/illink/test/Mono.Linker.Tests.Cases/TestFramework/CanCompileTestCaseWithMcs.cs Deletes mcs-only test case.
src/tools/illink/test/Mono.Linker.Tests.Cases/Mono.Linker.Tests.Cases.csproj Removes content inclusion for deleted mcs resource.
src/tools/illink/test/ILLink.RoslynAnalyzer.Tests/generated/ILLink.RoslynAnalyzer.Tests.Generator/ILLink.RoslynAnalyzer.Tests.TestCaseGenerator/TestFrameworkTests.g.cs Removes the generated test method for the deleted mcs test case.

Unity was the last reason to keep this around.  We used mcs as a source of different IL for testing code we have that makes changes to method bodies.  The time has come that the added test coverage we use it for isn't worth the maintenance costs anymore.  I'm going to remove mcs from our test setup which means there's no reason to keep this code around anymore.
@sbomer
Copy link
Member

sbomer commented Mar 5, 2026

/ba-g "Timeouts and unrelated failure (#125051)"

@sbomer sbomer merged commit 41437b2 into dotnet:main Mar 5, 2026
81 of 87 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area-Tools-ILLink .NET linker development as well as trimming analyzers community-contribution Indicates that the PR has been added by a community member linkable-framework Issues associated with delivering a linker friendly framework

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants