Home | History | Annotate | Download | only in opencensus-java
      1 <FindBugsFilter>
      2   <Match>
      3     <!-- Reason: Null has a different meaning than a zero-length array in this case. -->
      4     <Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/>
      5     <Class name="io.opencensus.stats.MutableDistribution"/>
      6     <Method name="getInternalBucketCountsArray"/>
      7   </Match>
      8   <Match>
      9     <!-- Reason: Equal is implemented in the AutoValue generated class. -->
     10     <Bug pattern="EQ_COMPARETO_USE_OBJECT_EQUALS"/>
     11     <Class name="io.opencensus.common.Timestamp"/>
     12     <Method name="compareTo"/>
     13   </Match>
     14   <Match>
     15     <!-- Reason: Equal is implemented in the AutoValue generated class. -->
     16     <Bug pattern="EQ_COMPARETO_USE_OBJECT_EQUALS"/>
     17     <Class name="io.opencensus.common.Duration"/>
     18     <Method name="compareTo"/>
     19   </Match>
     20   <Match>
     21     <!-- Reason: BaseMessageEvent only has two visible subclasses. -->
     22     <Bug pattern="BC_UNCONFIRMED_CAST"/>
     23     <Class name="io.opencensus.trace.internal.BaseMessageEventUtils"/>
     24   </Match>
     25   <Match>
     26     <!-- Reason: This test is testing for a NPE. -->
     27     <Bug pattern="NP_NONNULL_PARAM_VIOLATION"/>
     28     <Class name="io.opencensus.internal.UtilsTest"/>
     29     <Method name="checkNotNull"/>
     30   </Match>
     31   <Match>
     32     <!-- Reason: This test is testing for a NPE. -->
     33     <Bug pattern="NP_NONNULL_PARAM_VIOLATION"/>
     34     <Class name="io.opencensus.internal.UtilsTest"/>
     35     <Method name="checkNotNull_NullErrorMessage"/>
     36   </Match>
     37   <Match>
     38     <!-- Reason: It seems like FindBugs incorrectly assumes that all -->
     39     <!-- Throwables are subclasses of Error or Exception. -->
     40     <Bug pattern="BC_VACUOUS_INSTANCEOF"/>
     41     <Class name="io.opencensus.trace.CurrentSpanUtils$CallableInSpan"/>
     42     <Method name="call"/>
     43   </Match>
     44   <Match>
     45     <!-- Reason: Protobuf auto-generated code. -->
     46     <Bug pattern="UCF_USELESS_CONTROL_FLOW"/>
     47     <Class name="io.opencensus.contrib.appengine.standard.util.TraceIdProto$Builder"/>
     48     <Method name="maybeForceBuilderInitialization"/>
     49   </Match>
     50   <Match>
     51     <!-- Reason: The synchronization in the setState is for the side effects not for the state. -->
     52     <Bug pattern="UG_SYNC_SET_UNSYNC_GET"/>
     53     <Class name="io.opencensus.implcore.stats.StatsComponentImplBase"/>
     54   </Match>
     55 
     56   <!-- Suppress some FindBugs warnings related to performance or robustness -->
     57   <!-- in test classes, where those issues are less important. -->
     58   <Match>
     59     <!-- Reason: Only needed for performance. -->
     60     <Bug pattern="SIC_INNER_SHOULD_BE_STATIC_ANON"/>
     61     <Source name="~.*Test\.java"/>
     62   </Match>
     63   <Match>
     64     <!-- Reason: Only needed for performance. -->
     65     <Bug pattern="WMI_WRONG_MAP_ITERATOR"/>
     66     <Source name="~.*Test\.java"/>
     67   </Match>
     68   <Match>
     69     <!-- Reason: Only needed for performance. -->
     70     <Bug pattern="UM_UNNECESSARY_MATH"/>
     71     <Source name="~.*Test\.java"/>
     72   </Match>
     73   <Match>
     74     <!-- Reason: This is less important in a test environment. -->
     75     <Bug pattern="DP_CREATE_CLASSLOADER_INSIDE_DO_PRIVILEGED"/>
     76     <Source name="~.*Test\.java"/>
     77   </Match>
     78   <Match>
     79     <!-- Reason: Many classes initialize fields in @Before methods. -->
     80     <Bug pattern="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR"/>
     81     <Source name="~.*Test\.java"/>
     82   </Match>
     83 
     84   <!-- Suppress all FindBugs warnings about NullPointerExceptions in -->
     85   <!-- non-test code. They are redundant with the Checker Framework's -->
     86   <!-- warnings, and they sometimes conflict. These warnings are still -->
     87   <!-- useful in test code, where we don't use the Checker Framework. -->
     88   <Match>
     89     <Bug code="NP"/>
     90     <Not>
     91       <Source name="~.*Test\.java"/>
     92     </Not>
     93   </Match>
     94   <Match>
     95     <Bug pattern="UR_UNINIT_READ"/>
     96     <Not>
     97       <Source name="~.*Test\.java"/>
     98     </Not>
     99   </Match>
    100   <Match>
    101     <Bug pattern="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR"/>
    102     <Not>
    103       <Source name="~.*Test\.java"/>
    104     </Not>
    105   </Match>
    106 </FindBugsFilter>
    107