On 21 September 2015 at 18:36, Jörg Schaible <[email protected]> wrote: > Gary Gregory wrote: > >> Alternative to keep 100% BC >> >> - Remove the new method, release 2.5, and add it back for SNAPSHOT >> - Add the new method in a new sub-interface > > or catch and ignore this special RTE when calling the new method form our > code. Old clients never asked for it, new/updated clients can use it. > Listener interface is a special case here.
This is what the JLS says about binary compatibity of a method addition to an interface: https://docs.oracle.com/javase/specs/jls/se7/html/jls-13.html#jls-13.5.3-100 If the code were to use reflection it would notice the difference, but otherwise the change is BC according to the JLS. I don't think we need to do anything here, beyond pointing out that recompilated client code may need to be updated. But that is not a binary compatible issue, it is source compatibilty. > - Jörg > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
