Release notes - SonarJava - 7.16 Bug SONARJAVA-4127 UnsupportedOperationException when computing the signature of a MethodSymbol SONARJAVA-4279 S1612 should not report an issue with incomplete semantics SONARJAVA-4356 Several regular expressions are inefficient SONARJAVA-4370 Memory leak in rule S5852 RedosCheck because regexCreations field is never cleaned SONARJAVA-4371 Memory leak in multiple symbolic execution-based rules SONARJAVA-4386 Members of RECORD tree are not ordered SONARJAVA-4390 NPE in ECJ should be catched by JType.isSubtype(...) SONARJAVA-4391 NPE in LombokFilter SONARJAVA-4392 NPE in DivisionByZeroCheck Documentation SONARJAVA-4345 Update rules metadata SONARJAVA-4374 S5411: Improve rule message, title, and description SONARJAVA-4381 S1135: Update metadata to be explicit about main code only scope False-Positive SONARJAVA-4098 FP S1612 method reference should not be suggested when replacement is longer that actual code SONARJAVA-4255 FP S1185(MethodOnlyCallsSuperCheck) with different modifiers SONARJAVA-4281 Rule S1313: Exclude local IPv4-mapped IPv6 address SONARJAVA-4292 Rule S1313: Exclude reserved documentation IP ranges SONARJAVA-4329 FP on rule S1612 when replacing lambda on Integer conversion to String SONARJAVA-4331 S1213 should not raise issues on static fields placed at the top of records SONARJAVA-4343 FP on S2699 (Missing assertions in tests) with latest versions of AssertJ (>3.19) and newly added assertions SONARJAVA-4347 FP in S1144 When annotated parameters are present SONARJAVA-4353 S131 FP on switch that covers all enum constants SONARJAVA-4354 S2259 FP on Springframework 5 annotations SONARJAVA-4363 FP on S2272 when the next/previous() method calls another one which itself throw the NoSuchElementException SONARJAVA-4365 S5786 should not report issues on classes defining publicly visible constants SONARJAVA-4372 FP in rule S6204 when Collections.shuffle() is used as a mutator SONARJAVA-4382 S1191 should not raise issues on imports from `com.sun.*` packages New Feature SONARJAVA-4266 Rule S6432: Counter Mode initialization vectors should not be reused False Negative SONARJAVA-4250 FN in S2692 when the number is coming from a constant SONARJAVA-4283 S5838 does not handle primitive type inequality operators correctly Improvement SONARJAVA-4265 Improve the rule message of S1120 SONARJAVA-4268 Rule S5542: Detect CBC mode when used with padding SONARJAVA-4269 S1711 should clean up type names replacing dollar signs with periods SONARJAVA-4351 Update S5411 documentation with SONARJAVA-3570 exceptions SONARJAVA-4384 Replace method `symbol()` on `MethodInvocationTree` and `NewClassTree` with `methodSymbol()` in public API