Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Merged
merged 23 commits into from
Sep 10, 2024

Conversation

carlossanlop
Copy link
Member

Merge commit!

github-actions bot and others added 22 commits August 13, 2024 10:37
…on macOS (dotnet#105117)

* Disable W^X on x64 in rosetta based container

The docker on macOS Arm64 uses Rosetta to run x64 containers. That
has an effect on the double mapping. The Rosetta is unable to detect
when an already executed code page is modified. So we cannot use double
mapping on those containers. To detect that case, this change adds check
that verifies that the double mapping works even when the code is
modified.

Close dotnet#102226

* Rework based on PR feedback

* Check only for Rosetta

* Enable the rosetta check for x86 too

This will help WINE running 32 bit code under rosetta emulation on
macOS.

---------

Co-authored-by: Jan Vorlicek <janvorli@microsoft.com>
…ence-packages build 20240815.1 (dotnet#106626)

Microsoft.SourceBuild.Intermediate.source-build-reference-packages
 From Version 8.0.0-alpha.1.24372.3 -> To Version 8.0.0-alpha.1.24415.1

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
* Initial fix for the type not being read bug.

* Addressed initial feedback to fully fix the bug.

---------

Co-authored-by: Ivan Diaz <ivdiazsa@microsoft.com>
…xception handler (dotnet#106221)

* Remove UnhandledException handler from MemoryCache to avoid deadlock.

* Update Sys.RT.Caching csproj for servicing build.
* Switch build x64 image to Azure Linux 3.0

* Add remaining (existing) images

* Remove accidental 9.0

* Fix BundleLegacy.TestNetCoreApp3xApp

Stop relying on ICU - this is irrelevant to what the test targets.

---------

Co-authored-by: Elinor Fung <elfung@microsoft.com>
… to a keyed parameter (dotnet#106877)

* Do not allow a non-keyed service to be injected into a keyed parameter

* Fix test issue on NetFx

* Add feature switch for compat: Microsoft.Extensions.DependencyInjection.AllowNonKeyedServiceInject

* Enable servicing Microsoft.Extensions.DependencyInjection

---------

Co-authored-by: Steve Harter <steveharter@users.noreply.github.com>
Co-authored-by: Eric StJohn <ericstj@microsoft.com>
…iptor.ImplementationInstance\Type\Factory if a keyed service (dotnet#106841)

* Return null instead of throwing in ServiceDescriptor.ImplementationInstance\Type\Factory if a keyed service

* Enable servicing Microsoft.Extensions.DependencyInjection.Abstractions

---------

Co-authored-by: Eric StJohn <ericstj@microsoft.com>
…ease/8.0-staging

[automated] Merge branch 'release/8.0' => 'release/8.0-staging'
…ild 20240903.2 (dotnet#107297)

Microsoft.DotNet.HotReload.Utils.Generator.BuildTool
 From Version 8.0.0-alpha.0.24402.1 -> To Version 8.0.0-alpha.0.24453.2

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
* Disable MD5 tests on Azure Linux

* Handle disabled algorithms on Azure Linux

* Fix MD5 failures on Azure Linux in System.Security.Cryptography.Pkcs

* Change BuildWithFactoryReadDirect to not use RSA+MD5

* Add Azure 3.0 helix test

---------

Co-authored-by: Rich Lander <rlander@microsoft.com>
Starting on macOS Sequoia, at least in beta, SecKeychainitemCopyKeychain no longer returns errSecNoSuchKeychain for ephemeral keys.
Instead, it returns errSecInvalidItemRef.

This adds the error code in the handling logic for when we need to add an ephemeral key to the target keychain.

Co-authored-by: Kevin Jones <kevin@vcsjones.com>
dotnet#107161)

* Avoid package dependencies on libraries in the shared framework (dotnet#106172)

* Avoid package dependencies on libraries in the shared framework

We can avoid these dependencies since we can count on the library being
part of the shared framework.  Fewer dependencies means less packages
downloaded, less for customers to service, less copied into the output
directory when serviced.

* Add warning code.

* Address feedback

* Add an option to enable servicing for transitive dependencies

* Enable all packages that removed dependencies

* Add additional packages required for up-stack servicing

* Permit settting ServiceTransitiveDependencies in projects as well
…struct (dotnet#107198)

* Fix error when returning zero sized struct

* Add test

* Fix x64 errors

---------

Co-authored-by: Jeremi Kurdek <jkurdek@gmail.com>
The recently added AVX support in hardware exception handling path on macOS x64
has introduced a problem when running under Rosetta.
When we extract the floating point part of the context of the failing thread,
the thread can have AVX or AVX512 active, or none of these. The code accidentally
leaves CONTEXT_XSTATE set on the context even when no AVX was enabled on the thread.

Rosetta doesn't support AVX, so having CONTEXT_XSTATE set in the context flags
can lead to later call to RtlRestoreContext attempting to set ymm registers using
instructions that Rosetta cannot emulate and the app crashes due to that.

This doesn't happen in .NET 9, since we always clear the CONTEXT_XSTATE before
exception handling stack unwinding. But in .NET 8, this causes stack overflow
under Rosetta, since the attemt to execute the ymm instruction triggers the
hardware exception handling again and again.

Co-authored-by: Jan Vorlicek <janvorli@microsoft.com>
Co-authored-by: EgorBo <egorbo@gmail.com>
@carlossanlop carlossanlop added Servicing-approved Approved for servicing release area-codeflow for labeling automated codeflow labels Sep 9, 2024
@carlossanlop carlossanlop added this to the 8.0.10 milestone Sep 9, 2024
@carlossanlop carlossanlop requested review from a team September 9, 2024 22:27
@carlossanlop carlossanlop self-assigned this Sep 9, 2024
@carlossanlop
Copy link
Member Author

/ba-g The only expected failure is the one below, since we reset System.Diagnostics.EventLog to false in the last commit in this PR so we don't build it again, but it has not yet been released to nuget (latest is 8.0.0).

artifacts\bin\testPackages\projects\Microsoft.Extensions.Hosting.Systemd\project.csproj(0,0): error NU1103: Unable to find a stable package System.Diagnostics.EventLog with version (>= 8.0.1) - Found 1458 version(s) in dotnet8 [ Nearest version: 8.0.0-rtm.23523.3 ] - Found 73 version(s) in dotnet-public [ Nearest version: 9.0.0-preview.1.24080.9 ] - Found 1 version(s) in dotnet-eng [ Nearest version: 5.0.0-alpha.1.19618.1 ] - Found 0 version(s) in D:\a\_work\1\s\artifacts\packages\Debug\ - Found 0 version(s) in darc-pub-dotnet-emsdk-2674f58-1 - Found 0 version(s) in darc-pub-dotnet-emsdk-2674f58-2 - Found 0 version(s) in darc-pub-dotnet-emsdk-2674f58-3 - Found 0 version(s) in darc-pub-dotnet-emsdk-2674f58-4 - Found 0 version(s) in darc-pub-dotnet-emsdk-2674f58 - Found 0 version(s) in darc-pub-dotnet-emsdk-d667257 - Found 0 version(s) in dotnet-libraries-transport - Found 0 version(s) in dotnet-libraries - Found 0 version(s) in dotnet-tools - Fo

@carlossanlop carlossanlop merged commit cb77171 into dotnet:release/8.0 Sep 10, 2024
153 of 189 checks passed
@carlossanlop carlossanlop deleted the release/8.0-staging branch September 10, 2024 02:50
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 Servicing-approved Approved for servicing release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants