Skip to content

Conversation

@CyrusNajmabadi
Copy link
Member

No description provided.

CyrusNajmabadi and others added 30 commits October 20, 2025 23:00
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
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]>
jcouv and others added 19 commits October 22, 2025 12:56
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]>
…icTypes option for non-native symbol implementations (dotnet#80826)

Fixes dotnet#80165
@CyrusNajmabadi CyrusNajmabadi requested review from a team as code owners October 23, 2025 16:58
@dotnet-policy-service dotnet-policy-service bot added the Needs API Review Needs to be reviewed by the API review council label Oct 23, 2025
@RikkiGibson RikkiGibson changed the base branch from main to features/collection-expression-arguments October 23, 2025 17:00
@RikkiGibson RikkiGibson requested a review from a team as a code owner October 23, 2025 17:00
@CyrusNajmabadi CyrusNajmabadi merged commit efb462b into dotnet:features/collection-expression-arguments Oct 23, 2025
28 of 29 checks passed
@CyrusNajmabadi CyrusNajmabadi deleted the mergeMain branch October 23, 2025 20:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area-Compilers Needs API Review Needs to be reviewed by the API review council

Projects

None yet

Development

Successfully merging this pull request may close these issues.