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