Skip to content
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

C#: Update Roslyn nuget dependencies. #18199

Merged
merged 9 commits into from
Dec 6, 2024

Conversation

michaelnebel
Copy link
Contributor

@michaelnebel michaelnebel commented Dec 4, 2024

In this PR we

  • Update the Roslyn dependencies to the newest version available.
  • Furthermore, we change the strategy for getting package version to use the newest available version <-- Note that this only happens when we explicitly update the dependencies using the update_deps.sh script as this creates a lock file that locks packages to a specific version number. The motivation for this is because we got the compiler warning: GHSA-xhfc-gr8f-ffwc (which is most likely because one of the transitive dependencies is using it).

Comments to the updated expected test output.

  • There appears to be an improvement to Roslyn, which means that the call target of new() is correctly extracted.
  • The format test expected output is updated as the params keyword is correctly extracted.
  • The parameters test is limited to inspect only source code (a feature of C# 13 is that params is now supported for a wide range of collection types). https://learn.microsoft.com/en-us/dotnet/csharp/whats-new/csharp-13#params-collections

There was an issue with the binary log extraction (it could be reproduced outside the extractor). jaredpar/complog#187. This was quickly fixed and a new version of the binlog package is now referenced instead.

DCA:

There doesn't appear to be any performance regressions or changes to the security related alerts, but there is an increase in the number of compilation errors.
I looked into the compiler errors for dotnet/runtime and dotnet/roslyn. It appears that there are two categories of errors.

  • Compiler errors related to the use of field within property accessors.
  • Compiler errors related to not having interceptors enabled.

Both of these features are preview features (I checked that preview features are enabled for dotnet/runtime). The SHAs of the projects analyzed are pretty old. Roslyn yields compilation errors because

@michaelnebel michaelnebel marked this pull request as ready for review December 6, 2024 13:51
@michaelnebel michaelnebel requested review from a team as code owners December 6, 2024 13:51
@michaelnebel michaelnebel merged commit 9513b6c into github:main Dec 6, 2024
23 checks passed
@michaelnebel michaelnebel deleted the csharp/updateroslyn branch December 6, 2024 14:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants