-
Notifications
You must be signed in to change notification settings - Fork 905
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
Require Java 17 or Java 21 for building Bookkeeper #4446
base: master
Are you sure you want to change the base?
Conversation
I think we should first refactor BK client into a separate module that will be built with JDK 8, then we can move BK server to JDK 17 |
Refactoring BK client into a separate module isn't a trivial task. |
@shoothzj they won't be staying on jdk11 forever. Java 11 is EOL very soon. Current maintenance branches will be maintained for some time. It doesn't mean that we cut support for Java 8 or Java 11 when we decide to switch to Java 17 in the master branch. |
I think upgrading to jdk17 or jdk21 would be more mainstream. |
Maintaining compatibility with lower versions of Java is a good idea, but more and more libraries are constantly upgrading Java versions, which also forces us to force upgrades. Using Java 17 or 21 is a goo idea, +1.
It seems that we need to do that first. |
My two cents |
There's also maintenance branches with Java 8 support, I don't see a point keeping support for JDK 8 in the future versions of Bookkeeper. Existing Java 8 users can continue to use maintenance branches until they have migrated to newer JDK versions. I think that master branch should set the minimum JDK version to either Java 17 or Java 21 and leave the previous JDK versions to be handled by maintenance branches. Can we even find a single BK users that runs a recent BK version on Java 8? It's definitely a completely unnecessary liability to keep supporting Java 8 in the master branch and future BK versions. |
Motivation
There doesn't seem to be a need to retain support for Java 8 and Java 11 in new releases of Bookkeeper.
Java 11 is EOL in October.
Please see mailing list discussion https://lists.apache.org/thread/gtp4j5y9txzlz0pfgfhy3gz4q4ptnlo8
Changes
<release>17</release>
formaven-compiler-plugin
by defaultcpu-affinity
andcirce-checksum
since Pulsar's Java client uses them.