Defang most SING_SINGLETON_ Spotbugs warnings 47/111347/1
authorRobert Varga <robert.varga@pantheon.tech>
Wed, 10 Apr 2024 11:15:04 +0000 (13:15 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Wed, 10 Apr 2024 11:15:04 +0000 (13:15 +0200)
These three violations are reported against perfectly-compliant classes,
making them less then useful. Disable them until upstream fixes their
heuristics.

Change-Id: I64361e2be3108ebbc044c35540df4aa0481967ae
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
spotbugs/src/main/resources/spotbugs-exclude.xml

index 27053a554397a354d26643c366547aefa8d1b94d..82aada5ad59a31785bf10fd5643481165a2c4966 100644 (file)
            "clever use of a private constructor".
       -->
       <Bug pattern="CT_CONSTRUCTOR_THROW"/>
+
+      <!--
+           https://github.com/spotbugs/spotbugs/issues/2932. Causes a ton of false positives with eagerly-instantiated
+           singletons.
+      -->
+      <Bug pattern="SING_SINGLETON_GETTER_NOT_SYNCHRONIZED"/>
+
+      <!--
+           https://github.com/spotbugs/spotbugs/issues/2934. The logic identifying singletons seems to be over-eager,
+           assuming that a class is meant to be a singleton when there even is a single singleton value.
+      -->
+      <Bug pattern="SING_SINGLETON_HAS_NONPRIVATE_CONSTRUCTOR"/>
+
+      <!--
+           https://github.com/spotbugs/spotbugs/issues/2933. Causes false positives with readResolve()d singletons.
+      -->
+      <Bug pattern="SING_SINGLETON_IMPLEMENTS_SERIALIZABLE"/>
     </Or>
   </Match>
 </FindBugsFilter>