You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Gary Yao (Jira)" <ji...@apache.org> on 2019/11/08 10:56:00 UTC

[jira] [Commented] (FLINK-13647) Allow default methods and static methods to be added to public interfaces

    [ https://issues.apache.org/jira/browse/FLINK-13647?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16970063#comment-16970063 ] 

Gary Yao commented on FLINK-13647:
----------------------------------

Regarding JLS 13.5.6:

How can a pre-existing binary attempt to invoke a new default method? This should be only possible via reflection which is not common. We could mark new default methods to be binary compatible in japicmp. 

> Allow default methods and static methods to be added to public interfaces
> -------------------------------------------------------------------------
>
>                 Key: FLINK-13647
>                 URL: https://issues.apache.org/jira/browse/FLINK-13647
>             Project: Flink
>          Issue Type: Improvement
>          Components: Build System
>    Affects Versions: 1.9.0, 1.10.0
>            Reporter: Till Rohrmann
>            Priority: Major
>             Fix For: 1.10.0
>
>
> Since Java 8, it is possible to extend interfaces by adding default methods and static methods. Flink's current japicmp plugin won't allow this and complains with a {{METHOD_ADDED_TO_INTERFACE}}.
> I think we should allow this in order to extend existing public interfaces. There is also a japicmp issue which addresses this problem: https://github.com/siom79/japicmp/issues/201.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)