Method_Became_Static
High
Methods
Method became static.
A client program may be interrupted by **NoSuchMethodError** exception.
Method_Became_NonStatic
High
Methods
Method became non-static.
A client program may be interrupted by **NoSuchMethodError** exception.
Changed_Method_Return_From_Void
High
Methods
Return value type has been changed from **void** to @new_value.
This method has been removed because the return type is part of the method signature. A client program may be interrupted by **NoSuchMethodError** exception.
Changed_Method_Return
High
Methods
Return value type has been changed from @old_value to @new_value.
This method has been removed because the return type is part of the method signature. A client program may be interrupted by **NoSuchMethodError** exception.
Static_Method_Became_Final
Safe
Methods
Method became final.
No effect.
NonStatic_Method_Became_Final
Medium
Methods
Method became final.
A client program trying to reimplement this method may be interrupted by **VerifyError** exception.
Method_Became_Abstract
High
Methods
Method became abstract.
A client program trying to create an instance of the method's class may be interrupted by **InstantiationError** exception.
Method_Became_NonAbstract
Low
Methods
Method became non-abstract.
A client program may change behavior.
Method_Became_Default
Safe
Methods
Method became default.
No effect.
Method_Became_NonDefault
High
Methods
Method became non-default.
A client program trying to create an instance of a class may be interrupted by **AbstractMethodError** exception.
Method_Became_Synchronized
Low
Methods
Method became synchronized.
A multi-threaded client program may change behavior.
Method_Became_NonSynchronized
Low
Methods
Method became non-synchronized.
A multi-threaded client program may change behavior.
Changed_Method_Access
High
Methods
Access level has been changed from @old_value to @new_value.
A client program may be interrupted by **IllegalAccessError** exception.
NonAbstract_Method_Added_Checked_Exception
Low
Methods
Added @target exception thrown.
A client program may be interrupted by added exception.
NonAbstract_Method_Removed_Checked_Exception
Low
Methods
Removed @target exception thrown.
A client program may change behavior because the removed exception will not be thrown any more and client will not catch and handle it.
Added_Unchecked_Exception
Low
Methods
Added @target exception thrown.
A client program may be interrupted by added exception.
Removed_Unchecked_Exception
Low
Methods
Removed @target exception thrown.
A client program may change behavior because the removed exception will not be thrown any more and client will not catch and handle it.
Added_Method
Safe
Methods
Removed_Method
High
Methods
Variable_Arity_To_Array
Safe
Methods
Type of parameter @param_name has been changed from @old_value to @new_value.
No effect.
Array_To_Variable_Arity
Safe
Methods
Type of parameter @param_name has been changed from @old_value to @new_value.
No effect.
NonAbstract_Class_Added_Abstract_Method
High
Types
Abstract method @target has been added to this class.
This class became abstract and a client program may be interrupted by **InstantiationError** exception.
Abstract_Class_Added_Abstract_Method
Safe
Types
Abstract method @target has been added to this class.
No effect.
Abstract_Class_Added_Abstract_Method_Invoked_By_Others
Medium
Types
Abstract method @target has been added to this class.
A client program may be interrupted by **AbstractMethodError** exception. Added abstract method is called in 2nd library version by the method @invoked_by and may not be implemented by old clients.
Class_Removed_Abstract_Method
High
Types
Abstract method @target has been removed from this class.
A client program may be interrupted by **NoSuchMethodError** exception.
Interface_Removed_Abstract_Method
High
Types
Abstract method @target has been removed from this interface.
A client program may be interrupted by **NoSuchMethodError** exception.
Interface_Added_Abstract_Method
Safe
Types
Abstract method @target has been added to this interface.
No effect.
Interface_Added_Abstract_Method_Invoked_By_Others
Medium
Types
Abstract method @target has been added to this interface.
A client program may be interrupted by **AbstractMethodError** exception. Added abstract method is called in 2nd library version by the method @invoked_by and may not be implemented by old clients.
NonImpl_Interface_Added_Abstract_Method
Safe
Types
Abstract method @target has been added to this interface.
No effect.
Class_Method_Became_Abstract
High
Types
Method @target became abstract.
A client program may be interrupted by **InstantiationError** exception.
Class_Method_Became_NonAbstract
Low
Types
Abstract method @target became non-abstract.
Some methods in this class may change behavior.
Interface_Method_Became_NonDefault
High
Types
Method @target became non-default.
A client program may be interrupted by **AbstractMethodError** exception.
Interface_Method_Became_Default
Safe
Types
Method @target became default.
No effect.
Class_Overridden_Method
Low
Types
Method @old_value has been overridden by @new_value.
Method @new_value will be called instead of @old_value in a client program.
Class_Method_Moved_Up_Hierarchy
Low
Types
Method @old_value has been moved up type hierarchy to @new_value.
Method @new_value will be called instead of @old_value in a client program.
Abstract_Class_Added_Super_Interface
Safe
Types
Added super-interface @target.
No effect.
Abstract_Class_Added_Super_Interface_Invoked_By_Others
Medium
Types
Added super-interface @target.
If abstract methods from an added super-interface must be implemented by client then it may be interrupted by **AbstractMethodError** exception.
NOTE: Abstract method @invoked from the added super-interface is called by the method @invoked_by in 2nd library version and may not be implemented by old clients.
Abstract_Class_Added_Super_Interface_With_Implemented_Methods
Safe
Types
Added super-interface @target.
No effect.
Interface_Added_Super_Interface
Safe
Types
Added super-interface @target.
No effect.
Interface_Added_Super_Interface_Used_By_Others
Medium
Types
Added super-interface @target.
If abstract methods from an added super-interface must be implemented by client then it may be interrupted by **AbstractMethodError** exception.
NOTE: Abstract method @invoked from the added super-interface is called by the method @invoked_by in 2nd library version and may not be implemented by old clients.
Interface_Added_Super_Interface_With_Implemented_Methods
Safe
Types
Added super-interface @target.
No effect.
Interface_Added_Super_Constant_Interface
Low
Types
Added super-interface @target containing constants only.
A static field from a super-interface of a client class may hide a field (with the same name) inherited from a super-class and cause **IncompatibleClassChangeError** exception.
Interface_Removed_Super_Interface
High
Types
Removed super-interface @target.
A client program may be interrupted by **NoSuchMethodError** exception.
Class_Removed_Super_Interface
High
Types
Removed super-interface @target.
A client program may be interrupted by **NoSuchMethodError** exception.
Interface_Removed_Super_Constant_Interface
Safe
Types
Removed super-interface @target containing constants only.
No effect.
Added_Super_Class
Low
Types
Added super-class @target.
A static field from a super-interface of a client class may hide a field (with the same name) inherited from new super-class and cause **IncompatibleClassChangeError** exception.
Abstract_Class_Added_Super_Abstract_Class
Safe
Types
Added abstract super-class @target.
No effect.
Abstract_Class_Added_Super_Abstract_Class_Invoked_By_Others
Medium
Types
Added abstract super-class @target.
If abstract methods from an added super-class must be implemented by client then it may be interrupted by **AbstractMethodError** exception. Abstract method @invoked from the added abstract super-class is called by the method @invoked_by in 2nd library version and may not be implemented by old clients.
Removed_Super_Class
Medium
Types
Removed super-class @target.
Access of a client program to the fields or methods of the old super-class may be interrupted by **NoSuchFieldError** or **NoSuchMethodError** exceptions.
Changed_Super_Class
Low
Types
Superclass has been changed from @old_value to @new_value.
1) Access of a client program to the fields or methods of the old super-class may be interrupted by **NoSuchFieldError** or **NoSuchMethodError** exceptions.
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 and cause **IncompatibleClassChangeError** exception.
Class_Added_Field
Safe
Fields
Field @target has been added to this class.
No effect.
Class_Added_Field_Non_Safe
Low
Fields
Field @target has been added to this class.
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 and cause **IncompatibleClassChangeError** exception.
Interface_Added_Field
Safe
Fields
Field @target has been added to this interface.
No effect.
Interface_Added_Field_Non_Safe
Low
Fields
Field @target has been added to this interface.
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 and cause **IncompatibleClassChangeError** exception.
Renamed_Field
High
Fields
Field @target has been renamed to @new_value.
A client program may be interrupted by **NoSuchFieldError** exception.
Renamed_Constant_Field
Low
Fields
Field @target of type @field_type with the compile-time constant value @field_value has been renamed to @new_value.
A client program may change behavior.
Removed_NonConstant_Field
High
Fields
Field @target of type @field_type has been removed from this @type_type.
A client program may be interrupted by **NoSuchFieldError** exception.
Removed_Constant_Field
Low
Fields
Field @target of type @field_type with the compile-time constant value @field_value has been removed from this @type_type.
A client program may change behavior.
Changed_Field_Type
High
Fields
Type of field @target has been changed from @old_value to @new_value.
A client program may be interrupted by **NoSuchFieldError** exception.
Changed_Field_Access
High
Fields
Access level of field @target has been changed from @old_value to @new_value.
A client program may be interrupted by **IllegalAccessError** exception.
Changed_Field_Access_To_Package_Private
High
Fields
Access level of field @target has been changed from @old_value to @new_value.
A client program may be interrupted by **IllegalAccessError** exception.
Changed_Final_Field_Value
Medium
Fields
Value of final field @target of type @field_type has been changed from @old_value to @new_value.
Old value of the field will be inlined to the client code at compile-time and will be used instead of a new one.
Changed_Final_Version_Field_Value
Low
Fields
Value of final field @target of type @field_type has been changed from @old_value to @new_value.
Old value of the field will be inlined to the client code at compile-time and will be used instead of a new one.
Field_Became_Final
Medium
Fields
Field @target became final.
A client program may be interrupted by **IllegalAccessError** exception when attempts to assign new value to the field.
Field_Became_NonFinal
Low
Fields
Field @target became non-final.
Old value of the field will be inlined to the client code at compile-time and will be used instead of a new one.
NonConstant_Field_Became_Static
High
Fields
Non-final field @target became static.
A client program may be interrupted by **IncompatibleClassChangeError** exception.
NonConstant_Field_Became_NonStatic
High
Fields
Non-constant field @target became non-static.
A client program may be interrupted by **IncompatibleClassChangeError** exception.
Class_Became_Interface
High
Types
This **class** became **interface**.
A client program may be interrupted by **IncompatibleClassChangeError** or **InstantiationError** exception dependent on the usage of this class.
Interface_Became_Class
High
Types
This **interface** became **class**.
A client program may be interrupted by **IncompatibleClassChangeError** exception.
Interface_Became_Generic
Safe
Types
This interface became **generic** (@new_value).
No effect.
Interface_Became_Raw
Low
Types
This interface became **raw**.
No effect.
Class_Became_Generic
Safe
Types
This class became **generic** (@new_value).
No effect.
Class_Became_Raw
Low
Types
This class became **raw**.
No effect.
Class_Became_Final
High
Types
This class became final.
A client program may be interrupted by **VerifyError** exception.
Class_Became_Abstract
High
Types
This class became abstract.
A client program may be interrupted by **InstantiationError** exception.
Removed_Class
High
Types
This class has been removed.
A client program may be interrupted by **NoClassDefFoundError** exception.
Removed_Interface
High
Types
This interface has been removed.
A client program may be interrupted by **NoClassDefFoundError** exception.
Added_Annotation_Default_Element
Safe
Types
Element @target of type @elem_type with default value @new_value has been added to this annotation type.
No effect.
Added_Annotation_NonDefault_Element
Safe
Types
Element @target of type @elem_type without a default value has been added to this annotation type.
No effect.
Removed_Annotation_Default_Element
Safe
Types
Element @target of type @elem_type with default value @old_value has been removed from this annotation type.
No effect.
Removed_Annotation_NonDefault_Element
Safe
Types
Element @target of type @elem_type without a default value has been removed from this annotation type.
No effect.
Annotation_Element_Changed_Default_Value
Safe
Types
Changed default value of the element @target from @old_value to @new_value in this annotation type.
No effect.
Annotation_Element_Removed_Default_Value
Safe
Types
Removed default value @old_value from the element @target of this annotation type.
No effect.
Annotation_Element_Added_Default_Value
Safe
Types
Added default value @new_value for the element @target of this annotation type.
No effect.
Annotation_Element_Changed_Type
Safe
Types
Changed type of the element @target from @old_value to @new_value in this annotation type.
No effect.
Annotation_Element_Changed_Type_Safe
Safe
Types
Changed type of the element @target from @old_value to @new_value in this annotation type.
No effect.