Skip to content

[clr-ios] Clear stale Apple mobile CoreCLR test exclusions#128408

Merged
kotlarmilos merged 7 commits into
dotnet:mainfrom
kotlarmilos:clr-ios/remove-activeissue-124344-bulk
Jun 2, 2026
Merged

[clr-ios] Clear stale Apple mobile CoreCLR test exclusions#128408
kotlarmilos merged 7 commits into
dotnet:mainfrom
kotlarmilos:clr-ios/remove-activeissue-124344-bulk

Conversation

@kotlarmilos
Copy link
Copy Markdown
Member

@kotlarmilos kotlarmilos commented May 20, 2026

Description

Reduces the Apple-mobile CoreCLR test exclusions tracked under #124344, based onruntime-extra-platforms (build 1429699):

Projects that now run on iossim / tvossim / maccatalyst CoreCLR:

  • System.Reflection.InvokeEmit.Tests
  • System.Reflection.InvokeInterpreted.Tests
  • System.Memory.Tests

Per-test [ActiveIssue] decorations removed:

  • DiagnosticMethodInfoTests, CharReaderTests, XmlSerializerTests,
  • XslCompiledTransform, XsltApiV2, InvokeWithRefLikeArgs

Workaround landed:

  • DCS_DeeplyLinkedData now runs on a 16 MB-stack worker thread, so the 513-deep linked chain no longer exhausts the iOS default ~512 KB main-thread stack. The underlying DataContractSerializer dynamic-method recursion depth is unchanged.

Contributes to #124344
Fixes #127463

Copilot AI review requested due to automatic review settings May 20, 2026 14:51
@kotlarmilos kotlarmilos changed the title [clr-ios] Close out #124344: clear stale Apple-mobile CoreCLR test exclusions [clr-ios] Clear stale Apple-mobile CoreCLR test exclusions May 20, 2026
@kotlarmilos kotlarmilos changed the title [clr-ios] Clear stale Apple-mobile CoreCLR test exclusions [clr-ios] Clear stale Apple mobile CoreCLR test exclusions May 20, 2026
@dotnet-policy-service
Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @JulieLeeMSFT, @BrzVlad, @janvorli, @kg
See info in area-owners.md if you want to be subscribed.

…ions

Removes 33 stale [ActiveIssue("...124344...")] decorations across 19
library test files (all sub-issues for interpreter codegen, dynamic-code
reporting, RefEmit/Moq, and virtual delegate dispatch are resolved
upstream). Drops the simulator-only ItemGroup in src/libraries/tests.proj
that excluded 10 test projects on iossimulator/tvossimulator/maccatalyst
CoreCLR under the now-closed dotnet#124044.

Fixes dotnet#127463 by running DCS_DeeplyLinkedData on a 16 MB-stack worker
thread (matching the precedent in System.Threading.Thread tests) so the
513-deep linked chain no longer exhausts the iOS default ~512 KB
main-thread stack; the underlying DataContractSerializer dynamic-method
recursion depth is unchanged.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@kotlarmilos kotlarmilos force-pushed the clr-ios/remove-activeissue-124344-bulk branch from 15d0d2f to e2f017e Compare May 20, 2026 14:57
Copy link
Copy Markdown
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 Apple-mobile/CoreCLR-specific test suppressions and exclusions that appear to be stale, with the goal of increasing Apple mobile CoreCLR test coverage. It also adjusts a deep-recursion DataContractSerializer test to run on a dedicated thread with an explicitly larger stack to avoid stack overflows on platforms with smaller default stacks.

Changes:

  • Remove stale [ActiveIssue("...124344...")] skips across multiple library test files to re-enable coverage on Apple mobile CoreCLR.
  • Remove a simulator-only ProjectExclusions ItemGroup from src/libraries/tests.proj that was previously excluding several test projects for iossimulator/tvossimulator/maccatalyst CoreCLR.
  • Update DataContractSerializerTests.DCS_DeeplyLinkedData to execute on a worker thread with an explicit 16MB stack and rethrow captured exceptions on the calling thread.
Show a summary per file
File Description
src/libraries/tests.proj Drops simulator-only Apple-mobile CoreCLR project exclusions tied to a now-stale issue.
src/libraries/System.Runtime/tests/System.Text.Encoding.Tests/Encoding/TranscodingStreamTests.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skips from RefEmit/Moq-gated tests.
src/libraries/System.Runtime/tests/System.Runtime.Tests/System/SingleTests.GenericMath.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip for native conversion coverage.
src/libraries/System.Runtime/tests/System.Runtime.Tests/System/DoubleTests.GenericMath.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip for native conversion coverage.
src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Runtime/CompilerServices/RuntimeFeatureTests.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skips around dynamic code feature probing.
src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Reflection/InvokeWithRefLikeArgs.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip from RefEmit/Moq-gated reflection test.
src/libraries/System.Runtime/tests/System.Runtime.Tests/System/ExceptionTests.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skips from stack-trace related tests.
src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializer.cs Runs deep linked serialization test on a larger-stack thread to improve Apple-mobile portability.
src/libraries/System.Runtime.Loader/tests/RefEmitLoadContext/RefEmitLoadContextTest.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip from RefEmit load context test.
src/libraries/System.Runtime.Loader/tests/DefaultContext/DefaultLoadContextTest.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip from default ALC binding test.
src/libraries/System.Reflection.MetadataLoadContext/tests/src/Tests/CustomAttributes/DllImportTests.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip from pseudo-custom-attribute tests.
src/libraries/System.Reflection.Metadata/tests/Metadata/Decoding/CustomAttributeDecoderTests.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip from reflection-based decoding test.
src/libraries/System.Private.Xml/tests/Xslt/XslCompiledTransformApi/XsltApiV2.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip on a RefEmit-gated XSLT API test base.
src/libraries/System.Private.Xml/tests/Xslt/XslCompiledTransformApi/XslCompiledTransform.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skips from XSLT document()/resolver theory cases.
src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip from collectible ALC XmlSerializer test.
src/libraries/System.Private.Xml/tests/Readers/CharCheckingReader/CharReaderTests.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip from XmlTests-driven theory runner.
src/libraries/System.Numerics.Tensors/tests/TensorPrimitives.Generic.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip from a TensorPrimitives span-destination theory.
src/libraries/System.Diagnostics.StackTrace/tests/DiagnosticMethodInfoTests.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip from delegate-based method info theory.
src/libraries/System.Diagnostics.FileVersionInfo/tests/System.Diagnostics.FileVersionInfo.Tests/FileVersionInfoTest.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip from managed-assembly version info test.
src/libraries/Microsoft.Extensions.DependencyModel/tests/CompositeResolverTests.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skips from Moq/RefEmit-gated resolver tests.
src/libraries/Microsoft.Extensions.DependencyModel/tests/CompilationLibraryTests.cs Removes stale Apple-mobile/CoreCLR [ActiveIssue] skip from Moq/RefEmit-gated resolver test.

Copilot's findings

  • Files reviewed: 21/21 changed files
  • Comments generated: 1

Comment thread src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializer.cs Outdated
… DCS_DeeplyLinkedData join

CI on PR dotnet#128408 (build 1428339) failed on ios-arm64 and maccatalyst-arm64 because
ExceptionTests.ThrowStatementDoesNotResetExceptionStackLineSameMethod still fails on
Apple-mobile CoreCLR (the underlying dotnet#124344 stack-line tracking bug is unfixed).
BrzVlad also flagged that ConvertToIntegerNativeTest on Double/Single is still broken
on Apple-mobile x64 CoreCLR simulators.

- Restore [ActiveIssue(dotnet#124344, IsAppleMobile, IsCoreCLR)] on
  ThrowStatementDoesNotResetExceptionStackLineSameMethod
- Restore [ActiveIssue(dotnet#124344, IsAppleMobile, IsX64Process, IsCoreCLR)] on
  ThrowStatementDoesNotResetExceptionStackLineOtherMethod
- Restore [ActiveIssue(dotnet#124344, IsAppleMobile, IsX64Process, IsCoreCLR)] on
  Double/Single GenericMath.ConvertToIntegerNativeTest
- DCS_DeeplyLinkedData: mark worker thread as background and use a bounded
  Thread.Join(TimeSpan.FromMinutes(2)) so a runtime-side deadlock in the
  serializer cannot hang the entire Helix work item indefinitely
  (addresses Copilot review comment).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@kotlarmilos
Copy link
Copy Markdown
Member Author

/azp run runtime-extra-platforms

@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

Remove [ActiveIssue(124344, IsAppleMobile && IsCoreCLR)] from
AssemblyLoadWithPublicKey and AssemblyGetForwardedTypesLoadFailure.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 29, 2026 15:16
@kotlarmilos
Copy link
Copy Markdown
Member Author

/azp run runtime-extra-platforms

@kotlarmilos kotlarmilos requested a review from vitek-karas May 29, 2026 15:17
@azure-pipelines
Copy link
Copy Markdown

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Copy Markdown
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's findings

  • Files reviewed: 7/7 changed files
  • Comments generated: 0 new

This was referenced May 29, 2026
@kotlarmilos kotlarmilos enabled auto-merge (squash) June 2, 2026 09:05
@kotlarmilos kotlarmilos merged commit 2e8b6f0 into dotnet:main Jun 2, 2026
95 checks passed
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.

[clr-ios] DataContractSerializerTests.DCS_DeeplyLinkedData crashes with StackOverflowException on CoreCLR

3 participants