Skip to content

[main] Source code updates from dotnet/dotnet #62339

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

Merged
merged 8 commits into from
Jun 14, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
362 changes: 181 additions & 181 deletions eng/Version.Details.xml

Large diffs are not rendered by default.

174 changes: 87 additions & 87 deletions eng/Versions.props

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
parameters:
sourceIndexUploadPackageVersion: 2.0.0-20250425.2
sourceIndexProcessBinlogPackageVersion: 1.0.1-20250425.2
sourceIndexProcessBinlogPackageVersion: 1.0.1-20250515.1
sourceIndexPackageSource: https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json
binlogPath: artifacts/log/Debug/Build.binlog

steps:
- task: UseDotNet@2
displayName: "Source Index: Use .NET 8 SDK"
displayName: "Source Index: Use .NET 9 SDK"
inputs:
packageType: sdk
version: 8.0.x
version: 9.0.x
installationPath: $(Agent.TempDirectory)/dotnet
workingDirectory: $(Agent.TempDirectory)

Expand Down
4 changes: 2 additions & 2 deletions eng/common/cross/build-rootfs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -295,8 +295,8 @@ while :; do
;;
noble) # Ubuntu 24.04
__CodeName=noble
if [[ -n "$__LLDB_Package" ]]; then
__LLDB_Package="liblldb-18-dev"
if [[ -z "$__LLDB_Package" ]]; then
__LLDB_Package="liblldb-19-dev"
fi
;;
stretch) # Debian 9
Expand Down
7 changes: 7 additions & 0 deletions eng/common/dotnet.cmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
@echo off

:: This script is used to install the .NET SDK.
:: It will also invoke the SDK with any provided arguments.

powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0dotnet.ps1""" %*"
exit /b %ErrorLevel%
11 changes: 11 additions & 0 deletions eng/common/dotnet.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# This script is used to install the .NET SDK.
# It will also invoke the SDK with any provided arguments.

. $PSScriptRoot\tools.ps1
$dotnetRoot = InitializeDotNetCli -install:$true

# Invoke acquired SDK with args if they are provided
if ($args.count -gt 0) {
$env:DOTNET_NOLOGO=1
& "$dotnetRoot\dotnet.exe" $args
}
26 changes: 26 additions & 0 deletions eng/common/dotnet.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
#!/usr/bin/env bash

# This script is used to install the .NET SDK.
# It will also invoke the SDK with any provided arguments.

source="${BASH_SOURCE[0]}"
# resolve $SOURCE until the file is no longer a symlink
while [[ -h $source ]]; do
scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
source="$(readlink "$source")"

# if $source was a relative symlink, we need to resolve it relative to the path where the
# symlink file was located
[[ $source != /* ]] && source="$scriptroot/$source"
done
scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"

source $scriptroot/tools.sh
InitializeDotNetCli true # install

# Invoke acquired SDK with args if they are provided
if [[ $# > 0 ]]; then
__dotnetDir=${_InitializeDotNetCli}
dotnetPath=${__dotnetDir}/dotnet
${dotnetPath} "$@"
fi
11 changes: 1 addition & 10 deletions eng/common/templates/vmr-build-pr.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,5 @@
trigger: none
pr:
branches:
include:
- main
- release/*
paths:
exclude:
- documentation/*
- README.md
- CODEOWNERS
pr: none

variables:
- template: /eng/common/templates/variables/pool-providers.yml@self
Expand Down
23 changes: 4 additions & 19 deletions eng/common/tools.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -765,28 +765,13 @@ function MSBuild() {

$toolsetBuildProject = InitializeToolset
$basePath = Split-Path -parent $toolsetBuildProject
$possiblePaths = @(
# new scripts need to work with old packages, so we need to look for the old names/versions
(Join-Path $basePath (Join-Path $buildTool.Framework 'Microsoft.DotNet.ArcadeLogging.dll')),
(Join-Path $basePath (Join-Path $buildTool.Framework 'Microsoft.DotNet.Arcade.Sdk.dll')),

# This list doesn't need to be updated anymore and can eventually be removed.
(Join-Path $basePath (Join-Path net9.0 'Microsoft.DotNet.ArcadeLogging.dll')),
(Join-Path $basePath (Join-Path net9.0 'Microsoft.DotNet.Arcade.Sdk.dll')),
(Join-Path $basePath (Join-Path net8.0 'Microsoft.DotNet.ArcadeLogging.dll')),
(Join-Path $basePath (Join-Path net8.0 'Microsoft.DotNet.Arcade.Sdk.dll'))
)
$selectedPath = $null
foreach ($path in $possiblePaths) {
if (Test-Path $path -PathType Leaf) {
$selectedPath = $path
break
}
}
$selectedPath = Join-Path $basePath (Join-Path $buildTool.Framework 'Microsoft.DotNet.ArcadeLogging.dll')

if (-not $selectedPath) {
Write-PipelineTelemetryError -Category 'Build' -Message 'Unable to find arcade sdk logger assembly.'
Write-PipelineTelemetryError -Category 'Build' -Message "Unable to find arcade sdk logger assembly: $selectedPath"
ExitWithExitCode 1
}

$args += "/logger:$selectedPath"
}

Expand Down
22 changes: 4 additions & 18 deletions eng/common/tools.sh
Original file line number Diff line number Diff line change
Expand Up @@ -447,27 +447,13 @@ function MSBuild {
fi

local toolset_dir="${_InitializeToolset%/*}"
# new scripts need to work with old packages, so we need to look for the old names/versions
local selectedPath=
local possiblePaths=()
possiblePaths+=( "$toolset_dir/net/Microsoft.DotNet.ArcadeLogging.dll" )
possiblePaths+=( "$toolset_dir/net/Microsoft.DotNet.Arcade.Sdk.dll" )

# This list doesn't need to be updated anymore and can eventually be removed.
possiblePaths+=( "$toolset_dir/net9.0/Microsoft.DotNet.ArcadeLogging.dll" )
possiblePaths+=( "$toolset_dir/net9.0/Microsoft.DotNet.Arcade.Sdk.dll" )
possiblePaths+=( "$toolset_dir/net8.0/Microsoft.DotNet.ArcadeLogging.dll" )
possiblePaths+=( "$toolset_dir/net8.0/Microsoft.DotNet.Arcade.Sdk.dll" )
for path in "${possiblePaths[@]}"; do
if [[ -f $path ]]; then
selectedPath=$path
break
fi
done
local selectedPath="$toolset_dir/net/Microsoft.DotNet.ArcadeLogging.dll"

if [[ -z "$selectedPath" ]]; then
Write-PipelineTelemetryError -category 'Build' "Unable to find arcade sdk logger assembly."
Write-PipelineTelemetryError -category 'Build' "Unable to find arcade sdk logger assembly: $selectedPath"
ExitWithExitCode 1
fi

args+=( "-logger:$selectedPath" )
fi

Expand Down
2 changes: 1 addition & 1 deletion eng/tools/GenerateFiles/Directory.Build.targets.in
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@
<LatestRuntimeFrameworkVersion
Condition=" '%(TargetFramework)' == '${DefaultNetCoreTargetFramework}' ">${MicrosoftNETCoreAppRefVersion}</LatestRuntimeFrameworkVersion>
<TargetingPackVersion
Condition=" '%(TargetFramework)' == '${DefaultNetCoreTargetFramework}' ">${MicrosoftNETCoreAppRefVersion}</TargetingPackVersion>
Condition=" '%(TargetFramework)' == '${DefaultNetCoreTargetFramework}' and '$(TargetLatestDotNetRuntime)' != 'false' ">${MicrosoftNETCoreAppRefVersion}</TargetingPackVersion>
<!--
Change the default shared framework version only when _not_ servicing. Avoid bumping version used in most
projects. When servicing, projects (Microsoft.AspNetCore.App.Runtime in particular) can use
Expand Down
6 changes: 3 additions & 3 deletions global.json
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,9 @@
"jdk": "latest"
},
"msbuild-sdks": {
"Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25311.102",
"Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25311.102",
"Microsoft.DotNet.SharedFramework.Sdk": "10.0.0-beta.25311.102",
"Microsoft.DotNet.Arcade.Sdk": "10.0.0-beta.25314.101",
"Microsoft.DotNet.Helix.Sdk": "10.0.0-beta.25314.101",
"Microsoft.DotNet.SharedFramework.Sdk": "10.0.0-beta.25314.101",
"Microsoft.Build.NoTargets": "3.7.0",
"Microsoft.Build.Traversal": "3.4.0"
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
<!-- HACK: We aren't self-contained but we need to say we are so the SDK lets us do composite R2R -->
<SelfContained>true</SelfContained>

<InstructionSetSupport Condition="'$(TargetArchitecture)' == 'x64' or '$(TargetArchitecture)' == 'x86'">+x86-x64-v3</InstructionSetSupport>
<InstructionSetSupport Condition="'$(TargetArchitecture)' == 'x64' or '$(TargetArchitecture)' == 'x86'">+x86-64-v3</InstructionSetSupport>
<PublishReadyToRunCrossgen2ExtraArgs Condition="'$(InstructionSetSupport)' != ''">$(PublishReadyToRunCrossgen2ExtraArgs);--instruction-set:$(InstructionSetSupport)</PublishReadyToRunCrossgen2ExtraArgs>

<!-- Setting this suppresses getting documentation .xml files in the shared runtime output. -->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@
<PropertyGroup>
<!-- Use the BrowserDebugHost as a sentinel for the nonshipping version for .NETCoreApp -->
<DotNetRuntimeArchiveFileName>dotnet-runtime-$(MicrosoftNETCoreAppRefVersion)-$(TargetRuntimeIdentifier).$(ArchiveFormat)</DotNetRuntimeArchiveFileName>
<DotNetRuntimeArchiveFileName Condition="'$(PgoInstrument)' == 'true'">dotnet-runtime-pgo-$(MicrosoftNETCoreAppRefVersion)-$(TargetRuntimeIdentifier)$(ArchiveExtension)</DotNetRuntimeArchiveFileName>
<DotNetRuntimeDownloadPath>Runtime/$(MicrosoftInternalRuntimeAspNetCoreTransportVersion)/$(DotNetRuntimeArchiveFileName)</DotNetRuntimeDownloadPath>
<DotNetRuntimeArchive>$(BaseIntermediateOutputPath)$(DotNetRuntimeArchiveFileName)</DotNetRuntimeArchive>
</PropertyGroup>
Expand Down
1 change: 0 additions & 1 deletion src/Framework/App.Runtime/src/aspnetcore-runtime.proj
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@
<PropertyGroup>
<!-- Use the Microsoft.Internal.Runtime.AspNetCore.Transport package as a sentinel for the nonshipping version for .NETCoreApp -->
<DotNetRuntimeArchiveFileName>dotnet-runtime-$(MicrosoftNETCoreAppRefVersion)-$(TargetRuntimeIdentifier).$(ArchiveFormat)</DotNetRuntimeArchiveFileName>
<DotNetRuntimeArchiveFileName Condition="'$(PgoInstrument)' == 'true'">dotnet-runtime-pgo-$(MicrosoftNETCoreAppRefVersion)-$(TargetRuntimeIdentifier)$(ArchiveExtension)</DotNetRuntimeArchiveFileName>
<DotNetRuntimeDownloadPath>Runtime/$(MicrosoftInternalRuntimeAspNetCoreTransportVersion)/$(DotNetRuntimeArchiveFileName)</DotNetRuntimeDownloadPath>
<DotNetRuntimeArchive>$(BaseIntermediateOutputPath)$(DotNetRuntimeArchiveFileName)</DotNetRuntimeArchive>
</PropertyGroup>
Expand Down
4 changes: 4 additions & 0 deletions src/Servers/Kestrel/Core/src/Internal/SniOptionsSelector.cs
Original file line number Diff line number Diff line change
Expand Up @@ -200,6 +200,10 @@ internal static SslServerAuthenticationOptions CloneSslOptions(SslServerAuthenti
ServerCertificateSelectionCallback = sslOptions.ServerCertificateSelectionCallback,
CertificateChainPolicy = sslOptions.CertificateChainPolicy,
AllowTlsResume = sslOptions.AllowTlsResume,
#pragma warning disable CA1416 // Ignore SupportedOSPlatform checks, we're just copying the value
AllowRsaPssPadding = sslOptions.AllowRsaPssPadding,
AllowRsaPkcs1Padding = sslOptions.AllowRsaPkcs1Padding,
#pragma warning restore CA1416
};

private sealed class SniOptions
Expand Down
12 changes: 12 additions & 0 deletions src/Servers/Kestrel/Core/test/SniOptionsSelectorTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -858,6 +858,12 @@ public void CloneSslOptionsClonesAllProperties()
CertificateChainPolicy = new X509ChainPolicy(),
// Defaults to true
AllowTlsResume = false,
#pragma warning disable CA1416
// Defaults to true
AllowRsaPssPadding = false,
// Defaults to true
AllowRsaPkcs1Padding = false,
#pragma warning restore CA1416
};

var clonedOptions = SniOptionsSelector.CloneSslOptions(options);
Expand Down Expand Up @@ -906,6 +912,12 @@ public void CloneSslOptionsClonesAllProperties()
Assert.Equal(options.AllowTlsResume, clonedOptions.AllowTlsResume);
Assert.True(propertyNames.Remove(nameof(options.AllowTlsResume)));

Assert.Equal(options.AllowRsaPssPadding, clonedOptions.AllowRsaPssPadding);
Assert.True(propertyNames.Remove(nameof(options.AllowRsaPssPadding)));

Assert.Equal(options.AllowRsaPkcs1Padding, clonedOptions.AllowRsaPkcs1Padding);
Assert.True(propertyNames.Remove(nameof(options.AllowRsaPkcs1Padding)));

// Ensure we've checked every property. When new properties get added, we'll have to update this test along with the CloneSslOptions implementation.
Assert.Empty(propertyNames);
}
Expand Down
Loading