-
Notifications
You must be signed in to change notification settings - Fork 1k
various updates to JDK compat guide #3230
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
base: main
Are you sure you want to change the base?
Conversation
Gedochao
left a comment
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.
LGTM
| JDK 8 users typically use the Oracle JDK or some flavor of OpenJDK. | ||
|
|
||
| Most JDK 11+ users are using OpenJDK, or GraalVM which runs in the context of OpenJDK. GraalVM performs well on the Scala benchmarks, and it benefits from GraalVM runtime and runs faster too. | ||
| Most JDK 17+ users are using OpenJDK, or GraalVM which runs in the context of OpenJDK. GraalVM performs well on the Scala benchmarks, and it benefits from GraalVM runtime and runs faster too. |
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.
We should no longer recommend GraalVM?
https://blogs.oracle.com/java/post/detaching-graalvm-from-the-java-ecosystem-train
Oracle JDK 24 was the final release to include the experimental and optional Graal JIT
[...]
GraalVM users interested in Java technology are encouraged to transition to Oracle JDK or Oracle OpenJDK
I think the recommendations below (Temurin and Zulu) are still the right ones.
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.
okay I've removed the GraalVM stuff
| | 17 (LTS) | 3.0.0 | 3.3.0 | 2.13.6 | 2.12.15 | | | ||
| | 11 (LTS) | 3.0.0 | 3.3.0 | 2.13.0 | 2.12.4 | 2.11.12 | | ||
| | 8 (LTS) | 3.0.0 | 3.3.0 | 2.13.0 | 2.12.0 | 2.11.0 | | ||
| | JDK | 3.8* | 3.4+ | 3.3 LTS | 2.13 | 2.12 | |
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 find the 3.4+ column confusing, because it lists versions like 3.0.0 and 3.7.1. Also I'm not sure this table has the right format to fit in the information about 3.8 requiring Java 17.
Maybe leave it as is, and move the existing note that 3.8 requires Java 17 closer to the table / somewhere more prominent?
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've fixed the "3.4+" column.
But I don't understand what the problem you see with the 3.8 column?
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.
The table is "minimum Scala versions" (that works on some Java version) but for 3.8 it's actually about "minimum Java version" (required for some Scala version), I guess that mix confuses me a bit
I have chosen not to add a JDK 26 row yet, as it's still so early in the JDK 26 cycle.