source: josm/trunk/tools/japicc/modules/RulesSrc.xml@ 12264

Last change on this file since 12264 was 11682, checked in by Don-vip, 7 years ago

update to japi-compliance-checker 2.1

File size: 23.7 KB
Line 
1<?xml version="1.0" encoding="utf-8"?>
2<rules version="1.0">
3
4<rule>
5 <id>
6 Method_Became_Static
7 </id>
8 <severity>
9 Low
10 </severity>
11 <kind>
12 Methods
13 </kind>
14 <change>
15 Method became **static**.
16 </change>
17 <effect>
18 A client program may be interrupted by **NoSuchMethodError** exception.
19 </effect>
20</rule>
21
22<rule>
23 <id>
24 Method_Became_NonStatic
25 </id>
26 <severity>
27 High
28 </severity>
29 <kind>
30 Methods
31 </kind>
32 <change>
33 Method became non-static.
34 </change>
35 <effect>
36 Recompilation of a client program may be terminated with the message: non-static method @method_short cannot be referenced from a static context.
37 </effect>
38</rule>
39
40<rule>
41 <id>
42 Static_Method_Became_Final
43 </id>
44 <severity>
45 Medium
46 </severity>
47 <kind>
48 Methods
49 </kind>
50 <change>
51 Method became final.
52 </change>
53 <effect>
54 Recompilation of a client program may be terminated with the message: @method_short in client class C cannot override @method_short in @class; overridden method is final.
55 </effect>
56</rule>
57
58<rule>
59 <id>
60 NonStatic_Method_Became_Final
61 </id>
62 <severity>
63 Medium
64 </severity>
65 <kind>
66 Methods
67 </kind>
68 <change>
69 Method became final.
70 </change>
71 <effect>
72 Recompilation of a client program may be terminated with the message: @method_short in client class C cannot override @method_short in @class; overridden method is final.
73 </effect>
74</rule>
75
76<rule>
77 <id>
78 Method_Became_Abstract
79 </id>
80 <severity>
81 High
82 </severity>
83 <kind>
84 Methods
85 </kind>
86 <change>
87 Method became abstract.
88 </change>
89 <effect>
90 Recompilation of a client program may be terminated with the message: A client class C is not abstract and does not override abstract method @method_short in @class.
91 </effect>
92</rule>
93
94<rule>
95 <id>
96 Method_Became_NonAbstract
97 </id>
98 <severity>
99 Safe
100 </severity>
101 <kind>
102 Methods
103 </kind>
104 <change>
105 Method became non-abstract.
106 </change>
107 <effect>
108 No effect.
109 </effect>
110</rule>
111
112<rule>
113 <id>
114 Method_Became_Default
115 </id>
116 <severity>
117 Safe
118 </severity>
119 <kind>
120 Methods
121 </kind>
122 <change>
123 Method became default.
124 </change>
125 <effect>
126 No effect.
127 </effect>
128</rule>
129
130<rule>
131 <id>
132 Method_Became_NonDefault
133 </id>
134 <severity>
135 High
136 </severity>
137 <kind>
138 Methods
139 </kind>
140 <change>
141 Method became non-default.
142 </change>
143 <effect>
144 Recompilation of a client program may be terminated with the message: A client class C is not abstract and does not override abstract method @method_short in @class.
145 </effect>
146</rule>
147
148<rule>
149 <id>
150 Changed_Method_Access
151 </id>
152 <severity>
153 High
154 </severity>
155 <kind>
156 Methods
157 </kind>
158 <change>
159 Access level has been changed from @old_value to @new_value.
160 </change>
161 <effect>
162 Recompilation of a client program may be terminated with the message: @method_short has @new_value access in @class.
163 </effect>
164</rule>
165
166<rule>
167 <id>
168 Abstract_Method_Added_Checked_Exception
169 </id>
170 <severity>
171 Medium
172 </severity>
173 <kind>
174 Methods
175 </kind>
176 <change>
177 Added @target exception thrown.
178 </change>
179 <effect>
180 Recompilation of a client program may be terminated with the message: unreported exception @target must be caught or declared to be thrown.
181 </effect>
182</rule>
183
184<rule>
185 <id>
186 NonAbstract_Method_Added_Checked_Exception
187 </id>
188 <severity>
189 Medium
190 </severity>
191 <kind>
192 Methods
193 </kind>
194 <change>
195 Added @target exception thrown.
196 </change>
197 <effect>
198 Recompilation of a client program may be terminated with the message: unreported exception @target must be caught or declared to be thrown.
199 </effect>
200</rule>
201
202<rule>
203 <id>
204 Abstract_Method_Removed_Checked_Exception
205 </id>
206 <severity>
207 Medium
208 </severity>
209 <kind>
210 Methods
211 </kind>
212 <change>
213 Removed @target exception thrown.
214 </change>
215 <effect>
216 Recompilation of a client program may be terminated with the message: cannot override @method_short in @class; overridden method does not throw @target.
217 </effect>
218</rule>
219
220<rule>
221 <id>
222 NonAbstract_Method_Removed_Checked_Exception
223 </id>
224 <severity>
225 Medium
226 </severity>
227 <kind>
228 Methods
229 </kind>
230 <change>
231 Removed @target exception thrown.
232 </change>
233 <effect>
234 Recompilation of a client program may be terminated with the message: cannot override @method_short in @class; overridden method does not throw @target.
235 </effect>
236</rule>
237
238<rule>
239 <id>
240 Added_Method
241 </id>
242 <severity>
243 Safe
244 </severity>
245 <kind>
246 Methods
247 </kind>
248</rule>
249
250<rule>
251 <id>
252 Removed_Method
253 </id>
254 <severity>
255 High
256 </severity>
257 <kind>
258 Methods
259 </kind>
260</rule>
261
262<rule>
263 <id>
264 NonAbstract_Class_Added_Abstract_Method
265 </id>
266 <severity>
267 High
268 </severity>
269 <kind>
270 Types
271 </kind>
272 <change>
273 Abstract method @target has been added to this @type_type.
274 </change>
275 <effect>
276 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method @method_short in @class.
277 </effect>
278</rule>
279
280<rule>
281 <id>
282 Abstract_Class_Added_Abstract_Method
283 </id>
284 <severity>
285 High
286 </severity>
287 <kind>
288 Types
289 </kind>
290 <change>
291 Abstract method @target has been added to this @type_type.
292 </change>
293 <effect>
294 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method @method_short in @class.
295 </effect>
296</rule>
297
298<rule>
299 <id>
300 Abstract_Class_Added_Abstract_Method_Invoked_By_Others
301 </id>
302 <severity>
303 High
304 </severity>
305 <kind>
306 Types
307 </kind>
308 <change>
309 Abstract method @target has been added to this @type_type.
310 </change>
311 <effect>
312 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method @method_short in @class.
313 </effect>
314</rule>
315
316<rule>
317 <id>
318 Class_Removed_Abstract_Method
319 </id>
320 <severity>
321 High
322 </severity>
323 <kind>
324 Types
325 </kind>
326 <change>
327 Abstract method @target has been removed from this @type_type.
328 </change>
329 <effect>
330 Recompilation of a client program may be terminated with the message: cannot find method @method_short in @type_type @class.
331 </effect>
332</rule>
333
334<rule>
335 <id>
336 Interface_Removed_Abstract_Method
337 </id>
338 <severity>
339 High
340 </severity>
341 <kind>
342 Types
343 </kind>
344 <change>
345 Abstract method @target has been removed from this @type_type.
346 </change>
347 <effect>
348 Recompilation of a client program may be terminated with the message: cannot find method @method_short in @type_type @class.
349 </effect>
350</rule>
351
352<rule>
353 <id>
354 Interface_Added_Abstract_Method
355 </id>
356 <severity>
357 High
358 </severity>
359 <kind>
360 Types
361 </kind>
362 <change>
363 Abstract method @target has been added to this @type_type.
364 </change>
365 <effect>
366 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method @method_short in @class.
367 </effect>
368</rule>
369
370<rule>
371 <id>
372 Interface_Added_Abstract_Method_Invoked_By_Others
373 </id>
374 <severity>
375 High
376 </severity>
377 <kind>
378 Types
379 </kind>
380 <change>
381 Abstract method @target has been added to this @type_type.
382 </change>
383 <effect>
384 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method @method_short in @class.
385 </effect>
386</rule>
387
388<rule>
389 <id>
390 Class_Method_Became_Abstract
391 </id>
392 <severity>
393 High
394 </severity>
395 <kind>
396 Types
397 </kind>
398 <change>
399 Method @target became abstract.
400 </change>
401 <effect>
402 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method @method_short in @class.
403 </effect>
404</rule>
405
406<rule>
407 <id>
408 Class_Method_Became_NonAbstract
409 </id>
410 <severity>
411 Safe
412 </severity>
413 <kind>
414 Types
415 </kind>
416 <change>
417 Abstract method @target became non-abstract.
418 </change>
419 <effect>
420 No effect.
421 </effect>
422</rule>
423
424<rule>
425 <id>
426 Interface_Method_Became_NonDefault
427 </id>
428 <severity>
429 High
430 </severity>
431 <kind>
432 Types
433 </kind>
434 <change>
435 Method @target became non-default.
436 </change>
437 <effect>
438 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method @method_short in @class.
439 </effect>
440</rule>
441
442<rule>
443 <id>
444 Interface_Method_Became_Default
445 </id>
446 <severity>
447 Safe
448 </severity>
449 <kind>
450 Types
451 </kind>
452 <change>
453 Method @target became default.
454 </change>
455 <effect>
456 No effect.
457 </effect>
458</rule>
459
460<rule>
461 <id>
462 Abstract_Class_Added_Super_Interface
463 </id>
464 <severity>
465 High
466 </severity>
467 <kind>
468 Types
469 </kind>
470 <change>
471 Added super-interface @target.
472 </change>
473 <effect>
474 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method in @target.
475 </effect>
476</rule>
477
478<rule>
479 <id>
480 Abstract_Class_Added_Super_Interface_Invoked_By_Others
481 </id>
482 <severity>
483 High
484 </severity>
485 <kind>
486 Types
487 </kind>
488 <change>
489 Added super-interface @target.
490 </change>
491 <effect>
492 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method in @target.
493 </effect>
494</rule>
495
496<rule>
497 <id>
498 Abstract_Class_Added_Super_Interface_With_Implemented_Methods
499 </id>
500 <severity>
501 Safe
502 </severity>
503 <kind>
504 Types
505 </kind>
506 <change>
507 Added super-interface @target.
508 </change>
509 <effect>
510 No effect.
511 </effect>
512</rule>
513
514<rule>
515 <id>
516 Interface_Added_Super_Interface
517 </id>
518 <severity>
519 High
520 </severity>
521 <kind>
522 Types
523 </kind>
524 <change>
525 Added super-interface @target.
526 </change>
527 <effect>
528 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method in @target.
529 </effect>
530</rule>
531
532<rule>
533 <id>
534 Interface_Added_Super_Interface_Used_By_Others
535 </id>
536 <severity>
537 High
538 </severity>
539 <kind>
540 Types
541 </kind>
542 <change>
543 Added super-interface @target.
544 </change>
545 <effect>
546 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method in @target.
547 </effect>
548</rule>
549
550<rule>
551 <id>
552 Interface_Added_Super_Interface_With_Implemented_Methods
553 </id>
554 <severity>
555 Safe
556 </severity>
557 <kind>
558 Types
559 </kind>
560 <change>
561 Added super-interface @target.
562 </change>
563 <effect>
564 No effect.
565 </effect>
566</rule>
567
568<rule>
569 <id>
570 Interface_Added_Super_Constant_Interface
571 </id>
572 <severity>
573 Low
574 </severity>
575 <kind>
576 Types
577 </kind>
578 <change>
579 Added super-interface @target containing constants only.
580 </change>
581 <effect>
582 A static field from a super-interface of a client class may hide a field (with the same name) inherited from a super-class. Recompilation of a client class may be terminated with the message: reference to variable is ambiguous.
583 </effect>
584</rule>
585
586<rule>
587 <id>
588 Interface_Removed_Super_Interface
589 </id>
590 <severity>
591 High
592 </severity>
593 <kind>
594 Types
595 </kind>
596 <change>
597 Removed super-interface @target.
598 </change>
599 <effect>
600 Recompilation of a client program may be terminated with the message: cannot find method in @type_type @type_name.
601 </effect>
602</rule>
603
604<rule>
605 <id>
606 Class_Removed_Super_Interface
607 </id>
608 <severity>
609 High
610 </severity>
611 <kind>
612 Types
613 </kind>
614 <change>
615 Removed super-interface @target.
616 </change>
617 <effect>
618 Recompilation of a client program may be terminated with the message: cannot find method in @type_type @type_name.
619 </effect>
620</rule>
621
622<rule>
623 <id>
624 Interface_Removed_Super_Constant_Interface
625 </id>
626 <severity>
627 High
628 </severity>
629 <kind>
630 Types
631 </kind>
632 <change>
633 Removed super-interface @target containing constants only.
634 </change>
635 <effect>
636 Recompilation of a client program may be terminated with the message: cannot find variable in interface @type_name.
637 </effect>
638</rule>
639
640<rule>
641 <id>
642 Added_Super_Class
643 </id>
644 <severity>
645 Low
646 </severity>
647 <kind>
648 Types
649 </kind>
650 <change>
651 Added super-class @target.
652 </change>
653 <effect>
654 A static field from a super-interface of a client class may hide a field (with the same name) inherited from new super-class. Recompilation of a client class may be terminated with the message: reference to variable is ambiguous.
655 </effect>
656</rule>
657
658<rule>
659 <id>
660 Abstract_Class_Added_Super_Abstract_Class
661 </id>
662 <severity>
663 High
664 </severity>
665 <kind>
666 Types
667 </kind>
668 <change>
669 Added abstract super-class @target.
670 </change>
671 <effect>
672 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method in @target.
673 </effect>
674</rule>
675
676<rule>
677 <id>
678 Abstract_Class_Added_Super_Abstract_Class_Invoked_By_Others
679 </id>
680 <severity>
681 High
682 </severity>
683 <kind>
684 Types
685 </kind>
686 <change>
687 Added abstract super-class @target.
688 </change>
689 <effect>
690 Recompilation of a client program may be terminated with the message: a client class C is not abstract and does not override abstract method in @target.
691 </effect>
692</rule>
693
694<rule>
695 <id>
696 Removed_Super_Class
697 </id>
698 <severity>
699 Medium
700 </severity>
701 <kind>
702 Types
703 </kind>
704 <change>
705 Removed super-class @target.
706 </change>
707 <effect>
708 Recompilation of a client program may be terminated with the message: cannot find variable (or method) in @type_name.
709 </effect>
710</rule>
711
712<rule>
713 <id>
714 Changed_Super_Class
715 </id>
716 <severity>
717 Medium
718 </severity>
719 <kind>
720 Types
721 </kind>
722 <change>
723 Superclass has been changed from @old_value to @new_value.
724 </change>
725 <effect>
726 1) Recompilation of a client program may be terminated with the message: cannot find variable (or method) in @type_name.
727 2) A static field from a super-interface of a client class may hide a field (with the same name) inherited from new super-class. Recompilation of a client class may be terminated with the message: reference to variable is ambiguous.
728 </effect>
729</rule>
730
731<rule>
732 <id>
733 Class_Added_Field
734 </id>
735 <severity>
736 Safe
737 </severity>
738 <kind>
739 Fields
740 </kind>
741 <change>
742 Field @target has been added to this class.
743 </change>
744 <effect>
745 No effect.
746 </effect>
747</rule>
748
749<rule>
750 <id>
751 Class_Added_Field_Non_Safe
752 </id>
753 <severity>
754 Low
755 </severity>
756 <kind>
757 Fields
758 </kind>
759 <change>
760 Field @target has been added to this class.
761 </change>
762 <effect>
763 NOTE: A static field from a super-interface of a client class may hide an added field (with the same name) inherited from the super-class of a client class. Recompilation of a client class may be terminated with the message: reference to @target is ambiguous.
764 </effect>
765</rule>
766
767<rule>
768 <id>
769 Interface_Added_Field
770 </id>
771 <severity>
772 Safe
773 </severity>
774 <kind>
775 Fields
776 </kind>
777 <change>
778 Field @target has been added to this interface.
779 </change>
780 <effect>
781 No effect.
782 </effect>
783</rule>
784
785<rule>
786 <id>
787 Interface_Added_Field_Non_Safe
788 </id>
789 <severity>
790 Low
791 </severity>
792 <kind>
793 Fields
794 </kind>
795 <change>
796 Field @target has been added to this interface.
797 </change>
798 <effect>
799 NOTE: An added static field from a super-interface of a client class may hide a field (with the same name) inherited from the super-class of a client class. Recompilation of a client class may be terminated with the message: reference to @target is ambiguous.
800 </effect>
801</rule>
802
803<rule>
804 <id>
805 Renamed_Field
806 </id>
807 <severity>
808 High
809 </severity>
810 <kind>
811 Fields
812 </kind>
813 <change>
814 Field @target has been renamed to @new_value.
815 </change>
816 <effect>
817 Recompilation of a client program may be terminated with the message: cannot find variable @target in @type_name.
818 </effect>
819</rule>
820
821<rule>
822 <id>
823 Renamed_Constant_Field
824 </id>
825 <severity>
826 High
827 </severity>
828 <kind>
829 Fields
830 </kind>
831 <change>
832 Field @target has been renamed to @new_value.
833 </change>
834 <effect>
835 Recompilation of a client program may be terminated with the message: cannot find variable @target in @type_name.
836 </effect>
837</rule>
838
839<rule>
840 <id>
841 Removed_NonConstant_Field
842 </id>
843 <severity>
844 High
845 </severity>
846 <kind>
847 Fields
848 </kind>
849 <change>
850 Field @target of type @field_type has been removed from this @type_type.
851 </change>
852 <effect>
853 Recompilation of a client program may be terminated with the message: cannot find variable @target in @type_name.
854 </effect>
855</rule>
856
857<rule>
858 <id>
859 Removed_Constant_Field
860 </id>
861 <severity>
862 High
863 </severity>
864 <kind>
865 Fields
866 </kind>
867 <change>
868 Field @target of type @field_type with the compile-time constant value @field_value has been removed from this @type_type.
869 </change>
870 <effect>
871 Recompilation of a client program may be terminated with the message: cannot find variable @target in @type_name.
872 </effect>
873</rule>
874
875<rule>
876 <id>
877 Changed_Field_Type
878 </id>
879 <severity>
880 High
881 </severity>
882 <kind>
883 Fields
884 </kind>
885 <change>
886 Type of field @target has been changed from @old_value to @new_value.
887 </change>
888 <effect>
889 Recompilation of a client program may be terminated with the message: incompatible types, found: @old_value, required: @new_value.
890 </effect>
891</rule>
892
893<rule>
894 <id>
895 Changed_Field_Access
896 </id>
897 <severity>
898 High
899 </severity>
900 <kind>
901 Fields
902 </kind>
903 <change>
904 Access level of field @target has been changed from @old_value to @new_value.
905 </change>
906 <effect>
907 Recompilation of a client program may be terminated with the message: @target has @new_value access in @type_name.
908 </effect>
909</rule>
910
911<rule>
912 <id>
913 Changed_Field_Access_To_Package_Private
914 </id>
915 <severity>
916 High
917 </severity>
918 <kind>
919 Fields
920 </kind>
921 <change>
922 Access level of field @target has been changed from @old_value to @new_value.
923 </change>
924 <effect>
925 Recompilation of a client program may be terminated with the message: @target is not public in @type_name; cannot be accessed from outside package.
926 </effect>
927</rule>
928
929<rule>
930 <id>
931 Field_Became_Final
932 </id>
933 <severity>
934 Medium
935 </severity>
936 <kind>
937 Fields
938 </kind>
939 <change>
940 Field @target became final.
941 </change>
942 <effect>
943 Recompilation of a client program may be terminated with the message: cannot assign a value to final variable @target.
944 </effect>
945</rule>
946
947<rule>
948 <id>
949 NonConstant_Field_Became_NonStatic
950 </id>
951 <severity>
952 High
953 </severity>
954 <kind>
955 Fields
956 </kind>
957 <change>
958 Field @target became non-static.
959 </change>
960 <effect>
961 Recompilation of a client program may be terminated with the message: non-static variable @target cannot be referenced from a static context.
962 </effect>
963</rule>
964
965<rule>
966 <id>
967 Constant_Field_Became_NonStatic
968 </id>
969 <severity>
970 High
971 </severity>
972 <kind>
973 Fields
974 </kind>
975 <change>
976 Field @target became non-static.
977 </change>
978 <effect>
979 Recompilation of a client program may be terminated with the message: non-static variable @target cannot be referenced from a static context.
980 </effect>
981</rule>
982
983<rule>
984 <id>
985 Class_Became_Interface
986 </id>
987 <severity>
988 High
989 </severity>
990 <kind>
991 Types
992 </kind>
993 <change>
994 This **class** became **interface**.
995 </change>
996 <effect>
997 Recompilation of a client program may be terminated with the message: @type_name is abstract; cannot be instantiated.
998 </effect>
999</rule>
1000
1001<rule>
1002 <id>
1003 Interface_Became_Class
1004 </id>
1005 <severity>
1006 High
1007 </severity>
1008 <kind>
1009 Types
1010 </kind>
1011 <change>
1012 This **interface** became **class**.
1013 </change>
1014 <effect>
1015 Recompilation of a client program may be terminated with the message: interface expected.
1016 </effect>
1017</rule>
1018
1019<rule>
1020 <id>
1021 Class_Became_Final
1022 </id>
1023 <severity>
1024 High
1025 </severity>
1026 <kind>
1027 Types
1028 </kind>
1029 <change>
1030 This class became final.
1031 </change>
1032 <effect>
1033 Recompilation of a client program may be terminated with the message: cannot inherit from final @type_name.
1034 </effect>
1035</rule>
1036
1037<rule>
1038 <id>
1039 Class_Became_Abstract
1040 </id>
1041 <severity>
1042 High
1043 </severity>
1044 <kind>
1045 Types
1046 </kind>
1047 <change>
1048 This class became abstract.
1049 </change>
1050 <effect>
1051 Recompilation of a client program may be terminated with the message: @type_name is abstract; cannot be instantiated.
1052 </effect>
1053</rule>
1054
1055<rule>
1056 <id>
1057 Removed_Class
1058 </id>
1059 <severity>
1060 High
1061 </severity>
1062 <kind>
1063 Types
1064 </kind>
1065 <change>
1066 This class has been removed.
1067 </change>
1068 <effect>
1069 Recompilation of a client program may be terminated with the message: cannot find class @type_name.
1070 </effect>
1071</rule>
1072
1073<rule>
1074 <id>
1075 Removed_Interface
1076 </id>
1077 <severity>
1078 High
1079 </severity>
1080 <kind>
1081 Types
1082 </kind>
1083 <change>
1084 This interface has been removed.
1085 </change>
1086 <effect>
1087 Recompilation of a client program may be terminated with the message: cannot find class @type_name.
1088 </effect>
1089</rule>
1090
1091<rule>
1092 <id>
1093 Removed_Annotation
1094 </id>
1095 <severity>
1096 High
1097 </severity>
1098 <kind>
1099 Types
1100 </kind>
1101 <change>
1102 This annotation type has been removed.
1103 </change>
1104 <effect>
1105 Recompilation of a client program may be terminated with the error message: cannot find symbol **@**@type_name.
1106 </effect>
1107</rule>
1108
1109</rules>
Note: See TracBrowser for help on using the repository browser.