blob: c0498e178d86cb09c628269f26b959f8523b9325 [file] [log] [blame]
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<FindBugsFilter> <!-- sketches-core -->
<!-- Too many false positives to be useful. I could not make it happy :( -->
<Match>
<Bug pattern="SF_SWITCH_NO_DEFAULT" />
</Match>
<!-- False positive. FindBugs complains if DQS_RESIZE_THRESHOLD == REBUILD_THRESHOLD,
but this allows us to tune these constants for different sketches. -->
<Match>
<Bug pattern="DB_DUPLICATE_BRANCHES" />
<Class name="org.apache.datasketches.theta.DirectQuickSelectSketchR" />
<Method name="setHashTableThreshold" />
</Match>
<!-- False positive. In this case we want to ignore the exceptions -->
<Match>
<Bug pattern="DE_MIGHT_IGNORE" />
<Class name="org.apache.datasketches.theta.SetOpsCornerCasesTest" />
<Method name="checkSeedHash" />
</Match>
<Match> <!-- Exclude for test classes; too many False Positives. -->
<Bug pattern="NP_NULL_PARAM_DEREF_NONVIRTUAL" />
<Class name="~.*\.*Test" />
</Match>
<Match> <!-- Exclude for test classes; too many False Positives. -->
<Bug pattern="NP_LOAD_OF_KNOWN_NULL_VALUE" />
<Class name="~.*\.*Test" />
</Match>
<Match>
<Bug pattern="EQ_COMPARETO_USE_OBJECT_EQUALS" />
<Class name="~.*\.Group" />
</Match>
<Match>
<Bug pattern="VO_VOLATILE_INCREMENT" />
<Class name="~.*\.Concurrent.+QuickSelectSketch" />
</Match>
<Match>
<Class name="~.*\.TestAllTest" />
</Match>
<Match> <!-- Exclude for test classes; too many False Positives. -->
<Bug pattern="RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT" />
<Class name="~.*\.*Test" />
</Match>
<Match> <!-- Too many False Positives. -->
<Bug pattern="DLS_DEAD_LOCAL_STORE" />
</Match>
<Match> <!-- Harmless in the Builder -->
<Bug pattern="ST_WRITE_TO_STATIC_FROM_INSTANCE_METHOD" />
<Class name="org.apache.datasketches.theta.UpdateSketchBuilder" />
</Match>
</FindBugsFilter>
<!-- Examples: -->
<!-- Exclude java.* classes -->
<!--
<Match>
<Package name="java\.*" />
</Match>
-->
<!-- Exclude test classes -->
<!--
<Match>
<Class name="~.*\.*Test" />
</Match>
-->
<!--
<Match>
<Class name="com.foobar.ClassNotToBeAnalyzed" />
</Match>
-->
<!--
<Match>
<Class name="com.foobar.ClassWithSomeBugsMatched" />
<Bug code="DE,UrF,SIC" />
</Match>
-->
<!-- Match all XYZ violations. -->
<!--
<Match>
<Bug code="XYZ" />
</Match>
-->
<!-- Match all doublecheck violations in these methods of "AnotherClass". -->
<!--
<Match>
<Class name="com.foobar.AnotherClass" />
<Or>
<Method name="nonOverloadedMethod" />
<Method name="frob" params="int,java.lang.String" returns="void" />
<Method name="blat" params="" returns="boolean" />
</Or>
<Bug code="DC" />
</Match>
-->
<!-- A method with a dead local store false positive (medium priority). -->
<!--
<Match>
<Class name="com.foobar.MyClass" />
<Method name="someMethod" />
<Bug pattern="DLS_DEAD_LOCAL_STORE" />
<Priority value="2" />
</Match>
-->