Skip to content

Releases: SonarSource/sonar-dotnet

6.7.1

21 Dec 14:38
Compare
Choose a tag to compare

Bug

  • #992 - Fix S3532: default clauses with comments should not be reported
  • #1002 - Fix EmptyCollectionsShouldNotBeEnumerated: Rule should not throw InvalidOperationException
  • #1003 - Fix S3237: Rule should not throw NullReferenceException when using expression body accessor
  • #1006 - Fix S101: Rule should not throw IndexOutOfRangeException
  • #1009 - Fix S2933: Code Fix should handle regions
  • #1014 - Support symbol highlighting for multi-targetting projects that use conditional compilation

False Positive

  • #888 - Fix S1144: False positive on async Main
  • #1010 - Fix S2187: rule should not warn on MSTest when using DataTestMethodAttribute
  • #1015 - Fix S107: "Methods with too many parameters" should not raise on constructors calling base
  • #1024 - Fix S1172: Rule should also ignore the new Main syntax

Improvement

  • #1004 - Support syntax highlighting for multi-targetting projects that use conditional compilation

6.7

01 Dec 13:42
73c0369
Compare
Choose a tag to compare
6.7

Bugs

  • #934 - Don't fail to parse issues on file names with '['

False Positives

  • #318 - Fix S101: Rule should not report an issue on auto-generated members
  • #704 - Fix S3168: Rule should not raise FP with UWP event args
  • #707 - Fix S4056 and S4058: False positive for string comparisons with StringComparison parameter
  • #733 - Update S2325: Rule should exempt MVC / Web Api controller public methods
  • #804 - Update S2583: Should not raise issues for boolean constants and literals in conditions
  • #929 - Fix S2187: Rule should not raise an issue when class is abstract

Improvements

  • #396 - Update S104: "Too many lines in a file" should only count lines of code
  • #656 - Update sensors to support projects with linked (shared) files
  • #722 - Update S3415: Support other test frameworks
  • #752 - Rule S1110: Redundant parenthesis - move the implementation from S3235
  • #786 - Update S2187: Rule should handle "TheoryAttribute"
  • #836 - Update S2068: Make the rule parameterised
  • #910 - Update S2436: Rule should provide another parameter for methods
  • #917 - Remove support for deprecated 'sonar.cs.msbuild.testProjectPattern'
  • #921 - Change the log level of the autogenerated file messages to DEBUG
  • #973 - Update SonarC#: Unit Tests total and skipped numbers are not consistent
  • #979 - Update S2187: Rule should handle TestCaseSourceAttribute
  • #981 - Update S1607: Rule should handle 'TestCaseSourceAttribute'
  • #983 - Update S2699: Rule should handle more test method attributes
  • #989 - SonarC# should display a warning when coverage report doesn't cover any file imported in SonarQube
  • #991 - Enable analysis on non-Windows OSes

New Features

  • #955 - Rule S113: Files should contain an empty newline at the end

6.7-RC1

24 Nov 13:48
2829ab3
Compare
Choose a tag to compare
6.7-RC1 Pre-release
Pre-release

6.6

07 Nov 13:21
4df62ac
Compare
Choose a tag to compare
6.6

Bug

  • #535 - CSharp sensor should fail if OS is not windows.
  • #803 - Fix S3242: Rule should not throw ArgumentException
  • #819 - Fix S2325: 'Member should be static' throws NullReferenceException
  • #834 - Fix S3242: Rule throws ArgumentException when 2+ params of method have the same name

False Positive

  • #640 - Fix S3242: Rule should not report when more general type doesn't have indexer
  • #680 - Fix S3242: Rule should not suggest IEnumerable when there are multiple iterations over the collection
  • #705 - Fix S3242: Should not suggest base class for arguments when method has an event handler signature
  • #782 - Fix S3242: Do not suggest ICollection<KVP<TKey, TValue>>
  • #795 - Fix S4004: Rule should not raise a violation when [DataMember] is applied
  • #809 - Fix S4070: False positive with combined values
  • #813 - Fix S3242: Do not suggest IReadOnlyCollection interface instead of IReadOnlyList if collection items are accessed by index
  • #828 - Fix S2758: false positive on conditional operator with interpolated string
  • #863 - Fix S3242: Rule should not suggest base type resulting in inconsistent accessibility

Improvement

  • #237 - Do not import files detected as autogenerated in SonarQube
  • #364 - Improve test sensors to execute them only when the related property is defined
  • #428 - Do not skip source files that contains "ExcludeFromCodeCoverage*" attributes
  • #839 - Update S1226: "Parameter values should not be ignored" should be a bug
  • #840 - Update S1751: "Unconditional jump statements" should be a code smell
  • #841 - Update S2234: "Parameters should be passed in correct order" should be a code smell
  • #842 - Update S2681: "Multiline blocks should be in curly braces" should be a code smell
  • #843 - Update S3010: "Static fields should not be updated in constructors" should be a code smell
  • #844 - Update S4158: "Empty collections should not be iterated" should be a bug
  • #851 - Fix Cognitive Complexity Metric to detect recursion correctly
  • #858 - Update release notes link in vsix manifest and nuget spec
  • #862 - Improve test assembly detection logic
  • #905 - Improve generated code recognition

New Feature

  • #155 - Feed metric 'executable_lines_data' when SQ >= 6.2

External Contributors

6.6-RC1

31 Oct 16:24
36a94e2
Compare
Choose a tag to compare
6.6-RC1 Pre-release
Pre-release

6.5

19 Oct 14:19
Compare
Choose a tag to compare
6.5

Bug

  • #792 - Fix S3928: Rule throws NullReferenceException

False Positive

  • #708 - Fix S4056: Rule should not recommend to use obsolete methods
  • #761 - Fix S1168: Rule should not report when returning null within a lambda

New Feature

  • #740 - Rule S4225: Extension methods should not extend "object"
  • #741 - Rule S4226: Extensions should be in separate namespaces
  • #742 - Rule S4220: Events should have proper arguments
  • #746 - Rule S4214: "P/Invoke" methods should not be visible
  • #779 - Rule S4260: "ConstructorArgument" parameters should exist

Notes

6.5-RC1

17 Oct 14:05
Compare
Choose a tag to compare
6.5-RC1 Pre-release
Pre-release

6.4.1

22 Sep 09:07
Compare
Choose a tag to compare

Bug

  • #791 - Fix SonarC#: Parameterized rules are not read properly

Notes

6.4

31 Aug 13:56
Compare
Choose a tag to compare
6.4

Bug

  • #631 - Fix S2325: Should raise issues for methods and properties with SuppressMessage attribute
  • #671 - Update of plugin to v6.3(build 2862) doesn't report any issues in code.
  • #690 - Fix S3881: Rule should not fail with 'Syntax node is not within syntax tree'
  • #721 - Fix link to GitHub page on sonarlint-website
  • #725 - Fix S1121: NullReferenceException when while loop with assignment expression is within a for loop with no condition
  • #726 - Fix S2372: do not throw ArgumentNullException on nlog
  • #727 - Fix CognitiveComplexity to not throw an exception on Lucene.Net
  • #728 - Fix S3877: do not throw ArgumentNullException on ravendb

False Positive

  • #538 - Fix S2259: "Null pointer dereference" false positive when fields qualified with 'this' are assigned and then read
  • #596 - Fix S3242: Rule should not trigger on interface methods
  • #655 - Update S3881: Correct documentation and add more unit tests
  • #674 - Rules S3897 and S4035 might be in contradiction
  • #682 - Fix S1751: Rule shouldn't raise on exceptions within while loops
  • #692 - Fix S3263: Rule should not raise when constant field is used in initialization
  • #694 - Fix S2372: Allow some exceptions being raised in properties as per CA1065
  • #701 - Fix S3897: Rule should not suggest to implement IEquatable when Equals is not public

Improvement

  • #601 - Update S110: Update the rule behavior to not count classes defined into another root namespace
  • #623 - Update S2068: Credentials should not be hard-coded
  • #684 - Update SonarLint website to mention GitHub repository as a place to file issues

New Feature

  • #335 - Update plugin to support NUnit 3 test results
  • #581 - Rule S2183: Ints and longs should not be shifted by zero or more than their number of bits-1
  • #582 - Rule S1168: Empty arrays and collections should be returned instead of null
  • #610 - Rule S4144: Methods should not have identical implementations
  • #611 - Rule S4142: Duplicate values should not be passed as arguments
  • #626 - Rule S3433: Test methods should have correct signature
  • #636 - Rule S4158: Empty collections should not be accessed or iterated
  • #662 - Rule S1607: Tests should not be ignored
  • #663 - Rule S3415: Assertion arguments should be passed in the correct order
  • #664 - Rule S2701: Literal boolean values should not be used in assertions
  • #665 - Rule S2699: Tests should include assertions
  • #666 - Rule S3431: 'ExpectedExceptionAttribute' should not be used
  • #667 - Rule S2187: Test class should contain test methods

Notes

6.4-RC1

25 Aug 12:47
Compare
Choose a tag to compare
6.4-RC1 Pre-release
Pre-release