Skip to content

[main] Update dependencies from dotnet/arcade #18643

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

Draft
wants to merge 16 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
16 commits
Select commit Hold shift + click to select a range
b0af900
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] May 31, 2025
515a6b2
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] Jun 3, 2025
d0f601b
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] Jun 5, 2025
61912dc
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] Jun 6, 2025
155dcb6
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] Jun 10, 2025
57809cc
Change how .NET is installed for jobs without build script
T-Gro Jun 10, 2025
4a9c7e2
Merge branch 'main' into darc-main-c06c7d50-b27e-4d47-9443-5938e4210ad3
T-Gro Jun 10, 2025
a292f3d
Update azure-pipelines-PR.yml
T-Gro Jun 10, 2025
9c4680c
Update azure-pipelines-PR.yml
T-Gro Jun 10, 2025
ab79d56
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] Jun 11, 2025
e4ac538
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] Jun 12, 2025
7ca9195
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] Jun 13, 2025
60b6152
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] Jun 14, 2025
cd15c6e
Update dependencies from https://github.com/dotnet/arcade build 20250…
dotnet-maestro[bot] Jun 17, 2025
b36f226
Update azure-pipelines-PR.yml
T-Gro Jun 17, 2025
ca52a74
Apply path feature of global.json
T-Gro Jun 19, 2025
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
76 changes: 12 additions & 64 deletions azure-pipelines-PR.yml
Original file line number Diff line number Diff line change
Expand Up @@ -113,14 +113,16 @@ stages:
steps:
- checkout: self
clean: true
# We first download a publicly available .NET SDK. That one has support for `path` in global.json. dotnet.cmd script can then download a version which is not yet shipped, but matches global.json.
- task: UseDotNet@2
displayName: install SDK
inputs:
packageType: sdk
useGlobalJson: true
version: '10.x'
includePreviewVersions: true
workingDirectory: $(Build.SourcesDirectory)
installationPath: $(Build.SourcesDirectory)/.dotnet
- script: .\eng\common\dotnet.cmd
- script: .\eng\test-determinism.cmd -configuration Debug
env:
FSHARP_EXPERIMENTAL_FEATURES: $(_experimental_flag)
Expand All @@ -142,23 +144,16 @@ stages:
clean: true
- script: dotnet --list-sdks
displayName: Report dotnet SDK versions
- task: UseDotNet@2
displayName: install SDK
inputs:
packageType: sdk
useGlobalJson: true
includePreviewVersions: true
workingDirectory: $(Build.SourcesDirectory)
installationPath: $(Agent.ToolsDirectory)/dotnet
- script: dotnet tool restore

- script: ./eng/common/dotnet.sh tool restore
env:
DOTNET_ROLL_FORWARD_TO_PRERELEASE: 1
displayName: Install tools
- script: dotnet fsi src/Compiler/FSCompCheck.fsx
- script: ./eng/common/dotnet.sh fsi src/Compiler/FSCompCheck.fsx
env:
DOTNET_ROLL_FORWARD_TO_PRERELEASE: 1
displayName: Check error code sorting in src/Compiler/FSComp.txt
- script: dotnet fantomas . --check
- script: ./eng/common/dotnet.sh fantomas . --check
env:
DOTNET_ROLL_FORWARD_TO_PRERELEASE: 1
displayName: Check code formatting (run 'dotnet fantomas .' to fix)
Expand All @@ -181,14 +176,7 @@ stages:
steps:
- checkout: self
clean: true
- task: UseDotNet@2
displayName: install SDK
inputs:
packageType: sdk
useGlobalJson: true
includePreviewVersions: true
workingDirectory: $(Build.SourcesDirectory)
installationPath: $(Agent.ToolsDirectory)/dotnet
- script: ./Build.sh --skipbuild
- pwsh: ./check.ps1 -project $(_project)
workingDirectory: $(Build.SourcesDirectory)/buildtools/checkpackages
env:
Expand Down Expand Up @@ -769,15 +757,7 @@ stages:
clean: true
- script: dotnet --list-sdks
displayName: Report dotnet SDK versions
- task: UseDotNet@2
displayName: install SDK
inputs:
packageType: sdk
useGlobalJson: true
includePreviewVersions: true
workingDirectory: $(Build.SourcesDirectory)
installationPath: $(Agent.ToolsDirectory)/dotnet
- script: dotnet build .\FSharp.Compiler.Service.sln /bl:\"artifacts/log/$(_BuildConfig)/ServiceRegularBuild.binlog\"
- script: .\eng\common\dotnet.cmd build .\FSharp.Compiler.Service.sln /bl:\"artifacts/log/$(_BuildConfig)/ServiceRegularBuild.binlog\"
workingDirectory: $(Build.SourcesDirectory)
displayName: Regular rebuild of FSharp.Compiler.Service.sln
continueOnError: false
Expand All @@ -795,15 +775,7 @@ stages:
clean: true
- script: dotnet --list-sdks
displayName: Report dotnet SDK versions
- task: UseDotNet@2
displayName: install SDK
inputs:
packageType: sdk
useGlobalJson: true
includePreviewVersions: true
workingDirectory: $(Build.SourcesDirectory)
installationPath: $(Agent.ToolsDirectory)/dotnet
- script: dotnet build ./FSharp.Compiler.Service.sln /bl:\"artifacts/log/$(_BuildConfig)/ServiceRegularBuild.binlog\"
- script: ./eng/common/dotnet.sh build ./FSharp.Compiler.Service.sln /bl:\"artifacts/log/$(_BuildConfig)/ServiceRegularBuild.binlog\"
workingDirectory: $(Build.SourcesDirectory)
displayName: Regular rebuild of FSharp.Compiler.Service.sln
continueOnError: false
Expand All @@ -821,15 +793,7 @@ stages:
clean: true
- script: dotnet --list-sdks
displayName: Report dotnet SDK versions
- task: UseDotNet@2
displayName: install SDK
inputs:
packageType: sdk
useGlobalJson: true
includePreviewVersions: true
workingDirectory: $(Build.SourcesDirectory)
installationPath: $(Agent.ToolsDirectory)/dotnet
- script: dotnet build ./FSharp.Compiler.Service.sln /bl:\"artifacts/log/$(_BuildConfig)/ServiceRegularBuild.binlog\"
- script: ./eng/common/dotnet.sh build ./FSharp.Compiler.Service.sln /bl:\"artifacts/log/$(_BuildConfig)/ServiceRegularBuild.binlog\"
workingDirectory: $(Build.SourcesDirectory)
displayName: Regular rebuild of FSharp.Compiler.Service.sln
continueOnError: false
Expand Down Expand Up @@ -869,14 +833,6 @@ stages:
steps:
- checkout: self
clean: true
- task: UseDotNet@2
displayName: install SDK
inputs:
packageType: sdk
useGlobalJson: true
includePreviewVersions: true
workingDirectory: $(Build.SourcesDirectory)
installationPath: $(Agent.ToolsDirectory)/dotnet
- script: dotnet --list-sdks
displayName: Report dotnet SDK versions
- script: .\Build.cmd $(_kind) -pack -c $(_BuildConfig)
Expand All @@ -900,15 +856,7 @@ stages:
steps:
- checkout: self
clean: true
- task: UseDotNet@2
displayName: install SDK
inputs:
packageType: sdk
useGlobalJson: true
includePreviewVersions: true
workingDirectory: $(Build.SourcesDirectory)
installationPath: $(Agent.ToolsDirectory)/dotnet
- script: dotnet tool restore
- script: .\eng\common\dotnet.cmd tool restore
displayName: Restore dotnet tools
- pwsh: .\tests\ILVerify\ilverify.ps1
displayName: Run ILVerify
Expand Down
4 changes: 2 additions & 2 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,9 @@
</Dependency>
</ProductDependencies>
<ToolsetDependencies>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.25271.2">
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.25316.2">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>12d3a9f5d6138e22270694574e73e4c58a815795</Sha>
<Sha>d9d02d858b71562509f72ea84409853e4deffc8f</Sha>
</Dependency>
<Dependency Name="optimization.windows_nt-x64.MIBC.Runtime" Version="1.0.0-prerelease.25309.1">
<Uri>https://dev.azure.com/dnceng/internal/_git/dotnet-optimization</Uri>
Expand Down
3 changes: 3 additions & 0 deletions eng/common/build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ Param(
[switch] $publish,
[switch] $clean,
[switch][Alias('pb')]$productBuild,
[switch]$fromVMR,
[switch][Alias('bl')]$binaryLog,
[switch][Alias('nobl')]$excludeCIBinarylog,
[switch] $ci,
Expand Down Expand Up @@ -74,6 +75,7 @@ function Print-Usage() {
Write-Host " -nativeToolsOnMachine Sets the native tools on machine environment variable (indicating that the script should use native tools on machine)"
Write-Host " -nodeReuse <value> Sets nodereuse msbuild parameter ('true' or 'false')"
Write-Host " -buildCheck Sets /check msbuild parameter"
Write-Host " -fromVMR Set when building from within the VMR"
Write-Host ""

Write-Host "Command line arguments not listed above are passed thru to msbuild."
Expand Down Expand Up @@ -128,6 +130,7 @@ function Build {
/p:Test=$test `
/p:Pack=$pack `
/p:DotNetBuild=$productBuild `
/p:DotNetBuildFromVMR=$fromVMR `
/p:IntegrationTest=$integrationTest `
/p:PerformanceTest=$performanceTest `
/p:Sign=$sign `
Expand Down
14 changes: 10 additions & 4 deletions eng/common/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ usage()
echo " --nodeReuse <value> Sets nodereuse msbuild parameter ('true' or 'false')"
echo " --warnAsError <value> Sets warnaserror msbuild parameter ('true' or 'false')"
echo " --buildCheck <value> Sets /check msbuild parameter"
echo " --fromVMR Set when building from within the VMR"
echo ""
echo "Command line arguments not listed above are passed thru to msbuild."
echo "Arguments can also be passed in with a single hyphen."
Expand All @@ -64,6 +65,7 @@ restore=false
build=false
source_build=false
product_build=false
from_vmr=false
rebuild=false
test=false
integration_test=false
Expand All @@ -89,7 +91,7 @@ verbosity='minimal'
runtime_source_feed=''
runtime_source_feed_key=''

properties=''
properties=()
while [[ $# > 0 ]]; do
opt="$(echo "${1/#--/-}" | tr "[:upper:]" "[:lower:]")"
case "$opt" in
Expand Down Expand Up @@ -142,6 +144,9 @@ while [[ $# > 0 ]]; do
restore=true
pack=true
;;
-fromvmr|-from-vmr)
from_vmr=true
;;
-test|-t)
test=true
;;
Expand Down Expand Up @@ -187,7 +192,7 @@ while [[ $# > 0 ]]; do
shift
;;
*)
properties="$properties $1"
properties+=("$1")
;;
esac

Expand Down Expand Up @@ -221,7 +226,7 @@ function Build {
InitializeCustomToolset

if [[ ! -z "$projects" ]]; then
properties="$properties /p:Projects=$projects"
properties+=("/p:Projects=$projects")
fi

local bl=""
Expand All @@ -243,6 +248,7 @@ function Build {
/p:Build=$build \
/p:DotNetBuild=$product_build \
/p:DotNetBuildSourceOnly=$source_build \
/p:DotNetBuildFromVMR=$from_vmr \
/p:Rebuild=$rebuild \
/p:Test=$test \
/p:Pack=$pack \
Expand All @@ -251,7 +257,7 @@ function Build {
/p:Sign=$sign \
/p:Publish=$publish \
/p:RestoreStaticGraphEnableBinaryLogger=$binary_log \
$properties
${properties[@]+"${properties[@]}"}

ExitWithExitCode 0
}
Expand Down
5 changes: 2 additions & 3 deletions eng/common/core-templates/job/onelocbuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -86,8 +86,7 @@ jobs:
isAutoCompletePrSelected: ${{ parameters.AutoCompletePr }}
${{ if eq(parameters.CreatePr, true) }}:
isUseLfLineEndingsSelected: ${{ parameters.UseLfLineEndings }}
${{ if eq(parameters.RepoType, 'gitHub') }}:
isShouldReusePrSelected: ${{ parameters.ReusePr }}
isShouldReusePrSelected: ${{ parameters.ReusePr }}
packageSourceAuth: patAuth
patVariable: ${{ parameters.CeapexPat }}
${{ if eq(parameters.RepoType, 'gitHub') }}:
Expand Down Expand Up @@ -118,4 +117,4 @@ jobs:
pathToPublish: '$(Build.SourcesDirectory)/eng/Localize/'
publishLocation: Container
artifactName: Loc
condition: ${{ parameters.condition }}
condition: ${{ parameters.condition }}
49 changes: 42 additions & 7 deletions eng/common/core-templates/job/publish-build-assets.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,12 @@ parameters:
# Optional: 🌤️ or not the build has assets it wants to publish to BAR
isAssetlessBuild: false

# Optional, publishing version
publishingVersion: 3

# Optional: A minimatch pattern for the asset manifests to publish to BAR
assetManifestsPattern: '*/manifests/**/*.xml'

jobs:
- job: Asset_Registry_Publish

Expand Down Expand Up @@ -77,13 +83,31 @@ jobs:
clean: true

- ${{ if eq(parameters.isAssetlessBuild, 'false') }}:
- task: DownloadPipelineArtifact@2
displayName: Download Asset Manifests
inputs:
artifactName: AssetManifests
targetPath: '$(Build.StagingDirectory)/AssetManifests'
condition: ${{ parameters.condition }}
continueOnError: ${{ parameters.continueOnError }}
- ${{ if eq(parameters.publishingVersion, 3) }}:
- task: DownloadPipelineArtifact@2
displayName: Download Asset Manifests
inputs:
artifactName: AssetManifests
targetPath: '$(Build.StagingDirectory)/AssetManifests'
condition: ${{ parameters.condition }}
continueOnError: ${{ parameters.continueOnError }}
- ${{ if eq(parameters.publishingVersion, 4) }}:
- task: DownloadPipelineArtifact@2
displayName: Download V4 asset manifests
inputs:
itemPattern: '*/manifests/**/*.xml'
targetPath: '$(Build.StagingDirectory)/AllAssetManifests'
condition: ${{ parameters.condition }}
continueOnError: ${{ parameters.continueOnError }}
- task: CopyFiles@2
displayName: Copy V4 asset manifests to AssetManifests
inputs:
SourceFolder: '$(Build.StagingDirectory)/AllAssetManifests'
Contents: ${{ parameters.assetManifestsPattern }}
TargetFolder: '$(Build.StagingDirectory)/AssetManifests'
flattenFolders: true
condition: ${{ parameters.condition }}
continueOnError: ${{ parameters.continueOnError }}

- task: NuGetAuthenticate@1

Expand Down Expand Up @@ -120,6 +144,17 @@ jobs:
Copy-Item -Path $symbolExclusionfile -Destination "$(Build.StagingDirectory)/ReleaseConfigs"
}
- ${{ if eq(parameters.publishingVersion, 4) }}:
- template: /eng/common/core-templates/steps/publish-pipeline-artifacts.yml
parameters:
is1ESPipeline: ${{ parameters.is1ESPipeline }}
args:
targetPath: '$(Build.ArtifactStagingDirectory)/MergedManifest.xml'
artifactName: AssetManifests
displayName: 'Publish Merged Manifest'
retryCountOnTaskFailure: 10 # for any logs being locked
sbomEnabled: false # we don't need SBOM for logs

- template: /eng/common/core-templates/steps/publish-build-artifacts.yml
parameters:
is1ESPipeline: ${{ parameters.is1ESPipeline }}
Expand Down
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
}
Loading
Loading