diff --git a/.azure/pipelines/ci-public.yml b/.azure/pipelines/ci-public.yml
index 9bcb4699e93a..3d823e234dc6 100644
--- a/.azure/pipelines/ci-public.yml
+++ b/.azure/pipelines/ci-public.yml
@@ -446,7 +446,7 @@ stages:
jobName: Linux_musl_x64_build
jobDisplayName: "Build: Linux Musl x64"
agentOs: Linux
- container: mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.19-WithNode
+ container: mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-build-amd64
buildArgs:
--arch x64
--os-name linux-musl
@@ -480,7 +480,7 @@ stages:
jobDisplayName: "Build: Linux Musl ARM"
agentOs: Linux
useHostedUbuntu: false
- container: mcr.microsoft.com/dotnet-buildtools/prereqs:cbl-mariner-2.0-cross-arm-alpine
+ container: mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-build-amd64
buildArgs:
--arch arm
--os-name linux-musl
@@ -513,7 +513,7 @@ stages:
jobDisplayName: "Build: Linux Musl ARM64"
agentOs: Linux
useHostedUbuntu: false
- container: mcr.microsoft.com/dotnet-buildtools/prereqs:cbl-mariner-2.0-cross-arm64-alpine
+ container: mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-build-amd64
buildArgs:
--arch arm64
--os-name linux-musl
@@ -645,7 +645,7 @@ stages:
parameters:
platform:
name: 'Managed'
- container: 'mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream8'
+ container: 'mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-build-amd64'
buildScript: './eng/build.sh --publish --no-build-repo-tasks $(_PublishArgs) $(_InternalRuntimeDownloadArgs)'
skipPublishValidation: true
jobProperties:
diff --git a/.azure/pipelines/ci.yml b/.azure/pipelines/ci.yml
index d9f2afd0e9b6..08eab9052b12 100644
--- a/.azure/pipelines/ci.yml
+++ b/.azure/pipelines/ci.yml
@@ -97,14 +97,14 @@ variables:
- name: WindowsArm64InstallersLogArgs
value: /bl:artifacts/log/Release/Build.Installers.Arm64.binlog
- name: _InternalRuntimeDownloadArgs
- value: -RuntimeSourceFeed https://dotnetbuilds.blob.core.windows.net/internal
+ value: -RuntimeSourceFeed https://ci.dot.net/internal
-RuntimeSourceFeedKey $(dotnetbuilds-internal-container-read-token-base64)
/p:DotNetAssetRootAccessTokenSuffix='$(dotnetbuilds-internal-container-read-token-base64)'
# The code signing doesn't use the aspnet build scripts, so the msbuild parameters have to be passed directly. This
# is awkward but necessary because the eng/common/ build scripts don't add the msbuild properties automatically.
- name: _InternalRuntimeDownloadCodeSignArgs
value: $(_InternalRuntimeDownloadArgs)
- /p:DotNetRuntimeSourceFeed=https://dotnetbuilds.blob.core.windows.net/internal
+ /p:DotNetRuntimeSourceFeed=https://ci.dot.net/internal
/p:DotNetRuntimeSourceFeedKey=$(dotnetbuilds-internal-container-read-token-base64)
- group: DotNet-HelixApi-Access
- ${{ if notin(variables['Build.Reason'], 'PullRequest') }}:
@@ -149,12 +149,8 @@ extends:
tsa:
enabled: true
containers:
- alpine319WithNode:
- image: mcr.microsoft.com/dotnet-buildtools/prereqs:alpine-3.19-WithNode
- mariner20CrossArmAlpine:
- image: mcr.microsoft.com/dotnet-buildtools/prereqs:cbl-mariner-2.0-cross-arm-alpine
- mariner20CrossArm64Alpine:
- image: mcr.microsoft.com/dotnet-buildtools/prereqs:cbl-mariner-2.0-cross-arm64-alpine
+ azureLinux30Net9BuildAmd64:
+ image: mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-net9.0-build-amd64
stages:
- stage: build
displayName: Build
@@ -515,7 +511,7 @@ extends:
jobName: Linux_musl_x64_build
jobDisplayName: "Build: Linux Musl x64"
agentOs: Linux
- container: alpine319WithNode
+ container: azureLinux30Net9BuildAmd64
buildArgs:
--arch x64
--os-name linux-musl
@@ -549,7 +545,7 @@ extends:
jobDisplayName: "Build: Linux Musl ARM"
agentOs: Linux
useHostedUbuntu: false
- container: mariner20CrossArmAlpine
+ container: azureLinux30Net9BuildAmd64
buildArgs:
--arch arm
--os-name linux-musl
@@ -582,7 +578,7 @@ extends:
jobDisplayName: "Build: Linux Musl ARM64"
agentOs: Linux
useHostedUbuntu: false
- container: mariner20CrossArm64Alpine
+ container: azureLinux30Net9BuildAmd64
buildArgs:
--arch arm64
--os-name linux-musl
diff --git a/NuGet.config b/NuGet.config
index e1e647dd1771..f8b0b0f8f7db 100644
--- a/NuGet.config
+++ b/NuGet.config
@@ -4,10 +4,10 @@
-
+
-
+
@@ -30,10 +30,10 @@
-
+
-
+
diff --git a/eng/Baseline.Designer.props b/eng/Baseline.Designer.props
index dfd9247704ed..038221fceef4 100644
--- a/eng/Baseline.Designer.props
+++ b/eng/Baseline.Designer.props
@@ -2,117 +2,117 @@
$(MSBuildAllProjects);$(MSBuildThisFileFullPath)
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
@@ -120,279 +120,279 @@
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
-
-
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
-
+
+
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
-
-
+
+
- 9.0.1
+ 9.0.2
-
-
-
-
-
+
+
+
+
+
- 9.0.1
+ 9.0.2
-
-
-
-
-
+
+
+
+
+
- 9.0.1
+ 9.0.2
-
-
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
-
-
-
-
-
+
+
+
+
+
+
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
-
+
-
-
-
+
+
+
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
+
-
+
-
+
- 9.0.1
+ 9.0.2
-
-
-
-
-
-
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
-
+
+
- 9.0.1
+ 9.0.2
-
-
+
+
-
-
+
+
-
-
+
+
- 9.0.1
+ 9.0.2
-
+
-
+
-
+
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
@@ -401,83 +401,83 @@
- 9.0.1
+ 9.0.2
-
-
+
+
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
-
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
- 9.0.1
+ 9.0.2
-
-
+
+
-
+
-
-
+
+
- 9.0.1
+ 9.0.2
-
-
+
+
- 9.0.1
+ 9.0.2
-
-
+
+
- 9.0.1
+ 9.0.2
@@ -493,510 +493,510 @@
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
-
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
-
+
+
-
-
+
+
-
-
+
+
- 9.0.1
+ 9.0.2
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
- 9.0.1
+ 9.0.2
-
-
+
+
-
+
-
-
+
+
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
-
+
-
+
-
+
- 9.0.1
+ 9.0.2
-
+
-
+
-
+
- 9.0.1
+ 9.0.2
-
+
-
+
-
+
- 9.0.1
+ 9.0.2
-
-
-
-
+
+
+
+
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
-
+
+
-
-
+
+
-
-
+
+
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
-
-
+
+
-
-
+
+
-
-
+
+
- 9.0.1
+ 9.0.2
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
+
-
+
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
- 9.0.1
+ 9.0.2
- 9.0.1
+ 9.0.2
-
+
- 9.0.1
+ 9.0.2
-
+
\ No newline at end of file
diff --git a/eng/Baseline.xml b/eng/Baseline.xml
index b081a19bb966..d15a11b1f2fd 100644
--- a/eng/Baseline.xml
+++ b/eng/Baseline.xml
@@ -4,110 +4,110 @@ This file contains a list of all the packages and their versions which were rele
Update this list when preparing for a new patch.
-->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index 206dc89ef3ad..ccae9cf9ba4d 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -9,325 +9,325 @@
-->
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 7bb42e8dd6df45b8570b7cb7ccdcfd5fb6460b0e
+ 68c7e19496df80819410fc6de1682a194aad33d3
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 7bb42e8dd6df45b8570b7cb7ccdcfd5fb6460b0e
+ 68c7e19496df80819410fc6de1682a194aad33d3
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 7bb42e8dd6df45b8570b7cb7ccdcfd5fb6460b0e
+ 68c7e19496df80819410fc6de1682a194aad33d3
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 7bb42e8dd6df45b8570b7cb7ccdcfd5fb6460b0e
+ 68c7e19496df80819410fc6de1682a194aad33d3
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 7bb42e8dd6df45b8570b7cb7ccdcfd5fb6460b0e
+ 68c7e19496df80819410fc6de1682a194aad33d3
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 7bb42e8dd6df45b8570b7cb7ccdcfd5fb6460b0e
+ 68c7e19496df80819410fc6de1682a194aad33d3
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 7bb42e8dd6df45b8570b7cb7ccdcfd5fb6460b0e
+ 68c7e19496df80819410fc6de1682a194aad33d3
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 7bb42e8dd6df45b8570b7cb7ccdcfd5fb6460b0e
+ 68c7e19496df80819410fc6de1682a194aad33d3
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
https://github.com/dotnet/xdt
@@ -367,9 +367,9 @@
bc1c3011064a493b0ca527df6fb7215e2e5cfa96
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
@@ -380,47 +380,47 @@
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 80aa709f5d919c6814726788dc6dabe23e79e672
+ 831d23e56149cd59c40fc00c7feb7c5334bd19c4
https://github.com/dotnet/winforms
9b822fd70005bf5632d12fe76811b97b3dd044e4
-
+
https://github.com/dotnet/arcade
- 8cc6ecd76c24ef6665579a5c5e386a211a1e7c54
+ bac7e1caea791275b7c3ccb4cb75fd6a04a26618
-
+
https://github.com/dotnet/arcade
- 8cc6ecd76c24ef6665579a5c5e386a211a1e7c54
+ bac7e1caea791275b7c3ccb4cb75fd6a04a26618
-
+
https://github.com/dotnet/arcade
- 8cc6ecd76c24ef6665579a5c5e386a211a1e7c54
+ bac7e1caea791275b7c3ccb4cb75fd6a04a26618
-
+
https://github.com/dotnet/arcade
- 8cc6ecd76c24ef6665579a5c5e386a211a1e7c54
+ bac7e1caea791275b7c3ccb4cb75fd6a04a26618
-
+
https://github.com/dotnet/arcade
- 8cc6ecd76c24ef6665579a5c5e386a211a1e7c54
+ bac7e1caea791275b7c3ccb4cb75fd6a04a26618
-
+
https://github.com/dotnet/arcade
- 8cc6ecd76c24ef6665579a5c5e386a211a1e7c54
+ bac7e1caea791275b7c3ccb4cb75fd6a04a26618
-
+
https://github.com/dotnet/extensions
- 309f2b7f73a28ffd75dac15434d160e5bd765384
+ ca2fe808b3d6c55817467f46ca58657456b4a928
-
+
https://github.com/dotnet/extensions
- 309f2b7f73a28ffd75dac15434d160e5bd765384
+ ca2fe808b3d6c55817467f46ca58657456b4a928
https://github.com/nuget/nuget.client
diff --git a/eng/Versions.props b/eng/Versions.props
index 796893bce1e8..8f45c2dcc337 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -8,7 +8,7 @@
9
0
- 2
+ 3
true
@@ -19,8 +19,8 @@
-->
true
release
- rtm
- RTM
+ servicing
+ Servicing
true
false
$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)
@@ -68,92 +68,92 @@
-->
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2-servicing.25066.10
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2-servicing.25066.10
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2-servicing.25066.10
- 9.0.2-servicing.25066.10
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3-servicing.25111.13
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3-servicing.25111.13
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3-servicing.25111.13
+ 9.0.3-servicing.25111.13
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
- 9.0.2-servicing.25066.10
- 9.0.2
+ 9.0.3-servicing.25111.13
+ 9.0.3
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
- 9.1.0-preview.1.25060.3
- 9.1.0-preview.1.25060.3
+ 9.3.0-preview.1.25107.9
+ 9.3.0-preview.1.25107.9
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
- 9.0.2
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
+ 9.0.3
4.11.0-3.24554.2
4.11.0-3.24554.2
@@ -166,10 +166,10 @@
6.2.4
6.2.4
- 9.0.0-beta.25058.5
- 9.0.0-beta.25058.5
- 9.0.0-beta.25058.5
- 9.0.0-beta.25058.5
+ 9.0.0-beta.25077.4
+ 9.0.0-beta.25077.4
+ 9.0.0-beta.25077.4
+ 9.0.0-beta.25077.4
9.0.0-alpha.1.24575.1
diff --git a/eng/common/core-templates/steps/source-build.yml b/eng/common/core-templates/steps/source-build.yml
index 2915d29bb7f6..29515fc23f64 100644
--- a/eng/common/core-templates/steps/source-build.yml
+++ b/eng/common/core-templates/steps/source-build.yml
@@ -37,7 +37,7 @@ steps:
# in the default public locations.
internalRuntimeDownloadArgs=
if [ '$(dotnetbuilds-internal-container-read-token-base64)' != '$''(dotnetbuilds-internal-container-read-token-base64)' ]; then
- internalRuntimeDownloadArgs='/p:DotNetRuntimeSourceFeed=https://dotnetbuilds.blob.core.windows.net/internal /p:DotNetRuntimeSourceFeedKey=$(dotnetbuilds-internal-container-read-token-base64) --runtimesourcefeed https://dotnetbuilds.blob.core.windows.net/internal --runtimesourcefeedkey $(dotnetbuilds-internal-container-read-token-base64)'
+ internalRuntimeDownloadArgs='/p:DotNetRuntimeSourceFeed=https://ci.dot.net/internal /p:DotNetRuntimeSourceFeedKey=$(dotnetbuilds-internal-container-read-token-base64) --runtimesourcefeed https://ci.dot.net/internal --runtimesourcefeedkey $(dotnetbuilds-internal-container-read-token-base64)'
fi
buildConfig=Release
diff --git a/eng/common/internal/Tools.csproj b/eng/common/internal/Tools.csproj
index 32f79dfb3402..feaa6d20812d 100644
--- a/eng/common/internal/Tools.csproj
+++ b/eng/common/internal/Tools.csproj
@@ -15,16 +15,6 @@
-
-
-
- https://devdiv.pkgs.visualstudio.com/_packaging/dotnet-core-internal-tooling/nuget/v3/index.json;
-
-
- $(RestoreSources);
- https://devdiv.pkgs.visualstudio.com/_packaging/VS/nuget/v3/index.json;
-
-
diff --git a/eng/common/template-guidance.md b/eng/common/template-guidance.md
index 5ef6c30ba924..98bbc1ded0ba 100644
--- a/eng/common/template-guidance.md
+++ b/eng/common/template-guidance.md
@@ -57,7 +57,7 @@ extends:
Note: Multiple outputs are ONLY applicable to 1ES PT publishing (only usable when referencing `templates-official`).
-# Development notes
+## Development notes
**Folder / file structure**
diff --git a/eng/helix/helix.proj b/eng/helix/helix.proj
index f31e201d516e..a772993a3592 100644
--- a/eng/helix/helix.proj
+++ b/eng/helix/helix.proj
@@ -58,12 +58,12 @@
runtime
-
$([System.Environment]::GetEnvironmentVariable('DotNetBuildsInternalReadSasToken'))
-
$([System.Environment]::GetEnvironmentVariable('DotNetBuildsInternalReadSasToken'))
diff --git a/eng/scripts/InstallJdk.ps1 b/eng/scripts/InstallJdk.ps1
index 0872f241a982..1ba711b5eaa4 100644
--- a/eng/scripts/InstallJdk.ps1
+++ b/eng/scripts/InstallJdk.ps1
@@ -22,8 +22,7 @@ $installDir = "$repoRoot\.tools\jdk\win-x64\"
$javacExe = "$installDir\bin\javac.exe"
$tempDir = "$repoRoot\obj"
if (-not $JdkVersion) {
- $globalJson = Get-Content "$repoRoot\global.json" | ConvertFrom-Json
- $JdkVersion = $globalJson.'native-tools'.jdk
+ $JdkVersion = "11.0.24"
}
if (Test-Path $javacExe) {
diff --git a/eng/targets/Helix.Common.props b/eng/targets/Helix.Common.props
index ea3801bb8226..8a0fdf3481d3 100644
--- a/eng/targets/Helix.Common.props
+++ b/eng/targets/Helix.Common.props
@@ -29,7 +29,7 @@
-
+
diff --git a/global.json b/global.json
index f0a083e23ce2..97b2439c9343 100644
--- a/global.json
+++ b/global.json
@@ -1,9 +1,9 @@
{
"sdk": {
- "version": "9.0.101"
+ "version": "9.0.103"
},
"tools": {
- "dotnet": "9.0.101",
+ "dotnet": "9.0.103",
"runtimes": {
"dotnet/x86": [
"$(MicrosoftNETCoreBrowserDebugHostTransportVersion)"
@@ -24,10 +24,10 @@
"xcopy-msbuild": "17.1.0"
},
"native-tools": {
- "jdk": "11.0.24"
+ "jdk": "latest"
},
"msbuild-sdks": {
- "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25058.5",
- "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25058.5"
+ "Microsoft.DotNet.Arcade.Sdk": "9.0.0-beta.25077.4",
+ "Microsoft.DotNet.Helix.Sdk": "9.0.0-beta.25077.4"
}
}
diff --git a/src/Caching/StackExchangeRedis/src/RedisCache.cs b/src/Caching/StackExchangeRedis/src/RedisCache.cs
index debec0237040..4ecbf3628222 100644
--- a/src/Caching/StackExchangeRedis/src/RedisCache.cs
+++ b/src/Caching/StackExchangeRedis/src/RedisCache.cs
@@ -53,6 +53,8 @@ private static RedisValue[] GetHashFields(bool getData) => getData
private long _firstErrorTimeTicks;
private long _previousErrorTimeTicks;
+ internal bool HybridCacheActive { get; set; }
+
// StackExchange.Redis will also be trying to reconnect internally,
// so limit how often we recreate the ConnectionMultiplexer instance
// in an attempt to reconnect
@@ -375,6 +377,11 @@ private void TryAddSuffix(IConnectionMultiplexer connection)
{
connection.AddLibraryNameSuffix("aspnet");
connection.AddLibraryNameSuffix("DC");
+
+ if (HybridCacheActive)
+ {
+ connection.AddLibraryNameSuffix("HC");
+ }
}
catch (Exception ex)
{
diff --git a/src/Caching/StackExchangeRedis/src/RedisCacheImpl.cs b/src/Caching/StackExchangeRedis/src/RedisCacheImpl.cs
index dab5bfc8655b..67d262002eb3 100644
--- a/src/Caching/StackExchangeRedis/src/RedisCacheImpl.cs
+++ b/src/Caching/StackExchangeRedis/src/RedisCacheImpl.cs
@@ -1,6 +1,9 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
+using System;
+using Microsoft.Extensions.Caching.Hybrid;
+using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
@@ -8,13 +11,19 @@ namespace Microsoft.Extensions.Caching.StackExchangeRedis;
internal sealed class RedisCacheImpl : RedisCache
{
- public RedisCacheImpl(IOptions optionsAccessor, ILogger logger)
+ public RedisCacheImpl(IOptions optionsAccessor, ILogger logger, IServiceProvider services)
: base(optionsAccessor, logger)
{
+ HybridCacheActive = IsHybridCacheDefined(services);
}
- public RedisCacheImpl(IOptions optionsAccessor)
+ public RedisCacheImpl(IOptions optionsAccessor, IServiceProvider services)
: base(optionsAccessor)
{
+ HybridCacheActive = IsHybridCacheDefined(services);
}
+
+ // HybridCache optionally uses IDistributedCache; if we're here, then *we are* the DC
+ private static bool IsHybridCacheDefined(IServiceProvider services)
+ => services.GetService() is not null;
}
diff --git a/src/Caching/StackExchangeRedis/test/CacheServiceExtensionsTests.cs b/src/Caching/StackExchangeRedis/test/CacheServiceExtensionsTests.cs
index 29a49a7cec70..1d8ce4c3fd40 100644
--- a/src/Caching/StackExchangeRedis/test/CacheServiceExtensionsTests.cs
+++ b/src/Caching/StackExchangeRedis/test/CacheServiceExtensionsTests.cs
@@ -1,9 +1,15 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
+using System;
+using System.Collections.Generic;
using System.Linq;
+using System.Threading;
+using System.Threading.Tasks;
using Microsoft.Extensions.Caching.Distributed;
+using Microsoft.Extensions.Caching.Hybrid;
using Microsoft.Extensions.DependencyInjection;
+using Microsoft.Extensions.DependencyInjection.Extensions;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Logging.Abstractions;
using Moq;
@@ -121,4 +127,41 @@ public void AddStackExchangeRedisCache_UsesLoggerFactoryAlreadyRegisteredWithSer
loggerFactory.Verify();
}
+
+ [Theory]
+ [InlineData(true)]
+ [InlineData(false)]
+ public void AddStackExchangeRedisCache_HybridCacheDetected(bool hybridCacheActive)
+ {
+ // Arrange
+ var services = new ServiceCollection();
+
+ services.AddLogging();
+
+ // Act
+ services.AddStackExchangeRedisCache(options => { });
+ if (hybridCacheActive)
+ {
+ services.TryAddSingleton(new DummyHybridCache());
+ }
+
+ using var provider = services.BuildServiceProvider();
+ var cache = Assert.IsAssignableFrom(provider.GetRequiredService());
+ Assert.Equal(hybridCacheActive, cache.HybridCacheActive);
+ }
+
+ sealed class DummyHybridCache : HybridCache
+ {
+ public override ValueTask GetOrCreateAsync(string key, TState state, Func> factory, HybridCacheEntryOptions options = null, IEnumerable tags = null, CancellationToken cancellationToken = default)
+ => throw new NotSupportedException();
+
+ public override ValueTask RemoveAsync(string key, CancellationToken cancellationToken = default)
+ => throw new NotSupportedException();
+
+ public override ValueTask RemoveByTagAsync(string tag, CancellationToken cancellationToken = default)
+ => throw new NotSupportedException();
+
+ public override ValueTask SetAsync(string key, T value, HybridCacheEntryOptions options = null, IEnumerable tags = null, CancellationToken cancellationToken = default)
+ => throw new NotSupportedException();
+ }
}
diff --git a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj
index 48725d72139d..5f488e03a398 100644
--- a/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj
+++ b/src/Framework/App.Runtime/src/Microsoft.AspNetCore.App.Runtime.csproj
@@ -100,12 +100,12 @@ This package is an internal implementation of the .NET Core SDK and is not meant
PkgMicrosoft_NETCore_App_Runtime_$(RuntimeIdentifier.Replace('.', '_'))
$(TargetOsName)
- linux
+ linux
$(TargetRuntimeIdentifier.Substring(0,$(TargetRuntimeIdentifier.IndexOf('-'))))
x64
$(BuildArchitecture)
@@ -560,9 +560,9 @@ This package is an internal implementation of the .NET Core SDK and is not meant
-
-
-
+
+
$(DotnetRuntimeSourceFeedKey)
diff --git a/src/Identity/Core/src/SignInManager.cs b/src/Identity/Core/src/SignInManager.cs
index b5659b329854..66f06c4d3465 100644
--- a/src/Identity/Core/src/SignInManager.cs
+++ b/src/Identity/Core/src/SignInManager.cs
@@ -162,8 +162,21 @@ public virtual async Task CanSignInAsync(TUser user)
public virtual async Task RefreshSignInAsync(TUser user)
{
var auth = await Context.AuthenticateAsync(AuthenticationScheme);
- IList claims = Array.Empty();
+ if (!auth.Succeeded || auth.Principal?.Identity?.IsAuthenticated != true)
+ {
+ Logger.LogError("RefreshSignInAsync prevented because the user is not currently authenticated. Use SignInAsync instead for initial sign in.");
+ return;
+ }
+ var authenticatedUserId = UserManager.GetUserId(auth.Principal);
+ var newUserId = await UserManager.GetUserIdAsync(user);
+ if (authenticatedUserId == null || authenticatedUserId != newUserId)
+ {
+ Logger.LogError("RefreshSignInAsync prevented because currently authenticated user has a different UserId. Use SignInAsync instead to change users.");
+ return;
+ }
+
+ IList claims = Array.Empty();
var authenticationMethod = auth?.Principal?.FindFirst(ClaimTypes.AuthenticationMethod);
var amr = auth?.Principal?.FindFirst("amr");
diff --git a/src/Identity/test/Identity.Test/SignInManagerTest.cs b/src/Identity/test/Identity.Test/SignInManagerTest.cs
index d1072676138a..73fe6d6be218 100644
--- a/src/Identity/test/Identity.Test/SignInManagerTest.cs
+++ b/src/Identity/test/Identity.Test/SignInManagerTest.cs
@@ -592,38 +592,38 @@ public async Task CanExternalSignIn(bool isPersistent, bool supportsLockout)
[InlineData(true, false)]
[InlineData(false, true)]
[InlineData(false, false)]
- public async Task CanResignIn(
- // Suppress warning that says theory methods should use all of their parameters.
- // See comments below about why this isn't used.
-#pragma warning disable xUnit1026
- bool isPersistent,
-#pragma warning restore xUnit1026
- bool externalLogin)
+ public async Task CanResignIn(bool isPersistent, bool externalLogin)
{
// Setup
var user = new PocoUser { UserName = "Foo" };
var context = new DefaultHttpContext();
var auth = MockAuth(context);
var loginProvider = "loginprovider";
- var id = new ClaimsIdentity();
+ var id = new ClaimsIdentity("authscheme");
if (externalLogin)
{
id.AddClaim(new Claim(ClaimTypes.AuthenticationMethod, loginProvider));
}
- // REVIEW: auth changes we lost the ability to mock is persistent
- //var properties = new AuthenticationProperties { IsPersistent = isPersistent };
- var authResult = AuthenticateResult.NoResult();
+
+ var claimsPrincipal = new ClaimsPrincipal(id);
+ var properties = new AuthenticationProperties { IsPersistent = isPersistent };
+ var authResult = AuthenticateResult.Success(new AuthenticationTicket(claimsPrincipal, properties, "authscheme"));
auth.Setup(a => a.AuthenticateAsync(context, IdentityConstants.ApplicationScheme))
.Returns(Task.FromResult(authResult)).Verifiable();
var manager = SetupUserManager(user);
+ manager.Setup(m => m.GetUserId(claimsPrincipal)).Returns(user.Id.ToString());
var signInManager = new Mock>(manager.Object,
new HttpContextAccessor { HttpContext = context },
new Mock>().Object,
null, null, new Mock().Object, null)
{ CallBase = true };
- //signInManager.Setup(s => s.SignInAsync(user, It.Is(p => p.IsPersistent == isPersistent),
- //externalLogin? loginProvider : null)).Returns(Task.FromResult(0)).Verifiable();
- signInManager.Setup(s => s.SignInWithClaimsAsync(user, It.IsAny(), It.IsAny>())).Returns(Task.FromResult(0)).Verifiable();
+
+ signInManager.Setup(s => s.SignInWithClaimsAsync(user,
+ It.Is(properties => properties.IsPersistent == isPersistent),
+ It.Is>(claims => !externalLogin ||
+ claims.Any(claim => claim.Type == ClaimTypes.AuthenticationMethod && claim.Value == loginProvider))))
+ .Returns(Task.FromResult(0)).Verifiable();
+
signInManager.Object.Context = context;
// Act
@@ -634,6 +634,58 @@ public async Task CanResignIn(
signInManager.Verify();
}
+ [Fact]
+ public async Task ResignInNoOpsAndLogsErrorIfNotAuthenticated()
+ {
+ var user = new PocoUser { UserName = "Foo" };
+ var context = new DefaultHttpContext();
+ var auth = MockAuth(context);
+ var manager = SetupUserManager(user);
+ var logger = new TestLogger>();
+ var signInManager = new Mock>(manager.Object,
+ new HttpContextAccessor { HttpContext = context },
+ new Mock>().Object,
+ null, logger, new Mock().Object, null)
+ { CallBase = true };
+ auth.Setup(a => a.AuthenticateAsync(context, IdentityConstants.ApplicationScheme))
+ .Returns(Task.FromResult(AuthenticateResult.NoResult())).Verifiable();
+
+ await signInManager.Object.RefreshSignInAsync(user);
+
+ Assert.Contains("RefreshSignInAsync prevented because the user is not currently authenticated. Use SignInAsync instead for initial sign in.", logger.LogMessages);
+ auth.Verify();
+ signInManager.Verify(s => s.SignInWithClaimsAsync(It.IsAny(), It.IsAny(), It.IsAny>()),
+ Times.Never());
+ }
+
+ [Fact]
+ public async Task ResignInNoOpsAndLogsErrorIfAuthenticatedWithDifferentUser()
+ {
+ var user = new PocoUser { UserName = "Foo" };
+ var context = new DefaultHttpContext();
+ var auth = MockAuth(context);
+ var manager = SetupUserManager(user);
+ var logger = new TestLogger>();
+ var signInManager = new Mock>(manager.Object,
+ new HttpContextAccessor { HttpContext = context },
+ new Mock>().Object,
+ null, logger, new Mock().Object, null)
+ { CallBase = true };
+ var id = new ClaimsIdentity("authscheme");
+ var claimsPrincipal = new ClaimsPrincipal(id);
+ var authResult = AuthenticateResult.Success(new AuthenticationTicket(claimsPrincipal, new AuthenticationProperties(), "authscheme"));
+ auth.Setup(a => a.AuthenticateAsync(context, IdentityConstants.ApplicationScheme))
+ .Returns(Task.FromResult(authResult)).Verifiable();
+ manager.Setup(m => m.GetUserId(claimsPrincipal)).Returns("different");
+
+ await signInManager.Object.RefreshSignInAsync(user);
+
+ Assert.Contains("RefreshSignInAsync prevented because currently authenticated user has a different UserId. Use SignInAsync instead to change users.", logger.LogMessages);
+ auth.Verify();
+ signInManager.Verify(s => s.SignInWithClaimsAsync(It.IsAny(), It.IsAny(), It.IsAny>()),
+ Times.Never());
+ }
+
[Theory]
[InlineData(true, true, true, true)]
[InlineData(true, true, false, true)]
diff --git a/src/Installers/Windows/WindowsHostingBundle/Product.targets b/src/Installers/Windows/WindowsHostingBundle/Product.targets
index 3b1cf82c1076..c1dc097445d4 100644
--- a/src/Installers/Windows/WindowsHostingBundle/Product.targets
+++ b/src/Installers/Windows/WindowsHostingBundle/Product.targets
@@ -83,9 +83,9 @@
-->
-
-
-
+
+
$(DotnetRuntimeSourceFeedKey)
diff --git a/src/Mvc/Mvc.ViewFeatures/src/HtmlAttributePropertyHelper.cs b/src/Mvc/Mvc.ViewFeatures/src/HtmlAttributePropertyHelper.cs
index c1ac26b46742..f04f8895bd9a 100644
--- a/src/Mvc/Mvc.ViewFeatures/src/HtmlAttributePropertyHelper.cs
+++ b/src/Mvc/Mvc.ViewFeatures/src/HtmlAttributePropertyHelper.cs
@@ -25,8 +25,7 @@ public HtmlAttributePropertyHelper(PropertyHelper propertyHelper)
///
/// Part of contract.
///
- ///
- public static void UpdateCache(Type _)
+ public static void ClearCache(Type[] _)
{
ReflectionCache.Clear();
}
diff --git a/src/Servers/HttpSys/test/FunctionalTests/DelegateTests.cs b/src/Servers/HttpSys/test/FunctionalTests/DelegateTests.cs
index 79b77e32a93e..8cb6332a8f6d 100644
--- a/src/Servers/HttpSys/test/FunctionalTests/DelegateTests.cs
+++ b/src/Servers/HttpSys/test/FunctionalTests/DelegateTests.cs
@@ -217,6 +217,7 @@ public async Task UpdateDelegationRuleTest()
[ConditionalFact]
[DelegateSupportedCondition(true)]
+ [QuarantinedTest("https://github.com/dotnet/aspnetcore/issues/60141")]
public async Task DelegateAfterReceiverRestart()
{
var queueName = Guid.NewGuid().ToString();
diff --git a/src/Servers/Kestrel/Core/src/Internal/KestrelServerImpl.cs b/src/Servers/Kestrel/Core/src/Internal/KestrelServerImpl.cs
index cefdd3d65282..6bcede93dbea 100644
--- a/src/Servers/Kestrel/Core/src/Internal/KestrelServerImpl.cs
+++ b/src/Servers/Kestrel/Core/src/Internal/KestrelServerImpl.cs
@@ -39,8 +39,9 @@ public KestrelServerImpl(
IEnumerable multiplexedFactories,
IHttpsConfigurationService httpsConfigurationService,
ILoggerFactory loggerFactory,
+ DiagnosticSource? diagnosticSource,
KestrelMetrics metrics)
- : this(transportFactories, multiplexedFactories, httpsConfigurationService, CreateServiceContext(options, loggerFactory, diagnosticSource: null, metrics))
+ : this(transportFactories, multiplexedFactories, httpsConfigurationService, CreateServiceContext(options, loggerFactory, diagnosticSource, metrics))
{
}
@@ -111,7 +112,8 @@ private static ServiceContext CreateServiceContext(IOptions ServiceContext.ServerOptions;
- private ServiceContext ServiceContext { get; }
+ // Internal for testing
+ internal ServiceContext ServiceContext { get; }
private KestrelTrace Trace => ServiceContext.Log;
diff --git a/src/Servers/Kestrel/Core/src/KestrelServer.cs b/src/Servers/Kestrel/Core/src/KestrelServer.cs
index 75cec0130767..7f2909c77cf6 100644
--- a/src/Servers/Kestrel/Core/src/KestrelServer.cs
+++ b/src/Servers/Kestrel/Core/src/KestrelServer.cs
@@ -36,6 +36,7 @@ public KestrelServer(IOptions options, IConnectionListener
Array.Empty(),
new SimpleHttpsConfigurationService(),
loggerFactory,
+ diagnosticSource: null,
new KestrelMetrics(new DummyMeterFactory()));
}
diff --git a/src/Servers/Kestrel/Core/test/KestrelServerTests.cs b/src/Servers/Kestrel/Core/test/KestrelServerTests.cs
index a0709d00ad19..e688812a6075 100644
--- a/src/Servers/Kestrel/Core/test/KestrelServerTests.cs
+++ b/src/Servers/Kestrel/Core/test/KestrelServerTests.cs
@@ -309,6 +309,7 @@ private static KestrelServerImpl CreateKestrelServer(
multiplexedFactories,
httpsConfigurationService,
loggerFactory ?? new LoggerFactory(new[] { new KestrelTestLoggerProvider() }),
+ diagnosticSource: null,
metrics ?? new KestrelMetrics(new TestMeterFactory()));
}
diff --git a/src/Servers/Kestrel/Kestrel/test/WebHostBuilderKestrelExtensionsTests.cs b/src/Servers/Kestrel/Kestrel/test/WebHostBuilderKestrelExtensionsTests.cs
index 759d074a6d82..b24da893ab53 100644
--- a/src/Servers/Kestrel/Kestrel/test/WebHostBuilderKestrelExtensionsTests.cs
+++ b/src/Servers/Kestrel/Kestrel/test/WebHostBuilderKestrelExtensionsTests.cs
@@ -2,10 +2,12 @@
// The .NET Foundation licenses this file to you under the MIT license.
using System.Collections;
+using System.IO.Pipelines;
using Microsoft.AspNetCore.Connections;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Hosting.Server;
using Microsoft.AspNetCore.Server.Kestrel.Core;
+using Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Infrastructure;
using Microsoft.AspNetCore.Server.Kestrel.Transport.NamedPipes.Internal;
using Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets;
using Microsoft.Extensions.DependencyInjection;
@@ -107,6 +109,11 @@ public void ServerIsKestrelServerImpl()
.UseKestrel()
.Configure(app => { });
- Assert.IsType(hostBuilder.Build().Services.GetService());
+ var server = Assert.IsType(hostBuilder.Build().Services.GetService());
+
+ Assert.NotNull(server.ServiceContext.DiagnosticSource);
+ Assert.IsType(server.ServiceContext.Metrics);
+ Assert.Equal(PipeScheduler.ThreadPool, server.ServiceContext.Scheduler);
+ Assert.Equal(TimeProvider.System, server.ServiceContext.TimeProvider);
}
}
diff --git a/src/SignalR/clients/java/signalr/build.gradle b/src/SignalR/clients/java/signalr/build.gradle
index 895f8c4338d3..3e192445c97e 100644
--- a/src/SignalR/clients/java/signalr/build.gradle
+++ b/src/SignalR/clients/java/signalr/build.gradle
@@ -22,7 +22,7 @@ allprojects {
version project.findProperty('packageVersion') ?: "99.99.99-dev"
java {
- sourceCompatibility = 1.8
+ sourceCompatibility = 1.9
}
repositories {
diff --git a/src/SignalR/clients/java/signalr/test/signalr.client.java.Tests.javaproj b/src/SignalR/clients/java/signalr/test/signalr.client.java.Tests.javaproj
index 823c53ae8a72..8068629f03b3 100644
--- a/src/SignalR/clients/java/signalr/test/signalr.client.java.Tests.javaproj
+++ b/src/SignalR/clients/java/signalr/test/signalr.client.java.Tests.javaproj
@@ -6,6 +6,8 @@
true
true
+
+ OSX.15.Amd64.Open;$(SkipHelixQueues)
$(OutputPath)
true
diff --git a/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/GsonHubProtocolTest.java b/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/GsonHubProtocolTest.java
index 53454be031b6..d696a74850eb 100644
--- a/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/GsonHubProtocolTest.java
+++ b/src/SignalR/clients/java/signalr/test/src/main/java/com/microsoft/signalr/GsonHubProtocolTest.java
@@ -444,7 +444,7 @@ public void invocationBindingFailureWhenParsingLocalDateTimeWithoutAppropriateTy
assertEquals(HubMessageType.INVOCATION_BINDING_FAILURE, message.getMessageType());
InvocationBindingFailureMessage failureMessage = (InvocationBindingFailureMessage) messages.get(0);
- assertEquals("java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 41 path $.arguments[0]", failureMessage.getException().getMessage());
+ assertEquals("com.google.gson.JsonSyntaxException", failureMessage.getException().getClass().getName());
}
@Test
diff --git a/src/submodules/googletest b/src/submodules/googletest
index 7d76a231b0e2..e235eb34c6c4 160000
--- a/src/submodules/googletest
+++ b/src/submodules/googletest
@@ -1 +1 @@
-Subproject commit 7d76a231b0e29caf86e68d1df858308cd53b2a66
+Subproject commit e235eb34c6c4fed790ccdad4b16394301360dcd4