Skip to content

Skip unloadable-type tests under ReadyToRun; update ActiveIssue to #124031#124619

Merged
jtschuster merged 2 commits intomainfrom
copilot/update-active-issue-attribute
Feb 19, 2026
Merged

Skip unloadable-type tests under ReadyToRun; update ActiveIssue to #124031#124619
jtschuster merged 2 commits intomainfrom
copilot/update-active-issue-attribute

Conversation

Copy link
Contributor

Copilot AI commented Feb 19, 2026

R2R pre-compiled native code roots types loaded from a collectible AssemblyLoadContext (via method tables, fixups, etc.), preventing GC from collecting the ALC within the test's 10-iteration limit. TypeDescriptor_WithCustomProvider_UnloadsUnloadableTypes was missing the skip guard that its sibling already had; both tests also pointed to the now-closed issue #95928.

Changes

Both attributes now consistently reference #124031:

[ActiveIssue("https://github.com/dotnet/runtime/issues/124031", typeof(PlatformDetection), nameof(PlatformDetection.IsReadyToRunCompiled))]
Original prompt

The test System.ComponentModel.Tests.TypeDescriptorTests.TypeDescriptor_WithCustomProvider_UnloadsUnloadableTypes fails when run with crossgen/ReadyToRun. This is because R2R pre-compiled native code creates additional strong references (through method tables, fixups, etc.) that root types loaded from a collectible AssemblyLoadContext, preventing the GC from collecting the ALC within the test's 10 GC iterations.

The sibling test TypeDescriptor_WithDefaultProvider_UnloadsUnloadableTypes already has an [ActiveIssue] attribute to skip it under R2R, but it points to the now-closed issue #95928. Both tests should be updated to point to the open tracking issue #124031.

Changes needed in src/libraries/System.ComponentModel.TypeConverter/tests/TypeDescriptorTests.cs:

  1. On TypeDescriptor_WithCustomProvider_UnloadsUnloadableTypes (around line 1627), add the following attribute:

    [ActiveIssue("https://github.com/dotnet/runtime/issues/124031", typeof(PlatformDetection), nameof(PlatformDetection.IsReadyToRunCompiled))]
  2. On TypeDescriptor_WithDefaultProvider_UnloadsUnloadableTypes (around line 1584), update the existing [ActiveIssue] attribute from:

    [ActiveIssue("https://github.com/dotnet/runtime/issues/95928", typeof(PlatformDetection), nameof(PlatformDetection.IsReadyToRunCompiled))]

    to:

    [ActiveIssue("https://github.com/dotnet/runtime/issues/124031", typeof(PlatformDetection), nameof(PlatformDetection.IsReadyToRunCompiled))]

For reference, the build logs showing the failure are at:

This pull request was created from Copilot chat.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

…4031

Co-authored-by: jtschuster <36744439+jtschuster@users.noreply.github.com>
Copilot AI changed the title [WIP] Update active issue attribute for TypeDescriptor tests Skip unloadable-type tests under ReadyToRun; update ActiveIssue to #124031 Feb 19, 2026
Copilot AI requested a review from jtschuster February 19, 2026 20:20
@jtschuster jtschuster marked this pull request as ready for review February 19, 2026 21:07
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 addresses test failures in System.ComponentModel.TypeConverter tests when running with ReadyToRun (R2R) compilation. R2R pre-compiled native code creates additional strong references that prevent garbage collection of collectible AssemblyLoadContext instances within the test's iteration limit, causing these unloadable-type tests to fail.

Changes:

  • Added [ActiveIssue] attribute to skip TypeDescriptor_WithCustomProvider_UnloadsUnloadableTypes under ReadyToRun
  • Updated existing [ActiveIssue] reference from closed issue #95928 to open tracking issue #124031 on TypeDescriptor_WithDefaultProvider_UnloadsUnloadableTypes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Enable Remaining Libraries Tests in TestReadyToRun Pipeline

3 participants

Comments