-
Notifications
You must be signed in to change notification settings - Fork 0
/
.spotbugs-check.xml
120 lines (102 loc) · 5.01 KB
/
.spotbugs-check.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
<FindBugsFilter>
<!-- This first section is used to fail CI if any unexpected bugs appear.
We accept certain types of bugs at certain levels until we get them
all cleared out. -->
<!-- Suppress medium bugs which we _don't_ want to fail CI until we can get them removed -->
<Match>
<Confidence value="2" /> <!-- 3 is low priority, 2 is medium priority, 1 is high priority -->
<Or>
<!-- Temporary disable these until we have decided what to do about them -->
<Bug pattern="CT_CONSTRUCTOR_THROW" /> <!-- 318 cases -->
<Bug pattern="NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE" /> <!-- 25 cases -->
<Bug pattern="PA_PUBLIC_PRIMITIVE_ATTRIBUTE" /> <!-- 190 cases -->
<Bug pattern="SING_SINGLETON_GETTER_NOT_SYNCHRONIZED" /> <!-- 6 cases -->
<Bug pattern="SS_SHOULD_BE_STATIC" /> <!-- 211 cases -->
<Bug pattern="UWF_NULL_FIELD" /> <!-- 4 cases -->
<!-- Temporary disable these until we have decided what to do about them -->
<Bug pattern="IS2_INCONSISTENT_SYNC" />
<Bug pattern="OVERRIDING_METHODS_MUST_INVOKE_SUPER" />
<Bug pattern="DCN_NULLPOINTER_EXCEPTION" /> <!-- 327 cases -->
<Bug pattern="SSD_DO_NOT_USE_INSTANCE_LOCK_ON_SHARED_STATIC_DATA" />
</Or>
</Match>
<!-- Suppress low priority bugs which we _don't_ want to fail CI until we can get them removed -->
<Match>
<Confidence value="3" /> <!-- 3 is low priority, 2 is medium priority, 1 is high priority -->
<Or>
<!-- Temporary disable these until we have decided what to do about them -->
<Bug pattern="AA_ASSERTION_OF_ARGUMENTS" /> <!-- 16 cases -->
<Bug pattern="FE_FLOATING_POINT_EQUALITY" /> <!-- 4 cases -->
<Bug pattern="PA_PUBLIC_MUTABLE_OBJECT_ATTRIBUTE" /> <!-- 93 cases -->
<Bug pattern="URF_UNREAD_FIELD" /> <!-- 112 cases -->
<Bug pattern="URF_UNREAD_PUBLIC_OR_PROTECTED_FIELD" /> <!-- 50 cases -->
<Bug pattern="UUF_UNUSED_FIELD" /> <!-- 19 cases -->
<Bug pattern="UUF_UNUSED_PUBLIC_OR_PROTECTED_FIELD" /> <!-- 4 cases -->
<Bug pattern="UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR" /> <!-- 141 cases -->
<Bug pattern="UWF_UNWRITTEN_FIELD" /> <!-- 6 cases -->
<Bug pattern="UWF_UNWRITTEN_PUBLIC_OR_PROTECTED_FIELD" /> <!-- 1 case -->
<Bug pattern="UWF_NULL_FIELD" /> <!-- 6 cases -->
<!-- Temporary disable these until we have decided what to do about them -->
<Bug pattern="IS2_INCONSISTENT_SYNC" />
<Bug pattern="NO_NOTIFY_NOT_NOTIFYALL" />
<Bug pattern="RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE" />
<Bug pattern="UW_UNCOND_WAIT" />
<Bug pattern="WA_NOT_IN_LOOP" />
</Or>
</Match>
<!-- what follows should be kept in sync with .spotbugs.xml -->
<!-- The following section is used to suppress notifications about
specific bugs and categories that we don't think are
worth the effort -->
<Match>
<!-- Minor clarity issue -->
<Bug pattern="RI_REDUNDANT_INTERFACES" />
</Match>
<Match>
<!-- Design issue -->
<Bug pattern="SIC_INNER_SHOULD_BE_STATIC_ANON" />
</Match>
<Match>
<!-- Design issue -->
<Bug pattern="SIC_INNER_SHOULD_BE_STATIC_NEEDS_THIS" />
</Match>
<Match>
<!-- Most of these are non-I18N, internal changes of case.
We should find the I18N ones, but it seems excessive
to track down and annotate all the others first thing -->
<Bug pattern="DM_CONVERT_CASE" />
</Match>
<Match>
<!-- Most of these are non-I18N, JMRI-specific file operations.
We should find the I18N ones, but it seems excessive
to track down and annotate all the others first thing.
Suppressed for now to focus attention on
other high-priority items. -->
<Bug pattern="DM_DEFAULT_ENCODING" />
</Match>
<!-- Suppress SLF4J bug which has many false positives due to ?: operator -->
<Match>
<Bug pattern="SLF4J_UNKNOWN_ARRAY" />
</Match>
<!-- Very high-frequency "malicious code" warnings can't yet be checked -->
<!-- but we keep some others to improve code robustness and containment -->
<Match>
<Or>
<Bug pattern="EI_EXPOSE_REP" />
<Bug pattern="EI_EXPOSE_REP2" />
<Bug pattern="MC_OVERRIDABLE_METHOD_CALL_IN_CONSTRUCTOR" />
<Bug pattern="MS_MUTABLE_ARRAY" />
<Bug pattern="MS_EXPOSE_REP" />
<Bug pattern="MS_SHOULD_BE_FINAL" /><!-- we expose various constants for scripts -->
</Or>
</Match>
<!-- items we're unlikely to restore -->
<Match>
<!-- JMRI does not use serialization, permanently ignore -->
<Bug code="Se,SnVI" />
</Match>
<Match>
<!-- JMRI code is written with static final loggers. -->
<Bug pattern="SLF4J_LOGGER_SHOULD_BE_NON_STATIC" />
</Match>
</FindBugsFilter>