Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Dec 1, 2024

This PR contains the following updates:

Package Change Age Confidence
SonarAnalyzer.CSharp (source) 9.26.0.92422 -> 10.17.0.131074 age confidence

Release Notes

SonarSource/sonar-dotnet (SonarAnalyzer.CSharp)

v10.17.0.131074: 10.17

Compare Source

False Negative
  • NET-2840 - Improve S2077: Support more methods
Task
  • NET-2839 - Update RSPEC before 10.17 release
New Feature
  • NET-2820 - ShimLayer: Implement Factory
  • NET-2789 - ShimLayer Generator: Enums
  • NET-2728 - ShimLayer Generator: SyntaxNodes
Bug
  • NET-2816 - Fix S3603 AD0001: NRE when LocalFunction inside Record constructor in C#7
Improvement

v10.16.1.129956: 10.16.1

Compare Source

Rotations of binary signing keys

v10.16.0.128591: 10.16

Compare Source

False Positive
  • NET-1729 - Fix S2114 FP: list.AddRange(list) and list.Concat(list) are sensible
False Negative
  • NET-399 - Fix S4790 FN: Support CryptographicOperations data methods
Bug
  • NET-2686 - Fix S3604 AD0001: NRE with partial constructor

v10.15.0.120848: 10.15

Compare Source

False Positive
  • NET-2198 - Fix S1905 FP: Cast of default! expression is required
  • NET-2197 - Fix S1905 FP: stackalloc and Span conversions
  • NET-1641 - Fix S1905 FP: casting IEnumerable<string?> to IEnumerable<string>
  • NET-2157 - Fix S2589 FP: Don't raise an issue after a delegate is invoked
  • NET-2073 - Fix S2699 FP: Add support for FsCheck property tests
  • NET-1537 - Fix S6964 FP: Don't raise on properties annotated with the BindRequiredAttribute
Improvement
  • NET-2112 - Consider ExplodedNodes relevant if a successor would be relevant
  • NET-2183 - SE: Set constraint on operation when learning from IsPattern
False Negative
  • NET-429 - Fix S4275 FN: Support partial properties
Task
  • NET-2208 - Update RSpec before release

v10.14.0.120626: 10.14

Compare Source

Hey everyone,

This release mostly focuses on mitigating (NET-2196) a performance regression that was introduced in 10.13.

Improvement
  • NET-2196 - Fix path algorithm for execution flows to mitigate performance regression
  • NET-2177 - Improve how the Symbolic Execution engine handles exception paths
  • NET-2135 - Support xUnit V3
  • NET-2163 - Provide Interface for other plugins to add rules to VB.NET SonarWay profile
False Negative
  • NET-235 - Fix S2053: Adjust required salt length to be 32 bytes
Task
  • NET-2170 - Update RSPEC before 10.14 release

v10.13.0.120203: 10.13

Compare Source

Hello everyone,

In this release, we've focused on:

  • False positive fixes
  • Enhancing S2259's secondary locations to provide clearer, step-by-step explanations of null pointer dereferences issues.
False Positives
  • NET-2099 - Fix S3885 FP: Do not raise in ResolutionEventHandler
  • NET-2023 - Fix S3257 FP: Array with target-typed new
  • NET-1646 - Fix S3267 FP: Loops should be simplified with LINQ expressions
  • NET-1588 - Fix S1066 FP: Combination of dynamic and out should not raise
  • NET-882 - Fix S3257 FP: Don't raise for C# 10 and later when there's explicit delegate creation
Improvements
  • NET-2095 - Improve incremental PR analysis path detection
  • SE: S2259 - Improve secondary locations

v10.12.0.118525: 10.12

Compare Source

This release brings the VB version of S6418 and a few FP and FN fixes.

New Rule
  • NET-1379 - New Rule: Implement S6418 Hard-coded secrets are security-sensitive for VB.NET
False Positive
  • NET-1526 - Fix S3267 FP: Only raise on IEnumerable
False Negative
  • NET-1260 - Fix S1215 FN: GC.GetTotalMemory(forceFullCollection: true) should not be called
  • NET-1258 - Fix S6678 FN: Lowercase placeholders in interpolated string
  • NET-1255 - Fix S3267 FN: Logical operators are not supported
Task
  • NET-2060 - Update RSPEC before 11.12 release

v10.11.0.117924: 10.11

Compare Source

Hello everyone!
In this release we fixed a bunch of false positives and false negatives.
Additionally this version adds support for telemetry in order to gather information on feature usage. Telemetry, requires scanner 10.2.0 or greater.

False Positive
  • NET-1522 - Fix S2068 FP: Do not raise on password:secret
  • NET-1149 - Fix S3626 FP: Add exception when return statement is preceding local functions
False Negative
  • NET-1263 - Fix S1871 FN: Nested if .. else if chain
  • NET-1256 - S2068: Remove word boundary(\b) from regex
  • NET-1254 - Fix S3878 FN: When params are passed as array through an attribute
  • NET-1252 - FN S1168: Support IndexerDeclaration and ConversionOperatorDeclaration
  • NET-459 - Fix S1168 FN: Add support for partial indexers

v10.10.0.116381: 10.10

Compare Source

Hey everyone, this release mostly focuses on internal and technical things.

General
  • NET-1444 - Move ProfileRegistrar to org.sonar.plugins.csharpenterprise.api
  • NET-1326 - Update RSPEC before 10.10 release
Internal Styling Rules
  • NET-1378 - New Rule T0045: Use var
  • NET-1359 - New Rule T0043: Avoid primary constructors on normal classes and structs
  • NET-1358 - New Rule T0042: Indent raw string literal +4
  • NET-1357 - New Rule T0041: Use raw string literals for multiline strings
  • NET-1356 - New Rule T0040: Use minimum necessary interpolation characters
  • NET-1355 - New Rule T0039: Protected field should start with lower case letter
  • NET-1354 - New Rule T0038: Use fields instead of auto-implemented private or protected properties
  • NET-1347 - New Rule T0000: Don't use Get prefixes
  • NET-1346 - New Rule T0037: Use .Test suffix namespace
  • NET-1345 - New rule T0046: Move extension method to dedicated class
  • NET-1344 - New Rule T0035: Do not use var for this deconstruction
  • NET-1343 - New Rule T0034: Do not embed var into this condition
  • NET-1342 - New Rule T0033: Swap the logic to use positive conditions instead
  • NET-1341 - New Rule T0032: Move the method body to the next line
  • NET-1339 - New Rule T0030: Move the field initializer on the same line
  • NET-1338 - New Rule T0029: Indent all arguments +4 further than the invocation line
  • NET-1337 - New Rule T0028: Move all arguments on the same line, or wrap all of them
  • NET-1336 - New Rule T0027: Move subsequent expressions on separate lines
  • NET-1335 - New Rule T0026: Indent member access +4 further than the initial line
  • NET-1334 - New Rule T0025: Indent ‘?’ and ‘:’ +4 further than the condition line
  • NET-1333 - New Rule T0024: Place multiline ‘?’ and ‘:’ on separate lines
  • NET-1332 - New Rule T0022: Indent all parameters with the first one
  • NET-1331 - New Rule T0021: Use extension methods for Linq
  • NET-1329 - New Rule T0019: Indent operator correctly
  • NET-1328 - New Rule T0018: Move the operator to the beginning of the next line
  • NET-1327 - New Rule T0015: Move local function at the end of the method
  • NET-1237 - New Rule T0044: Don't add Arrange, Act, and Assert(s) comments
  • NET-1325 - Improve T0007: Raise on nondeclaring is { } check

v10.9.0.115408: 10.9

Compare Source

Hello everyone!

This is a mega-hardening release! Enjoy 😄

False Positive
  • NET-1309 - Fix S2583 FP: Support overrides in IsImplementingInterfaceMember
  • NET-1308 - Fix S2583 FP: Add support for AdressOf operator
  • NET-1302 - Fix S4158 FP: Don't raise on GetEnumerator() calls
  • NET-1295 - Fix S3236 FP: Exclude Debug.Assert
  • NET-1290 - Fix S4158 FP: Support RouteValueDictionary in AspNetCore
  • NET-1289 - Fix S4158 FP: Adding methods with well defined sematics
  • NET-1288 - Fix S4158 FP: Recognize Add methods with bool return type
  • NET-1287 - Fix S4158 FP: Don't raise on SetValue
  • NET-1280 - Fix S2342 FP: Flaky reports
  • NET-1278 - Fix S3440 FP: Variable assignment and switch expression
  • NET-1246 - Fix S1481 FP: Don't report on discard like looking variables
  • NET-1242 - Fix S2583/S4158 FP: Support for collections that are initialized with object
  • NET-1241 - Fix S2589 FP: Don't track concurrent collections
  • NET-1230 - Fix S4158 FP: Immutable collections
  • NET-1223 - Fix S3267 FP: ref struct types cannot leave the stack
  • NET-1214 - Fix S2259 FP: Foreach loop over empty collection
  • NET-1212 - Fix S2259 FP: Learn bool from NotNull constraint and Null value
  • NET-1208 - Fix S2589 FP: Rule ignores case guards
  • NET-1207 - Fix S3966 FP: disposing element of indexable after declaration pattern
  • NET-1203 - Fix S3966 FP: Enumerating a collection of tuples
  • NET-1202 - Fix S2259 FP: Foreach nested in try, nested in loop
  • NET-1188 - Improve S4158 - Empty Collections should not be Enumerated
  • NET-1088 - Fix S3240 FP: Ignore when a conditional block contains a ternary
  • NET-800 - Fix S2259 FP: FlowCaptures in loops and try-regions
False Negative
  • NET-1299 - Fix S2053 FN: Support Copy methods
  • NET-1257 - Fix S4790 FN: New HashData overloads not recognized
  • NET-1194 - Fix S4158 FN: Collection Expressions (C# 12)
  • NET-357 - Fix S2068 FN: does not consider launchSettings.json files
  • NET-210 - Fix S4158 FN: AddRange with empty collection
Bug
  • NET-1267 - Fix S2068 bug: Issue location is out of range in web.config for elements or attributes with an xml namespace
  • NET-1184 - Roslyn rule import should map the issue severity to the Software Quality impact in SonarQube Server
Improvement
  • NET-1217 - Improve S3996: Set location to the property instead of record

v10.8.0.113526: 10.8

Compare Source

A small release with a few improvements for S1172, S2222 and S4158:

False Positive
  • NET-1210 - Fix S4158 FP: collection filled by another function
  • NET-1168 - Fix S1172 FP: When parameter is used in local function in a null-conditional or null-coalescing statement
False Negative
  • NET-427 - Fix S2222 FN: Support locking via Lock object primitives
  • NET-1228 - Fix S4158 FN: Support LinkedList

v10.7.0.110445: 10.7

Compare Source

Improvement
  • NET-1116 - Deprecate S1227: break statements should not be used except for switch cases
  • NET-1045 - Remove unused AnalyzerId and RuleNamespace server properties
Bug
  • NET-1047 - Fix install scripts for NuGet packages

v10.6.0.109712: 10.6

Compare Source

Improvement
  • NET-735 - Remove RoslynProfileExporter
  • NET-1031 - Remove deprecated SonarLintProfileExporter
  • NET-1038 - Add symbolic-execution tag to our rules
  • NET-988 - Remove S1197 from SonarWay for VB.NET
  • NET-989 - S3444: Add secondary location message
  • NET-982 - S4144: Add secondary location message
  • NET-979 - S4663: Add secondary location message
  • NET-978 - S1168: Add secondary location message
  • NET-977 - S4047: Add secondary location message
  • NET-976 - S4457: Add secondary location message
  • NET-975 - S1066: Add secondary location message
  • NET-974 - S4070: Add secondary location message
  • NET-973 - S1110: Add secondary location message
  • NET-971 - S2612: Add secondary location message
  • NET-970 - S6667: Add secondary location message
  • NET-969 - S6931: Add secondary location message
  • NET-968 - S6934: Add secondary location message
  • NET-967 - S5034: Add secondary location message
  • NET-966 - S6607: Add secondary location message
  • NET-965 - S4143: Add secondary location message
  • NET-961 - S6664: Add secondary location message
  • NET-960 - S6677: Add secondary location message
  • NET-956 - S6673: Add secondary location message

v10.5.0.109200: 10.5

Compare Source

Improvement
  • NET-957 - S5693: Add secondary location message

v10.4.0.108396: 10.4

Compare Source

Improvements

In this release, we have added support for test density and metrics at the individual file level. You can now view the number of unit tests, as well as details on skipped tests, failed tests, and test duration, from all supported coverage tools (xUnit, MsTest, and nUnit).

Additionally, we have significantly optimized memory allocation, resulting in memory usage reduction during registration.

False Positive
  • NET-868 - Fix S1854 FP: Don't raise when inner finally assignment is used to outer block
  • NET-865 - Fix S1172 FP: Parameter used as extension delegate target
  • NET-863 - Fix S1172 FP: Don't report on partial method parameters
  • NET-862 - Fix S1854 FP: Don't raise in catch when variable is used in following catch
  • NET-857 - Fix S3655 FP: Types with implicit conversion operator
  • NET-836 - Fix S1854 FP: Value used after catch
False Negative
  • NET-798 - Fix S1854 FN: Support &&, ||, ?? and ??=
Task
  • NET-763 - Update RSPEC before 10.4 release

v10.3.0.106239: 10.3

Compare Source

False Positive
  • NET-675 - Fix S1144 FP: support struct constructor calls
  • NET-499 Telemetry: Report Language version and target framework
Other

v9.32.0.97167: 9.32

Compare Source

This rule includes the promotion of 4 rules to Sonar-way, the deprecation of 1 rule and 2 FP fixes.

Rule Promotions and Deprecations
  • 9644 - Modify S2387: Deprecate rule
  • 9643 - Modify S4050: Promote to Sonar-way
  • 9642 - Modify S2674: Promote to Sonar-way
  • 9641 - Modify S3993: Promote to Sonar-way
  • 9640 - Modify S4052: Promote to Sonar-way
False Positive
  • 9590 - [C#] Fix S6966 FP: EntityFrameworks IDbContextFactory CreateDbContext method is preferred over its Async counterpart
  • 8300 - [C#] Fix S3431 FP: Don't raise if assertions are done in catch or finally

v9.31.0.96804: 9.31

Compare Source

This release focuses on improving the SonarQube plugin for the .NET analyzers.

Improvements
  • 9558 - SQ Plugin: Load STIG standard after ACOMMONS-11 is done
  • 8503 - SQ Plugin: Align logging for not indexed files
  • 7798 - SQ Plugin: Remove the sonar runtime checks for versions prior 9.9
  • 7115 - SQ Plugin: Replace org.sonar.api.utils.log.Logger
  • 4687 - SQ Plugin: Add xunit report paths in products UI
  • 4685 - SQ Plugin: Remove deprecated import of integration test coverage from plugins
  • 3102 - SQ Plugin: Replace usages of deprecated Build.setProfile in the integration tests
  • 8032 - SQ Plugin: Update the plugin to store the hash for the .cshtml files to enable incremental PR analysis

v9.30.0.95878: 9.30

Compare Source

Hello, everyone. In this release, we worked on hardening our live variable analysis, which improved the analyzer's accuracy.

False Positives
  • 9473 - Fix S1854 FP: Raises when a variable is reassigned in a using body after it has been already assigned in using statement
  • 9472 - Fix S1854 FP: Raises when a variable is assigned in the switch statement and not used in the first case
  • 9471 - Fix S1854 FP: Raises when a variable is assigned in expression that is part of the ternary condition
  • 9468 - Fix S1854 FP: Throw should connect to outer catch
  • 9466 - Fix S1854 FP: Throw should visit finally

v9.29.0.95321: 9.29

Compare Source

This release includes a lot of false positive and false negative fixes.

Improvements
  • 2120 - [C#] Improve S3247: Rule should recommend pattern matching for new C# instead of as
  • 9465 - Update RSPEC before 9.29 release
False Positive
  • 7522 - [C#] Fix S1104 FP: Do not report in Unity3D serializable classes
  • 6990 - [C#] Fix S1144 FP: Event with a concrete sender
  • 3842 - [C#] Fix S1144 FP: Ignore unused Deconstruct methods
  • 8239 - [C#] Fix S1450 FP: When field is assigned value in event handler
  • 9494 - [C#] Fix S1694 FP: Abstract class with field or constructor
  • 9421 - [C#] Fix S1694 FP: Protected abstract methods
  • 3605 - [C#] Fix S2219 FP: Is operator used for pattern matching
  • 8266 - [C#] Fix S2259 FP: SE engine doesn't take into account element existence collection methods
  • 9485 - [C#] Fix S3247 FP: Should not report on member access objects
  • 6343 - [C#] Fix S3963 FP: Static constructor with conditional and no static field initialization
  • 7961 - [C#, VB.NET] Fix S2699 FP: Support Moq
False Negative
  • 9491 - [C#] Fix S3247 FN: When cast expression contains parentheses
  •   223 - [C#] Fix S3247 FN: Rule should catch more duplicated cast

v9.28.0.94264: 9.28

Compare Source

False Positive
  • 9432 - [C#] Fix S1144 FP: Unused fields in class with StructLayout when struct is in deep hierarchy class
  • 9379 - [C#] Fix S1144 FP: Diagnostic doesn't respect reflection with DynamicallyAccessedMembers attribute
  • 8342 - [C#] Fix S1144 FP: Private Attributes
  • 7068 - [C#] Fix S4144 FP: when type constraints are used
  • 3050 - [C#] Fix S1479 FP: Single line case clause should be ignored
  • 9447 - [C#] Fix S1854 FP: Value used in catch or when should LiveIn for all try blocks
  • 9440 - [C#] Fix S1854 FP: Value used in finally should LiveIn for all try blocks
  • 4948 - [C#] Fix S1854 FP: Value used in finally should LiveIn after throw
  • 6894 - [C#, VB.NET] Fix S3878 FP: When non-object array is passed to object[] params as first argument
  • 6893 - [C#, VB.NET] Fix S3878 FP: when a params argument is named
False Negative
  • 8719 - [C#, VB.NET] Fix S2583/S2589 FN: try-catch in loop, LVA purges symbol prematurely
  • 4940 - [C#] Fix S1854 FN: Proper support of try/catch statements
  • 1255 - [C#] Fix S1871 FN: Support single line conditional block

v9.27.0.93347: 9.27

Compare Source

This release includes a ton of false positive and false negative fixes. We would also like to thank @​sagi1623 for his contribution in #​8464, which fixed three issues 🚀.

Improvements
  • RSPEC change - Rule S1694: Promoted to SonarWay
  • 9390 - Rule S6608: Benchmark is benchmarking the wrong things
  • 8795 - [C#] Improve S1694: Remove part about protected constructor
  • 5417 - Enable multiple project level issues
  • 9372 - Update RSPEC before 9.27 release
False Positive
  • 9247 - [C#] Fix S2629 FP: Constant fields in interpolated string
  • 9241 - [C#, VB.NET] Fix S2094 FP: Allow empty queries
  • 9106 - [C#] Fix S3459 FP: Backing field with ref property
  • 8522 - [C#, VB.NET] Fix S3220 FP: Rule does not take into account generics
  • 8436 - [C#] Fix S3253 FP: Don't raise for primary constructor in type declarations without parameters when they inherit from types with parameters
  • 8199 - [C#, VB.NET] Fix S2737 FP: Raised when exception filter is used
  • 8025 - [C#] Fix S2325 FP: Partial method implementations
  • 7521 - [C#] Fix S2743 FP: Should not raise when base type is generic
  • 7137 - [VB.NET] Fix S1654 FP: Do not report on event handlers, interfaces and overrides
False Negative
  • 9002 - [C#, VB.NET] Fix S6931 FN: Route templates starting with ~/
  • 6644 - [C#] Fix S2190 FN: No issues raised if recursion is inside an EventDeclaration by @​sagi1623
  • 6643 - [C#] Fix S2190 FN: No issues raised if recursion is inside a ConversionOperatorDeclaration by @​sagi1623
  • 6642 - [C#] Fix S2190 FN: No issues raised if recursion is inside an indexer by @​sagi1623
  • 4081 - [C#] Fix S2743 FN: Static fields of nested class inside generic class

Configuration

📅 Schedule: Branch creation - "before 10pm on Sunday" in timezone America/Chicago, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch 2 times, most recently from e1a4e56 to a9e9c01 Compare December 8, 2024 10:23
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch 2 times, most recently from bd21f24 to fd107b5 Compare December 22, 2024 11:02
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch from fd107b5 to 1b7a202 Compare January 10, 2025 17:31
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch from 1b7a202 to 6f6d4b4 Compare January 29, 2025 13:00
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch from 6f6d4b4 to 53c609a Compare February 28, 2025 11:38
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch from 53c609a to 4dfdbce Compare April 8, 2025 19:37
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch from 4dfdbce to 50098cd Compare May 1, 2025 11:14
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch from 50098cd to c5f93bf Compare May 19, 2025 16:51
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch from c5f93bf to 4908599 Compare June 6, 2025 22:59
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch from 4908599 to 142c289 Compare June 18, 2025 15:31
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch from 142c289 to 61aae59 Compare July 9, 2025 12:15
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch 2 times, most recently from 32ffbe6 to ba1b076 Compare July 22, 2025 20:30
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch 2 times, most recently from f919b5d to 9e791eb Compare December 3, 2025 10:39
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch 4 times, most recently from e7013ab to dba436f Compare December 23, 2025 13:45
@renovate renovate bot force-pushed the renovate/sonaranalyzer.csharp-10.x branch from dba436f to 4576297 Compare December 28, 2025 13:03
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.

1 participant