From 6cb62fe41bb770d019e8c833524d5c02a876509a Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Tue, 8 Apr 2025 11:04:08 +0000 Subject: [PATCH 01/10] [vs17.8] Update dependencies from dotnet/arcade (#11688) * Update dependencies from https://github.com/dotnet/arcade build 20250404.7 Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.XUnitExtensions From Version 8.0.0-beta.25111.4 -> To Version 8.0.0-beta.25204.7 * Update Versions.props VersionPrefix * Update PreReleaseVersionLabel to 'servicing' --------- Co-authored-by: dotnet-maestro[bot] Co-authored-by: Jenny Bai Co-authored-by: YuliiaKovalova <95473390+YuliiaKovalova@users.noreply.github.com> --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 6 +++--- eng/common/cross/toolchain.cmake | 4 ++++ eng/common/generate-sbom-prep.ps1 | 20 +++++++++++++------ eng/common/generate-sbom-prep.sh | 17 ++++++++++------ eng/common/templates-official/job/job.yml | 3 ++- .../steps/generate-sbom.yml | 2 +- .../steps/send-to-helix.yml | 7 ++++--- eng/common/templates/steps/send-to-helix.yml | 7 ++++--- eng/common/tools.ps1 | 4 ++-- eng/common/tools.sh | 4 ++-- global.json | 4 ++-- 12 files changed, 53 insertions(+), 33 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 5b6d55f1952..466378542d3 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -62,9 +62,9 @@ - + https://github.com/dotnet/arcade - a319ada170a54ee87c7a81e3309948e3d3ea7aca + faa1471063676aca349da6b48c56dd0fc95aa869 @@ -81,9 +81,9 @@ dc3d0694a4b31b8e27038431888cd4e8dd5b6cb6 - + https://github.com/dotnet/arcade - a319ada170a54ee87c7a81e3309948e3d3ea7aca + faa1471063676aca349da6b48c56dd0fc95aa869 diff --git a/eng/Versions.props b/eng/Versions.props index 6a09c2bfb8e..c1366c4010f 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -2,11 +2,11 @@ - 17.8.24 + 17.8.25 release 17.7.0 15.1.0.0 - preview + servicing true true @@ -49,7 +49,7 @@ Otherwise, this version of dotnet will not be installed and the build will error out. --> $([System.Text.RegularExpressions.Regex]::Match($([System.IO.File]::ReadAllText('$(MSBuildThisFileDirectory)..\global.json')), '"dotnet": "([^"]*)"').Groups.get_Item(1)) 4.2.0-1.22102.8 - 8.0.0-beta.25111.4 + 8.0.0-beta.25204.7 7.0.0 6.0.1 4.8.0-3.23465.5 diff --git a/eng/common/cross/toolchain.cmake b/eng/common/cross/toolchain.cmake index dafabdcaef0..f93dc440df0 100644 --- a/eng/common/cross/toolchain.cmake +++ b/eng/common/cross/toolchain.cmake @@ -280,6 +280,8 @@ elseif(TARGET_ARCH_NAME MATCHES "^(arm64|x64)$") add_toolchain_linker_flag("-Wl,--rpath-link=${CROSS_ROOTFS}/usr/lib64") add_toolchain_linker_flag("-Wl,--rpath-link=${TIZEN_TOOLCHAIN_PATH}") endif() +elseif(TARGET_ARCH_NAME STREQUAL "s390x") + add_toolchain_linker_flag("--target=${TOOLCHAIN}") elseif(TARGET_ARCH_NAME STREQUAL "x86") if(EXISTS ${CROSS_ROOTFS}/usr/lib/gcc/i586-alpine-linux-musl) add_toolchain_linker_flag("--target=${TOOLCHAIN}") @@ -327,6 +329,8 @@ if(TARGET_ARCH_NAME MATCHES "^(arm|armel)$") if(TARGET_ARCH_NAME STREQUAL "armel") add_compile_options(-mfloat-abi=softfp) endif() +elseif(TARGET_ARCH_NAME STREQUAL "s390x") + add_compile_options("--target=${TOOLCHAIN}") elseif(TARGET_ARCH_NAME STREQUAL "x86") if(EXISTS ${CROSS_ROOTFS}/usr/lib/gcc/i586-alpine-linux-musl) add_compile_options(--target=${TOOLCHAIN}) diff --git a/eng/common/generate-sbom-prep.ps1 b/eng/common/generate-sbom-prep.ps1 index 3e5c1c74a1c..a0c7d792a76 100644 --- a/eng/common/generate-sbom-prep.ps1 +++ b/eng/common/generate-sbom-prep.ps1 @@ -4,18 +4,26 @@ Param( . $PSScriptRoot\pipeline-logging-functions.ps1 +# Normally - we'd listen to the manifest path given, but 1ES templates will overwrite if this level gets uploaded directly +# with their own overwriting ours. So we create it as a sub directory of the requested manifest path. +$ArtifactName = "${env:SYSTEM_STAGENAME}_${env:AGENT_JOBNAME}_SBOM" +$SafeArtifactName = $ArtifactName -replace '["/:<>\\|?@*"() ]', '_' +$SbomGenerationDir = Join-Path $ManifestDirPath $SafeArtifactName + +Write-Host "Artifact name before : $ArtifactName" +Write-Host "Artifact name after : $SafeArtifactName" + Write-Host "Creating dir $ManifestDirPath" + # create directory for sbom manifest to be placed -if (!(Test-Path -path $ManifestDirPath)) +if (!(Test-Path -path $SbomGenerationDir)) { - New-Item -ItemType Directory -path $ManifestDirPath - Write-Host "Successfully created directory $ManifestDirPath" + New-Item -ItemType Directory -path $SbomGenerationDir + Write-Host "Successfully created directory $SbomGenerationDir" } else{ Write-PipelineTelemetryError -category 'Build' "Unable to create sbom folder." } Write-Host "Updating artifact name" -$artifact_name = "${env:SYSTEM_STAGENAME}_${env:AGENT_JOBNAME}_SBOM" -replace '["/:<>\\|?@*"() ]', '_' -Write-Host "Artifact name $artifact_name" -Write-Host "##vso[task.setvariable variable=ARTIFACT_NAME]$artifact_name" +Write-Host "##vso[task.setvariable variable=ARTIFACT_NAME]$SafeArtifactName" diff --git a/eng/common/generate-sbom-prep.sh b/eng/common/generate-sbom-prep.sh index d5c76dc827b..bbb4922151e 100644 --- a/eng/common/generate-sbom-prep.sh +++ b/eng/common/generate-sbom-prep.sh @@ -14,19 +14,24 @@ done scriptroot="$( cd -P "$( dirname "$source" )" && pwd )" . $scriptroot/pipeline-logging-functions.sh +# replace all special characters with _, some builds use special characters like : in Agent.Jobname, that is not a permissible name while uploading artifacts. +artifact_name=$SYSTEM_STAGENAME"_"$AGENT_JOBNAME"_SBOM" +safe_artifact_name="${artifact_name//["/:<>\\|?@*$" ]/_}" + manifest_dir=$1 -if [ ! -d "$manifest_dir" ] ; then - mkdir -p "$manifest_dir" - echo "Sbom directory created." $manifest_dir +# Normally - we'd listen to the manifest path given, but 1ES templates will overwrite if this level gets uploaded directly +# with their own overwriting ours. So we create it as a sub directory of the requested manifest path. +sbom_generation_dir="$manifest_dir/$safe_artifact_name" + +if [ ! -d "$sbom_generation_dir" ] ; then + mkdir -p "$sbom_generation_dir" + echo "Sbom directory created." $sbom_generation_dir else Write-PipelineTelemetryError -category 'Build' "Unable to create sbom folder." fi -artifact_name=$SYSTEM_STAGENAME"_"$AGENT_JOBNAME"_SBOM" echo "Artifact name before : "$artifact_name -# replace all special characters with _, some builds use special characters like : in Agent.Jobname, that is not a permissible name while uploading artifacts. -safe_artifact_name="${artifact_name//["/:<>\\|?@*$" ]/_}" echo "Artifact name after : "$safe_artifact_name export ARTIFACT_NAME=$safe_artifact_name echo "##vso[task.setvariable variable=ARTIFACT_NAME]$safe_artifact_name" diff --git a/eng/common/templates-official/job/job.yml b/eng/common/templates-official/job/job.yml index 1f035fee73f..98ccbd7a9c1 100644 --- a/eng/common/templates-official/job/job.yml +++ b/eng/common/templates-official/job/job.yml @@ -38,6 +38,7 @@ parameters: enableSbom: true PackageVersion: 7.0.0 BuildDropPath: '$(Build.SourcesDirectory)/artifacts' + ManifestDirPath: $(Build.ArtifactStagingDirectory)/sbom jobs: - job: ${{ parameters.name }} @@ -261,4 +262,4 @@ jobs: targetPath: '$(Build.SourcesDirectory)\eng\common\BuildConfiguration' artifactName: 'BuildConfiguration' displayName: 'Publish build retry configuration' - continueOnError: true \ No newline at end of file + continueOnError: true diff --git a/eng/common/templates-official/steps/generate-sbom.yml b/eng/common/templates-official/steps/generate-sbom.yml index 1bf43bf807a..daf0957b68d 100644 --- a/eng/common/templates-official/steps/generate-sbom.yml +++ b/eng/common/templates-official/steps/generate-sbom.yml @@ -35,7 +35,7 @@ steps: PackageName: ${{ parameters.packageName }} BuildDropPath: ${{ parameters.buildDropPath }} PackageVersion: ${{ parameters.packageVersion }} - ManifestDirPath: ${{ parameters.manifestDirPath }} + ManifestDirPath: ${{ parameters.manifestDirPath }}/$(ARTIFACT_NAME) ${{ if ne(parameters.IgnoreDirectories, '') }}: AdditionalComponentDetectorArgs: '--IgnoreDirectories ${{ parameters.IgnoreDirectories }}' diff --git a/eng/common/templates-official/steps/send-to-helix.yml b/eng/common/templates-official/steps/send-to-helix.yml index 3eb7e2d5f84..22f2501307d 100644 --- a/eng/common/templates-official/steps/send-to-helix.yml +++ b/eng/common/templates-official/steps/send-to-helix.yml @@ -8,6 +8,7 @@ parameters: HelixConfiguration: '' # optional -- additional property attached to a job HelixPreCommands: '' # optional -- commands to run before Helix work item execution HelixPostCommands: '' # optional -- commands to run after Helix work item execution + HelixProjectArguments: '' # optional -- arguments passed to the build command for helixpublish.proj WorkItemDirectory: '' # optional -- a payload directory to zip up and send to Helix; requires WorkItemCommand; incompatible with XUnitProjects WorkItemCommand: '' # optional -- a command to execute on the payload; requires WorkItemDirectory; incompatible with XUnitProjects WorkItemTimeout: '' # optional -- a timeout in TimeSpan.Parse-ready value (e.g. 00:02:00) for the work item command; requires WorkItemDirectory; incompatible with XUnitProjects @@ -24,12 +25,12 @@ parameters: IsExternal: false # [DEPRECATED] -- doesn't do anything, jobs are external if HelixAccessToken is empty and Creator is set HelixBaseUri: 'https://helix.dot.net/' # optional -- sets the Helix API base URI (allows targeting https://helix.int-dot.net ) Creator: '' # optional -- if the build is external, use this to specify who is sending the job - DisplayNamePrefix: 'Run Tests' # optional -- rename the beginning of the displayName of the steps in AzDO + DisplayNamePrefix: 'Run Tests' # optional -- rename the beginning of the displayName of the steps in AzDO condition: succeeded() # optional -- condition for step to execute; defaults to succeeded() continueOnError: false # optional -- determines whether to continue the build if the step errors; defaults to false steps: - - powershell: 'powershell "$env:BUILD_SOURCESDIRECTORY\eng\common\msbuild.ps1 $env:BUILD_SOURCESDIRECTORY\eng\common\helixpublish.proj /restore /p:TreatWarningsAsErrors=false /t:Test /bl:$env:BUILD_SOURCESDIRECTORY\artifacts\log\$env:BuildConfig\SendToHelix.binlog"' + - powershell: 'powershell "$env:BUILD_SOURCESDIRECTORY\eng\common\msbuild.ps1 $env:BUILD_SOURCESDIRECTORY\eng\common\helixpublish.proj ${{ parameters.HelixProjectArguments }} /restore /p:TreatWarningsAsErrors=false /t:Test /bl:$env:BUILD_SOURCESDIRECTORY\artifacts\log\$env:BuildConfig\SendToHelix.binlog"' displayName: ${{ parameters.DisplayNamePrefix }} (Windows) env: BuildConfig: $(_BuildConfig) @@ -59,7 +60,7 @@ steps: SYSTEM_ACCESSTOKEN: $(System.AccessToken) condition: and(${{ parameters.condition }}, eq(variables['Agent.Os'], 'Windows_NT')) continueOnError: ${{ parameters.continueOnError }} - - script: $BUILD_SOURCESDIRECTORY/eng/common/msbuild.sh $BUILD_SOURCESDIRECTORY/eng/common/helixpublish.proj /restore /p:TreatWarningsAsErrors=false /t:Test /bl:$BUILD_SOURCESDIRECTORY/artifacts/log/$BuildConfig/SendToHelix.binlog + - script: $BUILD_SOURCESDIRECTORY/eng/common/msbuild.sh $BUILD_SOURCESDIRECTORY/eng/common/helixpublish.proj ${{ parameters.HelixProjectArguments }} /restore /p:TreatWarningsAsErrors=false /t:Test /bl:$BUILD_SOURCESDIRECTORY/artifacts/log/$BuildConfig/SendToHelix.binlog displayName: ${{ parameters.DisplayNamePrefix }} (Unix) env: BuildConfig: $(_BuildConfig) diff --git a/eng/common/templates/steps/send-to-helix.yml b/eng/common/templates/steps/send-to-helix.yml index 3eb7e2d5f84..22f2501307d 100644 --- a/eng/common/templates/steps/send-to-helix.yml +++ b/eng/common/templates/steps/send-to-helix.yml @@ -8,6 +8,7 @@ parameters: HelixConfiguration: '' # optional -- additional property attached to a job HelixPreCommands: '' # optional -- commands to run before Helix work item execution HelixPostCommands: '' # optional -- commands to run after Helix work item execution + HelixProjectArguments: '' # optional -- arguments passed to the build command for helixpublish.proj WorkItemDirectory: '' # optional -- a payload directory to zip up and send to Helix; requires WorkItemCommand; incompatible with XUnitProjects WorkItemCommand: '' # optional -- a command to execute on the payload; requires WorkItemDirectory; incompatible with XUnitProjects WorkItemTimeout: '' # optional -- a timeout in TimeSpan.Parse-ready value (e.g. 00:02:00) for the work item command; requires WorkItemDirectory; incompatible with XUnitProjects @@ -24,12 +25,12 @@ parameters: IsExternal: false # [DEPRECATED] -- doesn't do anything, jobs are external if HelixAccessToken is empty and Creator is set HelixBaseUri: 'https://helix.dot.net/' # optional -- sets the Helix API base URI (allows targeting https://helix.int-dot.net ) Creator: '' # optional -- if the build is external, use this to specify who is sending the job - DisplayNamePrefix: 'Run Tests' # optional -- rename the beginning of the displayName of the steps in AzDO + DisplayNamePrefix: 'Run Tests' # optional -- rename the beginning of the displayName of the steps in AzDO condition: succeeded() # optional -- condition for step to execute; defaults to succeeded() continueOnError: false # optional -- determines whether to continue the build if the step errors; defaults to false steps: - - powershell: 'powershell "$env:BUILD_SOURCESDIRECTORY\eng\common\msbuild.ps1 $env:BUILD_SOURCESDIRECTORY\eng\common\helixpublish.proj /restore /p:TreatWarningsAsErrors=false /t:Test /bl:$env:BUILD_SOURCESDIRECTORY\artifacts\log\$env:BuildConfig\SendToHelix.binlog"' + - powershell: 'powershell "$env:BUILD_SOURCESDIRECTORY\eng\common\msbuild.ps1 $env:BUILD_SOURCESDIRECTORY\eng\common\helixpublish.proj ${{ parameters.HelixProjectArguments }} /restore /p:TreatWarningsAsErrors=false /t:Test /bl:$env:BUILD_SOURCESDIRECTORY\artifacts\log\$env:BuildConfig\SendToHelix.binlog"' displayName: ${{ parameters.DisplayNamePrefix }} (Windows) env: BuildConfig: $(_BuildConfig) @@ -59,7 +60,7 @@ steps: SYSTEM_ACCESSTOKEN: $(System.AccessToken) condition: and(${{ parameters.condition }}, eq(variables['Agent.Os'], 'Windows_NT')) continueOnError: ${{ parameters.continueOnError }} - - script: $BUILD_SOURCESDIRECTORY/eng/common/msbuild.sh $BUILD_SOURCESDIRECTORY/eng/common/helixpublish.proj /restore /p:TreatWarningsAsErrors=false /t:Test /bl:$BUILD_SOURCESDIRECTORY/artifacts/log/$BuildConfig/SendToHelix.binlog + - script: $BUILD_SOURCESDIRECTORY/eng/common/msbuild.sh $BUILD_SOURCESDIRECTORY/eng/common/helixpublish.proj ${{ parameters.HelixProjectArguments }} /restore /p:TreatWarningsAsErrors=false /t:Test /bl:$BUILD_SOURCESDIRECTORY/artifacts/log/$BuildConfig/SendToHelix.binlog displayName: ${{ parameters.DisplayNamePrefix }} (Unix) env: BuildConfig: $(_BuildConfig) diff --git a/eng/common/tools.ps1 b/eng/common/tools.ps1 index a00577ed17a..82b2798ba30 100644 --- a/eng/common/tools.ps1 +++ b/eng/common/tools.ps1 @@ -42,7 +42,7 @@ [bool]$useInstalledDotNetCli = if (Test-Path variable:useInstalledDotNetCli) { $useInstalledDotNetCli } else { $true } # Enable repos to use a particular version of the on-line dotnet-install scripts. -# default URL: https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.ps1 +# default URL: https://builds.dotnet.microsoft.com/dotnet/scripts/v1/dotnet-install.ps1 [string]$dotnetInstallScriptVersion = if (Test-Path variable:dotnetInstallScriptVersion) { $dotnetInstallScriptVersion } else { 'v1' } # True to use global NuGet cache instead of restoring packages to repository-local directory. @@ -263,7 +263,7 @@ function GetDotNetInstallScript([string] $dotnetRoot) { if (!(Test-Path $installScript)) { Create-Directory $dotnetRoot $ProgressPreference = 'SilentlyContinue' # Don't display the console progress UI - it's a huge perf hit - $uri = "https://dotnet.microsoft.com/download/dotnet/scripts/$dotnetInstallScriptVersion/dotnet-install.ps1" + $uri = "https://builds.dotnet.microsoft.com/dotnet/scripts/$dotnetInstallScriptVersion/dotnet-install.ps1" Retry({ Write-Host "GET $uri" diff --git a/eng/common/tools.sh b/eng/common/tools.sh index b9b329ce37f..68db1543023 100755 --- a/eng/common/tools.sh +++ b/eng/common/tools.sh @@ -54,7 +54,7 @@ warn_as_error=${warn_as_error:-true} use_installed_dotnet_cli=${use_installed_dotnet_cli:-true} # Enable repos to use a particular version of the on-line dotnet-install scripts. -# default URL: https://dotnet.microsoft.com/download/dotnet/scripts/v1/dotnet-install.sh +# default URL: https://builds.dotnet.microsoft.com/dotnet/scripts/v1/dotnet-install.sh dotnetInstallScriptVersion=${dotnetInstallScriptVersion:-'v1'} # True to use global NuGet cache instead of restoring packages to repository-local directory. @@ -297,7 +297,7 @@ function with_retries { function GetDotNetInstallScript { local root=$1 local install_script="$root/dotnet-install.sh" - local install_script_url="https://dotnet.microsoft.com/download/dotnet/scripts/$dotnetInstallScriptVersion/dotnet-install.sh" + local install_script_url="https://builds.dotnet.microsoft.com/dotnet/scripts/$dotnetInstallScriptVersion/dotnet-install.sh" if [[ ! -a "$install_script" ]]; then mkdir -p "$root" diff --git a/global.json b/global.json index 7d86dc48289..9399761b366 100644 --- a/global.json +++ b/global.json @@ -3,13 +3,13 @@ "allowPrerelease": true }, "tools": { - "dotnet": "8.0.113", + "dotnet": "8.0.114", "vs": { "version": "17.8.0" }, "xcopy-msbuild": "17.8.5" }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "8.0.0-beta.25111.4" + "Microsoft.DotNet.Arcade.Sdk": "8.0.0-beta.25204.7" } } From 65a653424fe3f83acca71ce5083b0d038bc50ea3 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 10 Apr 2025 10:14:03 +0200 Subject: [PATCH 02/10] [vs17.8] Update dependencies from dotnet/arcade (#11711) * Update dependencies from https://github.com/dotnet/arcade build 20250408.7 Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.XUnitExtensions From Version 8.0.0-beta.25204.7 -> To Version 8.0.0-beta.25208.7 * Update VersionPrefix to 17.8.26 --------- Co-authored-by: dotnet-maestro[bot] Co-authored-by: Gang Wang --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 4 ++-- global.json | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 466378542d3..3a604bf66c8 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -62,9 +62,9 @@ - + https://github.com/dotnet/arcade - faa1471063676aca349da6b48c56dd0fc95aa869 + c7a36e53f91e41943746f97a8c183549364c5092 @@ -81,9 +81,9 @@ dc3d0694a4b31b8e27038431888cd4e8dd5b6cb6 - + https://github.com/dotnet/arcade - faa1471063676aca349da6b48c56dd0fc95aa869 + c7a36e53f91e41943746f97a8c183549364c5092 diff --git a/eng/Versions.props b/eng/Versions.props index c1366c4010f..367f906bc2a 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -2,7 +2,7 @@ - 17.8.25 + 17.8.26 release 17.7.0 15.1.0.0 @@ -49,7 +49,7 @@ Otherwise, this version of dotnet will not be installed and the build will error out. --> $([System.Text.RegularExpressions.Regex]::Match($([System.IO.File]::ReadAllText('$(MSBuildThisFileDirectory)..\global.json')), '"dotnet": "([^"]*)"').Groups.get_Item(1)) 4.2.0-1.22102.8 - 8.0.0-beta.25204.7 + 8.0.0-beta.25208.7 7.0.0 6.0.1 4.8.0-3.23465.5 diff --git a/global.json b/global.json index 9399761b366..e14af9bc997 100644 --- a/global.json +++ b/global.json @@ -3,13 +3,13 @@ "allowPrerelease": true }, "tools": { - "dotnet": "8.0.114", + "dotnet": "8.0.115", "vs": { "version": "17.8.0" }, "xcopy-msbuild": "17.8.5" }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "8.0.0-beta.25204.7" + "Microsoft.DotNet.Arcade.Sdk": "8.0.0-beta.25208.7" } } From 3ab07f0cf43d15c3d05da60fb0ff44b49799ed5e Mon Sep 17 00:00:00 2001 From: Mariana Dematte Date: Thu, 10 Apr 2025 20:38:10 +0000 Subject: [PATCH 03/10] [vs17.8] DownloadFile should not rely on the response headers DownloadFile should not rely on the remote server response headers. Unless the DestinationFileName task parameter is specified - let's just fallback to the request URI - which is as well the publicly documented behavior. --- eng/Versions.props | 2 +- src/Tasks/DownloadFile.cs | 17 ++++++++--------- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/eng/Versions.props b/eng/Versions.props index 367f906bc2a..3a038bf1043 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -2,7 +2,7 @@ - 17.8.26 + 17.8.27 release 17.7.0 15.1.0.0 diff --git a/src/Tasks/DownloadFile.cs b/src/Tasks/DownloadFile.cs index efe54f514ca..b606f5c5284 100644 --- a/src/Tasks/DownloadFile.cs +++ b/src/Tasks/DownloadFile.cs @@ -168,7 +168,7 @@ private async Task DownloadAsync(Uri uri, CancellationToken cancellationToken) #endif } - if (!TryGetFileName(response, out string filename)) + if (!TryGetFileName(uri, out string filename)) { Log.LogErrorWithCodeFromResources("DownloadFile.ErrorUnknownFileName", SourceUrl, nameof(DestinationFileName)); return; @@ -306,25 +306,24 @@ private static bool IsRetriable(Exception exception, out Exception actualExcepti /// /// Attempts to get the file name to use when downloading the file. /// - /// The with information about the response. + /// The uri we sent request to. /// Receives the name of the file. /// true if a file name could be determined, otherwise false. - private bool TryGetFileName(HttpResponseMessage response, out string filename) + private bool TryGetFileName(Uri requestUri, out string filename) { - if (response == null) + if (requestUri == null) { - throw new ArgumentNullException(nameof(response)); + throw new ArgumentNullException(nameof(requestUri)); } // Not all URIs contain a file name so users will have to specify one // Example: http://www.download.com/file/1/ - filename = !String.IsNullOrWhiteSpace(DestinationFileName?.ItemSpec) + filename = !string.IsNullOrWhiteSpace(DestinationFileName?.ItemSpec) ? DestinationFileName.ItemSpec // Get the file name from what the user specified - : response.Content?.Headers?.ContentDisposition?.FileName // Attempt to get the file name from the content-disposition header value - ?? Path.GetFileName(response.RequestMessage.RequestUri.LocalPath); // Otherwise attempt to get a file name from the URI + : Path.GetFileName(requestUri.LocalPath); // Otherwise attempt to get a file name from the URI - return !String.IsNullOrWhiteSpace(filename); + return !string.IsNullOrWhiteSpace(filename); } #if !NET6_0_OR_GREATER From 0479d9865d9e40be2cdc4dbb5237dffc1eda5a86 Mon Sep 17 00:00:00 2001 From: Yuliia Kovalova Date: Wed, 16 Apr 2025 17:00:46 +0000 Subject: [PATCH 04/10] [vs17.8] Revert to GA package references revert 10725 to unblock VS insertions by matching 17.8 VS versions. --- eng/Packages.props | 1 - eng/SourceBuildPrebuiltBaseline.xml | 5 +---- eng/Version.Details.xml | 20 ++++++++------------ eng/Versions.props | 9 ++++----- src/MSBuild/app.amd64.config | 22 +++++++++++----------- src/MSBuild/app.config | 14 +++++--------- 6 files changed, 29 insertions(+), 42 deletions(-) diff --git a/eng/Packages.props b/eng/Packages.props index 0b85f2c0dcd..ac8df77f629 100644 --- a/eng/Packages.props +++ b/eng/Packages.props @@ -19,7 +19,6 @@ - diff --git a/eng/SourceBuildPrebuiltBaseline.xml b/eng/SourceBuildPrebuiltBaseline.xml index c27e7fdbc16..73a2dd31105 100644 --- a/eng/SourceBuildPrebuiltBaseline.xml +++ b/eng/SourceBuildPrebuiltBaseline.xml @@ -4,16 +4,13 @@ - - - - + diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 3a604bf66c8..40db7faeb74 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -14,9 +14,9 @@ - - https://dev.azure.com/dnceng/internal/_git/dotnet-runtime - 5535e31a712343a63f5d7d796cd874e563e5ac14 + + https://github.com/dotnet/runtime + d099f075e45d2aa6007a22b71b45a08758559f80 @@ -52,17 +52,13 @@ https://github.com/dotnet/runtime d099f075e45d2aa6007a22b71b45a08758559f80 - - https://dev.azure.com/dnceng/internal/_git/dotnet-runtime - 81cabf2857a01351e5ab578947c7403a5b128ad1 - - - https://dev.azure.com/dnceng/internal/_git/dotnet-runtime - 2aade6beb02ea367fd97c4070a4198802fe61c03 + + https://github.com/dotnet/runtime + 5b20af47d99620150c53eaf5db8636fdf730b126 - + https://github.com/dotnet/arcade c7a36e53f91e41943746f97a8c183549364c5092 @@ -86,4 +82,4 @@ c7a36e53f91e41943746f97a8c183549364c5092 - + \ No newline at end of file diff --git a/eng/Versions.props b/eng/Versions.props index 3a038bf1043..e9752d9f974 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -2,7 +2,7 @@ - 17.8.27 + 17.8.28 release 17.7.0 15.1.0.0 @@ -27,9 +27,8 @@ - 8.0.0 + 7.0.0 7.0.0 - 8.0.1 @@ -68,8 +68,8 @@ - - + + @@ -94,8 +94,8 @@ - - + + @@ -129,13 +129,13 @@ - - + + - - + + @@ -229,4 +229,4 @@ - + \ No newline at end of file diff --git a/src/MSBuild/app.config b/src/MSBuild/app.config index fcf5a7a524d..d8320fd2a47 100644 --- a/src/MSBuild/app.config +++ b/src/MSBuild/app.config @@ -41,11 +41,7 @@ - - - - - + @@ -62,7 +58,7 @@ - + @@ -90,11 +86,11 @@ - + - + @@ -182,4 +178,4 @@ - + \ No newline at end of file From a3cc3e36f30748031da4654e460055cdcb6bde7c Mon Sep 17 00:00:00 2001 From: Mariana Dematte Date: Tue, 22 Apr 2025 16:25:21 +0000 Subject: [PATCH 05/10] Merged PR 630435: [VS17.8] Version bump We're doing a version bump so all branches have up-to-date opt-prof runs. [Opt-prof version](https://dev.azure.com/devdiv/_apps/hub/ms-vscs-artifact.build-tasks.drop-hub-group-explorer-hub?name=OptimizationData/DotNet-msbuild-Trusted/internal/vs17.8/20250416.5/11417138/1) ---- #### AI description (iteration 1) #### PR Classification Version update. #### PR Summary This pull request updates the version prefix in the project configuration. - `eng/Versions.props`: Updated `` from `17.8.28` to `17.8.29`. --- eng/Versions.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/Versions.props b/eng/Versions.props index e9752d9f974..89e6542336a 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -2,7 +2,7 @@ - 17.8.28 + 17.8.29 release 17.7.0 15.1.0.0 From 3b68347b9aee5913c416edb7b534ec9c9bfc9106 Mon Sep 17 00:00:00 2001 From: Surayya Huseyn Zada Date: Fri, 23 May 2025 14:33:35 +0200 Subject: [PATCH 06/10] disable bootstrap --- eng/cibuild_bootstrapped_msbuild.ps1 | 58 +--------------------------- eng/cibuild_bootstrapped_msbuild.sh | 8 +--- 2 files changed, 2 insertions(+), 64 deletions(-) diff --git a/eng/cibuild_bootstrapped_msbuild.ps1 b/eng/cibuild_bootstrapped_msbuild.ps1 index 46d471d042b..2c4bb6601a9 100644 --- a/eng/cibuild_bootstrapped_msbuild.ps1 +++ b/eng/cibuild_bootstrapped_msbuild.ps1 @@ -64,67 +64,11 @@ try { if ($buildStage1) { - & $PSScriptRoot\Common\Build.ps1 -restore -build -ci -msbuildEngine $msbuildEngine /p:CreateBootstrap=true @properties + & $PSScriptRoot\Common\Build.ps1 -restore -build -test -ci -msbuildEngine $msbuildEngine /p:CreateBootstrap=true @properties } KillProcessesFromRepo - $bootstrapRoot = Join-Path $Stage1BinDir "bootstrap" - - # we need to do this to guarantee we have/know where dotnet.exe is installed - $dotnetToolPath = InitializeDotNetCli $true - $dotnetExePath = Join-Path $dotnetToolPath "dotnet.exe" - - if ($msbuildEngine -eq 'vs') - { - $buildToolPath = Join-Path $bootstrapRoot "net472\MSBuild\Current\Bin\MSBuild.exe" - $buildToolCommand = ""; - $buildToolFramework = "net472" - - if ($configuration -eq "Debug-MONO" -or $configuration -eq "Release-MONO") - { - # Copy MSBuild.dll to MSBuild.exe so we can run it without a host - $sourceDll = Join-Path $bootstrapRoot "net472\MSBuild\Current\Bin\MSBuild.dll" - Copy-Item -Path $sourceDll -Destination $msbuildToUse - } - } - else - { - $buildToolPath = $dotnetExePath - $buildToolCommand = Join-Path $bootstrapRoot "net8.0\MSBuild\MSBuild.dll" - $buildToolFramework = "net8.0" - } - - # Use separate artifacts folder for stage 2 - # $env:ArtifactsDir = Join-Path $ArtifactsDir "2\" - - & $dotnetExePath build-server shutdown - - if ($buildStage1) - { - if (Test-Path $Stage1Dir) - { - Remove-Item -Force -Recurse $Stage1Dir - } - - Move-Item -Path $ArtifactsDir -Destination $Stage1Dir -Force - } - - $buildTool = @{ Path = $buildToolPath; Command = $buildToolCommand; Tool = $msbuildEngine; Framework = $buildToolFramework } - $global:_BuildTool = $buildTool - - # Ensure that debug bits fail fast, rather than hanging waiting for a debugger attach. - $env:MSBUILDDONOTLAUNCHDEBUGGER="true" - - # Opt into performance logging. https://github.com/dotnet/msbuild/issues/5900 - $env:DOTNET_PERFLOG_DIR=$PerfLogDir - - # When using bootstrapped MSBuild: - # - Turn off node reuse (so that bootstrapped MSBuild processes don't stay running and lock files) - # - Do run tests - # - Don't try to create a bootstrap deployment - & $PSScriptRoot\Common\Build.ps1 -restore -build -test -ci /p:CreateBootstrap=false /nr:false @properties - exit $lastExitCode } catch { diff --git a/eng/cibuild_bootstrapped_msbuild.sh b/eng/cibuild_bootstrapped_msbuild.sh index ceb2b343329..9d4b441ed3c 100755 --- a/eng/cibuild_bootstrapped_msbuild.sh +++ b/eng/cibuild_bootstrapped_msbuild.sh @@ -55,7 +55,7 @@ fi if [[ $build_stage1 == true ]]; then - /bin/bash "$ScriptRoot/common/build.sh" --restore --build --ci --configuration $configuration /p:CreateBootstrap=true $properties $extra_properties || exit $? + /bin/bash "$ScriptRoot/common/build.sh" --restore --build --ci --test --configuration $configuration /p:CreateBootstrap=false $properties $extra_properties || exit $? fi bootstrapRoot="$Stage1Dir/bin/bootstrap" @@ -93,9 +93,3 @@ export DOTNET_PERFLOG_DIR=$PerfLogDir # Prior to 3.0, the Csc task uses this environment variable to decide whether to run # a CLI host or directly execute the compiler. export DOTNET_HOST_PATH="$_InitializeDotNetCli/dotnet" - -# When using bootstrapped MSBuild: -# - Turn off node reuse (so that bootstrapped MSBuild processes don't stay running and lock files) -# - Do run tests -# - Don't try to create a bootstrap deployment -. "$ScriptRoot/common/build.sh" --restore --build --test --ci --nodereuse false --configuration $configuration /p:CreateBootstrap=false $properties $extra_properties From 4a6df2dd8a55d72fd6ac3d57e04bbbfb9cdfeac9 Mon Sep 17 00:00:00 2001 From: Surayya Huseyn Zada Date: Fri, 23 May 2025 17:22:50 +0200 Subject: [PATCH 07/10] skip failing tests after disabling bootstrap --- src/Build.UnitTests/BackEnd/MSBuild_Tests.cs | 2 +- src/Build.UnitTests/EscapingInProjects_Tests.cs | 16 ++++++++-------- src/Tasks.UnitTests/MSBuild_Tests.cs | 2 +- .../GenerateResourceOutOfProc_Tests.cs | 4 ++-- .../ResourceHandling/GenerateResource_Tests.cs | 4 ++-- 5 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/Build.UnitTests/BackEnd/MSBuild_Tests.cs b/src/Build.UnitTests/BackEnd/MSBuild_Tests.cs index 9b0a1eae9bb..96e6ec8f609 100644 --- a/src/Build.UnitTests/BackEnd/MSBuild_Tests.cs +++ b/src/Build.UnitTests/BackEnd/MSBuild_Tests.cs @@ -412,7 +412,7 @@ public void LogErrorWhenBuildingVCProj() /// However, it's a situation where the project author doesn't have control over the /// property value and so he can't escape it himself. /// - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] public void PropertyOverridesContainSemicolon() { ObjectModelHelpers.DeleteTempProjectDirectory(); diff --git a/src/Build.UnitTests/EscapingInProjects_Tests.cs b/src/Build.UnitTests/EscapingInProjects_Tests.cs index 3df737c387a..cd7406fa9e3 100644 --- a/src/Build.UnitTests/EscapingInProjects_Tests.cs +++ b/src/Build.UnitTests/EscapingInProjects_Tests.cs @@ -957,7 +957,7 @@ public FullProjectsUsingMicrosoftCommonTargets(ITestOutputHelper output) /// /// ESCAPING: Escaping in conditionals is broken. /// - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] public void SemicolonInConfiguration() { ObjectModelHelpers.DeleteTempProjectDirectory(); @@ -1017,7 +1017,7 @@ public class Class1 /// /// ESCAPING: Escaping in conditionals is broken. /// - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] public void SemicolonInConfiguration_UsingTaskHost() { string originalOverrideTaskHostVariable = Environment.GetEnvironmentVariable("MSBUILDFORCEALLTASKSOUTOFPROC"); @@ -1087,7 +1087,7 @@ public class Class1 /// /// ESCAPING: CopyBuildTarget target fails if the output assembly name contains a semicolon or single-quote /// - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] public void SemicolonInAssemblyName() { ObjectModelHelpers.DeleteTempProjectDirectory(); @@ -1142,7 +1142,7 @@ public class Class1 /// /// ESCAPING: CopyBuildTarget target fails if the output assembly name contains a semicolon or single-quote /// - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] public void SemicolonInAssemblyName_UsingTaskHost() { string originalOverrideTaskHostVariable = Environment.GetEnvironmentVariable("MSBUILDFORCEALLTASKSOUTOFPROC"); @@ -1207,7 +1207,7 @@ public class Class1 /// /// ESCAPING: Conversion Issue: Properties with $(xxx) as literals are not being converted correctly /// - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] public void DollarSignInAssemblyName() { ObjectModelHelpers.DeleteTempProjectDirectory(); @@ -1262,7 +1262,7 @@ public class Class1 /// /// ESCAPING: Conversion Issue: Properties with $(xxx) as literals are not being converted correctly /// - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] public void DollarSignInAssemblyName_UsingTaskHost() { string originalOverrideTaskHostVariable = Environment.GetEnvironmentVariable("MSBUILDFORCEALLTASKSOUTOFPROC"); @@ -1327,7 +1327,7 @@ public class Class1 /// /// This is the case when one of the source code files in the project has a filename containing a semicolon. /// - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] public void SemicolonInSourceCodeFilename() { ObjectModelHelpers.DeleteTempProjectDirectory(); @@ -1382,7 +1382,7 @@ public class Class1 /// /// This is the case when one of the source code files in the project has a filename containing a semicolon. /// - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] public void SemicolonInSourceCodeFilename_UsingTaskHost() { string originalOverrideTaskHostVariable = Environment.GetEnvironmentVariable("MSBUILDFORCEALLTASKSOUTOFPROC"); diff --git a/src/Tasks.UnitTests/MSBuild_Tests.cs b/src/Tasks.UnitTests/MSBuild_Tests.cs index f8dcf89bbfe..78e99d99f1e 100644 --- a/src/Tasks.UnitTests/MSBuild_Tests.cs +++ b/src/Tasks.UnitTests/MSBuild_Tests.cs @@ -389,7 +389,7 @@ public void LogErrorWhenBuildingVCProj() #if RUNTIME_TYPE_NETCORE [Fact(Skip = "https://github.com/dotnet/msbuild/issues/259")] #else - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] #endif public void PropertyOverridesContainSemicolon() { diff --git a/src/Tasks.UnitTests/ResourceHandling/GenerateResourceOutOfProc_Tests.cs b/src/Tasks.UnitTests/ResourceHandling/GenerateResourceOutOfProc_Tests.cs index 4172d013c78..6ccb9f0854f 100644 --- a/src/Tasks.UnitTests/ResourceHandling/GenerateResourceOutOfProc_Tests.cs +++ b/src/Tasks.UnitTests/ResourceHandling/GenerateResourceOutOfProc_Tests.cs @@ -2566,7 +2566,7 @@ public References(ITestOutputHelper output) _output = output; } - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] // FIXME: mono: looks for csc.exe // https://github.com/dotnet/msbuild/issues/677 public void DontLockP2PReferenceWhenResolvingSystemTypes() @@ -2743,7 +2743,7 @@ public class Class1 /// Assembly.LoadFile on that relative path, which fails (LoadFile requires an /// absolute path). The fix was to use Assembly.LoadFrom instead. /// - [Fact] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] // FIXME: mono: looks for csc.exe // https://github.com/dotnet/msbuild/issues/677 public void ReferencedAssemblySpecifiedUsingRelativePath() diff --git a/src/Tasks.UnitTests/ResourceHandling/GenerateResource_Tests.cs b/src/Tasks.UnitTests/ResourceHandling/GenerateResource_Tests.cs index f704ef169a1..68a707586e2 100644 --- a/src/Tasks.UnitTests/ResourceHandling/GenerateResource_Tests.cs +++ b/src/Tasks.UnitTests/ResourceHandling/GenerateResource_Tests.cs @@ -3010,7 +3010,7 @@ public References(ITestOutputHelper output) _output = output; } - [WindowsFullFrameworkOnlyFact(additionalMessage: "Linked resources not supported on Core: https://github.com/dotnet/msbuild/issues/4094")] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] public void DontLockP2PReferenceWhenResolvingSystemTypes() { // This WriteLine is a hack. On a slow machine, the Tasks unittest fails because remoting @@ -3186,7 +3186,7 @@ public class Class1 /// which fails (LoadFile requires an absolute path). The fix was to use /// Assembly.LoadFrom instead. /// - [WindowsFullFrameworkOnlyFact(additionalMessage: "Linked resources not supported on Core: https://github.com/dotnet/msbuild/issues/4094")] + [Fact(Skip = "https://github.com/dotnet/msbuild/issues/11888")] public void ReferencedAssemblySpecifiedUsingRelativePath() { // This WriteLine is a hack. On a slow machine, the Tasks unittest fails because remoting From b1d27f0af27aae15ddfb2066307f22aada03c7ca Mon Sep 17 00:00:00 2001 From: Surayya Huseyn Zada Date: Fri, 23 May 2025 17:22:59 +0200 Subject: [PATCH 08/10] update ubuntu image --- eng/common/templates-official/job/source-build.yml | 2 +- eng/common/templates/job/source-build.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/eng/common/templates-official/job/source-build.yml b/eng/common/templates-official/job/source-build.yml index f983033bb02..ae8f0c8d014 100644 --- a/eng/common/templates-official/job/source-build.yml +++ b/eng/common/templates-official/job/source-build.yml @@ -54,7 +54,7 @@ jobs: pool: ${{ if eq(variables['System.TeamProject'], 'public') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore-Svc-Public' ), False, 'NetCore-Public')] - demands: ImageOverride -equals Build.Ubuntu.1804.Amd64.Open + demands: ImageOverride -equals Build.Ubuntu.2004.Amd64.Open ${{ if eq(variables['System.TeamProject'], 'internal') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore1ESPool-Svc-Internal'), False, 'NetCore1ESPool-Internal')] diff --git a/eng/common/templates/job/source-build.yml b/eng/common/templates/job/source-build.yml index c0ff472b697..1c9de37a095 100644 --- a/eng/common/templates/job/source-build.yml +++ b/eng/common/templates/job/source-build.yml @@ -54,11 +54,11 @@ jobs: pool: ${{ if eq(variables['System.TeamProject'], 'public') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore-Svc-Public' ), False, 'NetCore-Public')] - demands: ImageOverride -equals Build.Ubuntu.1804.Amd64.Open + demands: ImageOverride -equals Build.Ubuntu.2004.Amd64.Open ${{ if eq(variables['System.TeamProject'], 'internal') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore1ESPool-Svc-Internal'), False, 'NetCore1ESPool-Internal')] - demands: ImageOverride -equals Build.Ubuntu.1804.Amd64 + demands: ImageOverride -equals Build.Ubuntu.2004.Amd64 ${{ if ne(parameters.platform.pool, '') }}: pool: ${{ parameters.platform.pool }} From d832838517d47acce1d644b872ae7599c655b4e2 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Wed, 28 May 2025 09:38:00 +0800 Subject: [PATCH 09/10] [vs17.8] Update dependencies from dotnet/arcade (#11746) * Update dependencies from https://github.com/dotnet/arcade build 20250414.7 Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.XUnitExtensions From Version 8.0.0-beta.25208.7 -> To Version 8.0.0-beta.25214.7 * Update VersionPrefix to 17.8.27 * Update dependencies from https://github.com/dotnet/arcade build 20250425.5 Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.XUnitExtensions From Version 8.0.0-beta.25208.7 -> To Version 8.0.0-beta.25225.5 * Update dependencies from https://github.com/dotnet/arcade build 20250430.1 Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.XUnitExtensions From Version 8.0.0-beta.25208.7 -> To Version 8.0.0-beta.25230.1 * Update dependencies from https://github.com/dotnet/arcade build 20250513.4 Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.XUnitExtensions From Version 8.0.0-beta.25208.7 -> To Version 8.0.0-beta.25263.4 * Update dependencies from https://github.com/dotnet/arcade build 20250514.2 Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.XUnitExtensions From Version 8.0.0-beta.25208.7 -> To Version 8.0.0-beta.25264.2 * bump VersionPrefix to 17.8.30 --------- Co-authored-by: dotnet-maestro[bot] Co-authored-by: Gang Wang Co-authored-by: Surayya Huseyn Zada <114938397+surayya-MS@users.noreply.github.com> Co-authored-by: Surayya Huseyn Zada --- eng/Version.Details.xml | 8 ++++---- eng/Versions.props | 4 ++-- eng/common/sdl/packages.config | 2 +- eng/common/templates-official/job/source-build.yml | 2 +- eng/common/templates-official/job/source-index-stage1.yml | 4 ++-- eng/common/templates-official/jobs/source-build.yml | 2 +- eng/common/templates/job/source-build.yml | 4 ++-- eng/common/templates/job/source-index-stage1.yml | 4 ++-- eng/common/templates/jobs/source-build.yml | 2 +- global.json | 4 ++-- 10 files changed, 18 insertions(+), 18 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 40db7faeb74..70ef3bdd70d 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -58,9 +58,9 @@ - + https://github.com/dotnet/arcade - c7a36e53f91e41943746f97a8c183549364c5092 + 983d15077d88cfed26837e40e8f984fdee5d1715 @@ -77,9 +77,9 @@ dc3d0694a4b31b8e27038431888cd4e8dd5b6cb6 - + https://github.com/dotnet/arcade - c7a36e53f91e41943746f97a8c183549364c5092 + 983d15077d88cfed26837e40e8f984fdee5d1715 \ No newline at end of file diff --git a/eng/Versions.props b/eng/Versions.props index 89e6542336a..8980db64ffa 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -2,7 +2,7 @@ - 17.8.29 + 17.8.30 release 17.7.0 15.1.0.0 @@ -48,7 +48,7 @@ Otherwise, this version of dotnet will not be installed and the build will error out. --> $([System.Text.RegularExpressions.Regex]::Match($([System.IO.File]::ReadAllText('$(MSBuildThisFileDirectory)..\global.json')), '"dotnet": "([^"]*)"').Groups.get_Item(1)) 4.2.0-1.22102.8 - 8.0.0-beta.25208.7 + 8.0.0-beta.25264.2 7.0.0 6.0.0 4.8.0-3.23465.5 diff --git a/eng/common/sdl/packages.config b/eng/common/sdl/packages.config index 4585cfd6bba..e5f543ea68c 100644 --- a/eng/common/sdl/packages.config +++ b/eng/common/sdl/packages.config @@ -1,4 +1,4 @@ - + diff --git a/eng/common/templates-official/job/source-build.yml b/eng/common/templates-official/job/source-build.yml index ae8f0c8d014..4217d6d8b14 100644 --- a/eng/common/templates-official/job/source-build.yml +++ b/eng/common/templates-official/job/source-build.yml @@ -54,7 +54,7 @@ jobs: pool: ${{ if eq(variables['System.TeamProject'], 'public') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore-Svc-Public' ), False, 'NetCore-Public')] - demands: ImageOverride -equals Build.Ubuntu.2004.Amd64.Open + demands: ImageOverride -equals Build.Ubuntu.2204.Amd64.Open ${{ if eq(variables['System.TeamProject'], 'internal') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore1ESPool-Svc-Internal'), False, 'NetCore1ESPool-Internal')] diff --git a/eng/common/templates-official/job/source-index-stage1.yml b/eng/common/templates-official/job/source-index-stage1.yml index 60dfb6b2d1c..fb632b71a25 100644 --- a/eng/common/templates-official/job/source-index-stage1.yml +++ b/eng/common/templates-official/job/source-index-stage1.yml @@ -1,7 +1,7 @@ parameters: runAsPublic: false - sourceIndexUploadPackageVersion: 2.0.0-20240502.12 - sourceIndexProcessBinlogPackageVersion: 1.0.1-20240129.2 + sourceIndexUploadPackageVersion: 2.0.0-20250425.2 + sourceIndexProcessBinlogPackageVersion: 1.0.1-20250425.2 sourceIndexPackageSource: https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json sourceIndexBuildCommand: powershell -NoLogo -NoProfile -ExecutionPolicy Bypass -Command "eng/common/build.ps1 -restore -build -binarylog -ci" preSteps: [] diff --git a/eng/common/templates-official/jobs/source-build.yml b/eng/common/templates-official/jobs/source-build.yml index 5cf6a269c0b..b9247be1547 100644 --- a/eng/common/templates-official/jobs/source-build.yml +++ b/eng/common/templates-official/jobs/source-build.yml @@ -14,7 +14,7 @@ parameters: # This is the default platform provided by Arcade, intended for use by a managed-only repo. defaultManagedPlatform: name: 'Managed' - container: 'mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream8' + container: 'mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream-9-amd64' # Defines the platforms on which to run build jobs. One job is created for each platform, and the # object in this array is sent to the job template as 'platform'. If no platforms are specified, diff --git a/eng/common/templates/job/source-build.yml b/eng/common/templates/job/source-build.yml index 1c9de37a095..c48f95d93d9 100644 --- a/eng/common/templates/job/source-build.yml +++ b/eng/common/templates/job/source-build.yml @@ -54,11 +54,11 @@ jobs: pool: ${{ if eq(variables['System.TeamProject'], 'public') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore-Svc-Public' ), False, 'NetCore-Public')] - demands: ImageOverride -equals Build.Ubuntu.2004.Amd64.Open + demands: ImageOverride -equals Build.Ubuntu.2204.Amd64.Open ${{ if eq(variables['System.TeamProject'], 'internal') }}: name: $[replace(replace(eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true'), True, 'NetCore1ESPool-Svc-Internal'), False, 'NetCore1ESPool-Internal')] - demands: ImageOverride -equals Build.Ubuntu.2004.Amd64 + demands: ImageOverride -equals Build.Ubuntu.2204.Amd64 ${{ if ne(parameters.platform.pool, '') }}: pool: ${{ parameters.platform.pool }} diff --git a/eng/common/templates/job/source-index-stage1.yml b/eng/common/templates/job/source-index-stage1.yml index 0b6bb89dc78..8538f44bab2 100644 --- a/eng/common/templates/job/source-index-stage1.yml +++ b/eng/common/templates/job/source-index-stage1.yml @@ -1,7 +1,7 @@ parameters: runAsPublic: false - sourceIndexUploadPackageVersion: 2.0.0-20240502.12 - sourceIndexProcessBinlogPackageVersion: 1.0.1-20240129.2 + sourceIndexUploadPackageVersion: 2.0.0-20250425.2 + sourceIndexProcessBinlogPackageVersion: 1.0.1-20250425.2 sourceIndexPackageSource: https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json sourceIndexBuildCommand: powershell -NoLogo -NoProfile -ExecutionPolicy Bypass -Command "eng/common/build.ps1 -restore -build -binarylog -ci" preSteps: [] diff --git a/eng/common/templates/jobs/source-build.yml b/eng/common/templates/jobs/source-build.yml index 5f46bfa895c..3ec99710810 100644 --- a/eng/common/templates/jobs/source-build.yml +++ b/eng/common/templates/jobs/source-build.yml @@ -14,7 +14,7 @@ parameters: # This is the default platform provided by Arcade, intended for use by a managed-only repo. defaultManagedPlatform: name: 'Managed' - container: 'mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream8' + container: 'mcr.microsoft.com/dotnet-buildtools/prereqs:centos-stream-9-amd64' # Defines the platforms on which to run build jobs. One job is created for each platform, and the # object in this array is sent to the job template as 'platform'. If no platforms are specified, diff --git a/global.json b/global.json index e14af9bc997..8a261f30d42 100644 --- a/global.json +++ b/global.json @@ -3,13 +3,13 @@ "allowPrerelease": true }, "tools": { - "dotnet": "8.0.115", + "dotnet": "8.0.116", "vs": { "version": "17.8.0" }, "xcopy-msbuild": "17.8.5" }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "8.0.0-beta.25208.7" + "Microsoft.DotNet.Arcade.Sdk": "8.0.0-beta.25264.2" } } From 04101d36a9cc00d31e8ce10c3e8eea2a34067a8e Mon Sep 17 00:00:00 2001 From: Surayya Huseyn Zada Date: Fri, 30 May 2025 12:49:36 +0200 Subject: [PATCH 10/10] bump VersionPrefix to 17.10.31 --- eng/Versions.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/Versions.props b/eng/Versions.props index 1a2e2d019ea..869b58e4706 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -2,7 +2,7 @@ - 17.10.30 + 17.10.31 release 17.8.3 15.1.0.0