github SonarSource/sonar-java

Release Notes - SonarJava - Version


  • [SONARJAVA-3609] - JAR files passed to remain locked after the analysis on Windows

  • [SONARJAVA-3652] - SuppressWarnings Filter lose knowledge of filtered lines

New Feature

  • [SONARJAVA-3614] - Rule S6073: Mockito argument matchers should be used on all parameters

  • [SONARJAVA-3630] - Rule S6103: AssertJ assertions with "Consumer" arguments should contain assertion inside consumers

  • [SONARJAVA-3632] - Rule S6104: Map "computeIfAbsent()" should not be used to add "null" values.

  • [SONARJAVA-3637] - Introduce "" to specify the JDK to be used by the analyzer to resolve JDK types




  • [SONARJAVA-3467] - FP on S1948 when using both field and setter/constructor injection

  • [SONARJAVA-3574] - S2755 FP when Factory is declared with lombok "val"

  • [SONARJAVA-3578] - FP in S2147 when the type of the Exception is needed inside the body.

  • [SONARJAVA-3620] - FP in S2384 when unmodifiable collection is returned from a non-final field

  • [SONARJAVA-3628] - FP in S5853 when assertions "flatExtracting" prevent the chaining

  • [SONARJAVA-3633] - FP in S4032 when there are several source directories

  • [SONARJAVA-3642] - FP in S1874 when parent constructor is deprecated but not used

  • [SONARJAVA-3647] - FP in S1481 when "for-each" variable nested in a lambda is actually used in the body

  • [SONARJAVA-3650] - FP in S2970 for nested class using JUnit 5 Soft assertions extension.

False Negative

  • [SONARJAVA-3555] - S4830 should support X509ExtendedTrustManager

  • [SONARJAVA-3575] - FN in S2095: support Apache commons IOUtils methods not closing the stream

  • [SONARJAVA-3626] - FN Rule S3824: Apply the same SymbolicValue for static constants or enum constants when used as MemberSelect

latest release: test_rules_cov
4 days ago