Download Latest Version 8.45.0.59462 source code.zip (11.6 MB) Google Add to Preferred Sources
Home / 8.45.0.59462
Name Modified Size InfoDownloads / Week
Parent folder
8.45.0.59462 source code.tar.gz 2026-10-22 5.6 MB
8.45.0.59462 source code.zip 2026-10-22 11.6 MB
README.md 2026-10-22 11.7 kB
Totals: 3 Items   17.1 MB 0

Release notes - SonarJava - 8.45

Feature

SONARJAVA-4606 S7158: Simplify checks for empty/not-empty and blank/not-blank strings SONARJAVA-6410 Create SpringContextModel and related classes: big feature come to life. Includes creating new rule S9352 and improving existing rule S4605, as well as sending telemetry. SONARJAVA-6419 Change existing Visitor for S4605 to work for cross-module case SONARJAVA-6421 Implement new rule S9352 "Use @Qualifier or @Primary to resolve autowiring ambiguity" for cross-module case SONARJAVA-7006 Record telemetry about Spring usage SONARJAVA-7043 Create rule S9412: "Collections.sort()" should not be used SONARJAVA-7070 Create rule S9413: Redundant "String.format" should be removed when native formatting is available SONARJAVA-7097 Remove S9397 from SonarWay SONARJAVA-7151 Add S1314 in SonarWay SONARJAVA-7152 Add S1695 to SonarWay "NullPointerException" should not be thrown manually SONARJAVA-7153 Create rule S9427: Java assert statements should not be used in test code SONARJAVA-7154 Create rule S9428: MessageDigest instances should not be stored as fields SONARJAVA-7155 Create rule S9433: Literals should not be converted to strings using empty string concatenation SONARJAVA-7161 Create rule S9434: Qualified "this" should not be used when the unqualified form is enough SONARJAVA-7162 Create rule S9435: Ternary operator conditions should not be negated SONARJAVA-7163 Create rule S9436: Classes should not declare more than one logger SONARJAVA-7164 Create rule S9437: "getInstance()" methods should not return a new instance on every call SONARJAVA-7167 Create rule S9438: Private fields that are never reassigned after construction should be declared "final" SONARJAVA-7170 Create rule S9439: Array initializers should use the shorthand form instead of an explicit "new" array creation SONARJAVA-7182 Replace the streams that cause most allocations in Sonar Java with loops SONARJAVA-7189 Avoid allocating capturing lambdas in JSema on cache hits

False Positive

SONARJAVA-6438 S4790: do not raise when a weak-hash digest is fed bytes read from a file-like source SONARJAVA-7073 S2077: Don't flag SQL built with Class#getName()/getSimpleName()/getCanonicalName()/getTypeName() as dynamically formatted SONARJAVA-7213 S5128 FP: @Valid on an overridden interface method parameter is ignored

False Negative

SONARJAVA-6461 S2245 heuristic: identifier tokenizer misses digit-suffixed crypto acronyms SONARJAVA-7188 FN java:S7158: length() == 0x0 not detected, only decimal length() == 0

Maintenance

SONARJAVA-6365 Explore better testing solutions SONARJAVA-6899 Onboard sonar-java onto the PVF SONARJAVA-6976 Clear check state after file analysis SONARJAVA-7061 Update SonarSource/sonar-scanner-engine monorepo to v13.14.0.6149 SONARJAVA-7062 Update dependency jdx/mise to v2026.9.12 SONARJAVA-7063 Update SonarSource/parent-oss monorepo to v12 SONARJAVA-7066 Update dependency de.thetaphi:forbiddenapis to v3.11 SONARJAVA-7067 Update astral-sh/setup-uv action to v10.2.0 SONARJAVA-7068 Update dependency org.slf4j:slf4j-api to v2.0.20 SONARJAVA-7078 Update dependency org.sonarsource.parent:parent to v88 SONARJAVA-7082 Update dependency com.sonarsource.scanner.integrationtester:sonar-scanner-integration-tester to v1.2.0.1354 SONARJAVA-7084 Update mockito/mockito monorepo to v5.24.0 SONARJAVA-7086 Update SonarSource/parent-oss monorepo to v12.0.1.87460 SONARJAVA-7088 Filter unskippable scanners in incremental analysis by dependency version SONARJAVA-7089 Do not throw exception on cache misses in checks SONARJAVA-7092 Update dependency jdx/mise to v2026.9.13 SONARJAVA-7093 Update qos-ch/logback monorepo to v1.6.4 SONARJAVA-7096 Fix the QG: replace Collections.sort with List.sort SONARJAVA-7098 Update SonarSource/parent-oss monorepo to v12.0.2.87499 SONARJAVA-7100 Update dependency jdx/mise to v2026.9.14 SONARJAVA-7101 Update dependency org.apache.commons:commons-lang3 to v3.21.0 SONARJAVA-7102 Update SonarSource/sonar-plugin-api monorepo to v14.1.0.5543 SONARJAVA-7114 Drop pluginApiMinVersion SONARJAVA-7115 Update dependency jdx/mise to v2026.9.15 SONARJAVA-7116 Update dependency com.sonarsource.scanner.integrationtester:sonar-scanner-integration-tester to v1.3.0.1396 SONARJAVA-7121 Update dependency jdx/mise to v2026.9.16 SONARJAVA-7124 Update jdx/mise-action action to v5 SONARJAVA-7125 Update dependency com.google.guava:guava to v33.7.2-jre SONARJAVA-7128 Update dependency jdx/mise to v2026.9.17 SONARJAVA-7129 Update SonarSource/sonar-scanner-engine monorepo to v13.15.0.6376 SONARJAVA-7130 Update SonarSource/sonarqube monorepo to v26.10.0.132816 SONARJAVA-7131 Update dependency jdx/mise to v2026.9.18 SONARJAVA-7133 Update qos-ch/logback monorepo to v1.6.5 SONARJAVA-7135 Update jdx/mise-action action to v5.0.1 SONARJAVA-7141 Update dependency jdx/mise to v2026.10.0 SONARJAVA-7144 Update jdx/mise-action action to v5.1.0 SONARJAVA-7146 Add mandatory rule delivery workflow to the new-rule skill SONARJAVA-7147 Update SonarSource/parent-oss monorepo to v12.1.0.87730 SONARJAVA-7149 Update jdx/mise-action action to v5.1.1 SONARJAVA-7168 Update SonarSource/sonarqube monorepo to v26.10.0.133078 SONARJAVA-7169 Update actions/upload-artifact action to v7.0.2 SONARJAVA-7172 Update dependency org.apache.tomcat.embed:tomcat-embed-jasper to v9.0.123 SONARJAVA-7179 Update dependency com.tngtech.archunit:archunit-junit5 to v1.5.1 SONARJAVA-7180 Tighten new-rule skill on samples, tests and implementation SONARJAVA-7181 Fix the quality gate SONARJAVA-7184 Update SonarSource/parent-oss monorepo to v12.1.1.87771 SONARJAVA-7185 Update SonarSource/sonar-plugin-api monorepo to v14.2.0.5584 SONARJAVA-7186 Set contents rights to 'write' in the unified dogfooding workflow SONARJAVA-7190 Update dependency org.sonarsource.orchestrator:sonar-orchestrator-junit4 to v6.4.4.4797 SONARJAVA-7191 Update astral-sh/setup-uv action to v10.3.0 SONARJAVA-7198 Update dependency com.sonarsource.scanner.integrationtester:sonar-scanner-integration-tester to v1.4.0.1402 SONARJAVA-7201 Update jdx/mise-action action to v5.1.2 SONARJAVA-7214 Update SonarSource/sonar-scanner-engine monorepo to v13.16.0.6705 SONARJAVA-7216 Update dependency com.sonarsource.scanner.integrationtester:sonar-scanner-integration-tester to v1.5.0.1412 SONARJAVA-7217 Update jdx/mise-action action to v5.2.0 SONARJAVA-7220 Fix the quality gate SONARJAVA-7221 Replace lambda with a method reference SONARJAVA-7222 Fix S9434 and S9435 issues SONARJAVA-7223 Invert negated ternary conditions in OctalValuesCheck permission bits

Source: README.md, updated 2026-10-22