Skip to content

update status of JDK 8 #2351

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

Merged
merged 1 commit into from
Mar 29, 2022
Merged

update status of JDK 8 #2351

merged 1 commit into from
Mar 29, 2022

Conversation

SethTisue
Copy link
Member

@SethTisue SethTisue commented Mar 21, 2022

  • also change AdoptOpenJDK->Temurin
  • also move some GraalVM text to a more appropriate location

note that I chose not to add coverage of -release and -target and such. I feel like it would be out of scope for this page to go into detail about that. (a separate PR that added a brief reference and link of some kind to information on that would be welcome.)

also change AdoptOpenJDK->Temurin
also move some GraalVM text to a more appropriate location
@SethTisue SethTisue requested a review from lrytz March 21, 2022 17:20
@som-snytt
Copy link
Contributor

As you may not yet be aware, I spent a few hours with -release yesterday. It's so cool! Let us give thanks to retronym, rest his soul, I enjoyed reading his old email thread to the JVM folks.

Since there is no longer any "and such", but only -release, I think, "Consider using -release:8!" is warranted.

Also some of your periods could be exclamation marks, as in "New! and improved!"

It seems to me that you say "reasonable" when a more precise word might be "passable."

I'm reading Pickwick Papers, so soon I will be speaking only as Mr Pickwick does, or rather, as only he can.

Copy link
Contributor

@som-snytt som-snytt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not disapproving.

@SethTisue SethTisue merged commit 8b36584 into scala:main Mar 29, 2022
@SethTisue SethTisue deleted the jdk8-is-dying branch March 29, 2022 14:39
If you compile on JDK 11+ but have users on an older JDK version, additional care is needed to avoid using APIs and features that don't exist in 8. Therefore, *compiling* on 8 may be the safest choice in this scenario. (Some Scala developers use JDK 11 or 17 for their daily work, but do release builds on JDK 8.)

Additionally, you can also run your Scala application on GraalVM which is a JVM. GraalVM performs well on the Scala benchmarks, and it benefits from GraalVM runtime and runs faster too.
JDK 8 remains in use at many shops (as of early 2022), but usage is declining and some projects are dropping support. If you compile on JDK 11+ but want to allow your users to stay on 8, additional care is needed to avoid using APIs and features that don't exist in 8. (For this reason, some Scala developers use JDK 11 or 17 for their daily work but do release builds on JDK 8.)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I understand that we intentionally avoided mentioning --release, but I think this wording is nearly misleading as it makes it sound like one has to do this manually.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see what you mean. Would you like to PR a suggested wording change?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants