blob: fe3f4ca5db1484124af14421a3349950dfec8519 [file] [log] [blame]
<!--
Licensed 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>
<!-- Warnings triggered in thrift-generated code. -->
<Match>
<Or>
<Package name="org.apache.aurora.gen" />
<Package name="org.apache.aurora.gen.comm" />
<Package name="org.apache.aurora.gen.storage" />
<Package name="org.apache.aurora.gen.test" />
<Package name="org.apache.aurora.benchmark.generated" />
<Package name="org.openjdk.jmh.infra.generated" />
<!-- Un-namespaced structs used by the executor. -->
<Class name="ProcessState" />
<Class name="ProcessStatus" />
<Class name="RunnerHeader" />
<Class name="RunnerState" />
<Class name="TaskStatus" />
</Or>
<Or>
<Bug pattern="BC_IMPOSSIBLE_CAST" />
<Bug pattern="CN_IDIOM" />
<Bug pattern="DLS_DEAD_LOCAL_STORE" />
<Bug pattern="NM_CLASS_NAMING_CONVENTION" />
<Bug pattern="UUF_UNUSED_FIELD" />
</Or>
</Match>
<!-- Warnings triggered for mybatis shim classes. -->
<Match>
<Package name="org.apache.aurora.scheduler.storage.db.views" />
<Or>
<!-- The shim classes trip these warnings since we have no code that explicitly sets fields,
but mybatis reflects and sets them for us.
-->
<Bug pattern="NP_UNWRITTEN_FIELD" />
<Bug pattern="UWF_UNWRITTEN_FIELD" />
</Or>
</Match>
<!-- We don't make use of Java serialization and this can prevent, for example, declaring an
HttpServlet as an anonymous inner class for testing. -->
<Match>
<Bug pattern="SE_BAD_FIELD" />
</Match>
<!-- We must maintain reflexivity with WildcardPermission's equals, so we cannot override
it even though we add fields in our subclass. We cannot use delegation because
WildcardPermission's implies method checks that its argument is an instance of
WildcardPermission. -->
<Match>
<Or>
<Class name="org.apache.aurora.scheduler.spi.Permissions$JobScopedRpcPermission" />
<Class name="org.apache.aurora.scheduler.spi.Permissions$UnscopedRpcPermission" />
</Or>
<Bug pattern="EQ_DOESNT_OVERRIDE_EQUALS" />
</Match>
<!-- Method is intentionally only callable by EventBus. -->
<Match>
<Class name="org.apache.aurora.scheduler.events.PubsubEventModule$1" />
<Bug pattern="UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS" />
</Match>
<!-- Technical debt. -->
<Match>
<Class name="org.apache.aurora.scheduler.log.mesos.MesosLog$LogStream" />
<Bug pattern="IS2_INCONSISTENT_SYNC" />
</Match>
<Match>
<Class name="org.apache.aurora.scheduler.http.Utilization" />
<Bug pattern="RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE" />
</Match>
<Match>
<Class name="~org\.apache\.aurora.*$" />
<Bug pattern="NP_PARAMETER_MUST_BE_NONNULL_BUT_MARKED_AS_NULLABLE" />
</Match>
<Match>
<Or>
<Class name="org.apache.aurora.scheduler.storage.backup.StorageBackup$StorageBackupImpl" />
<Class name="org.apache.aurora.scheduler.storage.backup.StorageBackupTest" />
</Or>
<Bug pattern="RV_RETURN_VALUE_IGNORED_BAD_PRACTICE" />
</Match>
<Match>
<Or>
<Class name="org.apache.aurora.scheduler.app.SchedulerIT$IntPosition" />
<Class name="org.apache.aurora.scheduler.log.mesos.MesosLog$LogStream$LogPosition" />
<Class name="org.apache.aurora.scheduler.log.testing.FileLog$FileStream$CounterPosition" />
</Or>
<Bug pattern="EQ_COMPARETO_USE_OBJECT_EQUALS" />
</Match>
<Match>
<Or>
<Class name="org.apache.aurora.scheduler.cron.testing.AbstractCronIT" />
<Class name="org.apache.aurora.scheduler.log.mesos.MesosLogTest" />
<Class name="org.apache.aurora.scheduler.thrift.ThriftIT" />
<Class name="org.apache.aurora.scheduler.thrift.ThriftIT$1" />
</Or>
<Bug pattern="DM_DEFAULT_ENCODING" />
</Match>
<Match>
<!-- False positives on a check introduced in findbugs 3.0.1 -->
<Or>
<Class name="org.apache.aurora.scheduler.storage.db.DbStorage$3" />
<Class name="org.apache.aurora.scheduler.http.api.security.AuthorizeHeaderTokenTest" />
</Or>
<Bug pattern="RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT" />
</Match>
</FindBugsFilter>