[infra][maccatalyst] Fix IO test compatibility issues occurring on MacCatalyst CI with macOS 14

Open
#114,403 2 comments 1 reaction 2 assignees View on GitHub

@kotlarmilos is already working on this.

Since Jul 11, 2025.

  • #131206 by @copilot-swe-agent — closed without merging

Assessment

This issue has not been assessed yet.

Description

area-System.IO disabled-test os-maccatalyst

During migration from macOS 12 -> macOS 14 queue in our testing infrastructure (https://github.com/dotnet/runtime/pull/113313), we encountered several issues related to permissions when running MacCatalyst test apps.

Permission pop-up

When trying to run System.IO.IsolatedStorage tests, pop-up with appears

"System.IO.IsolatedStorage.Tests.app” would like to access files in your Documents folder.

requiring user to manually allow access and probably causing timeouts experienced on the CI. The timeouts are coming inside the RemoveTests.cs. A workaround could be to allow the test app in System Settings -> Privacy & Security -> Full Disk Access but that would have to be done on every test machine.

How to reproduce:
  1. ./build.sh mono+libs -os maccatalyst -arch arm64 -c Debug
  2. ./dotnet.sh build src/libraries/System.IO.IsolatedStorage/tests/System.IO.IsolatedStorage.Tests.csproj /p:RuntimeFlavor=Mono /t:Test /p:TargetOS=maccatalyst /p:TargetArchitecture=arm64 /p:Configuration=Debug /p:RunAOTCompilation=true /p:MonoForceInterpreter=true /p:UseNativeAotCoreLib=false
ReadExecute file access triggering SIGKILL

When trying to run System.IO.MemoryMappedFiles tests, the process is killed with
EXC_BAD_ACCESS (SIGKILL (Code Signature Invalid)). We should investigate if the test app signature is valid.

How to reproduce:
  1. ./build.sh mono+libs -os maccatalyst -arch arm64 -c Debug
  2. ./dotnet.sh build src/libraries/System.IO.MemoryMappedFiles/tests/System.IO.MemoryMappedFiles.Tests.csproj /p:RuntimeFlavor=Mono /t:Test /p:TargetOS=maccatalyst /p:TargetArchitecture=arm64 /p:Configuration=Debug /p:RunAOTCompilation=true /p:MonoForceInterpreter=true /p:UseNativeAotCoreLib=false
Dominant language
C#
Stars
18.3k
Forks
5.6k
PR merge metrics
PR metrics pending

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from dotnet/runtime

All issues in dotnet/runtime

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.