d) The japicmp plugin is about programmatic API compatibility, which doesn't cover Mesos support.

On 16/06/2022 12:59, Gabor Somogyi wrote:
OK, I see your point.

Just a question here. Mesos is deprecated in 1.13 here:
https://issues.apache.org/jira/browse/FLINK-22352
and now I don't see any Mesos related classes in 1.16-SNAPSHOT.

No matter from which angle I take a look at it this is breaking change.
What makes the 2 cases different?

G


On Thu, Jun 16, 2022 at 12:49 PM Chesnay Schepler <ches...@apache.org>
wrote:

The japicm-plugin did exactly what it was supposed to be doing.

We can't remove these fields because they are part of a @Public class
and hence have to remain until Flink 2.0.

Adding an exclusion for @Deprecated is a bad idea because it makes it
way to easy to break the API.

On 16/06/2022 12:43, Gabor Somogyi wrote:
Hi All,

I've just tried to delete long time deprecated configs and faced some
inconveniences.
My main intention is to understand what was the idea
when japicmp-maven-plugin introduced related configs/functions marked
with @Deprecated annotation.

When I've removed the mentioned configs from source code then
japicmp-maven-plugin made the build failed and complained that the params
are removed which makes sense.

I've added @Deprecated annotation to excludes which made the original
error
disappear but new ones shown because with that exclude all new version
annotated configs/functions are missing.
This makes this solution dead end.

The only solution I've found is to add the specific configs to the
exclude
list. It works like charm but adding all the upcoming removed deprecated
configs/functions to the exclude list will end-up in a constantly growing
exclude list.

Just to give a concrete example:
https://github.com/apache/flink/pull/19986
Is there another way which I've missed or this is going to be hot issue
later on?

Thanks in advance!

BR,
G



Reply via email to