Skip to content

Conversation

@agocke
Copy link
Member

@agocke agocke commented Jan 21, 2026

No description provided.

@github-actions github-actions bot added the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label Jan 21, 2026
@agocke agocke marked this pull request as ready for review January 22, 2026 18:50
Copilot AI review requested due to automatic review settings January 22, 2026 18:50
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 pull request enables the runtime async preview feature for all .NET 11+ library test projects, with appropriate exclusions for scenarios where it's not supported.

Changes:

  • Add conditional PropertyGroup to enable runtime async feature for compatible test projects
  • Remove trailing whitespace on line 92

Co-authored-by: Jackson Schuster <36744439+jtschuster@users.noreply.github.com>
@agocke agocke enabled auto-merge (squash) January 23, 2026 23:24
@agocke
Copy link
Member Author

agocke commented Jan 23, 2026

@jtschuster Thanks! Anything else?

Copy link
Member

@jtschuster jtschuster left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but not sure if there are any other outerloop tests we should run before merging?

Co-authored-by: Jackson Schuster <36744439+jtschuster@users.noreply.github.com>
@agocke
Copy link
Member Author

agocke commented Jan 24, 2026

/ba-g tests already ran

and '$(TestNativeAot)' != 'true'
and '$(TestReadyToRun)' != 'true'
and '$(UseNativeAOTRuntime)' != 'true'
and '$(TargetOS)' != 'browser'
Copy link
Member

@jkotas jkotas Jan 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This effectively makes all libraries test projects target platform specific. Libraries test projects are target platform neutral by default. When they are target platform specific, it needs to be explicitly declared in the project file.

For example, System.Net.WebSockets.Client.Tests is conditionally compiled based on TargetOS==browser https://github.com/dotnet/runtime/blob/main/src/libraries/System.Net.WebSockets.Client/tests/System.Net.WebSockets.Client.Tests.csproj#L91 and thus it requires browser-specific TFM https://github.com/dotnet/runtime/blob/main/src/libraries/System.Net.WebSockets.Client/tests/System.Net.WebSockets.Client.Tests.csproj#L7

This change is going to break inner loop experiences that depend on incremental builds at minimum.

cc @dotnet/area-infrastructure-libraries

Copy link
Member

@pavelsavara pavelsavara Jan 26, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you mean that if I built the System.Net.WebSockets.Client.Tests with /p:RuntimeFlavor=CoreCLR it would not run with Mono VM in the same artifacts folder ? For me that never worked because Mono and CoreCLR don't coexist well in artifacts already. I never explored the details of why. I have separate checkout directories (most of the time).

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was thinking about switching between platforms, like CoreCLR on windows and CoreCLR on browser. Switching platforms like this used to work fine, with CoreCLR at least.

Mono and CoreCLR don't coexist well in artifacts already

Right, switching between Mono and CoreCLR does not work with incremental builds.

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

Labels

needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants