-
Notifications
You must be signed in to change notification settings - Fork 4.2k
Merge main into features/collection-expression-arguments. (#80510) #80868
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
Merged
CyrusNajmabadi
merged 56 commits into
dotnet:features/collection-expression-arguments
from
CyrusNajmabadi:mergeMain
Oct 23, 2025
Merged
Merge main into features/collection-expression-arguments. (#80510) #80868
CyrusNajmabadi
merged 56 commits into
dotnet:features/collection-expression-arguments
from
CyrusNajmabadi:mergeMain
Oct 23, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…kspaceExtensions.projitems
Part of dotnet/razor#11848 This makes the Razor experience for semantic tokens the same as the C# experience for the most part. Razor side: dotnet/razor#12367
…undefined type parameter (dotnet#80809) Fix dotnet#75651 --------- Co-authored-by: Cyrus Najmabadi <[email protected]>
) Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: CyrusNajmabadi <[email protected]> Co-authored-by: Cyrus Najmabadi <[email protected]> Co-authored-by: jcouv <[email protected]> Co-authored-by: Rikki Gibson <[email protected]>
[main] Update dependencies from dotnet/arcade
…ise operations Co-authored-by: CyrusNajmabadi <[email protected]>
Co-authored-by: CyrusNajmabadi <[email protected]>
…ore test cases Co-authored-by: CyrusNajmabadi <[email protected]>
…itializers' are involved
…larify partial members behavior (dotnet#80704)
Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: CyrusNajmabadi <[email protected]> Co-authored-by: Cyrus Najmabadi <[email protected]> Co-authored-by: AlekseyTs <[email protected]>
Co-authored-by: Stephan Bauer <[email protected]>
Closes dotnet#80273 There is a small change in behavior when dealing with extensions that aren't fully inferred. Previously, `GetCompatibleSubstitutedMember` dropped them. Now, it's up to the caller to decide. The `LookupSymbols_WasNotFullyInferred` test illustrates such a change. For lookup, we do want to return members that can't be fully inferred. Relates to test plan dotnet#76130
- [x] Understand the issue: GlobalStatementSyntax lacks XML documentation comments - [x] Identify the solution: Add TypeComment to Syntax.xml for GlobalStatementSyntax - [x] Add XML documentation to GlobalStatementSyntax in Syntax.xml - [x] Regenerate compiler code from Syntax.xml - [x] Build and verify the changes - [x] Review generated files to ensure documentation is present - [x] Address code review feedback: Consolidate into summary to avoid duplicate remarks sections - [x] Address review comment: Clarify that each top-level statement is wrapped in GlobalStatementSyntax - [x] Remove broken link to top-level statements proposal <!-- START COPILOT CODING AGENT SUFFIX --> <details> <summary>Original prompt</summary> > > ---- > > *This section details on the original issue you should resolve* > > <issue_title>Need docs about GlobalStatementSyntax</issue_title> > <issue_description>As a user, how do I find out about the purpose of GlobalStatementSyntax? Is it documented anywhere?</issue_description> > > <agent_instructions>Copilot. Please add a <TypeComment><summary> section for GlobalStatementSyntax in Syntax.xml.</agent_instructions> > > ## Comments on the Issue (you are @copilot in this section) > > <comments> > <comment_new><author>@tmat</author><body> > We also need a scripting specification.</body></comment_new> > </comments> > </details> Fixes dotnet#17118 <!-- START COPILOT CODING AGENT TIPS --> --- ✨ Let Copilot coding agent [set things up for you](https://github.com/dotnet/roslyn/issues/new?title=✨+Set+up+Copilot+instructions&body=Configure%20instructions%20for%20this%20repository%20as%20documented%20in%20%5BBest%20practices%20for%20Copilot%20coding%20agent%20in%20your%20repository%5D%28https://gh.io/copilot-coding-agent-tips%29%2E%0A%0A%3COnboard%20this%20repo%3E&assignees=copilot) — coding agent works faster and does higher quality work when set up for your repo. --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: CyrusNajmabadi <[email protected]>
…proper message and paramName (dotnet#80690) Fix ArgumentException in SeparatedSyntaxList.ReplaceSeparator Fixes the issue where `ReplaceSeparator` method throws `ArgumentException` with parameter names as messages instead of proper exception messages. ## Changes Made - [x] Fix the two ArgumentException calls in ReplaceSeparator method to use proper message and paramName parameters - [x] Break combined RawKind/Language check into two separate checks with dedicated resource strings - [x] Build and test the changes - [x] Code review ## Details - Fixed first exception (separator not found) to use `CodeAnalysisResources.MissingListItem` as message and `nameof(separatorToken)` as paramName - Split the combined RawKind/Language check into two separate checks: - RawKind mismatch: Uses `CodeAnalysisResources.SeparatorTokenMustHaveSameRawKind` - Language mismatch: Uses `CodeAnalysisResources.SeparatorTokenMustHaveSameLanguage` - Added two new resource strings to CodeAnalysisResources.resx - Updated .xlf files using dotnet msbuild /t:UpdateXlf - All tests pass (10 SeparatedSyntaxListTests) ## Verification Before fix: - Exception Message: 'separatorToken', ParamName: '' - Exception Message: 'newSeparator', ParamName: '' After fix: - Exception Message: 'The item specified is not the element of a list. (Parameter 'separatorToken')', ParamName: 'separatorToken' - Exception Message: 'New separator must have the same RawKind as the separator being replaced. (Parameter 'newSeparator')', ParamName: 'newSeparator' - Exception Message: 'New separator must have the same Language as the separator being replaced. (Parameter 'newSeparator')', ParamName: 'newSeparator' <!-- START COPILOT CODING AGENT SUFFIX --> <details> <summary>Original prompt</summary> > > ---- > > *This section details on the original issue you should resolve* > > <issue_title>SeparatedSyntaxList.ReplaceSeparator throws ArgumentException with bad message</issue_title> > <issue_description>The [ReplaceSeparator method throws ArgumentException passing in the parameter name](https://github.com/dotnet/roslyn/blob/8771786e5a80e9d27ffb40702f5cca558ca6fabb/src/Compilers/Core/Portable/Syntax/SeparatedSyntaxList.cs#L529) instead of a message as required by the exception constructor. This results in exceptions with odd one-word messages being thrown. > </issue_description> > > ## Comments on the Issue (you are @copilot in this section) > > <comments> > </comments> > </details> Fixes dotnet#2496 <!-- START COPILOT CODING AGENT TIPS --> --- 💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more [Copilot coding agent tips](https://gh.io/copilot-coding-agent-tips) in the docs. --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: CyrusNajmabadi <[email protected]>
…dotnet#78514) Closes dotnet#73498 Closes dotnet#77545 Fixes one part of dotnet#75833, the appropriate tests were adjusted to reflect the new behavior With this PR, the `GetSymbolInfo` API and all the corresponding APIs using it will be affected for the scenarios where an object creation expression used a constructor overload that doesn't exist, whilst the expression was being implicitly converted to another type. The previous behavior would resolve to the target type of the conversion, since the binding result would be an overload resolution, whereas now it has been changed to resolve to the existing overload resolution result. The goal of this change is also reflected in GTD which will now correctly navigate to the type whose constructor was not found, instead of the target conversion type, or the implicit conversion method. This also adds tests for explicit conversions on object creation expressions, covering the above scenaria, as well as testing the existing correct behaviors of when there is no conversion, or when there is no overload resolution failure. --------- Co-authored-by: AlekseyTs <[email protected]>
[main] Update dependencies from dotnet/arcade
…0812) The current version is marked as vulnerable and flagged by CG This should get backported into the corresponding .NET 10 GA branch.
…on tests (dotnet#80839) Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: CyrusNajmabadi <[email protected]> Co-authored-by: jcouv <[email protected]>
…eclaration (dotnet#80772) Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: CyrusNajmabadi <[email protected]> Co-authored-by: Cyrus Najmabadi <[email protected]>
…fixes dotnet#8699) (dotnet#80705) Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: CyrusNajmabadi <[email protected]> Co-authored-by: Cyrus Najmabadi <[email protected]>
…net#80796) Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: CyrusNajmabadi <[email protected]> Co-authored-by: Cyrus Najmabadi <[email protected]> Co-authored-by: Jan Jones <[email protected]>
…ontext (dotnet#80776) Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: CyrusNajmabadi <[email protected]> Co-authored-by: jjonescz <[email protected]>
To fix ngen errors with Microsoft.CodeAnalysis.TypeScript.EditorFeatures.dll ``` 10/23/2025 12:11:39.887 [7296]: 4> Compiling assembly C:\VisualStudio\Common7\IDE\CommonExtensions\Microsoft\TypeScript\Microsoft.CodeAnalysis.TypeScript.EditorFeatures.dll (CLR v4.0.30319) ... 10/23/2025 12:11:40.700 [7296]: 4>Warning: System.MissingMethodException: Method not found: 'Void Microsoft.CodeAnalysis.DocumentSpan..ctor(Microsoft.CodeAnalysis.Document, Microsoft.CodeAnalysis.Text.TextSpan)'. while resolving 0xa000bf1 - Microsoft.CodeAnalysis.DocumentSpan..ctor. 10/23/2025 12:11:40.734 [7296]: 3> Compiling assembly C:\VisualStudio\Common7\IDE\CommonExtensions\Microsoft\TypeScript\Microsoft.VisualStudio.LanguageServices.TypeScript.dll (CLR v4.0.30319) ... 10/23/2025 12:11:41.617 [7296]: 4>Method not found: 'Void Microsoft.CodeAnalysis.DocumentSpan..ctor(Microsoft.CodeAnalysis.Document, Microsoft.CodeAnalysis.Text.TextSpan)'. while compiling method DefinitionItemReader.NewObject ```
…rs in using declarations Co-authored-by: CyrusNajmabadi <[email protected]>
…ionInitializerTests.cs
…icTypes option for non-native symbol implementations (dotnet#80826) Fixes dotnet#80165
RikkiGibson
approved these changes
Oct 23, 2025
efb462b
into
dotnet:features/collection-expression-arguments
28 of 29 checks passed
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.