[manual] Merge release/8.0-staging into release/8.0#124304
[manual] Merge release/8.0-staging into release/8.0#124304jozkee wants to merge 21 commits intorelease/8.0from
Conversation
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.
There was a problem hiding this comment.
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. |
| 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} |
There was a problem hiding this comment.
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.
| // 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); |
There was a problem hiding this comment.
Spelling: "scenaria" -> "scenarios".
| _config = config; | ||
| _aggregator = new StressResultAggregator(config.MaxConnections); | ||
| _clientTask = new Lazy<Task>(Task.Run(StartCore)); | ||
| _clientTask = new Lazy<Task>(() => Task.Run(StartCore)); | ||
| } |
There was a problem hiding this comment.
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).
| 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 }); |
There was a problem hiding this comment.
-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).
| 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" |
There was a problem hiding this comment.
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.
| $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])" |
There was a problem hiding this comment.
$RepoRoot is not defined; this Join-Path will fail at runtime. Use $REPO_ROOT_DIR (or rename consistently) when loading eng/Versions.props.
| // 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; |
There was a problem hiding this comment.
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).
| 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" |
There was a problem hiding this comment.
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.
| 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" |
There was a problem hiding this comment.
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.
) 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>
|
#124310 has disabled GeneratePackageOnBuild |
No description provided.