Skip to content

[manual] Merge release/8.0-staging into release/8.0#124304

Closed
jozkee wants to merge 21 commits intorelease/8.0from
release/8.0-staging
Closed

[manual] Merge release/8.0-staging into release/8.0#124304
jozkee wants to merge 21 commits intorelease/8.0from
release/8.0-staging

Conversation

@jozkee
Copy link
Member

@jozkee jozkee commented Feb 11, 2026

No description provided.

MihaZupan and others added 20 commits December 9, 2025 21:22
This pull request updates the following dependencies

[marker]: <> (Begin:e82a8e07-8d2b-4a71-e90f-08dbcfd41ade)
## From https://github.com/dotnet/icu
- **Subscription**:
[e82a8e07-8d2b-4a71-e90f-08dbcfd41ade](https://maestro.dot.net/subscriptions?search=e82a8e07-8d2b-4a71-e90f-08dbcfd41ade)
- **Build**:
[20251212.3](https://dev.azure.com/dnceng/internal/_build/results?buildId=2859935)
([294543](https://maestro.dot.net/channel/3073/github:dotnet:icu/build/294543))
- **Date Produced**: December 12, 2025 8:16:11 PM UTC
- **Commit**:
[4bfba9f36e8667005d7a40ade385daabce5fc7d5](dotnet/icu@4bfba9f)
- **Branch**:
[dotnet/release/8.0](https://github.com/dotnet/icu/tree/dotnet/release/8.0)

[DependencyUpdate]: <> (Begin)

- **Dependency Updates**:
  - From [8.0.0-rtm.25565.1 to 8.0.0-rtm.25612.3][1]
     - Microsoft.NETCore.Runtime.ICU.Transport

[1]: dotnet/icu@b565264...4bfba9f

[DependencyUpdate]: <> (End)


[marker]: <> (End:e82a8e07-8d2b-4a71-e90f-08dbcfd41ade)

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
…#122731)

This pull request updates the following dependencies

[marker]: <> (Begin:c0fef358-3848-4a30-a438-08dbcfd61a5a)
## From https://github.com/dotnet/hotreload-utils
- **Subscription**:
[c0fef358-3848-4a30-a438-08dbcfd61a5a](https://maestro.dot.net/subscriptions?search=c0fef358-3848-4a30-a438-08dbcfd61a5a)
- **Build**:
[20251225.3](https://dev.azure.com/dnceng/internal/_build/results?buildId=2867020)
([295569](https://maestro.dot.net/channel/3073/github:dotnet:hotreload-utils/build/295569))
- **Date Produced**: December 25, 2025 11:22:01 AM UTC
- **Commit**:
[e7e99065bbd4a7b911d5cfa56b23d873d9675355](dotnet/hotreload-utils@e7e9906)
- **Branch**:
[release/8.0](https://github.com/dotnet/hotreload-utils/tree/release/8.0)

[DependencyUpdate]: <> (Begin)

- **Dependency Updates**:
  - From [8.0.0-alpha.0.25574.3 to 8.0.0-alpha.0.25625.3][1]
     - Microsoft.DotNet.HotReload.Utils.Generator.BuildTool

[1]:
dotnet/hotreload-utils@cf2f6ad...e7e9906

[DependencyUpdate]: <> (End)


[marker]: <> (End:c0fef358-3848-4a30-a438-08dbcfd61a5a)

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
…122735)

This pull request updates the following dependencies

[marker]: <> (Begin:855db5a2-4d17-4346-a439-08dbcfd61a5a)
## From https://github.com/dotnet/runtime-assets
- **Subscription**:
[855db5a2-4d17-4346-a439-08dbcfd61a5a](https://maestro.dot.net/subscriptions?search=855db5a2-4d17-4346-a439-08dbcfd61a5a)
- **Build**:
[20251225.3](https://dev.azure.com/dnceng/internal/_build/results?buildId=2867033)
([295573](https://maestro.dot.net/channel/3073/github:dotnet:runtime-assets/build/295573))
- **Date Produced**: December 25, 2025 11:52:55 AM UTC
- **Commit**:
[98185bc6d28f41decb681555c343a62b3c6c165e](dotnet/runtime-assets@98185bc)
- **Branch**:
[release/8.0](https://github.com/dotnet/runtime-assets/tree/release/8.0)

[DependencyUpdate]: <> (Begin)

- **Dependency Updates**:
  - From [8.0.0-beta.25565.1 to 8.0.0-beta.25625.3][1]
     - Microsoft.DotNet.CilStrip.Sources
     - System.ComponentModel.TypeConverter.TestData
     - System.Data.Common.TestData
     - System.Drawing.Common.TestData
     - System.Formats.Tar.TestData
     - System.IO.Compression.TestData
     - System.IO.Packaging.TestData
     - System.Net.TestData
     - System.Private.Runtime.UnicodeData
     - System.Runtime.Numerics.TestData
     - System.Runtime.TimeZoneData
     - System.Security.Cryptography.X509Certificates.TestData
     - System.Text.RegularExpressions.TestData
     - System.Windows.Extensions.TestData

[1]:
dotnet/runtime-assets@40ac8f2...98185bc

[DependencyUpdate]: <> (End)


[marker]: <> (End:855db5a2-4d17-4346-a439-08dbcfd61a5a)

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
This pull request updates the following dependencies

[marker]: <> (Begin:e82a8e07-8d2b-4a71-e90f-08dbcfd41ade)
## From https://github.com/dotnet/icu
- **Subscription**:
[e82a8e07-8d2b-4a71-e90f-08dbcfd41ade](https://maestro.dot.net/subscriptions?search=e82a8e07-8d2b-4a71-e90f-08dbcfd41ade)
- **Build**:
[20251225.2](https://dev.azure.com/dnceng/internal/_build/results?buildId=2867037)
([295579](https://maestro.dot.net/channel/3073/github:dotnet:icu/build/295579))
- **Date Produced**: December 25, 2025 12:12:34 PM UTC
- **Commit**:
[7e1e01ce174204fc50e1b221c59cbd2c7a752441](dotnet/icu@7e1e01c)
- **Branch**:
[dotnet/release/8.0](https://github.com/dotnet/icu/tree/dotnet/release/8.0)

[DependencyUpdate]: <> (Begin)

- **Dependency Updates**:
  - From [8.0.0-rtm.25612.3 to 8.0.0-rtm.25625.2][1]
     - Microsoft.NETCore.Runtime.ICU.Transport

[1]: dotnet/icu@4bfba9f...7e1e01c

[DependencyUpdate]: <> (End)


[marker]: <> (End:e82a8e07-8d2b-4a71-e90f-08dbcfd41ade)

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
…#122654)

Fixes: #122653

`libopenssl3` is supported and installed by default on all of the
supported distro releases listed at
https://learn.microsoft.com/en-us/dotnet/core/install/linux-sles?tabs=dotnet8
and
https://learn.microsoft.com/en-us/dotnet/core/install/linux-opensuse?tabs=dotnet8

`libopenssl3` is also supported and installed by default on openSUSE
Tumbleweed release. This release does not have any other, older, version
of this library.
…ine YAML files (#122417)

Adds `fetchTags: false` to Azure Pipelines checkout steps to skip
fetching git tags during repository checkout, reducing network overhead
and improving checkout performance.

## Changes

- Updated 8 YAML files containing 10 total checkout steps in
`eng/pipelines/`:
  - Pipeline templates: `base-job.yml`, `xplat-job.yml`, `build-job.yml`
  - Stress test pipelines: `http.yml`, `ssl.yml` (2 occurrences each)
- Path evaluation and build jobs: `evaluate-paths-job.yml`,
`global-build-job.yml`
  - Official build jobs: `prepare-signed-artifacts.yml`

Note: Changes to `eng/common/` templates were excluded as those are
shared infrastructure files managed separately.

## Example

```yaml
- checkout: self
  clean: true
  fetchDepth: $(checkoutFetchDepth)
  fetchTags: false  # Added to skip tag fetching
```

<!-- START COPILOT CODING AGENT SUFFIX -->



<!-- START COPILOT ORIGINAL PROMPT -->



<details>

<summary>Original prompt</summary>

> Update the checkout step in the runtime CI yml to specify fetchTags:
false.


</details>



<!-- START COPILOT CODING AGENT TIPS -->
---

✨ Let Copilot coding agent [set things up for
you](https://github.com/dotnet/runtime/issues/new?title=✨+Set+up+Copilot+instructions&body=Configure%20instructions%20for%20this%20repository%20as%20documented%20in%20%5BBest%20practices%20for%20Copilot%20coding%20agent%20in%20your%20repository%5D%28https://gh.io/copilot-coding-agent-tips%29%2E%0A%0A%3COnboard%20this%20repo%3E&assignees=copilot)
— coding agent works faster and does higher quality work when set up for
your repo.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: elinor-fung <47805090+elinor-fung@users.noreply.github.com>
Co-authored-by: Elinor Fung <elfung@microsoft.com>
Backport of #121351 to
release/8.0-staging

## Customer Impact

Fixes a customer-reported crash in ILLink analyzer in a net8.0 project
that uses C# 14 extension members.
Customer issue: #120728

```
warning AD0001: Analyzer 'ILLink.RoslynAnalyzer.DynamicallyAccessedMembersAnalyzer' threw an exception of type 'System.InvalidCastException' with message 'Unable to cast object of type 'Microsoft.CodeAnalysis.CSharp.Symbols.PublicModel.NonErrorNamedTypeSymbol' to type 'Microsoft.CodeAnalysis.IMethodSymbol'.'.
```

## Regression

No - crash only happens for language features introduced after .NET 8
was released.

## Testing

Tested locally. We can't add automated testing because this repo doesn't
reference a new enough version of Roslyn to build tests with extension
members.

## Risk

Low, analyzer-only fix, with limited scope.

<hr />

Fixes #120728

main PR #121351

# Description

Backports fix for analyzer crash when encountering C# 14 extension
members. The crash occurred because the analyzer assumed
`parameter.ContainingSymbol` is always `IMethodSymbol`, which is false
for extension member parameters where the container is an extension
type.

**Core analyzer changes:**
- Remove `MethodParameterValue` constructors that cast
`parameter.ContainingSymbol` to `IMethodSymbol`
- Require explicit `IMethodSymbol` parameter in `ParameterProxy`
constructor
- Skip analysis for extension members in `GetParameterTargetValue`
(return `TopValue` when `ContainingSymbol` is not `IMethodSymbol`)
- Update `VisitInstanceReference` to use new `ParameterProxy`
constructor (without unrelated static method checks)

**Test infrastructure:**
- Add `Microsoft.Net.Compilers.Toolset` package reference for C# preview
features
- Add workaround in `ResultChecker.cs` to skip validation of
compiler-generated extension member types (`<>E__` prefix)
- Add `ExtensionsDataFlow.cs` test (enabled)
- Add `ExtensionMembersDataFlow.cs` test (disabled until C# 14
available)

**Note:** NativeAOT test changes from original PR excluded as
`ILCompiler.Trimming.Tests` doesn't exist in 8.0.

# Customer Impact

Without this fix, the Roslyn analyzer crashes when analyzing code that
uses or references C# 14 extension members, breaking the build or IDE
experience.

# Regression

No. This is a new feature compatibility fix for C# 14, not a regression
from 8.0 functionality.

# Testing

- All 60 DataFlow analyzer tests pass
- New `ExtensionsDataFlow` test validates fix for regular extension
methods
- ILLink.RoslynAnalyzer builds cleanly

# Risk

Low. Changes are surgical and isolated to extension member handling:
- Early-exit paths for extension members prevent processing unsupported
constructs
- Existing code paths unchanged (all parameters with method containers
work as before)
- Test coverage validates no regressions in standard scenarios

# Package authoring signed off?

N/A - Changes are internal to analyzer implementation, no public API
surface modified.

<!-- START COPILOT CODING AGENT SUFFIX -->



<details>

<summary>Original prompt</summary>

> Backport #121351 to
release/8.0-staging.


</details>



<!-- START COPILOT CODING AGENT TIPS -->
---

💬 We'd love your input! Share your thoughts on Copilot coding agent in
our [2 minute survey](https://gh.io/copilot-coding-agent-survey).

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: sbomer <787361+sbomer@users.noreply.github.com>
Co-authored-by: Sven Boemer <sbomer@gmail.com>
…120589) (#122423)

(cherry picked from commit eaafd7c)
(cherry picked from commit 1905046)

---------

Co-authored-by: Eric StJohn <ericstj@microsoft.com>
Co-authored-by: Matous Kozak <matouskozak@seznam.cz>
Co-authored-by: Steve Pfister <stpfiste@microsoft.com>
Co-authored-by: Filip Navara <filip.navara@gmail.com>
…ference-packages (#123243)

This pull request updates the following dependencies

[marker]: <> (Begin:1626bff2-6010-444e-f998-08dbcfd3e5b0)
## From https://github.com/dotnet/source-build-reference-packages
- **Subscription**:
[1626bff2-6010-444e-f998-08dbcfd3e5b0](https://maestro.dot.net/subscriptions?search=1626bff2-6010-444e-f998-08dbcfd3e5b0)
- **Build**:
[20251215.3](https://dev.azure.com/dnceng/internal/_build/results?buildId=2861480)
([294695](https://maestro.dot.net/channel/3885/github:dotnet:source-build-reference-packages/build/294695))
- **Date Produced**: December 15, 2025 3:29:24 PM UTC
- **Commit**:
[44b5b62182b48c34c4b6aef28943ec3f3e82f214](dotnet/source-build-reference-packages@44b5b62)
- **Branch**:
[release/8.0](https://github.com/dotnet/source-build-reference-packages/tree/release/8.0)

[DependencyUpdate]: <> (Begin)

- **Dependency Updates**:
  - From [8.0.0-alpha.1.25522.3 to 8.0.0-alpha.1.25615.3][1]
- Microsoft.SourceBuild.Intermediate.source-build-reference-packages

[1]:
dotnet/source-build-reference-packages@4491483...44b5b62

[DependencyUpdate]: <> (End)


[marker]: <> (End:1626bff2-6010-444e-f998-08dbcfd3e5b0)

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
… update. (#123547)

Backport of #120333 to release/8.0-staging

/cc @thaystg

## Customer Impact

- [X] Customer reported
- [ ] Found internally

This change was initially backported to .NET 10 and 9 back in October:

10 - #120334
9 - #120335

We didn't think we would need it in .NET 8, but that turned out to not
be the case.

This change fixes a problem with hot reload on blazor webassembly where
two updates are sent to the runtime at the same time and the runtime
asserts. This was previously an unsupported scenario, but recent up
stack changes altered the behavior. The plan is to fix both the up stack
behavior and in runtime as a defense in depth. The reasoning is that one
of the two updates sent to runtime contains no IL. We can look at that
one and safely ignore it.

## Regression

- [ ] Yes
- [X] No

Not in runtime at least. This was not a supported scenario, but was
trigged via a VS level change.

[If yes, specify when the regression was introduced. Provide the PR or
commit if known.]

## Testing

Manual before and after testing

[How was the fix verified? How was the issue missed previously? What
tests were added?]

## Risk

Low

[High/Medium/Low. Justify the indication by mentioning how risks were
measured and addressed.]

**IMPORTANT**: If this backport is for a servicing release, please
verify that:

- For .NET 8 and .NET 9: The PR target branch is `release/X.0-staging`,
not `release/X.0`.
- For .NET 10+: The PR target branch is `release/X.0` (no `-staging`
suffix).

## Package authoring no longer needed in .NET 9

**IMPORTANT**: Starting with .NET 9, you no longer need to edit a NuGet
package's csproj to enable building and bump the version.
Keep in mind that we still need package authoring in .NET 8 and older
versions.

---------

Co-authored-by: Thays Grazia <thtaglia@microsoft.com>
Co-authored-by: Thays Grazia <thaystg@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
All MacOS 13 queues no longer exist.
Update MsQuic version published with dotnet/runtime on Windows.

Backport of #121198

## Customer Impact

No

## Regression

No

## Testing

Automated tests

## Risk

Low, change only in patch version and we've been running with 2.4.16 in
main and .NET 10 for many months.
…#123618)

This pull request updates the following dependencies

[marker]: <> (Begin:c0fef358-3848-4a30-a438-08dbcfd61a5a)
## From https://github.com/dotnet/hotreload-utils
- **Subscription**:
[c0fef358-3848-4a30-a438-08dbcfd61a5a](https://maestro.dot.net/subscriptions?search=c0fef358-3848-4a30-a438-08dbcfd61a5a)
- **Build**:
[20260126.2](https://dev.azure.com/dnceng/internal/_build/results?buildId=2887725)
([298834](https://maestro.dot.net/channel/3073/github:dotnet:hotreload-utils/build/298834))
- **Date Produced**: January 26, 2026 9:10:24 AM UTC
- **Commit**:
[6074d7872b31463f8b6741589ba543c8d80ce42d](dotnet/hotreload-utils@6074d78)
- **Branch**:
[release/8.0](https://github.com/dotnet/hotreload-utils/tree/release/8.0)

[DependencyUpdate]: <> (Begin)

- **Dependency Updates**:
  - From [8.0.0-alpha.0.25625.3 to 8.0.0-alpha.0.26076.2][1]
     - Microsoft.DotNet.HotReload.Utils.Generator.BuildTool

[1]:
dotnet/hotreload-utils@e7e9906...6074d78

[DependencyUpdate]: <> (End)


[marker]: <> (End:c0fef358-3848-4a30-a438-08dbcfd61a5a)

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Steve Pfister <steveisok@users.noreply.github.com>
)

I detected changes in the release/8.0 branch which have not been merged
yet to release/8.0-staging. I'm a robot and am configured to help you
automatically keep release/8.0-staging up to date, so I've opened this
PR.

This PR merges commits made on release/8.0 by the following committers:

* github-actions[bot]
* mmitche
* dotnet-maestro[bot]

## Instructions for merging from UI

This PR will not be auto-merged. When pull request checks pass, complete
this PR by creating a merge commit, *not* a squash or rebase commit.

<img alt="merge button instructions"
src="https://i.imgur.com/GepcNJV.png" width="300" />

If this repo does not allow creating merge commits from the GitHub UI,
use command line instructions.

## Instructions for merging via command line

Run these commands to merge this pull request from the command line.

``` sh
git fetch
git checkout release/8.0
git pull --ff-only
git checkout release/8.0-staging
git pull --ff-only
git merge --no-ff release/8.0

# If there are merge conflicts, resolve them and then run git merge --continue to complete the merge
# Pushing the changes to the PR branch will re-trigger PR validation.
git push https://github.com/dotnet/runtime HEAD:merge/release/8.0-to-release/8.0-staging
```

<details>
<summary>or if you are using SSH</summary>

```
git push git@github.com:dotnet/runtime HEAD:merge/release/8.0-to-release/8.0-staging
```

</details>


After PR checks are complete push the branch
```
git push
```

## Instructions for resolving conflicts

:warning: If there are merge conflicts, you will need to resolve them
manually before merging. You can do this [using GitHub][resolve-github]
or using the [command line][resolve-cli].

[resolve-github]:
https://help.github.com/articles/resolving-a-merge-conflict-on-github/
[resolve-cli]:
https://help.github.com/articles/resolving-a-merge-conflict-using-the-command-line/

## Instructions for updating this pull request

Contributors to this repo have permission update this pull request by
pushing to the branch 'merge/release/8.0-to-release/8.0-staging'. This
can be done to resolve conflicts or make other changes to this pull
request before it is merged.
The provided examples assume that the remote is named 'origin'. If you
have a different remote name, please replace 'origin' with the name of
your remote.

```
git fetch
git checkout -b merge/release/8.0-to-release/8.0-staging origin/release/8.0-staging
git pull https://github.com/dotnet/runtime merge/release/8.0-to-release/8.0-staging
(make changes)
git commit -m "Updated PR with my changes"
git push https://github.com/dotnet/runtime HEAD:merge/release/8.0-to-release/8.0-staging
```

<details>
    <summary>or if you are using SSH</summary>

```
git fetch
git checkout -b merge/release/8.0-to-release/8.0-staging origin/release/8.0-staging
git pull git@github.com:dotnet/runtime merge/release/8.0-to-release/8.0-staging
(make changes)
git commit -m "Updated PR with my changes"
git push git@github.com:dotnet/runtime HEAD:merge/release/8.0-to-release/8.0-staging
```

</details>

Contact .NET Core Engineering (dotnet/dnceng) if you have questions or
issues.
Also, if this PR was generated incorrectly, help us fix it. See
https://github.com/dotnet/arcade/blob/main/.github/workflows/scripts/inter-branch-merge.ps1.
@jozkee jozkee requested a review from marek-safar as a code owner February 11, 2026 23:47
@jozkee jozkee added the NO-SQUASH The PR should not be squashed label Feb 11, 2026
@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 Feb 11, 2026
@dotnet-policy-service dotnet-policy-service bot added linkable-framework Issues associated with delivering a linker friendly framework labels Feb 11, 2026
@jozkee jozkee added area-codeflow for labeling automated codeflow and removed linkable-framework Issues associated with delivering a linker friendly framework needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners labels Feb 11, 2026
@dotnet-policy-service dotnet-policy-service bot added the linkable-framework Issues associated with delivering a linker friendly framework label Feb 11, 2026
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

Manual merge from release/8.0-staging into release/8.0, bringing in a broad set of servicing updates across tooling (ILLink analyzer/tests), Mono runtime, stress infrastructure, Docker tooling, and CI/pipelines.

Changes:

  • Add/extend ILLink Roslyn analyzer dataflow coverage (including an extension-method scenario) and adjust parameter handling in trim analysis.
  • Refactor HTTP/Ssl stress test Docker and local-run workflows to share common scripts, improve dump collection, and update related Dockerfiles/packages.
  • Update various pipeline checkout/pool settings and dependency versions as part of the staging-to-release merge.

Reviewed changes

Copilot reviewed 67 out of 76 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/ExtensionsDataFlow.cs Adds a new linker/analyzer test case covering extension-method dataflow.
src/tools/illink/test/ILLink.RoslynAnalyzer.Tests/DataFlowTests.cs Wires the new dataflow test into the analyzer test suite.
src/tools/illink/src/ILLink.RoslynAnalyzer/TrimAnalysis/TrimAnalysisVisitor.cs Updates trim analysis parameter/this handling using ParameterProxy.
src/tools/illink/src/ILLink.RoslynAnalyzer/TrimAnalysis/ParameterProxy.cs Adjusts ParameterProxy construction to take an explicit method symbol.
src/tools/illink/src/ILLink.RoslynAnalyzer/TrimAnalysis/MethodParameterValue.cs Removes older convenience constructors, focusing on ParameterProxy-based construction.
src/tests/issues.targets Adds Mono minijit x64 exclusions for Swift interop stress tests.
src/mono/mono/mini/decompose.c Replaces a hard-coded INT_MIN expression with INT_MIN.
src/mono/mono/mini/aot-compiler.c Updates icall signature symbol names (bool -> boolean).
src/mono/mono/metadata/icall.c Adjusts icall signature enum to remove bool aliasing.
src/mono/mono/metadata/icall-signatures.h Renames icall signature macros/docs from bool to boolean.
src/mono/mono/component/hot_reload.c Early-return on empty hot reload updates.
src/libraries/System.Net.Security/tests/StressTests/SslStress/windows.Dockerfile Updates Windows stress Dockerfile base image and entrypoint usage.
src/libraries/System.Net.Security/tests/StressTests/SslStress/run-docker-compose.sh Delegates to shared stress docker-compose runner.
src/libraries/System.Net.Security/tests/StressTests/SslStress/run-docker-compose.ps1 Delegates to shared stress docker-compose runner.
src/libraries/System.Net.Security/tests/StressTests/SslStress/entrypoint.sh New Linux entrypoint enabling dump collection and artifact copying on failure.
src/libraries/System.Net.Security/tests/StressTests/SslStress/entrypoint.ps1 New Windows entrypoint enabling dump collection and artifact copying on failure.
src/libraries/System.Net.Security/tests/StressTests/SslStress/docker-compose.yml Updates env/volume wiring for unified stress args + dump sharing.
src/libraries/System.Net.Security/tests/StressTests/SslStress/build-local.sh Delegates to shared local build helper.
src/libraries/System.Net.Security/tests/StressTests/SslStress/StressOperations.cs Adds client “connectivity preflight” retry logic and formatting tweaks.
src/libraries/System.Net.Security/tests/StressTests/SslStress/SslStress.csproj Updates System.CommandLine package and restores sources for stress build.
src/libraries/System.Net.Security/tests/StressTests/SslStress/SslClientBase.cs Tweaks lazy task startup and simplifies SSL stream establishment signature.
src/libraries/System.Net.Security/tests/StressTests/SslStress/Program.cs Updates CLI parsing to newer System.CommandLine APIs and adds client init step.
src/libraries/System.Net.Security/tests/StressTests/SslStress/Dockerfile Updates Linux stress Dockerfile base image and entrypoint usage.
src/libraries/System.Net.Security/tests/StressTests/SslStress/Directory.Build.targets Makes NETCoreAppMaximumVersion follow $(NetCoreAppCurrentVersion).
src/libraries/System.Net.Security/tests/StressTests/SslStress/Directory.Build.props Refactors RID/version props to align with repo Versions.props.
src/libraries/System.Net.Security/tests/StressTests/SslStress/Build-Local.ps1 Delegates to shared local build helper.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/windows.Dockerfile Updates Windows stress Dockerfile base image and entrypoint usage.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/run-docker-compose.sh Delegates to shared stress docker-compose runner.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/run-docker-compose.ps1 Delegates to shared stress docker-compose runner.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/entrypoint.sh New Linux entrypoint enabling dump collection + msquic/runtime copying on failure.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/entrypoint.ps1 New Windows entrypoint enabling dump collection and artifact copying on failure.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/docker-compose.yml Updates env/volume wiring for unified stress args + dump sharing.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/build-local.sh Delegates to shared local build helper.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/build-local.ps1 Delegates to shared local build helper.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/StressServer.cs Updates documentation link to learn.microsoft.com.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/StressClient.cs Enables multiple HTTP/2 connections on SocketsHttpHandler.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/Program.cs Updates CLI parsing, adds optional unobserved exception tracking/reporting.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/HttpStress.csproj Updates System.CommandLine package and restores sources for stress build.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/Dockerfile Updates Linux Dockerfile base image and builds msquic with ASAN-enabled Debug.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/Directory.Build.targets Makes NETCoreAppMaximumVersion follow $(NetCoreAppCurrentVersion).
src/libraries/System.Net.Http/tests/StressTests/HttpStress/Directory.Build.props Refactors RID/version props to align with repo Versions.props.
src/libraries/System.Net.Http/tests/StressTests/HttpStress/Configuration.cs Adds config switch for unobserved exception tracking.
src/libraries/Common/tests/System/Net/StressTests/run-docker-compose.sh New shared docker-compose runner used by stress suites.
src/libraries/Common/tests/System/Net/StressTests/run-docker-compose.ps1 New shared PowerShell docker-compose runner used by stress suites.
src/libraries/Common/tests/System/Net/StressTests/build-local.sh New shared local build helper used by stress suites.
src/libraries/Common/tests/System/Net/StressTests/build-local.ps1 New shared local build helper used by stress suites.
src/installer/pkg/sfx/installers/dotnet-runtime-deps/dotnet-runtime-deps-sles.12.proj Updates runtime deps to libopenssl3.
src/installer/pkg/sfx/installers/dotnet-runtime-deps/dotnet-runtime-deps-opensuse.42.proj Updates runtime deps to libopenssl3.
src/coreclr/vm/amd64/jithelpers_fastwritebarriers.S Updates labels/macros for write barrier helpers.
global.json Updates pinned MSBuild SDK versions.
eng/pipelines/official/jobs/prepare-signed-artifacts.yml Disables tag fetching on checkout.
eng/pipelines/libraries/stress/ssl.yml Extends schedule branches, unifies stress args, adds dump publishing on failure, disables tag fetching.
eng/pipelines/libraries/stress/http.yml Extends schedule branches, unifies stress args, disables tag fetching.
eng/pipelines/libraries/helix-queues-setup.yml Updates macOS/Apple device queues and whitespace cleanup.
eng/pipelines/libraries/base-job.yml Disables tag fetching on checkout.
eng/pipelines/installer/jobs/build-job.yml Disables tag fetching on checkout.
eng/pipelines/coreclr/templates/helix-queues-setup.yml Updates macOS/Apple device queues.
eng/pipelines/common/xplat-setup.yml Updates hosted macOS image selection and adds clarifying comments.
eng/pipelines/common/templates/runtimes/xplat-job.yml Disables tag fetching on checkout.
eng/pipelines/common/global-build-job.yml Disables tag fetching on checkout.
eng/pipelines/common/evaluate-paths-job.yml Disables tag fetching on checkout.
eng/docker/libraries-sdk.windows.Dockerfile Updates base image and SDK/ASP.NET Core handling for Windows libs SDK container.
eng/docker/libraries-sdk.linux.Dockerfile Updates base image and SDK installation to “latest daily”, cleans preinstalled SDK.
eng/docker/build-docker-sdk.sh Adds version derivation + passes VERSION build-arg.
eng/docker/build-docker-sdk.ps1 Adds version derivation + passes VERSION build-arg.
eng/common/tools.ps1 Removes deprecated -UseBasicParsing from Invoke-WebRequest calls.
eng/common/templates/steps/source-build.yml Updates internal runtime feed URL.
eng/common/templates-official/steps/source-build.yml Updates internal runtime feed URL.
eng/common/templates-official/post-build/setup-maestro-vars.yml Removes deprecated -UseBasicParsing from Invoke-WebRequest.
eng/common/templates-official/job/source-index-stage1.yml Clears the default condition (was main-only).
eng/common/templates-official/job/source-build.yml Updates internal build pool image selection.
eng/common/post-build/post-build-utils.ps1 Removes deprecated -UseBasicParsing from Invoke-WebRequest calls.
eng/common/post-build/nuget-verification.ps1 Removes deprecated -UseBasicParsing from Invoke-WebRequest.
eng/common/internal-feed-operations.ps1 Removes deprecated -UseBasicParsing from Invoke-WebRequest.
eng/Versions.props Updates multiple dependency versions and pins MSBuild-related versions explicitly.
eng/Version.Details.xml Updates dependency versions/SHAs for staging merge.

Comment on lines 11 to +22
environment:
- SSLSTRESS_ARGS=--mode client --server-endpoint server:5001 ${SSLSTRESS_CLIENT_ARGS}
- STRESS_ARGS=--mode client --server-endpoint server:5001 ${STRESS_CLIENT_ARGS}
server:
build:
context: ../../../../ # ~> src/libraries
dockerfile: ./System.Net.Security/tests/StressTests/SslStress/${DOCKERFILE:-Dockerfile}
volumes:
- "${DUMPS_SHARE}:${DUMPS_SHARE_MOUNT_ROOT}"
ports:
- "5001:5001"
environment:
- SSLSTRESS_ARGS=--mode server --server-endpoint 0.0.0.0:5001 ${SSLSTRESS_SERVER_ARGS}
- STRESS_ARGS=--mode server --server-endpoint 0.0.0.0:5001 ${STRESS_SERVER_ARGS}
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

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

The docker compose file doesn't set STRESS_ROLE for either service, but the entrypoint uses $STRESS_ROLE to create per-role dump directories. Set STRESS_ROLE=client / STRESS_ROLE=server (and pass DUMPS_SHARE_MOUNT_ROOT if needed) to avoid writing all dumps into the same directory.

Copilot uses AI. Check for mistakes.
Comment on lines +201 to +203
// Before starting the full-blown test, make sure can communicate with the server
// Needed for scenaria where we're deploying server & client in separate containers, simultaneously.
await TestConnection(maxRetries: 10);
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

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

Spelling: "scenaria" -> "scenarios".

Copilot uses AI. Check for mistakes.
Comment on lines 31 to 34
_config = config;
_aggregator = new StressResultAggregator(config.MaxConnections);
_clientTask = new Lazy<Task>(Task.Run(StartCore));
_clientTask = new Lazy<Task>(() => Task.Run(StartCore));
}
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

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

Changing _clientTask to a deferred Lazy<Task> means accessing _clientTask.Value elsewhere (e.g., StopAsync) will now start StartCore even if Start() was never called. Consider updating StopAsync to avoid forcing _clientTask.Value when IsValueCreated is false (or otherwise ensure StartCore only runs when explicitly started).

Copilot uses AI. Check for mistakes.
Comment on lines +48 to +52
cmd.Options.Add(new Option<int>("-n") { Description = "Max number of requests to make concurrently.", DefaultValueFactory = (_) => Environment.ProcessorCount });
cmd.Options.Add(new Option<string>("-serverUri") { Description = "Stress suite server uri.", DefaultValueFactory = (_) => "https://localhost:5001" });
cmd.Options.Add(new Option<RunMode>("-runMode") { Description = "Stress suite execution mode. Defaults to Both.", DefaultValueFactory = (_) => RunMode.both });
cmd.Options.Add(new Option<double>("-maxExecutionTime") { Description = "Maximum stress execution time, in minutes. Defaults to infinity." });
cmd.Options.Add(new Option<int>("-maxContentLength") { Description = "Max content length for request and response bodies.", DefaultValueFactory = (_) => 1000 });
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

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

-maxExecutionTime is declared as Option<double>, but later read as GetValue<double?> and treated as optional (infinity when null). With Option<double>, the default will be 0 when not provided, which can cause the stress run to exit immediately. Make this an Option<double?> (or provide a sentinel/default and handle it explicitly).

Copilot uses AI. Check for mistakes.
Comment on lines +19 to +22
repo_root=$(git -C "$projectdir" rev-parse --show-toplevel)
major_version=$(grep -oP '(?<=<MajorVersion>).*?(?=</MajorVersion>)' "$repo_root/eng/Versions.props")
minor_version=$(grep -oP '(?<=<MinorVersion>).*?(?=</MinorVersion>)' "$repo_root/eng/Versions.props")
version="$major_version.$minor_version"
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

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

These scripts extract the version using grep -P (-oP), which is not available with BSD grep (e.g., default macOS). Consider switching to a more portable approach (e.g., python/perl, xmllint, or sed/awk without PCRE) to keep the script usable on non-GNU environments.

Copilot uses AI. Check for mistakes.
Comment on lines +19 to +22
$REPO_ROOT_DIR = $(git -C "$PSScriptRoot" rev-parse --show-toplevel)
$COMPOSE_FILE = "$TestProjectDir/docker-compose.yml"
[xml]$xml = Get-Content (Join-Path $RepoRoot "eng\Versions.props")
$VERSION = "$($xml.Project.PropertyGroup.MajorVersion[0]).$($xml.Project.PropertyGroup.MinorVersion[0])"
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

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

$RepoRoot is not defined; this Join-Path will fail at runtime. Use $REPO_ROOT_DIR (or rename consistently) when loading eng/Versions.props.

Copilot uses AI. Check for mistakes.
Comment on lines +190 to +194
// Skip analysis for extension members (we have no way to represent a parameter on an extension type).
if (parameter.ContainingSymbol is not IMethodSymbol method)
return TopValue;

return parameter.Type.IsTypeInterestingForDataflow () ? new MethodParameterValue (new ParameterProxy (parameter, method)) : TopValue;
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

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

This comment doesn't match the code: the guard checks for parameters without an IMethodSymbol containing symbol, not specifically extension methods. Consider updating the comment to describe the actual condition (or adjust the condition if extension handling is intended).

Copilot uses AI. Check for mistakes.
Comment on lines +23 to +26
repo_root=$(git -C "$scriptroot" rev-parse --show-toplevel)
major_version=$(grep -oP '(?<=<MajorVersion>).*?(?=</MajorVersion>)' "$repo_root/eng/Versions.props")
minor_version=$(grep -oP '(?<=<MinorVersion>).*?(?=</MinorVersion>)' "$repo_root/eng/Versions.props")
version="$major_version.$minor_version"
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

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

These scripts extract the version using grep -P (-oP), which is not available with BSD grep (e.g., default macOS). Consider switching to a more portable approach (e.g., python/perl, xmllint, or sed/awk without PCRE) to keep the script usable on non-GNU environments.

Copilot uses AI. Check for mistakes.
Comment on lines +26 to +29
repo_root=$(git -C "$scriptroot" rev-parse --show-toplevel)
major_version=$(grep -oP '(?<=<MajorVersion>).*?(?=</MajorVersion>)' "$repo_root/eng/Versions.props")
minor_version=$(grep -oP '(?<=<MinorVersion>).*?(?=</MinorVersion>)' "$repo_root/eng/Versions.props")
version="$major_version.$minor_version"
Copy link

Copilot AI Feb 11, 2026

Choose a reason for hiding this comment

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

This script extracts the version using grep -P (-oP), which is not available with BSD grep (e.g., default macOS). Consider switching to a more portable approach (e.g., python/perl, xmllint, or sed/awk without PCRE) to keep the script usable on non-GNU environments.

Copilot uses AI. Check for mistakes.
)

I detected changes in the release/8.0 branch which have not been merged
yet to release/8.0-staging. I'm a robot and am configured to help you
automatically keep release/8.0-staging up to date, so I've opened this
PR.

This PR merges commits made on release/8.0 by the following committers:

* wfurt
* vseanreesermsft
* akoeplinger
* dotnet-maestro[bot]
* github-actions[bot]
* jeffhandley
* bartonjs
* jozkee

## Instructions for merging from UI

This PR will not be auto-merged. When pull request checks pass, complete
this PR by creating a merge commit, *not* a squash or rebase commit.

<img alt="merge button instructions"
src="https://i.imgur.com/GepcNJV.png" width="300" />

If this repo does not allow creating merge commits from the GitHub UI,
use command line instructions.

## Instructions for merging via command line

Run these commands to merge this pull request from the command line.

``` sh
git fetch
git checkout release/8.0
git pull --ff-only
git checkout release/8.0-staging
git pull --ff-only
git merge --no-ff release/8.0

# If there are merge conflicts, resolve them and then run git merge --continue to complete the merge
# Pushing the changes to the PR branch will re-trigger PR validation.
git push https://github.com/dotnet/runtime HEAD:merge/release/8.0-to-release/8.0-staging
```

<details>
<summary>or if you are using SSH</summary>

```
git push git@github.com:dotnet/runtime HEAD:merge/release/8.0-to-release/8.0-staging
```

</details>


After PR checks are complete push the branch
```
git push
```

## Instructions for resolving conflicts

:warning: If there are merge conflicts, you will need to resolve them
manually before merging. You can do this [using GitHub][resolve-github]
or using the [command line][resolve-cli].

[resolve-github]:
https://help.github.com/articles/resolving-a-merge-conflict-on-github/
[resolve-cli]:
https://help.github.com/articles/resolving-a-merge-conflict-using-the-command-line/

## Instructions for updating this pull request

Contributors to this repo have permission update this pull request by
pushing to the branch 'merge/release/8.0-to-release/8.0-staging'. This
can be done to resolve conflicts or make other changes to this pull
request before it is merged.
The provided examples assume that the remote is named 'origin'. If you
have a different remote name, please replace 'origin' with the name of
your remote.

```
git fetch
git checkout -b merge/release/8.0-to-release/8.0-staging origin/release/8.0-staging
git pull https://github.com/dotnet/runtime merge/release/8.0-to-release/8.0-staging
(make changes)
git commit -m "Updated PR with my changes"
git push https://github.com/dotnet/runtime HEAD:merge/release/8.0-to-release/8.0-staging
```

<details>
    <summary>or if you are using SSH</summary>

```
git fetch
git checkout -b merge/release/8.0-to-release/8.0-staging origin/release/8.0-staging
git pull git@github.com:dotnet/runtime merge/release/8.0-to-release/8.0-staging
(make changes)
git commit -m "Updated PR with my changes"
git push git@github.com:dotnet/runtime HEAD:merge/release/8.0-to-release/8.0-staging
```

</details>

Contact .NET Core Engineering (dotnet/dnceng) if you have questions or
issues.
Also, if this PR was generated incorrectly, help us fix it. See
https://github.com/dotnet/arcade/blob/main/.github/workflows/scripts/inter-branch-merge.ps1.

---------

Co-authored-by: Mirroring <dnceng-mirroring@microsoft.com>
Co-authored-by: vseanreesermsft <78103370+vseanreesermsft@users.noreply.github.com>
Co-authored-by: David Cantú <dacantu@microsoft.com>
Co-authored-by: Jeremy Barton <jbarton@microsoft.com>
Co-authored-by: dotnet-maestro[bot] <42748379+dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Co-authored-by: Jeff Handley <jeffhandley@users.noreply.github.com>
Co-authored-by: Sean Reeser <v-seanreeser@microsoft.com>
Co-authored-by: Miha Zupan <mihazupan.zupan1@gmail.com>
Co-authored-by: Nikola Milosavljevic <nikolam@microsoft.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: elinor-fung <47805090+elinor-fung@users.noreply.github.com>
Co-authored-by: Elinor Fung <elfung@microsoft.com>
Co-authored-by: sbomer <787361+sbomer@users.noreply.github.com>
Co-authored-by: Sven Boemer <sbomer@gmail.com>
Co-authored-by: Andy Gocke <angocke@microsoft.com>
Co-authored-by: Eric StJohn <ericstj@microsoft.com>
Co-authored-by: Matous Kozak <matouskozak@seznam.cz>
Co-authored-by: Steve Pfister <stpfiste@microsoft.com>
Co-authored-by: Filip Navara <filip.navara@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Juan Hoyos <19413848+hoyosjs@users.noreply.github.com>
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
Co-authored-by: Tomas Weinfurt <tweinfurt@yahoo.com>
@jozkee jozkee closed this Feb 12, 2026
@jozkee jozkee reopened this Feb 12, 2026
@jozkee jozkee closed this Feb 12, 2026
@jozkee
Copy link
Member Author

jozkee commented Feb 12, 2026

#124310 has disabled GeneratePackageOnBuild

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

Labels

area-codeflow for labeling automated codeflow linkable-framework Issues associated with delivering a linker friendly framework NO-SQUASH The PR should not be squashed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants