Skip to content

Commit 2c74f00

Browse files
authored
Merge 'main' into UserDefinedCompoundAssignment (#77858)
2 parents c3beaf8 + 06476c7 commit 2c74f00

File tree

3,246 files changed

+105135
-36315
lines changed

Some content is hidden

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

3,246 files changed

+105135
-36315
lines changed

.github/policies/resourceManagement.yml

Lines changed: 26 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -27,23 +27,6 @@ configuration:
2727

2828
eventResponderTasks:
2929

30-
- description: Auto-approve auto-merge PRs
31-
triggerOnOwnActions: false
32-
if:
33-
- payloadType: Pull_Request
34-
- isPullRequest
35-
- labelAdded:
36-
label: auto-merge
37-
- or:
38-
- activitySenderHasPermission:
39-
permission: Admin
40-
- isActivitySender:
41-
user: dotnet-bot
42-
issueAuthor: False
43-
then:
44-
- approvePullRequest:
45-
comment: Auto-approval
46-
4730
- description: Auto-approve maestro PRs
4831
triggerOnOwnActions: false
4932
if:
@@ -80,7 +63,7 @@ configuration:
8063
- addMilestone:
8164
milestone: Next
8265

83-
- description: Auto-approve OneLoc PRs
66+
- description: Auto-approve/merge OneLoc PRs
8467
triggerOnOwnActions: false
8568
if:
8669
- payloadType: Pull_Request
@@ -94,8 +77,29 @@ configuration:
9477
- isAction:
9578
action: Opened
9679
then:
97-
- addLabel:
98-
label: auto-merge
80+
- approvePullRequest:
81+
comment: Auto-approve
82+
- enableAutoMerge:
83+
mergeMethod: merge
84+
85+
- description: Auto-approve/merge automated merge PRs
86+
triggerOnOwnActions: false
87+
if:
88+
- payloadType: Pull_Request
89+
- isPullRequest
90+
- isActivitySender:
91+
user: github-actions[bot]
92+
issueAuthor: False
93+
- titleContains:
94+
pattern: "[automated] Merge branch"
95+
isRegex: False
96+
- isAction:
97+
action: Opened
98+
then:
99+
- approvePullRequest:
100+
comment: Auto-approve
101+
- enableAutoMerge:
102+
mergeMethod: merge
99103

100104
- description: Remove "Need More Info" on comment
101105
triggerOnOwnActions: false
@@ -147,7 +151,7 @@ configuration:
147151
issueAuthor: False
148152
- not:
149153
isActivitySender:
150-
user: github-actions
154+
user: github-actions[bot]
151155
issueAuthor: False
152156
then:
153157
- addLabel:
@@ -168,7 +172,7 @@ configuration:
168172
issueAuthor: False
169173
- not:
170174
isActivitySender:
171-
user: github-actions
175+
user: github-actions[bot]
172176
issueAuthor: False
173177
- or:
174178
- isAction:

.github/workflows/main-merge.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# See https://github.com/dotnet/arcade/blob/e52018a/Documentation/Maestro/New-Inter-Branch-Merge-Approach.md
2+
3+
name: Inter-branch merge
4+
on:
5+
schedule:
6+
# Create a merge every 3 hours (works only for merges from `main`, others would need a `push` trigger).
7+
- cron: '0 */3 * * *'
8+
workflow_dispatch:
9+
inputs:
10+
configuration_file_branch:
11+
description: 'Branch to use for configuration file'
12+
required: true
13+
default: 'main'
14+
15+
permissions:
16+
contents: write
17+
pull-requests: write
18+
19+
jobs:
20+
merge:
21+
if: github.repository == 'dotnet/roslyn'
22+
uses: dotnet/arcade/.github/workflows/inter-branch-merge-base.yml@main
23+
with:
24+
configuration_file_path: 'eng/config/branch-merge.jsonc'
25+
configuration_file_branch: ${{ inputs.configuration_file_branch || 'main' }}

Roslyn.sln

Lines changed: 85 additions & 14 deletions
Large diffs are not rendered by default.

azure-pipelines-integration.yml

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ trigger:
1010
exclude:
1111
# Since the version of VS on the integration VM images are a moving target,
1212
# we are unable to reliably run integration tests on servicing branches.
13-
- release/dev17.0-vs-deps
14-
- release/dev17.2
15-
- release/dev17.3
13+
- release/dev17.8
14+
- release/dev17.10
15+
- release/dev17.12
1616

1717
# Branches that trigger builds on PR
1818
pr:
@@ -26,19 +26,25 @@ pr:
2626
exclude:
2727
# Since the version of VS on the integration VM images are a moving target,
2828
# we are unable to reliably run integration tests on servicing branches.
29-
- release/dev17.0-vs-deps
30-
- release/dev17.2
31-
- release/dev17.3
29+
- release/dev17.8
30+
- release/dev17.10
31+
- release/dev17.12
3232
paths:
3333
exclude:
3434
- docs/*
3535
- eng/config/OptProf.json
3636
- eng/config/PublishData.json
37+
- eng/setup-pr-validation.ps1
3738
- .vscode/*
3839
- .github/*
3940
- .devcontainer/*
4041
- .git-blame-ignore-revs
4142
- .vsconfig
43+
- azure-pipelines-compliance.yml
44+
- azure-pipelines-integration-dartlab.yml
45+
- azure-pipelines-integration-scouting.yml
46+
- azure-pipelines-official.yml
47+
- azure-pipelines-pr-validation.yml
4248
- CODE-OF-CONDUCT.md
4349
- CONTRIBUTING.md
4450
- README.md

azure-pipelines-official.yml

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ trigger:
55
- main-vs-deps
66
- release/dev16.*-vs-deps
77
- release/dev17.*
8+
- release/dev18.*
89
- features/lsp_tools_host
10+
- features/runtime-async
911
exclude:
1012
- release/dev17.0
1113
pr: none
@@ -16,6 +18,11 @@ resources:
1618
type: git
1719
name: 1ESPipelineTemplates/1ESPipelineTemplates
1820
ref: refs/tags/release
21+
pipelines:
22+
- pipeline: profilingInputs
23+
source: dotnet-vscode-csharp-profiling
24+
branch: main
25+
trigger: none
1926

2027
parameters:
2128
- name: IbcDrop
@@ -89,6 +96,9 @@ variables:
8996
- ${{ if and(notin(variables['Build.Reason'], 'PullRequest'), eq(variables['Build.SourceBranch'], 'refs/heads/main')) }}:
9097
- name: enableSourceIndex
9198
value: true
99+
- name: VSCodeOptimizationDataRoot
100+
value: $(Pipeline.Workspace)/profilingInputs/merged mibc
101+
92102

93103
extends:
94104
template: v1/1ES.Official.PipelineTemplate.yml@1ESPipelineTemplates
@@ -154,7 +164,7 @@ extends:
154164

155165
- output: pipelineArtifact
156166
displayName: 'Publish Ngen Logs'
157-
condition: succeeded()
167+
condition: and(succeeded(), ${{ not(parameters.SkipApplyOptimizationData) }})
158168
targetPath: '$(Build.SourcesDirectory)\artifacts\log\$(BuildConfiguration)\ngen'
159169
artifactName: 'NGen Logs'
160170
publishLocation: Container
@@ -202,6 +212,9 @@ extends:
202212
ArtifactName: AssetManifests
203213

204214
steps:
215+
- pwsh: Set-MpPreference -DisableRealtimeMonitoring $true
216+
displayName: Disable Real-time Monitoring
217+
205218
- powershell: Write-Host "##vso[task.setvariable variable=SourceBranchName]$('$(Build.SourceBranch)'.Substring('refs/heads/'.Length))"
206219
displayName: Setting SourceBranchName variable
207220
condition: succeeded()
@@ -266,23 +279,17 @@ extends:
266279
useGlobalJson: true
267280
workingDirectory: '$(Build.SourcesDirectory)'
268281

269-
# Needed to restore the Microsoft.DevDiv.Optimization.Data.PowerShell package
270-
- task: NuGetCommand@2
271-
displayName: Restore internal tools
272-
inputs:
273-
command: restore
274-
feedsToUse: config
275-
restoreSolution: 'eng\common\internal\Tools.csproj'
276-
nugetConfigPath: 'NuGet.config'
277-
restoreDirectory: '$(Build.SourcesDirectory)\.packages'
278-
279282
- task: MicroBuildSigningPlugin@4
280283
inputs:
281284
signType: $(SignType)
282285
zipSources: false
283286
feedSource: https://dnceng.pkgs.visualstudio.com/_packaging/MicroBuildToolset/nuget/v3/index.json
284287
condition: and(succeeded(), in(variables['SignType'], 'test', 'real'))
285288

289+
- download: profilingInputs
290+
artifact: merged mibc
291+
displayName: Download VSCode optimization inputs
292+
286293
- task: PowerShell@2
287294
displayName: Build
288295
inputs:
@@ -298,17 +305,17 @@ extends:
298305
-configuration $(BuildConfiguration)
299306
-officialBuildId $(Build.BuildNumber)
300307
-officialSkipTests $(SkipTests)
301-
-officialSkipApplyOptimizationData $(SkipApplyOptimizationData)
308+
-officialSkipApplyOptimizationData ${{ parameters.SkipApplyOptimizationData }}
302309
-officialSourceBranchName $(SourceBranchName)
303310
-officialIbcDrop $(IbcDrop)
304311
-officialVisualStudioDropAccessToken $(_DevDivDropAccessToken)
305312
/p:RepositoryName=$(Build.Repository.Name)
306313
/p:VisualStudioDropName=$(VisualStudio.DropName)
314+
/p:VSCodeOptimizationDataRoot="$(VSCodeOptimizationDataRoot)"
307315
/p:DotNetSignType=$(SignType)
308316
/p:DotnetPublishUsingPipelines=true
309317
/p:IgnoreIbcMergeErrors=true
310318
/p:GenerateSbom=true
311-
/p:ForceAzureComSources=true
312319
condition: succeeded()
313320

314321
- template: /eng/common/templates-official/steps/generate-sbom.yml@self

azure-pipelines-pr-validation.yml

Lines changed: 9 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ parameters:
1313
type: number
1414
- name: CommitSHA
1515
type: string
16+
- name: EnforceLatestCommit
17+
type: boolean
18+
default: true
1619
- name: VisualStudioBranchName
1720
type: string
1821
default: default
@@ -95,7 +98,7 @@ extends:
9598

9699
- output: pipelineArtifact
97100
displayName: 'Publish Ngen Logs'
98-
condition: succeeded()
101+
condition: and(succeeded(), ${{ not(parameters.SkipApplyOptimizationData) }})
99102
targetPath: '$(Build.SourcesDirectory)\artifacts\log\$(BuildConfiguration)\ngen'
100103
artifactName: 'NGen Logs'
101104
publishLocation: Container
@@ -143,6 +146,9 @@ extends:
143146
ArtifactName: AssetManifests
144147

145148
steps:
149+
- pwsh: Set-MpPreference -DisableRealtimeMonitoring $true
150+
displayName: Disable Real-time Monitoring
151+
146152
- task: Powershell@2
147153
displayName: Setting OriginalBuildNumber variable
148154
condition: succeeded()
@@ -192,7 +198,7 @@ extends:
192198
displayName: Setup branch for insertion validation
193199
inputs:
194200
filePath: 'eng\setup-pr-validation.ps1'
195-
arguments: '-sourceBranchName $(SourceBranchName) -prNumber ${{ parameters.PRNumber }} -commitSHA ${{ parameters.CommitSHA }}'
201+
arguments: "-sourceBranchName $(SourceBranchName) -prNumber ${{ parameters.PRNumber }} -commitSHA ${{ parameters.CommitSHA }} -enforceLatestCommit ${{ iif(parameters.EnforceLatestCommit, '1', '0') }}"
196202
condition: succeeded()
197203

198204
- powershell: Write-Host "##vso[task.setvariable variable=VisualStudio.DropName]Products/$(System.TeamProject)/$(Build.Repository.Name)/$(SourceBranchName)/$(OriginalBuildNumber)"
@@ -215,16 +221,6 @@ extends:
215221
useGlobalJson: true
216222
workingDirectory: '$(Build.SourcesDirectory)'
217223

218-
# Needed to restore the Microsoft.DevDiv.Optimization.Data.PowerShell package
219-
- task: NuGetCommand@2
220-
displayName: Restore internal tools
221-
inputs:
222-
command: restore
223-
feedsToUse: config
224-
restoreSolution: 'eng\common\internal\Tools.csproj'
225-
nugetConfigPath: 'NuGet.config'
226-
restoreDirectory: '$(Build.SourcesDirectory)\.packages'
227-
228224
- task: MicroBuildSigningPlugin@4
229225
inputs:
230226
signType: $(SignType)
@@ -246,7 +242,7 @@ extends:
246242
-configuration $(BuildConfiguration)
247243
-officialBuildId $(OriginalBuildNumber)
248244
-officialSkipTests $(SkipTests)
249-
-officialSkipApplyOptimizationData $(SkipApplyOptimizationData)
245+
-officialSkipApplyOptimizationData ${{ parameters.SkipApplyOptimizationData }}
250246
-officialSourceBranchName $(SourceBranchName)
251247
-officialIbcDrop $(IbcDrop)
252248
-officialVisualStudioDropAccessToken $(_DevDivDropAccessToken)

azure-pipelines.yml

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,20 @@ pr:
1818
paths:
1919
exclude:
2020
- docs/*
21+
- eng/config/OptProf.json
2122
- eng/config/PublishData.json
23+
- eng/setup-pr-validation.ps1
2224
- src/LanguageServer/Microsoft.CommonLanguageServerProtocol.Framework/README.md
2325
- .vscode/*
2426
- .github/*
2527
- .devcontainer/*
2628
- .git-blame-ignore-revs
2729
- .vsconfig
30+
- azure-pipelines-compliance.yml
31+
- azure-pipelines-integration-dartlab.yml
32+
- azure-pipelines-integration-scouting.yml
33+
- azure-pipelines-official.yml
34+
- azure-pipelines-pr-validation.yml
2835
- CODE-OF-CONDUCT.md
2936
- CONTRIBUTING.md
3037
- README.md
@@ -61,9 +68,9 @@ variables:
6168

6269
- name: UbuntuQueueName
6370
${{ if eq(variables['System.TeamProject'], 'public') }}:
64-
value: Build.Ubuntu.2004.Amd64.Open
71+
value: Build.Ubuntu.2204.Amd64.Open
6572
${{ else }}:
66-
value: Build.Ubuntu.2004.Amd64
73+
value: Build.Ubuntu.2204.Amd64
6774

6875
- name: WindowsQueueName
6976
${{ if eq(variables['System.TeamProject'], 'public') }}:
@@ -85,15 +92,15 @@ variables:
8592

8693
- name: HelixUbuntuQueueName
8794
${{ if eq(variables['System.TeamProject'], 'public') }}:
88-
value: Ubuntu.2004.Amd64.Open
95+
value: Ubuntu.2204.Amd64.Open
8996
${{ else }}:
90-
value: Ubuntu.2004.Amd64
97+
value: Ubuntu.2204.Amd64
9198

9299
- name: HelixMacOsQueueName
93100
${{ if eq(variables['System.TeamProject'], 'public') }}:
94-
value: OSX.13.Amd64.Open
101+
value: OSX.15.Amd64.Open
95102
${{ else }}:
96-
value: OSX.13.Amd64
103+
value: OSX.15.Amd64
97104

98105
parameters:
99106
# These pools allow us to configure the pools once for multiple jobs.
@@ -399,7 +406,7 @@ stages:
399406
- powershell: eng/build.ps1 -configuration Release -prepareMachine -ci -restore -binaryLogName Restore.binlog
400407
displayName: Restore
401408

402-
- powershell: eng/build.ps1 -configuration Release -prepareMachine -ci -build -pack -publish -sign -binaryLogName Build.binlog /p:DotnetPublishUsingPipelines=true
409+
- powershell: eng/build.ps1 -configuration Release -prepareMachine -ci -build -pack -publish -sign -binaryLogName Build.binlog /p:DotnetPublishUsingPipelines=true /p:ContinuousIntegrationBuildCorrectness=true
403410
displayName: Build
404411

405412
# While this task is not executed in the official build, this serves as a PR check for whether symbol exclusions

0 commit comments

Comments
 (0)