Fixed detector UncallableMethodOfAnonymousClass to not report unused methods of method-local enumerations and records (#2120) @baloghadamsoftware
Fixed detector FindSqlInjection to detect bug SQL_NONCONSTANT_STRING_PASSED_TO_EXECUTE SQL with high priority in case of unsafe appends also in Java 11 and above (#2183) @baloghadamsoftware
Fixed detector StringConcatenation to detect bug SBSC_USE_STRINGBUFFER_CONCATENATION also in Java 11 and above (#2182) @baloghadamsoftware
Fixed OpcodeStackDetector to to handle propagation of taints properly in case of string concatenation in Java 9 and above (#2195) @baloghadamsoftware
Bump up log4j2 binding to 2.19.0
Bump ObjectWeb ASM from 9.3 to 9.4 supporting JDK 20 (#2200)
Added detections of reliance on default encoding in java.nio.file.Files (#2114)
Fixed a regression in the Value Number Analysis (#2465)
Fix XML Output incorrectly escaped in Eclipse Bug Info view (#2520)
Updated the MS_EXPOSE_REP description to mention mutable objects, not just arrays (#1669)
Described Configuration option frc.suspicious for bug RC_REF_COMPARISON in bug description (#2297)
Fixed FindHEMismatch not reporting HE_SIGNATURE_DECLARES_HASHING_OF_UNHASHABLE_CLASS for some classes (#2402)
Added execute file permission to files in the distribution zip (#2540)
Do not report RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT when part of a Mockito.verify() call check (#872)
Do not report SIC_INNER_SHOULD_BE_STATIC for classes annotated with JUnit Nested (#560)
Detect created, but not-thrown exceptions, which are created by not the constructor (#2547)
Fixed eclipse plugin Effort.values pass to effortViewer as required cast to varargs (#2579)
Added
New simple name-based AnnotationMatcher for exclude files (now bug annotations store the class java annotations in an attribute called classAnnotationNames). For example, use like in an excludeFilter.xml to ignore classes generated by the Immutable framework. This ignores all class, method or field bugs in classes with that annotation.
Added the Common Weakness Enumeration (CWE) taxonomy to the Static Analysis Results Interchange Format (SARIF) report. The short and long description for the CWEs are retrived from a JSON file which is a slimmed down version of the official comprehensive CWE XML from MITRE. The JSON contains information about all CWEs. (#2410).
New rule set PA_PUBLIC_PRIMITIVE_ATTRIBUTE, PA_PUBLIC_ARRAY_ATTRIBUTE and PA_PUBLIC_MUTABLE_OBJECT_ATTRIBUTE to warn for public attributes which are written by the methods of the class. This rule is loosely based on the SEI CERT rule OBJ01-J Limit accessibility of fields. (#OBJ01-J)
Extend SerializableIdiom detector with new bug type: SE_PREVENT_EXT_OBJ_OVERWRITE. It's reported in case of the readExternal() method allows any caller to reset any value of an object
Add new detector CT_CONSTRUCTOR_THROW for detecting constructors that throw exceptions.
New detector DontReusePublicIdentifiers for new bug type PI_DO_NOT_REUSE_PUBLIC_IDENTIFIERS. This bug is reported whenever a new class, interface, field, method or variable is created reusing an identifier from the Java Standard Library . (See SEI CERT rule DCL01-J)
Security
Disable access to external entities when processing XML (#2217)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps com.github.spotbugs:spotbugs-annotations from 3.1.12 to 4.8.0.
Release notes
Sourced from com.github.spotbugs:spotbugs-annotations's releases.
... (truncated)
Changelog
Sourced from com.github.spotbugs:spotbugs-annotations's changelog.
... (truncated)
Commits
b8c498c
release v4.8.0b6fd746
Migrate to full junit 5 and add some associated code expected to support juni...4083f1f
fix(deps): update dependency com.google.guava:guava to v32.1.3-jre (#2620)09d70e1
Fix release (#2616)cfcf9f2
[eclipse-format] No longer supply version to spotless, use same configuration...63618ab
Fix first batch of Gradle buildDir deprecations (#2609)fe4442b
chore(deps): update plugin com.github.spotbugs to v6.0.0-beta.4 (#2615)d3c49cb
spell check (#2607)bc6a9d4
#2280 Update Eclipse plugin release number to 4.29.0 (#2611)d3b130c
fix(deps): update dependency org.mockito:mockito-core to v5.6.0 (#2610)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show