diff --git a/NuGet.config b/NuGet.config
index 66f5d2f4634d..1d1ed063d794 100644
--- a/NuGet.config
+++ b/NuGet.config
@@ -4,8 +4,10 @@
+
+
@@ -28,8 +30,10 @@
+
+
diff --git a/eng/Baseline.Designer.props b/eng/Baseline.Designer.props
index 3fd723523160..ffeba29a66d4 100644
--- a/eng/Baseline.Designer.props
+++ b/eng/Baseline.Designer.props
@@ -2,117 +2,117 @@
$(MSBuildAllProjects);$(MSBuildThisFileFullPath)
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
@@ -120,279 +120,279 @@
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
-
-
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
-
+
+
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
-
-
+
+
- 9.0.6
+ 9.0.7
-
-
-
-
-
+
+
+
+
+
- 9.0.6
+ 9.0.7
-
-
-
-
-
+
+
+
+
+
- 9.0.6
+ 9.0.7
-
-
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
-
-
-
-
-
+
+
+
+
+
+
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
-
+
-
-
-
+
+
+
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
+
-
+
-
+
- 9.0.6
+ 9.0.7
-
-
-
-
-
-
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
-
+
+
- 9.0.6
+ 9.0.7
-
-
+
+
-
-
+
+
-
-
+
+
- 9.0.6
+ 9.0.7
-
+
-
+
-
+
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
@@ -401,83 +401,83 @@
- 9.0.6
+ 9.0.7
-
-
+
+
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
-
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
- 9.0.6
+ 9.0.7
-
-
+
+
-
+
-
-
+
+
- 9.0.6
+ 9.0.7
-
-
+
+
- 9.0.6
+ 9.0.7
-
-
+
+
- 9.0.6
+ 9.0.7
@@ -493,510 +493,510 @@
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
-
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
-
+
+
-
-
+
+
-
-
+
+
- 9.0.6
+ 9.0.7
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
-
-
-
-
-
-
+
+
+
+
+
+
- 9.0.6
+ 9.0.7
-
-
+
+
-
+
-
-
+
+
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
-
+
-
+
-
+
- 9.0.6
+ 9.0.7
-
+
-
+
-
+
- 9.0.6
+ 9.0.7
-
+
-
+
-
+
- 9.0.6
+ 9.0.7
-
-
-
-
+
+
+
+
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
-
+
+
-
-
+
+
-
-
+
+
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
-
-
+
+
-
-
+
+
-
-
+
+
- 9.0.6
+ 9.0.7
-
-
-
-
-
+
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
-
+
+
+
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
+
-
+
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
-
-
-
+
+
+
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
-
-
-
-
-
+
+
+
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
-
-
+
+
+
-
-
+
+
-
-
-
+
+
+
- 9.0.6
+ 9.0.7
- 9.0.6
+ 9.0.7
-
+
- 9.0.6
+ 9.0.7
-
+
\ No newline at end of file
diff --git a/eng/Baseline.xml b/eng/Baseline.xml
index 4c39c3649c99..3efad5672524 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 a7f172e3418c..9b5557957a57 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -9,325 +9,325 @@
-->
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 8751e6d519fda94d5154187358765311ed4a4e84
+ 67d253c17619e6ba325e5390905ea2a13cc7f532
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 8751e6d519fda94d5154187358765311ed4a4e84
+ 67d253c17619e6ba325e5390905ea2a13cc7f532
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 8751e6d519fda94d5154187358765311ed4a4e84
+ 67d253c17619e6ba325e5390905ea2a13cc7f532
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 8751e6d519fda94d5154187358765311ed4a4e84
+ 67d253c17619e6ba325e5390905ea2a13cc7f532
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 8751e6d519fda94d5154187358765311ed4a4e84
+ 67d253c17619e6ba325e5390905ea2a13cc7f532
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 8751e6d519fda94d5154187358765311ed4a4e84
+ 67d253c17619e6ba325e5390905ea2a13cc7f532
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 8751e6d519fda94d5154187358765311ed4a4e84
+ 67d253c17619e6ba325e5390905ea2a13cc7f532
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-efcore
- 8751e6d519fda94d5154187358765311ed4a4e84
+ 67d253c17619e6ba325e5390905ea2a13cc7f532
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
https://github.com/dotnet/xdt
@@ -367,9 +367,9 @@
bc1c3011064a493b0ca527df6fb7215e2e5cfa96
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
@@ -380,9 +380,9 @@
-
+
https://dev.azure.com/dnceng/internal/_git/dotnet-runtime
- 3875b54e7b10b10606b105340199946d0b877754
+ 3c298d9f00936d651cc47d221762474e25277672
https://github.com/dotnet/winforms
diff --git a/eng/Versions.props b/eng/Versions.props
index 3623e8e7d13d..06a532daf18c 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -11,7 +11,7 @@
8
- false
+ true
8.0.1
*-*
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6-servicing.25266.13
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6-servicing.25266.13
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6-servicing.25266.13
- 9.0.6-servicing.25266.13
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7-servicing.25316.16
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7-servicing.25316.16
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7-servicing.25316.16
+ 9.0.7-servicing.25316.16
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
- 9.0.6-servicing.25266.13
- 9.0.6
+ 9.0.7-servicing.25316.16
+ 9.0.7
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
9.8.0-preview.1.25354.1
9.8.0-preview.1.25354.1
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
- 9.0.6
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
+ 9.0.7
4.11.0-3.24554.2
4.11.0-3.24554.2
diff --git a/global.json b/global.json
index af226bcbc749..50846f295c7d 100644
--- a/global.json
+++ b/global.json
@@ -1,9 +1,9 @@
{
"sdk": {
- "version": "9.0.107"
+ "version": "9.0.108"
},
"tools": {
- "dotnet": "9.0.107",
+ "dotnet": "9.0.108",
"runtimes": {
"dotnet/x86": [
"$(MicrosoftNETCoreBrowserDebugHostTransportVersion)"
diff --git a/src/Http/Headers/test/CookieHeaderValueTest.cs b/src/Http/Headers/test/CookieHeaderValueTest.cs
index 6623a8ed13dd..6ad2e962d005 100644
--- a/src/Http/Headers/test/CookieHeaderValueTest.cs
+++ b/src/Http/Headers/test/CookieHeaderValueTest.cs
@@ -75,7 +75,7 @@ public static TheoryData InvalidCookieValues
}
}
- public static TheoryData, string?[]> ListOfCookieHeaderDataSet
+ public static TheoryData, string?[]> ListOfStrictCookieHeaderDataSet
{
get
{
@@ -94,19 +94,30 @@ public static TheoryData InvalidCookieValues
dataset.Add(new[] { header1 }.ToList(), new[] { string1 });
dataset.Add(new[] { header1, header1 }.ToList(), new[] { string1, string1 });
- dataset.Add(new[] { header1, header1 }.ToList(), new[] { string1, null, "", " ", ";", " , ", string1 });
dataset.Add(new[] { header2 }.ToList(), new[] { string2 });
dataset.Add(new[] { header1, header2 }.ToList(), new[] { string1, string2 });
- dataset.Add(new[] { header1, header2 }.ToList(), new[] { string1 + ", " + string2 });
dataset.Add(new[] { header2, header1 }.ToList(), new[] { string2 + "; " + string1 });
dataset.Add(new[] { header1, header2, header3, header4 }.ToList(), new[] { string1, string2, string3, string4 });
- dataset.Add(new[] { header1, header2, header3, header4 }.ToList(), new[] { string.Join(",", string1, string2, string3, string4) });
dataset.Add(new[] { header1, header2, header3, header4 }.ToList(), new[] { string.Join(";", string1, string2, string3, string4) });
return dataset;
}
}
+ public static TheoryData, string?[]> ListOfCookieHeaderDataSet
+ {
+ get
+ {
+ var header1 = new CookieHeaderValue("name1", "n1=v1&n2=v2&n3=v3");
+ var string1 = "name1=n1=v1&n2=v2&n3=v3";
+
+ var dataset = new TheoryData, string?[]>();
+ dataset.Concat(ListOfStrictCookieHeaderDataSet);
+ dataset.Add(new[] { header1, header1 }.ToList(), new[] { string1, null, "", " ", ";", " , ", string1 });
+ return dataset;
+ }
+ }
+
public static TheoryData?, string?[]> ListWithInvalidCookieHeaderDataSet
{
get
@@ -127,18 +138,19 @@ public static TheoryData InvalidCookieValues
dataset.Add(new[] { header1 }.ToList(), new[] { validString1, invalidString1 });
dataset.Add(new[] { header1 }.ToList(), new[] { validString1, null, "", " ", ";", " , ", invalidString1 });
dataset.Add(new[] { header1 }.ToList(), new[] { invalidString1, null, "", " ", ";", " , ", validString1 });
- dataset.Add(new[] { header1 }.ToList(), new[] { validString1 + ", " + invalidString1 });
- dataset.Add(new[] { header2 }.ToList(), new[] { invalidString1 + ", " + validString2 });
+ dataset.Add(null, new[] { validString1 + ", " });
+ dataset.Add(null, new[] { invalidString1 + ", " + validString2 });
dataset.Add(new[] { header1 }.ToList(), new[] { invalidString1 + "; " + validString1 });
dataset.Add(new[] { header2 }.ToList(), new[] { validString2 + "; " + invalidString1 });
dataset.Add(new[] { header1, header2, header3 }.ToList(), new[] { invalidString1, validString1, validString2, validString3 });
dataset.Add(new[] { header1, header2, header3 }.ToList(), new[] { validString1, invalidString1, validString2, validString3 });
dataset.Add(new[] { header1, header2, header3 }.ToList(), new[] { validString1, validString2, invalidString1, validString3 });
dataset.Add(new[] { header1, header2, header3 }.ToList(), new[] { validString1, validString2, validString3, invalidString1 });
- dataset.Add(new[] { header1, header2, header3 }.ToList(), new[] { string.Join(",", invalidString1, validString1, validString2, validString3) });
- dataset.Add(new[] { header1, header2, header3 }.ToList(), new[] { string.Join(",", validString1, invalidString1, validString2, validString3) });
- dataset.Add(new[] { header1, header2, header3 }.ToList(), new[] { string.Join(",", validString1, validString2, invalidString1, validString3) });
- dataset.Add(new[] { header1, header2, header3 }.ToList(), new[] { string.Join(",", validString1, validString2, validString3, invalidString1) });
+ dataset.Add(null, new[] { string.Join(",", invalidString1, validString1, validString2, validString3) });
+ dataset.Add(null, new[] { string.Join(",", validString1, invalidString1, validString2, validString3) });
+ dataset.Add(null, new[] { string.Join(",", validString1, validString2, invalidString1, validString3) });
+ dataset.Add(null, new[] { string.Join(",", validString1, validString2, validString3, invalidString1) });
+ dataset.Add(null, new[] { string.Join(",", validString1, validString2, validString3) });
dataset.Add(new[] { header1, header2, header3 }.ToList(), new[] { string.Join(";", invalidString1, validString1, validString2, validString3) });
dataset.Add(new[] { header1, header2, header3 }.ToList(), new[] { string.Join(";", validString1, invalidString1, validString2, validString3) });
dataset.Add(new[] { header1, header2, header3 }.ToList(), new[] { string.Join(";", validString1, validString2, invalidString1, validString3) });
@@ -248,7 +260,7 @@ public void CookieHeaderValue_ParseList_AcceptsValidValues(IList cookies, string[] input)
{
var results = CookieHeaderValue.ParseStrictList(input);
@@ -267,7 +279,7 @@ public void CookieHeaderValue_TryParseList_AcceptsValidValues(IList cookies, string[] input)
{
var result = CookieHeaderValue.TryParseStrictList(input, out var results);
diff --git a/src/Http/Http.Extensions/test/HeaderDictionaryTypeExtensionsTest.cs b/src/Http/Http.Extensions/test/HeaderDictionaryTypeExtensionsTest.cs
index 33ecc3ff1ea8..b4071866534b 100644
--- a/src/Http/Http.Extensions/test/HeaderDictionaryTypeExtensionsTest.cs
+++ b/src/Http/Http.Extensions/test/HeaderDictionaryTypeExtensionsTest.cs
@@ -214,7 +214,7 @@ public void GetListT_StringWithQualityHeaderValidValue_Success()
public void GetListT_CookieHeaderValue_Success()
{
var context = new DefaultHttpContext();
- context.Request.Headers.Cookie = "cookie1=a,cookie2=b";
+ context.Request.Headers.Cookie = "cookie1=a;cookie2=b";
var result = context.Request.GetTypedHeaders().GetList(HeaderNames.Cookie);
diff --git a/src/Http/Http/test/RequestCookiesCollectionTests.cs b/src/Http/Http/test/RequestCookiesCollectionTests.cs
index e08a53f29711..d584f2db0599 100644
--- a/src/Http/Http/test/RequestCookiesCollectionTests.cs
+++ b/src/Http/Http/test/RequestCookiesCollectionTests.cs
@@ -33,11 +33,18 @@ public void ParseManyCookies()
[Theory]
[InlineData(",", null)]
[InlineData(";", null)]
- [InlineData("er=dd,cc,bb", new[] { "dd" })]
- [InlineData("er=dd,err=cc,errr=bb", new[] { "dd", "cc", "bb" })]
- [InlineData("errorcookie=dd,:(\"sa;", new[] { "dd" })]
+ [InlineData("er=dd,cc,bb", null)]
+ [InlineData("er=dd,err=cc,errr=bb", null)]
+ [InlineData("errorcookie=dd,:(\"sa;", null)]
[InlineData("s;", null)]
[InlineData("er=;,err=,errr=\\,errrr=\"", null)]
+ [InlineData("a@a=a;", null)]
+ [InlineData("a@ a=a;", null)]
+ [InlineData("a a=a;", null)]
+ [InlineData(",a=a;", null)]
+ [InlineData(",a=a", null)]
+ [InlineData("a=a;,b=b", new []{ "a" })] // valid cookie followed by invalid cookie
+ [InlineData(",a=a;b=b", new[] { "b" })] // invalid cookie followed by valid cookie
public void ParseInvalidCookies(string cookieToParse, string[] expectedCookieValues)
{
var cookies = RequestCookieCollection.Parse(new StringValues(new[] { cookieToParse }));
diff --git a/src/Http/Shared/CookieHeaderParserShared.cs b/src/Http/Shared/CookieHeaderParserShared.cs
index e4b1d83e519a..0eb1c64d533a 100644
--- a/src/Http/Shared/CookieHeaderParserShared.cs
+++ b/src/Http/Shared/CookieHeaderParserShared.cs
@@ -89,6 +89,17 @@ public static bool TryParseValue(StringSegment value, ref int index, bool suppor
if (!TryGetCookieLength(value, ref current, out parsedName, out parsedValue))
{
+ var separatorIndex = value.IndexOf(';', current);
+ if (separatorIndex > 0)
+ {
+ // Skip the invalid values and keep trying.
+ index = separatorIndex;
+ }
+ else
+ {
+ // No more separators, so we're done.
+ index = value.Length;
+ }
return false;
}
@@ -97,6 +108,17 @@ public static bool TryParseValue(StringSegment value, ref int index, bool suppor
// If we support multiple values and we've not reached the end of the string, then we must have a separator.
if ((separatorFound && !supportsMultipleValues) || (!separatorFound && (current < value.Length)))
{
+ var separatorIndex = value.IndexOf(';', current);
+ if (separatorIndex > 0)
+ {
+ // Skip the invalid values and keep trying.
+ index = separatorIndex;
+ }
+ else
+ {
+ // No more separators, so we're done.
+ index = value.Length;
+ }
return false;
}
@@ -112,7 +134,7 @@ private static int GetNextNonEmptyOrWhitespaceIndex(StringSegment input, int sta
separatorFound = false;
var current = startIndex + HttpRuleParser.GetWhitespaceLength(input, startIndex);
- if ((current == input.Length) || (input[current] != ',' && input[current] != ';'))
+ if (current == input.Length || input[current] != ';')
{
return current;
}
@@ -125,8 +147,8 @@ private static int GetNextNonEmptyOrWhitespaceIndex(StringSegment input, int sta
if (skipEmptyValues)
{
- // Most headers only split on ',', but cookies primarily split on ';'
- while ((current < input.Length) && ((input[current] == ',') || (input[current] == ';')))
+ // Cookies are split on ';'
+ while (current < input.Length && input[current] == ';')
{
current++; // skip delimiter.
current = current + HttpRuleParser.GetWhitespaceLength(input, current);
@@ -136,6 +158,18 @@ private static int GetNextNonEmptyOrWhitespaceIndex(StringSegment input, int sta
return current;
}
+ /*
+ * https://www.rfc-editor.org/rfc/rfc6265#section-4.1.1
+ * cookie-pair = cookie-name "=" cookie-value
+ * cookie-name = token
+ * token = 1*
+ separators = "(" | ")" | "<" | ">" | "@"
+ | "," | ";" | ":" | "\" | <">
+ | "/" | "[" | "]" | "?" | "="
+ | "{" | "}" | SP | HT
+ CTL =
+ */
// name=value; name="value"
internal static bool TryGetCookieLength(StringSegment input, ref int offset, [NotNullWhen(true)] out StringSegment? parsedName, [NotNullWhen(true)] out StringSegment? parsedValue)
{