Skip to content

Conversation

@dependabot
Copy link

@dependabot dependabot bot commented on behalf of github Aug 21, 2023

Bumps SonarAnalyzer.CSharp from 8.25.0.33663 to 9.8.0.76515.

Release notes

Sourced from SonarAnalyzer.CSharp's releases.

9.8

This release completes our effort to migrate all our symbolic execution rules from our old to our new engine: S2583 and S2589 are now migrated and see significant improvements. Also, they are now available for VB.NET. This being the last analyzer to migrate means that the engines don't run in parallel anymore, which significantly reduces analysis time. On top of that, our TokenTypeAnalyzer got a rework, which also improves performance in terms of analysis time and memory usage.

New Rules

  • 7648 - [VB.NET] S2589: Boolean expressions should not be gratuitous
  • 7647 - [VB.NET] S2583: Conditionally executed code should be reachable

Improvements

  • 7646 - [C#] Migrate S2583/S2589 to the new Symbolic Execution engine (C#)
  • 7369 - [C#] UtilityAnalyzer: Move to a syntax based classification of identifiers in the token type utility analyzer
  • 7697, 7803 - Update RSPEC before 9.8 release

False Positives

  • 7789 - [C#] Fix S2583/S2589 FP: Do not raise when condition is in the body of a lock statement.
  • 2496 - [C#] Fix S2583,S2589 FP: with nullable struct - update symbolic execution engine
  • 5601 - [C#] Fix S2583 FP: Variable change not detected inside a loop
  • 5002 - [C#] Fix S2583 FP: Property pattern match in else-if condition
  • 4755 - [C#] Fix S2583 FP: When using nullable boolean in if-elseif-else.
  • 4559 - [C#] Fix S2583 FP: User-defined explicit/implicit casts
  • 3288 - [C#] Fix S2583 FP: Invocation argument constraints should be independent
  • 2411 - [C#] Fix S2583 FP: confusing message for Guid comparison - should trigger S2589 instead
  • 739 - [C#] Fix S2583 FP: Condition evaluates to constant - false positive when casting floating point numbers
  • 7489 - [C#] Fix S2589 FP: Deconstructing a tuple in foreach loop
  • 7096 - [C#] Fix S2589 FP: || and property patterns
  • 5221 - [C#] Fix S2589 FP with nullable value types
  • 3910 - [C#] Fix S2589 FP and FN: Conditional access and pattern matching
  • 3565 - [C#] Fix S2589 FP: with StringSegment and literal null
  • 3353 - [C#] Fix S2589 FP: ref parameters in multithreading

False Negative

  • 6745 - [C#, VB.NET] Fix S2589 FN: Detect comparison between constant values
  • 4515 - [C#] Fix S2583 FN: Local functions

9.7

This release focused on improving the precision of existing rules. We fixed a lot of False Positives, False Negatives, and bugs in Code Fixes.

We also reduced our memory footprint by reducing allocations in the hot path. Thank you @​sharwell, for reporting this in #7439 and #7440.

Special thanks to our contributor @​nalka0 for the correction of our rule documentation in #7587

Improvements

  • 7462 - [C#] Fix S1125: Codefix should set correct condition priority by adding parentheses.
  • 2618 - [C#] Fix S1125: Faulty code fix on C# pattern matching in conditional operator
  • 7213 - [C#] Improve S109 message

False Positive

  • 7633 - [C#] Fix S4023 FP: Interfaces that provide type parameters from base interface
  • 7629 - [C#] Fix S1186 FP: Empty method comes from interface
  • 7508 - [C#, VB.NET] Fix S6605 FP: Should not fire in expressions
  • 7324 - [C#] Fix S3063 FP: StringBuilder used in concatenation

... (truncated)

Commits
  • c1515ba UtilityAnalyzer: Wrong classifications: value in nameof (#7823)
  • dd0da2c UtilityAnalyzer: Wrong classifications: value in MemberAccess (#7822)
  • 360a2a5 UtilityAnalyzer: Wrong classifications: ref types (#7824)
  • 18f120f SE: Increase VisitCount for loop conditions to 3 (#7795)
  • dab5b34 UtilityAnalyzer: Optimize hot-path of TokenType analyzer (#7811)
  • 3d0f443 UtilityAnalyzer: Optimize SimpleMemberAccessExpression handling for the Token...
  • 287d36a UtilityAnalyzer: Annotate with performance sensitive (#7817)
  • e63e4e2 S1075: Add FN repro (#7816)
  • 3c5032e UtilityAnalyzer: Wrong classifications for AliasQualifiedNames (#7814)
  • 01782bd UtilityAnalyzer: Wrong classifcations for tuple elements (#7812)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [SonarAnalyzer.CSharp](https://github.com/SonarSource/sonar-dotnet) from 8.25.0.33663 to 9.8.0.76515.
- [Release notes](https://github.com/SonarSource/sonar-dotnet/releases)
- [Commits](SonarSource/sonar-dotnet@8.25.0.33663...9.8.0.76515)

---
updated-dependencies:
- dependency-name: SonarAnalyzer.CSharp
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added .NET Pull requests that update .net code dependencies Pull requests that update a dependency file labels Aug 21, 2023
@codecov
Copy link

codecov bot commented Aug 21, 2023

Codecov Report

Patch coverage has no change and project coverage change: -0.50% ⚠️

Comparison is base (cedbe94) 80.59% compared to head (0f5a37a) 80.10%.

Additional details and impacted files
@@                  Coverage Diff                   @@
##           g11n-csharp-client    #2574      +/-   ##
======================================================
- Coverage               80.59%   80.10%   -0.50%     
======================================================
  Files                      45       37       -8     
  Lines                    3169     3000     -169     
  Branches                  382      367      -15     
======================================================
- Hits                     2554     2403     -151     
+ Misses                    462      455       -7     
+ Partials                  153      142      -11     
Flag Coverage Δ
unittests 80.10% <ø> (-0.50%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

see 8 files with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@dependabot @github
Copy link
Author

dependabot bot commented on behalf of github Sep 4, 2023

Superseded by #2631.

@dependabot dependabot bot closed this Sep 4, 2023
@dependabot dependabot bot deleted the dependabot/nuget/singletonclient/g11n-csharp-client/SonarAnalyzer.CSharp-9.8.0.76515 branch September 4, 2023 16:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-not-required dependencies Pull requests that update a dependency file .NET Pull requests that update .net code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants