-
Notifications
You must be signed in to change notification settings - Fork 13.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[FLINK-29787][ci] fix ci METHOD_NEW_DEFAULT issue #21184
Conversation
823a3b1
to
c1c5da7
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure whether that's the desired solution to fix the CI failures on master: I'm not 100% sure but I understand tools/releasing/update_japicmp_configuration.sh:40 in a way that we should only add the @PublicEvolving
constraints on the release branch but not in master
.
- enable stronger compatibility constraints for X.Y-SNAPSHOT to ensure compatibility for PublicEvolving
The documentation is a bit confusing here in my opinion (which we might want to fix making the docs more explicit by mentioning whether it should be applied to the release branch and/or master). Essentially, we would want to revert the inclusion of the @PublicEvolving
rule that was introduced with 82567cc9 on master
. @HuangXingBo am I right? 🤔
c1c5da7
to
e257cbc
Compare
Thanks, @liyubin117 . Could you squash the commits into two? I would merge the PR then right away to unblock |
…ter & Updates update_japicmp_configuration.sh comments
5f51811
to
e8c8083
Compare
@XComp Squash done. Thanks for your excellent idea :) |
The commits got a bit mixed up. I decided to squash everything into one because the documentation change should be reverted as well if the change itself was wrong. I merged the PR without waiting for CI to unblock Thanks for looking into it @liyubin117 :-) |
Hello @XComp @liyubin117 , currently I meet a same problem when I'm trying to add a new default method to an interface with @ Public annotation. Should I just need to add an @PublicEvolving annotation to the new added default method to avoid this? BTW, according to the API compatibility guarantees in flink website, we shouldn't check binary incompatible between minor versions flink/pom.xml. We need to open a issue to fix it. |
The default method covers the old implementation? That shouldn't be degraded to
I think you're right. I created FLINK-33009 to cover this. Let's keep the discussion there. |
Thanks @XComp . 😄
Apologies for any confusion caused. I just want to add a new default method to an existed @ Public interface that already have several old methods. I think this behavior shouldn't break source compatibility. I have reported this to japicmp community and the community owner replied that they will fix this in the next release. The LINK is here.
I will discuss in FLINK-33009. |
What is the purpose of the change
org.apache.flink.api.connector.source.SourceReader
declared a new default functionpauseOrResumeSplits()
, japicmp plugin failed during ci running, we should configure the plugin to make it compatible.Brief change log
Does this pull request potentially affect one of the following parts:
@Public(Evolving)
: noDocumentation