Skip to content

Commit 62026b2

Browse files
Merge remote-tracking branch 'upstream/main' into mergeMain23
2 parents ad1e9c2 + 848a5d3 commit 62026b2

369 files changed

Lines changed: 13174 additions & 3438 deletions

File tree

Some content is hidden

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

.azuredevops/dependabot.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
version: 2
2+
3+
# Disabling dependabot on Azure DevOps as this is a mirrored repo. Updates should go through github.
4+
enable-campaigned-updates: false
5+
enable-security-updates: false

.github/copilot-instructions.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ var symbolInfo = semanticModel.GetSymbolInfo(expression);
7575
- **Cancellation**: Always thread `CancellationToken` through async operations
7676
- **MEF Lifecycle**: Use `[ImportingConstructor]` with obsolete attribute for MEF v2 compatibility
7777
- **PROTOTYPE Comments**: Only used to track follow-up work in feature branches and are disallowed in main branch
78+
- **Code Formatting**: Avoid trailing spaces and blank lines (lines with only whitespace). Ensure all lines either have content or are completely empty.
7879

7980
## Common Gotchas
8081

azure-pipelines-integration-dartlab.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,19 @@ parameters:
3131
- name: sha
3232
type: string
3333
default: 'None'
34+
# Set to 'stop' if you want to keep the test machines around for investigation after test completion.
35+
- name: testMachineCleanUpStrategy
36+
displayName: Test Machine Clean Up Strategy
37+
type: string
38+
default: delete
39+
values:
40+
- delete
41+
- stop
42+
# The retention period for the test machine (expressed as <Days>:<Hours>:<Minutes>:<Seconds>)
43+
- name: testMachineRetention
44+
displayName: Test Machine Retention (format "D:H:M:S")
45+
type: string
46+
default: 1:0:0:0 # 1 day default
3447

3548
variables:
3649
- name: XUNIT_LOGS
@@ -46,6 +59,8 @@ stages:
4659
name: VSIntegration
4760
displayName: VS Integration
4861
testLabPoolName: VS-Platform
62+
testMachineCleanUpStrategy: ${{parameters.testMachineCleanUpStrategy}}
63+
testMachineRetention: ${{parameters.testMachineRetention}}
4964
visualStudioBootstrapperURI: https://vsdrop.corp.microsoft.com/file/v1/$(VisualStudio.BuildUnderTest.ProductsDropName);bootstrappers/Enterprise/vs_enterprise.exe
5065
visualStudioInstallationParameters: --add Microsoft.VisualStudio.Component.NuGet --add Microsoft.VisualStudio.Component.Roslyn.Compiler --add Microsoft.Component.MSBuild --add Microsoft.NetCore.Component.Runtime.6.0 --add Microsoft.NetCore.Component.SDK --add Microsoft.Net.Component.4.7.2.TargetingPack --add Microsoft.VisualStudio.Component.Roslyn.LanguageServices --add Microsoft.VisualStudio.Component.FSharp --add Microsoft.ComponentGroup.ClickOnce.Publish --add Microsoft.NetCore.Component.DevelopmentTools --add Microsoft.VisualStudio.Component.MSODBC.SQL --add Microsoft.VisualStudio.Component.MSSQL.CMDLnUtils --add Microsoft.VisualStudio.Component.SQL.LocalDB.Runtime --add Microsoft.VisualStudio.Component.SQL.CLR --add Microsoft.VisualStudio.Component.CoreEditor --add Microsoft.VisualStudio.Workload.CoreEditor --add Microsoft.Net.Component.4.8.SDK --add Microsoft.Net.ComponentGroup.DevelopmentPrerequisites --add Microsoft.VisualStudio.Component.TypeScript.TSServer --add Microsoft.VisualStudio.ComponentGroup.WebToolsExtensions --add Microsoft.VisualStudio.Component.JavaScript.TypeScript --add Microsoft.VisualStudio.Component.JavaScript.Diagnostics --add Microsoft.VisualStudio.Component.TextTemplating --add Component.Microsoft.VisualStudio.RazorExtension --add Microsoft.VisualStudio.Component.IISExpress --add Microsoft.VisualStudio.Component.Common.Azure.Tools --add Microsoft.Component.ClickOnce --add Microsoft.VisualStudio.Component.ManagedDesktop.Core --add Microsoft.VisualStudio.Component.SQL.SSDT --add Microsoft.VisualStudio.Component.SQL.DataSources --add Component.Microsoft.Web.LibraryManager --add Component.Microsoft.WebTools.BrowserLink.WebLivePreview --add Microsoft.VisualStudio.ComponentGroup.Web --add Microsoft.VisualStudio.Component.FSharp.WebTemplates --add Microsoft.VisualStudio.Component.DockerTools --add Microsoft.NetCore.Component.Web --add Microsoft.VisualStudio.Component.WebDeploy --add Microsoft.VisualStudio.Component.AppInsights.Tools --add Microsoft.VisualStudio.Component.Web --add Microsoft.Net.Component.4.8.TargetingPack --add Microsoft.Net.ComponentGroup.4.8.DeveloperTools --add Microsoft.VisualStudio.Component.AspNet45 --add Microsoft.VisualStudio.Component.AspNet --add Component.Microsoft.VisualStudio.Web.AzureFunctions --add Microsoft.VisualStudio.ComponentGroup.AzureFunctions --add Microsoft.VisualStudio.Component.Debugger.Snapshot --add Microsoft.VisualStudio.ComponentGroup.Web.CloudTools --add Microsoft.VisualStudio.Component.IntelliTrace.FrontEnd --add Microsoft.VisualStudio.Component.DiagnosticTools --add Microsoft.VisualStudio.Component.EntityFramework --add Microsoft.VisualStudio.Component.LiveUnitTesting --add Microsoft.VisualStudio.Component.Debugger.JustInTime --add Component.Microsoft.VisualStudio.LiveShare.2022 --add Microsoft.VisualStudio.Component.WslDebugging --add Microsoft.VisualStudio.Component.IntelliCode --add Microsoft.VisualStudio.Workload.NetWeb --add Microsoft.VisualStudio.Component.ManagedDesktop.Prerequisites --add Microsoft.ComponentGroup.Blend --add Microsoft.VisualStudio.Component.DotNetModelBuilder --add Microsoft.VisualStudio.Component.FSharp.Desktop --add Microsoft.VisualStudio.Component.PortableLibrary --add Microsoft.VisualStudio.Workload.ManagedDesktop --add Microsoft.Net.Component.4.6.TargetingPack --add Microsoft.VisualStudio.Component.VSSDK --add Microsoft.VisualStudio.ComponentGroup.VisualStudioExtension.Prerequisites --add Microsoft.Component.CodeAnalysis.SDK --add Microsoft.VisualStudio.Workload.VisualStudioExtension --installPath "C:\Test\VisualStudio" --quiet --norestart --wait
5166
testExecutionJobStrategy:

azure-pipelines-official.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -55,10 +55,10 @@ schedules:
5555
- cron: "0 8 23-29 * 0"
5656
displayName: "Monthly smoke test"
5757
branches:
58-
include:
58+
include:
5959
- main
6060
- release/*
61-
exclude:
61+
exclude:
6262
- ""
6363
always: true # Run even if there have been no source code changes since the last successful scheduled run
6464
batch: false # Do not run the pipeline if the previously scheduled run is in-progress
@@ -125,7 +125,7 @@ extends:
125125
sbom:
126126
enabled: false
127127
suppression:
128-
suppressionFile: $(Build.SourcesDirectory)\eng\config\guardian\.gdnsuppres
128+
suppressionFile: $(Build.SourcesDirectory)\eng\config\guardian\.gdnsuppress
129129
policheck:
130130
enabled: true
131131
tsa:
@@ -171,7 +171,7 @@ extends:
171171
displayName: 'Publish Logs'
172172
condition: succeededOrFailed()
173173
targetPath: '$(Build.SourcesDirectory)\artifacts\log\$(BuildConfiguration)'
174-
artifactName: 'Build Diagnostic Files'
174+
artifactName: 'Build Diagnostic Files - $(System.JobAttempt)'
175175
publishLocation: Container
176176

177177
- output: pipelineArtifact
@@ -226,7 +226,7 @@ extends:
226226
steps:
227227
- pwsh: Set-MpPreference -DisableRealtimeMonitoring $true
228228
displayName: Disable Real-time Monitoring
229-
229+
230230
- powershell: Write-Host "##vso[task.setvariable variable=SourceBranchName]$('$(Build.SourceBranch)'.Substring('refs/heads/'.Length))"
231231
displayName: Setting SourceBranchName variable
232232
condition: succeeded()
@@ -319,10 +319,10 @@ extends:
319319
-binaryLog
320320
-configuration $(BuildConfiguration)
321321
-officialBuildId $(Build.BuildNumber)
322-
-officialSkipTests $(SkipTests)
322+
-officialSkipTests ${{ parameters.SkipTests }}
323323
-officialSkipApplyOptimizationData ${{ parameters.SkipApplyOptimizationData }}
324324
-officialSourceBranchName $(SourceBranchName)
325-
-officialIbcDrop $(IbcDrop)
325+
-officialIbcDrop ${{ parameters.IbcDrop }}
326326
-officialVisualStudioDropAccessToken $(_DevDivDropAccessToken)
327327
/p:RepositoryName=$(Build.Repository.Name)
328328
/p:VisualStudioDropName=$(VisualStudio.DropName)
@@ -362,7 +362,7 @@ extends:
362362
testResultsFiles: '$(Build.SourcesDirectory)\artifacts\TestResults\$(BuildConfiguration)\*.xml'
363363
mergeTestResults: true
364364
testRunTitle: 'Unit Tests'
365-
condition: and(succeededOrFailed(), ne(variables['SkipTests'], 'true'))
365+
condition: and(succeededOrFailed(), ${{ not(parameters.SkipTests) }})
366366

367367
# Publish to Build Asset Registry
368368
- template: /eng/common/templates-official/job/publish-build-assets.yml@self

azure-pipelines.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -495,6 +495,13 @@ stages:
495495
displayName: Validate Generated Syntax Files
496496
condition: or(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['compilerChange'], 'true'))
497497

498+
- task: DotNetCoreCLI@2
499+
displayName: Verify Synchronized Sources
500+
inputs:
501+
command: 'custom'
502+
custom: 'run'
503+
arguments: '--file $(Build.SourcesDirectory)/eng/ensure-sources-synced.cs'
504+
498505
- template: eng/pipelines/publish-logs.yml
499506
parameters:
500507
jobName: Correctness_Build_Artifacts

docs/Language Feature Status.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,9 @@ When a feature is merged to the `main` branch, its entry should be moved to the
1818
| ------- | ------ | ----- | --------- | -------- | --------- | --------- |
1919
| [Dictionary expressions](https://github.com/dotnet/csharplang/issues/8659) | [dictionary-expressions](https://github.com/dotnet/roslyn/tree/features/dictionary-expressions) | [In progress](https://github.com/dotnet/roslyn/issues/76310) | [333fred](https://github.com/333fred) | [CyrusNajmabadi](https://github.com/CyrusNajmabadi), [jcouv](https://github.com/jcouv) | [CyrusNajmabadi](https://github.com/CyrusNajmabadi) | [CyrusNajmabadi](https://github.com/CyrusNajmabadi) |
2020
| [Collection expression arguments](https://github.com/dotnet/csharplang/issues/8887) | [collection-expression-arguments](https://github.com/dotnet/roslyn/tree/features/collection-expression-arguments) | [In progress](https://github.com/dotnet/roslyn/issues/80613) | [CyrusNajmabadi](https://github.com/CyrusNajmabadi) | [333fred](https://github.com/333fred), [jcouv](https://github.com/jcouv) | [CyrusNajmabadi](https://github.com/CyrusNajmabadi) | [CyrusNajmabadi](https://github.com/CyrusNajmabadi) |
21-
| [Unions](https://github.com/dotnet/csharplang/issues/9662) | | [In Progress](https://github.com/dotnet/roslyn/issues/81074) | [AlekseyTs](https://github.com/AlekseyTs) | [RikkiGibson](https://github.com/RikkiGibson), [333fred](https://github.com/333fred) | TBD | |
21+
| [Unions](https://github.com/dotnet/csharplang/issues/9662) | [Unions](https://github.com/dotnet/roslyn/tree/features/Unions) | [In Progress](https://github.com/dotnet/roslyn/issues/81074) | [AlekseyTs](https://github.com/AlekseyTs) | [RikkiGibson](https://github.com/RikkiGibson), [333fred](https://github.com/333fred) | TBD | [MadsTorgersen](https://github.com/MadsTorgersen) |
2222
| [Closed class hierarchies](https://github.com/dotnet/csharplang/issues/9499) | [closed-class](https://github.com/dotnet/roslyn/tree/features/closed-class) | [In progress](https://github.com/dotnet/roslyn/issues/81039) | [RikkiGibson](https://github.com/RikkiGibson) | [AlekseyTs](https://github.com/AlekseyTs), [jjonescz](https://github.com/jjonescz) | TBD | [mattwar](https://github.com/mattwar) |
23+
| [Unsafe evolution](https://github.com/dotnet/csharplang/issues/9704) | [UnsafeEvolution](https://github.com/dotnet/roslyn/tree/features/UnsafeEvolution) | [In progress](https://github.com/dotnet/roslyn/issues/81207) | [jjonescz](https://github.com/jjonescz) | [333fred](https://github.com/333fred), [jcouv](https://github.com/jcouv) | TBD | [agocke](https://github.com/agocke) |
2324
| Runtime Async | [runtime-async](https://github.com/dotnet/roslyn/tree/features/runtime-async) | [Merged into main in preview](https://github.com/dotnet/roslyn/issues/75960) | [333fred](https://github.com/333fred) | [jcouv](https://github.com/jcouv), [RikkiGibson](https://github.com/RikkiGibson) | | |
2425

2526
# Working Set VB

docs/contributing/Compiler Test Plan.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ This document provides guidance for thinking about language interactions and tes
3636
- Can build VS
3737
- Check that `Obsolete` is honored for members used in binding/lowering
3838
- LangVersion
39+
- IL verification (file issue on `runtime` repo as needed and track [here](https://github.com/dotnet/roslyn/issues/22872))
3940

4041
- Does the feature use cryptographic hashes in any way? (examples: metadata names of file-local types, extension types, assembly strong naming, PDB document table, etc.)
4142
- Consider using non-cryptographic hash such as `XxHash128` instead.

docs/wiki/NuGet-packages.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ Below are the versions of the language available in the NuGet packages. Remember
5353
- Version `4.12` includes C# 13.0 (Visual Studio 2022 version 17.12, .NET 9)
5454
- Version `4.13` includes C# 13.0 (Visual Studio 2022 version 17.13, .NET 9)
5555
- Version `4.14` includes C# 13.0 (Visual Studio 2022 version 17.14, .NET 9)
56+
- Version `5.0` includes C# 14.0 (Visual Studio 2026 version 18.0, .NET 10)
5657

5758
See the [history of C# language features](https://github.com/dotnet/csharplang/blob/main/Language-Version-History.md) for more details.
5859

eng/Packages.props

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,10 @@
4545
</ItemGroup>
4646

4747
<ItemGroup Condition="'$(DotNetBuildSourceOnly)' != 'true' and '$(TargetFramework)' == 'net472'">
48-
<PackageVersion Include="Microsoft.Build" Version="17.15.0-preview-25353-11" />
49-
<PackageVersion Include="Microsoft.Build.Framework" Version="17.15.0-preview-25353-11" />
50-
<PackageVersion Include="Microsoft.Build.Tasks.Core" Version="17.15.0-preview-25353-11" />
51-
<PackageVersion Include="Microsoft.Build.Utilities.Core" Version="17.15.0-preview-25353-11" />
48+
<PackageVersion Include="Microsoft.Build" Version="18.0.2" />
49+
<PackageVersion Include="Microsoft.Build.Framework" Version="18.0.2" />
50+
<PackageVersion Include="Microsoft.Build.Tasks.Core" Version="18.0.2" />
51+
<PackageVersion Include="Microsoft.Build.Utilities.Core" Version="18.0.2" />
5252
</ItemGroup>
5353

5454
<ItemGroup>
@@ -310,7 +310,7 @@
310310
<PackageVersion Include="Microsoft.TeamFoundationServer.Client" Version="19.232.0-preview" />
311311
<PackageVersion Include="System.Data.SqlClient" Version="$(SystemDataSqlClientVersion)" />
312312
<!-- fix of vulnerability in 6.0.0 coming via Microsoft.TeamFoundationServer.Client -->
313-
<PackageVersion Include="System.Security.Cryptography.Xml" Version="8.0.1" />
313+
<PackageVersion Include="System.Security.Cryptography.Xml" Version="8.0.0" />
314314
<PackageVersion Include="System.Security.Cryptography.Pkcs" Version="8.0.0" />
315315
<!--
316316
Infra

eng/Version.Details.props

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ This file should be imported by eng/Versions.props
1010
<MicrosoftNetCompilersToolsetPackageVersion>4.10.0-1.24061.4</MicrosoftNetCompilersToolsetPackageVersion>
1111
<!-- dotnet/dotnet dependencies -->
1212
<MicrosoftDotNetFileBasedProgramsPackageVersion>10.0.200-preview.0.25556.104</MicrosoftDotNetFileBasedProgramsPackageVersion>
13-
<SystemCommandLinePackageVersion>2.0.0-rc.3.25560.108</SystemCommandLinePackageVersion>
13+
<SystemCommandLinePackageVersion>3.0.0-alpha.1.25570.101</SystemCommandLinePackageVersion>
1414
<!-- dotnet/runtime dependencies -->
1515
<MicrosoftBclAsyncInterfacesPackageVersion>9.0.0</MicrosoftBclAsyncInterfacesPackageVersion>
1616
<MicrosoftExtensionsConfigurationPackageVersion>9.0.0</MicrosoftExtensionsConfigurationPackageVersion>
@@ -39,13 +39,13 @@ This file should be imported by eng/Versions.props
3939
<SystemThreadingTasksDataflowPackageVersion>9.0.0</SystemThreadingTasksDataflowPackageVersion>
4040
<SystemWindowsExtensionsPackageVersion>9.0.0</SystemWindowsExtensionsPackageVersion>
4141
<!-- dotnet/arcade dependencies -->
42-
<MicrosoftDotNetArcadeSdkPackageVersion>11.0.0-beta.25560.1</MicrosoftDotNetArcadeSdkPackageVersion>
43-
<MicrosoftDotNetHelixSdkPackageVersion>11.0.0-beta.25560.1</MicrosoftDotNetHelixSdkPackageVersion>
44-
<MicrosoftDotNetXliffTasksPackageVersion>11.0.0-beta.25560.1</MicrosoftDotNetXliffTasksPackageVersion>
42+
<MicrosoftDotNetArcadeSdkPackageVersion>11.0.0-beta.25570.6</MicrosoftDotNetArcadeSdkPackageVersion>
43+
<MicrosoftDotNetHelixSdkPackageVersion>11.0.0-beta.25570.6</MicrosoftDotNetHelixSdkPackageVersion>
44+
<MicrosoftDotNetXliffTasksPackageVersion>11.0.0-beta.25570.6</MicrosoftDotNetXliffTasksPackageVersion>
4545
<!-- dotnet/symreader dependencies -->
4646
<MicrosoftDiaSymReaderPackageVersion>2.0.0</MicrosoftDiaSymReaderPackageVersion>
4747
<!-- dotnet/arcade-services dependencies -->
48-
<MicrosoftDotNetDarcLibPackageVersion>1.1.0-beta.25503.1</MicrosoftDotNetDarcLibPackageVersion>
48+
<MicrosoftDotNetDarcLibPackageVersion>1.1.0-beta.25161.2</MicrosoftDotNetDarcLibPackageVersion>
4949
<!-- dotnet/roslyn-analyzers dependencies -->
5050
<MicrosoftCodeAnalysisAnalyzersPackageVersion>3.11.0</MicrosoftCodeAnalysisAnalyzersPackageVersion>
5151
<MicrosoftCodeAnalysisAnalyzerUtilitiesPackageVersion>3.3.0</MicrosoftCodeAnalysisAnalyzerUtilitiesPackageVersion>

0 commit comments

Comments
 (0)