Skip to content

Commit 4e99ab0

Browse files
committed
Update to .NET 10 SDK and Arcade 10
1 parent 8ad9299 commit 4e99ab0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+1726
-516
lines changed

NuGet.config

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
<add key="dotnet-public" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-public/nuget/v3/index.json" />
1616
<add key="dotnet-eng" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json" />
1717
<add key="dotnet9" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet9/nuget/v3/index.json" />
18+
<add key="dotnet10" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet10/nuget/v3/index.json" />
1819
<add key="dotnet-libraries" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-libraries/nuget/v3/index.json" />
1920
<add key="dotnet9-transport" value="https://dnceng.pkgs.visualstudio.com/public/_packaging/dotnet9-transport/nuget/v3/index.json" />
2021
</packageSources>
@@ -31,6 +32,9 @@
3132
<packageSource key="dotnet9">
3233
<package pattern="*" />
3334
</packageSource>
35+
<packageSource key="dotnet10">
36+
<package pattern="*" />
37+
</packageSource>
3438
<packageSource key="dotnet-libraries">
3539
<package pattern="Microsoft.DeveloperControlPlane*" />
3640
<package pattern="System.CommandLine" />

eng/Version.Details.xml

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -153,33 +153,33 @@
153153
</Dependency>
154154
</ProductDependencies>
155155
<ToolsetDependencies>
156-
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="9.0.0-beta.25325.4">
156+
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="10.0.0-beta.25325.3">
157157
<Uri>https://github.com/dotnet/arcade</Uri>
158-
<Sha>13b20849f8294593bf150a801cab639397e6c29d</Sha>
158+
<Sha>f70d32d77df8544117bd659512a9087619c1de6e</Sha>
159159
</Dependency>
160-
<Dependency Name="Microsoft.DotNet.Build.Tasks.Archives" Version="9.0.0-beta.25325.4">
160+
<Dependency Name="Microsoft.DotNet.Build.Tasks.Archives" Version="10.0.0-beta.25325.3">
161161
<Uri>https://github.com/dotnet/arcade</Uri>
162-
<Sha>13b20849f8294593bf150a801cab639397e6c29d</Sha>
162+
<Sha>f70d32d77df8544117bd659512a9087619c1de6e</Sha>
163163
</Dependency>
164-
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="9.0.0-beta.25325.4">
164+
<Dependency Name="Microsoft.DotNet.Helix.Sdk" Version="10.0.0-beta.25325.3">
165165
<Uri>https://github.com/dotnet/arcade</Uri>
166-
<Sha>13b20849f8294593bf150a801cab639397e6c29d</Sha>
166+
<Sha>f70d32d77df8544117bd659512a9087619c1de6e</Sha>
167167
</Dependency>
168-
<Dependency Name="Microsoft.DotNet.SharedFramework.Sdk" Version="9.0.0-beta.25325.4">
168+
<Dependency Name="Microsoft.DotNet.SharedFramework.Sdk" Version="10.0.0-beta.25325.3">
169169
<Uri>https://github.com/dotnet/arcade</Uri>
170-
<Sha>13b20849f8294593bf150a801cab639397e6c29d</Sha>
170+
<Sha>f70d32d77df8544117bd659512a9087619c1de6e</Sha>
171171
</Dependency>
172-
<Dependency Name="Microsoft.DotNet.RemoteExecutor" Version="9.0.0-beta.25325.4">
172+
<Dependency Name="Microsoft.DotNet.RemoteExecutor" Version="10.0.0-beta.25325.3">
173173
<Uri>https://github.com/dotnet/arcade</Uri>
174-
<Sha>13b20849f8294593bf150a801cab639397e6c29d</Sha>
174+
<Sha>f70d32d77df8544117bd659512a9087619c1de6e</Sha>
175175
</Dependency>
176-
<Dependency Name="Microsoft.DotNet.XUnitV3Extensions" Version="10.0.0-beta.25178.1">
176+
<Dependency Name="Microsoft.DotNet.XUnitV3Extensions" Version="10.0.0-beta.25325.3">
177177
<Uri>https://github.com/dotnet/arcade</Uri>
178-
<Sha>4bb78555b1275bc6cb21f6d61f7de60b0605edc3</Sha>
178+
<Sha>f70d32d77df8544117bd659512a9087619c1de6e</Sha>
179179
</Dependency>
180-
<Dependency Name="Microsoft.DotNet.XliffTasks" Version="9.0.0-beta.25325.4">
180+
<Dependency Name="Microsoft.DotNet.XliffTasks" Version="10.0.0-beta.25325.3">
181181
<Uri>https://github.com/dotnet/arcade</Uri>
182-
<Sha>13b20849f8294593bf150a801cab639397e6c29d</Sha>
182+
<Sha>f70d32d77df8544117bd659512a9087619c1de6e</Sha>
183183
</Dependency>
184184
<!-- Intermediate is necessary for source build. -->
185185
<Dependency Name="Microsoft.SourceBuild.Intermediate.arcade" Version="9.0.0-beta.25325.4">

eng/Versions.props

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
<DefaultTargetFramework>net8.0</DefaultTargetFramework>
1010
<AllTargetFrameworks>$(DefaultTargetFramework);net9.0</AllTargetFrameworks>
1111
<!-- dotnet versions for running tests -->
12-
<DotNetRuntimePreviousVersionForTesting>8.0.13</DotNetRuntimePreviousVersionForTesting>
12+
<DotNetRuntimePreviousVersionForTesting>8.0.17</DotNetRuntimePreviousVersionForTesting>
1313
<DotNetRuntimeCurrentVersionForTesting>9.0.6</DotNetRuntimeCurrentVersionForTesting>
1414
<!-- dotnet 8.0 versions for running tests - used for templates tests -->
1515
<DotNetSdkPreviousVersionForTesting>8.0.406</DotNetSdkPreviousVersionForTesting>
@@ -37,9 +37,9 @@
3737
<MicrosoftDeveloperControlPlanewindowsamd64Version>0.15.12</MicrosoftDeveloperControlPlanewindowsamd64Version>
3838
<MicrosoftDeveloperControlPlanewindowsarm64Version>0.15.12</MicrosoftDeveloperControlPlanewindowsarm64Version>
3939
<!-- Other -->
40-
<MicrosoftDotNetRemoteExecutorVersion>9.0.0-beta.25325.4</MicrosoftDotNetRemoteExecutorVersion>
41-
<MicrosoftDotNetXUnitV3ExtensionsVersion>10.0.0-beta.25178.1</MicrosoftDotNetXUnitV3ExtensionsVersion>
42-
<MicrosoftDotNetBuildTasksArchivesVersion>9.0.0-beta.25325.4</MicrosoftDotNetBuildTasksArchivesVersion>
40+
<MicrosoftDotNetRemoteExecutorVersion>10.0.0-beta.25325.3</MicrosoftDotNetRemoteExecutorVersion>
41+
<MicrosoftDotNetXUnitV3ExtensionsVersion>10.0.0-beta.25325.3</MicrosoftDotNetXUnitV3ExtensionsVersion>
42+
<MicrosoftDotNetBuildTasksArchivesVersion>10.0.0-beta.25325.3</MicrosoftDotNetBuildTasksArchivesVersion>
4343
<!-- dotnet/extensions -->
4444
<MicrosoftExtensionsAIVersion>9.5.0</MicrosoftExtensionsAIVersion>
4545
<MicrosoftExtensionsAIPreviewVersion>9.5.0-preview.1.25265.7</MicrosoftExtensionsAIPreviewVersion>

eng/common/CIBuild.cmd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
@echo off
2-
powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0Build.ps1""" -restore -build -test -sign -pack -publish -ci %*"
2+
powershell -ExecutionPolicy ByPass -NoProfile -command "& """%~dp0Build.ps1""" -restore -build -test -sign -pack -publish -ci %*"

eng/common/build.ps1

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ Param(
77
[string] $msbuildEngine = $null,
88
[bool] $warnAsError = $true,
99
[bool] $nodeReuse = $true,
10+
[switch] $buildCheck = $false,
1011
[switch][Alias('r')]$restore,
1112
[switch] $deployDeps,
1213
[switch][Alias('b')]$build,
@@ -20,6 +21,7 @@ Param(
2021
[switch] $publish,
2122
[switch] $clean,
2223
[switch][Alias('pb')]$productBuild,
24+
[switch]$fromVMR,
2325
[switch][Alias('bl')]$binaryLog,
2426
[switch][Alias('nobl')]$excludeCIBinarylog,
2527
[switch] $ci,
@@ -71,6 +73,9 @@ function Print-Usage() {
7173
Write-Host " -msbuildEngine <value> Msbuild engine to use to run build ('dotnet', 'vs', or unspecified)."
7274
Write-Host " -excludePrereleaseVS Set to exclude build engines in prerelease versions of Visual Studio"
7375
Write-Host " -nativeToolsOnMachine Sets the native tools on machine environment variable (indicating that the script should use native tools on machine)"
76+
Write-Host " -nodeReuse <value> Sets nodereuse msbuild parameter ('true' or 'false')"
77+
Write-Host " -buildCheck Sets /check msbuild parameter"
78+
Write-Host " -fromVMR Set when building from within the VMR"
7479
Write-Host ""
7580

7681
Write-Host "Command line arguments not listed above are passed thru to msbuild."
@@ -97,6 +102,7 @@ function Build {
97102

98103
$bl = if ($binaryLog) { '/bl:' + (Join-Path $LogDir 'Build.binlog') } else { '' }
99104
$platformArg = if ($platform) { "/p:Platform=$platform" } else { '' }
105+
$check = if ($buildCheck) { '/check' } else { '' }
100106

101107
if ($projects) {
102108
# Re-assign properties to a new variable because PowerShell doesn't let us append properties directly for unclear reasons.
@@ -113,6 +119,7 @@ function Build {
113119
MSBuild $toolsetBuildProj `
114120
$bl `
115121
$platformArg `
122+
$check `
116123
/p:Configuration=$configuration `
117124
/p:RepoRoot=$RepoRoot `
118125
/p:Restore=$restore `
@@ -122,11 +129,13 @@ function Build {
122129
/p:Deploy=$deploy `
123130
/p:Test=$test `
124131
/p:Pack=$pack `
125-
/p:DotNetBuildRepo=$productBuild `
132+
/p:DotNetBuild=$productBuild `
133+
/p:DotNetBuildFromVMR=$fromVMR `
126134
/p:IntegrationTest=$integrationTest `
127135
/p:PerformanceTest=$performanceTest `
128136
/p:Sign=$sign `
129137
/p:Publish=$publish `
138+
/p:RestoreStaticGraphEnableBinaryLogger=$binaryLog `
130139
@properties
131140
}
132141

eng/common/build.sh

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,8 @@ usage()
4242
echo " --prepareMachine Prepare machine for CI run, clean up processes after build"
4343
echo " --nodeReuse <value> Sets nodereuse msbuild parameter ('true' or 'false')"
4444
echo " --warnAsError <value> Sets warnaserror msbuild parameter ('true' or 'false')"
45+
echo " --buildCheck <value> Sets /check msbuild parameter"
46+
echo " --fromVMR Set when building from within the VMR"
4547
echo ""
4648
echo "Command line arguments not listed above are passed thru to msbuild."
4749
echo "Arguments can also be passed in with a single hyphen."
@@ -63,6 +65,7 @@ restore=false
6365
build=false
6466
source_build=false
6567
product_build=false
68+
from_vmr=false
6669
rebuild=false
6770
test=false
6871
integration_test=false
@@ -76,6 +79,7 @@ clean=false
7679

7780
warn_as_error=true
7881
node_reuse=true
82+
build_check=false
7983
binary_log=false
8084
exclude_ci_binary_log=false
8185
pipelines_log=false
@@ -87,7 +91,7 @@ verbosity='minimal'
8791
runtime_source_feed=''
8892
runtime_source_feed_key=''
8993

90-
properties=''
94+
properties=()
9195
while [[ $# > 0 ]]; do
9296
opt="$(echo "${1/#--/-}" | tr "[:upper:]" "[:lower:]")"
9397
case "$opt" in
@@ -127,19 +131,22 @@ while [[ $# > 0 ]]; do
127131
-pack)
128132
pack=true
129133
;;
130-
-sourcebuild|-sb)
134+
-sourcebuild|-source-build|-sb)
131135
build=true
132136
source_build=true
133137
product_build=true
134138
restore=true
135139
pack=true
136140
;;
137-
-productBuild|-pb)
141+
-productbuild|-product-build|-pb)
138142
build=true
139143
product_build=true
140144
restore=true
141145
pack=true
142146
;;
147+
-fromvmr|-from-vmr)
148+
from_vmr=true
149+
;;
143150
-test|-t)
144151
test=true
145152
;;
@@ -173,6 +180,9 @@ while [[ $# > 0 ]]; do
173180
node_reuse=$2
174181
shift
175182
;;
183+
-buildcheck)
184+
build_check=true
185+
;;
176186
-runtimesourcefeed)
177187
runtime_source_feed=$2
178188
shift
@@ -182,7 +192,7 @@ while [[ $# > 0 ]]; do
182192
shift
183193
;;
184194
*)
185-
properties="$properties $1"
195+
properties+=("$1")
186196
;;
187197
esac
188198

@@ -216,31 +226,38 @@ function Build {
216226
InitializeCustomToolset
217227

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

222232
local bl=""
223233
if [[ "$binary_log" == true ]]; then
224234
bl="/bl:\"$log_dir/Build.binlog\""
225235
fi
226236

237+
local check=""
238+
if [[ "$build_check" == true ]]; then
239+
check="/check"
240+
fi
241+
227242
MSBuild $_InitializeToolset \
228243
$bl \
244+
$check \
229245
/p:Configuration=$configuration \
230246
/p:RepoRoot="$repo_root" \
231247
/p:Restore=$restore \
232248
/p:Build=$build \
233-
/p:DotNetBuildRepo=$product_build \
234-
/p:ArcadeBuildFromSource=$source_build \
249+
/p:DotNetBuild=$product_build \
235250
/p:DotNetBuildSourceOnly=$source_build \
251+
/p:DotNetBuildFromVMR=$from_vmr \
236252
/p:Rebuild=$rebuild \
237253
/p:Test=$test \
238254
/p:Pack=$pack \
239255
/p:IntegrationTest=$integration_test \
240256
/p:PerformanceTest=$performance_test \
241257
/p:Sign=$sign \
242258
/p:Publish=$publish \
243-
$properties
259+
/p:RestoreStaticGraphEnableBinaryLogger=$binary_log \
260+
${properties[@]+"${properties[@]}"}
244261

245262
ExitWithExitCode 0
246263
}

eng/common/cibuild.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@ while [[ -h $source ]]; do
1313
done
1414
scriptroot="$( cd -P "$( dirname "$source" )" && pwd )"
1515

16-
. "$scriptroot/build.sh" --restore --build --test --pack --publish --ci $@
16+
. "$scriptroot/build.sh" --restore --build --test --pack --publish --ci $@

eng/common/core-templates/job/job.yml

Lines changed: 10 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ parameters:
1919
# publishing defaults
2020
artifacts: ''
2121
enableMicrobuild: false
22+
enableMicrobuildForMacAndLinux: false
2223
enablePublishBuildArtifacts: false
2324
enablePublishBuildAssets: false
2425
enablePublishTestResults: false
25-
enablePublishUsingPipelines: false
2626
enableBuildRetry: false
2727
mergeTestResults: false
2828
testRunTitle: ''
@@ -73,9 +73,6 @@ jobs:
7373
- ${{ if ne(parameters.enableTelemetry, 'false') }}:
7474
- name: DOTNET_CLI_TELEMETRY_PROFILE
7575
value: '$(Build.Repository.Uri)'
76-
- ${{ if eq(parameters.enableRichCodeNavigation, 'true') }}:
77-
- name: EnableRichCodeNavigation
78-
value: 'true'
7976
# Retry signature validation up to three times, waiting 2 seconds between attempts.
8077
# See https://learn.microsoft.com/en-us/nuget/reference/errors-and-warnings/nu3028#retry-untrusted-root-failures
8178
- name: NUGET_EXPERIMENTAL_CHAIN_BUILD_RETRY_POLICY
@@ -127,22 +124,11 @@ jobs:
127124
- ${{ preStep }}
128125

129126
- ${{ if and(eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
130-
- ${{ if eq(parameters.enableMicrobuild, 'true') }}:
131-
- task: MicroBuildSigningPlugin@4
132-
displayName: Install MicroBuild plugin
133-
inputs:
134-
signType: $(_SignType)
135-
zipSources: false
136-
feedSource: https://dnceng.pkgs.visualstudio.com/_packaging/MicroBuildToolset/nuget/v3/index.json
137-
${{ if eq(variables['System.TeamProject'], 'DevDiv') }}:
138-
ConnectedPMEServiceName: 6cc74545-d7b9-4050-9dfa-ebefcc8961ea
139-
${{ else }}:
140-
ConnectedPMEServiceName: 248d384a-b39b-46e3-8ad5-c2c210d5e7ca
141-
env:
142-
TeamName: $(_TeamName)
143-
MicroBuildOutputFolderOverride: '$(Agent.TempDirectory)'
127+
- template: /eng/common/core-templates/steps/install-microbuild.yml
128+
parameters:
129+
enableMicrobuild: ${{ parameters.enableMicrobuild }}
130+
enableMicrobuildForMacAndLinux: ${{ parameters.enableMicrobuildForMacAndLinux }}
144131
continueOnError: ${{ parameters.continueOnError }}
145-
condition: and(succeeded(), in(variables['_SignType'], 'real', 'test'), eq(variables['Agent.Os'], 'Windows_NT'))
146132

147133
- ${{ if and(eq(parameters.runAsPublic, 'false'), eq(variables['System.TeamProject'], 'internal')) }}:
148134
- task: NuGetAuthenticate@1
@@ -158,27 +144,15 @@ jobs:
158144
- ${{ each step in parameters.steps }}:
159145
- ${{ step }}
160146

161-
- ${{ if eq(parameters.enableRichCodeNavigation, true) }}:
162-
- task: RichCodeNavIndexer@0
163-
displayName: RichCodeNav Upload
164-
inputs:
165-
languages: ${{ coalesce(parameters.richCodeNavigationLanguage, 'csharp') }}
166-
environment: ${{ coalesce(parameters.richCodeNavigationEnvironment, 'internal') }}
167-
richNavLogOutputDirectory: $(Build.SourcesDirectory)/artifacts/bin
168-
uploadRichNavArtifacts: ${{ coalesce(parameters.richCodeNavigationUploadArtifacts, false) }}
169-
continueOnError: true
170-
171147
- ${{ each step in parameters.componentGovernanceSteps }}:
172148
- ${{ step }}
173149

174-
- ${{ if eq(parameters.enableMicrobuild, 'true') }}:
175-
- ${{ if and(eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
176-
- task: MicroBuildCleanup@1
177-
displayName: Execute Microbuild cleanup tasks
178-
condition: and(always(), in(variables['_SignType'], 'real', 'test'), eq(variables['Agent.Os'], 'Windows_NT'))
150+
- ${{ if and(eq(parameters.runAsPublic, 'false'), ne(variables['System.TeamProject'], 'public'), notin(variables['Build.Reason'], 'PullRequest')) }}:
151+
- template: /eng/common/core-templates/steps/cleanup-microbuild.yml
152+
parameters:
153+
enableMicrobuild: ${{ parameters.enableMicrobuild }}
154+
enableMicrobuildForMacAndLinux: ${{ parameters.enableMicrobuildForMacAndLinux }}
179155
continueOnError: ${{ parameters.continueOnError }}
180-
env:
181-
TeamName: $(_TeamName)
182156

183157
# Publish test results
184158
- ${{ if or(and(eq(parameters.enablePublishTestResults, 'true'), eq(parameters.testResultsFormat, '')), eq(parameters.testResultsFormat, 'xunit')) }}:

eng/common/core-templates/job/onelocbuild.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -86,8 +86,7 @@ jobs:
8686
isAutoCompletePrSelected: ${{ parameters.AutoCompletePr }}
8787
${{ if eq(parameters.CreatePr, true) }}:
8888
isUseLfLineEndingsSelected: ${{ parameters.UseLfLineEndings }}
89-
${{ if eq(parameters.RepoType, 'gitHub') }}:
90-
isShouldReusePrSelected: ${{ parameters.ReusePr }}
89+
isShouldReusePrSelected: ${{ parameters.ReusePr }}
9190
packageSourceAuth: patAuth
9291
patVariable: ${{ parameters.CeapexPat }}
9392
${{ if eq(parameters.RepoType, 'gitHub') }}:
@@ -118,4 +117,4 @@ jobs:
118117
pathToPublish: '$(Build.SourcesDirectory)/eng/Localize/'
119118
publishLocation: Container
120119
artifactName: Loc
121-
condition: ${{ parameters.condition }}
120+
condition: ${{ parameters.condition }}

0 commit comments

Comments
 (0)