Skip to content

Releases: SonarSource/sonar-java

7.29.0.34131

28 Nov 13:23
1157309
Compare
Choose a tag to compare

Release notes - SonarJava - 7.29

Bug

SONARJAVA-4591 S1319 Update MAPPING for TreeMap

SONARJAVA-4617 S1226 - Fix CFG construction inside "return switch" expression for yield without break cases

Documentation

SONARJAVA-4703 Update RSPEC S6809 and S2230: Software Quality should have only one attribute

False-Positive

SONARJAVA-4169 S3553 should not report an issue for spring mvc optional parameters

SONARJAVA-4590 S1319: Method parameter uses method not available in interface

New Feature

SONARJAVA-4576 Update the java API with methods from JUtils used by our rules so they can be used in custom rules

SONARJAVA-4700 Update the java API with methods from JUtils used by our rules so they can be used in custom rules

SONARJAVA-4702 Update the java API with methods from JUtils used by our rules so they can be used in custom rules

False Negative

SONARJAVA-4513 FN S2060 (ExternalizableClassConstructorCheck) if no-argument constructor is not public

Task

SONARJAVA-4707 Update Rules Metadata

SONARJAVA-4708 Update External Linters Metadata

Improvement

SONARJAVA-4447 S2185: Rephrase issue message to not use "silly"

SONARJAVA-4448 S2437: Rephrase issue message to not use "silly"

SONARJAVA-4460 S6548: improve RSPEC to show first the most recent recommended Singleton implementations

SONARJAVA-4502 Add quickfix for S1153

SONARJAVA-4508 Rule S2110: Add lower threshold to the Date values check

7.28.0.33738

07 Nov 17:19
4addef8
Compare
Choose a tag to compare

Release notes - SonarJava - 7.28

Bug

SONARJAVA-4540 Support Record's Compact Constructors in the MethodTreeImpl#getLine

SONARJAVA-4691 S6804 should not fail to process value annotations with named arguments

Documentation

SONARJAVA-4688 Update rule title S6809

False-Positive

SONARJAVA-4680 FP on S4684 when using @AuthenticationPrincipal annotation for request mapping parameters

New Feature

SONARJAVA-4650 Implement S6817: Use of the @Async annotation on methods declared within a @Configuration class in Spring Boot

SONARJAVA-4654 Implement S6818: Avoid Using @Autowired on Multiple Constructors in a Spring Component

SONARJAVA-4676 Implement rule S6829: @Autowired should be used when multiple constructors are provided #3350

SONARJAVA-4677 Implement S6830: Bean names should adhere to the naming conventions

SONARJAVA-4678 Implement S6831: @Qualifier should not be used on @Bean methods

SONARJAVA-4679 Implement S6833: @Controller should be replaced with @RestController

SONARJAVA-4681 Implement rule S6832: Non-singleton Spring beans should not be injected in a Singleton bean

SONARJAVA-4682 Implement S6816: Nullable injected fields and parameters should provide a default value

SONARJAVA-4683 Implement S6837: Superfluous @ResponseBody annotations should be removed

Task

SONARJAVA-4662 Update Rules Metadata and External Linters Metadata

7.27.1.33504

25 Oct 08:06
fa86685
Compare
Choose a tag to compare

Release notes - SonarJava - 7.27.1

Task

SONARJAVA-4664 Disable deployment of java-checks-test-sources artifacts to repox

7.27.0.33463

20 Oct 14:25
b4ff76a
Compare
Choose a tag to compare

Release notes - SonarJava - 7.27

Bug

SONARJAVA-4658 JavaSonarWayProfile has unsatisfied dependency "ProfileRegistrar"

New Feature

SONARJAVA-4643 Implement S6804: @Value annotation should inject property or SpEL expression

SONARJAVA-4645 Implement S6806: Model attribute Naming Convention for Spring Expression Language (SpEL)

SONARJAVA-4648 Implement S6810: Async methods should return void or Future

SONARJAVA-4649 Implement S6813: Avoid field dependency injection

SONARJAVA-4652 Implement S6809: @Async annotated methods should not be called via "this"

SONARJAVA-4653 Implement S6814: Optional REST parameters should have an object type

Task

SONARJAVA-4661 Update Rules Metadata

Improvement

SONARJAVA-4651 Extend S2230 with @Async annotation

7.26.0.33315

13 Oct 15:02
1df75bb
Compare
Choose a tag to compare

Release notes - SonarJava - 7.26

Sub-task

SONARJAVA-4383 [jakarta support] Include support of migrated javax packages 2/3

SONARJAVA-4388 [jakarta support] Include support of migrated javax packages 3/3

SONARJAVA-4612 [jakarta support] Include support of migrated javax packages 1/3

Task

SONARJAVA-4657 Update rules metadata

Improvement

SONARJAVA-4377 Update rules related to "javax" library to support also "jakarta" - Part 1/2

7.25.0.32245

04 Oct 07:45
cb676af
Compare
Choose a tag to compare

Release notes - SonarJava - 7.25

False-Positive

SONARJAVA-4592 FP on S3518 when the divisor is a non-zero double

Task

SONARJAVA-4607 Expose JavaVersionAwareVisitor via custom rule API

Improvement

SONARJAVA-4570 S106 "Compliant solution" section should give more details about how to configure a "logger".

SONARJAVA-4593 Rule S5689: Change the message

SONARJAVA-4609 [Custom Rules] CheckRegistrar classes can register check instances, default quality profile and AutoScan

7.24.0.32100

18 Aug 16:33
Compare
Choose a tag to compare

Release notes - SonarJava - 7.24

Documentation

SONARJAVA-4463 Add significant example to S2589

SONARJAVA-4495 LayC: review and update as appropriate SonarWay rules

SONARJAVA-4578 LaYC: review and update as appropriate SonarWay rules (loops and iterators)

False-Positive

SONARJAVA-4478 FP for S1948 on annotation "javax.annotation.Resource"

SONARJAVA-4563 S1258: Add "lombok.Builder" to excluded annotations list

False Negative

SONARJAVA-4503 FN on rule S2140 on random floating point numbers cast to long

Task

SONARJAVA-4585 Update rules metadata

Improvement

SONARJAVA-4509 S2438: Provide an actionable issue message

SONARJAVA-4559 Provide a list of impacted files when displaying DEBUG log of unresolved imports/types

SONARJAVA-4574 Issue message of S106 can be more precise and do not need the `or` section

7.23.0.32023

08 Aug 13:39
Compare
Choose a tag to compare

Release notes - SonarJava - 7.23

Bug

SONARJAVA-4477 S1125 quickfix breaking compilation with instanceof

False-Positive

SONARJAVA-1186 Indentation Check (S1120): Block in case of switch statements are not taken into account

SONARJAVA-4007 FP in S1120 with switch expressions

SONARJAVA-4401 FP on Rule S1120 (indentation checking) regarding switch blocks

SONARJAVA-4411 FP S1075 Regex or Pattern are not hardcoded URI

SONARJAVA-4519 FP on S100 when using OSGI annotation `AttributeDefinition`

SONARJAVA-4527 S6204 Collections.reverse(List) is not considered a modification

SONARJAVA-4530 FP on S110 for javafx package

Task

SONARJAVA-4569 Update rules metadata

Improvement

SONARJAVA-4467 Remove deprecation S2039 for Java

SONARJAVA-4528 Lower log level for error messages in ContentHashCache

SONARJAVA-4551 [S3749] Update issue type from vulnerability to code-smell

SONARJAVA-4556 Add a language to the PMD Sensor descriptor

SONARJAVA-4557 Add missing dependencies to Writing Custom Java Rules 101

7.22.0.31918

25 Jul 09:32
c0bb52b
Compare
Choose a tag to compare

Release notes - SonarJava - 7.22

Documentation

SONARJAVA-4490, SONARJAVA-4493, SONARJAVA-4494, SONARJAVA-4496 New Learn as You Code rule descriptions

SONARJAVA-4514 Update Custom rules documentation regarding SQ LTS

False-Positive

SONARJAVA-4180 S6103 should not raise issues on invocations of methods declared outside the file

SONARJAVA-4516 FP on S5411 when non-nullable object is cast to "Boolean"

Task

SONARJAVA-4444 Upgrade sonar-plugin-api to 9.14.0.375 or greater

SONARJAVA-4555 Update rules metadata

7.21.0.31796

19 Jun 16:26
6bf7412
Compare
Choose a tag to compare

Release notes - SonarJava - 7.21

Documentation

SONARJAVA-4482 LayC: review and update as appropriate SonarWay rules (1 of 15)

SONARJAVA-4483 LayC: review and update as appropriate SonarWay rules (2 of 15)

SONARJAVA-4484 LayC: review and update as appropriate SonarWay rules (3 of 15)

SONARJAVA-4485 LayC: review and update as appropriate SonarWay rules (4 of 15)

SONARJAVA-4486 LayC: review and update as appropriate SonarWay rules (5.1 of 15)

SONARJAVA-4487 LayC: review and update as appropriate SonarWay rules (6 of 15)

SONARJAVA-4488 LayC: review and update as appropriate SonarWay rules (7 of 15)

SONARJAVA-4489 LayC: review and update as appropriate SonarWay rules (8.1 of 15)

SONARJAVA-4491 LayC: review and update as appropriate SonarWay rules (10 of 15)

SONARJAVA-4492 LayC: review and update as appropriate SonarWay rules (11 of 15)

SONARJAVA-4506 Rule S1291 (NoSonar) metadata are not up to date and do not follow LayC format

SONARJAVA-4524 Update rules metadata

False-Positive

SONARJAVA-4107 Rule S100 - Underscore in method is acceptable when using SpringData

SONARJAVA-4476 FP for S2629 on record getter methods

SONARJAVA-4497 FP on S2142 when using union types and rethrowing

SONARJAVA-4501 FP on S1149 when overriding a method and using same symbols of the signature within method body

Task

SONARJAVA-4445 Upgrade sonarlint-plugin-api to version 8.15.0.65216 or greater

Improvement

SONARJAVA-4518 Introduce a new Spring Issue Filter to filter out spring-specific cases